La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Formation Industrialisation AS France UML - Conception fonctionnelle.

Présentations similaires


Présentation au sujet: "Formation Industrialisation AS France UML - Conception fonctionnelle."— Transcription de la présentation:

1 Formation Industrialisation AS France UML - Conception fonctionnelle

2 Formation Industrialisation AS France Title Introduction A la fin de la session je dois être capable de : Traduire un cahier des charges en concepts UML Utiliser : les diagrammes de cas dutilisation les diagrammes de séquence les diagrammes dactivité les diagrammes détat-transition les diagrammes de classe Utiliser loutil Magic Draw Présentation du formateur FOR INTERNAL USE ONLY. © 2010 Capgemini. All rights reserved. 2 Objectifs de la formation

3 Formation Industrialisation AS France Title Présentation des participants Vos attentes ? 3 FOR INTERNAL USE ONLY. © 2010 Capgemini. All rights reserved.

4 Formation Industrialisation TS France Title Quiz - UML cest : ? Un langage de programmation Une aide pour modéliser Un nom davion motorisé ultraléger Un guide pour faire des petits dessins

5 Formation Industrialisation TS France Title Quiz - Utiliser UML cest garantir : ? Une meilleure structuration de linformation Moins de problèmes de barrière de langue Que le logiciel correspond aux besoins du client Des intégrations régulières

6 Formation Industrialisation TS France Title Quiz - RUP cest : ? Une inscription dans les cimetières anglophones qui signifie « Rest Under Peace » Une méthode de conception Un logiciel de modélisation Une implémentation de UP

7 Formation Industrialisation TS France Title Déroulement de la formation Première demi-journée Introduction Vue densemble Le génie logiciel Recueil des besoins Analyse Deuxième demi-journée Compléments Synthèse Cas pratique Troisième demi-journée Cas pratique (Suite) Clôture

8 Formation Industrialisation TS France Title Vue densemble Le génie logiciel Recueil des besoins Analyse Compléments Synthèse Sommaire

9 Formation Industrialisation TS France Title -Le modèle est pérenne, et les notations aussi. -La vision du système est partagée grâce au fait : -Que tout le monde voit la même spécification -Que tout le monde contribue à faire évoluer le modèle en introduisant sa propre vision -UML est une notation de plus en plus répandue (connue, enseignée, supportée par les outils…). -UML permet de répartir simplement le travail de spécification sur de nombreuses personnes. -Il nest pas nécessaire davoir des compétences métier pour manipuler des diagrammes UML : fonctionnels et développeurs ont un langage commun. -Même les plus gros projets peuvent être spécifiés et maintenus en UML. -Formaliser en UML permet -De préciser sa pensée, -De pousser les intervenants à communiquer et à partager leurs connaissances, -Déviter dinstaurer des gourous. Avantages de la modélisation avec UML

10 Formation Industrialisation TS France Title Vue densemble Le génie logiciel Recueil des besoins Analyse Compléments Synthèse Sommaire

11 Formation Industrialisation TS France Title Les différents cycles de vie Des cycles linéaires et des cycles itératifs Des cycles longs et des cycles courts Ne pas hésiter à faire évoluer le cycle et à les combiner Cycles longs Linéaires Cycles courts Itératifs Cascade V Y RAD XP Itératif Rapid prototyping (Robert Balzer) Scrum

12 Formation Industrialisation TS France Title Activité Test unitaires Exg. Spec. Conc. Code DTV DTU Doc Composant Logiciel Produit Chronologie E/S Spec.log. Intégration Validation Analyse log. Conception DDI Cycle de vie linéaire Capgemini : le cycle en V de l'AFCIQ DTV : Dossier de tests de validation DTU : Dossier de tests de unitaires DDI : Dossier de définition dinterface

13 Formation Industrialisation TS France Title Cycle de vie en V : Bs –Modèle éprouvé car calqué sur la production industrielle classique : permet l'organisation du travail et des équipes => prédiction (Cocomo) et contrôle des coûts facilités favorise la décomposition hiérarchique fonctionnelle propose des étapes clés (documentation, revues) => bon suivi du projet permet de garantir une certaine qualité (plan assurance qualité) existence de standards (MIL-STD-498, GAM-T17(V2), Do 178 B, STAN-CS 055, ESA,...) adapté à de grands projets –Beaucoup d'outils support.

14 Formation Industrialisation TS France Title Cycle de vie en V : Cs –Hypothèses peu fondées : séquentialité des phases non conforme à la réalité –Incapacité à prendre en compte des évolutions du cahier des charges durant la construction du système –Absence de vérification et validation à la fin de chaque étape –Absence d'une continuité des outils –Inadapté aux systèmes non fonctionnels –La production de documents ne limite pas beaucoup leffet tunnel –Peu ou pas de possibilité de maquettage et/ou de prototypage. Définitions (Boehm 76): - Validation: « Am I building the right system? » - Verification: « Am I building the system right? »

15 Formation Industrialisation TS France Title Vue opérationnelle Pilotage Developpement Fonctionnel Méthodes Architecture physique Architecture conceptuelle Architecture logique Collecte dexigenc es Analyse Codage et tests unitaires Recette Déploiement ExploitationMaintenance Intégration Conception applicative générale Architecture Conception technique détaillée Assurer la convergence des branches Maîtriser la profondeur des documents Assurer la compréhension des utilisateurs Retranscrire fidèlement le besoin Assurer la pérennité des solutions Analyser les éléments structurants du dimensionnement de larchitecture Ajustement

16 Formation Industrialisation TS France Title Cycle de vie en Y Sépare les analyses fonctionnelles et techniques Bs Mis en œuvre chez Capgemini Détecte les conflits technique / fonctionnels au plus tôt Peut sintégrer dans les autres cycles de vie Particulièrement adapté aux nouvelles technologies et à lutilisation de COTS Utilise toutes les compétences métiers dès le démarrage du projet Cs Impose de définir la totalité des besoins dès le départ Lorganisation du projet doit être adaptée Rarement appliqué en létat

17 Formation Industrialisation TS France Title Le cycle itératif

18 Formation Industrialisation TS France Title Les méthodes agiles (RAD, XP, Scrum…) Basé sur le principe quil vaut mieux adapter que prédire Personnes et interactionsProcédures et outils Applications fonctionnellesDocumentation pléthorique Collaboration avec le clientNégociation de contrat Acceptation du changementPlanification Faire vite et simple plutôt que beau et hi-tech Implication permanente du client Communication directe maximale (client, équipes…) Motivation des individus Respect des règles de qualité (code clair et robuste) Ne pas confondre agilité et bricolage : ces méthodes nécessitent beaucoup de compétence, de rigueur et de motivation sans quoi elles mènent droit dans le mur! A privilégier A éviter

19 Formation Industrialisation TS France Title Les méthodes agiles (RAD, XP, Scrum…) Bs : Plus deffet tunnel (présence du client et livraisons fréquentes) Forte capacité à sadapter aux changements de spécification Cs : Faiblesse de la documentation (difficulté de transfert du projet à une autre équipe) Fortes capacités relationnelles exigées des développeurs (entre eux et avec le client) Souvent inadapté aux gros projets Formation et rigueur imposée aux acteurs Planification et estimations de charge difficiles

20 Formation Industrialisation TS France Title Le cycle itératif

21 Formation Industrialisation TS France Title Le cycle itératif Réduction du risque par morcellement Chaque itération : Est fondée sur le résultat stable dune itération antérieure quelle améliore si nécessaire Produit un prototype validé Bs : Pas deffet tunnel Les difficultés dune itération sont levées dans la suivante Production de résultats visibles très tôt Meilleure traçabilité des exigences Meilleure répartition des tâches sur les ressources Cs : Difficultés à aboutir sur les exigences client Impose des disponibilités de la part du client Tendance à laisser le client valider (réduction de leffort de test)

22 Formation Industrialisation TS France Title Cycle de vie itératif de Capgemini : Unified Process La vie dun projet UP se décompose en une série de cycles. A un cycle correspond une livraison. Une livraison contient le résultat des activités menées pendant le cycle Ces activités sont de différentes sortes : Modèles métier, Requirements, …. Comment segmenter les itérations Débuter petit. Une itération trop grosse diminue la visibilité du CdP et les possibilités dadaptation (ladaptation en cours ditération nest pas souhaitable) Partir des exigences stables. Le client doit sélectionner les exigences les plus abouties. Ne pas commencer par lIHM principale mais par les systèmes tiers (communications avec les SGBD / autres systèmes informatiques). lIHM principale impose en général de produire de nombreuses briques élémentaires et constitue un des les plus lourds (sans être forcément la plus stable). Un cycle RUP est-il constitué de N cycles en V?

