8
C.N.A.M / ITII Centre régional de Strasbourg Claude Eisenmann 1/8 22/10/2012 Exercices Exercice n°1 (UML + UWE) Le projet porte sur un système de traitement de texte qui permet via Internet à Gaston Laroche et à d’autres utilisateurs de créer, rechercher, lire et rédiger des documents. Seuls les utilisateurs ayant les droits suffisants peuvent supprimer un document. Un document peut contenir du texte, des images graphiques et de la vidéo. Du texte se compose de sections et chaque section est scindée en plusieurs mots. Chaque document contient également des métadonnées comme par exemple son titre, ses auteurs, le nom du fichier dans lequel il est enregistré ainsi que la date de création et la date de dernière modification. NB : La création, la modification ou la suppression d’un document entraîne la gestion d’un verrou afin de gérer la concurrence entre les utilisateurs. 1. Listez tous les acteurs 2. Enumérez les cas d’utilisation 3. Définissez les itérations nécessaires à la réalisation du système 4. Triez les itérations par ordre de réalisation en fonction de différents critères 5. Procédez à l’étude des risques. 6. Réalisez le plan du projet à l’aide d’un outil de planification. 7. Commencez par modéliser le diagramme des cas d’utilisation. 8. Décrivez le cas d’utilisation Modifier document. 9. Faites la liste des entités logiques et les inclure dans un diagramme de classes. 10. Proposez le modèle de navigation du système de traitement de texte. 11. Proposez le modèle de présentation du système en considérant le scénario Modifier document. Exercice n°2 (UML) Vous travaillez dans le département Software Engineering d’un grand constructeur de machines à café automatisées et vous avez en charge la réalisation du nouveau système embarqué. La commande de la machine à café s’effectue via un écran tactile. La machine peut être éteinte ou allumée via cet affichage. L’utilisateur peut sélectionner entre un ou deux cafés. La machine doit afficher en permanence le nombre de tasses de café pouvant encore être servies en fonction du niveau de l’eau et des grains de café. 1. Commencez par modéliser le diagramme des cas d’utilisation. 2. Modélisez la communication entre les différents organes de la machine à café une fois qu’un utilisateur a sélectionné le nombre de café et appuyé sur « Start ». 3. Modélisez les différents états de la machine. 4. Terminez par le diagramme de classes du système embarqué dans la machine à café.

Exercices Uml

Embed Size (px)

Citation preview

Page 1: Exercices Uml

C.N.A.M / ITII

Centre régional de Strasbourg

Claude Eisenmann 1/8 22/10/2012

Exercices

Exercice n°1 (UML + UWE) Le projet porte sur un système de traitement de texte qui permet via Internet à Gaston Laroche

et à d’autres utilisateurs de créer, rechercher, lire et rédiger des documents. Seuls les

utilisateurs ayant les droits suffisants peuvent supprimer un document. Un document peut

contenir du texte, des images graphiques et de la vidéo. Du texte se compose de sections et

chaque section est scindée en plusieurs mots. Chaque document contient également des

métadonnées comme par exemple son titre, ses auteurs, le nom du fichier dans lequel il est

enregistré ainsi que la date de création et la date de dernière modification.

NB : La création, la modification ou la suppression d’un document entraîne la gestion d’un

verrou afin de gérer la concurrence entre les utilisateurs.

1. Listez tous les acteurs

2. Enumérez les cas d’utilisation

3. Définissez les itérations nécessaires à la réalisation du système

4. Triez les itérations par ordre de réalisation en fonction de différents critères

5. Procédez à l’étude des risques.

6. Réalisez le plan du projet à l’aide d’un outil de planification.

7. Commencez par modéliser le diagramme des cas d’utilisation.

8. Décrivez le cas d’utilisation Modifier document.

9. Faites la liste des entités logiques et les inclure dans un diagramme de classes.

10. Proposez le modèle de navigation du système de traitement de texte.

11. Proposez le modèle de présentation du système en considérant le scénario Modifier

document.

Exercice n°2 (UML) Vous travaillez dans le département Software Engineering d’un grand constructeur de

machines à café automatisées et vous avez en charge la réalisation du nouveau système

embarqué. La commande de la machine à café s’effectue via un écran tactile. La machine peut

être éteinte ou allumée via cet affichage. L’utilisateur peut sélectionner entre un ou deux

cafés. La machine doit afficher en permanence le nombre de tasses de café pouvant encore

être servies en fonction du niveau de l’eau et des grains de café.

1. Commencez par modéliser le diagramme des cas d’utilisation.

2. Modélisez la communication entre les différents organes de la machine à café une fois

qu’un utilisateur a sélectionné le nombre de café et appuyé sur « Start ».

3. Modélisez les différents états de la machine.

