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

Département de génie logiciel et des TI Systèmes dinformation dans les entreprises Chargé: JF Couturier Cours # 5 MTI515 Automne 2013 JF Couturier 1.

Présentations similaires


Présentation au sujet: "Département de génie logiciel et des TI Systèmes dinformation dans les entreprises Chargé: JF Couturier Cours # 5 MTI515 Automne 2013 JF Couturier 1."— Transcription de la présentation:

1 Département de génie logiciel et des TI Systèmes dinformation dans les entreprises Chargé: JF Couturier Cours # 5 MTI515 Automne 2013 JF Couturier 1

2 Département de génie logiciel et des TI Retour sur le dernier cours Le diagramme des cas dutilisation Les cas dutilisation Le SRS Les cas de test Des questions? MTI515 Automne 2013 JF Couturier 2

3 Département de génie logiciel et des TI Quelques points importants Pourquoi faire le modèle du domaine avant les cas dutilisation? Plusieurs niveau de détails pour un cas dutilisation…essentiel, concret, etc Quest-ce qui est pratique pour un développeur? Nommer vos écrans MTI515 Automne 2013 JF Couturier 3

4 Département de génie logiciel et des TI Bilan Nous avons fait Le modèle des processus daffaires Le modèle du domaine et le glossaire Le modèle des cas dutilisation Nous détaillons toujours les exigences de notre système Abordons maintenant Le modèle danalyse du système MTI515 Automne 2013 JF Couturier 4

5 Département de génie logiciel et des TI Retour sur les CU 1 PMÉ = 1 CU Les CU et les acteurs 1 acteur principal 1 système 1 ou plusieurs acteurs secondaires Lorsquil y a plusieurs acteurs Visual Use Case? MTI515 Automne 2013 JF Couturier 5

6 Département de génie logiciel et des TI Petit croche par la droite Présentation du PDG du CRIMCRIM Sondages auprès des dirigeants de DMR, Odésia, Ville de Mtl, Dir. Informatique, Audisoft, etc. Tendances Mobilité, accessibilité, sécurité, web 2,3,4, cloud computing, virtualisation, gaming, logiciels libres, méthodes et standards, intégration…. MTI515 Automne 2013 JF Couturier 6 Yves Sanssouci, CRIM, 2009

7 Département de génie logiciel et des TI Qualités requises Savoir faire 1 langage de programmation Comprendre les idées, les concepts Moins besoin de programmeur, besoin dintégrateurs –Pourquoi selon vous? Sécurité Gestion du risque, MEHARI, ISO17799, ISO27001 Intégration MTI515 Automne 2013 JF Couturier 7 Yves Sanssouci, CRIM, 2009

8 Département de génie logiciel et des TI Qualités requises Savoir faire Méthodologies (CoBIT, ISO, CMMi, MEHARI) Veille État de lart, collecter et organiser linformation pertinente, suivre lévolution de son environnement, préparer linnovation Plateforme mobile Sondage PEW: en 2020, la plupart des gens vont accéder au Web via des mobiles Architectures distribuées MTI515 Automne 2013 JF Couturier 8 Yves Sanssouci, CRIM, 2009

9 Département de génie logiciel et des TI Qualités requises Autres Gestion de projet La notion de livrable Rédaction de rapport Concis, clair, direct Connaissance du marché …et de ses attentes Les autres cultures Les différences dans les interactions, face à lautorité, en équipe MTI515 Automne 2013 JF Couturier 9 Yves Sanssouci, CRIM, 2009

10 Département de génie logiciel et des TI Qualités requises Savoir être Attitude Positive bien sûr! Disposée à bien faire son travail, qui a le sens des responsabilités, proactif! Sens du client On travaille pour quelquun, adopter son point de vue, qui a des exigences particulières quil faut comprendre Le cœur à plus de mémoire que le portefeuille MTI515 Automne 2013 JF Couturier 10 Yves Sanssouci, CRIM, 2009

11 Département de génie logiciel et des TI Qualités requises Savoir être Rigueur et discipline Respect des échéances, des procédures, exactitude, ponctualité, adopter des méthodes de travail Esprit déquipe Complémentaires, capable de travailler ensemble MTI515 Automne 2013 JF Couturier 11

12 Département de génie logiciel et des TI Autres considérations Délocalisation / Offshoring Green IT Gouvernance Gouvernance des TI MTI515 Automne 2013 JF Couturier 12 Yves Sanssouci, CRIM, 2009

13 Département de génie logiciel et des TI Hype cycle de Gartner MTI515 Automne 2013 JF Couturier 13

