Département de génie logiciel et des TI Systèmes dinformation dans les entreprises Chargé: JF...

72
artement de génie logiciel et des TI Systèmes d’information dans les entreprises Chargé: JF Couturier Cours # 5 MTI515 Automne 2013 JF Couturier 1

Transcript of Département de génie logiciel et des TI Systèmes dinformation dans les entreprises Chargé: JF...

Page 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.

Département de génie logiciel et des TI

Systèmes d’information dans les entreprises

Chargé: JF Couturier

Cours # 5

MTI515 Automne 2013 JF Couturier 1

Page 2: 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.

Département de génie logiciel et des TI

Retour sur le dernier cours

Le diagramme des cas d’utilisation Les cas d’utilisation Le SRS Les cas de test Des questions?

MTI515 Automne 2013 JF Couturier 2

Page 3: 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.

Département de génie logiciel et des TI

Quelques points importants

Pourquoi faire le modèle du domaine avant les cas d’utilisation?

Plusieurs niveau de détails pour un cas d’utilisation…essentiel, concret, etcQu’est-ce qui est pratique pour un

développeur?

Nommer vos écrans

MTI515 Automne 2013 JF Couturier 3

Page 4: 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.

Département de génie logiciel et des TI

Bilan

Nous avons faitLe modèle des processus d’affaires

Le modèle du domaine et le glossaire

Le modèle des cas d’utilisation

Nous détaillons toujours les exigences de notre système

Abordons maintenant Le modèle d’analyse du système

MTI515 Automne 2013 JF Couturier 4

Page 5: 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.

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

Lorsqu’il y a plusieurs acteursVisual Use Case?

MTI515 Automne 2013 JF Couturier 5

Page 6: 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.

Département de génie logiciel et des TI

Petit croche par la droite

Présentation du PDG du CRIM 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

Page 7: 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.

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 d’intégrateurs

– Pourquoi selon vous?

Sécurité Gestion du risque, MEHARI, ISO17799, ISO27001

Intégration

MTI515 Automne 2013 JF Couturier 7

Yves Sanssouci, CRIM, 2009

Page 8: 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.

Département de génie logiciel et des TI

Qualités requises

Savoir faire Méthodologies (CoBIT, ISO, CMMi, MEHARI)

Veille État de l’art, collecter et organiser l’information

pertinente, suivre l’évolution de son environnement, préparer l’innovation

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

Page 9: 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.

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 à

l’autorité, en équipe

MTI515 Automne 2013 JF Couturier 9

Yves Sanssouci, CRIM, 2009

Page 10: 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.

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 quelqu’un, adopter son point de

vue, qui a des exigences particulières qu’il faut comprendre

Le cœur à plus de mémoire que le portefeuille

MTI515 Automne 2013 JF Couturier 10

Yves Sanssouci, CRIM, 2009

Page 11: 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.

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

Page 12: 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.

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

Page 13: 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.

Département de génie logiciel et des TI

BABOK Business Analysis Body of Knowledge

Ensemble des bonnes pratiques en analyse d’affaires

Certified Business Analysis Professional (CBAP)

On y retrouve

Diagramme d’activité (p192)

Cas d’utilisation 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

Page 14: 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.

Département de génie logiciel et des TI

Exemple de stage à l’ACDI

Tâches :1.    Travailler à un projet en tant que stagiaire sous la direction d'unanalyste principal d'affaires. L'étudiant jouera un rôle clé dans laré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 lapréparation de présentations, de notes de service, de tables decalculs 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 enmatière d'UML (langage de modélisation unifié).3.    Connaissance de BABOK (Business Analysis Body of Knowledge) del'IIBA (International Institute of Business Analysis).4.    Connaissance de base de la méthodologie RUP (Rational UnifiedProcess) et des outils Rational.

MTI515 Automne 2013 JF Couturier 15

Page 15: 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.

Département de génie logiciel et des TI

Plan du cours 5

Quiz 2

Les Patrons(Patterns)

Architecture d’application

Stéréotype

Modèle d’analyse

MTI515 Automne 2013 JF Couturier 16

Page 16: 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.

Département de génie logiciel et des TI

Plan du cours 5

Quiz 2

Les Patrons (Patterns)

Architecture d’application

Modèle d’analyse

Stéréotype

MTI515 Automne 2013 JF Couturier 17

Page 17: 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.

Département de génie logiciel et des TI

Les patrons

Qu’est-ce qu’un patron?

C’est la description d’un 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 d’appliquer le patron

MTI515 Automne 2013 JF Couturier 18

Page 18: 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.

Département de génie logiciel et des TI

Les patrons

Le nom du patronC’est 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

Page 19: 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.

