Académique Documents
Professionnel Documents
Culture Documents
Phase de la modélisation
Cahier des
charges
Expression des besoins S’accorder sur ce qui doit être fait dans le système
Code
exécutable
Les différentes étapes :
✓ Expression des besoins
✓ Spécification
✓ Analyse
✓ Conception
✓ Implémentation
✓ Testes de vérification
✓ Validation
✓ Maintenance et évolution
Modèle cas
d’utilisation
Vérifié par
Modèle cas de
Spécifié par teste
Implémenté par
Modèle
Réalisé par
d’analyse
Modèle
d’implémentation
Modèle de
conception
✓ Spécification :
- Ce que le système doit être et comment il peut être utilisé.
✓ Analyse :
- L’objectif de déterminer les éléments intervenant dans le
système a construire, ainsi que leur structure et leurs
relations.
• Elle doit décrire chaque objet selon 3 axes :
o Axe fonctionnel : savoir-faire de l’objet.
o Axe statique : structure de l’objet.
o Axe dynamique : cycle de vie de l’objet au cour de l’application
(états et messages de l’objet).
(Informatique).
L’analyse
➢ Le but de l’analyse est de traduire dans un langage proche de celui des
informaticiens les modèles dans l’expression des besoins.
➢ Cependant pour rester compréhensible par les clients ou utilisateurs, il
n’intervient que des entités de domaine (métier) considéré.
➢ Elle sert d’interface, avec l’expression des besoins, aux dialogues et aux
contrats avec les clients et les utilisateurs.
➢ L’analyse doit servir de support pour la conception, l’implémentation et
la maintenance.
La notation graphique
BUT :
➢ Modéliser les objets, les relations entre objets, les interfaces avec le
système.
➢ Servir de support de communication entre l’analyste, le client et les
utilisateurs.
✓ La conception :
- Elle consiste à apporter des solutions techniques aux descriptions
définies lors de l’analyse : architecture technique ; performances et
optimisation ; stratégie de programmation.
- On y définit les structures et les algorithmes.
- Cette phase sera validée lors des testes.
✓ L’implémentation :
- Ils permettent de réaliser des contrôles pour la qualité technique
du système.
- Il s’agit de relever les éventuels défauts de conception et de
programmation (revue de code, teste des composants, …)
➢ Il faut instaurer ces tests tout au long du cycle de développement et non
à la fin pour éviter des reprises conséquentes du travail (programmes de
tests robustes ; logiciels de tests).
✓ Validation :
➢ Le développement d’une application doit être lié à un contrat ayant une
forme de cahier de charges, où doivent se trouver tous les besoins de
l’utilisateur. Ce cahier de charges doit être rédigé avec la collaboration
de l’utilisateur et peut être par ailleurs complété par la suite.
➢ Tout au long de ces étapes, il doit y avoir des validations en collaboration
également avec l’utilisateur.
➢ Une autre validation doit aussi être envisagée lors de l’achèvement du
travail de développement, une fois que la qualité technique du système
est démontrée. Elle permettra de garantir la logique et la complétude du
système.
✓ Maintenance et évolution :
➢ Deux sortes de maintenance sont à considérer :
o Une maintenance corrective, qui consiste à traiter
les « buggs ».
o Une maintenance évolutive, qui permet au système d’intégrera
de nouveau besoins ou des changements technologiques.
Système
Les acteurs
Acteur
Acteur Bibliothécaire Administrateur
Réserver
Emprunt
Regarder la liste
des livres
Réserver
Réservation
Extension points Regarder la liste
« Extend » des livres
Avant le choix du livre
Avant le choix du livre
Identification
abonné
Vérification par
carte
Ajouter de nouveaux
livres
Remettre un livre
Réaliser un emprunt
Réserver un livre
Ajouter de nouveaux
livres
Employé
Remettre un livre
Réaliser un emprunt
Les diagrammes de cas d’utilisation
Identification
par carte
Connaitre les livres
présents
Identification par
mot de passe
Remettre un livre
Réaliser un emprunt
Variante 2 En (4) le client n’est pas reconnu, dans ce cas, tant qu’il n’est
pas reconnu, n lui redemande de s’authentifier.
Variante 3 En (4) le client est reconnu mais le mot de passe est incorrect, il
peut avoir 5 essais, par suite le client sera interdit pendant 1 h.
Identification du livre
Variation du scénario
Système de prêts
Client
Retirer l’argent
Acteur client
Banque
Consulter un compte
Acteurs gestionnaires
Gérer le distributeur
Effectuer la
maintenance
Entrer somme
Distribue l’argent
Ejecter la carte
Prendre la carte
Exemple 2 :
Client
Acteur client Consulter
compte Retirer de
l’argent du
distributeur Cas d’utilisation
Gérer les
Retirer
comptes
l’argent
Saisie compte
Validation compte
Débit compte
Autorisation délivrance
Descriptions
/.
• Un employé dont le rôle est de saisir les caractéristiques des articles lors
du chargement/déchargement
• Un superviseur dont le rôle est de pouvoir contrôler l’état du stock.
• Un administrateur du système dont le rôle est de gérer des comptes
utilisateurs pour les employés et le superviseur.
_ : opération de classe
La réification
La réification consiste à transformer ou à transposer une abstraction en un
objet concret. En informatique elle consiste à transformer un concept en un
objet informatique.
Chien Mariage
- Race - Epoux
- Age - Epouse
- Couleur - Date
Entité physique Evénement
- Aboyer() - seMarier()
- Mordre() - divorcer()
- Obéir()
Appartenir Cours
- Propriétaire - Professeur
- Date - Salle
- Voiture Situation - Elève
Relation
- Vendre() - Assister()
- Acheter() - Quitter()
- Prêter()
Surcharge et polymorphisme
Personne Fichier
- + Pile()
- + Empiler(valeur : élement)
- + Dépiler() : élément
- + nbrElements() : Integer
Return :
- + estVide() : boolean
- + estPleine() : boolean nbrElements() == taille
Livre Auteur
titre aPourAuteur nom
Séance de 20/11/09
Agrégation
Titre
Destinataire
E-mail
Texte
Fichier
Polycopié
PRINCIPE
numBureau nombreVacation
spécialité spécialité
nombreCours nombreCours
nom nom
Héritage : généralisation Factorisation des
propriétés
Enseignant
nombreCours
spécialité
nom
numeroSécu
Permanent Vacataire
numBureau nombreVacation
Permanent Vacataire
numBureau nombreVacation
Héritage : généralisation Factorisation des propriétés
Personne
nom
numeroSécu
Disjoint, incomplète
Disjoint, incomplète
Permanent Vacataire
numBureau nombreVacation
Classe abstraite
• Un média peut être transporté, dupliqué, affiché.
• Le transport et la duplication sont indépendants du type du media (copie
lde fichier).
• Par contre, tout media peut être affiché et ce n’est pas la même chose
pour l’audio la vidéo le graphisme le texte.
• Un média ne peut pas définir commeent s’afficher tant qu’il ne sait pas
ce qu’il est.
• Il n’y pas d’instance classe media
• Un media n’existe qu’en tant
Notation UML : nom de Media
classe italique ou stériotype
Auteur
<<abstract>>
titre
datecréation
Transporter()
dupliquer()
afficher()
Créer des sous-types (sous-classes). Une sous classe sera du même type de ma
classe dont elle hérite (super-classe).
PRINCIPE
Un objet d’une classe donnée pourra toujours faire référence à des objet de ses
sous-classes (polymorphisme).
Une opération exécutée par un objet sera celle que connait l’objet dont il fait
référence (liaison dynamique).
Les interfaces :
Une interface permet de décrire le comportement d’une unité (classe,
paquetage ou composant), c'est-à-dire un savoir faire sous la forme d’une liste
d’opérations.
Une interface n’est pas une classe c’est Elle ne peut pas servir à créer un objet
une liste de services.
Les Paquetages
• Une application est constituée de plusieurs classes, des dizaines ou des
centaines. Il n’est important de les organiser en groupes (en fonction de
certains critères surtout logique).
• C’est le paquetage (package) qui permet ce regroupement.
• Un paquetage regroupe des classes des interfaces et des paquetages.
• Il permet d’encapsuler certains éléments de la modélisation un élément
du paquetage peut être inaccessible de l’extérieur de paquetage, il n’est
alors connu que par les éléments du même paquetage.
• Il met en œuvre un espace de nommage.
Livres . . .
les associations :
Bibliothèque
Prêt
Diagramme d’objet :
- Les valeurs des attributs sont optionnelles ainsi que les liens entre
objet
Exercice :