23 Formation Industrialisation TS France Title Cycle de vie itératif de Capgemini : Unified Process-suite Spécificités de UP Itératif et incrémental Un projet est divisé en itérations : une itération est constituée des mêmes étapes Une itération prend en compte un ou plusieurs cas dutilisation Pour concevoir les itérations le critère de choix cest dabord lélimination des risques On essaie de faire en sorte que les itérations finissent par être des additifs Piloté par les cas dutilisation Un cas dutilisation est une fonctionnalité du système offrant un résultat tangible pour lutilisateur Lutilisateur peut être un être humain, mais un système externe Les modèles décrivent la réalisation dun cas dutilisation Centré sur larchitecture Larchitecture doit permettre de réaliser les cas dutilisation Larchitecture et les cas dutilisation doivent évoluer de concert (on retrouve les deux branches du Y du cycle en Y) Larchitecte doit avoir une compréhension globale des cas dutilisation Sappuie sur UML RUP est une Instanciation dUP par Rational / IBM

24 Formation Industrialisation TS France Title UP : Focalisation sur larchitecture Penser en terme déléments : couches, sous-systèmes, paquetages, relations, composants… Permet dacquérir et de conserver un contrôle intellectuel sur un projet, de gérer sa complexité et de maintenir lintégrité du système Principes de conception : diviser pour mieux régner, couplage, cohésion, réutilisabilité… Procure une base efficace pour réutiliser à grande échelle Procure des bases de gestion de projet – allocation des tâches aux équipes… Facilite des développements basés sur les composants Les composants remplissent une fonction précise dans une architecture bien définie Un composant procure et correspond à une implémentation physique dun ensemble dinterfaces

25 Formation Industrialisation TS France Title Processus et méthodes Synthèse Processus o Vue simple et concise des objectifs et des résultats o Formalisme permet de mesurer la qualité et lavancement o Rigidité externe ninterdit pas une souplesse dorganisation Méthode o Vue complexe de la réalité o Guide, référentiel doutils Processus itératifs o Alignement besoins pilotage et opérationnels o Risques mieux maîtrisés Exigences instables Conception évolutive Planification à temps

26 Formation Industrialisation TS France Title Les activités Les phases Temps UML et le processus A la fin de literation E1, on livre des documents/constructions concernant : Le business modeling requirements analysis and design Implementation Tests Le déploiement La gestion de configuration La gestion de projet Environnment

27 Formation Industrialisation TS France Title Architecture RUP : Le modèle 4+1 vues Vue processus Vue de déploiement Vue logiqueVue dimplémentation Développeurs Management logiciel Performance Scalability, Concurrence, Bande passante, Parallélisme… Intégrateurs système Topology du système Delivery, installation Communication Ingénieurs système Vue des cas dutilisation Structure Analystes/ Concepteurs Utilisateur Fonctions Vue Une Vue est une description complète (une abstraction) dun système dans une perspective ou un point de vue particulier – présentant des considérations et en omettant dautres qui ne sont pas pertinentes pour cette perspective. Différentes vues dintervenants différents => des objectifs différents. Un Modèle est une représentation complète. Les modèles sont constitués de vues. Functional requirements Vue logique View Exigences fonctionnelles Traite la conception, paquetages, sous- systèmes, classes, couches, … Vue dimplémentation Traite surtout lorganisation et la programmation des modules statiques et des tests unitaires

28 Formation Industrialisation TS France Title Synthèse des cycles de vie Il faut adapter les cycles de vie au projet Un projet peut mixer ou paralléliser plusieurs cycles de vie : o Sur le projet ODS, un prototype a été réalisé dans lesprit méthodes agiles tandis que le reste des livraisons sappuient sur un panachage cycle en V/itératif o Attention par contre à ne pas changer de cycle en cours de réalisation (entraine une perte de visibilité du chef de projet, une confusion du client…) Analyse/conception RUP ne distingue pas clairement analyse et conception En anglais design a une connotation plus technique. Sa traduction, "conception", doit donc désigner uniquement la conception technique. Une convention commune mais pas universelle o Analyse se limite à la conception des éléments essentiels o Conception effectue des choix dimplémentation Pas universel o On peut faire de la conception fonctionnelle (exemple domain-driven design) Retenons : Cahier des charges ou de besoins = spécification externe Analyse = modèle des objets du domaine :dossier de cadrage et spécifications internes Conception = terme réservé à limplémentation

29 Formation Industrialisation TS France Title Définir les rôles Chef de projet (Métier Project manager) Organiser la spécification sur le projet Valider avec le client l'organisation de la spécification sur le projet Assurer le suivi de la spécification et des engagements en CO projet Vérifier le référentiel de spécification Responsable fonctionnel (Métier IT & Business Analyst) Concevoir l'architecture applicative, ses interfaces et définir les principes qui guident son organisation. Participer à lélaboration de la stratégie de test Responsable de la qualité et de la faisabilité de l'application Coordonner les efforts des concepteurs Concepteur fonctionnel Raffiner progressivement les exigences afin d'établir une vision précise de la solution et contribuer à la rédaction des documents de test S'assure de la cohérence des spécifications avec la solution technique Responsables des exigences Vérifier la traçabilité entre les référentiel d'exigences, de spécification et de conception et traiter les écarts Responsable Gestion de la configuration Gérer en configuration le référentiel de spécification (versions du référentiel et fiches RQE) Ingénieur Qualité (Métier efficiency manager) Assister le CP à organiser les phases de spécification (PQP) Contrôler la tenue des Revues de Spécification (fiches RQE) des exigences Vérifier la couverture des exigences qualité et traiter les écarts Contrôler le processus de gestion des exigences et s'assurer que le projet et les livrables y répondent

30 Formation Industrialisation TS France Title IHM2 TM3 Formation des équipes de concepteurs Besoins au niveau fonctionnel Vision globale de lapplication pour analyser limpact des évolutions et échanger avec le client Besoin de rentabiliser linvestissement important dans le domaine fonctionnel (i.e. nombre de fonctionnels limité) Besoins au niveau technique Maîtrise de chaque composant de lenvironnement technique (ex : composants IHM, administration de données, communication réseau…) Respect du découpage architectural Fct1 Exg1 Exg2 Exg3 Exg4 Fct2 Fct3 IHM1 TM1 TM2 IHM2 TM3 TD1 TM2 TD2

31 Formation Industrialisation TS France Title Exercice Vous êtes employé chez un Tour Operator pour organiser les voyages des clients. Mr Hans TREPRISE vous appelle. Il veut aller de Paris à Toulouse. Solution : ?

32 Formation Industrialisation TS France Title Vue densemble Le génie logiciel Recueil des besoins Analyse Compléments Synthèse Sommaire

33 Formation Industrialisation TS France Title Gestion des exigences Fonctionnelles Non fonctionnelles Maîtrise des risques Maîtrise des coûts Matrice de traçabilité Exemple étude de cas

34 Formation Industrialisation TS France Title Les exigences Les exigences métier, fonctionnelles et techniques Pourquoi les distingue t on Comment les gère t on Les exigences métier définissent des invariants des besoins essentiels Les exigences fonctionnelles les traduisent dun point de vue applicatif Permettent dobtenir une spécification fonctionnelle externe Note: ne pas oublier les besoins dexploitation et opérationnels induits par la solution Les exigences techniques Permettent dobtenir une spécification technique externe Mais induisent de nombreux choix dimplémentation

35 Formation Industrialisation TS France Title Propriétés communes aux exigences Selon la norme IEEE 830, un référentiel dexigences doit être : Correct Non ambiguë Complet Cohérent Catégorisé Vérifiable Modifiable Traçable

36 Formation Industrialisation TS France Title Correcte Un référentiel dexigences est correct si et seulement si chaque exigence quil décrit doit être satisfait par le logiciel. Comment le savoir: Rencontres Discussions Comparaison avec dautres documents (Spécification des exigences du système, Logiciel existant…)