Département de génie logiciel et des TI

Les patrons

Le problème à résoudreDécrit le problème dans son contexte

Peut décrire des classes ou des structures d’objets 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

Page 20: 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.

Département de génie logiciel et des TI

Les patrons

La conséquence d’appliquer le patronLa résultante et les compromis

d’appliquer la solution

Parfois absent, mais important pour comprendre les bénéfices de son utilisation

MTI515 Automne 2013 JF Couturier 21

Page 21: 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.

Département de génie logiciel et des TI

Exemples de patrons

Architecturaux MVC, 3-Tiers

ConceptionAdapter, Composite, Façade

Application d’entreprise (Fowler)Service Layer, Lazy load

Les patrons GRASP (Larman)

MTI515 Automne 2013 JF Couturier 22

Page 22: 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.

Département de génie logiciel et des TI

Ressources

Les patrons de la gang des 4 (GoF) Les patrons d’entreprise de Fowler Il y en a beaucoup d’autres

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

Page 23: 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.

Département de génie logiciel et des TI

Plan du cours 5

Quiz 2

Les motifs (Patterns)

Architecture d’application

Modèle d’analyse

Stéréotype

MTI515 Automne 2013 JF Couturier 24

Page 24: 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.

Département de génie logiciel et des TI

Architecture d’application

Le patron MVCModèle

Vue

Contrôleur

La patron 3 tiersPrésentation

Métier

Base de donnéesMTI515 Automne 2013 JF Couturier 25

Page 25: 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.

Département de génie logiciel et des TI

D’autres 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. © 2009. Books24x7. <http://common.books24x7.com/book/id_29675/book.asp> (accessed May 29, 2009)

Page 26: 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.

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

Page 27: 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.

Département de génie logiciel et des TI

Plan du cours 5

Quiz 2

Les motifs (Patterns)

Architecture d’application

Stéréotype

Modèle d’analyse

MTI515 Automne 2013 JF Couturier 28

Page 28: 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.

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 d’une icône

MTI515 Automne 2013 JF Couturier 29

Page 29: 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.

Département de génie logiciel et des TI

Exemples de stéréotypes

MTI515 Automne 2013 JF Couturier 30

Page 30: 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.

Département de génie logiciel et des TI

Exemple avec la formation

MTI515 Automne 2013 JF Couturier 31

Page 31: 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.

Département de génie logiciel et des TI

Exemple avec la formation

MTI515 Automne 2013 JF Couturier 32

Page 32: 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.

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

Page 33: 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.

Département de génie logiciel et des TI

Plan du cours 5

Quiz 2

Architecture d’application Couches de base

Les motifs (Patterns)

Stéréotype

Modèle d’analyse

MTI515 Automne 2013 JF Couturier 34

Page 34: 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.

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 l’analyse et

la conception? Expliquez?

MTI515 Automne 2013 JF Couturier 35

Page 35: 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.

Département de génie logiciel et des TI

Les classes d’analyses

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

Page 36: 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.

Département de génie logiciel et des TI

La transition

MTI515 Automne 2013 JF Couturier 37

http://iconixprocess.com/iconix-process/analysis-and-preliminary-design/robustness-analysis/

Page 37: 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.

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

Page 38: 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.

Département de génie logiciel et des TI

Stéréotypes d'analyse en UML

MTI515 Automne 2013 JF Couturier 39

Page 39: 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.

Département de génie logiciel et des TI

Les classes d’analyses (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

Page 40: 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.

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

Page 41: 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.

Département de génie logiciel et des TI

Les classes d’analyses Règles à respecter

Les acteurs ne parlent qu’aux 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 à d’autres contrôles, mais pas aux acteurs.

MTI515 Automne 2013 JF Couturier 42

Inspiré de Normand Rivard, GTI710, cours 3http://epf.eclipse.org/wikis/openup/core.tech.common.extend_supp/guidances/guidelines/entity_control_boundary_pattern_C4047897.htmlhttp://www.upedu.org/upedu/process/gdlines/md_acls2.htm

Page 42: 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.

Département de génie logiciel et des TI

Exemple

MTI515 Automne 2013 JF Couturier 43

Normand Rivard, GTI710, cours 3

Page 43: 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.

Département de génie logiciel et des TI

Exemple selon RUP

MTI515 Automne 2013 JF Couturier 44

Page 44: 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.

Département de génie logiciel et des TI

Trouver les objets entités

Dans la description détaillée d’un 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

Page 45: 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.

Département de génie logiciel et des TI

Trouver les objets frontière

Le plus souvent objet d’interface utilisateur (UI)

Interagit avec un acteur externe pour : recueillir des données

présenter de l’information

D’où l’intérêt de nommer ses écrans dans le CU

MTI515 Automne 2013 JF Couturier 46

Page 46: 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.

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 d’utilisation Mais généralement beaucoup plus si le

traitement est décomposé

MTI515 Automne 2013 JF Couturier 47

Page 47: 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.

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 d’affaires)

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?