4. Terminez par le diagramme de classes du système embarqué dans la machine à café.

Page 2: Exercices Uml

C.N.A.M / ITII

Centre régional de Strasbourg

Claude Eisenmann 2/8 22/10/2012

Exercice n°3 (UML - Etats/transitions + Séquences) Une société de vente de produits de luxe par Internet souhaite moderniser son système

d’information. Les exigences du client sont les suivantes :

Gestion de la facturation classique

Le ramassage des produits commandés se fait deux par jour

Si le montant de la facture dépasse les 10000€ alors expédier les colis via un

expéditeur «prudent » sinon expéditeur « normal »

Le client peut choisir d’être notifié ou non lors de l’envoi de sa commande

1. Modélisez les états d’une facture

2. Réalisez le diagramme de séquence de l’expédition

Exercice n° 4 (UML - Classes) Imaginez une classification arborescente avec attributs et opérations pour les notions

suivantes :

bicyclette, voilier, voiture, camion, avion, planeur, motocyclette, cheval

Les attributs : surface_voile, puissance, marque, espèce, PTAC, vitesse_max,

type_de_coque, nb_de_places, race, robe, nb_essieux, tonnage, toit_ouvrant, portance,

type_de_démarreur, immatriculation

Les opérations : entretenir, virer_de_bord, décoller, atterrir, étriller, affaler, nourrir,

faire_le_plein, soigner, réparer, tracter, charger, décharger, freiner.

Exercice n°5 (UML - Classes) On veut modéliser les informations permettant d’assurer une gestion de stock d’articles, càd

ajouter, retirer des articles du stock et en obtenir des informations. Chaque article est identifié

par une référence.

Le stock contient des articles de natures différentes, on veut pouvoir trouver grâce au SI :

La quantité en stock d’un article

Son prix unitaire HT et TTC et ses frais de transport

Pour les articles électroménagers on veut aussi connaître leur consommation

électrique ; pour les vêtements, leur taille et leur coloris ; pour l’alimentaire, la date de

péremption.

La TVA est de 30% pour les articles de luxe, 18% pour les vêtements et l’électro-ménager,

5% pour l’alimentaire ; les frais de transport sont calculés sur la base de 5% du prix TTC sauf

pour les articles particulièrement fragiles (l’alimentaire et certains articles électro-ménager)

où le calcul se fait différemment.

NB : pour ces derniers (articles électro-ménagers fragiles) on désire mémoriser le montant de

la garantie.

Faire le diagramme de classes en UML qui répond à ces besoins

Exercice n°6 (UML - Classes) Modélisez la structure de la société Syldave sachant qu’elle se compose d’hommes et de

femmes qui peuvent être mariés ou non, avoir des enfants ou non et sachant que :

Page 3: Exercices Uml

C.N.A.M / ITII

Centre régional de Strasbourg

Claude Eisenmann 3/8 22/10/2012

La société se compose d’hommes et de femmes

Elle est monogame, hétérosexuelle

Seules les femmes majeures peuvent être mariées.

Construisez un modèle représentant toutes ces contraintes.

Exercice n°7 (UML - Etats/transitions) Reprendre l’exercice n°6 en tenant compte du fait que les objets ne peuvent pas changer de

classes. Utiliser alors le digramme d’états-transitions pour rendre compte de la dynamique de

l’objet « Femme syldave ».

Exercice n°8 (UML DB)

Le diagramme ci-dessous illustre la participation d’une classe d’association à une autre

association.

Formulez le schéma relationnel du modèle en tenant compte des contraintes d’attribut et de

multiplicité.

Exercice n°9 (UML - Etats/transitions)

Représenter les états d’un objet « Personnel » du point de vue d’une entreprise. Les états

doivent couvrir tout le cycle de vie d’un employé.

Exercice n°10 (UML - Etats/transitions)

Représenter les états d’une machine à laver.

Employe

nasE : int

nomE :varchar

villeE : varchar

Atelier

noA : int

chefA: varchar

specA : varchar Travaille >

* *

Contrat

noC : int

dateDeb: Date

OrdrePaie

noCh: int

dateCh: Date

montCh : real

*

1 Emet >

Page 4: Exercices Uml

C.N.A.M / ITII

Centre régional de Strasbourg

Claude Eisenmann 4/8 22/10/2012

Exercice n°11 (UML)

Un objet nommé A380 de classe Avion est en état de détresse et est en relation avec Moon,

une tour de contrôle en Chine. Un ensemble d’autres avions anonymes dont l’état est à terre

sont aussi liés à Moon. La tour de contrôle communique avec P987, une caserne de pompiers.

1. Modélisez le diagramme de classes (analyse du domaine).

2. Réalisez le diagramme d’objets correspondant à la situation décrite ci-dessus.