14 Département de génie logiciel et des TI BABOK Business Analysis Body of Knowledge Ensemble des bonnes pratiques en analyse daffaires Certified Business Analysis Professional (CBAP) On y retrouve Diagramme dactivité (p192) Cas dutilisation et scénario (p204) DFD Prototypage (p196), interview, questionnaires, brainstorming Même le diagramme de séquence! (p208) Chapitre 6 de BABOK Analyse des exigences MTI515 Automne 2013 JF Couturier 14

15 Département de génie logiciel et des TI Exemple de stage à lACDI Tâches : 1. Travailler à un projet en tant que stagiaire sous la direction d'un analyste principal d'affaires. L'étudiant jouera un rôle clé dans la réalisation du projet. Les tâches pourraient amener l'étudiant à : a. Collaborer à la documentation des processus; b. Collaborer à la formulation et à la documentation des besoins; c. Assumer d'autres fonctions administratives telles que la préparation de présentations, de notes de service, de tables de calculs et de compte rendu de réunions. Connaissances constituant un atout : 1. Connaissance des techniques de modélisation de processus. 2. Connaissance de la modélisation de données et des capacités en matière d'UML (langage de modélisation unifié). 3. Connaissance de BABOK (Business Analysis Body of Knowledge) de l'IIBA (International Institute of Business Analysis). 4. Connaissance de base de la méthodologie RUP (Rational Unified Process) et des outils Rational. MTI515 Automne 2013 JF Couturier 15

16 Département de génie logiciel et des TI Plan du cours 5 Quiz 2 Les Patrons(Patterns) Architecture dapplication Stéréotype Modèle danalyse MTI515 Automne 2013 JF Couturier 16

17 Département de génie logiciel et des TI Plan du cours 5 Quiz 2 Les Patrons (Patterns) Architecture dapplication Modèle danalyse Stéréotype MTI515 Automne 2013 JF Couturier 17

18 Département de génie logiciel et des TI Les patrons Quest-ce quun patron? Cest la description dun problème, sa solution et les conséquences attendues. On retrouve 4 éléments: Le nom du patron Le problème à résoudre La solution La conséquence dappliquer le patron MTI515 Automne 2013 JF Couturier 18

19 Département de génie logiciel et des TI Les patrons Le nom du patron Cest une description sur sa conception, sa solution, mais de façon succincte (2-3 mots) Un nom significatif aide à cataloguer et retrouve le motif MTI515 Automne 2013 JF Couturier 19

20 Département de génie logiciel et des TI Les patrons Le problème à résoudre Décrit le problème dans son contexte Peut décrire des classes ou des structures dobjets qui sont symptomatiques du design Parfois une liste de conditions qui doivent être remplies avant dêtre appliqué est incluse MTI515 Automne 2013 JF Couturier 20

21 Département de génie logiciel et des TI Les patrons La conséquence dappliquer le patron La résultante et les compromis dappliquer la solution Parfois absent, mais important pour comprendre les bénéfices de son utilisation MTI515 Automne 2013 JF Couturier 21

22 Département de génie logiciel et des TI Exemples de patrons Architecturaux MVC, 3-Tiers Conception Adapter, Composite, Façade Application dentreprise (Fowler) Service Layer, Lazy load Les patrons GRASP (Larman) MTI515 Automne 2013 JF Couturier 22

23 Département de génie logiciel et des TI Ressources Les patrons de la gang des 4 (GoF) Les patrons dentreprise de Fowler Il y en a beaucoup dautres Il faut les connaître pour pouvoir les appliquer Il ne faut pas chercher à mettre des patrons partout, au risque de complexifier votre environnement MTI515 Automne 2013 JF Couturier 23

24 Département de génie logiciel et des TI Plan du cours 5 Quiz 2 Les motifs (Patterns) Architecture dapplication Modèle danalyse Stéréotype MTI515 Automne 2013 JF Couturier 24

25 Département de génie logiciel et des TI Architecture dapplication Le patron MVC Modèle Vue Contrôleur La patron 3 tiers Présentation Métier Base de données MTI515 Automne 2013 JF Couturier 25

26 Département de génie logiciel et des TI Dautres niveaux… MTI515 Automne 2013 JF Couturier 26 Dennis, Alan R., Barbara Haley Wixom, and David Tegarden. "Chapter 8 - Moving on to Design". Systems Analysis and Design with UML Version 2.0: An Object-Oriented Approach, Third Edition. John Wiley & Sons. © Books24x7. (accessed May 29, 2009)

27 Département de génie logiciel et des TI Architecture Pouvons-nous utiliser notre analyse et nos artéfacts et réduire lécart avec la conception? Pouvons-nous aider visuellement léquipe de développement logiciel à comprendre nos artéfacts? Pouvons-nous déjà séparer la présentation, la logique et le domaine? MTI515 Automne 2013 JF Couturier 27