37 Formation Industrialisation TS France Title Non ambiguë Un référentiel dexigences est non ambiguë si et seulement si chaque exigence quil décrit a une seule interprétation Tâche terriblement difficile. Moyens qui aident : Révision du texte par dautres personnes Employer une langue de spécification (ex. UML) Employer des outils (ex. MagicDraw)

38 Formation Industrialisation TS France Title Un référentiel dexigences est complet si et seulement si il contient tous ces éléments : Toutes les exigences significatives (sic !) La réponse du logiciel à toutes les classes dentrées dans toutes les situations possibles. Définition de tous les termes et présence de toutes les légendes et les références aux figures et aux tableaux Pas de « à venir» (Sil y en a, il faut dire comment et quand ils seront enlevés) Complète

39 Formation Industrialisation TS France Title Cohérente Un référentiel dexigences est cohérent si et seulement si aucun sous ensemble dexigences est en conflit. Conflits possibles: Caractéristiques dobjets physiques en conflits (couleur, format dimpression…) Conflits logiques ou temporels (A avant B et B avant A) Descriptions des mêmes objets du monde réel avec des termes différents

40 Formation Industrialisation TS France Title Catégorisée Chaque exigence doit avoir une valeur qui la situe dans une certaine position à lintérieur dune catégorie. Minimalement deux catégories Stabilité (grande, moyenne, petite) Nécessité (Essentielle, conditionnelle, optionnelle)

41 Formation Industrialisation TS France Title Vérifiable Un référentiel dexigences est vérifiable si et seulement si chaque exigence quil contient est vérifiable. Pas dadjectifs qualificatifs Pouvoir définir une suite daction pour vérifier Les énoncés ambigus ne sont généralement pas vérifiables

42 Formation Industrialisation TS France Title Modifiable Un référentiel dexigences est modifiable si et seulement si sa structure et le style décriture sont tels que chaque changement aux exigences est facile et laisse le document cohérent sans changer la structure et le style. Doit avoir Table des matières, index, références croisées Pas de redondance Exigences séparées et non mélangées

43 Formation Industrialisation TS France Title Traçable Un référentiel dexigences est traçable si lorigine de chaque exigence est claire et si elle permet dintégrer les références à lévolution des exigences et aux artefacts qui la détaille. En arrière : identifier la source En avant : identification unique de lexigence (pour que les autres documents puisse y faire référence) et quand il est possible identification du/des document(s) qui suivent.

44 Formation Industrialisation TS France Title Bonnes pratiques Préparation conjointe : les exigences devraient être rédigée conjointement par les représentants du client et du fournisseur. o Connaissances du domaine (client) o Limites techniques (fournisseur) => Monter des ateliers de conception Les exigences doivent pouvoir évoluer simplement car il est pratiquement impossible (et dangereux) de « tout » spécifier dès le début. Être le plus complètes possibles à un moment donné Si les exigences ne sont pas complètes il faut le signaler À partir dun certain moment (dépendant du projet) tout changement doit être officialisé

45 Formation Industrialisation TS France Title Facteurs qualité externes du logiciel (B. Meyer) Validité : aptitude d'un produit logiciel à réaliser exactement les tâches définies par sa spécification Robustesse : aptitude d'un logiciel à fonctionner même dans des conditions anormales Extensibilité : facilité d'adaptation d'un logiciel aux changements de spécification Réutilisabilité : aptitude d'un logiciel à être réutilisé en tout ou partie Compatibilité : aptitude des logiciels à pouvoir être combinés les uns aux autres Efficacité : aptitude d'un logiciel à bien utiliser les ressources matérielles telles la mémoire, la puissance du CPU, etc. Portabilité : facilité à être porté sur de nouveaux environnements matériels et/ou logiciels Traçabilité : capacité à identifier et/ou suivre un élément du cahier des charges avec un composant d'un logiciel Vérifiabilité : facilité de préparation des procédures de recette et de certification Intégrité : aptitude d'un logiciel à protéger ses différents composants contre des accès ou des modifications non autorisés Facilité d'utilisation :...

46 Formation Industrialisation TS France Title Exercice Déduisez des exigences de ces besoins : LIHM du logiciel doit aller vite. Le logiciel devra interagir avec des personnes en situation de handicap. Les résultats semestriels ne sont accessibles quaux responsables de centre. Notre voiture doit avoir un régulateur de vitesse robuste. La gestion de mémoire de notre système dexploitation doit être plus efficace que celle de Windows. Ce nouveau logiciel de paye doit être aussi complet que le précédent mais coûter moins cher.

47 Formation Industrialisation TS France Title Principes de traçabilité au cours du projet OU REPONSES NIV1 c Exigences Matrice de couverture Matrice de couverture Demande Modification Propale Cahier des Charges Spec. B Spec. A Dossier Conc. Gen. Spec. D Spec. C Dossier Conc. Det.. NIVEAU 0 : EXIGENCES NIVEAU 1 : CONCEPTION GEN. NIVEAU 2: CONCEPTION DET. REPONSES NIV2 c Exigences Plan de Tests Matrice de couverture

48 Formation Industrialisation TS France Title Principe de la traçabilité Document dexigences Document de réponses

49 Formation Industrialisation TS France Title Règles appliquées aux identifiants Lidentifiant de tout type dexigences doit répondre aux règles suivantes: Utilisation du style Req_ID Nommenclature précise décrite ci-dessous: R07289-CDC-BPR-010_11 [..] Champ optionel [ ]- - - GroupeDescriptionFormat [ ] Identifiant du document Optionel: ensemble de chiffres et/ou de caractères (non limité en nombre) Type de document Ensemble de chiffres et/ou de caractères (non limité en nombre) Ensemble de chiffres et/ou de caractères (non limité en nombre) Nombre à plusieurs chiffres initialiement numéroté de 10 en 10. Possibilité dajouter un second groupe de chiffres Ensemble de chiffres et/ou de caractères (non limité en nombre) Possibilité de suffixer par – ou _ Peut être relatif à un domaine, une fonction… Pour approfondir les sujets liés à la traçabilité, reportez vous à la formation : Gestion des exigences - Reqtify

50 Formation Industrialisation TS France Title Dictionnaire des données Ne fait pas partie des notations UML mais suit la conception et le développement et la maintenance, et évolue tant que le système n'est pas stabilisé Le dictionnaire de données permet de connaître à tout instant les éléments du système se présente sous la forme d'un tableau à 5 champs 1.identificateur retenu pour tout élément 2.description : définition retenue par la MO et la MOE 3.type de l'élément i.e. cas d'utilisation, classe, attributs, relations, etc. 4.référence bibliographique de la description 5.alias : liste des alias de l'identificateur

51 Formation Industrialisation TS France Title La méthode Si nécessaire, un diagramme dactivité peut précéder cette méthode pour situer la demande du client dans son processus métier global.

52 Formation Industrialisation TS France Title Principes de présentation des notations UML Définition des concepts Présentation des notations point de vue syntaxique point de vue sémantique Règles de Vérification et Validation (V&V) Commentaires sur un exemple

53 Formation Industrialisation TS France Title Les diagrammes dactivité – Généralités Concepts : Activités et contexte Transitions et nœuds Synchronisation Un diagramme dactivité sert à modéliser : les flots de contrôle les flots de données Conséquence : les états représentent des calculs il ny a pas dévénement externes mais des attentes de fins de calculs il peut y avoir de la concurrence entre activité Un diagramme dactivité traduit un organigramme avec en plus de la concurrence

54 Formation Industrialisation TS France Title Remarques sur les diagrammes dactivités Niveau global (modélisation du métier du client) donne une vue macroscopique de lenchaînement des fonctionnalités correspond à la traditionnelle décomposition hiérarchique fonctionnelle Niveau simple (modélisation technique dune méthode) permet, pour un objet donné, dexprimer graphiquement une activité du diagramme détat en un algorithme traduction directe possible dans un langage de programmation OO (Java, C++, …) loutil Rapsodhy diLogix permet cela

55 Formation Industrialisation TS France Title Diagrammes dactivité : vue globale

56 Formation Industrialisation TS France Title Diagrammes dactivités : les actions et le contexte Stéréotype aucun pour laction, « localPrecondition » et « localPostcondition » pour le contexte Rôle représente la réalisation dune action métier du processus métier du client les pré et post conditions sont optionnelles Règle de V&V les actions doivent être validées par le client au plus une pré condition et un post condition par action Sélectionner la boisson