3. Ajoutez des classes participantes (équipage, passager, personnel de la tour de contrôle,

personnel au sol, aéroport, etc.) et organiser votre modèle métier à l’aide d’un diagramme

de package.

Exercice n°12 (Détails use case) Vous procédez à l’analyse d’une application pour une société de logistique (DHL, Heppner,

UPS, etc.). Détaillez le cas d’utilisation « Planifier mission » en vous servant du modèle ci-

dessous.

1. Sommaire d’identification

Titre Planifier une mission

But

Planifier une mission d’une agence à partir de la connaissance du plan

de transport, des ressources et des commandes à assurer

quotidiennement.

Résumé

Création d’une nouvelle mission d’enlèvement, de livraison ou de

traction à partir des commandes confirmées. Modification ou

annulation d’une mission.

Acteurs Répartiteur (principal), chauffeur (secondaire)

Date de création

Date de mise à jour

Version

Responsable

2. Description des enchaînements

Pré conditions

Scénario nominal

Enchaînements

alternatifs

3. Besoins d’IHM

4. Exigences non fonctionnelles

Exigence Descriptif

Page 5: Exercices Uml

C.N.A.M / ITII

Centre régional de Strasbourg

Claude Eisenmann 5/8 22/10/2012

Exercice n°13 (UML)

Un produit va être installé pour contrôler N ascenseurs dans un gratte-ciel de M étages. Notre

problème concerne la logique nécessaire au déplacement des ascenseurs entre les étages en

accord avec les contraintes suivantes :

Chaque ascenseur possède un ensemble de M boutons, un pour chaque étage. Un

bouton s’allume lorsqu’il est appuyé et provoque le déplacement de l’ascenseur vers

l’étage correspondant.

Chaque étage, à l’exception du premier et du dernier, possède deux boutons, un pour

demander la montée et un pour demander la descente. Ces boutons s’allument

lorsqu’ils sont appuyés. Ils s’éteignent quand l’ascenseur arrive à l’étage, et celui-ci se

déplace ensuite dans la direction demandée.

Quand un ascenseur n’est pas requis, il reste à l’étage où il se trouve et ferme ses

portes.

1. Modélisez les cas d’utilisation.

2. Faites la liste des exigences non-fonctionnelles.

3. Procédez à l’analyse du domaine.

4. Décrire à l’aide d’un diagramme de séquence le scénario suivant : requête d’ascenseur

depuis l’étage.

5. Décrire à l’aide d’un diagramme d’activité le fonctionnement de l’ascenseur.

6. Modélisez avec un diagramme de temps le système de sécurité du système lorsque qu’un

câble de l’ascenseur casse.

Exercice n°14 (UML - Etats/transitions + Activités) Modélisation d’un téléphone.

1. Commencez par modéliser les états et les transitions.

2. Ajoutez les actions et les activités au diagramme précédent.

Exercice n°15 (UML - Activités) Modélisation de la suite de Fibonacci.

Exercice n°16 (UML + UWE) Une entreprise spécialisée dans la formation professionnelle souhaite gérer les offres de

formation. Plusieurs fonctionnalités sont attendues du système :

Elaboration des offres de formation et des dates prévisionnelles

Inscription des personnes souhaitant participer à une ou plusieurs formations

Envoi des devis, factures et convocations aux personnes inscrites

Attribution des sessions aux animateurs ayant les compétences requises pour animer

les sessions. L’entreprise peut également faire appel à des intervenants externes

Page 6: Exercices Uml

C.N.A.M / ITII

Centre régional de Strasbourg

Claude Eisenmann 6/8 22/10/2012

Bilan des formations et des participations sur la semaine, le mois, le trimestre ou sur

l’année

Mise en ligne de formulaires de satisfaction à remplir par les participants quelques

jours après la fin de la formation

L’architecture technique prévoit le développement d’une application web multicouches avec :

Un serveur web

Un serveur d’application

Un SGBD

L’entreprise propose également des cursus complets de formation. Par exemple une

certification Microsoft (MCAD pour Microsoft Certified Application Developer) demande la

réussite aux examens de tous les modules. Le client peut choisir ses modules en fonction de

