Analyse et Conception Orientées Objets

UNIVERSITE DE LA MANOUBA ----- ----- ECOLE NATIONALE DES SCIENCES DE L'
1/3
100%
Rendu du PDF...
Page 1 sur 3Lecteur de document UniversityLib

Analyse et Conception Orientées Objets

UNIVERSITE DE LA MANOUBA ----- ----- ECOLE NATIONALE DES SCIENCES DE L' · Programming, UML, Object-Oriented Analysis and Design · exam

UNIVERSITE DE LA MANOUBA

----- -----

ECOLE NATIONALE DES SCIENCES DE

L'INFORMATIQUE

Mati re : Analyse et Conception Orient es Objets

A.U. : 2013-2014

Niveau : I.I. 2

S rie N 4: Mod lisation dynamique UML (diagrammes de s quence)

Exercice 1

On demande de mod liser linteraction suivante dans un diagramme de s quence : lorsque le

gestionnaire re oit de la part dun acteur ext rieur le message addPersonne, il va cr er une

nouvelle instance de la classe Personne, lui assigner le nom et le pr nom, puis il va

enregistrer la nouvelle personne laide de la m thode enregistrer.

Exercice 2

On souhaite mod liser la gestion automatique dun syst me de 4 feux tricolores install s aux

quatre coins dun carrefour de 4 rues perpendiculaires. On suppose quun feu a trois tats

possibles : 1-rouge, 2-vert, 3-orange.

Le syst me de contr le doit permettre de placer le carrefour dans lune des quatre situations

suivantes :

1. circulation NORD SUD ouverte et circulation OUEST EST interdite

2. circulation NORD SUD tol r e et circulation OUEST EST interdite

3. circulation NORD SUD interdite et circulation OUEST EST ouverte

4. circulation NORD SUD interdite et circulation OUEST EST tol r e

Publicité

Le syst me est initialis la phase 4.

On a d fini les m thodes suivantes.

Pour un feu tricolore :

initialiseFeu(int : etatInitial) permet dinitialiser un feu dans lun des tats 1-rouge, 2-

vert, 3-orange.

  • changeEtat() permet dincr menter la valeur de l tat (1,2,3,1 etc...)

Pour le syst me de contr le :

initialiseSystemeDeControle() initialise le syst me de contr le dans la phase initiale

-

-

-

initialiseFeux() appelle linitialisation de chaque feu dans l tat correspondant la

situation d crite par la phase initiale.

  • changePhase() permet dincr menter la valeur de la phase (1,2,3,4,1 etc...)

On demande de r aliser un diagramme de s quence en utilisant les m thodes d finies ci-

dessus.

Exercice 3

Lentreprise RapidPizza regroupe des restaurants lenseigne Point Pizza. Les Points Pizza

sont tous capables de livrer certaines pizzas classiques. En plus, chaque Point Pizza peut aussi

livrer dautres pizzas sp ciales qui ne sont pas propos es par tous les Points Pizza.

Actuellement les commandes se font par t l phone aupr s dun restaurant, limitant le nombre

de commandes acceptables. Chaque client na acc s quaux sp cialit s du Point Pizza auquel

il sadresse.

Publicité

La direction de RapidPizza veut informatiser son processus de commande, de fabrication et de

livraison via un logiciel nomm RapidPizza. Gr ce lui, elle veut g rer lensemble des

commandes et des employ s, appel s ci-dessous collaborateurs. RapidPizza rend accessible

tous les clients lint gralit des sp cialit s disponibles : tout plat pr sent dans au moins un

Point Pizza est propos . Chaque plat est d crit par son nom et son prix, qui ne d pend pas du

Point Pizza de fabrication.

tout moment il est possible de passer une commande sur RapidPizza : le client doit donner

son num ro de t l phone qui lidentifie de mani re unique. Lors de sa premi re commande il

lui est demand de saisir en plus son nom et son adresse, qui sont enregistr s. Les commandes

sont identifi es par un num ro unique. Une m me commande peut comporter plusieurs plats.

Pour chaque plat s lectionn il pr cise la quantit demand e. Comme une commande peut

comporter plusieurs plats et que certaines sp cialit s ne sont disponibles que dans certains