57 Formation Industrialisation TS France Title Diagrammes dactivités : transitions et nœuds Stéréotype aucun Rôle une transition représente un passage dun action à la suivante. létat initial est le point de départ de la lecture du diagramme, un point final identifie sa fin le point darrêt de flux correspond, dans un diagramme parallélisé, à la fin dun des traitements parallélisé mais pas sans terminer le processus père un nœud conditionnel permet de définir plusieurs possibilités de fonctionnement Règle de V&V un flux connecte toujours deux éléments du diagramme toujours un état initial et au moins un état final par diagramme chaque flux partant dun nœud décisionnel doit porter des conditions qui doivent décrire lintégralité de lespace des solutions

58 Formation Industrialisation TS France Title Diagrammes dactivités : synchronisation, couloirs dactivités Stéréotype aucun Rôle Synchronisation : permet la parallélisation des traitements Couloirs : permet laffectation des traitementsà des responsables différents Les deux concepts sont indépendants Règle de V&V ne pas lier deux activités qui ont été parallélisées

59 Formation Industrialisation TS France Title Diagramme dactivité simple Que veut-il dire?

60 Formation Industrialisation TS France Title Présentation générale de MagicDraw

61 Formation Industrialisation TS France Title Exercice : modélisation dun téléphone portable Un fabricant de téléphone portable souhaite réécrire ses spécifications en utilisant UML. Traduisez le texte suivant en diagramme dactivité. Pour utiliser le téléphone il faut dabord le sortir de sa housse puis louvrir. Lutilisateur compose ensuite le numéro. Lorsque son correspondant décroche il peut engager la conversation. Si le forfait arrive à expiration, la communication est coupée. Sinon lutilisateur raccroche en fin de communication.

62 Formation Industrialisation TS France Title BPMN (Business Process Modeling Notation) Standardisé par lOMG et très proche des diagrammes dactivité UML. UML = très complet et orienté objet => rejet de certains clients. BPMN = expression plus simple de la dynamique des processus => mieux accepté. Plus dinformations disponibles sur :

63 Formation Industrialisation TS France Title Vue densemble Le génie logiciel Recueil des besoins Analyse Compléments Synthèse Sommaire

64 Formation Industrialisation TS France Title Les diagrammes de cas d'utilisation - Généralités Composent les itérations des cycles UP Permet de représenter le comportement d'un système vu du côté utilisateur Très utile en phase d'analyse des besoins car structure les besoins des utilisateurs finals Traduit une spécification d'utilisation du système Correspond partiellement à une décomposition fonctionnelle du système Met en évidence les dialogues avec le système Permet de concevoir un système robuste Permet de répartir les fonctionnalités de lapplication aux différents membres de léquipe de production et de déterminer ainsi « Qui fait quoi »

65 Formation Industrialisation TS France Title Diagrammes de cas dutilisation : vue globale

66 Formation Industrialisation TS France Title Cas d'utilisation – les Concepts Les acteurs Les cas d'utilisation Les relations entre acteurs et cas d'utilisation Les relations entre acteurs Les relations entre cas d'utilisation Les paquetages Périmètre du système

67 Formation Industrialisation TS France Title Les acteurs Stéréotype > Rôle élément extérieur au système ET interagissant avec le système Peut être un humain ou un système ou une réglementation ou …. acteur principal (ex. client) acteur secondaire (ex. agent de maintenance) matériel externe (ex. dispositifs indispensables au fonctionnement du système) système externe (ex. SGBD ou BD) Nécessite une description précise et concise Règle de V&V tout acteur doit communiquer avec le système NB : la présence d'acteurs ne communiquant pas avec le système est tolérée si cela facilite la lisibilité !

68 Formation Industrialisation TS France Title Cas d'utilisation (Use case : UC) Stéréotype aucun Rôle représente un (ensemble de) service(s) rendu(s) par le système est assimilé à une fonction (macroscopique ou microscopique) intervient tout au long du cycle de vie Règle de V&V un cas d'utilisation est toujours en relation soit avec un acteur soit avec un autre cas d'utilisation un UC en tant que fonction est traduit par un verbe d'action correspondant à une notion de traitement NB : une fonctionnalité (UC) isolée traduit une erreur de conception !

69 Formation Industrialisation TS France Title Règle de base: Le recueil de besoins doit lever toute ambiguïté sur lanalyse et la conception. Le niveau de détail doit être aussi poussé que nécessaire, dun point de vue métier Comment gérer ce niveau de détail: Ne pas nuire à la clarté en parsemant la description de détails Mettre en commun les règles de gestion générales, avec détails nécessaires Créer un glossaire des concepts communs, avec détails nécessaires Établir un modèle objet préliminaire (orienté données) Cas dutilisation : quel niveau de détail?

70 Formation Industrialisation TS France Title Relation entre acteurs et cas d'utilisation Stéréotype > Rôle représente une communication (signal et données) entre acteur et UC directionnelle ou pas représente l'ensemble de TOUS les dialogues possibles et imaginables entre l'acteur et le cas dutilisation, i.e. représente lENSEMBLE de tous les scénarios nominaux ET non nominaux Règle de V&V doit traduire un dialogue NB : les scénarios permettent de déterminer a priori la robustesse du système

71 Formation Industrialisation TS France Title Relation entre acteurs ou cas dutilisations Rôle la généralisation/spécialisation représente une notion dhéritage : tout ce que sait faire le père, le fils sait aussi le faire ici, pour valider le moyen de paiement, on a trois procédures possibles : vérification de chèque, vérification de carte bleue, vérification de faux billet Règle de V&V B est un cas particulier de A NB : à lextérieur du périmètre du système (entre acteurs) seules les relations dhéritage sont possibles

72 Formation Industrialisation TS France Title Relations entre Cas d'Utilisation – include Stéréotype > Rôle relation d'inclusion traduisant une obligation et indiquant la réutilisation dune autre fonctionnalité D contient lensemble du comportement de C. Quand on fait une commande sur la Redoute.fr on doit valider le moyen de paiement (contrôle carte bleue). Règle de V&V tout cas d'utilisation doit avoir au moins une relation avec une autre cas d'utilisation ou avec un acteur NB : les relations entre UC correspondent à des demandes de service mais il n'y a pas d'ordre comme dans un graphe d'appels de fonction

73 Formation Industrialisation TS France Title Relations entre Cas d'Utilisation – extend Stéréotype > Rôle il sagit dune relation dextension non obligatoire : B nintervient dans le fonctionnement de A que sous certaines conditions. Les deux use cases nécessitent dêtre loggé mais on ne se logge que si on nest pas déjà loggé. L « extension point » décrit la condition dinclusion. Règle de V&V tout cas d'utilisation doit avoir au moins une relation avec une autre cas d'utilisation ou avec un acteur lutilisateur est connecté au moins avec le cas dutilisation étendu

74 Formation Industrialisation TS France Title Paquetage Stéréotype aucun Rôle sert à délimiter le système et ses sous-systèmes Permet de déterminer les frontières du système Règle de V&V aucun paquetage vide ! nombre de relations intra- paquetage plus important que les relations inter-paquetage (notion de cohésion forte des use cases dun paquetage) NB : tous les éléments ne faisant pas partie d'un paquetage sont externes au système ou sous- système considéré

75 Formation Industrialisation TS France Title Exercice - suite : modélisation dun téléphone portable Notre fabricant souhaite maintenant convertir le texte suivant en diagramme de cas dutilisation. La principale utilisation du téléphone portable est la communication via le réseau GSM. Cette communication sobtient en composant un numéro. Il est possible de stocker ce numéro dans le répertoire et de consulter la liste des derniers appels. La sonnerie peut être paramétrée par lutilisateur.

76 Formation Industrialisation TS France Title Validation des spécifications En interne : Établir une matrice de traçabilité par rapport aux exigences fonctionnelles du cahier des charges Contrôler la complétude de cette matrice. En externe : Les dossiers décrivant les interfaces du système sont-ils corrects? Comportent- ils toutes les interactions? Les maquette des interfaces IHM sont-elle satisfaisantes? Les acteurs sont-ils tous représentés ? Lutilisateur est-il satisfait des séquences présentées ? Y a-t-il des cas dutilisation manquants ? Les cas présentés font-ils tous partie du système ? Les liens sont-ils tous représentés ? Est ce quil en manque ?