28 Département de génie logiciel et des TI Plan du cours 5 Quiz 2 Les motifs (Patterns) Architecture dapplication Stéréotype Modèle danalyse MTI515 Automne 2013 JF Couturier 28

29 Département de génie logiciel et des TI Les stéréotypes Dans UML, les stéréotypes permettent détendre les éléments du modèle en y apportant une annotation particulière. On utilise généralement les « » pour encadrer les stéréotypes. Un stéréotype peut aussi être représenté sous la forme dune icône MTI515 Automne 2013 JF Couturier 29

30 Département de génie logiciel et des TI Exemples de stéréotypes MTI515 Automne 2013 JF Couturier 30

31 Département de génie logiciel et des TI Exemple avec la formation MTI515 Automne 2013 JF Couturier 31

32 Département de génie logiciel et des TI Exemple avec la formation MTI515 Automne 2013 JF Couturier 32

33 Département de génie logiciel et des TI Exemple avec la formation MTI515 Automne 2013 JF Couturier 33 UML2 par la pratique, Pascal Roques

34 Département de génie logiciel et des TI Plan du cours 5 Quiz 2 Architecture dapplication Couches de base Les motifs (Patterns) Stéréotype Modèle danalyse MTI515 Automne 2013 JF Couturier 34

35 Département de génie logiciel et des TI Question Vous êtes développeur Je vous donne les artéfacts que nous avons actuellement Comment débutez-vous votre travail de conception? Voyez-vous un écart entre lanalyse et la conception? Expliquez? MTI515 Automne 2013 JF Couturier 35

36 Département de génie logiciel et des TI Les classes danalyses Une des difficultés en conception est de passer des cas d'utilisation à la conception, ces deux représentations n'ayant que peu de choses en commun. Les classes d'analyse sont des objets fictifs capables de produire le comportement décrit dans les cas d'utilisation et qui sont « faciles » à transformer en classes de conception. Il s'agit de la première étape dans la transformation du système de la description des comportements vers la façon dont il doit fonctionner MTI515 Automne 2013 JF Couturier 36 Normand Rivard, GTI710, cours 3

37 Département de génie logiciel et des TI La transition MTI515 Automne 2013 JF Couturier 37

38 Département de génie logiciel et des TI Modèle d'analyse RUP Le modèle d'analyse dans RUP suit les étapes suivantes: Créer et décrire la réalisation du CU Trouver les classes d'analyse (Stéréotypes de Jacobson..on y arrive) Distribuer les comportements aux classes d'analyse Diagramme de robustesse pour certains MTI515 Automne 2013 JF Couturier 38

39 Département de génie logiciel et des TI Stéréotypes d'analyse en UML MTI515 Automne 2013 JF Couturier 39

40 Département de génie logiciel et des TI Les classes danalyses (1) Frontières - Boundary Représentent les points d'arrimage avec les acteurs. Dès qu'un acteur intervient dans le texte d'un cas d'utilisation (qu'il agisse ou qu'il subisse), un objet frontière est nécessaire. Objet à la frontière entre le système et un acteur. Écran. Contrôles - Control Représentent les traitements à faire avec les entités. Corresponds souvent aux verbes d'action dans le texte des cas d'utilisation. Objet assurant une coordination avec les autres objets. Entités - Entity Représentent des choses inertes. Corresponds souvent aux noms communs dans le texte des cas d'utilisation. Font référence à une donnée persistante. Correspond à vos entités dans votre modèle conceptuel/du domaine. MTI515 Automne 2013 JF Couturier 40 Normand Rivard, GTI710, cours 3

41 Département de génie logiciel et des TI Stéréotypes d'analyse (2) Frontière - Boundary une classe qui interagit en périphérie du système directement avec un acteur, mais aussi avec les classes 'control' et autres 'boundaries' (selon les auteurs). Contrôle - Control une classe qui gère dans le temps l'interaction entre une collection d'objets. Elle est généralement dédiée à un seul PMÉ. Et puisque généralement nous avons 1 PMÉ = 1 CU...il y a aura toujours minimalement 1 contrôle par CU. Espérons en avoir plus. Entité - Entity Une classe qui a une existence propre dans le domaine, mais qui est passive donc n'initie pas d'interaction avec le reste du système. Elle peut participer dans plusieurs PMÉ. MTI515 Automne 2013 JF Couturier 41

