UNIVERSITE DE LA MANOUBA
-----¤¤¤¤-----
ECOLE NATIONALE DES SCIENCES DE
L'INFORMATIQUE
ANNEE UNIVERSITAIRE
2015-2016
Examen 1er semestre
(Session Rattrapage – juin 2016)
Matière : Analyse et Conception Orientées Objet
Niveau : II2
Nombre de pages : 4 pages
Enseignants : I. FLISS, I. BOUKHRIS, M.A. MEZGHICH
Date : 03/06/2016
Durée: 2H
Documents: non autorisés
Exercice 1 : Diagramme de séquences (2 points) : 0.5*4
Considérons les scénarii illustrés par les diagrammes de séquences suivants :
Advertisement
A.
C.
B.
D.
Donnez en langage naturel une description de l’algorithme correspondant à chaque scénario.
Exercice 2 : Diagramme de cas d’utilisation +Diagramme de classes+diagramme d’objets
Le fabricant de chaussures GD souhaite automatiser sa ligne de production. L’objectif du nouveau
système de gestion de production est de permettre aux commerciaux d’envoyer les commandes de
leurs clients directement à la chaîne de production. Le fabricant GD possède une gamme de produits
très variée, dont ses célèbres chaussures ultralégères. Les produits sont hautement personnalisables :
les clients peuvent choisir les pointures, l’épaisseur de la semelle, le matériel de la semelle et des
brides (cuir, caoutchouc, etc.), les motifs de la semelle, les détails fantaisie, etc. En fait, chaque produit
est formé par un ensemble de caractéristiques, chacune décrite par un code, une description et un
ensemble de variantes. Par exemple, le produit de base est le modèle « Super-été » dont les
caractéristiques sont une semelle de caoutchouc de 1,5 cm et deux brides aussi en caoutchouc lisse. La
semelle possède deux variantes : semelle unique ou semelle bicolore.
Lorsqu’il rend visite à un client, un agent commercial pourra alors montrer le catalogue au client, ou
Advertisement
alors configurer un nouveau produit, en choisissant les caractéristiques et les variantes pour celui-ci.
Une fois la commande préparée, l’agent commercial pourra demander le transfert de la commande au
système. Si celle-ci inclut des produits qui ne sont pas dans le catalogue, un agent de l’équipe de
design devra valider la composition. Après qu’elle soit validée, la commande est envoyée à la
production, qui va lancer sa fabrication (si le stock des produits commandés est insuffisant). En plus
d’être transmise à la production, la commande est aussi transmise au secteur comptable, qui s’occupe
de la facturation. Ainsi, une facture est préparée à partir de la commande et envoyée au client. Celui-ci
doit la retourner payé au secteur comptable. Celui-ci valide alors le payement. Si le payement n’est pas
validé (montant insuffisant, par exemple), la commande est annulée, ce qui entraine l’arrêt immédiat
de la production en cours. Une fois que le payement de la commande est validé et les produits
conditionnés, le service de livraison prend la relève, procédant à la livraison chez le client (qui doit
absolument signer le bon de livraison).
Travail à faire
1. Donnez le diagramme de cas d’utilisation du nouveau système de gestion de production. 4 pts
2. Nous nous intéressons, maintenant, à l’analyse et la conception, en partie, du nouveau système
de gestion de production. Considérons le diagramme de classes suivant :
1/2
Advertisement
a) Complétez les cardinalités manquantes. 1pt
b) On se propose de promouvoir dans la mesure du possible les associations du diagramme de classes
en compositions ou en agrégations. Proposez une nouvelle version du diagramme de classes tout
en justifiant vos réponses (ce n’est pas la peine de représenter les attributs, ni les méthodes).
4*0.25=1pt
c) Donnez un diagramme d’objets illustrant « une commande, datant du 15 février, de 50 ‘Super-
été’, pointure 38, avec semelle bicolore (noir et blanc), et brides noir en caoutchouc ». (2pts)
d) Afin de faciliter l’implémentation des associations, on se propose de limiter au maximum possible
la navigation. Précisez le sens de navigation des différentes associations. (1 pt)
e) Pour comprendre les règles de gestion gouvernant l’évolution des liens entre les objets, on se
les contraintes {ordered},{addOnly},{frozen},
propose de décorer
{notUnique}. Décorez chacune des associations par la ou les contrainte(s) de gestion
appropriée(s). Vous pouvez tout simplement annoter le bout navigable de chaque association par
les symboles O, A, F, N (respectivement pour (O)rdered, (A)ddOnly, (F)rozen et (N)otUnique). (1
pt)
les associations par
Advertisement
Exercice 3 : Diagramme d’états-transitions (3 points)
Un processus est une occurrence d’un programme (fichier exécutable) en exécution. Un processus peut
être lancé en arrière plan (background) en ajoutant un « et commercial » (&) à la fin de l’appel du
programme. Sans ce symbole, le processus est lancé au premier plan. Un processus au premier plan
peut être suspendu (arrêt provisoire) par la commande « <CTRL> Z», un processus en arrière plan
peut être suspendu par la commande « stop %n» (n : étant le numéro de job associé au processus).
La commande « job » affiche la liste des job/processus en cours avec leur numéro de job.
Un processus au premier plan peut être tué par la commande « <CTRL> C» ; un processus en arrière
plan peut être tué par la commande « kill –9 %n».
Un processus suspendu, peut être relancé au premier plan par la commande « fg %n» ou au second
plan par la commande « bg %n».
Travail à faire
Modélisez le fonctionnement du processus à l'aide d'un diagramme d'états-transitions.
2/2