Vous êtes sur la page 1sur 33

Introduction au Génie Logiciel

Cours 4 _ section I

La phase d’analyse
1ère année second cycle
Novembre 2017

AMAR BENSABER Djamel


Objectifs du Cours
Se familiariser avec
Appréhender les pratiques et les
l’activité d’analyse livrables de
l’analyse

Utiliser UML pour Découverte des


exprimer les diagrammes de
résultats de classe, d’activité, de
l’analyse séquence et d’état
Cycle de Vie

Expression des
besoins Analyse Conception Implémentation Tests
L’activité d’analyse
Il y a une ambiguïté
L’analyse et l’expression L’analyse permet de
entre l’analyse et
de besoins sont très clarifier les besoins
l’expression de
dépendants d’une manière détaillée
besoins

L’analyse se focalise sur


l’aspect métier des
Il y a une ambiguïté L’analyse et la
fonctionnalités tandis
entre l’analyse et la conception répondent à
que la conception se
conception la question «comment»
focalise sur l’aspect
technique

Dans UP, le gros de


l’analyse se fait durant
la phase d’analyse de
besoins et d’élaboration
L’activité d’analyse

Classes(Vocabulaire,
aspect statique)

L’analyse Produit

Interactions
(aspect dynamique)
Modèle d’Analyse

UML Classes

Concepts

UML Objets
Modèle d’Analyse

Vocabulaire

Relations Associations UML

Diagrammes
Interactions Processus
Comportementaux
Construire le modèle d’analyse - Règles

Le modèle capture
Se limiter aux Le langage du
une vision globale
concepts métier, modèle d’analyse
sur un concept ou
s’éloigner des utilise le même
un processus, ne
considérations langage que le
pas aller trop dans
techniques métier
le détail

Le modèle doit
Plus le modèle est
toujours être
simple, plus il est
compréhensible et
meilleur
utile au client
L’activité d’Analyse - Exemple
« A l’ESI, pour effectuer un stage, l’étudiant
doit chercher un encadreur interne ou dans
une entreprise externe et un sujet à réaliser.
Une fois le sujet trouvé, l’étudiant le dépose au
niveau du service des stages. Ce dernier
s’occupe de la validation du sujet en faisant
appel à un enseignant de l’ESI ».
L’activité d’Analyse - Exemple

• Le vocabulaire devra contenir les concepts


suivants : enseignant, étudiant, encadreur,
entreprise, sujet, service de stage et stage
• Il y a plusieurs interactions à souligner :
– L’interaction de recherche de sujet qui implique
l’étudiant, l’entreprise, le sujet et l’encadreur.
– L’interaction de validation qui implique l’étudiant,
le service de stages et l’enseignant.
Objets et classes

Comport
Etat Objet
-ement
Définition d’un Objet
• Rumbaugh définit l’objet comme étant une entité
discrète ayant une limite bien définie qui possède
un état et un comportement
• Un objet représente une entité du monde réel
• L’état de l’objet est l’ensemble des valeurs de ses
attributs
• Le comportement d’un objet est représenté par
les opérations qu’il peut effectuer. Souvent les
opérations conduisent à un changement de l’état
d’un objet
• L’objet a un identifiant unique qui permet de le
distinguer des autres objets.
Objet - Exemple

Etat Comportement

• Numéro de série • Allumer()


(Identifiant) • Eteindre()
• Marque • Connecter()
• Modèle • Filmer()
• Allumée • PrendreUnePhoto()
• Mode (Photo / Vidéo)
• Connectée à un ordinateur
• Liste des photos en
mémoire
• Capacité
• Photo en cours
Notation UML des objets
compteTest: Compte

Cle = 80
compteTest: Compte Numero = 11256
Solde = 150000
Cle = 80
Numero = 11256
Proprietaire = [Mokhtar]
Solde = 150000

mohamed: Personne

adresse = sidi bel abbes


fonction = enseignant
Objets – Notation UML - Diagrammes
• Un diagramme d’objets présente des objets et
leurs relations à un instant T
• Le diagramme d’objets est idéal pour donner
des exemples sur des situations particulières
• Les liens bidirectionnels entre A et B quand A
et B s’envoient des messages
• Un lien unidirectionnel entre A vers B indique
que A peut envoyer un message vers B mais
pas l’inverse
Exemple

Grade

estGradé

Employe

* Emploie

Département
1

*
Ecole Estconsituede