Points Pizza, toutes les combinaisons de plats dune commande ne sont pas forc ment

possibles. Dans ce cas la commande est globalement refus e et nest pas m moris e. Le client

peut consulter l tat dune commande. Cela lui permet notamment de savoir si la livraison

dune commande est en cours. Tant que la pr paration dune commande na pas d but , il

peut lannuler.

RapidPizza fait appel de nombreux collaborateurs aux horaires flexibles et variables. la

signature de leur contrat un bo tier lectronique leur est remis leur permettant de signaler le

d but ou la fin de leur disponibilit . Un livreur utilise galement son bo tier pour indiquer le

moment de r cup ration dune commande au Point Pizza ainsi que le moment de fin de

livraison au client. Le g rant peut consulter sur RapidPizza l tat global du syst me :

commandes, plats, collaborateurs, etc. Il peut affecter un collaborateur un Point Pizza ou

Publicité

aux livraisons. Un collaborateur peut changer de lieu de travail ou de r le plusieurs fois dans

la journ e : cest le g rant qui optimise le r le de chacun en fonction des commandes et des

disponibilit s. Quand le client passe une commande, il nindique pas de Point Pizza

particulier : cest le g rant qui affecte la commande un Point Pizza. Dans chaque Point Pizza,

un unique collaborateur joue le r le de coordinateur en plus de pr parer les plats. Cest le seul

interagir avec RapidPizza : tous les autres collaborateurs sont soit la pr paration des plats

soit la livraison. Le coordinateur consulte sur RapidPizza les commandes r aliser dans son

restaurant. Pour chaque plat dune commande, il indique si sa r alisation a d but , si elle est

termin e. Quand tous les plats sont pr ts, il pr vient oralement lun de ses livreurs que la

commande est livrable.

l tape de sp cification du syst me RapidPizza, on a recens les acteurs et cas dutilisation

suivants :

Acteurs

  • Client : Client de RapidPizza (identifi par son num ro de t l phone).
  • Collaborateur : Employ de RapidPizza (livreur, coordinateur, pr parateur).
  • Livreur : Employ affect la livraison des commandes.
  • Coordinateur : Employ affect la coordination dun Point Pizza.
  • G rant : Responsable unique de RapidPizza.

Cas dutilisation

  • Senregistrer (client) Lors de la premi re commande, le client doit donner son num ro

de t l phone, son nom et son adresse pour senregistrer aupr s de RapidPizza.

  • Passer une commande (client) Un client peut passer commande dun ensemble de

pizzas. (Il est n cessaire d tre enregistr .)

  • Consulter lavancement dune commande (client) Un client peut tout moment

conna tre l tat davancement dune de ses commandes. (Il est n cessaire d tre

enregistr .)

  • Annuler une commande (client) Une client peut annuler une de ses commandes si la

Publicité

pr paration na pas encore d but . (Il est n cessaire d tre enregistr .)

  • Modifier sa disponibilit (collaborateur, livreur, coordinateur) Tout collaborateur peut

signaler sa disponibilit ou la fin de sa disponibilit via son bo tier. (Ce cas regroupe

les deux cas de d but et fin de disponibilit .)

  • Notifier l tat dune livraison (livreur) Un livreur peut utiliser son bo tier pour

indiquer quil a r cup r ou livr une commande.

  • Notifier lavancement dune pizza (coordinateur) Un coordinateur peut indiquer si la

r alisation dune pizza a commenc et si elle est termin e.

  • Consulter les commandes (coordinateur) Un coordinateur peut consulter les

commandes affect es son Point Pizza.

  • Consulter l tat du syst me (g rant) Le g rant peut consulter l tat des commandes,

des pizzas et des collaborateurs.

  • Affecter un collaborateur (g rant) Le g rant peut affecter un collaborateur un Point

Pizza ou aux livraisons.

  • Affecter une commande (g rant) Le g rant peut affecter une commande un Point

Pizza.

Questions

1. Donner un diagramme de classes danalyse pour RapidPizza.

2. Donner un diagramme de s quence pour chacun des cas dutilisation suivants : Passer

une commande, Notifier lavancement dune pizza, Affecter une commande.