une ou plusieurs alternatives (par exemple Développer une application Windows en VB.NET

ou développer une application Windows en C#).

1. En vous basant sur la méthode 2TUP, procédez à l’analyse et à la conception du système.

2. Navigation et présentation

a. Acteur : client scénario : choisir formation

b. Acteur : planificateur formation scénario : attribuer animateurs aux formations

3. Procédez à la modélisation d’un composant de votre choix.

Exercice n°17 (UML + UWE) Une grande chaîne de distribution décide de mettre en place un nouveau système

d’information permettant la gestion des articles. Les premières réunions ont permis de faire le

bilan des données à gérer ainsi que des fonctionnalités de la future application.

Par exemple un article se compose d’un nom, code EAN, prix d’achat, prix HT, code TVA,

description, conditionnement, poids, emplacement(s) dans les rayons du magasin, etc.

En outre, le système doit être capable de :

gérer l’ensemble des articles du magasin,

gérer les offres promotionnelles,

gérer le stock,

et d’imprimer les étiquettes pour le rayonnage.

Au niveau technique, les architectes logiciels suggèrent une solution traditionnelle

client/serveur avec une interface graphique Web. L’environnement de développement sera C#

de chez Microsoft.

Voici un extrait des données disponibles :

EAN Description Prix

d’achat

Prix HT Code

TVA

Poids

51125446 Classeur grand format bleu 1,15€ 1,54€ 5 120g

52235642 Biscuits au chocolat 0,80€ 1,05€ 5 164g

45545628 DVD vierge 7,32€ 9,50€ 5 864g

32105447 Thé menthe-réglisse 0,58€ 1,20€ 5 40g

Page 7: Exercices Uml

C.N.A.M / ITII

Centre régional de Strasbourg

Claude Eisenmann 7/8 22/10/2012

1. Modélisez le diagramme des cas d’utilisation

2. Procédez à l’analyse du domaine.

3. Modélisez un diagramme d’objets pour deux articles de la table ci-dessus.

4. Proposez l’architecture logicielle du système et listez les composants en précisant leur

potentiel de réutilisabilité.

5. Réalisez le système (uniquement la partie métier) à l’aide d’un diagramme de classes.

6. Proposez la navigation ainsi que la présentation pour le rôle « Responsable de rayon » et

le scénario « Imprimer étiquettes des offres promotionnelles ».

Etude de cas

Une bibliothèque universitaire souhaite automatiser sa gestion. Cette bibliothèque est gérée

par un gestionnaire chargé des inscriptions et des relances des lecteurs quand ceux-ci n’ont

pas rendu leurs ouvrages au-delà du délai autorisé. Les bibliothécaires sont chargés de gérer

les emprunts et la restitution des ouvrages ainsi que l’acquisition de nouveaux ouvrages.

Il existe trois catégories d’abonné. Tout d’abord les étudiants qui doivent seulement

s’acquitter d’une somme forfaitaire pour une année afin d’avoir droit à tous les services de la

bibliothèque. L’accès à la bibliothèque est libre pour tous les enseignants. Enfin, il est

possible d’autoriser des étudiants d’une autre université à s’inscrire exceptionnellement

Page 8: Exercices Uml

C.N.A.M / ITII

Centre régional de Strasbourg

Claude Eisenmann 8/8 22/10/2012

comme abonné moyennant le versement d’une cotisation. Le nombre d’abonné externe est

limité chaque année à environ 10% des inscrits.

Un nouveau service de consultation du catalogue général des ouvrages doit être mis en place.

Les ouvrages, souvent acquis en plusieurs exemplaires, sont rangés dans des rayons de la

bibliothèque. Chaque exemplaire est repéré par une puce RFID gérée dans le catalogue et le

code du rayon où il est rangé. Un ouvrage peut être un livre, un journal, CD, DVD, etc.

Chaque abonné ne peut emprunter plus de trois ouvrages. Le délai d’emprunt d’un ouvrage est

de trois semaines, il peut cependant être prolongé exceptionnellement à cinq semaines.

1. Procédez à l’analyse du système. Avec les contraintes de modélisation suivantes :

a. Modélisation du diagramme d’activités du système

b. Utilisation d’un diagramme de packages pour obtenir une vue globale des cas

d’utilisation.

c. Détails d’un cas d’utilisation avec du texte et au moins deux types de diagramme

UML différents.

d. Recherche de tous les dialogues à création de leurs scénarios d’appel. Utilisation

d’un User Interface Flow Diagram

http://www.agilemodeling.com/artifacts/uiFlowDiagram.htm

2. Concevez l’architecture du système en identifiant les patrons de conception qui seront

utilisés. Les données de la bibliothèque (non confidentielles) doivent être accessibles de

l’extérieur.

a. Composants et leurs interfaces

b. Déploiement dans un environnement de cloud computing

3. Pour la partie réalisation, modélisez les aspects statiques et dynamiques d’un cas

d’utilisation de votre choix. Mettez en valeur les patrons de conception qui seront utilisés.

Remarques générales

Utilisez au moins les éléments UML ci-dessous :

a. Cas d’utilisation : extension points

b. Séquences : fragments et messages synchrones et asynchrones

c. Etats-transitions : états avec entry/do/exit

d. Activités : actions et activités structurées

e. Classes : interface et relations de dépendance