42 Département de génie logiciel et des TI Les classes danalyses Règles à respecter Les acteurs ne parlent quaux frontières. Les frontières parlent aux contrôles ou aux frontières (selon votre source…). Aux contrôles uniquement selon-moi... Les entités ne parlent à personne, mais répondent aux contrôles (selon vos sources). Les contrôles peuvent parler aux frontières, aux entités et à dautres contrôles, mais pas aux acteurs. MTI515 Automne 2013 JF Couturier 42 Inspiré de Normand Rivard, GTI710, cours 3

43 Département de génie logiciel et des TI Exemple MTI515 Automne 2013 JF Couturier 43 Normand Rivard, GTI710, cours 3

44 Département de génie logiciel et des TI Exemple selon RUP MTI515 Automne 2013 JF Couturier 44

45 Département de génie logiciel et des TI Trouver les objets entités Dans la description détaillée dun UC : lister les noms candidats : client, acheteur, employé, utilisateur, internaute catalogue, prospectus, article, item, … Éliminer les synonymes et les noms ambigus Choisir des noms clairs et consistants Conserver la terminologie du métier MTI515 Automne 2013 JF Couturier 45

46 Département de génie logiciel et des TI Trouver les objets frontière Le plus souvent objet dinterface utilisateur (UI) Interagit avec un acteur externe pour : recueillir des données présenter de linformation Doù lintérêt de nommer ses écrans dans le CU MTI515 Automne 2013 JF Couturier 46

47 Département de génie logiciel et des TI Trouver les objets contrôle Fournit un service spécifique à un objet frontière. Opération réalisé par le système. Implémente ce service en collaborant avec plusieurs objets entité Masque la complexité Minimalement 1 objet contrôle pour un cas dutilisation Mais généralement beaucoup plus si le traitement est décomposé MTI515 Automne 2013 JF Couturier 47

48 Département de génie logiciel et des TI Guide Ayez votre CU et votre modèle du domaine en main. Créer une frontière pour chaque écran utilisateur. Créer un contrôle pour chaque CU, puis pour chaque fonction logique logicielle (verbe, validation, règles daffaires) Ce diagramme représente une conception préliminaire, pas une conception détaillée. Les frontières et les entités vont devenir des objets alors que les contrôleurs vont généralement devenir les messages dans le diagramme de séquence…vous voyez où je veux en venir? Lobjectif ici est de raffiner ET vos cas dutilisation ET votre modèle dobjet MTI515 Automne 2013 JF Couturier 48 Use Case Driven Object Modeling with UML, Rosenberg D. Stephens M.

49 Département de génie logiciel et des TI Rappelez-vous que… Cest une bonne idée de comprendre les exigences avant de faire la conception… Mais quil est parfois impossible dappréhender toutes les exigences sans faire un peu de conception exploratoire… MTI515 Automne 2013 JF Couturier 49 Use Case Driven Object Modeling with UML, Rosenberg D. Stephens M.

50 Département de génie logiciel et des TI Exemple MTI515 Automne 2013 JF Couturier 50

51 Département de génie logiciel et des TI Étude de cas du garage Avez-vous la séquence des évènements? Oui, avec le diagramme dactivité et les cas dutilisation Avez-vous les entités Oui, avec le modèle du domaine et le diagramme dactivité si vous avez identifié les objets. Le glossaire. Avez-vous les interactions entre les utilisateurs et le système? Oui, avec les cas dutilisation Nous pouvons donc proposer une analyse avec les classes danalyse MTI515 Automne 2013 JF Couturier 51

52 Département de génie logiciel et des TI Étude de cas du garage MTI515 Automne 2013 JF Couturier 52 Diagramme dactivité

53 Département de génie logiciel et des TI Étude de cas du garage MTI515 Automne 2013 JF Couturier 53 Modèle du domaine

54 Département de génie logiciel et des TI Étude de cas du garage MTI515 Automne 2013 JF Couturier 54 Diagramme des CU

55 Département de génie logiciel et des TI Étude de cas du garage Cas dutilisation Prendre un rendez-vous 1.Le chef de service cherche une disponibilité de rendez-vous 2.Le système affiche le calendrier 3.Le chef de service sélectionne une date de rendez-vous. 4.Le système affiche une fiche de client. 5.Le chef de service complète le dossier client et confirme son choix. 6.Le système confirme le rendez-vous. La date et lheure sont maintenant indisponibles. 5.a Le client existe déjà 5.a.1 Le système avertit le chef de service 5.a.2 Le chef de service complète le dossier client Le scénario reprend à létape 6 MTI515 Automne 2013 JF Couturier 55

56 Département de génie logiciel et des TI Étude de cas du garage MTI515 Automne 2013 JF Couturier 56 Diagramme danalyse (Itération 1)