1
Classes
• Rumbaugh définit la classe comme étant un
descripteur d’un ensemble d’objets qui
partagent les mêmes attributs, méthodes,
relations et comportement
• La classe est le modèle d’un ensemble d’objets
similaires
• Un objet appartient à une seule classe
• La classe définit la structure d’un objet (aspect
statique), son comportement (aspect
dynamique) et ses relations
Classe : sémantique et notation
Diagramme de classes : sémantique
• Un diagramme de classes est une collection d'éléments de
modélisation statiques (classes, paquetages...), qui montre la
structure d'un modèle.
• Un diagramme de classes fait abstraction des aspects dynamiques
et temporels.
• Pour un modèle complexe, plusieurs diagrammes de classes
complémentaires doivent être construits.
• On peut par exemple se focaliser sur :
• les classes qui participent à un cas d'utilisation (cf. collaboration),
• les classes associées dans la réalisation d'un scénario précis,
• les classes qui composent un paquetage,
• la structure hiérarchique d'un ensemble de classes.
• Pour représenter un contexte précis, un diagramme de classes peut
être instancié en diagrammes d'objets.
Associations entre classes
• Une association exprime une connexion sémantique bidirectionnelle
entre deux classes.
Documentation d'une association et types
d'associations
Association en forme verbale active : précise le sens de lecture principal d'une association

Rôles : spécifie la fonction d'une classe pour une association donnée


(indispensable pour les associations réflexives).
Cardinalités : précise le nombre d'instances qui
participent à une relation.
Classe d'association : il s'agit d'une classe qui réalise
la navigation entre les instances d'autres classes.
Généralisation Spécialisation
• Démarche ascendante, qui • Démarche descendante, qui consiste à
consiste à capturer les particularités capturer les particularités d'un
communes d'un ensemble d'objets, ensemble d'objets, non discriminés par
issus de classes différentes. les classes déjà identifiées.
• Consiste à factoriser les propriétés • Consiste à étendre les propriétés
d'un ensemble de classes, sous d'une classe, sous forme de sous-
forme d'une super-classe, plus classes, plus spécifiques (permet
abstraite (permet de gagner en l'extension du modèle par réutilisation).
généricité)
Agrégation
· L'agrégation est une association non symétrique, qui
exprime un couplage fort et une relation de subordination.
· Elle représente une relation de type "ensemble / élément".
· Une agrégation peut notamment (mais pas nécessairement)
exprimer : qu'une classe (un "élément") fait partie d'une
autre ("l'agrégat"),
· qu'un changement d'état d'une classe, entraîne un
changement d'état d'une autre,
· qu'une action sur une classe, entraîne une action sur une
autre.
· A un même moment, une instance d'élément agrégé peut
être liée à plusieurs instances d'autres classes
(l'élément agrégé peut être partagé).
· Une instance d'élément agrégé peut exister sans agrégat (et
inversement) : les cycles de vies de l'agrégat et
de ses éléments agrégés peuvent être indépendants.
Agrégation
Composition
• La composition est une agrégation forte
(agrégation par valeur).
• Les cycles de vies des éléments (les
"composants") et de l'agrégat sont liés : si
l'agrégat est détruit (ou copié), ses composants le
sont aussi.
• A un même moment, une instance de composant
ne peut être liée qu'à un seul agrégat.
• Les "objets composites" sont des instances de
classes composées.
Composition
Exemple
Stéréotype
• Les stéréotypes représentent un mécanisme
pouvant étendre UML
• Un stéréotype peut cibler une classe, un attribut
ou une opération
• Plusieurs dizaines de stéréotypes sont utilisés
mais les plus connus sont :
• actor, boundary, entity et control.
• Le stéréotype « acteur » représente un acteur
• Le stéréotype « entity » représente une entité.
Une entité est un concept métier, par exemple «
Compte », « Client », « Fournisseur »,…
Stéréotypes d’Analyse UP
• Le stéréotype « control » représente un
contrôleur. Un contrôleur est un intermédiaire
entre les limites et les entités. Le contrôleur se
charge de l’exécution des commandes
provenant de la limite.
• Le stéréotype « boundary » représente une
limite du système qui s’interface avec l’acteur.
Par exemple, interface utilisateur.
Stéréotypes UP

Interface Web Gestionnaire de commandes Commande Utilisateur

«Boundary» «control» « entity » « actor »


InterfaceWeb GestionnaieC Commande Utilisateur
ommandes
Exemple
Commande Produit Client

Gestionnaire
Commandes

InterfaceWeb

Utilisateur
A vous de jouer
Gestion de la cité U (diagramme de classes)
Une Cité U est constituée d'un ensemble de bâtiments. Un
bâtiment comporte un certain nombre de chambres. La cité peut
employer du personnel et est dirigé par l’un des employés. Chaque
chambre
de la cité se loue à un prix donné (suivant ses prestations).
L'accès aux salles de bain est compris dans le prix de la location
d'une chambre. Certaines chambres comportent une salle de bain,
mais pas toutes. Les hôtes de chambres sans salle de bain peuvent
utiliser une salle de bain sur le palier. Ces dernières peuvent être
utilisées par plusieurs hôtes.
Une personne peut louer une et une seule chambre et une
chambre peut être loué par une ou deux personnes.
Les pièces de la Cité U qui ne sont ni des chambres, ni des salles
de bain (hall d'accueil, cuisine...) ne font pas partie de l'étude
(hors
sujet).

Vous aimerez peut-être aussi