77 Formation Industrialisation TS France Title Exercice : Trouvez les acteurs Le système à construire est souligné. Mais quels sont ses acteurs? Notre système de camion à pizza vend des pizzas à des consommateurs en utilisant des produits qui sont achetés chez un grossiste. Il vend aussi du vin italien acheté chez un producteur Le distributeur automatique de billets est alimenté régulièrement par la société lécureuil afin de distribuer des billets à ses clients Nous devons construire un standard téléphonique automatique qui réagit aux appelants La station service distribue à ses clients les carburants qui lui ont été livrés. Elle fournit tous les trimestres un relevé de ses ventes. Je suis caché

78 Formation Industrialisation TS France Title Détermination de la robustesse du système : les scénarii Ne font pas partie d'UML. Ils alimentent les descriptions dynamiques du système (diagrammes dintéraction UML) les scénarii de test Toute relation de communication entre acteur et UC doit être interprétée comme représentant TOUS les dialogues possibles et imaginables entre lacteur et lUC considérés Il faut donc identifier la relation (par exemple lui donner un numéro) identifier tous les événements possibles au sein de ce dialogue associer à chaque événement un scénario distinguer les scénarios nominaux (ce qui est attendu) des scénarios non nominaux (ce qui peut arriver et peut poser problème) montrer que les cas nominaux et les cas non nominaux partitionnent l'espace des cas possibles En pratique un scénario est représenté par un contexte (les hypothèses) une séquence de triplets : date, événement, action (ou réaction ou traitement) du récepteur du signal Important il faut énumérer tous les scénarios et les décrire par une phrase discriminante et très courte inutile de décrire complètement les scénarios

79 Formation Industrialisation TS France Title Diagrammes de séquences – les Concepts Sens de lecture vertical : représente la ligne de vie des objets et les périodes d'activité des objets horizontal : représente l'enchaînement des stimuli entre 1 objet émetteur et 1 ou plus objet(s) récepteur(s), i.e. les flots de contrôle (séquence, répétition, alternative) Objet Stimulus Fragments combinés Contraintes temporelles

80 Formation Industrialisation TS France Title Diagramme de séquence : vue globale

81 Formation Industrialisation TS France Title Les objets et les exécutions Stéréotype nomObjet : Type Rôle définit un des objets manipulés par le système. un objet peut être anonyme (sans nom). Il représente alors un instance arbitraire de la classe. La ligne pointillée détermine la durée de vie de lobjet Il est possible dindiquer la création dun objet en faisant arriver un message sur le rectangle décrivant lobjet Une exécution est matérialisée par un rectangle sur la ligne de vie. Cest la durée où lobjet est actif (le système est occupé par le traitement de cet objet). Les rectangles peuvent être empilés pour indiquer la récursivité des traitements Règle de V&V lobjet doit être contenu dans le système le contexte de lobjet (la valeur des attributs) doit être défini si il a un impact sur la réaction de lobjet dans le diagramme de séquence

82 Formation Industrialisation TS France Title Les messages Stéréotype Une flèche matérialise o un message synchrone o un message asynchrone o un flux de contrôle (réponse) Rôle le message indique un transfert de contrôle ou dinformation entre deux objets. un message peut renvoyer sur lobjet qui la généré (cas de lappel interne dune des méthodes de lobjet). Eviter les messages vers des acteurs car ils nont pas de sens lors des phases de codage Règle de V&V pas dexécution sans message un message doit être nommé lorsque lémetteur envoie un message, il doit attendre son la réponse : la durée de lexécution de lémetteur est supérieure à celle du récepteur

83 Formation Industrialisation TS France Title Les fragments combinés Stéréotype opt, break, loop, par, alt, neg, seq, strict, critical Rôle Indique une rupture dans le déroulement temporel séquentiel du diagramme de séquence Eviter lutilisation des concepts UML 2.0 suivants : Par (parallèlisation), Alt (alternative), Neg (négative), Seq (weak sequencing), Strict (strict sequencing), Critical (séquence critique), On retiendra par contre : le concept dOpt (option), de Break et éventuellement de Loop (boucle)

84 Formation Industrialisation TS France Title Contraintes temporelles Syntaxe : Flèche oblique vers le bas Rôle : traduit le fait que la transmission du contrôle et des données prend un certain temps Une contrainte temporelle peut s'exprimer o sur une durée d'activation par une annotation ou un texte entre { } o sur les instants d'émission/réception de messages, par une annotation ou un texte entre { } o Sur les différences entre temps, i.e. instants d'émission/réception de messages Règle de V&V les messages ne pointent jamais vers le haut NB : une contrainte temporelle est toujours une expression relationnelle !

85 Formation Industrialisation TS France Title Contraintes temporelles : exemple

86 Formation Industrialisation TS France Title Un objet Un message Temps Ligne de vie de lobjet Un acteur Exercice : que montre ce diagramme de séquence?

87 Formation Industrialisation TS France Title Diagrammes de séquence : validation dun cas dutilisation

88 Formation Industrialisation TS France Title Diagrammes de séquence : validation dun cas dutilisation Mise en pratique

89 Formation Industrialisation TS France Title Exercice : modélisation dun téléphone portable Cette fois votre client souhaite que vous lui modélisiez la spécification dappel en utilisant le répertoire : Le téléphone comporte deux modules. Un pour lappel et un pour la gestion du répertoire. Lutilisateur commence par accéder au répertoire et sélectionne la fiche dun de ses correspondants. Il déclenche alors lappel. Si la fiche comporte plusieurs numéros un menu lui propose de choisir le numéro à appeler. Ceci fait, le module dappel est mis en œuvre pour effectuer la communication.

90 Formation Industrialisation TS France Title Les diagrammes de communication : vue globale Ce sont des diagrammes équivalents aux diagrammes de séquence, mais avec une vue différente (vue du dessus) 1 2

91 Formation Industrialisation TS France Title Diagrammes de séquence : utilisation Décrire la réalisation des cas dutilisation à travers des diagrammes de séquence: En phase danalyse métier: Un diagramme montrant lexécution de base de chaque séquence du cas dutilisation Un ou plusieurs diagrammes pour modéliser les exécutions alternatives du cas dutilisation Un ou plusieurs diagrammes pour modéliser les exécutions exceptionnelles ou optionnelles du cas dutilisation Les messages sont des opérations sur les objets cibles

92 Formation Industrialisation TS France Title Importance des diagrammes d'interaction Essentiel : un scénario = un diagramme de séquence ou un descriptif textuel détaillé un scénario = 1 et 1 seule suite d'actions (seule la séquence est autorisée) les scénarii doivent décrire TOUS les cas de traitements de TOUS les événements possibles on détermine ainsi la robustesse du système Diagrammes de séquence identification des objets, et donc des classes potentielles identification des échanges entre objets, issus des scénarios Diagrammes de communication identification des responsabilités identification des rôles