57 Département de génie logiciel et des TI Étude de cas du garage MTI515 Automne 2013 JF Couturier 57 Diagramme danalyse (Itération 2)

58 Département de génie logiciel et des TI Étude de cas du garage MTI515 Automne 2013 JF Couturier 58 Diagramme danalyse (Itération 3)

59 Département de génie logiciel et des TI Étude de cas du garage MTI515 Automne 2013 JF Couturier 59 Diagramme danalyse (Itération 4)

60 Département de génie logiciel et des TI Étude de cas du garage Cas dutilisation Prendre un rendez-vous 1.Le chef de service cherche une disponibilité de rendez-vous 2.Le système affiche le calendrier 3.Le chef de service sélectionne une date de rendez-vous. 4.Le système affiche une fiche de client. 5.Le chef de service complète le dossier client et confirme son choix. 6.Le système confirme le rendez-vous. 7.Le système met à jour le calendrier 5.a Le client existe déjà 5.a.1 Le système affiche le dossier client 5.a.2 Le chef de service complète le dossier client Le scénario reprend à létape 6 MTI515 Automne 2013 JF Couturier 60

61 Département de génie logiciel et des TI Étude de cas du login Tenter de faire le diagramme danalyse de ce cas. Un utilisateur entre son code et son mot de passe Le système authentifie lutilisateur dans lannuaire. Lannuaire récupère linformation du compte. Le système affiche la page de bienvenue MTI515 Automne 2013 JF Couturier 61

62 Département de génie logiciel et des TI Première itération MTI515 Automne 2013 JF Couturier 62

63 Département de génie logiciel et des TI Seconde itération MTI515 Automne 2013 JF Couturier 63 Attention - erreur

64 Département de génie logiciel et des TI Et après Le diagramme de séquence Transformer les frontières et les entités en instance dobjet Transformer les contrôleurs en messages Et nous nous retrouvons avec les premières briques de conceptions MTI515 Automne 2013 JF Couturier 64

65 Département de génie logiciel et des TI Diagramme de séquence MTI515 Automne 2013 JF Couturier 65

66 Département de génie logiciel et des TI Le diagramme de classe Les contrôleurs sont des opérations pour les classes identifiés dans le modèle du domaine On quitte le modèle du domaine et on construit maintenant un modèle de classe de conception.. MTI515 Automne 2013 JF Couturier 66

67 Département de génie logiciel et des TI Diagramme de classe MTI515 Automne 2013 JF Couturier 67

68 Département de génie logiciel et des TI Ensuite Selon leur expérience et leur habileté, le diagramme de robustesse est généralement le dernier moment où vos clients peuvent participer activement à lexplicitation des exigences Au-delà, cest la conception du code, par les développeurs. Vos clients continueront à donner du feedback sur les livrables (prototypes, interfaces) MTI515 Automne 2013 JF Couturier 68

69 Département de génie logiciel et des TI Lien avec Larman Larman propose de passer directement au diagramme de séquence système (SSD) cf chapitre 10 du livre de Larman Intéressant, sauf quà cette étape, nous voyons toujours le système comme une boîte noire… Nous sommes toujours dans les exigences Larman propose également les contrats MTI515 Automne 2013 JF Couturier 69

70 Département de génie logiciel et des TI Lien avec Roques Roques, dans le chapitre 7, utilise les stéréotypes de Jacobson à lintérieur dun diagramme de communication. MTI515 Automne 2013 JF Couturier 70

71 Département de génie logiciel et des TI Lien avec Rosenberg Tout le chapitre 5 du livre de Rosenberg et Stephens(Use case driven object modeling with UML) est basé sur la transition entre lanalyse et la conception. Très intéressant MTI515 Automne 2013 JF Couturier 71

72 Département de génie logiciel et des TI Ressources Chapitre 7 du livre UML2 par la pratique de Pascal Roques Chapitre 5 du livre Use case driven object modeling with UML de Doug Rosenberg et Matt Stephens Un lien sur le site du livre Article de Scott Ambler sur le diagramme de robustesse À lire! Le chapitre 11 de Larman sur les contrats dopération MTI515 Automne 2013 JF Couturier 72

73 Département de génie logiciel et des TI Prochain cours Archétypes Modélisation en couleur Lecture chapitres 3 et 4 dUML2 par la pratique. MTI515 Automne 2013 JF Couturier 73


Télécharger ppt "Département de génie logiciel et des TI Systèmes dinformation dans les entreprises Chargé: JF Couturier Cours # 5 MTI515 Automne 2013 JF Couturier 1."

Présentations similaires


Annonces Google