Introduction
La problématique du développement d un logiciel La construction d un logiciel est complexe quand elle met en œuvre de nombreuses ressources : humaines ; matérielles ; technologiques. D où la nécessite de suivre : un processus bien défini => OHF\FOHGHYLH d un logiciel : prévoir et planifier les travaux ; coordonner les activités de conception, de fabrication, de validation, réagir à l évolution des objectifs. une méthode rigoureuse basée sur des PRGqOHV : représentations sémantique simplifiées mais justes d un système visant à l analyser et le comprendre pour mieux le concevoir. Benoît Charroux - Introduction - Juillet 99-2
Les étapes du cycle de vie (1/2) client / fournisseur L expression des besoins : élaboration par le client et le fournisseur d un cahier des charges décrivant : les fonctionnalités du système étudié ; comment utiliser ce système ; utilisateurs, experts / fournisseur / experts informatique les spécifications du système : lever les ambiguïtés, éliminer les redondances du cahier des charges ; l analyse : phase indépendante du toute considération technique et informatique visant à définir le système (s accorder sur le «quoi») ; la conception : prise en compte de l environnement technique pour déterminer la manière de résoudre le problème posé (s accorder sur le «comment») ; l implémentation : traduction de la conception dans un langage de programmation, en une base de données,... Benoît Charroux - Introduction - Juillet 99-3
Les étapes du cycle de vie (2/2) / experts informatique utilisateurs, experts / fournisseur les tests : vérification que l implémentation est correcte ; la validation : vérification que le système correspond aux besoins ; la maintenance et l évolution pendant la phase d exploitation. Benoît Charroux - Introduction - Juillet 99-4
Expression des besoins Le cycle de vie traditionnel en «V» Le modèle en «V» est le plus utilisé. Spécification Recette Conception préliminaire Tests d intégration Conception détaillée Tests unitaires Découpage du système en sous-systèmes qui facilite le travail en équipe, les phases de tests, et qui simplifie l analyse et la conception. Implémentation La phase de test intervient tardivement dans le projet. Benoît Charroux - Introduction - Juillet 99-5
Le cycle de vie objet Un cycle de vie suivant un modèle objet se caractérise par : une bonne traçabilité : les même concepts servent, depuis l analyse jusqu à l implémentation (par exemple les classes implémentées sont découvertes pendant la phase d analyse) ; un caractère itératif : spécifications expression des besoins validation analyse conception implémentation tests un caractère incrémental : une série de prototypes (sous-ensemble logiciel intégrable, réutilisable et évolutif) évoluent jusqu à la version finale. Benoît Charroux - Introduction - Juillet 99-6
La problème de la diversité des méthodes objets De nombres méthodes objets existent avec des formalismes différents : BOOCH : le diagrammes de classes ; les diagrammes d instances (états / transitions) ;... OMT (Object Modeling Technique) : le modèle objet ; le modèle dynamique ;... UML Unified Modeling Language standardisé en 1997 par l OMG OOSE (Object Oriented Software Engineering) : les use cases (cas d utilisation) ;... Benoît Charroux - Introduction - Juillet 99-7
La place d UML dans le cycle de vie - les objectifs de ce cours l expression des besoins OHVVSpFLILFDWLRQVGXV\VWqPH O DQDO\VH ODFRQFHSWLRQ O LPSOpPHQWDWLRQ les tests la validation la maintenance Benoît Charroux - Introduction - Juillet 99-8
La place d UML dans le cycle de vie Use Cases Spécifications fonctionnelles Analyse séquence Modèle objet (modèle statique) Modèle dynamique de classes de séquence de collaboration d activité d états Conception Benoît Charroux - Introduction - Juillet 99-9
L enchaînement des modèles Use Cases d activité OU séquence de classes d états de collaboration sens obligatoire sens possible ordre recommandé modèles équivalents Benoît Charroux - Introduction - Juillet 99-10
L enchaînement des modèles : du fonctionnel vers l objet Monde fonctionnel Use Cases d activité OU séquence de classes Monde des objets d états de collaboration Benoît Charroux - Introduction - Juillet 99-11
L enchaînement des modèles : du général au particulier Use Cases : - cas 1 ; - cas 2 ;... séquence 11 séquence 12... séquence 21 séquence 22... Particulier : plusieurs diagrammes collaboration 11 collaboration 12... collaboration 21 collaboration 22... Général : 1 seul diagramme d états 1 de classes d états 2... Benoît Charroux - Introduction - Juillet 99-12