93 Formation Industrialisation TS France Title Les diagrammes de classe Un élément essentiel (mais ce n'est pas le seul) de l'approche orientée-objet Expriment l'aspect structurel/statique d'un système en termes de classes relations Offrent également les interfaces - comment on voit/utilise le système modélisé les paquetages - comment on peut abstraire le système en (macro) composants

94 Formation Industrialisation TS France Title Diagramme de classe : vue globale

95 Formation Industrialisation TS France Title Les classes Une classe = abstraction pour un ensemble d'objets ayant le même état, offrant le même comportement et ayant les mêmes liens avec d'autres objets UML offre aussi différents types de classes, proches de limplémentation les classes énumération les métaclasses les processus ou les threads, … NB : une classe doit être spécifiée à au moins 2 niveaux niveau application : classe métier ou classe d'analyse niveau implémentation : o traduction informatique d'une classe métier (le mapping peut être 1-1) o insertion de classes dédiées (par ex. les conteneurs) assurant les performances ou l'indépendance

96 Formation Industrialisation TS France Title Représentation d'une classe 1 à 4 champs : nom de la classe : obligatoire 0 ou n attributs 0 ou n opérations 0 ou n invariants de classe, exceptions, … Présence de stéréotype > : implicite > > : ne devrait pas apparaître ! …. NB : l'outillage actuel ne permet pas toujours de respecter UML 2.0 ! Le 4e champ nest pas directement représentable

97 Formation Industrialisation TS France Title Les attributs Stéréotype aucun Rôle sémantique : constitue un élément de l'état de l'objet visualisé ou pas, selon le niveau de détail souhaité … : liste d'attributs incomplète syntaxe : Visibilité Id [Multiplicité] : Type [InitVal] [{Propriété}] Visibilité = type d'accessibilité o + : public - visible et modifiable par tout objet du même paquetage o - : private - seulement visible et modifiable par les opérations de l'objet auquel il appartient. o # : protected - seulement accessible et modifiable par les opérations des classes descendantes Multiplicité : intervalle ou nombre o Propriété : par ex. mutabilité i.e. gelé, variable, ajoutUniquement Règle de V&V le principe de masquage impose de rendre chaque attribut private pas d'attribut redondant autre que les attributs dérivés NB : Attribut dérivé : attribut qui peut être déduit par le calcul (/Attribut) et qui conduit en implémentation à une opération

98 Formation Industrialisation TS France Title Stéréotype aucun a priori >,... existent ! Rôle représente un service spécifique offert par un objet ; peut être considérée comme une fonction au sens mathématique du terme => recopie des paramètres et renvoi d'un résultat et d'un seul ! Syntaxe : Visibilité Id ( [Args] ) : Type [{Propriété}] o Visibilité : +, -, # o Args : Direction Id : Type [= DefaultVal] o Direction : in, out, inout (in est la valeur par défaut) o Propriété : requête, concurrence, abstrait, estFeuille, estRacine Règle de V&V sémantique d'une fonction, i.e. correspond à un traitement un seul résultat (contradiction apparente entre in et type retourné par une opération) NB : au niveau métier on ne doit jamais représenter les opérations de création et de suppression Les opérations

99 Formation Industrialisation TS France Title Identification des classes, attributs et opérations C'est lors de la construction des diagrammes d'interaction (séquences et/ou collaboration) que les objets réels sont identifiés Ils sont transformés en classes s'il y a des messages échangés sinon en attribut Les opérations des classes correspondent aux messages échangés entre objets réels Règle de V&V il est essentiel de vérifier que tout classe possède des attributs et/ou des opérations. Dans le cas contraire, il ne sagit vraisemblablement pas dune classe mais dun attribut dune classe de plus haut niveau. Sachez ne pas aller trop loin dans le raffinement. NB : si ce n'est pas le cas, il faut impérativement justifier pourquoi !

100 Formation Industrialisation TS France Title Les classes Interfaces Stéréotype > Rôle décrit le comportement visible de certaines classes représentée par un rond rattaché à une classe ne figurent que des opérations publiques pas d'attribut Règle de V&V s'agit-il bien d'une interface physique ? NB : penser à la notion de menu et sous-menu pour la notion de classe interface une classe interface peut être la réalisation de plusieurs classes

101 Formation Industrialisation TS France Title Classes paramétrables, classes utilitaires Classe paramétrable = classe générique représentée par un classe traditionnelle avec un rectangle à traits tiretés dans la coin droit supérieur les paramètres de généricité sont identifiés dans le rectangle à traits tiretés classe sans instance classe surtout utilisée en implémentation une classe instance est liée à une classe paramétrique par une flèche tiretée Classe utilitaire = représente des bibliothèques joue un rôle d'élément global contenant des opérations et/ou des attributs présence du stéréotype >

102 Formation Industrialisation TS France Title Les relations Elles sont de 3 types et traduisent : la notion d'assemblage/composition le concept de spécialisation/généralisation l'association entre une (réflexivité) ou plusieurs classes Elles représentent des liens statiques/structurels entre objets et à longue durée de vie NB : les associations ne sont en général pas directement supportées par les langages de programmation orienté-objet.

103 Formation Industrialisation TS France Title Agrégation/composition Relation non symétrique Une extrémité supporte la notion de responsabilité : toute opération/attribut du responsable peut se propager aux éléments contraints il y a subordination Agrégat/agrégé : durée de vie des agrégés indépendante de l'agrégat Composite/composant : durée de vie des composants dépendante du composite/conteneur - on parle d'embarquement

104 Formation Industrialisation TS France Title Généralisation/spécialisation Relation de classification entre un élément plus général et des éléments spécialisés L'élément spécialisé hérite des attributs et des opérations et des relations et des contraintes de l'élément dont il est la spécialisation L'élément spécialisé peut avoir ses propres attributs, opérations, relations Spécialisation simple ou multiple B hérite de A si dans tout contexte ou lon utilise A on peut remplacer A par B Attention si le périmètre du logiciel change, les contextes sont augmentés, et la règle de remplacement peut ne plus être vérifiée

105 Formation Industrialisation TS France Title navalaérien moyen de transport Attention: Lhéritage multiple est rarement nécessaire en phase danalyse. Certains langages ne le supporte pas (Java). Lhéritage multiple – à éviter Une classe peut avoir plus dune classe mère. Plusieurs parcours dhéritage sont alors possibles. Lobjectif est de fusionner en une nouvelle classe, et éventuellement les y spécialiser, des comportements appartenant normalement à des classes différentes. Lintérêt est de pouvoir fusionner des ascendants directs dimportance voisine ou dajouter à une classe dautres fonctionnalités. hydravion

106 Formation Industrialisation TS France Title Lhéritage: règle de modélisation Il nest pas souhaitable de se focaliser sur les relations dhéritage trop vite Lhéritage est une notion très structurante dans un modèle objet. Elle fige la structure sémantique des types dobjet. Lajout dune nouvelle classe est obligatoirement influencé par les relations dhéritages existantes. Il faut rester ouvert le plus longtemps possible. Cest uniquement quand on estime que toutes les classes du domaine fonctionnel ont été identifiées que lon peut commencer à réfléchir sur les abstractions du système et ainsi construire les premières classes abstraites.

107 Formation Industrialisation TS France Title Diagrammes de classes lors des phases danalyse En phase d'analyse métier, seules des classes métier doivent être identifiées (opérations métier, attributs métier et associations métier). La recherche de classes, attributs, opérations et associations est guidée par la réponse au besoin : expliciter les diagrammes de séquence correspondant aux cas d'utilisation recensés Les paquetages permettent d'organiser l'analyse en domaines métier. La notion de visibilité est absente: en analyse, toutes les propriétés sont publiques (potentiellement visibles par l'utilisateur du système). La notion d'interface est absente (utilisées en architecture et conception uniquement).

108 Formation Industrialisation TS France Title Associations et classe association Représente une propriété statique (se convaincre avec un diagramme d'instances) Lie une ou plusieurs classes : arité 2 ou plus Toute association doit être nommée par un verbe d'état ou comporter des rôles aux extrémités Toute association peut être navigable Multiplicité : N M..N *, 0..* 1..*

109 Formation Industrialisation TS France Title Remarques sur les Associations Ne prendre en compte que des associations binaires ! Si ce n'est pas possible, il faut privilégier les classes associations Le nommage est indispensable quand il y a plusieurs associations entre 2 classes. Ne s'agit-il pas d'un agrégat ? Importance des contraintes ! Sous-ensemble, et/ou, etc. {ordonné},... Attention à ne prendre pour associations que des relations dont le libellé représente un verbe d'état

110 Formation Industrialisation TS France Title Trouver, parmi les phrases suivantes, celles qui décrivent des messages échangés et celles qui décrivent des associations entre des classes : Assoc. Mess. Le livre est composé de pages La carte grise correspond à une voiture Le serveur envoie un mail dalarme Le feu rouge est équipé dune boucle de détection dans la chaussée qui est activée par les voitures Jachète et je bois un café à la machine à café Lauteur écrit des livres Le client retire de largent Mr X dirige ces personnes Exercice : Ne pas confondre associations et messages

111 Formation Industrialisation TS France Title Trouver, parmi les phrases suivantes, celles qui décrivent des messages échangés et celles qui décrivent des associations entre des classes : Assoc. Mess. Le livre est composé de pages La carte grise correspond à une voiture Le serveur envoie un mail dalarme Le feu rouge est équipé dune boucle de détection dans la chaussée qui est activée par les voitures Jachète et je bois un café à la machine à café Lauteur écrit des livres Le client retire de largent Mr X dirige ces personnes Dépend du contexte MOA Exercice : Ne pas confondre associations et messages

112 Formation Industrialisation TS France Title Commentaires, notes et dépendances Commentaires et notes utilisation d'annotation peut être attachée à tout élément UML une note, comme dans l'exemple permet d'introduire des propriétés, des contraintes, etc. Dépendance relation qui traduit que le changement d'un élément quelconque a un impact sur un autre élément

113 Formation Industrialisation TS France Title Exercice : modélisation dun téléphone portable Le client désire comprendre comment les éléments de votre système vont être connectés. Vous décidez donc de traduire le cahier des charges suivant en diagramme de classes : Le système du téléphone comporte un gestionnaire de fonctions. Cest lui qui contient les différentes fonctions ( contrôleur dappels, répertoire, éditeur SMS et calculatrice) et assure la navigation dans les menus. Les différentes fonctions offrent un comportement identique. Le répertoire contient des fiches contact comportant un nom et un numéro de téléphone. Il est possible den stocker 200 dans la carte mémoire. Léditeur SMS contient des SMS formalisés par un numéro de téléphone et un texte. Le contrôleur dappel stocke les appels émis et reçus sous forme dune date dappel et dun numéro.

114 Formation Industrialisation TS France Title Diagramme détat-transition : vue globale

115 Formation Industrialisation TS France Title Les diagrammes détats-transitions Un diagramme détats-transition = représentation dun automate : tout objet ou tout système possède un état à chaque instant Un diagramme détats-transition permet de représenter le comportement nominal ET non nominal de toute instance dune classe Un diagramme détats-transition devrait permettre également de représenter le comportement global dune application orientée objet : enchaînement des commandes ! Mais trop souvent le nombre détats est trop grand pour être représenté !

116 Formation Industrialisation TS France Title Diagrammes détats-transition : les concepts Etat à tout instant un état représente lensemble des valeurs des attributs et des liens avec les autres objets un état est caractérisé par une durée, i.e. une certaine stabilité dans le temps Transition connexion unidirectionnelle reliant 2 états assure le passage dun état à lautre est supposée instantanée une transition peut être réflexive Evénement occurrence de quelque chose qui arrive à un instant inconnu ou connu (interruption, envoi de message, …) peut être porteur dinformations doit avoir été prévu par la conception lévénement est le déclencheur dune transition

117 Formation Industrialisation TS France Title Etat Un état est toujours nommé Il comporte : des actions dentrée des actions de sortie des activités des inclusions de sous-états Etats particuliers : état initial (forcément unique) état final (0, 1 ou plusieurs)

118 Formation Industrialisation TS France Title Les transitions Une transition est une relation entre un état source et un état cible. Une transition est déclenchée par un objet en réaction à un événement et conduit à un changement détat. Syntaxe : évènement[garde]/action Les éléments suivants sont tous facultatifs : évènement (trigger) : événement externe déclenchant une réaction du système garde (guard) : expression logique qui conditionne le départ dun état action : action exécutée lors du franchissement de la transition

119 Formation Industrialisation TS France Title Evénement Il traduit larrivée de quelque chose Types dévénement : > : signal asynchrone >, >, … : appel > : signal synchrone - fin de délai, top horloge, … événement instantané : pas de label - correspond à la fin de lactivité dans létat de départ Sémantique des événements : à l'arrivée d'un événement prévu, on quitte l'état, que l'activité soit achevée ou pas

120 Formation Industrialisation TS France Title Compléments sur les diagrammes détats-transitions La maîtrise de la complexité des diagrammes états-transitions passe par lutilisation détats composite (état englobant) Les sous-états concurrents permettent de représenter la notion de concurrence Les états historiques permettent de conserver lhistorique en tant quétats, et donc dy revenir

121 Formation Industrialisation TS France Title Concurrence pour les diagrammes états-transitions

122 Formation Industrialisation TS France Title Exercice : modélisation dun téléphone portable Une partie du cahier des charge du téléphone portable est compliquée et gagnerait à être traduite en diagramme détat transition : Pour utiliser le téléphone il faut passer du mode veille au mode actif en cliquant sur le bouton on. Le mode appel permet de communiquer vocalement. On y accède en composant un numéro de téléphone et on le quitte en appuyant sur le bouton de fin de communication. On peut passer en mode gestion des SMS en appuyant sur la flèche gauche. Et on le quitte en appuyant sur Ok. Si un appel survient durant lécriture dun SMS le SMS est stocké et le téléphone passe en mode appel. De plus le téléphone interroge en permanence le réseau afin de déterminer si il doit émettre avec une puissance de signal forte ou faible.

123 Formation Industrialisation TS France Title Diagramme global dintéraction

124 Formation Industrialisation TS France Title Diagramme de composants Traduit laspect implémentation en proposant une structure en composants et paquetages Les composants représentent les éléments de conception réutilisables : ils contiennent des classes ils présentent des interfaces et leurs interdépendances Propriétés importantes au sein dun composant couplage fort entre composants, couplage lâche Paquetage = ensemble de composants

125 Formation Industrialisation TS France Title Exemples de composants et de paquetages

126 Formation Industrialisation TS France Title Règles de nommage Objectifs : homogénéiser les informations pour faciliter la lecture la traçabilité vers la conception détaillée et le codage Unicité : Les noms de domaines, de packages et sous-packages doivent être uniques à léchelle du progiciel pour être réutilisables. Caractères : Les noms du modèle sont formés dalternances majuscules/minuscules. Les caractères accentués ne doivent pas être utilisés. Les autres caractères (espaces, ponctuation…) sont à éviter mais les chiffres peuvent être utilisés. Nommage des domaines : Les domaines, packages et sous-packages métier sont utilisés en phase de définition des exigences, en phase danalyse et en phase de conception détaillée. Pour éviter les collisions de nom ces concepts seront préfixés de la façon suivante : BR (Business Requirement) en phase de recueil des besoins. BRCommunication par exemple. BM (Business Model) en phase danalyse. BMCommunication par exemple. Pas de préfixe en phase de conception technique (Technical Model), afin de faciliter la traçabilité ou la génération de code associée à la modélisation Nommage des classes : Les classes métier sont nommées par leur nom métier naturel, de même que leurs attributs, opérations, associations. Une classe commence par une majuscule. Les autres concepts commencent par des minuscules. Lorsque le nom est composé de plusieurs mots, les mots suivants commencent par des majuscules. Nommage des règles de gestion : Les règles de gestion définies à léchelle dun domaine, package ou sous-package seront codifiées de la façon suivante : [_ [_ ]]_

127 Formation Industrialisation TS France Title Exercice : le jeu des 7 erreurs

128 Formation Industrialisation TS France Title Exercice : le jeu des 7 erreurs - Solution BRGarage

129 Formation Industrialisation TS France Title Synthèse Définir les paquetages des domaines fonctionnels. Définir les scénarii des fonctionnalités du système Documenter tous ces éléments à chaque étape. Ajuster les liens dhéritage au fur et à mesure. Vérifier la complétude par des diagrammes de séquence mettant en jeu les objets métier. Spécifier les classes, attributs, associations, opérations réalisant les cas dutilisation. Définir la composante temporelle des objets métier par des diagrammes détat. Vérifier les dépendances entre classes et les dépendances induites entre paquetages. Éliminer les dépendances croisées. Ajuster le modèle et itérer.

130 Formation Industrialisation TS France Title Vue densemble Le génie logiciel Recueil des besoins Analyse Compléments Synthèse Sommaire

131 Formation Industrialisation TS France Title Le dossier de validation Constitué de cas de test structurés autour de : Un contexte de fonctionnement / des pré requis Des données de test (ou jeu de test) Des scénarii de test découpé en pas de test Des résultats attendus Loutil à utiliser pour réaliser ce dossier est Test Director de HP / Mercury : Pour approfondir les sujets liés aux tests de validation, reportez vous aux formations : Les Tests – Management : outil et process Tests de Validation et Tests de Non-régression : outils & process

132 Formation Industrialisation TS France Title Relations entre spécifications et tests La spécification sert de base aux tests de validation 1.Lors de la phase de recueil des besoins, étudier la nécessité de disposer dun simulateur/bouchon pour chaque association entre le système et un acteur non humain. 2.Rédiger le dossier de test : 1.Inscrire dans le cas de test la référence de lexigence à laquelle il correspond. 2.Rédiger un cas de test pour chaque diagramme de séquence ou dactivité. Ces cas de test sont identifiés avec une criticité maximale. Règle : un pas de test pour chaque message du diagramme de séquence. 3.Rédiger un cas de test pour chaque scénario identifié lors des phases de spécification. La criticité du cas de test sera évaluée en fonction de limportance de la fonctionnalité et de la probabilité dapparition du scénario 4.Réclamer les jeux de test au client et/ou les construire à partir des paramètres définis dans les scénarii. 5.Faire évoluer les cas de test en ajoutant les résultats attendus. 6.Etablir le contexte de passage du cas de test.

133 Formation Industrialisation TS France Title La modélisation et les livrables Le livrable correspond à une extraction du modèle. Donc tout doit être répertorié dans le modèle UML. En pratique Spécifications générales, préliminaires o Vision et vue métier o Cas dutilisation essentiels o Quelques diagrammes de séquence Spécifications détaillées o Cas dutilisation réels o Besoins dexploitation o Besoins opérationnels induits o Diagrammes de séquence o Modèle objet du domaine Parfois séparation o Spécifications fonctionnelles o Spécifications techniques Mise en pratique : Outils/Report Wizard

134 Formation Industrialisation TS France Title Modèles de documents Modèles Capgemini adaptés à une traçabilité Reqtify (nommés Req_xxx) Dossier de spécifications (DS) Dossier darchitecture (DAR) Dossier de conception (DC) Dossier de tests (DT) Accessibles sur https://coconet.capgemini.com/sf/linkedapplication/do/viewLinkedApplication/proje cts.fr_south_capgemini_industrializa/linkedApplication/lapp1843/docf dans le processus « définir les spécifications fonctionnelles et l'architecture »https://coconet.capgemini.com/sf/linkedapplication/do/viewLinkedApplication/proje cts.fr_south_capgemini_industrializa/linkedApplication/lapp1843/docf (login f_indus_1 mot de passe F_indus_1)

135 Formation Industrialisation TS France Title Aperçu de MDA : Transformation de modèles Ensemble de normes, de standards développés par lOMG en 2001 étend celui de lUML(Unified Modeling Language). Utilisation systématique de modèles Permet le passage du PIM (Platform Independant Model) au PSM (Platform Specific Model). Procédé qui permet de convertir dun modèle à un autre modèle du même système à implémenter. Conversion de manière automatisée avec des outils comme: ATL(Atlas Transformation Language) VIATRA(VIsual Automated model TRAnsformations) Passage du PSM au code : suite logique de MDA au moyen doutils tels quAcceleo, androMDA, MIA…

136 Formation Industrialisation TS France Title Aperçu de MDA : lingénierie des modèles le concept « tout objet » vs le concept « tout modèle ». « remplacer la composition dobjet par la notion de transformation de modèle » Standard MDA: faciliter la production de modèles. Exemple de processus de transformation de modèles: Pour approfondir les sujets liés à MDA, reportez vous à la formation : MDA

137 Formation Industrialisation TS France Title Lévolution du travail de conception avec UML Lexplorateur, la carte routière et le GPS : Avant – lépoque de lexplorateur (lexpert) passe beaucoup de temps à essayer toutes les routes finit par connaître le coin comme sa poche mais il est perdu lorsquil doit saventurer ailleurs na pas peur de sortir des sentiers battus Maintenant – lépoque de la carte routière (le concepteur) donne un vision densemble (pas de détails sur les feux rouges) permet de se repérer sur de très longues distances Bientôt – lépoque du GPS (le composant) s'occupe de tout lutilisateur devient incapable de savoir où on est, où il va impossible de juger de la qualité du trajet, de trouver une solution alternative si le système tombe en panne

138 Formation Industrialisation TS France Title Fonctions avancées de MagicDraw XMLJavaC++SQLC#

139 Formation Industrialisation TS France Title Vue densemble Le génie logiciel Recueil des besoins Analyse Compléments Synthèse Sommaire

140 Formation Industrialisation TS France Title A RETENIR Le use case sert de pivot à toute la conception. Un outil de modélisation est indispensable pour manipuler et stocker le référentiel des objets du modèle La traçabilité se fait sur l'ID de référence du use case (numéro dans le use case ou nom du use case). La bonne granularité est obtenue lorsque l'on peut écrire un scénario fonctionnel nominal pour le use case. Un use case = 4 ou 5 scénarii de test (nominaux et non nominaux). Au delà le use case est trop compliqué et doit être découpé. Penser à appliquer des CRUD lorsque possible (ou des CUD avec le R ailleurs). Créer un glossaire métier avec des liens hypertexte des concepts UML vers ce glossaire Il ny a pas de correspondance 1 à 1 entre une classe métier et une classe du modèle de base de données. En effet, pour des raisons de performances ou de choix dimplémentation, une classe métier peut être transformée en plusieurs tables ou même plusieurs classes métiers peuvent être transformées en une seule table.

141 Formation Industrialisation TS France Title Quiz – Quel est le terme utilisé pour décrire une exécution conditionnelle dans un diagramme de séquence : ? alt critical opt ref

142 Formation Industrialisation TS France Title Quiz – Quest-ce quune relation? ? Un élément avec au moins un élément relié Un élément qui connecte deux éléments Un élément qui connecte au moins deux éléments

143 Formation Industrialisation TS France Title ? indéfini Quiz – Combien de transitions peuvent partir dun état initial :

144 Formation Industrialisation TS France Title ? Quiz – Quel diagramme de séquence est invalide si il provient du même modèle que le diagramme dactivité :

145 Formation Industrialisation TS France Title ? Un objet est une instance de classe Une classe est une collection dobjets semblables Un objet est une entité aux frontières bien définies, possédant une identité Une classe est un descripteur d'objets similaires Quiz – Quelle affirmation est fausse :

146 Formation Industrialisation TS France Title ? Quiz – Quelles séquences dévènements (à partir de létat initial) conduisent à un blocage du système : b a e a a e f a e b

147 Formation Industrialisation TS France Title ? Quiz – Lextension dun cas dutilisation UC1 par un autre cas dutilisation UC2 (avec un lien extend dUC2 vers UC1) : UC2 enrichit UC1 sans le modifier Modifie UC2 en lui ajoutant du comportement Décrit une généralisation de UC1 vers UC2

148 Formation Industrialisation TS France Title ? Quiz – Combien de diagrammes composent UML 2.0 :

149 Formation Industrialisation TS France Title ? Attribut Port Multiplicité Rôle Quiz – Le nom dune extrémité dassociation sappelle :

150 Formation Industrialisation TS France Title Références documentaires UML 2 en action De l'analyse des besoins à la conception Pascal Roques, Franck Vallée Eyrolles 2007 Guide pratique du RUP Philippe Kruchten et Per Kroll CampusPress 2003 Introduction au Rational Unified Process Philippe Kruchten Eyrolles 2000 Modélisation objet avec UML Pierre-Alain Muller, Nathalie Gaertner Eyrolles 2000 The Unified Modeling Language Reference Manual James Rumbaugh, Ivar Jacobson, Grady Booch Addison-Wesley 1999 Design Patterns: Elements of reusable object-oriented software E.Gamma & al. Addison-Wesley 1995 Exercices corrigés dUML : Génie logiciel Pascal André, Alain Vailly Ellipses, 2003

151 Formation Industrialisation TS France Title Liens Lien vers le wiki A&D : Wi Lien vers CTF Indus A&D, Modélisation et Magic Draw : https://coconet2.capgemini.com/sf/docman/do/listDocuments/projects.fr_sout h_capgemini_industrializa/docman.root.03_poles.03_pole_cqp.docf

152 Formation Industrialisation AS France Title VersionDateAuteurRésumé et raisons des modifications 1.0 Octobre 2011 O.Carton P. Blanc Version initiale 1.1Dec 2011A.PiccardiSuppression des services Indus Si vous avez des questions concernant ce document, Merci de contacter le(s) auteur(s) du document Suivi des modifications 152 FOR INTERNAL USE ONLY. © 2010 Capgemini. All rights reserved.

153 The information contained in this presentation is proprietary and confidential. It is for Capgemini use only. ©2010 Capgemini. All rights reserved Together. Free your energies The information contained in this presentation is proprietary and confidential. It is for Capgemini use only. ©2010 Capgemini. All rights reserved Together. Free your energies Fin Merci de votre attention !


Télécharger ppt "Formation Industrialisation AS France UML - Conception fonctionnelle."

Présentations similaires


Annonces Google