L’objectif ici est de raffiner ET vos cas d’utilisation ET votre modèle d’objet

MTI515 Automne 2013 JF Couturier 48

Use Case Driven Object Modeling with UML, Rosenberg D. Stephens M.

Page 48: 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.

Département de génie logiciel et des TI

Rappelez-vous que…

C’est une bonne idée de comprendre les exigences avant de faire la conception…

Mais qu’il est parfois impossible d’appré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.

Page 49: 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.

Département de génie logiciel et des TI

Exemple

MTI515 Automne 2013 JF Couturier 50

Page 50: 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.

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 d’activité et les cas d’utilisation

Avez-vous les entités Oui, avec le modèle du domaine et le diagramme

d’activité si vous avez identifié les objets. Le glossaire.

Avez-vous les interactions entre les utilisateurs et le système?

Oui, avec les cas d’utilisation

Nous pouvons donc proposer une analyse avec les classes d’analyse

MTI515 Automne 2013 JF Couturier 51

Page 51: 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.

Département de génie logiciel et des TI

Étude de cas du garage

MTI515 Automne 2013 JF Couturier 52

Diagramme d’activité

Page 52: 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.

Département de génie logiciel et des TI

Étude de cas du garage

MTI515 Automne 2013 JF Couturier 53

Modèle du domaine

Page 53: 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.

Département de génie logiciel et des TI

Étude de cas du garage

MTI515 Automne 2013 JF Couturier 54

Diagramme des CU

Page 54: 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.

Département de génie logiciel et des TI

Étude de cas du garage Cas d’utilisation 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 l’heure 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

Page 55: 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.

Département de génie logiciel et des TI

Étude de cas du garage

MTI515 Automne 2013 JF Couturier 56

Diagramme d’analyse (Itération 1)

Page 56: 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.

Département de génie logiciel et des TI

Étude de cas du garage

MTI515 Automne 2013 JF Couturier 57

Diagramme d’analyse (Itération 2)

Page 57: 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.

Département de génie logiciel et des TI

Étude de cas du garage

MTI515 Automne 2013 JF Couturier 58

Diagramme d’analyse (Itération 3)

Page 58: 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.

Département de génie logiciel et des TI

Étude de cas du garage

MTI515 Automne 2013 JF Couturier 59

Diagramme d’analyse (Itération 4)

Page 59: 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.

Département de génie logiciel et des TI

Étude de cas du garage Cas d’utilisation 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

Page 60: 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.

Département de génie logiciel et des TI

Étude de cas du login

Tenter de faire le diagramme d’analyse de ce cas.Un utilisateur entre son code et son mot

de passe

Le système authentifie l’utilisateur dans l’annuaire. L’annuaire récupère l’information du compte.

Le système affiche la page de bienvenue

MTI515 Automne 2013 JF Couturier 61

Page 61: 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.

Département de génie logiciel et des TI

Première itération

MTI515 Automne 2013 JF Couturier 62

Page 62: 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.

Département de génie logiciel et des TI

Seconde itération

MTI515 Automne 2013 JF Couturier 63

Attention - erreur

Page 63: 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.

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 d’objet Transformer les contrôleurs en

messages Et nous nous retrouvons avec les

premières briques de conceptions

MTI515 Automne 2013 JF Couturier 64

Page 64: 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.

Département de génie logiciel et des TI

Diagramme de séquence

MTI515 Automne 2013 JF Couturier 65

Page 65: 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.

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

Page 66: 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.

Département de génie logiciel et des TI

Diagramme de classe

MTI515 Automne 2013 JF Couturier 67

Page 67: 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.

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 à l’explicitation des exigences Au-delà, c’est 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

Page 68: 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.

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

Page 69: 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.

Département de génie logiciel et des TI

Lien avec Roques

Roques, dans le chapitre 7, utilise les stéréotypes de Jacobson à l’intérieur d’un diagramme de communication.

MTI515 Automne 2013 JF Couturier 70

Page 70: 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.

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 l’analyse et la conception.

Très intéressant

MTI515 Automne 2013 JF Couturier 71

Page 71: 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.

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 d’opération

MTI515 Automne 2013 JF Couturier 72

Page 72: 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.

Département de génie logiciel et des TI

Prochain cours

Archétypes Modélisation en couleur Lecture

chapitres 3 et 4 d’UML2 par la pratique.

MTI515 Automne 2013 JF Couturier 73