Download - Les concepts d’UML - Le Processus Unifié -
Les concepts d’UML- Le Processus Unifié -
2003/2004 Cours d'UML 2
Constat de l’ingénierie logicielle
Système plus gros et plus complexe!Augmentation de la puissance des ordinateursExpansion de l’internet
Attente des utilisateursLogiciels mieux adaptés à leur besoinsMise sur le marché de plus en plus rapide
Besoin Moyen de contrôleProcessus intégrant différentes facettes du développement logiciel
2003/2004 Cours d'UML 3
Les Processus de développement
Le processus fournit un guide pour le développement efficace du logiciel.
Un processus définit :Les tâches à effectuerLes responsables,Quand les faire,Comment les exécuter,
2003/2004 Cours d'UML 4
Les grandes lignes
Créateur: Ivar JacobsonGrady BoochJames Rumbaugh
Processus créé en 1998Caractéristiques:
Enchaînement d’activitésActivités regroupées en phaseBasé sur les cas d’utilisation
2003/2004 Cours d'UML 5
Phases et Activités
2003/2004 Cours d'UML 6
Le Processus Unifié
Le systèmes est décrit en ensemble de modèles.Trois aspects de RUP:
Processus itératif et incrémental.Raffinement des modèles à travers les activités
Basé sur les cas d’utilisationExpression des besoins
Centré sur l’architecture
2003/2004 Cours d'UML 7
Objectif de chaque phase (1/2)
InceptionDéterminer les fonctionnalitésDéterminer l’étendue du projetDéterminer les critères du succèsDéterminer les risquesEstimer les ressources nécessairesÉtablir le planning et les jalons
ÉlaborationAnalyse des fonctionnalitésDévelopper le planningÉliminer les éléments les plus risqués
2003/2004 Cours d'UML 8
Objectif de chaque phase (2/2)
ConstructionLes fonctionnalités de l’application sont développés Intégration des fonctionnalités au projetChaque aspect du projet est testé.
TransitionLe produit est livré au clientDéveloppement de nouvelles versionsCorrection de problèmesFinition des aspects du projet qui ont été retardés
2003/2004 Cours d'UML 9
Les activités
2003/2004 Cours d'UML 10
Les activités
2003/2004 Cours d'UML 11
Les activités
2003/2004 Cours d'UML 12
Les activités
2003/2004 Cours d'UML 13
Acitivités « Business Modeling »
Décrire les besoins du systèmeBesoins et capacités du systèmes
Accord entre le client et le concepteur sur ce que le système doit faire et ne pas faireLe résultat de cette activités doit être lisible par le client (non- informaticien)
le chef de projet doit pouvoir planifier les itérations et les délivrables pour le client
2003/2004 Cours d'UML 14
Artéfacts du « Business Modeling »
Cahier des chargesLister les besoins
Statut :proposé, approuvé, incorporé, validé…Estimation des coûtsPriorité : critique, important, auxiliaire…Niveau de risque associé.
Contexte du système (glossaire…)Recueil des besoins fonctionnels.Recueil des besoins non-fonctionnels.
2003/2004 Cours d'UML 15
Activités « Analyse des Besoins »
Modéliser les besoinsDéterminer le vocabulaire « métier » pour éviter les ambiguïtés.Modéliser les fonctionnalités du système.Prototyper les IHMs
Validation auprès du client, maquette de la futur application
2003/2004 Cours d'UML 16
Artéfacts de « l’Analyse des Besoins »
GlossaireDéfinir les termes importants commun à toute l’équipe de développement
Diagramme de cas d’utilisationActeursCas d’utilisation
Prototypage des interfaces graphiques
2003/2004 Cours d'UML 17
Déroulement « l’Analyse des Besoins »
Ecriture du glossaireTerme + définition + besoin non fonctionnel
Définir les besoinsIdentification des Acteurs (interaction avec l’environnement)Identification des cas d’utilisationIdentifier les prioritésDétailler les cas d’utilisation (scénarii + diagramme d’activité)Prototypage des IHMs (texte de description +schéma)Structuration des cas d’utilisation (relation extends et include)
2003/2004 Cours d'UML 18
Activité « Analyse du système » (1/2)
AnalyseIdentification des principales entitésIdentifier les flux d’informationGrossière architecture en paquetage
2003/2004 Cours d'UML 19
Artéfacts de « l’Analyse du système »(1/2)
AnalyseDiagramme de classes (analyser en fonction trois types de classes:
Entité : ex compte bancaireEntité Interface : interface du caissierEntité métier : retrait d’argent
Diagramme de collaboration (entre les entités et acteurs)Diagramme de paquetages (basé sur les cas d’utilisation,structuré en couche)
2003/2004 Cours d'UML 20
Déroulement de « Analyse du système » (1/2)
Analyse de l’architectureRegrouper les CUs en paquetage.Définir les paquetages en couche (paquetage service)Identifier les classes (dizaine de classes par paquetage)
Analyse des cas d’utilisationIdentifier les classes (diagramme de classes)Décrire les interactions: définir les messages envoyés (diagramme de collaboration)
Analyse d’une classeIdentifier le rôle de la classe dans chaque cas d’utilisationIdentifier les attributsIdentifier les relations entre les classes
Analyse des paquetages: Vérifier qu’ils sont les plus indépendants possible
2003/2004 Cours d'UML 21
Activité « Analyse du système » (2/2)
ConceptionConception de l’architectureIdentification des nœuds du système
Configuration réseau
Identification des sous-systèmes et de leurs interfacesConception des classes significatives
Les classes sont ré-étudiés en détail
Identification des classes actives concurrence entre les processus
2003/2004 Cours d'UML 22
Artéfacts de « l’Analyse du système »(2/2)
Diagramme de classesDiagramme d’interactions entre les classesDiagramme d’états transitionsDiagramme de sous-systèmesDiagramme d’interactions entre les sous-systèmes.
2003/2004 Cours d'UML 23
Déroulement de « Analyse du système » (2/2)
Conception des CusIdentifier les classes participant à chaque CU en identifiant des aspects génériques (template, patterns)…(Diag. Classes)Description des interactions entre les classes.(Diag de séquences par CU)Identification des sous-systèmes et de leur interfaces. (Diag. de classes)Description des interactions entre les sous-systèmes (Diag. de séquences)
2003/2004 Cours d'UML 24
Déroulement de « Analyse du système » (2/2)
Conception des ClassesIdentification des opérationsIdentification des attributsIdentification des associationsIdentifier les liens d’héritageDécrire l’algorithme de chaque méthode Décrire les différents états atteints par les objets.
Conception de sous-systèmesMaintien des dépendances.Déterminer les opérations des interfaces
2003/2004 Cours d'UML 25
Activité « Implantation »
Description de l’architecture.Décrire les composants à partir des sous-systèmes.
Plan de construction Description des séquences de réalisationGestion des versions
Implantation des sous-systèmesConstruction des IHMs.
2003/2004 Cours d'UML 26
Artéfacts de « l’Implantation »
Diagramme de composantsDiagramme de déploiementPlan de constructionCode du système
2003/2004 Cours d'UML 27
Déroulement de « l’Implantation »
Implantation de l’architectureIdentifier les composants = sous-systèmes (diag. de composants).Identifier les composants sur les nœuds (diag. de déploiement)
Intégration du systèmePlanifier la constructionPrévoir la construction (création, compilation…)
Implantation des sous-systèmesS’assurer que les composants correspondent bien au fonctionnement des sous-systèmes.
Implanter les classesGénérer le codeImplanter les opérations
Réaliser les tests unitaires des composants.
2003/2004 Cours d'UML 28
Activité « Test »
Planifier les tests requis pour chaque itérationConception et implantation des testsExécution des tests.
2003/2004 Cours d'UML 29
Déroulement du « Test »
Planifier les tests Déterminer la stratégie de testsEstimer l’effort pour tester.Organiser les tests
Concevoir les testsConcevoir les cas de test d’intégration (à partir des CUs)Concevoir les tests du système (ensemble de CUs)Concevoir les tests de régressionCréation des procédures de test (sur un sous-système)
2003/2004 Cours d'UML 30
Déroulement du « Test »
Implantation de testCréation de composants test
Exécution des tests d’intégrationExécution des procédures de tests.Comparaison les résultats avec l’attente.Rapporter les défauts (implantation ou conception).
Évaluer les testsPréparation de métriques pour déterminer la qualité du logiciel
Exhaustivité des tests (indiquer le pourcentage des cas de test effectués)Intégrité ensemble des défauts découverts
2003/2004 Cours d'UML 31
Activité « Déploiement »
Assurer la continuité avec le client.Guide utilisateur à partir des UCs.
Assurer le maintien techniqueGuide technique
Modèle d’applicationChoix de modélisationChoix d’implantation
Corriger l’application en fonction du retour du client.
Gestion des versions.
2003/2004 Cours d'UML 32
RUP en résumé
InceptionActivité « Business Modeling »Activité « Besoin »
Accord avec le clientElaboration
Activité « Besoin »Activité « Analyse et conception »Activité « Test »
Modèle stable complet et consistent
2003/2004 Cours d'UML 33
RUP en résumé
ConstructionActivité « Besoin »Activité « Implantation » Activité « Test »
Première version avec qq fonctionnalités
TransitionActivité « Test »Activité « Déploiement »
Produit livré, fin de contrat pour la prise en main du produit
2003/2004 Cours d'UML 34
Cas d’étude : Bourse en ligne
Exemple des artefact que l’on obtient
InceptionDocument papier : cahier des charges…
2003/2004 Cours d'UML 35
Inception
Activités « Analyse des besoins »Glossaire
Cas d’utilisationPrototypage
d’une interface
Login
Mot de passe
valider Annuler
2003/2004 Cours d'UML 36
Dia. de cas d’utilisation
2003/2004 Cours d'UML 37
CU « se connecter au système »
Diag. d’activité Scenarii
2003/2004 Cours d'UML 38
Élaboration
Diagramme de paquetages
2003/2004 Cours d'UML 39
Élaboration
Diagramme de classe du paquetage connexion
2003/2004 Cours d'UML 40
Elaboration
Diagramme de séquence
2003/2004 Cours d'UML 41
Elaboration
Machine d’état de la classe VerifierConnexion
2003/2004 Cours d'UML 42
Elaboration
Diagramme de sous-systèmes
2003/2004 Cours d'UML 43
Implantation
Diag. De composants
2003/2004 Cours d'UML 44
Voir plus loin
Appliquons RUP et réalisons le CU de création de compte.
Une itérationSuivre les phases et les activités….