Département de génie logiciel et des TI Systèmes dinformation dans les entreprises (GTI515)...
-
Upload
toinette-raymond -
Category
Documents
-
view
114 -
download
2
Transcript of Département de génie logiciel et des TI Systèmes dinformation dans les entreprises (GTI515)...
Deacutepartement de geacutenie logiciel et des TI
Systegravemes drsquoinformation dans les entreprises (GTI515)
Chargeacute JF Couturier
Cours 1
GTI515 Automne 2013 JF Couturier 1
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 2
Plan du cours 1
Qui suis-jeProfesseur Assistant Eacutetudiants
Positionnement du cours dans le programme de geacutenie des TI
Preacutesentation du plan de cours Les processus drsquoaffaires Lrsquoanalyse du domaine et la modeacutelisation Lrsquoarchitecture applicative La production et la maintenance
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 3
Qui suis-je JF Couturier 12 ans drsquoexpeacuterience (programmeur analyste consultant eacutetudianthellip) DEC FX-Garneau 2001 BAC en TI 2008 Maicirctrise en 2011 Connaissances theacuteoriques et pratiques en planification informatique et
modeacutelisation drsquoentreprise Modeacutelisation de base de donneacutees programmation Web Reporting Notation BPMN et UML Activiteacutes actuelles
Directeur des systegravemes (Analyse fonctionnelle PDSI Budget gestion des TI)
Maicirctrise avec meacutemoire - Meacutethodologie de deacuteveloppement agile gouvernance et SOA
Domaine drsquoaffaires Santeacute immobilier financier et comptable deacuteveloppement web gouvernementalhellip
Chargeacute de laboratoire GTI-210 drsquohiver 2007 agrave automne 2009 Chargeacute de cours GTI-210 drsquoautomne 2008 agrave automne 2009 Chargeacute de cours de GTI-515 depuis eacuteteacute 2009 (9e fois)
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 4
Qui suis-je Eacutetudiant(e) Profil acadeacutemique
Cours suivis
Cours de la session
Expeacuterience en industrie Anneacutees drsquoexpeacuterience types de logiciels postes
occupeacutes sujets du cours domaine drsquoaffaires (ex bancaire teacuteleacutecom jeux videacuteo deacuteveloppement web
hellip)
Attentes face au cours
Inteacuterecirct de carriegravere
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 5
Plan du cours 1
Qui suis-jeProfesseur Assistant Eacutetudiants
Positionnement du cours dans le programme de geacutenie des TI
Preacutesentation du plan de cours Les processus drsquoaffaires Lrsquoanalyse du domaine et la modeacutelisation Lrsquoarchitecture applicative La production et la maintenance
Deacutepartement de geacutenie logiciel et des TI
Objectifs du programmeProgramme de GTI
Former des ingeacutenieur(e)s
Geacuteneacuteralistes en systegravemes logiciels et multimeacutedias
Ayant une formation optimiseacutee pour un environnement drsquoaffaires transactionnel ougrave les technologies de lrsquoInternet sont omnipreacutesentes
Question Qursquoest-ce qursquoun ingeacutenieur pour vous
Qursquoest-ce qursquoun ingeacutenieur en GTIGTI515 Automne 2013 JF Couturier 6
Deacutepartement de geacutenie logiciel et des TI
Ingeacutenieur
Personne geacuteneacuteralement diplocircmeacutee que sa formation scientifique et technique rend apte agrave concevoir et agrave diriger certains travaux agrave participer agrave certaines recherches [Wiki]
Lexercice de la profession dingeacutenieur consiste agrave faire pour le compte dautrui lun ou lautre des actes suivants
a) Donner des consultations et des avis
b) Faire des mesurages des traceacutes preacuteparer des rapports calculs eacutetudes dessins plans devis cahiers des charges
c) Inspecter ou surveiller les travaux
[OIQ]
GTI515 Automne 2013 JF Couturier 7
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 8
Programme GTI
Disciplines couvertes Eacuteleacutements de geacutenie logiciel Ingeacutenierie des systegravemes informatiques Technologies multimeacutedias Conception et gestion de reacuteseaux informatiques Technologies de lrsquoInternet Conception de systegravemes de commerce eacutelectronique
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 9
Geacutenie logiciel
Geacuteniedes
systegravemes
Systegravemesmultimeacutedias
Reacuteseautique et
Internet
Cours geacuteneacuteraux
Stages et cours inteacutegrateurs
GTI210
Seacutecuriteacute des systegravemes
Geacutenie des TI
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 10
Cours de speacutecialiteacutes GTI GTI210 Introduction au geacutenie des TI
GTI510 Gestion de projets et assurance de la qualiteacute
GTI515 Systegravemes dinformation dans les entreprises
GTI525 Technologies de deacuteveloppement Internet
GTI710 Commerce eacutelectronique
GTI727 Progiciel de gestion inteacutegreacute
GTI660 Bases de donneacutees multimeacutedias
GTI310 Structures de donneacutees multimeacutedias
GTI410 Application des techniques numeacuteriques en graphisme et imagerie
GTI420 Infographie avanceacutee
GTI664 Applications multimeacutedias et Internet
GTI530 Aspects opeacuterationnels des reacuteseaux
GTI719 Seacutecuriteacute des reacuteseaux dentreprise
GTI777 Conception de services de reacuteseautique et de messagerie
GTI780 Sujets speacuteciaux en technologie de linformation
GTI790 Projet synthegravese en geacutenie des technologies de linformation
Deacutepartement de geacutenie logiciel et des TI
Objectif du cours
Analyse et modeacutelisation des processus drsquoaffaires Forces et faiblesses des processus drsquoaffaires
Speacutecifications des exigences drsquoun systegraveme drsquoinformation Ameacutelioration de lrsquoefficaciteacute des processus drsquoaffaires
Eacutetude des eacutetapes du cycle de transformation drsquoun systegraveme drsquoinformation automatiseacute reacutepondant aux exigences
Analyse maintenance opeacuteration drsquoun systegraveme drsquoinformation
Agrave la fin de ce cours lrsquoeacutetudiant sera en mesure dexpliquer le fonctionnement drsquoun systegraveme drsquoinformation reacuteel drsquoen eacutevaluer la qualiteacute et la pertinence et drsquoen diriger son adaptation agrave de nouvelles exigences de participer activement aux diffeacuterentes phases de lrsquoanalyse du systegraveme drsquoen controcircler la mise en place et lrsquoexploitation
Seacuteparation des responsabiliteacutes entre LOG-210 et GTIMTI-515
GTI515 Automne 2013 JF Couturier 12
Inspireacute de httpwwwetsmtlcazone2fichedecoursfichedecoursaspnumerodefiche=GTI515
Deacutepartement de geacutenie logiciel et des TI
Vue drsquoensemble du cours Analyse et modeacutelisation
Diagrammes drsquoactiviteacute
Modegravele du domaine et cas drsquoutilisation
Cas de test
Archeacutetypes drsquoanalyse ndash Modeacutelisation en couleur
Diagrammes de robustesse
BPMN et DFD
Gestion des TI
Cadre drsquoarchitecture drsquoentreprise et TOGAF
Gestion des services et ITIL V3
Maintenance logicielle et S3M
Gestion des applications et ASL (Si on a le temps)
GTI515 Automne 2013 JF Couturier 13
Deacutepartement de geacutenie logiciel et des TI
Lectures et reacutefeacuterences Sur le site Web du cours
Notes de coursArticlesEacutetudes de cas
Wikipeacutedia httpwwwwikipediaorg Comment ccedila marche
httpwwwcommentcamarchenet
GTI515 Automne 2013 JF Couturier 14
Deacutepartement de geacutenie logiciel et des TI
Regravegles du jeu La ponctualiteacute Tout le monde a la parole mais un seul agrave la
fois Un effort reacuteparti dans le temps Prendre des notes Faire les lectures demandeacutees Je nrsquoai pas reacuteponse agrave tout soyez indulgent Parfois je parle vite arrecirctez-moi La reacutepartition des coteshellipE agrave A+
GTI515 Automne 2013 JF Couturier 15
Deacutepartement de geacutenie logiciel et des TI
QUIZ
Porte sur toute la matiegravere preacutesenteacutee en cours (cumulatif)
Commence agrave 18 h 20 minutes 25 de la note chacun Cours 3 5 10 et 12
GTI515 Automne 2013 JF Couturier 16
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 17
Plan du cours 1
Qui suis-jeProfesseur Assistant Eacutetudiants
Positionnement du cours dans le programme de geacutenie des TI
Preacutesentation du plan de cours Les processus drsquoaffaires Lrsquoanalyse du domaine et la modeacutelisation Lrsquoarchitecture applicative La production et la maintenance
Deacutepartement de geacutenie logiciel et des TI
Plan de cours
Plan de GTI-515 Parce que le cours vit une refonte le
plan de cours peut connaicirctre quelques modifications
GTI515 Automne 2013 JF Couturier 18
Deacutepartement de geacutenie logiciel et des TI
Laboratoires ndash GTI515
Eacutequipes de 4 Eacutequipes formeacutees lors de la premiegravere seacuteance de laboratoire Sujet pour les laboratoires confirmeacute par le professeur et le chargeacute de
laboratoire lors de la premiegravere seacuteance de laboratoire Production des arteacutefacts des disciplines de RUP
Document de vision
Diagrammes drsquoactiviteacute et BPMN
Modegravele du domaine et archeacutetypes
Diagramme des cas drsquoutilisation cas drsquoutilisation et diagramme de robustesse
SRS
Controcircle de la qualiteacute par des inspection par les pairs Outils Visio ou Visual Paradigm
GTI515 Automne 2013 JF Couturier 19
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 20
Peacutenaliteacutes de retard
lt 24 hres 20 24 hres gt et lt48 hres 40 48 hres gt et lt72 hres 60 gt72 hres 100
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 21
Plagiat
Lire le Chapitre 10 Plagiat et fraude du Regraveglement des eacutetudes de 1er cycle
Sanction minimale demandeacutee pour un laboratoire copieacute ou autres cas de plagiat ou fraude eacutechec du cours
Autre cas Copie drsquoun livre document ou document provenant
drsquoInternet sans citer la source
Reacuteutilisation de ses travaux drsquoun autre cours sans autorisation
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 22
Plan du cours 1
Qui suis-jeProfesseur Assistant Eacutetudiants
Positionnement du cours dans le programme de geacutenie des TI
Preacutesentation du plan de cours Lrsquoarchitecture dirigeacutee par les modegraveles
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 23
Les tendances dans le deacuteveloppementdes systegravemes drsquoinformation
Modeacutelisation UML2 BPMN MDA (Model Driven Architecture) SOA (agrave lrsquoaide des Services Web) Domain Specific Language
Les frameworks autour de Eclipse NetBean Visual Studio
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 24
UML - Historique
Ref Using the UML to Describe Design Patterns Diane Strode
Deacutepartement de geacutenie logiciel et des TI
Pourquoi modeacuteliser
Un modegravele est une abstraction du monde concret qui facilite sa compreacutehension
Un modegravele peut ecirctre sous forme graphique etou textuelle
Srsquoil est sous forme graphique il doit ecirctre compleacuteteacute par une preacutesentation textuelle
GTI515 Automne 2013 JF Couturier 25
Deacutepartement de geacutenie logiciel et des TI
La modeacutelisation dans les entreprises
Une perte de temps pour les non-informaticiens et mecircme les informaticiens
Une eacutevolution ineacuteluctable avec les nouveaux outils
Modeacuteliser = precirccher dans le deacutesert Cela deacutepend de la culture de votre deacutepartement
GTI515 Automne 2013 JF Couturier 26
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
256 milliards en projet logiciel aux US16 sont compleacuteteacutes en temps et dans
les coucircts
31 sont annuleacutes (81G$)
53 deacutepassent le budget preacutevu
42 seulement sont livreacutes avec les exigences initiales
GTI515 Automne 2013 JF Couturier 27
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
GTI515 Automne 2013 JF Couturier 28
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
GTI515 Automne 2013 JF Couturier 29
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
GTI515 Automne 2013 JF Couturier 30
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
Une grande proportion de projets TI eacutechouent PourquoiPlusieurs facteurs
Les mauvaises exigences en font partie
Si ccedila va si mal crsquoest qursquoil y a quelque chose qursquoon ne fait pas bien Il faut se remettre en question
GTI515 Automne 2013 JF Couturier 31
Deacutepartement de geacutenie logiciel et des TI
Et maintenant
GTI515 Automne 2013 JF Couturier 32
CHAOS Summary 2009
Deacutepartement de geacutenie logiciel et des TI
Et maintenant
GTI515 Automne 2013 JF Couturier 33
Standish Group 1999
CHAOS Summary 2009
Deacutepartement de geacutenie logiciel et des TI
Finalementhellip
GTI515 Automne 2013 JF Couturier 34
Deacutepartement de geacutenie logiciel et des TI
Reacuteussite Eacutechec
Mais qursquoest-ce qursquoun projet reacuteussi Dans les temps Dans le budget Avec les fonctions preacutevues
GTI515 Automne 2013 JF Couturier 35
Deacutepartement de geacutenie logiciel et des TI
Rappel
Notre domaine est tregraves jeune (70 ans) Geacutenie de la constructionhellip5000 ans
Mais nous progressons tregraves rapidement Pourquoi le geacutenie en TI
Artisanat vs geacutenie (le pif vs la meacutethode)
Acircge du geacutenie logiciel TI - Maturiteacute
Science virtuelle vs Meacutecanique construction
Une tendancehellipDe lrsquoartisanat agrave lrsquoindustrialisation du deacuteveloppement logiciel
GTI515 Automne 2013 JF Couturier 36
Deacutepartement de geacutenie logiciel et des TI
Industrialisation
Vers le milieu du 19e siegravecle Segmenter le travail des individus pour
ne pas ecirctre deacutependant drsquoun artisan Permet une production beaucoup plus
efficace en seacuterie
GTI515 Automne 2013 JF Couturier 37
Deacutepartement de geacutenie logiciel et des TI
Industrialisation
Est-ce que le deacuteveloppement peut-ecirctre industrialiseacuteCertains disent que non que le logiciel agrave
un caractegravere trop creacuteatif
Drsquoautres pensent que les reacutecents progregraves dans le domaine permettent une eacuteventuelle industrialisation dans la production drsquoapplication
GTI515 Automne 2013 JF Couturier 38
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 39
Technologies(OO CBD Services Web SOA
XML AOP DB design patternshellip)
Ingeacutenierie dirigeacutee par les modegraveles
Usines logicielles (Microsoft)Architecture dirigeacutee par les modegraveles (OMG)
Deux applications drsquoun mecircme concept de base
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 40
Techniques de deacuteveloppement assisteacute par ordinateur (Reacutef Software Factories Greenfield J p144)
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Un modegravele tregraves deacutetailleacute beaucoup de code geacuteneacutereacute
CASE Tools (Computer-aided software engineering)
Mal adapteacute au deacuteveloppement agile qui implique souvent des solutions partielles tregraves tocirct dans le cycle de deacuteveloppement
Synchronisation difficile
Eacuteloigneacutee de la plateforme
GTI515 Automne 2013 JF Couturier 41
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Exemple Outils graphiques de modeacutelisation des classes
Plus proche de la plateforme
Code geacuteneacutereacute pour la plateforme
Plus simple
Aide geacuteneacuteralement le deacuteveloppeur agrave voir les deacutependances entre les classes
Il reste beaucoup de code agrave faire agrave la main
Penser agrave coder du SWING Java agrave la mitaine
GTI515 Automne 2013 JF Couturier 42
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Existence drsquoun framework logiciel
On se base sur le framework pour automatiser-compleacuteter la production de certains eacuteleacutements comme les eacuteleacutements graphiques
Abstraction plus eacuteleveacutee
VB6 et ses formulaires
NET Hibernate
Peu drsquoabstractions au niveau du modegravele Classe entiteacute-relation
GTI515 Automne 2013 JF Couturier 43
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Finalement il y a la possibiliteacute drsquoavoir une laquo pile raquo de modegraveles
Drsquoun modegravele agrave lrsquoautre il y a transformation vers un modegravele de plus en plus preacutecis
Approche MDA
Concept de Domain Specific Language
Pour un domaine particulier on creacutee des laquo templates raquo reacuteutilisables
Permets la contribution des experts meacutetiers
GTI515 Automne 2013 JF Couturier 44
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles
GTI515 Automne 2013 JF Couturier 45
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Domain Specific Langage
Par opposition au General purpose language comme UML C++ Java ou C
AvantagesPermets agrave un expert meacutetier de
comprendre et valider un modegravele
InconveacutenientCoucirct Formation Maintenance
GTI515 Automne 2013 JF Couturier 46
httpenwikipediaorgwikiDomain_Specific_Language
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 47
BuzzhellipMDA MDD MDE
Model Driven Architecturemarque de commerce de lrsquoOMG
Model Driven Developmentextension de MDAmarque de commerce de lrsquoOMG
Model Driven Engineeringexpression geacuteneacuterique
Deacutepartement de geacutenie logiciel et des TI
Exemple Agrave partir des speacutecifications des exigences logicielles
Lrsquoacteur saisit la commande contenant
lrsquoadresse de livraison
lrsquoadresse de facturation
Le systegraveme creacutee la commande
Lrsquoacteur saisit un deacutetail de la commande avec
le nom du produit
la quantiteacute demandeacutee
le prix du produit
Le systegraveme creacutee le deacutetail et revient agrave lrsquoeacutetape 3
Lrsquoacteur termine la commande
Le systegraveme ferme la commande
GTI515 Automne 2013 JF Couturier 48
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 49
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Un modegravele (Diagramme de classes UML)
Deacutepartement de geacutenie logiciel et des TI
Model Driven ArchitectureUn scheacutema XML
ltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gt
ltxsdschema xmlnsxsd=httpwww targetNamespace=helliprsaquo
ltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo minOccurs=ldquo0ldquo maxOccurs=ldquounboundedgt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdcomplexType name=ldquoDetailCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoprixldquo type=ldquo xsdfloatldquogt
ltxsdelement name=ldquoquantiteldquo type=ldquo xsdintldquogt
ltxsdelement name=ldquonomProduitldquo type=ldquo xsdstringldquogt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdschemarsaquo
GTI515 Automne 2013 JF Couturier 50
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 51
Des classes Java
public class Commande
private String adresseLivraison
private String adresseFacturation
private Collection detailCommande
hellip
String getAdresseLivraison()
void setAdresseLivraison(String value)
String getAdresseFacturation()
void setAdresseFacturation(String value)
public class DetailCommande
private float prix
private int quantite
private String nomProduit
float getPrix()
void setPrix(float value)
int getQuantite()
void setQuantite(int value)
String getNomProduit()
void setNomProduit(String value)
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 52
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Programmepublic class Commande
private String adresseLivraisonprivate String adresseFacturation
String getAdresseLivraison()void setAdresseLivraison(String value)
String getAdresseFacturation()void setAdresseFacturation(String value)
Scheacutema XMLltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gtltxsdschema xmlnsxsd=httpwww
targetNamespace=helliprsaquoltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo
xsdstringldquogt ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo
Modegravele UML3 repreacutesentationsdes mecircmes exigences
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
Speacutecifications de lrsquoOMG Seacuteparation de la logique meacutetier de
toute plateforme technique Speacutecifications drsquoun langage de
transformation (QVT)
GTI515 Automne 2013 JF Couturier 53
Deacutepartement de geacutenie logiciel et des TI
Concept principal de MDA
Modeacuteliser pour documenter le systegraveme
Modeacuteliser pour construire le systegraveme
GTI515 Automne 2013 JF Couturier 55
Deacutepartement de geacutenie logiciel et des TI
CIM PIM PSM Code CIM
Computing Independant Model
Modegravele du domaine logique meacutetier
PIM Platform Independant Model
Modegravele de conception UML et OCL
PSM Platform Specific Model
NET J2EE
Codehellip
GTI515 Automne 2013 JF Couturier 56
Deacutepartement de geacutenie logiciel et des TI
Les diffeacuterentes eacutetapes
GTI515 Automne 2013 JF Couturier 57
Reacutef the Zachman Framework and the OMGrsquos MDA Business Process Trends Sept 2003
Deacutepartement de geacutenie logiciel et des TI
MDA et Gartner
GTI515 Automne 2013 JF Couturier 58
Gartner Hype Cycle 2008
Deacutepartement de geacutenie logiciel et des TI
Eacutetude de cas
Lecture de la discussion sur MDA Questions
Quels sont les arguments pour
Quels sont les arguments contre
Vos commentaires sur lrsquoarticle
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 59
Deacutepartement de geacutenie logiciel et des TI
Impact
Rocircle du deacuteveloppeur minimiseacute puisqursquoil nrsquointerpregravete plus le modegravele les regravegles de transformation srsquoen chargent
Modegraveles exportables drsquoune plateforme agrave un autre
Plus de 100 articles de recherche sur IEEE entre 2008 et 2009
Maishellip
GTI515 Automne 2013 JF Couturier 60
Deacutepartement de geacutenie logiciel et des TI
Impact
Est-ce applicable au monde agile
Le cycle de modeacutelisation est-il compatible avec le deacuteveloppement iteacuteratif
Est-ce qursquoil y a suffisamment de ressources hautement qualifieacutees pour reacutealiser ce type de projet
Pouvez-vous les former Pouvez-vous les conserver
Produire 80 du code et vous laisser les derniers 20 plus difficileshellip
Comment inteacutegrer les tests
GTI515 Automne 2013 JF Couturier 61
Scott Ambler Enterprise Unified Process p 191
Deacutepartement de geacutenie logiciel et des TI
Impact
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 62
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 63
Domaine
Exigences
Analyse
Conception
Reacutealisation
MDA
PIM
PSM
Modegravele des Processus drsquoaffaires
Modegravele drsquoanalyse du systegraveme
CIM
Modegravele des Cas drsquoutilisation
Modegravele de conception du systegraveme
Les modegraveles du cycle de deacuteveloppement de logiciels
Code
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 64
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 65
Deacutepartement de geacutenie logiciel et des TI
Exemple
GTI515 Automne 2013 JF Couturier 66
httpwwwibmcomdeveloperworksrationallibrary3100html
Deacutepartement de geacutenie logiciel et des TI
Ressources
Site de lOMG MDA Article drsquoIBM sur MDA Discussion sur MDA Wiki MDA Wiki QVT
GTI515 Automne 2013 JF Couturier 67
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 68
Laboratoire 1
Choix du sujet Validation de la porteacutee
Suffisamment long Plusieurs interactions humaines machines Reacutealisable dans une session
Chargeacute de laboratoire Oleg Litvinski Premier laboratoire lundi 7 mai
Deacutepartement de geacutenie logiciel et des TI
Le document de vision (RUP)
Une base de discussion et drsquoaccord parmi les intervenants du projet
Une description de lrsquoapplication en geacuteneacuteral incluant la description du marcheacute cible les clients les utilisateurs du systegraveme les problegravemes agrave reacutesoudre et les caracteacuteristiques de lrsquoapplication
GTI515 Automne 2013 JF Couturier 69
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 70
Requirements Management with Use Cases v20010300
Copyright copy 1998 2001 Rational Software all rights reserved
2
Problem
Solution Space
Problem Space
Needs
Features
SoftwareRequirements
Test Procedures Design User
Docs
The The Product Product To Be To Be BuiltBuilt
Traceability
Deacutepartement de geacutenie logiciel et des TI
Exemples de caracteacuteristiques (feature)
Domaine drsquoapplication Exemple de caracteacuteristique
Systegraveme de commande drsquoascenseur
Commande manuelle des portes durant une urgence de feu
Systegraveme de commande drsquoinventaire
Fournir un statut reacutecent de tous les items reacutepertorieacutes
Systegraveme de suivi de deacutefauts Fournir des laquo donneacutees raquo sur les tendances pour eacutevaluer la
qualiteacute
Systegraveme de paie Rapports par cateacutegories des deacuteductions remis agrave lrsquoimpocirct
Systegraveme de commande drsquoarmes
Minimum de deux confirmations indeacutependantes drsquoautorisation
drsquoattaque exigeacutee
GTI515 Automne 2013 JF Couturier 71
Deacutepartement de geacutenie logiciel et des TI
Niveau de deacutetail des caracteacuteristiques Pour tout nouveau systegraveme ou pour
une ameacutelioration majeure agrave un systegraveme existant il est recommandeacute de garder un niveau drsquoabstraction assez eacuteleveacute de sorte agrave avoir un maximum de caracteacuteristiques compris entre 25-99 et de preacutefeacuterence moins de 50
GTI515 Automne 2013 JF Couturier 72
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Statut Suit le progregraves
Exemples Proposeacute approuveacute incorporeacute etc
PrioriteacuteBeacuteneacutefice
Les caracteacuteristiques ne sont pas agrave prioriteacutes eacutegales ou geacutenegraverent des beacuteneacutefices eacutegaux
Exemple critiques importantes optionnelle
Effort Estimation du nombre de personnessemaines lignes de code points de fonction COSMIC_FFP
Risque La probabiliteacute que la caracteacuteristique aille causer un eacuteveacutenement indeacutesirable tel que le deacutepassement du budget ou des deacutelais ou mecircme lrsquoannulation du projet
GTI515 Automne 2013 JF Couturier 73
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Stabiliteacute La probabiliteacute que la caracteacuteristique elle-mecircme ou sa compreacutehension par lrsquoeacutequipe de deacuteveloppement changera
Mise en application
Documenter la version preacutevue pour laquelle la caracteacuteristique sera incorporeacutee
Assigneacutee agrave Deacutesigner lrsquoeacutequipe responsable de la caracteacuteristique
Raison Lrsquoorigine de la requecircte de la caracteacuteristique
GTI515 Automne 2013 JF Couturier 74
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 75
Deacutepartement de geacutenie logiciel et des TI
Reacutedaction du document de vision une description concise de tout ce qui est important au
produit ou agrave lrsquoapplication eacutecrit avec un niveau de deacutetails dans un langage lisible et
compreacutehensible par les intervenants du projet
Document de 15 agrave 20 pages
GTI515 Automne 2013 JF Couturier 76
Deacutepartement de geacutenie logiciel et des TI
Exemple le cas ACS
GTI515 Automne 2013 JF Couturier 77
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 78
Deacutepartement de geacutenie logiciel et des TI
Exemple de problegravemesle cas ACS
Controcircle drsquoune large gamme de mateacuteriels
Utilisation compliqueacutee Difficulteacutes de programmation Disponibiliteacute du mateacuteriel Risque de mauvaise utilisation
GTI515 Automne 2013 JF Couturier 79
Deacutepartement de geacutenie logiciel et des TI
Exemple de besoinsle cas ACS
AutomatiserLa distribution de fertilisantLa distribution de nourritureLa dureacutee de lrsquoeacuteclairage
Commander lrsquoopeacuteration des appareils Reacuteguler
le niveau et la dureteacute de lrsquoeauLa tempeacuterature
GTI515 Automne 2013 JF Couturier 80
Deacutepartement de geacutenie logiciel et des TI
Exemple de caracteacuteristiquesle cas ACS
Deacutemarrage automatique du systegraveme Programmation conserveacutee en cas de
panne drsquoalimentation Deacutetection automatique des modules Facile agrave programmer et agrave utiliser
Exigence non fonctionnelle
GTI515 Automne 2013 JF Couturier 81
Deacutepartement de geacutenie logiciel et des TI
Critegraveres drsquoeacutevaluation
Respect de lrsquoesprit du document
En tant qursquointervenant externe est-ce que je comprends bien
Respect de la forme du gabarit
Qualiteacute du franccedilais
Document de calibre professionnel que lrsquoon pourrait remettre agrave un dirigeant
GTI515 Automne 2013 JF Couturier 82
Deacutepartement de geacutenie logiciel et des TI
Grille drsquoeacutevaluation (sur 100)
Agrave venirhellip
GTI515 Automne 2013 JF Couturier 83
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 84
Prochain cours
La modeacutelisation des processus drsquoaffaires Le diagramme drsquoactiviteacute Le diagnostic des processus drsquoaffaires existant
Lectures Lrsquoutilisation drsquoUML Chapitre sur les diagrammes drsquoactiviteacutes dans Larman Lecture sur MDA Voir site Web du cours
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 85
Questions
- Systegravemes drsquoinformation dans les entreprises (GTI515)
- Plan du cours 1
- Qui suis-je JF Couturier
- Qui suis-je Eacutetudiant(e)
- Plan du cours 1 (2)
- Objectifs du programme
- Ingeacutenieur
- Programme GTI
- Geacutenie des TI
- Cours de speacutecialiteacutes GTI
- Objectif du cours
- Vue drsquoensemble du cours
- Lectures et reacutefeacuterences
- Regravegles du jeu
- QUIZ
- Plan du cours 1 (3)
- Plan de cours
- Laboratoires ndash GTI515
- Peacutenaliteacutes de retard
- Plagiat
- Plan du cours 1 (4)
- Les tendances dans le deacuteveloppement des systegravemes drsquoinformation
- UML - Historique
- Pourquoi modeacuteliser
- La modeacutelisation dans les entreprises
- Quelques chiffres
- Quelques chiffres (2)
- Quelques chiffres (3)
- Quelques chiffres (4)
- Quelques chiffres (5)
- Et maintenant
- Et maintenant (2)
- Finalementhellip
- Reacuteussite Eacutechec
- Rappel
- Industrialisation
- Industrialisation (2)
- Slide 39
- Slide 40
- Usines logicielles (S Factory)
- Usines logicielles (S Factory) (2)
- Usines logicielles (S Factory) (3)
- Usines logicielles (S Factory) (4)
- Usines logicielles
- Domain Specific Langage
- BuzzhellipMDA MDD MDE
- Exemple
- Model Driven Architecture
- Model Driven Architecture (2)
- Model Driven Architecture (3)
- Model Driven Architecture (4)
- Model Driven Architecture (5)
- Concept principal de MDA
- CIM PIM PSM Code
- Les diffeacuterentes eacutetapes
- MDA et Gartner
- Eacutetude de cas
- Impact
- Impact (2)
- Impact (3)
- Slide 63
- Slide 64
- Slide 65
- Exemple (2)
- Ressources
- Laboratoire 1
- Le document de vision (RUP)
- Slide 70
- Exemples de caracteacuteristiques (feature)
- Niveau de deacutetail des caracteacuteristiques
- Attributs des caracteacuteristiques
- Attributs des caracteacuteristiques
- Slide 75
- Reacutedaction du document de vision
- Exemple le cas ACS
- Slide 78
- Exemple de problegravemes le cas ACS
- Exemple de besoins le cas ACS
- Exemple de caracteacuteristiques le cas ACS
- Critegraveres drsquoeacutevaluation
- Grille drsquoeacutevaluation (sur 100)
- Prochain cours
- Questions
-
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 2
Plan du cours 1
Qui suis-jeProfesseur Assistant Eacutetudiants
Positionnement du cours dans le programme de geacutenie des TI
Preacutesentation du plan de cours Les processus drsquoaffaires Lrsquoanalyse du domaine et la modeacutelisation Lrsquoarchitecture applicative La production et la maintenance
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 3
Qui suis-je JF Couturier 12 ans drsquoexpeacuterience (programmeur analyste consultant eacutetudianthellip) DEC FX-Garneau 2001 BAC en TI 2008 Maicirctrise en 2011 Connaissances theacuteoriques et pratiques en planification informatique et
modeacutelisation drsquoentreprise Modeacutelisation de base de donneacutees programmation Web Reporting Notation BPMN et UML Activiteacutes actuelles
Directeur des systegravemes (Analyse fonctionnelle PDSI Budget gestion des TI)
Maicirctrise avec meacutemoire - Meacutethodologie de deacuteveloppement agile gouvernance et SOA
Domaine drsquoaffaires Santeacute immobilier financier et comptable deacuteveloppement web gouvernementalhellip
Chargeacute de laboratoire GTI-210 drsquohiver 2007 agrave automne 2009 Chargeacute de cours GTI-210 drsquoautomne 2008 agrave automne 2009 Chargeacute de cours de GTI-515 depuis eacuteteacute 2009 (9e fois)
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 4
Qui suis-je Eacutetudiant(e) Profil acadeacutemique
Cours suivis
Cours de la session
Expeacuterience en industrie Anneacutees drsquoexpeacuterience types de logiciels postes
occupeacutes sujets du cours domaine drsquoaffaires (ex bancaire teacuteleacutecom jeux videacuteo deacuteveloppement web
hellip)
Attentes face au cours
Inteacuterecirct de carriegravere
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 5
Plan du cours 1
Qui suis-jeProfesseur Assistant Eacutetudiants
Positionnement du cours dans le programme de geacutenie des TI
Preacutesentation du plan de cours Les processus drsquoaffaires Lrsquoanalyse du domaine et la modeacutelisation Lrsquoarchitecture applicative La production et la maintenance
Deacutepartement de geacutenie logiciel et des TI
Objectifs du programmeProgramme de GTI
Former des ingeacutenieur(e)s
Geacuteneacuteralistes en systegravemes logiciels et multimeacutedias
Ayant une formation optimiseacutee pour un environnement drsquoaffaires transactionnel ougrave les technologies de lrsquoInternet sont omnipreacutesentes
Question Qursquoest-ce qursquoun ingeacutenieur pour vous
Qursquoest-ce qursquoun ingeacutenieur en GTIGTI515 Automne 2013 JF Couturier 6
Deacutepartement de geacutenie logiciel et des TI
Ingeacutenieur
Personne geacuteneacuteralement diplocircmeacutee que sa formation scientifique et technique rend apte agrave concevoir et agrave diriger certains travaux agrave participer agrave certaines recherches [Wiki]
Lexercice de la profession dingeacutenieur consiste agrave faire pour le compte dautrui lun ou lautre des actes suivants
a) Donner des consultations et des avis
b) Faire des mesurages des traceacutes preacuteparer des rapports calculs eacutetudes dessins plans devis cahiers des charges
c) Inspecter ou surveiller les travaux
[OIQ]
GTI515 Automne 2013 JF Couturier 7
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 8
Programme GTI
Disciplines couvertes Eacuteleacutements de geacutenie logiciel Ingeacutenierie des systegravemes informatiques Technologies multimeacutedias Conception et gestion de reacuteseaux informatiques Technologies de lrsquoInternet Conception de systegravemes de commerce eacutelectronique
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 9
Geacutenie logiciel
Geacuteniedes
systegravemes
Systegravemesmultimeacutedias
Reacuteseautique et
Internet
Cours geacuteneacuteraux
Stages et cours inteacutegrateurs
GTI210
Seacutecuriteacute des systegravemes
Geacutenie des TI
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 10
Cours de speacutecialiteacutes GTI GTI210 Introduction au geacutenie des TI
GTI510 Gestion de projets et assurance de la qualiteacute
GTI515 Systegravemes dinformation dans les entreprises
GTI525 Technologies de deacuteveloppement Internet
GTI710 Commerce eacutelectronique
GTI727 Progiciel de gestion inteacutegreacute
GTI660 Bases de donneacutees multimeacutedias
GTI310 Structures de donneacutees multimeacutedias
GTI410 Application des techniques numeacuteriques en graphisme et imagerie
GTI420 Infographie avanceacutee
GTI664 Applications multimeacutedias et Internet
GTI530 Aspects opeacuterationnels des reacuteseaux
GTI719 Seacutecuriteacute des reacuteseaux dentreprise
GTI777 Conception de services de reacuteseautique et de messagerie
GTI780 Sujets speacuteciaux en technologie de linformation
GTI790 Projet synthegravese en geacutenie des technologies de linformation
Deacutepartement de geacutenie logiciel et des TI
Objectif du cours
Analyse et modeacutelisation des processus drsquoaffaires Forces et faiblesses des processus drsquoaffaires
Speacutecifications des exigences drsquoun systegraveme drsquoinformation Ameacutelioration de lrsquoefficaciteacute des processus drsquoaffaires
Eacutetude des eacutetapes du cycle de transformation drsquoun systegraveme drsquoinformation automatiseacute reacutepondant aux exigences
Analyse maintenance opeacuteration drsquoun systegraveme drsquoinformation
Agrave la fin de ce cours lrsquoeacutetudiant sera en mesure dexpliquer le fonctionnement drsquoun systegraveme drsquoinformation reacuteel drsquoen eacutevaluer la qualiteacute et la pertinence et drsquoen diriger son adaptation agrave de nouvelles exigences de participer activement aux diffeacuterentes phases de lrsquoanalyse du systegraveme drsquoen controcircler la mise en place et lrsquoexploitation
Seacuteparation des responsabiliteacutes entre LOG-210 et GTIMTI-515
GTI515 Automne 2013 JF Couturier 12
Inspireacute de httpwwwetsmtlcazone2fichedecoursfichedecoursaspnumerodefiche=GTI515
Deacutepartement de geacutenie logiciel et des TI
Vue drsquoensemble du cours Analyse et modeacutelisation
Diagrammes drsquoactiviteacute
Modegravele du domaine et cas drsquoutilisation
Cas de test
Archeacutetypes drsquoanalyse ndash Modeacutelisation en couleur
Diagrammes de robustesse
BPMN et DFD
Gestion des TI
Cadre drsquoarchitecture drsquoentreprise et TOGAF
Gestion des services et ITIL V3
Maintenance logicielle et S3M
Gestion des applications et ASL (Si on a le temps)
GTI515 Automne 2013 JF Couturier 13
Deacutepartement de geacutenie logiciel et des TI
Lectures et reacutefeacuterences Sur le site Web du cours
Notes de coursArticlesEacutetudes de cas
Wikipeacutedia httpwwwwikipediaorg Comment ccedila marche
httpwwwcommentcamarchenet
GTI515 Automne 2013 JF Couturier 14
Deacutepartement de geacutenie logiciel et des TI
Regravegles du jeu La ponctualiteacute Tout le monde a la parole mais un seul agrave la
fois Un effort reacuteparti dans le temps Prendre des notes Faire les lectures demandeacutees Je nrsquoai pas reacuteponse agrave tout soyez indulgent Parfois je parle vite arrecirctez-moi La reacutepartition des coteshellipE agrave A+
GTI515 Automne 2013 JF Couturier 15
Deacutepartement de geacutenie logiciel et des TI
QUIZ
Porte sur toute la matiegravere preacutesenteacutee en cours (cumulatif)
Commence agrave 18 h 20 minutes 25 de la note chacun Cours 3 5 10 et 12
GTI515 Automne 2013 JF Couturier 16
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 17
Plan du cours 1
Qui suis-jeProfesseur Assistant Eacutetudiants
Positionnement du cours dans le programme de geacutenie des TI
Preacutesentation du plan de cours Les processus drsquoaffaires Lrsquoanalyse du domaine et la modeacutelisation Lrsquoarchitecture applicative La production et la maintenance
Deacutepartement de geacutenie logiciel et des TI
Plan de cours
Plan de GTI-515 Parce que le cours vit une refonte le
plan de cours peut connaicirctre quelques modifications
GTI515 Automne 2013 JF Couturier 18
Deacutepartement de geacutenie logiciel et des TI
Laboratoires ndash GTI515
Eacutequipes de 4 Eacutequipes formeacutees lors de la premiegravere seacuteance de laboratoire Sujet pour les laboratoires confirmeacute par le professeur et le chargeacute de
laboratoire lors de la premiegravere seacuteance de laboratoire Production des arteacutefacts des disciplines de RUP
Document de vision
Diagrammes drsquoactiviteacute et BPMN
Modegravele du domaine et archeacutetypes
Diagramme des cas drsquoutilisation cas drsquoutilisation et diagramme de robustesse
SRS
Controcircle de la qualiteacute par des inspection par les pairs Outils Visio ou Visual Paradigm
GTI515 Automne 2013 JF Couturier 19
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 20
Peacutenaliteacutes de retard
lt 24 hres 20 24 hres gt et lt48 hres 40 48 hres gt et lt72 hres 60 gt72 hres 100
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 21
Plagiat
Lire le Chapitre 10 Plagiat et fraude du Regraveglement des eacutetudes de 1er cycle
Sanction minimale demandeacutee pour un laboratoire copieacute ou autres cas de plagiat ou fraude eacutechec du cours
Autre cas Copie drsquoun livre document ou document provenant
drsquoInternet sans citer la source
Reacuteutilisation de ses travaux drsquoun autre cours sans autorisation
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 22
Plan du cours 1
Qui suis-jeProfesseur Assistant Eacutetudiants
Positionnement du cours dans le programme de geacutenie des TI
Preacutesentation du plan de cours Lrsquoarchitecture dirigeacutee par les modegraveles
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 23
Les tendances dans le deacuteveloppementdes systegravemes drsquoinformation
Modeacutelisation UML2 BPMN MDA (Model Driven Architecture) SOA (agrave lrsquoaide des Services Web) Domain Specific Language
Les frameworks autour de Eclipse NetBean Visual Studio
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 24
UML - Historique
Ref Using the UML to Describe Design Patterns Diane Strode
Deacutepartement de geacutenie logiciel et des TI
Pourquoi modeacuteliser
Un modegravele est une abstraction du monde concret qui facilite sa compreacutehension
Un modegravele peut ecirctre sous forme graphique etou textuelle
Srsquoil est sous forme graphique il doit ecirctre compleacuteteacute par une preacutesentation textuelle
GTI515 Automne 2013 JF Couturier 25
Deacutepartement de geacutenie logiciel et des TI
La modeacutelisation dans les entreprises
Une perte de temps pour les non-informaticiens et mecircme les informaticiens
Une eacutevolution ineacuteluctable avec les nouveaux outils
Modeacuteliser = precirccher dans le deacutesert Cela deacutepend de la culture de votre deacutepartement
GTI515 Automne 2013 JF Couturier 26
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
256 milliards en projet logiciel aux US16 sont compleacuteteacutes en temps et dans
les coucircts
31 sont annuleacutes (81G$)
53 deacutepassent le budget preacutevu
42 seulement sont livreacutes avec les exigences initiales
GTI515 Automne 2013 JF Couturier 27
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
GTI515 Automne 2013 JF Couturier 28
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
GTI515 Automne 2013 JF Couturier 29
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
GTI515 Automne 2013 JF Couturier 30
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
Une grande proportion de projets TI eacutechouent PourquoiPlusieurs facteurs
Les mauvaises exigences en font partie
Si ccedila va si mal crsquoest qursquoil y a quelque chose qursquoon ne fait pas bien Il faut se remettre en question
GTI515 Automne 2013 JF Couturier 31
Deacutepartement de geacutenie logiciel et des TI
Et maintenant
GTI515 Automne 2013 JF Couturier 32
CHAOS Summary 2009
Deacutepartement de geacutenie logiciel et des TI
Et maintenant
GTI515 Automne 2013 JF Couturier 33
Standish Group 1999
CHAOS Summary 2009
Deacutepartement de geacutenie logiciel et des TI
Finalementhellip
GTI515 Automne 2013 JF Couturier 34
Deacutepartement de geacutenie logiciel et des TI
Reacuteussite Eacutechec
Mais qursquoest-ce qursquoun projet reacuteussi Dans les temps Dans le budget Avec les fonctions preacutevues
GTI515 Automne 2013 JF Couturier 35
Deacutepartement de geacutenie logiciel et des TI
Rappel
Notre domaine est tregraves jeune (70 ans) Geacutenie de la constructionhellip5000 ans
Mais nous progressons tregraves rapidement Pourquoi le geacutenie en TI
Artisanat vs geacutenie (le pif vs la meacutethode)
Acircge du geacutenie logiciel TI - Maturiteacute
Science virtuelle vs Meacutecanique construction
Une tendancehellipDe lrsquoartisanat agrave lrsquoindustrialisation du deacuteveloppement logiciel
GTI515 Automne 2013 JF Couturier 36
Deacutepartement de geacutenie logiciel et des TI
Industrialisation
Vers le milieu du 19e siegravecle Segmenter le travail des individus pour
ne pas ecirctre deacutependant drsquoun artisan Permet une production beaucoup plus
efficace en seacuterie
GTI515 Automne 2013 JF Couturier 37
Deacutepartement de geacutenie logiciel et des TI
Industrialisation
Est-ce que le deacuteveloppement peut-ecirctre industrialiseacuteCertains disent que non que le logiciel agrave
un caractegravere trop creacuteatif
Drsquoautres pensent que les reacutecents progregraves dans le domaine permettent une eacuteventuelle industrialisation dans la production drsquoapplication
GTI515 Automne 2013 JF Couturier 38
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 39
Technologies(OO CBD Services Web SOA
XML AOP DB design patternshellip)
Ingeacutenierie dirigeacutee par les modegraveles
Usines logicielles (Microsoft)Architecture dirigeacutee par les modegraveles (OMG)
Deux applications drsquoun mecircme concept de base
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 40
Techniques de deacuteveloppement assisteacute par ordinateur (Reacutef Software Factories Greenfield J p144)
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Un modegravele tregraves deacutetailleacute beaucoup de code geacuteneacutereacute
CASE Tools (Computer-aided software engineering)
Mal adapteacute au deacuteveloppement agile qui implique souvent des solutions partielles tregraves tocirct dans le cycle de deacuteveloppement
Synchronisation difficile
Eacuteloigneacutee de la plateforme
GTI515 Automne 2013 JF Couturier 41
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Exemple Outils graphiques de modeacutelisation des classes
Plus proche de la plateforme
Code geacuteneacutereacute pour la plateforme
Plus simple
Aide geacuteneacuteralement le deacuteveloppeur agrave voir les deacutependances entre les classes
Il reste beaucoup de code agrave faire agrave la main
Penser agrave coder du SWING Java agrave la mitaine
GTI515 Automne 2013 JF Couturier 42
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Existence drsquoun framework logiciel
On se base sur le framework pour automatiser-compleacuteter la production de certains eacuteleacutements comme les eacuteleacutements graphiques
Abstraction plus eacuteleveacutee
VB6 et ses formulaires
NET Hibernate
Peu drsquoabstractions au niveau du modegravele Classe entiteacute-relation
GTI515 Automne 2013 JF Couturier 43
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Finalement il y a la possibiliteacute drsquoavoir une laquo pile raquo de modegraveles
Drsquoun modegravele agrave lrsquoautre il y a transformation vers un modegravele de plus en plus preacutecis
Approche MDA
Concept de Domain Specific Language
Pour un domaine particulier on creacutee des laquo templates raquo reacuteutilisables
Permets la contribution des experts meacutetiers
GTI515 Automne 2013 JF Couturier 44
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles
GTI515 Automne 2013 JF Couturier 45
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Domain Specific Langage
Par opposition au General purpose language comme UML C++ Java ou C
AvantagesPermets agrave un expert meacutetier de
comprendre et valider un modegravele
InconveacutenientCoucirct Formation Maintenance
GTI515 Automne 2013 JF Couturier 46
httpenwikipediaorgwikiDomain_Specific_Language
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 47
BuzzhellipMDA MDD MDE
Model Driven Architecturemarque de commerce de lrsquoOMG
Model Driven Developmentextension de MDAmarque de commerce de lrsquoOMG
Model Driven Engineeringexpression geacuteneacuterique
Deacutepartement de geacutenie logiciel et des TI
Exemple Agrave partir des speacutecifications des exigences logicielles
Lrsquoacteur saisit la commande contenant
lrsquoadresse de livraison
lrsquoadresse de facturation
Le systegraveme creacutee la commande
Lrsquoacteur saisit un deacutetail de la commande avec
le nom du produit
la quantiteacute demandeacutee
le prix du produit
Le systegraveme creacutee le deacutetail et revient agrave lrsquoeacutetape 3
Lrsquoacteur termine la commande
Le systegraveme ferme la commande
GTI515 Automne 2013 JF Couturier 48
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 49
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Un modegravele (Diagramme de classes UML)
Deacutepartement de geacutenie logiciel et des TI
Model Driven ArchitectureUn scheacutema XML
ltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gt
ltxsdschema xmlnsxsd=httpwww targetNamespace=helliprsaquo
ltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo minOccurs=ldquo0ldquo maxOccurs=ldquounboundedgt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdcomplexType name=ldquoDetailCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoprixldquo type=ldquo xsdfloatldquogt
ltxsdelement name=ldquoquantiteldquo type=ldquo xsdintldquogt
ltxsdelement name=ldquonomProduitldquo type=ldquo xsdstringldquogt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdschemarsaquo
GTI515 Automne 2013 JF Couturier 50
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 51
Des classes Java
public class Commande
private String adresseLivraison
private String adresseFacturation
private Collection detailCommande
hellip
String getAdresseLivraison()
void setAdresseLivraison(String value)
String getAdresseFacturation()
void setAdresseFacturation(String value)
public class DetailCommande
private float prix
private int quantite
private String nomProduit
float getPrix()
void setPrix(float value)
int getQuantite()
void setQuantite(int value)
String getNomProduit()
void setNomProduit(String value)
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 52
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Programmepublic class Commande
private String adresseLivraisonprivate String adresseFacturation
String getAdresseLivraison()void setAdresseLivraison(String value)
String getAdresseFacturation()void setAdresseFacturation(String value)
Scheacutema XMLltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gtltxsdschema xmlnsxsd=httpwww
targetNamespace=helliprsaquoltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo
xsdstringldquogt ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo
Modegravele UML3 repreacutesentationsdes mecircmes exigences
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
Speacutecifications de lrsquoOMG Seacuteparation de la logique meacutetier de
toute plateforme technique Speacutecifications drsquoun langage de
transformation (QVT)
GTI515 Automne 2013 JF Couturier 53
Deacutepartement de geacutenie logiciel et des TI
Concept principal de MDA
Modeacuteliser pour documenter le systegraveme
Modeacuteliser pour construire le systegraveme
GTI515 Automne 2013 JF Couturier 55
Deacutepartement de geacutenie logiciel et des TI
CIM PIM PSM Code CIM
Computing Independant Model
Modegravele du domaine logique meacutetier
PIM Platform Independant Model
Modegravele de conception UML et OCL
PSM Platform Specific Model
NET J2EE
Codehellip
GTI515 Automne 2013 JF Couturier 56
Deacutepartement de geacutenie logiciel et des TI
Les diffeacuterentes eacutetapes
GTI515 Automne 2013 JF Couturier 57
Reacutef the Zachman Framework and the OMGrsquos MDA Business Process Trends Sept 2003
Deacutepartement de geacutenie logiciel et des TI
MDA et Gartner
GTI515 Automne 2013 JF Couturier 58
Gartner Hype Cycle 2008
Deacutepartement de geacutenie logiciel et des TI
Eacutetude de cas
Lecture de la discussion sur MDA Questions
Quels sont les arguments pour
Quels sont les arguments contre
Vos commentaires sur lrsquoarticle
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 59
Deacutepartement de geacutenie logiciel et des TI
Impact
Rocircle du deacuteveloppeur minimiseacute puisqursquoil nrsquointerpregravete plus le modegravele les regravegles de transformation srsquoen chargent
Modegraveles exportables drsquoune plateforme agrave un autre
Plus de 100 articles de recherche sur IEEE entre 2008 et 2009
Maishellip
GTI515 Automne 2013 JF Couturier 60
Deacutepartement de geacutenie logiciel et des TI
Impact
Est-ce applicable au monde agile
Le cycle de modeacutelisation est-il compatible avec le deacuteveloppement iteacuteratif
Est-ce qursquoil y a suffisamment de ressources hautement qualifieacutees pour reacutealiser ce type de projet
Pouvez-vous les former Pouvez-vous les conserver
Produire 80 du code et vous laisser les derniers 20 plus difficileshellip
Comment inteacutegrer les tests
GTI515 Automne 2013 JF Couturier 61
Scott Ambler Enterprise Unified Process p 191
Deacutepartement de geacutenie logiciel et des TI
Impact
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 62
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 63
Domaine
Exigences
Analyse
Conception
Reacutealisation
MDA
PIM
PSM
Modegravele des Processus drsquoaffaires
Modegravele drsquoanalyse du systegraveme
CIM
Modegravele des Cas drsquoutilisation
Modegravele de conception du systegraveme
Les modegraveles du cycle de deacuteveloppement de logiciels
Code
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 64
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 65
Deacutepartement de geacutenie logiciel et des TI
Exemple
GTI515 Automne 2013 JF Couturier 66
httpwwwibmcomdeveloperworksrationallibrary3100html
Deacutepartement de geacutenie logiciel et des TI
Ressources
Site de lOMG MDA Article drsquoIBM sur MDA Discussion sur MDA Wiki MDA Wiki QVT
GTI515 Automne 2013 JF Couturier 67
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 68
Laboratoire 1
Choix du sujet Validation de la porteacutee
Suffisamment long Plusieurs interactions humaines machines Reacutealisable dans une session
Chargeacute de laboratoire Oleg Litvinski Premier laboratoire lundi 7 mai
Deacutepartement de geacutenie logiciel et des TI
Le document de vision (RUP)
Une base de discussion et drsquoaccord parmi les intervenants du projet
Une description de lrsquoapplication en geacuteneacuteral incluant la description du marcheacute cible les clients les utilisateurs du systegraveme les problegravemes agrave reacutesoudre et les caracteacuteristiques de lrsquoapplication
GTI515 Automne 2013 JF Couturier 69
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 70
Requirements Management with Use Cases v20010300
Copyright copy 1998 2001 Rational Software all rights reserved
2
Problem
Solution Space
Problem Space
Needs
Features
SoftwareRequirements
Test Procedures Design User
Docs
The The Product Product To Be To Be BuiltBuilt
Traceability
Deacutepartement de geacutenie logiciel et des TI
Exemples de caracteacuteristiques (feature)
Domaine drsquoapplication Exemple de caracteacuteristique
Systegraveme de commande drsquoascenseur
Commande manuelle des portes durant une urgence de feu
Systegraveme de commande drsquoinventaire
Fournir un statut reacutecent de tous les items reacutepertorieacutes
Systegraveme de suivi de deacutefauts Fournir des laquo donneacutees raquo sur les tendances pour eacutevaluer la
qualiteacute
Systegraveme de paie Rapports par cateacutegories des deacuteductions remis agrave lrsquoimpocirct
Systegraveme de commande drsquoarmes
Minimum de deux confirmations indeacutependantes drsquoautorisation
drsquoattaque exigeacutee
GTI515 Automne 2013 JF Couturier 71
Deacutepartement de geacutenie logiciel et des TI
Niveau de deacutetail des caracteacuteristiques Pour tout nouveau systegraveme ou pour
une ameacutelioration majeure agrave un systegraveme existant il est recommandeacute de garder un niveau drsquoabstraction assez eacuteleveacute de sorte agrave avoir un maximum de caracteacuteristiques compris entre 25-99 et de preacutefeacuterence moins de 50
GTI515 Automne 2013 JF Couturier 72
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Statut Suit le progregraves
Exemples Proposeacute approuveacute incorporeacute etc
PrioriteacuteBeacuteneacutefice
Les caracteacuteristiques ne sont pas agrave prioriteacutes eacutegales ou geacutenegraverent des beacuteneacutefices eacutegaux
Exemple critiques importantes optionnelle
Effort Estimation du nombre de personnessemaines lignes de code points de fonction COSMIC_FFP
Risque La probabiliteacute que la caracteacuteristique aille causer un eacuteveacutenement indeacutesirable tel que le deacutepassement du budget ou des deacutelais ou mecircme lrsquoannulation du projet
GTI515 Automne 2013 JF Couturier 73
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Stabiliteacute La probabiliteacute que la caracteacuteristique elle-mecircme ou sa compreacutehension par lrsquoeacutequipe de deacuteveloppement changera
Mise en application
Documenter la version preacutevue pour laquelle la caracteacuteristique sera incorporeacutee
Assigneacutee agrave Deacutesigner lrsquoeacutequipe responsable de la caracteacuteristique
Raison Lrsquoorigine de la requecircte de la caracteacuteristique
GTI515 Automne 2013 JF Couturier 74
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 75
Deacutepartement de geacutenie logiciel et des TI
Reacutedaction du document de vision une description concise de tout ce qui est important au
produit ou agrave lrsquoapplication eacutecrit avec un niveau de deacutetails dans un langage lisible et
compreacutehensible par les intervenants du projet
Document de 15 agrave 20 pages
GTI515 Automne 2013 JF Couturier 76
Deacutepartement de geacutenie logiciel et des TI
Exemple le cas ACS
GTI515 Automne 2013 JF Couturier 77
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 78
Deacutepartement de geacutenie logiciel et des TI
Exemple de problegravemesle cas ACS
Controcircle drsquoune large gamme de mateacuteriels
Utilisation compliqueacutee Difficulteacutes de programmation Disponibiliteacute du mateacuteriel Risque de mauvaise utilisation
GTI515 Automne 2013 JF Couturier 79
Deacutepartement de geacutenie logiciel et des TI
Exemple de besoinsle cas ACS
AutomatiserLa distribution de fertilisantLa distribution de nourritureLa dureacutee de lrsquoeacuteclairage
Commander lrsquoopeacuteration des appareils Reacuteguler
le niveau et la dureteacute de lrsquoeauLa tempeacuterature
GTI515 Automne 2013 JF Couturier 80
Deacutepartement de geacutenie logiciel et des TI
Exemple de caracteacuteristiquesle cas ACS
Deacutemarrage automatique du systegraveme Programmation conserveacutee en cas de
panne drsquoalimentation Deacutetection automatique des modules Facile agrave programmer et agrave utiliser
Exigence non fonctionnelle
GTI515 Automne 2013 JF Couturier 81
Deacutepartement de geacutenie logiciel et des TI
Critegraveres drsquoeacutevaluation
Respect de lrsquoesprit du document
En tant qursquointervenant externe est-ce que je comprends bien
Respect de la forme du gabarit
Qualiteacute du franccedilais
Document de calibre professionnel que lrsquoon pourrait remettre agrave un dirigeant
GTI515 Automne 2013 JF Couturier 82
Deacutepartement de geacutenie logiciel et des TI
Grille drsquoeacutevaluation (sur 100)
Agrave venirhellip
GTI515 Automne 2013 JF Couturier 83
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 84
Prochain cours
La modeacutelisation des processus drsquoaffaires Le diagramme drsquoactiviteacute Le diagnostic des processus drsquoaffaires existant
Lectures Lrsquoutilisation drsquoUML Chapitre sur les diagrammes drsquoactiviteacutes dans Larman Lecture sur MDA Voir site Web du cours
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 85
Questions
- Systegravemes drsquoinformation dans les entreprises (GTI515)
- Plan du cours 1
- Qui suis-je JF Couturier
- Qui suis-je Eacutetudiant(e)
- Plan du cours 1 (2)
- Objectifs du programme
- Ingeacutenieur
- Programme GTI
- Geacutenie des TI
- Cours de speacutecialiteacutes GTI
- Objectif du cours
- Vue drsquoensemble du cours
- Lectures et reacutefeacuterences
- Regravegles du jeu
- QUIZ
- Plan du cours 1 (3)
- Plan de cours
- Laboratoires ndash GTI515
- Peacutenaliteacutes de retard
- Plagiat
- Plan du cours 1 (4)
- Les tendances dans le deacuteveloppement des systegravemes drsquoinformation
- UML - Historique
- Pourquoi modeacuteliser
- La modeacutelisation dans les entreprises
- Quelques chiffres
- Quelques chiffres (2)
- Quelques chiffres (3)
- Quelques chiffres (4)
- Quelques chiffres (5)
- Et maintenant
- Et maintenant (2)
- Finalementhellip
- Reacuteussite Eacutechec
- Rappel
- Industrialisation
- Industrialisation (2)
- Slide 39
- Slide 40
- Usines logicielles (S Factory)
- Usines logicielles (S Factory) (2)
- Usines logicielles (S Factory) (3)
- Usines logicielles (S Factory) (4)
- Usines logicielles
- Domain Specific Langage
- BuzzhellipMDA MDD MDE
- Exemple
- Model Driven Architecture
- Model Driven Architecture (2)
- Model Driven Architecture (3)
- Model Driven Architecture (4)
- Model Driven Architecture (5)
- Concept principal de MDA
- CIM PIM PSM Code
- Les diffeacuterentes eacutetapes
- MDA et Gartner
- Eacutetude de cas
- Impact
- Impact (2)
- Impact (3)
- Slide 63
- Slide 64
- Slide 65
- Exemple (2)
- Ressources
- Laboratoire 1
- Le document de vision (RUP)
- Slide 70
- Exemples de caracteacuteristiques (feature)
- Niveau de deacutetail des caracteacuteristiques
- Attributs des caracteacuteristiques
- Attributs des caracteacuteristiques
- Slide 75
- Reacutedaction du document de vision
- Exemple le cas ACS
- Slide 78
- Exemple de problegravemes le cas ACS
- Exemple de besoins le cas ACS
- Exemple de caracteacuteristiques le cas ACS
- Critegraveres drsquoeacutevaluation
- Grille drsquoeacutevaluation (sur 100)
- Prochain cours
- Questions
-
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 3
Qui suis-je JF Couturier 12 ans drsquoexpeacuterience (programmeur analyste consultant eacutetudianthellip) DEC FX-Garneau 2001 BAC en TI 2008 Maicirctrise en 2011 Connaissances theacuteoriques et pratiques en planification informatique et
modeacutelisation drsquoentreprise Modeacutelisation de base de donneacutees programmation Web Reporting Notation BPMN et UML Activiteacutes actuelles
Directeur des systegravemes (Analyse fonctionnelle PDSI Budget gestion des TI)
Maicirctrise avec meacutemoire - Meacutethodologie de deacuteveloppement agile gouvernance et SOA
Domaine drsquoaffaires Santeacute immobilier financier et comptable deacuteveloppement web gouvernementalhellip
Chargeacute de laboratoire GTI-210 drsquohiver 2007 agrave automne 2009 Chargeacute de cours GTI-210 drsquoautomne 2008 agrave automne 2009 Chargeacute de cours de GTI-515 depuis eacuteteacute 2009 (9e fois)
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 4
Qui suis-je Eacutetudiant(e) Profil acadeacutemique
Cours suivis
Cours de la session
Expeacuterience en industrie Anneacutees drsquoexpeacuterience types de logiciels postes
occupeacutes sujets du cours domaine drsquoaffaires (ex bancaire teacuteleacutecom jeux videacuteo deacuteveloppement web
hellip)
Attentes face au cours
Inteacuterecirct de carriegravere
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 5
Plan du cours 1
Qui suis-jeProfesseur Assistant Eacutetudiants
Positionnement du cours dans le programme de geacutenie des TI
Preacutesentation du plan de cours Les processus drsquoaffaires Lrsquoanalyse du domaine et la modeacutelisation Lrsquoarchitecture applicative La production et la maintenance
Deacutepartement de geacutenie logiciel et des TI
Objectifs du programmeProgramme de GTI
Former des ingeacutenieur(e)s
Geacuteneacuteralistes en systegravemes logiciels et multimeacutedias
Ayant une formation optimiseacutee pour un environnement drsquoaffaires transactionnel ougrave les technologies de lrsquoInternet sont omnipreacutesentes
Question Qursquoest-ce qursquoun ingeacutenieur pour vous
Qursquoest-ce qursquoun ingeacutenieur en GTIGTI515 Automne 2013 JF Couturier 6
Deacutepartement de geacutenie logiciel et des TI
Ingeacutenieur
Personne geacuteneacuteralement diplocircmeacutee que sa formation scientifique et technique rend apte agrave concevoir et agrave diriger certains travaux agrave participer agrave certaines recherches [Wiki]
Lexercice de la profession dingeacutenieur consiste agrave faire pour le compte dautrui lun ou lautre des actes suivants
a) Donner des consultations et des avis
b) Faire des mesurages des traceacutes preacuteparer des rapports calculs eacutetudes dessins plans devis cahiers des charges
c) Inspecter ou surveiller les travaux
[OIQ]
GTI515 Automne 2013 JF Couturier 7
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 8
Programme GTI
Disciplines couvertes Eacuteleacutements de geacutenie logiciel Ingeacutenierie des systegravemes informatiques Technologies multimeacutedias Conception et gestion de reacuteseaux informatiques Technologies de lrsquoInternet Conception de systegravemes de commerce eacutelectronique
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 9
Geacutenie logiciel
Geacuteniedes
systegravemes
Systegravemesmultimeacutedias
Reacuteseautique et
Internet
Cours geacuteneacuteraux
Stages et cours inteacutegrateurs
GTI210
Seacutecuriteacute des systegravemes
Geacutenie des TI
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 10
Cours de speacutecialiteacutes GTI GTI210 Introduction au geacutenie des TI
GTI510 Gestion de projets et assurance de la qualiteacute
GTI515 Systegravemes dinformation dans les entreprises
GTI525 Technologies de deacuteveloppement Internet
GTI710 Commerce eacutelectronique
GTI727 Progiciel de gestion inteacutegreacute
GTI660 Bases de donneacutees multimeacutedias
GTI310 Structures de donneacutees multimeacutedias
GTI410 Application des techniques numeacuteriques en graphisme et imagerie
GTI420 Infographie avanceacutee
GTI664 Applications multimeacutedias et Internet
GTI530 Aspects opeacuterationnels des reacuteseaux
GTI719 Seacutecuriteacute des reacuteseaux dentreprise
GTI777 Conception de services de reacuteseautique et de messagerie
GTI780 Sujets speacuteciaux en technologie de linformation
GTI790 Projet synthegravese en geacutenie des technologies de linformation
Deacutepartement de geacutenie logiciel et des TI
Objectif du cours
Analyse et modeacutelisation des processus drsquoaffaires Forces et faiblesses des processus drsquoaffaires
Speacutecifications des exigences drsquoun systegraveme drsquoinformation Ameacutelioration de lrsquoefficaciteacute des processus drsquoaffaires
Eacutetude des eacutetapes du cycle de transformation drsquoun systegraveme drsquoinformation automatiseacute reacutepondant aux exigences
Analyse maintenance opeacuteration drsquoun systegraveme drsquoinformation
Agrave la fin de ce cours lrsquoeacutetudiant sera en mesure dexpliquer le fonctionnement drsquoun systegraveme drsquoinformation reacuteel drsquoen eacutevaluer la qualiteacute et la pertinence et drsquoen diriger son adaptation agrave de nouvelles exigences de participer activement aux diffeacuterentes phases de lrsquoanalyse du systegraveme drsquoen controcircler la mise en place et lrsquoexploitation
Seacuteparation des responsabiliteacutes entre LOG-210 et GTIMTI-515
GTI515 Automne 2013 JF Couturier 12
Inspireacute de httpwwwetsmtlcazone2fichedecoursfichedecoursaspnumerodefiche=GTI515
Deacutepartement de geacutenie logiciel et des TI
Vue drsquoensemble du cours Analyse et modeacutelisation
Diagrammes drsquoactiviteacute
Modegravele du domaine et cas drsquoutilisation
Cas de test
Archeacutetypes drsquoanalyse ndash Modeacutelisation en couleur
Diagrammes de robustesse
BPMN et DFD
Gestion des TI
Cadre drsquoarchitecture drsquoentreprise et TOGAF
Gestion des services et ITIL V3
Maintenance logicielle et S3M
Gestion des applications et ASL (Si on a le temps)
GTI515 Automne 2013 JF Couturier 13
Deacutepartement de geacutenie logiciel et des TI
Lectures et reacutefeacuterences Sur le site Web du cours
Notes de coursArticlesEacutetudes de cas
Wikipeacutedia httpwwwwikipediaorg Comment ccedila marche
httpwwwcommentcamarchenet
GTI515 Automne 2013 JF Couturier 14
Deacutepartement de geacutenie logiciel et des TI
Regravegles du jeu La ponctualiteacute Tout le monde a la parole mais un seul agrave la
fois Un effort reacuteparti dans le temps Prendre des notes Faire les lectures demandeacutees Je nrsquoai pas reacuteponse agrave tout soyez indulgent Parfois je parle vite arrecirctez-moi La reacutepartition des coteshellipE agrave A+
GTI515 Automne 2013 JF Couturier 15
Deacutepartement de geacutenie logiciel et des TI
QUIZ
Porte sur toute la matiegravere preacutesenteacutee en cours (cumulatif)
Commence agrave 18 h 20 minutes 25 de la note chacun Cours 3 5 10 et 12
GTI515 Automne 2013 JF Couturier 16
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 17
Plan du cours 1
Qui suis-jeProfesseur Assistant Eacutetudiants
Positionnement du cours dans le programme de geacutenie des TI
Preacutesentation du plan de cours Les processus drsquoaffaires Lrsquoanalyse du domaine et la modeacutelisation Lrsquoarchitecture applicative La production et la maintenance
Deacutepartement de geacutenie logiciel et des TI
Plan de cours
Plan de GTI-515 Parce que le cours vit une refonte le
plan de cours peut connaicirctre quelques modifications
GTI515 Automne 2013 JF Couturier 18
Deacutepartement de geacutenie logiciel et des TI
Laboratoires ndash GTI515
Eacutequipes de 4 Eacutequipes formeacutees lors de la premiegravere seacuteance de laboratoire Sujet pour les laboratoires confirmeacute par le professeur et le chargeacute de
laboratoire lors de la premiegravere seacuteance de laboratoire Production des arteacutefacts des disciplines de RUP
Document de vision
Diagrammes drsquoactiviteacute et BPMN
Modegravele du domaine et archeacutetypes
Diagramme des cas drsquoutilisation cas drsquoutilisation et diagramme de robustesse
SRS
Controcircle de la qualiteacute par des inspection par les pairs Outils Visio ou Visual Paradigm
GTI515 Automne 2013 JF Couturier 19
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 20
Peacutenaliteacutes de retard
lt 24 hres 20 24 hres gt et lt48 hres 40 48 hres gt et lt72 hres 60 gt72 hres 100
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 21
Plagiat
Lire le Chapitre 10 Plagiat et fraude du Regraveglement des eacutetudes de 1er cycle
Sanction minimale demandeacutee pour un laboratoire copieacute ou autres cas de plagiat ou fraude eacutechec du cours
Autre cas Copie drsquoun livre document ou document provenant
drsquoInternet sans citer la source
Reacuteutilisation de ses travaux drsquoun autre cours sans autorisation
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 22
Plan du cours 1
Qui suis-jeProfesseur Assistant Eacutetudiants
Positionnement du cours dans le programme de geacutenie des TI
Preacutesentation du plan de cours Lrsquoarchitecture dirigeacutee par les modegraveles
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 23
Les tendances dans le deacuteveloppementdes systegravemes drsquoinformation
Modeacutelisation UML2 BPMN MDA (Model Driven Architecture) SOA (agrave lrsquoaide des Services Web) Domain Specific Language
Les frameworks autour de Eclipse NetBean Visual Studio
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 24
UML - Historique
Ref Using the UML to Describe Design Patterns Diane Strode
Deacutepartement de geacutenie logiciel et des TI
Pourquoi modeacuteliser
Un modegravele est une abstraction du monde concret qui facilite sa compreacutehension
Un modegravele peut ecirctre sous forme graphique etou textuelle
Srsquoil est sous forme graphique il doit ecirctre compleacuteteacute par une preacutesentation textuelle
GTI515 Automne 2013 JF Couturier 25
Deacutepartement de geacutenie logiciel et des TI
La modeacutelisation dans les entreprises
Une perte de temps pour les non-informaticiens et mecircme les informaticiens
Une eacutevolution ineacuteluctable avec les nouveaux outils
Modeacuteliser = precirccher dans le deacutesert Cela deacutepend de la culture de votre deacutepartement
GTI515 Automne 2013 JF Couturier 26
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
256 milliards en projet logiciel aux US16 sont compleacuteteacutes en temps et dans
les coucircts
31 sont annuleacutes (81G$)
53 deacutepassent le budget preacutevu
42 seulement sont livreacutes avec les exigences initiales
GTI515 Automne 2013 JF Couturier 27
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
GTI515 Automne 2013 JF Couturier 28
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
GTI515 Automne 2013 JF Couturier 29
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
GTI515 Automne 2013 JF Couturier 30
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
Une grande proportion de projets TI eacutechouent PourquoiPlusieurs facteurs
Les mauvaises exigences en font partie
Si ccedila va si mal crsquoest qursquoil y a quelque chose qursquoon ne fait pas bien Il faut se remettre en question
GTI515 Automne 2013 JF Couturier 31
Deacutepartement de geacutenie logiciel et des TI
Et maintenant
GTI515 Automne 2013 JF Couturier 32
CHAOS Summary 2009
Deacutepartement de geacutenie logiciel et des TI
Et maintenant
GTI515 Automne 2013 JF Couturier 33
Standish Group 1999
CHAOS Summary 2009
Deacutepartement de geacutenie logiciel et des TI
Finalementhellip
GTI515 Automne 2013 JF Couturier 34
Deacutepartement de geacutenie logiciel et des TI
Reacuteussite Eacutechec
Mais qursquoest-ce qursquoun projet reacuteussi Dans les temps Dans le budget Avec les fonctions preacutevues
GTI515 Automne 2013 JF Couturier 35
Deacutepartement de geacutenie logiciel et des TI
Rappel
Notre domaine est tregraves jeune (70 ans) Geacutenie de la constructionhellip5000 ans
Mais nous progressons tregraves rapidement Pourquoi le geacutenie en TI
Artisanat vs geacutenie (le pif vs la meacutethode)
Acircge du geacutenie logiciel TI - Maturiteacute
Science virtuelle vs Meacutecanique construction
Une tendancehellipDe lrsquoartisanat agrave lrsquoindustrialisation du deacuteveloppement logiciel
GTI515 Automne 2013 JF Couturier 36
Deacutepartement de geacutenie logiciel et des TI
Industrialisation
Vers le milieu du 19e siegravecle Segmenter le travail des individus pour
ne pas ecirctre deacutependant drsquoun artisan Permet une production beaucoup plus
efficace en seacuterie
GTI515 Automne 2013 JF Couturier 37
Deacutepartement de geacutenie logiciel et des TI
Industrialisation
Est-ce que le deacuteveloppement peut-ecirctre industrialiseacuteCertains disent que non que le logiciel agrave
un caractegravere trop creacuteatif
Drsquoautres pensent que les reacutecents progregraves dans le domaine permettent une eacuteventuelle industrialisation dans la production drsquoapplication
GTI515 Automne 2013 JF Couturier 38
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 39
Technologies(OO CBD Services Web SOA
XML AOP DB design patternshellip)
Ingeacutenierie dirigeacutee par les modegraveles
Usines logicielles (Microsoft)Architecture dirigeacutee par les modegraveles (OMG)
Deux applications drsquoun mecircme concept de base
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 40
Techniques de deacuteveloppement assisteacute par ordinateur (Reacutef Software Factories Greenfield J p144)
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Un modegravele tregraves deacutetailleacute beaucoup de code geacuteneacutereacute
CASE Tools (Computer-aided software engineering)
Mal adapteacute au deacuteveloppement agile qui implique souvent des solutions partielles tregraves tocirct dans le cycle de deacuteveloppement
Synchronisation difficile
Eacuteloigneacutee de la plateforme
GTI515 Automne 2013 JF Couturier 41
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Exemple Outils graphiques de modeacutelisation des classes
Plus proche de la plateforme
Code geacuteneacutereacute pour la plateforme
Plus simple
Aide geacuteneacuteralement le deacuteveloppeur agrave voir les deacutependances entre les classes
Il reste beaucoup de code agrave faire agrave la main
Penser agrave coder du SWING Java agrave la mitaine
GTI515 Automne 2013 JF Couturier 42
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Existence drsquoun framework logiciel
On se base sur le framework pour automatiser-compleacuteter la production de certains eacuteleacutements comme les eacuteleacutements graphiques
Abstraction plus eacuteleveacutee
VB6 et ses formulaires
NET Hibernate
Peu drsquoabstractions au niveau du modegravele Classe entiteacute-relation
GTI515 Automne 2013 JF Couturier 43
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Finalement il y a la possibiliteacute drsquoavoir une laquo pile raquo de modegraveles
Drsquoun modegravele agrave lrsquoautre il y a transformation vers un modegravele de plus en plus preacutecis
Approche MDA
Concept de Domain Specific Language
Pour un domaine particulier on creacutee des laquo templates raquo reacuteutilisables
Permets la contribution des experts meacutetiers
GTI515 Automne 2013 JF Couturier 44
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles
GTI515 Automne 2013 JF Couturier 45
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Domain Specific Langage
Par opposition au General purpose language comme UML C++ Java ou C
AvantagesPermets agrave un expert meacutetier de
comprendre et valider un modegravele
InconveacutenientCoucirct Formation Maintenance
GTI515 Automne 2013 JF Couturier 46
httpenwikipediaorgwikiDomain_Specific_Language
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 47
BuzzhellipMDA MDD MDE
Model Driven Architecturemarque de commerce de lrsquoOMG
Model Driven Developmentextension de MDAmarque de commerce de lrsquoOMG
Model Driven Engineeringexpression geacuteneacuterique
Deacutepartement de geacutenie logiciel et des TI
Exemple Agrave partir des speacutecifications des exigences logicielles
Lrsquoacteur saisit la commande contenant
lrsquoadresse de livraison
lrsquoadresse de facturation
Le systegraveme creacutee la commande
Lrsquoacteur saisit un deacutetail de la commande avec
le nom du produit
la quantiteacute demandeacutee
le prix du produit
Le systegraveme creacutee le deacutetail et revient agrave lrsquoeacutetape 3
Lrsquoacteur termine la commande
Le systegraveme ferme la commande
GTI515 Automne 2013 JF Couturier 48
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 49
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Un modegravele (Diagramme de classes UML)
Deacutepartement de geacutenie logiciel et des TI
Model Driven ArchitectureUn scheacutema XML
ltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gt
ltxsdschema xmlnsxsd=httpwww targetNamespace=helliprsaquo
ltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo minOccurs=ldquo0ldquo maxOccurs=ldquounboundedgt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdcomplexType name=ldquoDetailCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoprixldquo type=ldquo xsdfloatldquogt
ltxsdelement name=ldquoquantiteldquo type=ldquo xsdintldquogt
ltxsdelement name=ldquonomProduitldquo type=ldquo xsdstringldquogt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdschemarsaquo
GTI515 Automne 2013 JF Couturier 50
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 51
Des classes Java
public class Commande
private String adresseLivraison
private String adresseFacturation
private Collection detailCommande
hellip
String getAdresseLivraison()
void setAdresseLivraison(String value)
String getAdresseFacturation()
void setAdresseFacturation(String value)
public class DetailCommande
private float prix
private int quantite
private String nomProduit
float getPrix()
void setPrix(float value)
int getQuantite()
void setQuantite(int value)
String getNomProduit()
void setNomProduit(String value)
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 52
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Programmepublic class Commande
private String adresseLivraisonprivate String adresseFacturation
String getAdresseLivraison()void setAdresseLivraison(String value)
String getAdresseFacturation()void setAdresseFacturation(String value)
Scheacutema XMLltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gtltxsdschema xmlnsxsd=httpwww
targetNamespace=helliprsaquoltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo
xsdstringldquogt ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo
Modegravele UML3 repreacutesentationsdes mecircmes exigences
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
Speacutecifications de lrsquoOMG Seacuteparation de la logique meacutetier de
toute plateforme technique Speacutecifications drsquoun langage de
transformation (QVT)
GTI515 Automne 2013 JF Couturier 53
Deacutepartement de geacutenie logiciel et des TI
Concept principal de MDA
Modeacuteliser pour documenter le systegraveme
Modeacuteliser pour construire le systegraveme
GTI515 Automne 2013 JF Couturier 55
Deacutepartement de geacutenie logiciel et des TI
CIM PIM PSM Code CIM
Computing Independant Model
Modegravele du domaine logique meacutetier
PIM Platform Independant Model
Modegravele de conception UML et OCL
PSM Platform Specific Model
NET J2EE
Codehellip
GTI515 Automne 2013 JF Couturier 56
Deacutepartement de geacutenie logiciel et des TI
Les diffeacuterentes eacutetapes
GTI515 Automne 2013 JF Couturier 57
Reacutef the Zachman Framework and the OMGrsquos MDA Business Process Trends Sept 2003
Deacutepartement de geacutenie logiciel et des TI
MDA et Gartner
GTI515 Automne 2013 JF Couturier 58
Gartner Hype Cycle 2008
Deacutepartement de geacutenie logiciel et des TI
Eacutetude de cas
Lecture de la discussion sur MDA Questions
Quels sont les arguments pour
Quels sont les arguments contre
Vos commentaires sur lrsquoarticle
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 59
Deacutepartement de geacutenie logiciel et des TI
Impact
Rocircle du deacuteveloppeur minimiseacute puisqursquoil nrsquointerpregravete plus le modegravele les regravegles de transformation srsquoen chargent
Modegraveles exportables drsquoune plateforme agrave un autre
Plus de 100 articles de recherche sur IEEE entre 2008 et 2009
Maishellip
GTI515 Automne 2013 JF Couturier 60
Deacutepartement de geacutenie logiciel et des TI
Impact
Est-ce applicable au monde agile
Le cycle de modeacutelisation est-il compatible avec le deacuteveloppement iteacuteratif
Est-ce qursquoil y a suffisamment de ressources hautement qualifieacutees pour reacutealiser ce type de projet
Pouvez-vous les former Pouvez-vous les conserver
Produire 80 du code et vous laisser les derniers 20 plus difficileshellip
Comment inteacutegrer les tests
GTI515 Automne 2013 JF Couturier 61
Scott Ambler Enterprise Unified Process p 191
Deacutepartement de geacutenie logiciel et des TI
Impact
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 62
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 63
Domaine
Exigences
Analyse
Conception
Reacutealisation
MDA
PIM
PSM
Modegravele des Processus drsquoaffaires
Modegravele drsquoanalyse du systegraveme
CIM
Modegravele des Cas drsquoutilisation
Modegravele de conception du systegraveme
Les modegraveles du cycle de deacuteveloppement de logiciels
Code
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 64
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 65
Deacutepartement de geacutenie logiciel et des TI
Exemple
GTI515 Automne 2013 JF Couturier 66
httpwwwibmcomdeveloperworksrationallibrary3100html
Deacutepartement de geacutenie logiciel et des TI
Ressources
Site de lOMG MDA Article drsquoIBM sur MDA Discussion sur MDA Wiki MDA Wiki QVT
GTI515 Automne 2013 JF Couturier 67
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 68
Laboratoire 1
Choix du sujet Validation de la porteacutee
Suffisamment long Plusieurs interactions humaines machines Reacutealisable dans une session
Chargeacute de laboratoire Oleg Litvinski Premier laboratoire lundi 7 mai
Deacutepartement de geacutenie logiciel et des TI
Le document de vision (RUP)
Une base de discussion et drsquoaccord parmi les intervenants du projet
Une description de lrsquoapplication en geacuteneacuteral incluant la description du marcheacute cible les clients les utilisateurs du systegraveme les problegravemes agrave reacutesoudre et les caracteacuteristiques de lrsquoapplication
GTI515 Automne 2013 JF Couturier 69
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 70
Requirements Management with Use Cases v20010300
Copyright copy 1998 2001 Rational Software all rights reserved
2
Problem
Solution Space
Problem Space
Needs
Features
SoftwareRequirements
Test Procedures Design User
Docs
The The Product Product To Be To Be BuiltBuilt
Traceability
Deacutepartement de geacutenie logiciel et des TI
Exemples de caracteacuteristiques (feature)
Domaine drsquoapplication Exemple de caracteacuteristique
Systegraveme de commande drsquoascenseur
Commande manuelle des portes durant une urgence de feu
Systegraveme de commande drsquoinventaire
Fournir un statut reacutecent de tous les items reacutepertorieacutes
Systegraveme de suivi de deacutefauts Fournir des laquo donneacutees raquo sur les tendances pour eacutevaluer la
qualiteacute
Systegraveme de paie Rapports par cateacutegories des deacuteductions remis agrave lrsquoimpocirct
Systegraveme de commande drsquoarmes
Minimum de deux confirmations indeacutependantes drsquoautorisation
drsquoattaque exigeacutee
GTI515 Automne 2013 JF Couturier 71
Deacutepartement de geacutenie logiciel et des TI
Niveau de deacutetail des caracteacuteristiques Pour tout nouveau systegraveme ou pour
une ameacutelioration majeure agrave un systegraveme existant il est recommandeacute de garder un niveau drsquoabstraction assez eacuteleveacute de sorte agrave avoir un maximum de caracteacuteristiques compris entre 25-99 et de preacutefeacuterence moins de 50
GTI515 Automne 2013 JF Couturier 72
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Statut Suit le progregraves
Exemples Proposeacute approuveacute incorporeacute etc
PrioriteacuteBeacuteneacutefice
Les caracteacuteristiques ne sont pas agrave prioriteacutes eacutegales ou geacutenegraverent des beacuteneacutefices eacutegaux
Exemple critiques importantes optionnelle
Effort Estimation du nombre de personnessemaines lignes de code points de fonction COSMIC_FFP
Risque La probabiliteacute que la caracteacuteristique aille causer un eacuteveacutenement indeacutesirable tel que le deacutepassement du budget ou des deacutelais ou mecircme lrsquoannulation du projet
GTI515 Automne 2013 JF Couturier 73
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Stabiliteacute La probabiliteacute que la caracteacuteristique elle-mecircme ou sa compreacutehension par lrsquoeacutequipe de deacuteveloppement changera
Mise en application
Documenter la version preacutevue pour laquelle la caracteacuteristique sera incorporeacutee
Assigneacutee agrave Deacutesigner lrsquoeacutequipe responsable de la caracteacuteristique
Raison Lrsquoorigine de la requecircte de la caracteacuteristique
GTI515 Automne 2013 JF Couturier 74
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 75
Deacutepartement de geacutenie logiciel et des TI
Reacutedaction du document de vision une description concise de tout ce qui est important au
produit ou agrave lrsquoapplication eacutecrit avec un niveau de deacutetails dans un langage lisible et
compreacutehensible par les intervenants du projet
Document de 15 agrave 20 pages
GTI515 Automne 2013 JF Couturier 76
Deacutepartement de geacutenie logiciel et des TI
Exemple le cas ACS
GTI515 Automne 2013 JF Couturier 77
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 78
Deacutepartement de geacutenie logiciel et des TI
Exemple de problegravemesle cas ACS
Controcircle drsquoune large gamme de mateacuteriels
Utilisation compliqueacutee Difficulteacutes de programmation Disponibiliteacute du mateacuteriel Risque de mauvaise utilisation
GTI515 Automne 2013 JF Couturier 79
Deacutepartement de geacutenie logiciel et des TI
Exemple de besoinsle cas ACS
AutomatiserLa distribution de fertilisantLa distribution de nourritureLa dureacutee de lrsquoeacuteclairage
Commander lrsquoopeacuteration des appareils Reacuteguler
le niveau et la dureteacute de lrsquoeauLa tempeacuterature
GTI515 Automne 2013 JF Couturier 80
Deacutepartement de geacutenie logiciel et des TI
Exemple de caracteacuteristiquesle cas ACS
Deacutemarrage automatique du systegraveme Programmation conserveacutee en cas de
panne drsquoalimentation Deacutetection automatique des modules Facile agrave programmer et agrave utiliser
Exigence non fonctionnelle
GTI515 Automne 2013 JF Couturier 81
Deacutepartement de geacutenie logiciel et des TI
Critegraveres drsquoeacutevaluation
Respect de lrsquoesprit du document
En tant qursquointervenant externe est-ce que je comprends bien
Respect de la forme du gabarit
Qualiteacute du franccedilais
Document de calibre professionnel que lrsquoon pourrait remettre agrave un dirigeant
GTI515 Automne 2013 JF Couturier 82
Deacutepartement de geacutenie logiciel et des TI
Grille drsquoeacutevaluation (sur 100)
Agrave venirhellip
GTI515 Automne 2013 JF Couturier 83
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 84
Prochain cours
La modeacutelisation des processus drsquoaffaires Le diagramme drsquoactiviteacute Le diagnostic des processus drsquoaffaires existant
Lectures Lrsquoutilisation drsquoUML Chapitre sur les diagrammes drsquoactiviteacutes dans Larman Lecture sur MDA Voir site Web du cours
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 85
Questions
- Systegravemes drsquoinformation dans les entreprises (GTI515)
- Plan du cours 1
- Qui suis-je JF Couturier
- Qui suis-je Eacutetudiant(e)
- Plan du cours 1 (2)
- Objectifs du programme
- Ingeacutenieur
- Programme GTI
- Geacutenie des TI
- Cours de speacutecialiteacutes GTI
- Objectif du cours
- Vue drsquoensemble du cours
- Lectures et reacutefeacuterences
- Regravegles du jeu
- QUIZ
- Plan du cours 1 (3)
- Plan de cours
- Laboratoires ndash GTI515
- Peacutenaliteacutes de retard
- Plagiat
- Plan du cours 1 (4)
- Les tendances dans le deacuteveloppement des systegravemes drsquoinformation
- UML - Historique
- Pourquoi modeacuteliser
- La modeacutelisation dans les entreprises
- Quelques chiffres
- Quelques chiffres (2)
- Quelques chiffres (3)
- Quelques chiffres (4)
- Quelques chiffres (5)
- Et maintenant
- Et maintenant (2)
- Finalementhellip
- Reacuteussite Eacutechec
- Rappel
- Industrialisation
- Industrialisation (2)
- Slide 39
- Slide 40
- Usines logicielles (S Factory)
- Usines logicielles (S Factory) (2)
- Usines logicielles (S Factory) (3)
- Usines logicielles (S Factory) (4)
- Usines logicielles
- Domain Specific Langage
- BuzzhellipMDA MDD MDE
- Exemple
- Model Driven Architecture
- Model Driven Architecture (2)
- Model Driven Architecture (3)
- Model Driven Architecture (4)
- Model Driven Architecture (5)
- Concept principal de MDA
- CIM PIM PSM Code
- Les diffeacuterentes eacutetapes
- MDA et Gartner
- Eacutetude de cas
- Impact
- Impact (2)
- Impact (3)
- Slide 63
- Slide 64
- Slide 65
- Exemple (2)
- Ressources
- Laboratoire 1
- Le document de vision (RUP)
- Slide 70
- Exemples de caracteacuteristiques (feature)
- Niveau de deacutetail des caracteacuteristiques
- Attributs des caracteacuteristiques
- Attributs des caracteacuteristiques
- Slide 75
- Reacutedaction du document de vision
- Exemple le cas ACS
- Slide 78
- Exemple de problegravemes le cas ACS
- Exemple de besoins le cas ACS
- Exemple de caracteacuteristiques le cas ACS
- Critegraveres drsquoeacutevaluation
- Grille drsquoeacutevaluation (sur 100)
- Prochain cours
- Questions
-
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 4
Qui suis-je Eacutetudiant(e) Profil acadeacutemique
Cours suivis
Cours de la session
Expeacuterience en industrie Anneacutees drsquoexpeacuterience types de logiciels postes
occupeacutes sujets du cours domaine drsquoaffaires (ex bancaire teacuteleacutecom jeux videacuteo deacuteveloppement web
hellip)
Attentes face au cours
Inteacuterecirct de carriegravere
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 5
Plan du cours 1
Qui suis-jeProfesseur Assistant Eacutetudiants
Positionnement du cours dans le programme de geacutenie des TI
Preacutesentation du plan de cours Les processus drsquoaffaires Lrsquoanalyse du domaine et la modeacutelisation Lrsquoarchitecture applicative La production et la maintenance
Deacutepartement de geacutenie logiciel et des TI
Objectifs du programmeProgramme de GTI
Former des ingeacutenieur(e)s
Geacuteneacuteralistes en systegravemes logiciels et multimeacutedias
Ayant une formation optimiseacutee pour un environnement drsquoaffaires transactionnel ougrave les technologies de lrsquoInternet sont omnipreacutesentes
Question Qursquoest-ce qursquoun ingeacutenieur pour vous
Qursquoest-ce qursquoun ingeacutenieur en GTIGTI515 Automne 2013 JF Couturier 6
Deacutepartement de geacutenie logiciel et des TI
Ingeacutenieur
Personne geacuteneacuteralement diplocircmeacutee que sa formation scientifique et technique rend apte agrave concevoir et agrave diriger certains travaux agrave participer agrave certaines recherches [Wiki]
Lexercice de la profession dingeacutenieur consiste agrave faire pour le compte dautrui lun ou lautre des actes suivants
a) Donner des consultations et des avis
b) Faire des mesurages des traceacutes preacuteparer des rapports calculs eacutetudes dessins plans devis cahiers des charges
c) Inspecter ou surveiller les travaux
[OIQ]
GTI515 Automne 2013 JF Couturier 7
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 8
Programme GTI
Disciplines couvertes Eacuteleacutements de geacutenie logiciel Ingeacutenierie des systegravemes informatiques Technologies multimeacutedias Conception et gestion de reacuteseaux informatiques Technologies de lrsquoInternet Conception de systegravemes de commerce eacutelectronique
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 9
Geacutenie logiciel
Geacuteniedes
systegravemes
Systegravemesmultimeacutedias
Reacuteseautique et
Internet
Cours geacuteneacuteraux
Stages et cours inteacutegrateurs
GTI210
Seacutecuriteacute des systegravemes
Geacutenie des TI
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 10
Cours de speacutecialiteacutes GTI GTI210 Introduction au geacutenie des TI
GTI510 Gestion de projets et assurance de la qualiteacute
GTI515 Systegravemes dinformation dans les entreprises
GTI525 Technologies de deacuteveloppement Internet
GTI710 Commerce eacutelectronique
GTI727 Progiciel de gestion inteacutegreacute
GTI660 Bases de donneacutees multimeacutedias
GTI310 Structures de donneacutees multimeacutedias
GTI410 Application des techniques numeacuteriques en graphisme et imagerie
GTI420 Infographie avanceacutee
GTI664 Applications multimeacutedias et Internet
GTI530 Aspects opeacuterationnels des reacuteseaux
GTI719 Seacutecuriteacute des reacuteseaux dentreprise
GTI777 Conception de services de reacuteseautique et de messagerie
GTI780 Sujets speacuteciaux en technologie de linformation
GTI790 Projet synthegravese en geacutenie des technologies de linformation
Deacutepartement de geacutenie logiciel et des TI
Objectif du cours
Analyse et modeacutelisation des processus drsquoaffaires Forces et faiblesses des processus drsquoaffaires
Speacutecifications des exigences drsquoun systegraveme drsquoinformation Ameacutelioration de lrsquoefficaciteacute des processus drsquoaffaires
Eacutetude des eacutetapes du cycle de transformation drsquoun systegraveme drsquoinformation automatiseacute reacutepondant aux exigences
Analyse maintenance opeacuteration drsquoun systegraveme drsquoinformation
Agrave la fin de ce cours lrsquoeacutetudiant sera en mesure dexpliquer le fonctionnement drsquoun systegraveme drsquoinformation reacuteel drsquoen eacutevaluer la qualiteacute et la pertinence et drsquoen diriger son adaptation agrave de nouvelles exigences de participer activement aux diffeacuterentes phases de lrsquoanalyse du systegraveme drsquoen controcircler la mise en place et lrsquoexploitation
Seacuteparation des responsabiliteacutes entre LOG-210 et GTIMTI-515
GTI515 Automne 2013 JF Couturier 12
Inspireacute de httpwwwetsmtlcazone2fichedecoursfichedecoursaspnumerodefiche=GTI515
Deacutepartement de geacutenie logiciel et des TI
Vue drsquoensemble du cours Analyse et modeacutelisation
Diagrammes drsquoactiviteacute
Modegravele du domaine et cas drsquoutilisation
Cas de test
Archeacutetypes drsquoanalyse ndash Modeacutelisation en couleur
Diagrammes de robustesse
BPMN et DFD
Gestion des TI
Cadre drsquoarchitecture drsquoentreprise et TOGAF
Gestion des services et ITIL V3
Maintenance logicielle et S3M
Gestion des applications et ASL (Si on a le temps)
GTI515 Automne 2013 JF Couturier 13
Deacutepartement de geacutenie logiciel et des TI
Lectures et reacutefeacuterences Sur le site Web du cours
Notes de coursArticlesEacutetudes de cas
Wikipeacutedia httpwwwwikipediaorg Comment ccedila marche
httpwwwcommentcamarchenet
GTI515 Automne 2013 JF Couturier 14
Deacutepartement de geacutenie logiciel et des TI
Regravegles du jeu La ponctualiteacute Tout le monde a la parole mais un seul agrave la
fois Un effort reacuteparti dans le temps Prendre des notes Faire les lectures demandeacutees Je nrsquoai pas reacuteponse agrave tout soyez indulgent Parfois je parle vite arrecirctez-moi La reacutepartition des coteshellipE agrave A+
GTI515 Automne 2013 JF Couturier 15
Deacutepartement de geacutenie logiciel et des TI
QUIZ
Porte sur toute la matiegravere preacutesenteacutee en cours (cumulatif)
Commence agrave 18 h 20 minutes 25 de la note chacun Cours 3 5 10 et 12
GTI515 Automne 2013 JF Couturier 16
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 17
Plan du cours 1
Qui suis-jeProfesseur Assistant Eacutetudiants
Positionnement du cours dans le programme de geacutenie des TI
Preacutesentation du plan de cours Les processus drsquoaffaires Lrsquoanalyse du domaine et la modeacutelisation Lrsquoarchitecture applicative La production et la maintenance
Deacutepartement de geacutenie logiciel et des TI
Plan de cours
Plan de GTI-515 Parce que le cours vit une refonte le
plan de cours peut connaicirctre quelques modifications
GTI515 Automne 2013 JF Couturier 18
Deacutepartement de geacutenie logiciel et des TI
Laboratoires ndash GTI515
Eacutequipes de 4 Eacutequipes formeacutees lors de la premiegravere seacuteance de laboratoire Sujet pour les laboratoires confirmeacute par le professeur et le chargeacute de
laboratoire lors de la premiegravere seacuteance de laboratoire Production des arteacutefacts des disciplines de RUP
Document de vision
Diagrammes drsquoactiviteacute et BPMN
Modegravele du domaine et archeacutetypes
Diagramme des cas drsquoutilisation cas drsquoutilisation et diagramme de robustesse
SRS
Controcircle de la qualiteacute par des inspection par les pairs Outils Visio ou Visual Paradigm
GTI515 Automne 2013 JF Couturier 19
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 20
Peacutenaliteacutes de retard
lt 24 hres 20 24 hres gt et lt48 hres 40 48 hres gt et lt72 hres 60 gt72 hres 100
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 21
Plagiat
Lire le Chapitre 10 Plagiat et fraude du Regraveglement des eacutetudes de 1er cycle
Sanction minimale demandeacutee pour un laboratoire copieacute ou autres cas de plagiat ou fraude eacutechec du cours
Autre cas Copie drsquoun livre document ou document provenant
drsquoInternet sans citer la source
Reacuteutilisation de ses travaux drsquoun autre cours sans autorisation
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 22
Plan du cours 1
Qui suis-jeProfesseur Assistant Eacutetudiants
Positionnement du cours dans le programme de geacutenie des TI
Preacutesentation du plan de cours Lrsquoarchitecture dirigeacutee par les modegraveles
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 23
Les tendances dans le deacuteveloppementdes systegravemes drsquoinformation
Modeacutelisation UML2 BPMN MDA (Model Driven Architecture) SOA (agrave lrsquoaide des Services Web) Domain Specific Language
Les frameworks autour de Eclipse NetBean Visual Studio
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 24
UML - Historique
Ref Using the UML to Describe Design Patterns Diane Strode
Deacutepartement de geacutenie logiciel et des TI
Pourquoi modeacuteliser
Un modegravele est une abstraction du monde concret qui facilite sa compreacutehension
Un modegravele peut ecirctre sous forme graphique etou textuelle
Srsquoil est sous forme graphique il doit ecirctre compleacuteteacute par une preacutesentation textuelle
GTI515 Automne 2013 JF Couturier 25
Deacutepartement de geacutenie logiciel et des TI
La modeacutelisation dans les entreprises
Une perte de temps pour les non-informaticiens et mecircme les informaticiens
Une eacutevolution ineacuteluctable avec les nouveaux outils
Modeacuteliser = precirccher dans le deacutesert Cela deacutepend de la culture de votre deacutepartement
GTI515 Automne 2013 JF Couturier 26
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
256 milliards en projet logiciel aux US16 sont compleacuteteacutes en temps et dans
les coucircts
31 sont annuleacutes (81G$)
53 deacutepassent le budget preacutevu
42 seulement sont livreacutes avec les exigences initiales
GTI515 Automne 2013 JF Couturier 27
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
GTI515 Automne 2013 JF Couturier 28
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
GTI515 Automne 2013 JF Couturier 29
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
GTI515 Automne 2013 JF Couturier 30
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
Une grande proportion de projets TI eacutechouent PourquoiPlusieurs facteurs
Les mauvaises exigences en font partie
Si ccedila va si mal crsquoest qursquoil y a quelque chose qursquoon ne fait pas bien Il faut se remettre en question
GTI515 Automne 2013 JF Couturier 31
Deacutepartement de geacutenie logiciel et des TI
Et maintenant
GTI515 Automne 2013 JF Couturier 32
CHAOS Summary 2009
Deacutepartement de geacutenie logiciel et des TI
Et maintenant
GTI515 Automne 2013 JF Couturier 33
Standish Group 1999
CHAOS Summary 2009
Deacutepartement de geacutenie logiciel et des TI
Finalementhellip
GTI515 Automne 2013 JF Couturier 34
Deacutepartement de geacutenie logiciel et des TI
Reacuteussite Eacutechec
Mais qursquoest-ce qursquoun projet reacuteussi Dans les temps Dans le budget Avec les fonctions preacutevues
GTI515 Automne 2013 JF Couturier 35
Deacutepartement de geacutenie logiciel et des TI
Rappel
Notre domaine est tregraves jeune (70 ans) Geacutenie de la constructionhellip5000 ans
Mais nous progressons tregraves rapidement Pourquoi le geacutenie en TI
Artisanat vs geacutenie (le pif vs la meacutethode)
Acircge du geacutenie logiciel TI - Maturiteacute
Science virtuelle vs Meacutecanique construction
Une tendancehellipDe lrsquoartisanat agrave lrsquoindustrialisation du deacuteveloppement logiciel
GTI515 Automne 2013 JF Couturier 36
Deacutepartement de geacutenie logiciel et des TI
Industrialisation
Vers le milieu du 19e siegravecle Segmenter le travail des individus pour
ne pas ecirctre deacutependant drsquoun artisan Permet une production beaucoup plus
efficace en seacuterie
GTI515 Automne 2013 JF Couturier 37
Deacutepartement de geacutenie logiciel et des TI
Industrialisation
Est-ce que le deacuteveloppement peut-ecirctre industrialiseacuteCertains disent que non que le logiciel agrave
un caractegravere trop creacuteatif
Drsquoautres pensent que les reacutecents progregraves dans le domaine permettent une eacuteventuelle industrialisation dans la production drsquoapplication
GTI515 Automne 2013 JF Couturier 38
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 39
Technologies(OO CBD Services Web SOA
XML AOP DB design patternshellip)
Ingeacutenierie dirigeacutee par les modegraveles
Usines logicielles (Microsoft)Architecture dirigeacutee par les modegraveles (OMG)
Deux applications drsquoun mecircme concept de base
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 40
Techniques de deacuteveloppement assisteacute par ordinateur (Reacutef Software Factories Greenfield J p144)
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Un modegravele tregraves deacutetailleacute beaucoup de code geacuteneacutereacute
CASE Tools (Computer-aided software engineering)
Mal adapteacute au deacuteveloppement agile qui implique souvent des solutions partielles tregraves tocirct dans le cycle de deacuteveloppement
Synchronisation difficile
Eacuteloigneacutee de la plateforme
GTI515 Automne 2013 JF Couturier 41
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Exemple Outils graphiques de modeacutelisation des classes
Plus proche de la plateforme
Code geacuteneacutereacute pour la plateforme
Plus simple
Aide geacuteneacuteralement le deacuteveloppeur agrave voir les deacutependances entre les classes
Il reste beaucoup de code agrave faire agrave la main
Penser agrave coder du SWING Java agrave la mitaine
GTI515 Automne 2013 JF Couturier 42
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Existence drsquoun framework logiciel
On se base sur le framework pour automatiser-compleacuteter la production de certains eacuteleacutements comme les eacuteleacutements graphiques
Abstraction plus eacuteleveacutee
VB6 et ses formulaires
NET Hibernate
Peu drsquoabstractions au niveau du modegravele Classe entiteacute-relation
GTI515 Automne 2013 JF Couturier 43
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Finalement il y a la possibiliteacute drsquoavoir une laquo pile raquo de modegraveles
Drsquoun modegravele agrave lrsquoautre il y a transformation vers un modegravele de plus en plus preacutecis
Approche MDA
Concept de Domain Specific Language
Pour un domaine particulier on creacutee des laquo templates raquo reacuteutilisables
Permets la contribution des experts meacutetiers
GTI515 Automne 2013 JF Couturier 44
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles
GTI515 Automne 2013 JF Couturier 45
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Domain Specific Langage
Par opposition au General purpose language comme UML C++ Java ou C
AvantagesPermets agrave un expert meacutetier de
comprendre et valider un modegravele
InconveacutenientCoucirct Formation Maintenance
GTI515 Automne 2013 JF Couturier 46
httpenwikipediaorgwikiDomain_Specific_Language
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 47
BuzzhellipMDA MDD MDE
Model Driven Architecturemarque de commerce de lrsquoOMG
Model Driven Developmentextension de MDAmarque de commerce de lrsquoOMG
Model Driven Engineeringexpression geacuteneacuterique
Deacutepartement de geacutenie logiciel et des TI
Exemple Agrave partir des speacutecifications des exigences logicielles
Lrsquoacteur saisit la commande contenant
lrsquoadresse de livraison
lrsquoadresse de facturation
Le systegraveme creacutee la commande
Lrsquoacteur saisit un deacutetail de la commande avec
le nom du produit
la quantiteacute demandeacutee
le prix du produit
Le systegraveme creacutee le deacutetail et revient agrave lrsquoeacutetape 3
Lrsquoacteur termine la commande
Le systegraveme ferme la commande
GTI515 Automne 2013 JF Couturier 48
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 49
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Un modegravele (Diagramme de classes UML)
Deacutepartement de geacutenie logiciel et des TI
Model Driven ArchitectureUn scheacutema XML
ltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gt
ltxsdschema xmlnsxsd=httpwww targetNamespace=helliprsaquo
ltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo minOccurs=ldquo0ldquo maxOccurs=ldquounboundedgt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdcomplexType name=ldquoDetailCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoprixldquo type=ldquo xsdfloatldquogt
ltxsdelement name=ldquoquantiteldquo type=ldquo xsdintldquogt
ltxsdelement name=ldquonomProduitldquo type=ldquo xsdstringldquogt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdschemarsaquo
GTI515 Automne 2013 JF Couturier 50
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 51
Des classes Java
public class Commande
private String adresseLivraison
private String adresseFacturation
private Collection detailCommande
hellip
String getAdresseLivraison()
void setAdresseLivraison(String value)
String getAdresseFacturation()
void setAdresseFacturation(String value)
public class DetailCommande
private float prix
private int quantite
private String nomProduit
float getPrix()
void setPrix(float value)
int getQuantite()
void setQuantite(int value)
String getNomProduit()
void setNomProduit(String value)
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 52
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Programmepublic class Commande
private String adresseLivraisonprivate String adresseFacturation
String getAdresseLivraison()void setAdresseLivraison(String value)
String getAdresseFacturation()void setAdresseFacturation(String value)
Scheacutema XMLltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gtltxsdschema xmlnsxsd=httpwww
targetNamespace=helliprsaquoltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo
xsdstringldquogt ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo
Modegravele UML3 repreacutesentationsdes mecircmes exigences
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
Speacutecifications de lrsquoOMG Seacuteparation de la logique meacutetier de
toute plateforme technique Speacutecifications drsquoun langage de
transformation (QVT)
GTI515 Automne 2013 JF Couturier 53
Deacutepartement de geacutenie logiciel et des TI
Concept principal de MDA
Modeacuteliser pour documenter le systegraveme
Modeacuteliser pour construire le systegraveme
GTI515 Automne 2013 JF Couturier 55
Deacutepartement de geacutenie logiciel et des TI
CIM PIM PSM Code CIM
Computing Independant Model
Modegravele du domaine logique meacutetier
PIM Platform Independant Model
Modegravele de conception UML et OCL
PSM Platform Specific Model
NET J2EE
Codehellip
GTI515 Automne 2013 JF Couturier 56
Deacutepartement de geacutenie logiciel et des TI
Les diffeacuterentes eacutetapes
GTI515 Automne 2013 JF Couturier 57
Reacutef the Zachman Framework and the OMGrsquos MDA Business Process Trends Sept 2003
Deacutepartement de geacutenie logiciel et des TI
MDA et Gartner
GTI515 Automne 2013 JF Couturier 58
Gartner Hype Cycle 2008
Deacutepartement de geacutenie logiciel et des TI
Eacutetude de cas
Lecture de la discussion sur MDA Questions
Quels sont les arguments pour
Quels sont les arguments contre
Vos commentaires sur lrsquoarticle
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 59
Deacutepartement de geacutenie logiciel et des TI
Impact
Rocircle du deacuteveloppeur minimiseacute puisqursquoil nrsquointerpregravete plus le modegravele les regravegles de transformation srsquoen chargent
Modegraveles exportables drsquoune plateforme agrave un autre
Plus de 100 articles de recherche sur IEEE entre 2008 et 2009
Maishellip
GTI515 Automne 2013 JF Couturier 60
Deacutepartement de geacutenie logiciel et des TI
Impact
Est-ce applicable au monde agile
Le cycle de modeacutelisation est-il compatible avec le deacuteveloppement iteacuteratif
Est-ce qursquoil y a suffisamment de ressources hautement qualifieacutees pour reacutealiser ce type de projet
Pouvez-vous les former Pouvez-vous les conserver
Produire 80 du code et vous laisser les derniers 20 plus difficileshellip
Comment inteacutegrer les tests
GTI515 Automne 2013 JF Couturier 61
Scott Ambler Enterprise Unified Process p 191
Deacutepartement de geacutenie logiciel et des TI
Impact
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 62
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 63
Domaine
Exigences
Analyse
Conception
Reacutealisation
MDA
PIM
PSM
Modegravele des Processus drsquoaffaires
Modegravele drsquoanalyse du systegraveme
CIM
Modegravele des Cas drsquoutilisation
Modegravele de conception du systegraveme
Les modegraveles du cycle de deacuteveloppement de logiciels
Code
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 64
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 65
Deacutepartement de geacutenie logiciel et des TI
Exemple
GTI515 Automne 2013 JF Couturier 66
httpwwwibmcomdeveloperworksrationallibrary3100html
Deacutepartement de geacutenie logiciel et des TI
Ressources
Site de lOMG MDA Article drsquoIBM sur MDA Discussion sur MDA Wiki MDA Wiki QVT
GTI515 Automne 2013 JF Couturier 67
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 68
Laboratoire 1
Choix du sujet Validation de la porteacutee
Suffisamment long Plusieurs interactions humaines machines Reacutealisable dans une session
Chargeacute de laboratoire Oleg Litvinski Premier laboratoire lundi 7 mai
Deacutepartement de geacutenie logiciel et des TI
Le document de vision (RUP)
Une base de discussion et drsquoaccord parmi les intervenants du projet
Une description de lrsquoapplication en geacuteneacuteral incluant la description du marcheacute cible les clients les utilisateurs du systegraveme les problegravemes agrave reacutesoudre et les caracteacuteristiques de lrsquoapplication
GTI515 Automne 2013 JF Couturier 69
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 70
Requirements Management with Use Cases v20010300
Copyright copy 1998 2001 Rational Software all rights reserved
2
Problem
Solution Space
Problem Space
Needs
Features
SoftwareRequirements
Test Procedures Design User
Docs
The The Product Product To Be To Be BuiltBuilt
Traceability
Deacutepartement de geacutenie logiciel et des TI
Exemples de caracteacuteristiques (feature)
Domaine drsquoapplication Exemple de caracteacuteristique
Systegraveme de commande drsquoascenseur
Commande manuelle des portes durant une urgence de feu
Systegraveme de commande drsquoinventaire
Fournir un statut reacutecent de tous les items reacutepertorieacutes
Systegraveme de suivi de deacutefauts Fournir des laquo donneacutees raquo sur les tendances pour eacutevaluer la
qualiteacute
Systegraveme de paie Rapports par cateacutegories des deacuteductions remis agrave lrsquoimpocirct
Systegraveme de commande drsquoarmes
Minimum de deux confirmations indeacutependantes drsquoautorisation
drsquoattaque exigeacutee
GTI515 Automne 2013 JF Couturier 71
Deacutepartement de geacutenie logiciel et des TI
Niveau de deacutetail des caracteacuteristiques Pour tout nouveau systegraveme ou pour
une ameacutelioration majeure agrave un systegraveme existant il est recommandeacute de garder un niveau drsquoabstraction assez eacuteleveacute de sorte agrave avoir un maximum de caracteacuteristiques compris entre 25-99 et de preacutefeacuterence moins de 50
GTI515 Automne 2013 JF Couturier 72
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Statut Suit le progregraves
Exemples Proposeacute approuveacute incorporeacute etc
PrioriteacuteBeacuteneacutefice
Les caracteacuteristiques ne sont pas agrave prioriteacutes eacutegales ou geacutenegraverent des beacuteneacutefices eacutegaux
Exemple critiques importantes optionnelle
Effort Estimation du nombre de personnessemaines lignes de code points de fonction COSMIC_FFP
Risque La probabiliteacute que la caracteacuteristique aille causer un eacuteveacutenement indeacutesirable tel que le deacutepassement du budget ou des deacutelais ou mecircme lrsquoannulation du projet
GTI515 Automne 2013 JF Couturier 73
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Stabiliteacute La probabiliteacute que la caracteacuteristique elle-mecircme ou sa compreacutehension par lrsquoeacutequipe de deacuteveloppement changera
Mise en application
Documenter la version preacutevue pour laquelle la caracteacuteristique sera incorporeacutee
Assigneacutee agrave Deacutesigner lrsquoeacutequipe responsable de la caracteacuteristique
Raison Lrsquoorigine de la requecircte de la caracteacuteristique
GTI515 Automne 2013 JF Couturier 74
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 75
Deacutepartement de geacutenie logiciel et des TI
Reacutedaction du document de vision une description concise de tout ce qui est important au
produit ou agrave lrsquoapplication eacutecrit avec un niveau de deacutetails dans un langage lisible et
compreacutehensible par les intervenants du projet
Document de 15 agrave 20 pages
GTI515 Automne 2013 JF Couturier 76
Deacutepartement de geacutenie logiciel et des TI
Exemple le cas ACS
GTI515 Automne 2013 JF Couturier 77
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 78
Deacutepartement de geacutenie logiciel et des TI
Exemple de problegravemesle cas ACS
Controcircle drsquoune large gamme de mateacuteriels
Utilisation compliqueacutee Difficulteacutes de programmation Disponibiliteacute du mateacuteriel Risque de mauvaise utilisation
GTI515 Automne 2013 JF Couturier 79
Deacutepartement de geacutenie logiciel et des TI
Exemple de besoinsle cas ACS
AutomatiserLa distribution de fertilisantLa distribution de nourritureLa dureacutee de lrsquoeacuteclairage
Commander lrsquoopeacuteration des appareils Reacuteguler
le niveau et la dureteacute de lrsquoeauLa tempeacuterature
GTI515 Automne 2013 JF Couturier 80
Deacutepartement de geacutenie logiciel et des TI
Exemple de caracteacuteristiquesle cas ACS
Deacutemarrage automatique du systegraveme Programmation conserveacutee en cas de
panne drsquoalimentation Deacutetection automatique des modules Facile agrave programmer et agrave utiliser
Exigence non fonctionnelle
GTI515 Automne 2013 JF Couturier 81
Deacutepartement de geacutenie logiciel et des TI
Critegraveres drsquoeacutevaluation
Respect de lrsquoesprit du document
En tant qursquointervenant externe est-ce que je comprends bien
Respect de la forme du gabarit
Qualiteacute du franccedilais
Document de calibre professionnel que lrsquoon pourrait remettre agrave un dirigeant
GTI515 Automne 2013 JF Couturier 82
Deacutepartement de geacutenie logiciel et des TI
Grille drsquoeacutevaluation (sur 100)
Agrave venirhellip
GTI515 Automne 2013 JF Couturier 83
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 84
Prochain cours
La modeacutelisation des processus drsquoaffaires Le diagramme drsquoactiviteacute Le diagnostic des processus drsquoaffaires existant
Lectures Lrsquoutilisation drsquoUML Chapitre sur les diagrammes drsquoactiviteacutes dans Larman Lecture sur MDA Voir site Web du cours
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 85
Questions
- Systegravemes drsquoinformation dans les entreprises (GTI515)
- Plan du cours 1
- Qui suis-je JF Couturier
- Qui suis-je Eacutetudiant(e)
- Plan du cours 1 (2)
- Objectifs du programme
- Ingeacutenieur
- Programme GTI
- Geacutenie des TI
- Cours de speacutecialiteacutes GTI
- Objectif du cours
- Vue drsquoensemble du cours
- Lectures et reacutefeacuterences
- Regravegles du jeu
- QUIZ
- Plan du cours 1 (3)
- Plan de cours
- Laboratoires ndash GTI515
- Peacutenaliteacutes de retard
- Plagiat
- Plan du cours 1 (4)
- Les tendances dans le deacuteveloppement des systegravemes drsquoinformation
- UML - Historique
- Pourquoi modeacuteliser
- La modeacutelisation dans les entreprises
- Quelques chiffres
- Quelques chiffres (2)
- Quelques chiffres (3)
- Quelques chiffres (4)
- Quelques chiffres (5)
- Et maintenant
- Et maintenant (2)
- Finalementhellip
- Reacuteussite Eacutechec
- Rappel
- Industrialisation
- Industrialisation (2)
- Slide 39
- Slide 40
- Usines logicielles (S Factory)
- Usines logicielles (S Factory) (2)
- Usines logicielles (S Factory) (3)
- Usines logicielles (S Factory) (4)
- Usines logicielles
- Domain Specific Langage
- BuzzhellipMDA MDD MDE
- Exemple
- Model Driven Architecture
- Model Driven Architecture (2)
- Model Driven Architecture (3)
- Model Driven Architecture (4)
- Model Driven Architecture (5)
- Concept principal de MDA
- CIM PIM PSM Code
- Les diffeacuterentes eacutetapes
- MDA et Gartner
- Eacutetude de cas
- Impact
- Impact (2)
- Impact (3)
- Slide 63
- Slide 64
- Slide 65
- Exemple (2)
- Ressources
- Laboratoire 1
- Le document de vision (RUP)
- Slide 70
- Exemples de caracteacuteristiques (feature)
- Niveau de deacutetail des caracteacuteristiques
- Attributs des caracteacuteristiques
- Attributs des caracteacuteristiques
- Slide 75
- Reacutedaction du document de vision
- Exemple le cas ACS
- Slide 78
- Exemple de problegravemes le cas ACS
- Exemple de besoins le cas ACS
- Exemple de caracteacuteristiques le cas ACS
- Critegraveres drsquoeacutevaluation
- Grille drsquoeacutevaluation (sur 100)
- Prochain cours
- Questions
-
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 5
Plan du cours 1
Qui suis-jeProfesseur Assistant Eacutetudiants
Positionnement du cours dans le programme de geacutenie des TI
Preacutesentation du plan de cours Les processus drsquoaffaires Lrsquoanalyse du domaine et la modeacutelisation Lrsquoarchitecture applicative La production et la maintenance
Deacutepartement de geacutenie logiciel et des TI
Objectifs du programmeProgramme de GTI
Former des ingeacutenieur(e)s
Geacuteneacuteralistes en systegravemes logiciels et multimeacutedias
Ayant une formation optimiseacutee pour un environnement drsquoaffaires transactionnel ougrave les technologies de lrsquoInternet sont omnipreacutesentes
Question Qursquoest-ce qursquoun ingeacutenieur pour vous
Qursquoest-ce qursquoun ingeacutenieur en GTIGTI515 Automne 2013 JF Couturier 6
Deacutepartement de geacutenie logiciel et des TI
Ingeacutenieur
Personne geacuteneacuteralement diplocircmeacutee que sa formation scientifique et technique rend apte agrave concevoir et agrave diriger certains travaux agrave participer agrave certaines recherches [Wiki]
Lexercice de la profession dingeacutenieur consiste agrave faire pour le compte dautrui lun ou lautre des actes suivants
a) Donner des consultations et des avis
b) Faire des mesurages des traceacutes preacuteparer des rapports calculs eacutetudes dessins plans devis cahiers des charges
c) Inspecter ou surveiller les travaux
[OIQ]
GTI515 Automne 2013 JF Couturier 7
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 8
Programme GTI
Disciplines couvertes Eacuteleacutements de geacutenie logiciel Ingeacutenierie des systegravemes informatiques Technologies multimeacutedias Conception et gestion de reacuteseaux informatiques Technologies de lrsquoInternet Conception de systegravemes de commerce eacutelectronique
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 9
Geacutenie logiciel
Geacuteniedes
systegravemes
Systegravemesmultimeacutedias
Reacuteseautique et
Internet
Cours geacuteneacuteraux
Stages et cours inteacutegrateurs
GTI210
Seacutecuriteacute des systegravemes
Geacutenie des TI
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 10
Cours de speacutecialiteacutes GTI GTI210 Introduction au geacutenie des TI
GTI510 Gestion de projets et assurance de la qualiteacute
GTI515 Systegravemes dinformation dans les entreprises
GTI525 Technologies de deacuteveloppement Internet
GTI710 Commerce eacutelectronique
GTI727 Progiciel de gestion inteacutegreacute
GTI660 Bases de donneacutees multimeacutedias
GTI310 Structures de donneacutees multimeacutedias
GTI410 Application des techniques numeacuteriques en graphisme et imagerie
GTI420 Infographie avanceacutee
GTI664 Applications multimeacutedias et Internet
GTI530 Aspects opeacuterationnels des reacuteseaux
GTI719 Seacutecuriteacute des reacuteseaux dentreprise
GTI777 Conception de services de reacuteseautique et de messagerie
GTI780 Sujets speacuteciaux en technologie de linformation
GTI790 Projet synthegravese en geacutenie des technologies de linformation
Deacutepartement de geacutenie logiciel et des TI
Objectif du cours
Analyse et modeacutelisation des processus drsquoaffaires Forces et faiblesses des processus drsquoaffaires
Speacutecifications des exigences drsquoun systegraveme drsquoinformation Ameacutelioration de lrsquoefficaciteacute des processus drsquoaffaires
Eacutetude des eacutetapes du cycle de transformation drsquoun systegraveme drsquoinformation automatiseacute reacutepondant aux exigences
Analyse maintenance opeacuteration drsquoun systegraveme drsquoinformation
Agrave la fin de ce cours lrsquoeacutetudiant sera en mesure dexpliquer le fonctionnement drsquoun systegraveme drsquoinformation reacuteel drsquoen eacutevaluer la qualiteacute et la pertinence et drsquoen diriger son adaptation agrave de nouvelles exigences de participer activement aux diffeacuterentes phases de lrsquoanalyse du systegraveme drsquoen controcircler la mise en place et lrsquoexploitation
Seacuteparation des responsabiliteacutes entre LOG-210 et GTIMTI-515
GTI515 Automne 2013 JF Couturier 12
Inspireacute de httpwwwetsmtlcazone2fichedecoursfichedecoursaspnumerodefiche=GTI515
Deacutepartement de geacutenie logiciel et des TI
Vue drsquoensemble du cours Analyse et modeacutelisation
Diagrammes drsquoactiviteacute
Modegravele du domaine et cas drsquoutilisation
Cas de test
Archeacutetypes drsquoanalyse ndash Modeacutelisation en couleur
Diagrammes de robustesse
BPMN et DFD
Gestion des TI
Cadre drsquoarchitecture drsquoentreprise et TOGAF
Gestion des services et ITIL V3
Maintenance logicielle et S3M
Gestion des applications et ASL (Si on a le temps)
GTI515 Automne 2013 JF Couturier 13
Deacutepartement de geacutenie logiciel et des TI
Lectures et reacutefeacuterences Sur le site Web du cours
Notes de coursArticlesEacutetudes de cas
Wikipeacutedia httpwwwwikipediaorg Comment ccedila marche
httpwwwcommentcamarchenet
GTI515 Automne 2013 JF Couturier 14
Deacutepartement de geacutenie logiciel et des TI
Regravegles du jeu La ponctualiteacute Tout le monde a la parole mais un seul agrave la
fois Un effort reacuteparti dans le temps Prendre des notes Faire les lectures demandeacutees Je nrsquoai pas reacuteponse agrave tout soyez indulgent Parfois je parle vite arrecirctez-moi La reacutepartition des coteshellipE agrave A+
GTI515 Automne 2013 JF Couturier 15
Deacutepartement de geacutenie logiciel et des TI
QUIZ
Porte sur toute la matiegravere preacutesenteacutee en cours (cumulatif)
Commence agrave 18 h 20 minutes 25 de la note chacun Cours 3 5 10 et 12
GTI515 Automne 2013 JF Couturier 16
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 17
Plan du cours 1
Qui suis-jeProfesseur Assistant Eacutetudiants
Positionnement du cours dans le programme de geacutenie des TI
Preacutesentation du plan de cours Les processus drsquoaffaires Lrsquoanalyse du domaine et la modeacutelisation Lrsquoarchitecture applicative La production et la maintenance
Deacutepartement de geacutenie logiciel et des TI
Plan de cours
Plan de GTI-515 Parce que le cours vit une refonte le
plan de cours peut connaicirctre quelques modifications
GTI515 Automne 2013 JF Couturier 18
Deacutepartement de geacutenie logiciel et des TI
Laboratoires ndash GTI515
Eacutequipes de 4 Eacutequipes formeacutees lors de la premiegravere seacuteance de laboratoire Sujet pour les laboratoires confirmeacute par le professeur et le chargeacute de
laboratoire lors de la premiegravere seacuteance de laboratoire Production des arteacutefacts des disciplines de RUP
Document de vision
Diagrammes drsquoactiviteacute et BPMN
Modegravele du domaine et archeacutetypes
Diagramme des cas drsquoutilisation cas drsquoutilisation et diagramme de robustesse
SRS
Controcircle de la qualiteacute par des inspection par les pairs Outils Visio ou Visual Paradigm
GTI515 Automne 2013 JF Couturier 19
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 20
Peacutenaliteacutes de retard
lt 24 hres 20 24 hres gt et lt48 hres 40 48 hres gt et lt72 hres 60 gt72 hres 100
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 21
Plagiat
Lire le Chapitre 10 Plagiat et fraude du Regraveglement des eacutetudes de 1er cycle
Sanction minimale demandeacutee pour un laboratoire copieacute ou autres cas de plagiat ou fraude eacutechec du cours
Autre cas Copie drsquoun livre document ou document provenant
drsquoInternet sans citer la source
Reacuteutilisation de ses travaux drsquoun autre cours sans autorisation
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 22
Plan du cours 1
Qui suis-jeProfesseur Assistant Eacutetudiants
Positionnement du cours dans le programme de geacutenie des TI
Preacutesentation du plan de cours Lrsquoarchitecture dirigeacutee par les modegraveles
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 23
Les tendances dans le deacuteveloppementdes systegravemes drsquoinformation
Modeacutelisation UML2 BPMN MDA (Model Driven Architecture) SOA (agrave lrsquoaide des Services Web) Domain Specific Language
Les frameworks autour de Eclipse NetBean Visual Studio
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 24
UML - Historique
Ref Using the UML to Describe Design Patterns Diane Strode
Deacutepartement de geacutenie logiciel et des TI
Pourquoi modeacuteliser
Un modegravele est une abstraction du monde concret qui facilite sa compreacutehension
Un modegravele peut ecirctre sous forme graphique etou textuelle
Srsquoil est sous forme graphique il doit ecirctre compleacuteteacute par une preacutesentation textuelle
GTI515 Automne 2013 JF Couturier 25
Deacutepartement de geacutenie logiciel et des TI
La modeacutelisation dans les entreprises
Une perte de temps pour les non-informaticiens et mecircme les informaticiens
Une eacutevolution ineacuteluctable avec les nouveaux outils
Modeacuteliser = precirccher dans le deacutesert Cela deacutepend de la culture de votre deacutepartement
GTI515 Automne 2013 JF Couturier 26
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
256 milliards en projet logiciel aux US16 sont compleacuteteacutes en temps et dans
les coucircts
31 sont annuleacutes (81G$)
53 deacutepassent le budget preacutevu
42 seulement sont livreacutes avec les exigences initiales
GTI515 Automne 2013 JF Couturier 27
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
GTI515 Automne 2013 JF Couturier 28
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
GTI515 Automne 2013 JF Couturier 29
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
GTI515 Automne 2013 JF Couturier 30
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
Une grande proportion de projets TI eacutechouent PourquoiPlusieurs facteurs
Les mauvaises exigences en font partie
Si ccedila va si mal crsquoest qursquoil y a quelque chose qursquoon ne fait pas bien Il faut se remettre en question
GTI515 Automne 2013 JF Couturier 31
Deacutepartement de geacutenie logiciel et des TI
Et maintenant
GTI515 Automne 2013 JF Couturier 32
CHAOS Summary 2009
Deacutepartement de geacutenie logiciel et des TI
Et maintenant
GTI515 Automne 2013 JF Couturier 33
Standish Group 1999
CHAOS Summary 2009
Deacutepartement de geacutenie logiciel et des TI
Finalementhellip
GTI515 Automne 2013 JF Couturier 34
Deacutepartement de geacutenie logiciel et des TI
Reacuteussite Eacutechec
Mais qursquoest-ce qursquoun projet reacuteussi Dans les temps Dans le budget Avec les fonctions preacutevues
GTI515 Automne 2013 JF Couturier 35
Deacutepartement de geacutenie logiciel et des TI
Rappel
Notre domaine est tregraves jeune (70 ans) Geacutenie de la constructionhellip5000 ans
Mais nous progressons tregraves rapidement Pourquoi le geacutenie en TI
Artisanat vs geacutenie (le pif vs la meacutethode)
Acircge du geacutenie logiciel TI - Maturiteacute
Science virtuelle vs Meacutecanique construction
Une tendancehellipDe lrsquoartisanat agrave lrsquoindustrialisation du deacuteveloppement logiciel
GTI515 Automne 2013 JF Couturier 36
Deacutepartement de geacutenie logiciel et des TI
Industrialisation
Vers le milieu du 19e siegravecle Segmenter le travail des individus pour
ne pas ecirctre deacutependant drsquoun artisan Permet une production beaucoup plus
efficace en seacuterie
GTI515 Automne 2013 JF Couturier 37
Deacutepartement de geacutenie logiciel et des TI
Industrialisation
Est-ce que le deacuteveloppement peut-ecirctre industrialiseacuteCertains disent que non que le logiciel agrave
un caractegravere trop creacuteatif
Drsquoautres pensent que les reacutecents progregraves dans le domaine permettent une eacuteventuelle industrialisation dans la production drsquoapplication
GTI515 Automne 2013 JF Couturier 38
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 39
Technologies(OO CBD Services Web SOA
XML AOP DB design patternshellip)
Ingeacutenierie dirigeacutee par les modegraveles
Usines logicielles (Microsoft)Architecture dirigeacutee par les modegraveles (OMG)
Deux applications drsquoun mecircme concept de base
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 40
Techniques de deacuteveloppement assisteacute par ordinateur (Reacutef Software Factories Greenfield J p144)
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Un modegravele tregraves deacutetailleacute beaucoup de code geacuteneacutereacute
CASE Tools (Computer-aided software engineering)
Mal adapteacute au deacuteveloppement agile qui implique souvent des solutions partielles tregraves tocirct dans le cycle de deacuteveloppement
Synchronisation difficile
Eacuteloigneacutee de la plateforme
GTI515 Automne 2013 JF Couturier 41
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Exemple Outils graphiques de modeacutelisation des classes
Plus proche de la plateforme
Code geacuteneacutereacute pour la plateforme
Plus simple
Aide geacuteneacuteralement le deacuteveloppeur agrave voir les deacutependances entre les classes
Il reste beaucoup de code agrave faire agrave la main
Penser agrave coder du SWING Java agrave la mitaine
GTI515 Automne 2013 JF Couturier 42
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Existence drsquoun framework logiciel
On se base sur le framework pour automatiser-compleacuteter la production de certains eacuteleacutements comme les eacuteleacutements graphiques
Abstraction plus eacuteleveacutee
VB6 et ses formulaires
NET Hibernate
Peu drsquoabstractions au niveau du modegravele Classe entiteacute-relation
GTI515 Automne 2013 JF Couturier 43
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Finalement il y a la possibiliteacute drsquoavoir une laquo pile raquo de modegraveles
Drsquoun modegravele agrave lrsquoautre il y a transformation vers un modegravele de plus en plus preacutecis
Approche MDA
Concept de Domain Specific Language
Pour un domaine particulier on creacutee des laquo templates raquo reacuteutilisables
Permets la contribution des experts meacutetiers
GTI515 Automne 2013 JF Couturier 44
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles
GTI515 Automne 2013 JF Couturier 45
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Domain Specific Langage
Par opposition au General purpose language comme UML C++ Java ou C
AvantagesPermets agrave un expert meacutetier de
comprendre et valider un modegravele
InconveacutenientCoucirct Formation Maintenance
GTI515 Automne 2013 JF Couturier 46
httpenwikipediaorgwikiDomain_Specific_Language
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 47
BuzzhellipMDA MDD MDE
Model Driven Architecturemarque de commerce de lrsquoOMG
Model Driven Developmentextension de MDAmarque de commerce de lrsquoOMG
Model Driven Engineeringexpression geacuteneacuterique
Deacutepartement de geacutenie logiciel et des TI
Exemple Agrave partir des speacutecifications des exigences logicielles
Lrsquoacteur saisit la commande contenant
lrsquoadresse de livraison
lrsquoadresse de facturation
Le systegraveme creacutee la commande
Lrsquoacteur saisit un deacutetail de la commande avec
le nom du produit
la quantiteacute demandeacutee
le prix du produit
Le systegraveme creacutee le deacutetail et revient agrave lrsquoeacutetape 3
Lrsquoacteur termine la commande
Le systegraveme ferme la commande
GTI515 Automne 2013 JF Couturier 48
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 49
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Un modegravele (Diagramme de classes UML)
Deacutepartement de geacutenie logiciel et des TI
Model Driven ArchitectureUn scheacutema XML
ltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gt
ltxsdschema xmlnsxsd=httpwww targetNamespace=helliprsaquo
ltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo minOccurs=ldquo0ldquo maxOccurs=ldquounboundedgt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdcomplexType name=ldquoDetailCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoprixldquo type=ldquo xsdfloatldquogt
ltxsdelement name=ldquoquantiteldquo type=ldquo xsdintldquogt
ltxsdelement name=ldquonomProduitldquo type=ldquo xsdstringldquogt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdschemarsaquo
GTI515 Automne 2013 JF Couturier 50
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 51
Des classes Java
public class Commande
private String adresseLivraison
private String adresseFacturation
private Collection detailCommande
hellip
String getAdresseLivraison()
void setAdresseLivraison(String value)
String getAdresseFacturation()
void setAdresseFacturation(String value)
public class DetailCommande
private float prix
private int quantite
private String nomProduit
float getPrix()
void setPrix(float value)
int getQuantite()
void setQuantite(int value)
String getNomProduit()
void setNomProduit(String value)
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 52
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Programmepublic class Commande
private String adresseLivraisonprivate String adresseFacturation
String getAdresseLivraison()void setAdresseLivraison(String value)
String getAdresseFacturation()void setAdresseFacturation(String value)
Scheacutema XMLltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gtltxsdschema xmlnsxsd=httpwww
targetNamespace=helliprsaquoltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo
xsdstringldquogt ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo
Modegravele UML3 repreacutesentationsdes mecircmes exigences
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
Speacutecifications de lrsquoOMG Seacuteparation de la logique meacutetier de
toute plateforme technique Speacutecifications drsquoun langage de
transformation (QVT)
GTI515 Automne 2013 JF Couturier 53
Deacutepartement de geacutenie logiciel et des TI
Concept principal de MDA
Modeacuteliser pour documenter le systegraveme
Modeacuteliser pour construire le systegraveme
GTI515 Automne 2013 JF Couturier 55
Deacutepartement de geacutenie logiciel et des TI
CIM PIM PSM Code CIM
Computing Independant Model
Modegravele du domaine logique meacutetier
PIM Platform Independant Model
Modegravele de conception UML et OCL
PSM Platform Specific Model
NET J2EE
Codehellip
GTI515 Automne 2013 JF Couturier 56
Deacutepartement de geacutenie logiciel et des TI
Les diffeacuterentes eacutetapes
GTI515 Automne 2013 JF Couturier 57
Reacutef the Zachman Framework and the OMGrsquos MDA Business Process Trends Sept 2003
Deacutepartement de geacutenie logiciel et des TI
MDA et Gartner
GTI515 Automne 2013 JF Couturier 58
Gartner Hype Cycle 2008
Deacutepartement de geacutenie logiciel et des TI
Eacutetude de cas
Lecture de la discussion sur MDA Questions
Quels sont les arguments pour
Quels sont les arguments contre
Vos commentaires sur lrsquoarticle
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 59
Deacutepartement de geacutenie logiciel et des TI
Impact
Rocircle du deacuteveloppeur minimiseacute puisqursquoil nrsquointerpregravete plus le modegravele les regravegles de transformation srsquoen chargent
Modegraveles exportables drsquoune plateforme agrave un autre
Plus de 100 articles de recherche sur IEEE entre 2008 et 2009
Maishellip
GTI515 Automne 2013 JF Couturier 60
Deacutepartement de geacutenie logiciel et des TI
Impact
Est-ce applicable au monde agile
Le cycle de modeacutelisation est-il compatible avec le deacuteveloppement iteacuteratif
Est-ce qursquoil y a suffisamment de ressources hautement qualifieacutees pour reacutealiser ce type de projet
Pouvez-vous les former Pouvez-vous les conserver
Produire 80 du code et vous laisser les derniers 20 plus difficileshellip
Comment inteacutegrer les tests
GTI515 Automne 2013 JF Couturier 61
Scott Ambler Enterprise Unified Process p 191
Deacutepartement de geacutenie logiciel et des TI
Impact
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 62
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 63
Domaine
Exigences
Analyse
Conception
Reacutealisation
MDA
PIM
PSM
Modegravele des Processus drsquoaffaires
Modegravele drsquoanalyse du systegraveme
CIM
Modegravele des Cas drsquoutilisation
Modegravele de conception du systegraveme
Les modegraveles du cycle de deacuteveloppement de logiciels
Code
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 64
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 65
Deacutepartement de geacutenie logiciel et des TI
Exemple
GTI515 Automne 2013 JF Couturier 66
httpwwwibmcomdeveloperworksrationallibrary3100html
Deacutepartement de geacutenie logiciel et des TI
Ressources
Site de lOMG MDA Article drsquoIBM sur MDA Discussion sur MDA Wiki MDA Wiki QVT
GTI515 Automne 2013 JF Couturier 67
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 68
Laboratoire 1
Choix du sujet Validation de la porteacutee
Suffisamment long Plusieurs interactions humaines machines Reacutealisable dans une session
Chargeacute de laboratoire Oleg Litvinski Premier laboratoire lundi 7 mai
Deacutepartement de geacutenie logiciel et des TI
Le document de vision (RUP)
Une base de discussion et drsquoaccord parmi les intervenants du projet
Une description de lrsquoapplication en geacuteneacuteral incluant la description du marcheacute cible les clients les utilisateurs du systegraveme les problegravemes agrave reacutesoudre et les caracteacuteristiques de lrsquoapplication
GTI515 Automne 2013 JF Couturier 69
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 70
Requirements Management with Use Cases v20010300
Copyright copy 1998 2001 Rational Software all rights reserved
2
Problem
Solution Space
Problem Space
Needs
Features
SoftwareRequirements
Test Procedures Design User
Docs
The The Product Product To Be To Be BuiltBuilt
Traceability
Deacutepartement de geacutenie logiciel et des TI
Exemples de caracteacuteristiques (feature)
Domaine drsquoapplication Exemple de caracteacuteristique
Systegraveme de commande drsquoascenseur
Commande manuelle des portes durant une urgence de feu
Systegraveme de commande drsquoinventaire
Fournir un statut reacutecent de tous les items reacutepertorieacutes
Systegraveme de suivi de deacutefauts Fournir des laquo donneacutees raquo sur les tendances pour eacutevaluer la
qualiteacute
Systegraveme de paie Rapports par cateacutegories des deacuteductions remis agrave lrsquoimpocirct
Systegraveme de commande drsquoarmes
Minimum de deux confirmations indeacutependantes drsquoautorisation
drsquoattaque exigeacutee
GTI515 Automne 2013 JF Couturier 71
Deacutepartement de geacutenie logiciel et des TI
Niveau de deacutetail des caracteacuteristiques Pour tout nouveau systegraveme ou pour
une ameacutelioration majeure agrave un systegraveme existant il est recommandeacute de garder un niveau drsquoabstraction assez eacuteleveacute de sorte agrave avoir un maximum de caracteacuteristiques compris entre 25-99 et de preacutefeacuterence moins de 50
GTI515 Automne 2013 JF Couturier 72
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Statut Suit le progregraves
Exemples Proposeacute approuveacute incorporeacute etc
PrioriteacuteBeacuteneacutefice
Les caracteacuteristiques ne sont pas agrave prioriteacutes eacutegales ou geacutenegraverent des beacuteneacutefices eacutegaux
Exemple critiques importantes optionnelle
Effort Estimation du nombre de personnessemaines lignes de code points de fonction COSMIC_FFP
Risque La probabiliteacute que la caracteacuteristique aille causer un eacuteveacutenement indeacutesirable tel que le deacutepassement du budget ou des deacutelais ou mecircme lrsquoannulation du projet
GTI515 Automne 2013 JF Couturier 73
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Stabiliteacute La probabiliteacute que la caracteacuteristique elle-mecircme ou sa compreacutehension par lrsquoeacutequipe de deacuteveloppement changera
Mise en application
Documenter la version preacutevue pour laquelle la caracteacuteristique sera incorporeacutee
Assigneacutee agrave Deacutesigner lrsquoeacutequipe responsable de la caracteacuteristique
Raison Lrsquoorigine de la requecircte de la caracteacuteristique
GTI515 Automne 2013 JF Couturier 74
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 75
Deacutepartement de geacutenie logiciel et des TI
Reacutedaction du document de vision une description concise de tout ce qui est important au
produit ou agrave lrsquoapplication eacutecrit avec un niveau de deacutetails dans un langage lisible et
compreacutehensible par les intervenants du projet
Document de 15 agrave 20 pages
GTI515 Automne 2013 JF Couturier 76
Deacutepartement de geacutenie logiciel et des TI
Exemple le cas ACS
GTI515 Automne 2013 JF Couturier 77
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 78
Deacutepartement de geacutenie logiciel et des TI
Exemple de problegravemesle cas ACS
Controcircle drsquoune large gamme de mateacuteriels
Utilisation compliqueacutee Difficulteacutes de programmation Disponibiliteacute du mateacuteriel Risque de mauvaise utilisation
GTI515 Automne 2013 JF Couturier 79
Deacutepartement de geacutenie logiciel et des TI
Exemple de besoinsle cas ACS
AutomatiserLa distribution de fertilisantLa distribution de nourritureLa dureacutee de lrsquoeacuteclairage
Commander lrsquoopeacuteration des appareils Reacuteguler
le niveau et la dureteacute de lrsquoeauLa tempeacuterature
GTI515 Automne 2013 JF Couturier 80
Deacutepartement de geacutenie logiciel et des TI
Exemple de caracteacuteristiquesle cas ACS
Deacutemarrage automatique du systegraveme Programmation conserveacutee en cas de
panne drsquoalimentation Deacutetection automatique des modules Facile agrave programmer et agrave utiliser
Exigence non fonctionnelle
GTI515 Automne 2013 JF Couturier 81
Deacutepartement de geacutenie logiciel et des TI
Critegraveres drsquoeacutevaluation
Respect de lrsquoesprit du document
En tant qursquointervenant externe est-ce que je comprends bien
Respect de la forme du gabarit
Qualiteacute du franccedilais
Document de calibre professionnel que lrsquoon pourrait remettre agrave un dirigeant
GTI515 Automne 2013 JF Couturier 82
Deacutepartement de geacutenie logiciel et des TI
Grille drsquoeacutevaluation (sur 100)
Agrave venirhellip
GTI515 Automne 2013 JF Couturier 83
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 84
Prochain cours
La modeacutelisation des processus drsquoaffaires Le diagramme drsquoactiviteacute Le diagnostic des processus drsquoaffaires existant
Lectures Lrsquoutilisation drsquoUML Chapitre sur les diagrammes drsquoactiviteacutes dans Larman Lecture sur MDA Voir site Web du cours
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 85
Questions
- Systegravemes drsquoinformation dans les entreprises (GTI515)
- Plan du cours 1
- Qui suis-je JF Couturier
- Qui suis-je Eacutetudiant(e)
- Plan du cours 1 (2)
- Objectifs du programme
- Ingeacutenieur
- Programme GTI
- Geacutenie des TI
- Cours de speacutecialiteacutes GTI
- Objectif du cours
- Vue drsquoensemble du cours
- Lectures et reacutefeacuterences
- Regravegles du jeu
- QUIZ
- Plan du cours 1 (3)
- Plan de cours
- Laboratoires ndash GTI515
- Peacutenaliteacutes de retard
- Plagiat
- Plan du cours 1 (4)
- Les tendances dans le deacuteveloppement des systegravemes drsquoinformation
- UML - Historique
- Pourquoi modeacuteliser
- La modeacutelisation dans les entreprises
- Quelques chiffres
- Quelques chiffres (2)
- Quelques chiffres (3)
- Quelques chiffres (4)
- Quelques chiffres (5)
- Et maintenant
- Et maintenant (2)
- Finalementhellip
- Reacuteussite Eacutechec
- Rappel
- Industrialisation
- Industrialisation (2)
- Slide 39
- Slide 40
- Usines logicielles (S Factory)
- Usines logicielles (S Factory) (2)
- Usines logicielles (S Factory) (3)
- Usines logicielles (S Factory) (4)
- Usines logicielles
- Domain Specific Langage
- BuzzhellipMDA MDD MDE
- Exemple
- Model Driven Architecture
- Model Driven Architecture (2)
- Model Driven Architecture (3)
- Model Driven Architecture (4)
- Model Driven Architecture (5)
- Concept principal de MDA
- CIM PIM PSM Code
- Les diffeacuterentes eacutetapes
- MDA et Gartner
- Eacutetude de cas
- Impact
- Impact (2)
- Impact (3)
- Slide 63
- Slide 64
- Slide 65
- Exemple (2)
- Ressources
- Laboratoire 1
- Le document de vision (RUP)
- Slide 70
- Exemples de caracteacuteristiques (feature)
- Niveau de deacutetail des caracteacuteristiques
- Attributs des caracteacuteristiques
- Attributs des caracteacuteristiques
- Slide 75
- Reacutedaction du document de vision
- Exemple le cas ACS
- Slide 78
- Exemple de problegravemes le cas ACS
- Exemple de besoins le cas ACS
- Exemple de caracteacuteristiques le cas ACS
- Critegraveres drsquoeacutevaluation
- Grille drsquoeacutevaluation (sur 100)
- Prochain cours
- Questions
-
Deacutepartement de geacutenie logiciel et des TI
Objectifs du programmeProgramme de GTI
Former des ingeacutenieur(e)s
Geacuteneacuteralistes en systegravemes logiciels et multimeacutedias
Ayant une formation optimiseacutee pour un environnement drsquoaffaires transactionnel ougrave les technologies de lrsquoInternet sont omnipreacutesentes
Question Qursquoest-ce qursquoun ingeacutenieur pour vous
Qursquoest-ce qursquoun ingeacutenieur en GTIGTI515 Automne 2013 JF Couturier 6
Deacutepartement de geacutenie logiciel et des TI
Ingeacutenieur
Personne geacuteneacuteralement diplocircmeacutee que sa formation scientifique et technique rend apte agrave concevoir et agrave diriger certains travaux agrave participer agrave certaines recherches [Wiki]
Lexercice de la profession dingeacutenieur consiste agrave faire pour le compte dautrui lun ou lautre des actes suivants
a) Donner des consultations et des avis
b) Faire des mesurages des traceacutes preacuteparer des rapports calculs eacutetudes dessins plans devis cahiers des charges
c) Inspecter ou surveiller les travaux
[OIQ]
GTI515 Automne 2013 JF Couturier 7
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 8
Programme GTI
Disciplines couvertes Eacuteleacutements de geacutenie logiciel Ingeacutenierie des systegravemes informatiques Technologies multimeacutedias Conception et gestion de reacuteseaux informatiques Technologies de lrsquoInternet Conception de systegravemes de commerce eacutelectronique
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 9
Geacutenie logiciel
Geacuteniedes
systegravemes
Systegravemesmultimeacutedias
Reacuteseautique et
Internet
Cours geacuteneacuteraux
Stages et cours inteacutegrateurs
GTI210
Seacutecuriteacute des systegravemes
Geacutenie des TI
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 10
Cours de speacutecialiteacutes GTI GTI210 Introduction au geacutenie des TI
GTI510 Gestion de projets et assurance de la qualiteacute
GTI515 Systegravemes dinformation dans les entreprises
GTI525 Technologies de deacuteveloppement Internet
GTI710 Commerce eacutelectronique
GTI727 Progiciel de gestion inteacutegreacute
GTI660 Bases de donneacutees multimeacutedias
GTI310 Structures de donneacutees multimeacutedias
GTI410 Application des techniques numeacuteriques en graphisme et imagerie
GTI420 Infographie avanceacutee
GTI664 Applications multimeacutedias et Internet
GTI530 Aspects opeacuterationnels des reacuteseaux
GTI719 Seacutecuriteacute des reacuteseaux dentreprise
GTI777 Conception de services de reacuteseautique et de messagerie
GTI780 Sujets speacuteciaux en technologie de linformation
GTI790 Projet synthegravese en geacutenie des technologies de linformation
Deacutepartement de geacutenie logiciel et des TI
Objectif du cours
Analyse et modeacutelisation des processus drsquoaffaires Forces et faiblesses des processus drsquoaffaires
Speacutecifications des exigences drsquoun systegraveme drsquoinformation Ameacutelioration de lrsquoefficaciteacute des processus drsquoaffaires
Eacutetude des eacutetapes du cycle de transformation drsquoun systegraveme drsquoinformation automatiseacute reacutepondant aux exigences
Analyse maintenance opeacuteration drsquoun systegraveme drsquoinformation
Agrave la fin de ce cours lrsquoeacutetudiant sera en mesure dexpliquer le fonctionnement drsquoun systegraveme drsquoinformation reacuteel drsquoen eacutevaluer la qualiteacute et la pertinence et drsquoen diriger son adaptation agrave de nouvelles exigences de participer activement aux diffeacuterentes phases de lrsquoanalyse du systegraveme drsquoen controcircler la mise en place et lrsquoexploitation
Seacuteparation des responsabiliteacutes entre LOG-210 et GTIMTI-515
GTI515 Automne 2013 JF Couturier 12
Inspireacute de httpwwwetsmtlcazone2fichedecoursfichedecoursaspnumerodefiche=GTI515
Deacutepartement de geacutenie logiciel et des TI
Vue drsquoensemble du cours Analyse et modeacutelisation
Diagrammes drsquoactiviteacute
Modegravele du domaine et cas drsquoutilisation
Cas de test
Archeacutetypes drsquoanalyse ndash Modeacutelisation en couleur
Diagrammes de robustesse
BPMN et DFD
Gestion des TI
Cadre drsquoarchitecture drsquoentreprise et TOGAF
Gestion des services et ITIL V3
Maintenance logicielle et S3M
Gestion des applications et ASL (Si on a le temps)
GTI515 Automne 2013 JF Couturier 13
Deacutepartement de geacutenie logiciel et des TI
Lectures et reacutefeacuterences Sur le site Web du cours
Notes de coursArticlesEacutetudes de cas
Wikipeacutedia httpwwwwikipediaorg Comment ccedila marche
httpwwwcommentcamarchenet
GTI515 Automne 2013 JF Couturier 14
Deacutepartement de geacutenie logiciel et des TI
Regravegles du jeu La ponctualiteacute Tout le monde a la parole mais un seul agrave la
fois Un effort reacuteparti dans le temps Prendre des notes Faire les lectures demandeacutees Je nrsquoai pas reacuteponse agrave tout soyez indulgent Parfois je parle vite arrecirctez-moi La reacutepartition des coteshellipE agrave A+
GTI515 Automne 2013 JF Couturier 15
Deacutepartement de geacutenie logiciel et des TI
QUIZ
Porte sur toute la matiegravere preacutesenteacutee en cours (cumulatif)
Commence agrave 18 h 20 minutes 25 de la note chacun Cours 3 5 10 et 12
GTI515 Automne 2013 JF Couturier 16
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 17
Plan du cours 1
Qui suis-jeProfesseur Assistant Eacutetudiants
Positionnement du cours dans le programme de geacutenie des TI
Preacutesentation du plan de cours Les processus drsquoaffaires Lrsquoanalyse du domaine et la modeacutelisation Lrsquoarchitecture applicative La production et la maintenance
Deacutepartement de geacutenie logiciel et des TI
Plan de cours
Plan de GTI-515 Parce que le cours vit une refonte le
plan de cours peut connaicirctre quelques modifications
GTI515 Automne 2013 JF Couturier 18
Deacutepartement de geacutenie logiciel et des TI
Laboratoires ndash GTI515
Eacutequipes de 4 Eacutequipes formeacutees lors de la premiegravere seacuteance de laboratoire Sujet pour les laboratoires confirmeacute par le professeur et le chargeacute de
laboratoire lors de la premiegravere seacuteance de laboratoire Production des arteacutefacts des disciplines de RUP
Document de vision
Diagrammes drsquoactiviteacute et BPMN
Modegravele du domaine et archeacutetypes
Diagramme des cas drsquoutilisation cas drsquoutilisation et diagramme de robustesse
SRS
Controcircle de la qualiteacute par des inspection par les pairs Outils Visio ou Visual Paradigm
GTI515 Automne 2013 JF Couturier 19
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 20
Peacutenaliteacutes de retard
lt 24 hres 20 24 hres gt et lt48 hres 40 48 hres gt et lt72 hres 60 gt72 hres 100
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 21
Plagiat
Lire le Chapitre 10 Plagiat et fraude du Regraveglement des eacutetudes de 1er cycle
Sanction minimale demandeacutee pour un laboratoire copieacute ou autres cas de plagiat ou fraude eacutechec du cours
Autre cas Copie drsquoun livre document ou document provenant
drsquoInternet sans citer la source
Reacuteutilisation de ses travaux drsquoun autre cours sans autorisation
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 22
Plan du cours 1
Qui suis-jeProfesseur Assistant Eacutetudiants
Positionnement du cours dans le programme de geacutenie des TI
Preacutesentation du plan de cours Lrsquoarchitecture dirigeacutee par les modegraveles
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 23
Les tendances dans le deacuteveloppementdes systegravemes drsquoinformation
Modeacutelisation UML2 BPMN MDA (Model Driven Architecture) SOA (agrave lrsquoaide des Services Web) Domain Specific Language
Les frameworks autour de Eclipse NetBean Visual Studio
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 24
UML - Historique
Ref Using the UML to Describe Design Patterns Diane Strode
Deacutepartement de geacutenie logiciel et des TI
Pourquoi modeacuteliser
Un modegravele est une abstraction du monde concret qui facilite sa compreacutehension
Un modegravele peut ecirctre sous forme graphique etou textuelle
Srsquoil est sous forme graphique il doit ecirctre compleacuteteacute par une preacutesentation textuelle
GTI515 Automne 2013 JF Couturier 25
Deacutepartement de geacutenie logiciel et des TI
La modeacutelisation dans les entreprises
Une perte de temps pour les non-informaticiens et mecircme les informaticiens
Une eacutevolution ineacuteluctable avec les nouveaux outils
Modeacuteliser = precirccher dans le deacutesert Cela deacutepend de la culture de votre deacutepartement
GTI515 Automne 2013 JF Couturier 26
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
256 milliards en projet logiciel aux US16 sont compleacuteteacutes en temps et dans
les coucircts
31 sont annuleacutes (81G$)
53 deacutepassent le budget preacutevu
42 seulement sont livreacutes avec les exigences initiales
GTI515 Automne 2013 JF Couturier 27
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
GTI515 Automne 2013 JF Couturier 28
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
GTI515 Automne 2013 JF Couturier 29
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
GTI515 Automne 2013 JF Couturier 30
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
Une grande proportion de projets TI eacutechouent PourquoiPlusieurs facteurs
Les mauvaises exigences en font partie
Si ccedila va si mal crsquoest qursquoil y a quelque chose qursquoon ne fait pas bien Il faut se remettre en question
GTI515 Automne 2013 JF Couturier 31
Deacutepartement de geacutenie logiciel et des TI
Et maintenant
GTI515 Automne 2013 JF Couturier 32
CHAOS Summary 2009
Deacutepartement de geacutenie logiciel et des TI
Et maintenant
GTI515 Automne 2013 JF Couturier 33
Standish Group 1999
CHAOS Summary 2009
Deacutepartement de geacutenie logiciel et des TI
Finalementhellip
GTI515 Automne 2013 JF Couturier 34
Deacutepartement de geacutenie logiciel et des TI
Reacuteussite Eacutechec
Mais qursquoest-ce qursquoun projet reacuteussi Dans les temps Dans le budget Avec les fonctions preacutevues
GTI515 Automne 2013 JF Couturier 35
Deacutepartement de geacutenie logiciel et des TI
Rappel
Notre domaine est tregraves jeune (70 ans) Geacutenie de la constructionhellip5000 ans
Mais nous progressons tregraves rapidement Pourquoi le geacutenie en TI
Artisanat vs geacutenie (le pif vs la meacutethode)
Acircge du geacutenie logiciel TI - Maturiteacute
Science virtuelle vs Meacutecanique construction
Une tendancehellipDe lrsquoartisanat agrave lrsquoindustrialisation du deacuteveloppement logiciel
GTI515 Automne 2013 JF Couturier 36
Deacutepartement de geacutenie logiciel et des TI
Industrialisation
Vers le milieu du 19e siegravecle Segmenter le travail des individus pour
ne pas ecirctre deacutependant drsquoun artisan Permet une production beaucoup plus
efficace en seacuterie
GTI515 Automne 2013 JF Couturier 37
Deacutepartement de geacutenie logiciel et des TI
Industrialisation
Est-ce que le deacuteveloppement peut-ecirctre industrialiseacuteCertains disent que non que le logiciel agrave
un caractegravere trop creacuteatif
Drsquoautres pensent que les reacutecents progregraves dans le domaine permettent une eacuteventuelle industrialisation dans la production drsquoapplication
GTI515 Automne 2013 JF Couturier 38
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 39
Technologies(OO CBD Services Web SOA
XML AOP DB design patternshellip)
Ingeacutenierie dirigeacutee par les modegraveles
Usines logicielles (Microsoft)Architecture dirigeacutee par les modegraveles (OMG)
Deux applications drsquoun mecircme concept de base
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 40
Techniques de deacuteveloppement assisteacute par ordinateur (Reacutef Software Factories Greenfield J p144)
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Un modegravele tregraves deacutetailleacute beaucoup de code geacuteneacutereacute
CASE Tools (Computer-aided software engineering)
Mal adapteacute au deacuteveloppement agile qui implique souvent des solutions partielles tregraves tocirct dans le cycle de deacuteveloppement
Synchronisation difficile
Eacuteloigneacutee de la plateforme
GTI515 Automne 2013 JF Couturier 41
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Exemple Outils graphiques de modeacutelisation des classes
Plus proche de la plateforme
Code geacuteneacutereacute pour la plateforme
Plus simple
Aide geacuteneacuteralement le deacuteveloppeur agrave voir les deacutependances entre les classes
Il reste beaucoup de code agrave faire agrave la main
Penser agrave coder du SWING Java agrave la mitaine
GTI515 Automne 2013 JF Couturier 42
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Existence drsquoun framework logiciel
On se base sur le framework pour automatiser-compleacuteter la production de certains eacuteleacutements comme les eacuteleacutements graphiques
Abstraction plus eacuteleveacutee
VB6 et ses formulaires
NET Hibernate
Peu drsquoabstractions au niveau du modegravele Classe entiteacute-relation
GTI515 Automne 2013 JF Couturier 43
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Finalement il y a la possibiliteacute drsquoavoir une laquo pile raquo de modegraveles
Drsquoun modegravele agrave lrsquoautre il y a transformation vers un modegravele de plus en plus preacutecis
Approche MDA
Concept de Domain Specific Language
Pour un domaine particulier on creacutee des laquo templates raquo reacuteutilisables
Permets la contribution des experts meacutetiers
GTI515 Automne 2013 JF Couturier 44
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles
GTI515 Automne 2013 JF Couturier 45
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Domain Specific Langage
Par opposition au General purpose language comme UML C++ Java ou C
AvantagesPermets agrave un expert meacutetier de
comprendre et valider un modegravele
InconveacutenientCoucirct Formation Maintenance
GTI515 Automne 2013 JF Couturier 46
httpenwikipediaorgwikiDomain_Specific_Language
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 47
BuzzhellipMDA MDD MDE
Model Driven Architecturemarque de commerce de lrsquoOMG
Model Driven Developmentextension de MDAmarque de commerce de lrsquoOMG
Model Driven Engineeringexpression geacuteneacuterique
Deacutepartement de geacutenie logiciel et des TI
Exemple Agrave partir des speacutecifications des exigences logicielles
Lrsquoacteur saisit la commande contenant
lrsquoadresse de livraison
lrsquoadresse de facturation
Le systegraveme creacutee la commande
Lrsquoacteur saisit un deacutetail de la commande avec
le nom du produit
la quantiteacute demandeacutee
le prix du produit
Le systegraveme creacutee le deacutetail et revient agrave lrsquoeacutetape 3
Lrsquoacteur termine la commande
Le systegraveme ferme la commande
GTI515 Automne 2013 JF Couturier 48
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 49
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Un modegravele (Diagramme de classes UML)
Deacutepartement de geacutenie logiciel et des TI
Model Driven ArchitectureUn scheacutema XML
ltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gt
ltxsdschema xmlnsxsd=httpwww targetNamespace=helliprsaquo
ltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo minOccurs=ldquo0ldquo maxOccurs=ldquounboundedgt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdcomplexType name=ldquoDetailCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoprixldquo type=ldquo xsdfloatldquogt
ltxsdelement name=ldquoquantiteldquo type=ldquo xsdintldquogt
ltxsdelement name=ldquonomProduitldquo type=ldquo xsdstringldquogt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdschemarsaquo
GTI515 Automne 2013 JF Couturier 50
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 51
Des classes Java
public class Commande
private String adresseLivraison
private String adresseFacturation
private Collection detailCommande
hellip
String getAdresseLivraison()
void setAdresseLivraison(String value)
String getAdresseFacturation()
void setAdresseFacturation(String value)
public class DetailCommande
private float prix
private int quantite
private String nomProduit
float getPrix()
void setPrix(float value)
int getQuantite()
void setQuantite(int value)
String getNomProduit()
void setNomProduit(String value)
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 52
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Programmepublic class Commande
private String adresseLivraisonprivate String adresseFacturation
String getAdresseLivraison()void setAdresseLivraison(String value)
String getAdresseFacturation()void setAdresseFacturation(String value)
Scheacutema XMLltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gtltxsdschema xmlnsxsd=httpwww
targetNamespace=helliprsaquoltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo
xsdstringldquogt ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo
Modegravele UML3 repreacutesentationsdes mecircmes exigences
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
Speacutecifications de lrsquoOMG Seacuteparation de la logique meacutetier de
toute plateforme technique Speacutecifications drsquoun langage de
transformation (QVT)
GTI515 Automne 2013 JF Couturier 53
Deacutepartement de geacutenie logiciel et des TI
Concept principal de MDA
Modeacuteliser pour documenter le systegraveme
Modeacuteliser pour construire le systegraveme
GTI515 Automne 2013 JF Couturier 55
Deacutepartement de geacutenie logiciel et des TI
CIM PIM PSM Code CIM
Computing Independant Model
Modegravele du domaine logique meacutetier
PIM Platform Independant Model
Modegravele de conception UML et OCL
PSM Platform Specific Model
NET J2EE
Codehellip
GTI515 Automne 2013 JF Couturier 56
Deacutepartement de geacutenie logiciel et des TI
Les diffeacuterentes eacutetapes
GTI515 Automne 2013 JF Couturier 57
Reacutef the Zachman Framework and the OMGrsquos MDA Business Process Trends Sept 2003
Deacutepartement de geacutenie logiciel et des TI
MDA et Gartner
GTI515 Automne 2013 JF Couturier 58
Gartner Hype Cycle 2008
Deacutepartement de geacutenie logiciel et des TI
Eacutetude de cas
Lecture de la discussion sur MDA Questions
Quels sont les arguments pour
Quels sont les arguments contre
Vos commentaires sur lrsquoarticle
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 59
Deacutepartement de geacutenie logiciel et des TI
Impact
Rocircle du deacuteveloppeur minimiseacute puisqursquoil nrsquointerpregravete plus le modegravele les regravegles de transformation srsquoen chargent
Modegraveles exportables drsquoune plateforme agrave un autre
Plus de 100 articles de recherche sur IEEE entre 2008 et 2009
Maishellip
GTI515 Automne 2013 JF Couturier 60
Deacutepartement de geacutenie logiciel et des TI
Impact
Est-ce applicable au monde agile
Le cycle de modeacutelisation est-il compatible avec le deacuteveloppement iteacuteratif
Est-ce qursquoil y a suffisamment de ressources hautement qualifieacutees pour reacutealiser ce type de projet
Pouvez-vous les former Pouvez-vous les conserver
Produire 80 du code et vous laisser les derniers 20 plus difficileshellip
Comment inteacutegrer les tests
GTI515 Automne 2013 JF Couturier 61
Scott Ambler Enterprise Unified Process p 191
Deacutepartement de geacutenie logiciel et des TI
Impact
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 62
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 63
Domaine
Exigences
Analyse
Conception
Reacutealisation
MDA
PIM
PSM
Modegravele des Processus drsquoaffaires
Modegravele drsquoanalyse du systegraveme
CIM
Modegravele des Cas drsquoutilisation
Modegravele de conception du systegraveme
Les modegraveles du cycle de deacuteveloppement de logiciels
Code
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 64
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 65
Deacutepartement de geacutenie logiciel et des TI
Exemple
GTI515 Automne 2013 JF Couturier 66
httpwwwibmcomdeveloperworksrationallibrary3100html
Deacutepartement de geacutenie logiciel et des TI
Ressources
Site de lOMG MDA Article drsquoIBM sur MDA Discussion sur MDA Wiki MDA Wiki QVT
GTI515 Automne 2013 JF Couturier 67
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 68
Laboratoire 1
Choix du sujet Validation de la porteacutee
Suffisamment long Plusieurs interactions humaines machines Reacutealisable dans une session
Chargeacute de laboratoire Oleg Litvinski Premier laboratoire lundi 7 mai
Deacutepartement de geacutenie logiciel et des TI
Le document de vision (RUP)
Une base de discussion et drsquoaccord parmi les intervenants du projet
Une description de lrsquoapplication en geacuteneacuteral incluant la description du marcheacute cible les clients les utilisateurs du systegraveme les problegravemes agrave reacutesoudre et les caracteacuteristiques de lrsquoapplication
GTI515 Automne 2013 JF Couturier 69
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 70
Requirements Management with Use Cases v20010300
Copyright copy 1998 2001 Rational Software all rights reserved
2
Problem
Solution Space
Problem Space
Needs
Features
SoftwareRequirements
Test Procedures Design User
Docs
The The Product Product To Be To Be BuiltBuilt
Traceability
Deacutepartement de geacutenie logiciel et des TI
Exemples de caracteacuteristiques (feature)
Domaine drsquoapplication Exemple de caracteacuteristique
Systegraveme de commande drsquoascenseur
Commande manuelle des portes durant une urgence de feu
Systegraveme de commande drsquoinventaire
Fournir un statut reacutecent de tous les items reacutepertorieacutes
Systegraveme de suivi de deacutefauts Fournir des laquo donneacutees raquo sur les tendances pour eacutevaluer la
qualiteacute
Systegraveme de paie Rapports par cateacutegories des deacuteductions remis agrave lrsquoimpocirct
Systegraveme de commande drsquoarmes
Minimum de deux confirmations indeacutependantes drsquoautorisation
drsquoattaque exigeacutee
GTI515 Automne 2013 JF Couturier 71
Deacutepartement de geacutenie logiciel et des TI
Niveau de deacutetail des caracteacuteristiques Pour tout nouveau systegraveme ou pour
une ameacutelioration majeure agrave un systegraveme existant il est recommandeacute de garder un niveau drsquoabstraction assez eacuteleveacute de sorte agrave avoir un maximum de caracteacuteristiques compris entre 25-99 et de preacutefeacuterence moins de 50
GTI515 Automne 2013 JF Couturier 72
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Statut Suit le progregraves
Exemples Proposeacute approuveacute incorporeacute etc
PrioriteacuteBeacuteneacutefice
Les caracteacuteristiques ne sont pas agrave prioriteacutes eacutegales ou geacutenegraverent des beacuteneacutefices eacutegaux
Exemple critiques importantes optionnelle
Effort Estimation du nombre de personnessemaines lignes de code points de fonction COSMIC_FFP
Risque La probabiliteacute que la caracteacuteristique aille causer un eacuteveacutenement indeacutesirable tel que le deacutepassement du budget ou des deacutelais ou mecircme lrsquoannulation du projet
GTI515 Automne 2013 JF Couturier 73
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Stabiliteacute La probabiliteacute que la caracteacuteristique elle-mecircme ou sa compreacutehension par lrsquoeacutequipe de deacuteveloppement changera
Mise en application
Documenter la version preacutevue pour laquelle la caracteacuteristique sera incorporeacutee
Assigneacutee agrave Deacutesigner lrsquoeacutequipe responsable de la caracteacuteristique
Raison Lrsquoorigine de la requecircte de la caracteacuteristique
GTI515 Automne 2013 JF Couturier 74
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 75
Deacutepartement de geacutenie logiciel et des TI
Reacutedaction du document de vision une description concise de tout ce qui est important au
produit ou agrave lrsquoapplication eacutecrit avec un niveau de deacutetails dans un langage lisible et
compreacutehensible par les intervenants du projet
Document de 15 agrave 20 pages
GTI515 Automne 2013 JF Couturier 76
Deacutepartement de geacutenie logiciel et des TI
Exemple le cas ACS
GTI515 Automne 2013 JF Couturier 77
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 78
Deacutepartement de geacutenie logiciel et des TI
Exemple de problegravemesle cas ACS
Controcircle drsquoune large gamme de mateacuteriels
Utilisation compliqueacutee Difficulteacutes de programmation Disponibiliteacute du mateacuteriel Risque de mauvaise utilisation
GTI515 Automne 2013 JF Couturier 79
Deacutepartement de geacutenie logiciel et des TI
Exemple de besoinsle cas ACS
AutomatiserLa distribution de fertilisantLa distribution de nourritureLa dureacutee de lrsquoeacuteclairage
Commander lrsquoopeacuteration des appareils Reacuteguler
le niveau et la dureteacute de lrsquoeauLa tempeacuterature
GTI515 Automne 2013 JF Couturier 80
Deacutepartement de geacutenie logiciel et des TI
Exemple de caracteacuteristiquesle cas ACS
Deacutemarrage automatique du systegraveme Programmation conserveacutee en cas de
panne drsquoalimentation Deacutetection automatique des modules Facile agrave programmer et agrave utiliser
Exigence non fonctionnelle
GTI515 Automne 2013 JF Couturier 81
Deacutepartement de geacutenie logiciel et des TI
Critegraveres drsquoeacutevaluation
Respect de lrsquoesprit du document
En tant qursquointervenant externe est-ce que je comprends bien
Respect de la forme du gabarit
Qualiteacute du franccedilais
Document de calibre professionnel que lrsquoon pourrait remettre agrave un dirigeant
GTI515 Automne 2013 JF Couturier 82
Deacutepartement de geacutenie logiciel et des TI
Grille drsquoeacutevaluation (sur 100)
Agrave venirhellip
GTI515 Automne 2013 JF Couturier 83
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 84
Prochain cours
La modeacutelisation des processus drsquoaffaires Le diagramme drsquoactiviteacute Le diagnostic des processus drsquoaffaires existant
Lectures Lrsquoutilisation drsquoUML Chapitre sur les diagrammes drsquoactiviteacutes dans Larman Lecture sur MDA Voir site Web du cours
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 85
Questions
- Systegravemes drsquoinformation dans les entreprises (GTI515)
- Plan du cours 1
- Qui suis-je JF Couturier
- Qui suis-je Eacutetudiant(e)
- Plan du cours 1 (2)
- Objectifs du programme
- Ingeacutenieur
- Programme GTI
- Geacutenie des TI
- Cours de speacutecialiteacutes GTI
- Objectif du cours
- Vue drsquoensemble du cours
- Lectures et reacutefeacuterences
- Regravegles du jeu
- QUIZ
- Plan du cours 1 (3)
- Plan de cours
- Laboratoires ndash GTI515
- Peacutenaliteacutes de retard
- Plagiat
- Plan du cours 1 (4)
- Les tendances dans le deacuteveloppement des systegravemes drsquoinformation
- UML - Historique
- Pourquoi modeacuteliser
- La modeacutelisation dans les entreprises
- Quelques chiffres
- Quelques chiffres (2)
- Quelques chiffres (3)
- Quelques chiffres (4)
- Quelques chiffres (5)
- Et maintenant
- Et maintenant (2)
- Finalementhellip
- Reacuteussite Eacutechec
- Rappel
- Industrialisation
- Industrialisation (2)
- Slide 39
- Slide 40
- Usines logicielles (S Factory)
- Usines logicielles (S Factory) (2)
- Usines logicielles (S Factory) (3)
- Usines logicielles (S Factory) (4)
- Usines logicielles
- Domain Specific Langage
- BuzzhellipMDA MDD MDE
- Exemple
- Model Driven Architecture
- Model Driven Architecture (2)
- Model Driven Architecture (3)
- Model Driven Architecture (4)
- Model Driven Architecture (5)
- Concept principal de MDA
- CIM PIM PSM Code
- Les diffeacuterentes eacutetapes
- MDA et Gartner
- Eacutetude de cas
- Impact
- Impact (2)
- Impact (3)
- Slide 63
- Slide 64
- Slide 65
- Exemple (2)
- Ressources
- Laboratoire 1
- Le document de vision (RUP)
- Slide 70
- Exemples de caracteacuteristiques (feature)
- Niveau de deacutetail des caracteacuteristiques
- Attributs des caracteacuteristiques
- Attributs des caracteacuteristiques
- Slide 75
- Reacutedaction du document de vision
- Exemple le cas ACS
- Slide 78
- Exemple de problegravemes le cas ACS
- Exemple de besoins le cas ACS
- Exemple de caracteacuteristiques le cas ACS
- Critegraveres drsquoeacutevaluation
- Grille drsquoeacutevaluation (sur 100)
- Prochain cours
- Questions
-
Deacutepartement de geacutenie logiciel et des TI
Ingeacutenieur
Personne geacuteneacuteralement diplocircmeacutee que sa formation scientifique et technique rend apte agrave concevoir et agrave diriger certains travaux agrave participer agrave certaines recherches [Wiki]
Lexercice de la profession dingeacutenieur consiste agrave faire pour le compte dautrui lun ou lautre des actes suivants
a) Donner des consultations et des avis
b) Faire des mesurages des traceacutes preacuteparer des rapports calculs eacutetudes dessins plans devis cahiers des charges
c) Inspecter ou surveiller les travaux
[OIQ]
GTI515 Automne 2013 JF Couturier 7
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 8
Programme GTI
Disciplines couvertes Eacuteleacutements de geacutenie logiciel Ingeacutenierie des systegravemes informatiques Technologies multimeacutedias Conception et gestion de reacuteseaux informatiques Technologies de lrsquoInternet Conception de systegravemes de commerce eacutelectronique
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 9
Geacutenie logiciel
Geacuteniedes
systegravemes
Systegravemesmultimeacutedias
Reacuteseautique et
Internet
Cours geacuteneacuteraux
Stages et cours inteacutegrateurs
GTI210
Seacutecuriteacute des systegravemes
Geacutenie des TI
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 10
Cours de speacutecialiteacutes GTI GTI210 Introduction au geacutenie des TI
GTI510 Gestion de projets et assurance de la qualiteacute
GTI515 Systegravemes dinformation dans les entreprises
GTI525 Technologies de deacuteveloppement Internet
GTI710 Commerce eacutelectronique
GTI727 Progiciel de gestion inteacutegreacute
GTI660 Bases de donneacutees multimeacutedias
GTI310 Structures de donneacutees multimeacutedias
GTI410 Application des techniques numeacuteriques en graphisme et imagerie
GTI420 Infographie avanceacutee
GTI664 Applications multimeacutedias et Internet
GTI530 Aspects opeacuterationnels des reacuteseaux
GTI719 Seacutecuriteacute des reacuteseaux dentreprise
GTI777 Conception de services de reacuteseautique et de messagerie
GTI780 Sujets speacuteciaux en technologie de linformation
GTI790 Projet synthegravese en geacutenie des technologies de linformation
Deacutepartement de geacutenie logiciel et des TI
Objectif du cours
Analyse et modeacutelisation des processus drsquoaffaires Forces et faiblesses des processus drsquoaffaires
Speacutecifications des exigences drsquoun systegraveme drsquoinformation Ameacutelioration de lrsquoefficaciteacute des processus drsquoaffaires
Eacutetude des eacutetapes du cycle de transformation drsquoun systegraveme drsquoinformation automatiseacute reacutepondant aux exigences
Analyse maintenance opeacuteration drsquoun systegraveme drsquoinformation
Agrave la fin de ce cours lrsquoeacutetudiant sera en mesure dexpliquer le fonctionnement drsquoun systegraveme drsquoinformation reacuteel drsquoen eacutevaluer la qualiteacute et la pertinence et drsquoen diriger son adaptation agrave de nouvelles exigences de participer activement aux diffeacuterentes phases de lrsquoanalyse du systegraveme drsquoen controcircler la mise en place et lrsquoexploitation
Seacuteparation des responsabiliteacutes entre LOG-210 et GTIMTI-515
GTI515 Automne 2013 JF Couturier 12
Inspireacute de httpwwwetsmtlcazone2fichedecoursfichedecoursaspnumerodefiche=GTI515
Deacutepartement de geacutenie logiciel et des TI
Vue drsquoensemble du cours Analyse et modeacutelisation
Diagrammes drsquoactiviteacute
Modegravele du domaine et cas drsquoutilisation
Cas de test
Archeacutetypes drsquoanalyse ndash Modeacutelisation en couleur
Diagrammes de robustesse
BPMN et DFD
Gestion des TI
Cadre drsquoarchitecture drsquoentreprise et TOGAF
Gestion des services et ITIL V3
Maintenance logicielle et S3M
Gestion des applications et ASL (Si on a le temps)
GTI515 Automne 2013 JF Couturier 13
Deacutepartement de geacutenie logiciel et des TI
Lectures et reacutefeacuterences Sur le site Web du cours
Notes de coursArticlesEacutetudes de cas
Wikipeacutedia httpwwwwikipediaorg Comment ccedila marche
httpwwwcommentcamarchenet
GTI515 Automne 2013 JF Couturier 14
Deacutepartement de geacutenie logiciel et des TI
Regravegles du jeu La ponctualiteacute Tout le monde a la parole mais un seul agrave la
fois Un effort reacuteparti dans le temps Prendre des notes Faire les lectures demandeacutees Je nrsquoai pas reacuteponse agrave tout soyez indulgent Parfois je parle vite arrecirctez-moi La reacutepartition des coteshellipE agrave A+
GTI515 Automne 2013 JF Couturier 15
Deacutepartement de geacutenie logiciel et des TI
QUIZ
Porte sur toute la matiegravere preacutesenteacutee en cours (cumulatif)
Commence agrave 18 h 20 minutes 25 de la note chacun Cours 3 5 10 et 12
GTI515 Automne 2013 JF Couturier 16
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 17
Plan du cours 1
Qui suis-jeProfesseur Assistant Eacutetudiants
Positionnement du cours dans le programme de geacutenie des TI
Preacutesentation du plan de cours Les processus drsquoaffaires Lrsquoanalyse du domaine et la modeacutelisation Lrsquoarchitecture applicative La production et la maintenance
Deacutepartement de geacutenie logiciel et des TI
Plan de cours
Plan de GTI-515 Parce que le cours vit une refonte le
plan de cours peut connaicirctre quelques modifications
GTI515 Automne 2013 JF Couturier 18
Deacutepartement de geacutenie logiciel et des TI
Laboratoires ndash GTI515
Eacutequipes de 4 Eacutequipes formeacutees lors de la premiegravere seacuteance de laboratoire Sujet pour les laboratoires confirmeacute par le professeur et le chargeacute de
laboratoire lors de la premiegravere seacuteance de laboratoire Production des arteacutefacts des disciplines de RUP
Document de vision
Diagrammes drsquoactiviteacute et BPMN
Modegravele du domaine et archeacutetypes
Diagramme des cas drsquoutilisation cas drsquoutilisation et diagramme de robustesse
SRS
Controcircle de la qualiteacute par des inspection par les pairs Outils Visio ou Visual Paradigm
GTI515 Automne 2013 JF Couturier 19
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 20
Peacutenaliteacutes de retard
lt 24 hres 20 24 hres gt et lt48 hres 40 48 hres gt et lt72 hres 60 gt72 hres 100
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 21
Plagiat
Lire le Chapitre 10 Plagiat et fraude du Regraveglement des eacutetudes de 1er cycle
Sanction minimale demandeacutee pour un laboratoire copieacute ou autres cas de plagiat ou fraude eacutechec du cours
Autre cas Copie drsquoun livre document ou document provenant
drsquoInternet sans citer la source
Reacuteutilisation de ses travaux drsquoun autre cours sans autorisation
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 22
Plan du cours 1
Qui suis-jeProfesseur Assistant Eacutetudiants
Positionnement du cours dans le programme de geacutenie des TI
Preacutesentation du plan de cours Lrsquoarchitecture dirigeacutee par les modegraveles
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 23
Les tendances dans le deacuteveloppementdes systegravemes drsquoinformation
Modeacutelisation UML2 BPMN MDA (Model Driven Architecture) SOA (agrave lrsquoaide des Services Web) Domain Specific Language
Les frameworks autour de Eclipse NetBean Visual Studio
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 24
UML - Historique
Ref Using the UML to Describe Design Patterns Diane Strode
Deacutepartement de geacutenie logiciel et des TI
Pourquoi modeacuteliser
Un modegravele est une abstraction du monde concret qui facilite sa compreacutehension
Un modegravele peut ecirctre sous forme graphique etou textuelle
Srsquoil est sous forme graphique il doit ecirctre compleacuteteacute par une preacutesentation textuelle
GTI515 Automne 2013 JF Couturier 25
Deacutepartement de geacutenie logiciel et des TI
La modeacutelisation dans les entreprises
Une perte de temps pour les non-informaticiens et mecircme les informaticiens
Une eacutevolution ineacuteluctable avec les nouveaux outils
Modeacuteliser = precirccher dans le deacutesert Cela deacutepend de la culture de votre deacutepartement
GTI515 Automne 2013 JF Couturier 26
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
256 milliards en projet logiciel aux US16 sont compleacuteteacutes en temps et dans
les coucircts
31 sont annuleacutes (81G$)
53 deacutepassent le budget preacutevu
42 seulement sont livreacutes avec les exigences initiales
GTI515 Automne 2013 JF Couturier 27
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
GTI515 Automne 2013 JF Couturier 28
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
GTI515 Automne 2013 JF Couturier 29
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
GTI515 Automne 2013 JF Couturier 30
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
Une grande proportion de projets TI eacutechouent PourquoiPlusieurs facteurs
Les mauvaises exigences en font partie
Si ccedila va si mal crsquoest qursquoil y a quelque chose qursquoon ne fait pas bien Il faut se remettre en question
GTI515 Automne 2013 JF Couturier 31
Deacutepartement de geacutenie logiciel et des TI
Et maintenant
GTI515 Automne 2013 JF Couturier 32
CHAOS Summary 2009
Deacutepartement de geacutenie logiciel et des TI
Et maintenant
GTI515 Automne 2013 JF Couturier 33
Standish Group 1999
CHAOS Summary 2009
Deacutepartement de geacutenie logiciel et des TI
Finalementhellip
GTI515 Automne 2013 JF Couturier 34
Deacutepartement de geacutenie logiciel et des TI
Reacuteussite Eacutechec
Mais qursquoest-ce qursquoun projet reacuteussi Dans les temps Dans le budget Avec les fonctions preacutevues
GTI515 Automne 2013 JF Couturier 35
Deacutepartement de geacutenie logiciel et des TI
Rappel
Notre domaine est tregraves jeune (70 ans) Geacutenie de la constructionhellip5000 ans
Mais nous progressons tregraves rapidement Pourquoi le geacutenie en TI
Artisanat vs geacutenie (le pif vs la meacutethode)
Acircge du geacutenie logiciel TI - Maturiteacute
Science virtuelle vs Meacutecanique construction
Une tendancehellipDe lrsquoartisanat agrave lrsquoindustrialisation du deacuteveloppement logiciel
GTI515 Automne 2013 JF Couturier 36
Deacutepartement de geacutenie logiciel et des TI
Industrialisation
Vers le milieu du 19e siegravecle Segmenter le travail des individus pour
ne pas ecirctre deacutependant drsquoun artisan Permet une production beaucoup plus
efficace en seacuterie
GTI515 Automne 2013 JF Couturier 37
Deacutepartement de geacutenie logiciel et des TI
Industrialisation
Est-ce que le deacuteveloppement peut-ecirctre industrialiseacuteCertains disent que non que le logiciel agrave
un caractegravere trop creacuteatif
Drsquoautres pensent que les reacutecents progregraves dans le domaine permettent une eacuteventuelle industrialisation dans la production drsquoapplication
GTI515 Automne 2013 JF Couturier 38
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 39
Technologies(OO CBD Services Web SOA
XML AOP DB design patternshellip)
Ingeacutenierie dirigeacutee par les modegraveles
Usines logicielles (Microsoft)Architecture dirigeacutee par les modegraveles (OMG)
Deux applications drsquoun mecircme concept de base
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 40
Techniques de deacuteveloppement assisteacute par ordinateur (Reacutef Software Factories Greenfield J p144)
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Un modegravele tregraves deacutetailleacute beaucoup de code geacuteneacutereacute
CASE Tools (Computer-aided software engineering)
Mal adapteacute au deacuteveloppement agile qui implique souvent des solutions partielles tregraves tocirct dans le cycle de deacuteveloppement
Synchronisation difficile
Eacuteloigneacutee de la plateforme
GTI515 Automne 2013 JF Couturier 41
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Exemple Outils graphiques de modeacutelisation des classes
Plus proche de la plateforme
Code geacuteneacutereacute pour la plateforme
Plus simple
Aide geacuteneacuteralement le deacuteveloppeur agrave voir les deacutependances entre les classes
Il reste beaucoup de code agrave faire agrave la main
Penser agrave coder du SWING Java agrave la mitaine
GTI515 Automne 2013 JF Couturier 42
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Existence drsquoun framework logiciel
On se base sur le framework pour automatiser-compleacuteter la production de certains eacuteleacutements comme les eacuteleacutements graphiques
Abstraction plus eacuteleveacutee
VB6 et ses formulaires
NET Hibernate
Peu drsquoabstractions au niveau du modegravele Classe entiteacute-relation
GTI515 Automne 2013 JF Couturier 43
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Finalement il y a la possibiliteacute drsquoavoir une laquo pile raquo de modegraveles
Drsquoun modegravele agrave lrsquoautre il y a transformation vers un modegravele de plus en plus preacutecis
Approche MDA
Concept de Domain Specific Language
Pour un domaine particulier on creacutee des laquo templates raquo reacuteutilisables
Permets la contribution des experts meacutetiers
GTI515 Automne 2013 JF Couturier 44
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles
GTI515 Automne 2013 JF Couturier 45
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Domain Specific Langage
Par opposition au General purpose language comme UML C++ Java ou C
AvantagesPermets agrave un expert meacutetier de
comprendre et valider un modegravele
InconveacutenientCoucirct Formation Maintenance
GTI515 Automne 2013 JF Couturier 46
httpenwikipediaorgwikiDomain_Specific_Language
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 47
BuzzhellipMDA MDD MDE
Model Driven Architecturemarque de commerce de lrsquoOMG
Model Driven Developmentextension de MDAmarque de commerce de lrsquoOMG
Model Driven Engineeringexpression geacuteneacuterique
Deacutepartement de geacutenie logiciel et des TI
Exemple Agrave partir des speacutecifications des exigences logicielles
Lrsquoacteur saisit la commande contenant
lrsquoadresse de livraison
lrsquoadresse de facturation
Le systegraveme creacutee la commande
Lrsquoacteur saisit un deacutetail de la commande avec
le nom du produit
la quantiteacute demandeacutee
le prix du produit
Le systegraveme creacutee le deacutetail et revient agrave lrsquoeacutetape 3
Lrsquoacteur termine la commande
Le systegraveme ferme la commande
GTI515 Automne 2013 JF Couturier 48
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 49
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Un modegravele (Diagramme de classes UML)
Deacutepartement de geacutenie logiciel et des TI
Model Driven ArchitectureUn scheacutema XML
ltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gt
ltxsdschema xmlnsxsd=httpwww targetNamespace=helliprsaquo
ltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo minOccurs=ldquo0ldquo maxOccurs=ldquounboundedgt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdcomplexType name=ldquoDetailCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoprixldquo type=ldquo xsdfloatldquogt
ltxsdelement name=ldquoquantiteldquo type=ldquo xsdintldquogt
ltxsdelement name=ldquonomProduitldquo type=ldquo xsdstringldquogt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdschemarsaquo
GTI515 Automne 2013 JF Couturier 50
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 51
Des classes Java
public class Commande
private String adresseLivraison
private String adresseFacturation
private Collection detailCommande
hellip
String getAdresseLivraison()
void setAdresseLivraison(String value)
String getAdresseFacturation()
void setAdresseFacturation(String value)
public class DetailCommande
private float prix
private int quantite
private String nomProduit
float getPrix()
void setPrix(float value)
int getQuantite()
void setQuantite(int value)
String getNomProduit()
void setNomProduit(String value)
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 52
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Programmepublic class Commande
private String adresseLivraisonprivate String adresseFacturation
String getAdresseLivraison()void setAdresseLivraison(String value)
String getAdresseFacturation()void setAdresseFacturation(String value)
Scheacutema XMLltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gtltxsdschema xmlnsxsd=httpwww
targetNamespace=helliprsaquoltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo
xsdstringldquogt ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo
Modegravele UML3 repreacutesentationsdes mecircmes exigences
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
Speacutecifications de lrsquoOMG Seacuteparation de la logique meacutetier de
toute plateforme technique Speacutecifications drsquoun langage de
transformation (QVT)
GTI515 Automne 2013 JF Couturier 53
Deacutepartement de geacutenie logiciel et des TI
Concept principal de MDA
Modeacuteliser pour documenter le systegraveme
Modeacuteliser pour construire le systegraveme
GTI515 Automne 2013 JF Couturier 55
Deacutepartement de geacutenie logiciel et des TI
CIM PIM PSM Code CIM
Computing Independant Model
Modegravele du domaine logique meacutetier
PIM Platform Independant Model
Modegravele de conception UML et OCL
PSM Platform Specific Model
NET J2EE
Codehellip
GTI515 Automne 2013 JF Couturier 56
Deacutepartement de geacutenie logiciel et des TI
Les diffeacuterentes eacutetapes
GTI515 Automne 2013 JF Couturier 57
Reacutef the Zachman Framework and the OMGrsquos MDA Business Process Trends Sept 2003
Deacutepartement de geacutenie logiciel et des TI
MDA et Gartner
GTI515 Automne 2013 JF Couturier 58
Gartner Hype Cycle 2008
Deacutepartement de geacutenie logiciel et des TI
Eacutetude de cas
Lecture de la discussion sur MDA Questions
Quels sont les arguments pour
Quels sont les arguments contre
Vos commentaires sur lrsquoarticle
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 59
Deacutepartement de geacutenie logiciel et des TI
Impact
Rocircle du deacuteveloppeur minimiseacute puisqursquoil nrsquointerpregravete plus le modegravele les regravegles de transformation srsquoen chargent
Modegraveles exportables drsquoune plateforme agrave un autre
Plus de 100 articles de recherche sur IEEE entre 2008 et 2009
Maishellip
GTI515 Automne 2013 JF Couturier 60
Deacutepartement de geacutenie logiciel et des TI
Impact
Est-ce applicable au monde agile
Le cycle de modeacutelisation est-il compatible avec le deacuteveloppement iteacuteratif
Est-ce qursquoil y a suffisamment de ressources hautement qualifieacutees pour reacutealiser ce type de projet
Pouvez-vous les former Pouvez-vous les conserver
Produire 80 du code et vous laisser les derniers 20 plus difficileshellip
Comment inteacutegrer les tests
GTI515 Automne 2013 JF Couturier 61
Scott Ambler Enterprise Unified Process p 191
Deacutepartement de geacutenie logiciel et des TI
Impact
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 62
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 63
Domaine
Exigences
Analyse
Conception
Reacutealisation
MDA
PIM
PSM
Modegravele des Processus drsquoaffaires
Modegravele drsquoanalyse du systegraveme
CIM
Modegravele des Cas drsquoutilisation
Modegravele de conception du systegraveme
Les modegraveles du cycle de deacuteveloppement de logiciels
Code
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 64
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 65
Deacutepartement de geacutenie logiciel et des TI
Exemple
GTI515 Automne 2013 JF Couturier 66
httpwwwibmcomdeveloperworksrationallibrary3100html
Deacutepartement de geacutenie logiciel et des TI
Ressources
Site de lOMG MDA Article drsquoIBM sur MDA Discussion sur MDA Wiki MDA Wiki QVT
GTI515 Automne 2013 JF Couturier 67
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 68
Laboratoire 1
Choix du sujet Validation de la porteacutee
Suffisamment long Plusieurs interactions humaines machines Reacutealisable dans une session
Chargeacute de laboratoire Oleg Litvinski Premier laboratoire lundi 7 mai
Deacutepartement de geacutenie logiciel et des TI
Le document de vision (RUP)
Une base de discussion et drsquoaccord parmi les intervenants du projet
Une description de lrsquoapplication en geacuteneacuteral incluant la description du marcheacute cible les clients les utilisateurs du systegraveme les problegravemes agrave reacutesoudre et les caracteacuteristiques de lrsquoapplication
GTI515 Automne 2013 JF Couturier 69
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 70
Requirements Management with Use Cases v20010300
Copyright copy 1998 2001 Rational Software all rights reserved
2
Problem
Solution Space
Problem Space
Needs
Features
SoftwareRequirements
Test Procedures Design User
Docs
The The Product Product To Be To Be BuiltBuilt
Traceability
Deacutepartement de geacutenie logiciel et des TI
Exemples de caracteacuteristiques (feature)
Domaine drsquoapplication Exemple de caracteacuteristique
Systegraveme de commande drsquoascenseur
Commande manuelle des portes durant une urgence de feu
Systegraveme de commande drsquoinventaire
Fournir un statut reacutecent de tous les items reacutepertorieacutes
Systegraveme de suivi de deacutefauts Fournir des laquo donneacutees raquo sur les tendances pour eacutevaluer la
qualiteacute
Systegraveme de paie Rapports par cateacutegories des deacuteductions remis agrave lrsquoimpocirct
Systegraveme de commande drsquoarmes
Minimum de deux confirmations indeacutependantes drsquoautorisation
drsquoattaque exigeacutee
GTI515 Automne 2013 JF Couturier 71
Deacutepartement de geacutenie logiciel et des TI
Niveau de deacutetail des caracteacuteristiques Pour tout nouveau systegraveme ou pour
une ameacutelioration majeure agrave un systegraveme existant il est recommandeacute de garder un niveau drsquoabstraction assez eacuteleveacute de sorte agrave avoir un maximum de caracteacuteristiques compris entre 25-99 et de preacutefeacuterence moins de 50
GTI515 Automne 2013 JF Couturier 72
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Statut Suit le progregraves
Exemples Proposeacute approuveacute incorporeacute etc
PrioriteacuteBeacuteneacutefice
Les caracteacuteristiques ne sont pas agrave prioriteacutes eacutegales ou geacutenegraverent des beacuteneacutefices eacutegaux
Exemple critiques importantes optionnelle
Effort Estimation du nombre de personnessemaines lignes de code points de fonction COSMIC_FFP
Risque La probabiliteacute que la caracteacuteristique aille causer un eacuteveacutenement indeacutesirable tel que le deacutepassement du budget ou des deacutelais ou mecircme lrsquoannulation du projet
GTI515 Automne 2013 JF Couturier 73
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Stabiliteacute La probabiliteacute que la caracteacuteristique elle-mecircme ou sa compreacutehension par lrsquoeacutequipe de deacuteveloppement changera
Mise en application
Documenter la version preacutevue pour laquelle la caracteacuteristique sera incorporeacutee
Assigneacutee agrave Deacutesigner lrsquoeacutequipe responsable de la caracteacuteristique
Raison Lrsquoorigine de la requecircte de la caracteacuteristique
GTI515 Automne 2013 JF Couturier 74
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 75
Deacutepartement de geacutenie logiciel et des TI
Reacutedaction du document de vision une description concise de tout ce qui est important au
produit ou agrave lrsquoapplication eacutecrit avec un niveau de deacutetails dans un langage lisible et
compreacutehensible par les intervenants du projet
Document de 15 agrave 20 pages
GTI515 Automne 2013 JF Couturier 76
Deacutepartement de geacutenie logiciel et des TI
Exemple le cas ACS
GTI515 Automne 2013 JF Couturier 77
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 78
Deacutepartement de geacutenie logiciel et des TI
Exemple de problegravemesle cas ACS
Controcircle drsquoune large gamme de mateacuteriels
Utilisation compliqueacutee Difficulteacutes de programmation Disponibiliteacute du mateacuteriel Risque de mauvaise utilisation
GTI515 Automne 2013 JF Couturier 79
Deacutepartement de geacutenie logiciel et des TI
Exemple de besoinsle cas ACS
AutomatiserLa distribution de fertilisantLa distribution de nourritureLa dureacutee de lrsquoeacuteclairage
Commander lrsquoopeacuteration des appareils Reacuteguler
le niveau et la dureteacute de lrsquoeauLa tempeacuterature
GTI515 Automne 2013 JF Couturier 80
Deacutepartement de geacutenie logiciel et des TI
Exemple de caracteacuteristiquesle cas ACS
Deacutemarrage automatique du systegraveme Programmation conserveacutee en cas de
panne drsquoalimentation Deacutetection automatique des modules Facile agrave programmer et agrave utiliser
Exigence non fonctionnelle
GTI515 Automne 2013 JF Couturier 81
Deacutepartement de geacutenie logiciel et des TI
Critegraveres drsquoeacutevaluation
Respect de lrsquoesprit du document
En tant qursquointervenant externe est-ce que je comprends bien
Respect de la forme du gabarit
Qualiteacute du franccedilais
Document de calibre professionnel que lrsquoon pourrait remettre agrave un dirigeant
GTI515 Automne 2013 JF Couturier 82
Deacutepartement de geacutenie logiciel et des TI
Grille drsquoeacutevaluation (sur 100)
Agrave venirhellip
GTI515 Automne 2013 JF Couturier 83
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 84
Prochain cours
La modeacutelisation des processus drsquoaffaires Le diagramme drsquoactiviteacute Le diagnostic des processus drsquoaffaires existant
Lectures Lrsquoutilisation drsquoUML Chapitre sur les diagrammes drsquoactiviteacutes dans Larman Lecture sur MDA Voir site Web du cours
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 85
Questions
- Systegravemes drsquoinformation dans les entreprises (GTI515)
- Plan du cours 1
- Qui suis-je JF Couturier
- Qui suis-je Eacutetudiant(e)
- Plan du cours 1 (2)
- Objectifs du programme
- Ingeacutenieur
- Programme GTI
- Geacutenie des TI
- Cours de speacutecialiteacutes GTI
- Objectif du cours
- Vue drsquoensemble du cours
- Lectures et reacutefeacuterences
- Regravegles du jeu
- QUIZ
- Plan du cours 1 (3)
- Plan de cours
- Laboratoires ndash GTI515
- Peacutenaliteacutes de retard
- Plagiat
- Plan du cours 1 (4)
- Les tendances dans le deacuteveloppement des systegravemes drsquoinformation
- UML - Historique
- Pourquoi modeacuteliser
- La modeacutelisation dans les entreprises
- Quelques chiffres
- Quelques chiffres (2)
- Quelques chiffres (3)
- Quelques chiffres (4)
- Quelques chiffres (5)
- Et maintenant
- Et maintenant (2)
- Finalementhellip
- Reacuteussite Eacutechec
- Rappel
- Industrialisation
- Industrialisation (2)
- Slide 39
- Slide 40
- Usines logicielles (S Factory)
- Usines logicielles (S Factory) (2)
- Usines logicielles (S Factory) (3)
- Usines logicielles (S Factory) (4)
- Usines logicielles
- Domain Specific Langage
- BuzzhellipMDA MDD MDE
- Exemple
- Model Driven Architecture
- Model Driven Architecture (2)
- Model Driven Architecture (3)
- Model Driven Architecture (4)
- Model Driven Architecture (5)
- Concept principal de MDA
- CIM PIM PSM Code
- Les diffeacuterentes eacutetapes
- MDA et Gartner
- Eacutetude de cas
- Impact
- Impact (2)
- Impact (3)
- Slide 63
- Slide 64
- Slide 65
- Exemple (2)
- Ressources
- Laboratoire 1
- Le document de vision (RUP)
- Slide 70
- Exemples de caracteacuteristiques (feature)
- Niveau de deacutetail des caracteacuteristiques
- Attributs des caracteacuteristiques
- Attributs des caracteacuteristiques
- Slide 75
- Reacutedaction du document de vision
- Exemple le cas ACS
- Slide 78
- Exemple de problegravemes le cas ACS
- Exemple de besoins le cas ACS
- Exemple de caracteacuteristiques le cas ACS
- Critegraveres drsquoeacutevaluation
- Grille drsquoeacutevaluation (sur 100)
- Prochain cours
- Questions
-
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 8
Programme GTI
Disciplines couvertes Eacuteleacutements de geacutenie logiciel Ingeacutenierie des systegravemes informatiques Technologies multimeacutedias Conception et gestion de reacuteseaux informatiques Technologies de lrsquoInternet Conception de systegravemes de commerce eacutelectronique
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 9
Geacutenie logiciel
Geacuteniedes
systegravemes
Systegravemesmultimeacutedias
Reacuteseautique et
Internet
Cours geacuteneacuteraux
Stages et cours inteacutegrateurs
GTI210
Seacutecuriteacute des systegravemes
Geacutenie des TI
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 10
Cours de speacutecialiteacutes GTI GTI210 Introduction au geacutenie des TI
GTI510 Gestion de projets et assurance de la qualiteacute
GTI515 Systegravemes dinformation dans les entreprises
GTI525 Technologies de deacuteveloppement Internet
GTI710 Commerce eacutelectronique
GTI727 Progiciel de gestion inteacutegreacute
GTI660 Bases de donneacutees multimeacutedias
GTI310 Structures de donneacutees multimeacutedias
GTI410 Application des techniques numeacuteriques en graphisme et imagerie
GTI420 Infographie avanceacutee
GTI664 Applications multimeacutedias et Internet
GTI530 Aspects opeacuterationnels des reacuteseaux
GTI719 Seacutecuriteacute des reacuteseaux dentreprise
GTI777 Conception de services de reacuteseautique et de messagerie
GTI780 Sujets speacuteciaux en technologie de linformation
GTI790 Projet synthegravese en geacutenie des technologies de linformation
Deacutepartement de geacutenie logiciel et des TI
Objectif du cours
Analyse et modeacutelisation des processus drsquoaffaires Forces et faiblesses des processus drsquoaffaires
Speacutecifications des exigences drsquoun systegraveme drsquoinformation Ameacutelioration de lrsquoefficaciteacute des processus drsquoaffaires
Eacutetude des eacutetapes du cycle de transformation drsquoun systegraveme drsquoinformation automatiseacute reacutepondant aux exigences
Analyse maintenance opeacuteration drsquoun systegraveme drsquoinformation
Agrave la fin de ce cours lrsquoeacutetudiant sera en mesure dexpliquer le fonctionnement drsquoun systegraveme drsquoinformation reacuteel drsquoen eacutevaluer la qualiteacute et la pertinence et drsquoen diriger son adaptation agrave de nouvelles exigences de participer activement aux diffeacuterentes phases de lrsquoanalyse du systegraveme drsquoen controcircler la mise en place et lrsquoexploitation
Seacuteparation des responsabiliteacutes entre LOG-210 et GTIMTI-515
GTI515 Automne 2013 JF Couturier 12
Inspireacute de httpwwwetsmtlcazone2fichedecoursfichedecoursaspnumerodefiche=GTI515
Deacutepartement de geacutenie logiciel et des TI
Vue drsquoensemble du cours Analyse et modeacutelisation
Diagrammes drsquoactiviteacute
Modegravele du domaine et cas drsquoutilisation
Cas de test
Archeacutetypes drsquoanalyse ndash Modeacutelisation en couleur
Diagrammes de robustesse
BPMN et DFD
Gestion des TI
Cadre drsquoarchitecture drsquoentreprise et TOGAF
Gestion des services et ITIL V3
Maintenance logicielle et S3M
Gestion des applications et ASL (Si on a le temps)
GTI515 Automne 2013 JF Couturier 13
Deacutepartement de geacutenie logiciel et des TI
Lectures et reacutefeacuterences Sur le site Web du cours
Notes de coursArticlesEacutetudes de cas
Wikipeacutedia httpwwwwikipediaorg Comment ccedila marche
httpwwwcommentcamarchenet
GTI515 Automne 2013 JF Couturier 14
Deacutepartement de geacutenie logiciel et des TI
Regravegles du jeu La ponctualiteacute Tout le monde a la parole mais un seul agrave la
fois Un effort reacuteparti dans le temps Prendre des notes Faire les lectures demandeacutees Je nrsquoai pas reacuteponse agrave tout soyez indulgent Parfois je parle vite arrecirctez-moi La reacutepartition des coteshellipE agrave A+
GTI515 Automne 2013 JF Couturier 15
Deacutepartement de geacutenie logiciel et des TI
QUIZ
Porte sur toute la matiegravere preacutesenteacutee en cours (cumulatif)
Commence agrave 18 h 20 minutes 25 de la note chacun Cours 3 5 10 et 12
GTI515 Automne 2013 JF Couturier 16
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 17
Plan du cours 1
Qui suis-jeProfesseur Assistant Eacutetudiants
Positionnement du cours dans le programme de geacutenie des TI
Preacutesentation du plan de cours Les processus drsquoaffaires Lrsquoanalyse du domaine et la modeacutelisation Lrsquoarchitecture applicative La production et la maintenance
Deacutepartement de geacutenie logiciel et des TI
Plan de cours
Plan de GTI-515 Parce que le cours vit une refonte le
plan de cours peut connaicirctre quelques modifications
GTI515 Automne 2013 JF Couturier 18
Deacutepartement de geacutenie logiciel et des TI
Laboratoires ndash GTI515
Eacutequipes de 4 Eacutequipes formeacutees lors de la premiegravere seacuteance de laboratoire Sujet pour les laboratoires confirmeacute par le professeur et le chargeacute de
laboratoire lors de la premiegravere seacuteance de laboratoire Production des arteacutefacts des disciplines de RUP
Document de vision
Diagrammes drsquoactiviteacute et BPMN
Modegravele du domaine et archeacutetypes
Diagramme des cas drsquoutilisation cas drsquoutilisation et diagramme de robustesse
SRS
Controcircle de la qualiteacute par des inspection par les pairs Outils Visio ou Visual Paradigm
GTI515 Automne 2013 JF Couturier 19
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 20
Peacutenaliteacutes de retard
lt 24 hres 20 24 hres gt et lt48 hres 40 48 hres gt et lt72 hres 60 gt72 hres 100
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 21
Plagiat
Lire le Chapitre 10 Plagiat et fraude du Regraveglement des eacutetudes de 1er cycle
Sanction minimale demandeacutee pour un laboratoire copieacute ou autres cas de plagiat ou fraude eacutechec du cours
Autre cas Copie drsquoun livre document ou document provenant
drsquoInternet sans citer la source
Reacuteutilisation de ses travaux drsquoun autre cours sans autorisation
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 22
Plan du cours 1
Qui suis-jeProfesseur Assistant Eacutetudiants
Positionnement du cours dans le programme de geacutenie des TI
Preacutesentation du plan de cours Lrsquoarchitecture dirigeacutee par les modegraveles
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 23
Les tendances dans le deacuteveloppementdes systegravemes drsquoinformation
Modeacutelisation UML2 BPMN MDA (Model Driven Architecture) SOA (agrave lrsquoaide des Services Web) Domain Specific Language
Les frameworks autour de Eclipse NetBean Visual Studio
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 24
UML - Historique
Ref Using the UML to Describe Design Patterns Diane Strode
Deacutepartement de geacutenie logiciel et des TI
Pourquoi modeacuteliser
Un modegravele est une abstraction du monde concret qui facilite sa compreacutehension
Un modegravele peut ecirctre sous forme graphique etou textuelle
Srsquoil est sous forme graphique il doit ecirctre compleacuteteacute par une preacutesentation textuelle
GTI515 Automne 2013 JF Couturier 25
Deacutepartement de geacutenie logiciel et des TI
La modeacutelisation dans les entreprises
Une perte de temps pour les non-informaticiens et mecircme les informaticiens
Une eacutevolution ineacuteluctable avec les nouveaux outils
Modeacuteliser = precirccher dans le deacutesert Cela deacutepend de la culture de votre deacutepartement
GTI515 Automne 2013 JF Couturier 26
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
256 milliards en projet logiciel aux US16 sont compleacuteteacutes en temps et dans
les coucircts
31 sont annuleacutes (81G$)
53 deacutepassent le budget preacutevu
42 seulement sont livreacutes avec les exigences initiales
GTI515 Automne 2013 JF Couturier 27
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
GTI515 Automne 2013 JF Couturier 28
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
GTI515 Automne 2013 JF Couturier 29
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
GTI515 Automne 2013 JF Couturier 30
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
Une grande proportion de projets TI eacutechouent PourquoiPlusieurs facteurs
Les mauvaises exigences en font partie
Si ccedila va si mal crsquoest qursquoil y a quelque chose qursquoon ne fait pas bien Il faut se remettre en question
GTI515 Automne 2013 JF Couturier 31
Deacutepartement de geacutenie logiciel et des TI
Et maintenant
GTI515 Automne 2013 JF Couturier 32
CHAOS Summary 2009
Deacutepartement de geacutenie logiciel et des TI
Et maintenant
GTI515 Automne 2013 JF Couturier 33
Standish Group 1999
CHAOS Summary 2009
Deacutepartement de geacutenie logiciel et des TI
Finalementhellip
GTI515 Automne 2013 JF Couturier 34
Deacutepartement de geacutenie logiciel et des TI
Reacuteussite Eacutechec
Mais qursquoest-ce qursquoun projet reacuteussi Dans les temps Dans le budget Avec les fonctions preacutevues
GTI515 Automne 2013 JF Couturier 35
Deacutepartement de geacutenie logiciel et des TI
Rappel
Notre domaine est tregraves jeune (70 ans) Geacutenie de la constructionhellip5000 ans
Mais nous progressons tregraves rapidement Pourquoi le geacutenie en TI
Artisanat vs geacutenie (le pif vs la meacutethode)
Acircge du geacutenie logiciel TI - Maturiteacute
Science virtuelle vs Meacutecanique construction
Une tendancehellipDe lrsquoartisanat agrave lrsquoindustrialisation du deacuteveloppement logiciel
GTI515 Automne 2013 JF Couturier 36
Deacutepartement de geacutenie logiciel et des TI
Industrialisation
Vers le milieu du 19e siegravecle Segmenter le travail des individus pour
ne pas ecirctre deacutependant drsquoun artisan Permet une production beaucoup plus
efficace en seacuterie
GTI515 Automne 2013 JF Couturier 37
Deacutepartement de geacutenie logiciel et des TI
Industrialisation
Est-ce que le deacuteveloppement peut-ecirctre industrialiseacuteCertains disent que non que le logiciel agrave
un caractegravere trop creacuteatif
Drsquoautres pensent que les reacutecents progregraves dans le domaine permettent une eacuteventuelle industrialisation dans la production drsquoapplication
GTI515 Automne 2013 JF Couturier 38
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 39
Technologies(OO CBD Services Web SOA
XML AOP DB design patternshellip)
Ingeacutenierie dirigeacutee par les modegraveles
Usines logicielles (Microsoft)Architecture dirigeacutee par les modegraveles (OMG)
Deux applications drsquoun mecircme concept de base
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 40
Techniques de deacuteveloppement assisteacute par ordinateur (Reacutef Software Factories Greenfield J p144)
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Un modegravele tregraves deacutetailleacute beaucoup de code geacuteneacutereacute
CASE Tools (Computer-aided software engineering)
Mal adapteacute au deacuteveloppement agile qui implique souvent des solutions partielles tregraves tocirct dans le cycle de deacuteveloppement
Synchronisation difficile
Eacuteloigneacutee de la plateforme
GTI515 Automne 2013 JF Couturier 41
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Exemple Outils graphiques de modeacutelisation des classes
Plus proche de la plateforme
Code geacuteneacutereacute pour la plateforme
Plus simple
Aide geacuteneacuteralement le deacuteveloppeur agrave voir les deacutependances entre les classes
Il reste beaucoup de code agrave faire agrave la main
Penser agrave coder du SWING Java agrave la mitaine
GTI515 Automne 2013 JF Couturier 42
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Existence drsquoun framework logiciel
On se base sur le framework pour automatiser-compleacuteter la production de certains eacuteleacutements comme les eacuteleacutements graphiques
Abstraction plus eacuteleveacutee
VB6 et ses formulaires
NET Hibernate
Peu drsquoabstractions au niveau du modegravele Classe entiteacute-relation
GTI515 Automne 2013 JF Couturier 43
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Finalement il y a la possibiliteacute drsquoavoir une laquo pile raquo de modegraveles
Drsquoun modegravele agrave lrsquoautre il y a transformation vers un modegravele de plus en plus preacutecis
Approche MDA
Concept de Domain Specific Language
Pour un domaine particulier on creacutee des laquo templates raquo reacuteutilisables
Permets la contribution des experts meacutetiers
GTI515 Automne 2013 JF Couturier 44
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles
GTI515 Automne 2013 JF Couturier 45
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Domain Specific Langage
Par opposition au General purpose language comme UML C++ Java ou C
AvantagesPermets agrave un expert meacutetier de
comprendre et valider un modegravele
InconveacutenientCoucirct Formation Maintenance
GTI515 Automne 2013 JF Couturier 46
httpenwikipediaorgwikiDomain_Specific_Language
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 47
BuzzhellipMDA MDD MDE
Model Driven Architecturemarque de commerce de lrsquoOMG
Model Driven Developmentextension de MDAmarque de commerce de lrsquoOMG
Model Driven Engineeringexpression geacuteneacuterique
Deacutepartement de geacutenie logiciel et des TI
Exemple Agrave partir des speacutecifications des exigences logicielles
Lrsquoacteur saisit la commande contenant
lrsquoadresse de livraison
lrsquoadresse de facturation
Le systegraveme creacutee la commande
Lrsquoacteur saisit un deacutetail de la commande avec
le nom du produit
la quantiteacute demandeacutee
le prix du produit
Le systegraveme creacutee le deacutetail et revient agrave lrsquoeacutetape 3
Lrsquoacteur termine la commande
Le systegraveme ferme la commande
GTI515 Automne 2013 JF Couturier 48
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 49
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Un modegravele (Diagramme de classes UML)
Deacutepartement de geacutenie logiciel et des TI
Model Driven ArchitectureUn scheacutema XML
ltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gt
ltxsdschema xmlnsxsd=httpwww targetNamespace=helliprsaquo
ltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo minOccurs=ldquo0ldquo maxOccurs=ldquounboundedgt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdcomplexType name=ldquoDetailCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoprixldquo type=ldquo xsdfloatldquogt
ltxsdelement name=ldquoquantiteldquo type=ldquo xsdintldquogt
ltxsdelement name=ldquonomProduitldquo type=ldquo xsdstringldquogt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdschemarsaquo
GTI515 Automne 2013 JF Couturier 50
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 51
Des classes Java
public class Commande
private String adresseLivraison
private String adresseFacturation
private Collection detailCommande
hellip
String getAdresseLivraison()
void setAdresseLivraison(String value)
String getAdresseFacturation()
void setAdresseFacturation(String value)
public class DetailCommande
private float prix
private int quantite
private String nomProduit
float getPrix()
void setPrix(float value)
int getQuantite()
void setQuantite(int value)
String getNomProduit()
void setNomProduit(String value)
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 52
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Programmepublic class Commande
private String adresseLivraisonprivate String adresseFacturation
String getAdresseLivraison()void setAdresseLivraison(String value)
String getAdresseFacturation()void setAdresseFacturation(String value)
Scheacutema XMLltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gtltxsdschema xmlnsxsd=httpwww
targetNamespace=helliprsaquoltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo
xsdstringldquogt ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo
Modegravele UML3 repreacutesentationsdes mecircmes exigences
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
Speacutecifications de lrsquoOMG Seacuteparation de la logique meacutetier de
toute plateforme technique Speacutecifications drsquoun langage de
transformation (QVT)
GTI515 Automne 2013 JF Couturier 53
Deacutepartement de geacutenie logiciel et des TI
Concept principal de MDA
Modeacuteliser pour documenter le systegraveme
Modeacuteliser pour construire le systegraveme
GTI515 Automne 2013 JF Couturier 55
Deacutepartement de geacutenie logiciel et des TI
CIM PIM PSM Code CIM
Computing Independant Model
Modegravele du domaine logique meacutetier
PIM Platform Independant Model
Modegravele de conception UML et OCL
PSM Platform Specific Model
NET J2EE
Codehellip
GTI515 Automne 2013 JF Couturier 56
Deacutepartement de geacutenie logiciel et des TI
Les diffeacuterentes eacutetapes
GTI515 Automne 2013 JF Couturier 57
Reacutef the Zachman Framework and the OMGrsquos MDA Business Process Trends Sept 2003
Deacutepartement de geacutenie logiciel et des TI
MDA et Gartner
GTI515 Automne 2013 JF Couturier 58
Gartner Hype Cycle 2008
Deacutepartement de geacutenie logiciel et des TI
Eacutetude de cas
Lecture de la discussion sur MDA Questions
Quels sont les arguments pour
Quels sont les arguments contre
Vos commentaires sur lrsquoarticle
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 59
Deacutepartement de geacutenie logiciel et des TI
Impact
Rocircle du deacuteveloppeur minimiseacute puisqursquoil nrsquointerpregravete plus le modegravele les regravegles de transformation srsquoen chargent
Modegraveles exportables drsquoune plateforme agrave un autre
Plus de 100 articles de recherche sur IEEE entre 2008 et 2009
Maishellip
GTI515 Automne 2013 JF Couturier 60
Deacutepartement de geacutenie logiciel et des TI
Impact
Est-ce applicable au monde agile
Le cycle de modeacutelisation est-il compatible avec le deacuteveloppement iteacuteratif
Est-ce qursquoil y a suffisamment de ressources hautement qualifieacutees pour reacutealiser ce type de projet
Pouvez-vous les former Pouvez-vous les conserver
Produire 80 du code et vous laisser les derniers 20 plus difficileshellip
Comment inteacutegrer les tests
GTI515 Automne 2013 JF Couturier 61
Scott Ambler Enterprise Unified Process p 191
Deacutepartement de geacutenie logiciel et des TI
Impact
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 62
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 63
Domaine
Exigences
Analyse
Conception
Reacutealisation
MDA
PIM
PSM
Modegravele des Processus drsquoaffaires
Modegravele drsquoanalyse du systegraveme
CIM
Modegravele des Cas drsquoutilisation
Modegravele de conception du systegraveme
Les modegraveles du cycle de deacuteveloppement de logiciels
Code
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 64
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 65
Deacutepartement de geacutenie logiciel et des TI
Exemple
GTI515 Automne 2013 JF Couturier 66
httpwwwibmcomdeveloperworksrationallibrary3100html
Deacutepartement de geacutenie logiciel et des TI
Ressources
Site de lOMG MDA Article drsquoIBM sur MDA Discussion sur MDA Wiki MDA Wiki QVT
GTI515 Automne 2013 JF Couturier 67
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 68
Laboratoire 1
Choix du sujet Validation de la porteacutee
Suffisamment long Plusieurs interactions humaines machines Reacutealisable dans une session
Chargeacute de laboratoire Oleg Litvinski Premier laboratoire lundi 7 mai
Deacutepartement de geacutenie logiciel et des TI
Le document de vision (RUP)
Une base de discussion et drsquoaccord parmi les intervenants du projet
Une description de lrsquoapplication en geacuteneacuteral incluant la description du marcheacute cible les clients les utilisateurs du systegraveme les problegravemes agrave reacutesoudre et les caracteacuteristiques de lrsquoapplication
GTI515 Automne 2013 JF Couturier 69
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 70
Requirements Management with Use Cases v20010300
Copyright copy 1998 2001 Rational Software all rights reserved
2
Problem
Solution Space
Problem Space
Needs
Features
SoftwareRequirements
Test Procedures Design User
Docs
The The Product Product To Be To Be BuiltBuilt
Traceability
Deacutepartement de geacutenie logiciel et des TI
Exemples de caracteacuteristiques (feature)
Domaine drsquoapplication Exemple de caracteacuteristique
Systegraveme de commande drsquoascenseur
Commande manuelle des portes durant une urgence de feu
Systegraveme de commande drsquoinventaire
Fournir un statut reacutecent de tous les items reacutepertorieacutes
Systegraveme de suivi de deacutefauts Fournir des laquo donneacutees raquo sur les tendances pour eacutevaluer la
qualiteacute
Systegraveme de paie Rapports par cateacutegories des deacuteductions remis agrave lrsquoimpocirct
Systegraveme de commande drsquoarmes
Minimum de deux confirmations indeacutependantes drsquoautorisation
drsquoattaque exigeacutee
GTI515 Automne 2013 JF Couturier 71
Deacutepartement de geacutenie logiciel et des TI
Niveau de deacutetail des caracteacuteristiques Pour tout nouveau systegraveme ou pour
une ameacutelioration majeure agrave un systegraveme existant il est recommandeacute de garder un niveau drsquoabstraction assez eacuteleveacute de sorte agrave avoir un maximum de caracteacuteristiques compris entre 25-99 et de preacutefeacuterence moins de 50
GTI515 Automne 2013 JF Couturier 72
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Statut Suit le progregraves
Exemples Proposeacute approuveacute incorporeacute etc
PrioriteacuteBeacuteneacutefice
Les caracteacuteristiques ne sont pas agrave prioriteacutes eacutegales ou geacutenegraverent des beacuteneacutefices eacutegaux
Exemple critiques importantes optionnelle
Effort Estimation du nombre de personnessemaines lignes de code points de fonction COSMIC_FFP
Risque La probabiliteacute que la caracteacuteristique aille causer un eacuteveacutenement indeacutesirable tel que le deacutepassement du budget ou des deacutelais ou mecircme lrsquoannulation du projet
GTI515 Automne 2013 JF Couturier 73
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Stabiliteacute La probabiliteacute que la caracteacuteristique elle-mecircme ou sa compreacutehension par lrsquoeacutequipe de deacuteveloppement changera
Mise en application
Documenter la version preacutevue pour laquelle la caracteacuteristique sera incorporeacutee
Assigneacutee agrave Deacutesigner lrsquoeacutequipe responsable de la caracteacuteristique
Raison Lrsquoorigine de la requecircte de la caracteacuteristique
GTI515 Automne 2013 JF Couturier 74
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 75
Deacutepartement de geacutenie logiciel et des TI
Reacutedaction du document de vision une description concise de tout ce qui est important au
produit ou agrave lrsquoapplication eacutecrit avec un niveau de deacutetails dans un langage lisible et
compreacutehensible par les intervenants du projet
Document de 15 agrave 20 pages
GTI515 Automne 2013 JF Couturier 76
Deacutepartement de geacutenie logiciel et des TI
Exemple le cas ACS
GTI515 Automne 2013 JF Couturier 77
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 78
Deacutepartement de geacutenie logiciel et des TI
Exemple de problegravemesle cas ACS
Controcircle drsquoune large gamme de mateacuteriels
Utilisation compliqueacutee Difficulteacutes de programmation Disponibiliteacute du mateacuteriel Risque de mauvaise utilisation
GTI515 Automne 2013 JF Couturier 79
Deacutepartement de geacutenie logiciel et des TI
Exemple de besoinsle cas ACS
AutomatiserLa distribution de fertilisantLa distribution de nourritureLa dureacutee de lrsquoeacuteclairage
Commander lrsquoopeacuteration des appareils Reacuteguler
le niveau et la dureteacute de lrsquoeauLa tempeacuterature
GTI515 Automne 2013 JF Couturier 80
Deacutepartement de geacutenie logiciel et des TI
Exemple de caracteacuteristiquesle cas ACS
Deacutemarrage automatique du systegraveme Programmation conserveacutee en cas de
panne drsquoalimentation Deacutetection automatique des modules Facile agrave programmer et agrave utiliser
Exigence non fonctionnelle
GTI515 Automne 2013 JF Couturier 81
Deacutepartement de geacutenie logiciel et des TI
Critegraveres drsquoeacutevaluation
Respect de lrsquoesprit du document
En tant qursquointervenant externe est-ce que je comprends bien
Respect de la forme du gabarit
Qualiteacute du franccedilais
Document de calibre professionnel que lrsquoon pourrait remettre agrave un dirigeant
GTI515 Automne 2013 JF Couturier 82
Deacutepartement de geacutenie logiciel et des TI
Grille drsquoeacutevaluation (sur 100)
Agrave venirhellip
GTI515 Automne 2013 JF Couturier 83
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 84
Prochain cours
La modeacutelisation des processus drsquoaffaires Le diagramme drsquoactiviteacute Le diagnostic des processus drsquoaffaires existant
Lectures Lrsquoutilisation drsquoUML Chapitre sur les diagrammes drsquoactiviteacutes dans Larman Lecture sur MDA Voir site Web du cours
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 85
Questions
- Systegravemes drsquoinformation dans les entreprises (GTI515)
- Plan du cours 1
- Qui suis-je JF Couturier
- Qui suis-je Eacutetudiant(e)
- Plan du cours 1 (2)
- Objectifs du programme
- Ingeacutenieur
- Programme GTI
- Geacutenie des TI
- Cours de speacutecialiteacutes GTI
- Objectif du cours
- Vue drsquoensemble du cours
- Lectures et reacutefeacuterences
- Regravegles du jeu
- QUIZ
- Plan du cours 1 (3)
- Plan de cours
- Laboratoires ndash GTI515
- Peacutenaliteacutes de retard
- Plagiat
- Plan du cours 1 (4)
- Les tendances dans le deacuteveloppement des systegravemes drsquoinformation
- UML - Historique
- Pourquoi modeacuteliser
- La modeacutelisation dans les entreprises
- Quelques chiffres
- Quelques chiffres (2)
- Quelques chiffres (3)
- Quelques chiffres (4)
- Quelques chiffres (5)
- Et maintenant
- Et maintenant (2)
- Finalementhellip
- Reacuteussite Eacutechec
- Rappel
- Industrialisation
- Industrialisation (2)
- Slide 39
- Slide 40
- Usines logicielles (S Factory)
- Usines logicielles (S Factory) (2)
- Usines logicielles (S Factory) (3)
- Usines logicielles (S Factory) (4)
- Usines logicielles
- Domain Specific Langage
- BuzzhellipMDA MDD MDE
- Exemple
- Model Driven Architecture
- Model Driven Architecture (2)
- Model Driven Architecture (3)
- Model Driven Architecture (4)
- Model Driven Architecture (5)
- Concept principal de MDA
- CIM PIM PSM Code
- Les diffeacuterentes eacutetapes
- MDA et Gartner
- Eacutetude de cas
- Impact
- Impact (2)
- Impact (3)
- Slide 63
- Slide 64
- Slide 65
- Exemple (2)
- Ressources
- Laboratoire 1
- Le document de vision (RUP)
- Slide 70
- Exemples de caracteacuteristiques (feature)
- Niveau de deacutetail des caracteacuteristiques
- Attributs des caracteacuteristiques
- Attributs des caracteacuteristiques
- Slide 75
- Reacutedaction du document de vision
- Exemple le cas ACS
- Slide 78
- Exemple de problegravemes le cas ACS
- Exemple de besoins le cas ACS
- Exemple de caracteacuteristiques le cas ACS
- Critegraveres drsquoeacutevaluation
- Grille drsquoeacutevaluation (sur 100)
- Prochain cours
- Questions
-
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 9
Geacutenie logiciel
Geacuteniedes
systegravemes
Systegravemesmultimeacutedias
Reacuteseautique et
Internet
Cours geacuteneacuteraux
Stages et cours inteacutegrateurs
GTI210
Seacutecuriteacute des systegravemes
Geacutenie des TI
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 10
Cours de speacutecialiteacutes GTI GTI210 Introduction au geacutenie des TI
GTI510 Gestion de projets et assurance de la qualiteacute
GTI515 Systegravemes dinformation dans les entreprises
GTI525 Technologies de deacuteveloppement Internet
GTI710 Commerce eacutelectronique
GTI727 Progiciel de gestion inteacutegreacute
GTI660 Bases de donneacutees multimeacutedias
GTI310 Structures de donneacutees multimeacutedias
GTI410 Application des techniques numeacuteriques en graphisme et imagerie
GTI420 Infographie avanceacutee
GTI664 Applications multimeacutedias et Internet
GTI530 Aspects opeacuterationnels des reacuteseaux
GTI719 Seacutecuriteacute des reacuteseaux dentreprise
GTI777 Conception de services de reacuteseautique et de messagerie
GTI780 Sujets speacuteciaux en technologie de linformation
GTI790 Projet synthegravese en geacutenie des technologies de linformation
Deacutepartement de geacutenie logiciel et des TI
Objectif du cours
Analyse et modeacutelisation des processus drsquoaffaires Forces et faiblesses des processus drsquoaffaires
Speacutecifications des exigences drsquoun systegraveme drsquoinformation Ameacutelioration de lrsquoefficaciteacute des processus drsquoaffaires
Eacutetude des eacutetapes du cycle de transformation drsquoun systegraveme drsquoinformation automatiseacute reacutepondant aux exigences
Analyse maintenance opeacuteration drsquoun systegraveme drsquoinformation
Agrave la fin de ce cours lrsquoeacutetudiant sera en mesure dexpliquer le fonctionnement drsquoun systegraveme drsquoinformation reacuteel drsquoen eacutevaluer la qualiteacute et la pertinence et drsquoen diriger son adaptation agrave de nouvelles exigences de participer activement aux diffeacuterentes phases de lrsquoanalyse du systegraveme drsquoen controcircler la mise en place et lrsquoexploitation
Seacuteparation des responsabiliteacutes entre LOG-210 et GTIMTI-515
GTI515 Automne 2013 JF Couturier 12
Inspireacute de httpwwwetsmtlcazone2fichedecoursfichedecoursaspnumerodefiche=GTI515
Deacutepartement de geacutenie logiciel et des TI
Vue drsquoensemble du cours Analyse et modeacutelisation
Diagrammes drsquoactiviteacute
Modegravele du domaine et cas drsquoutilisation
Cas de test
Archeacutetypes drsquoanalyse ndash Modeacutelisation en couleur
Diagrammes de robustesse
BPMN et DFD
Gestion des TI
Cadre drsquoarchitecture drsquoentreprise et TOGAF
Gestion des services et ITIL V3
Maintenance logicielle et S3M
Gestion des applications et ASL (Si on a le temps)
GTI515 Automne 2013 JF Couturier 13
Deacutepartement de geacutenie logiciel et des TI
Lectures et reacutefeacuterences Sur le site Web du cours
Notes de coursArticlesEacutetudes de cas
Wikipeacutedia httpwwwwikipediaorg Comment ccedila marche
httpwwwcommentcamarchenet
GTI515 Automne 2013 JF Couturier 14
Deacutepartement de geacutenie logiciel et des TI
Regravegles du jeu La ponctualiteacute Tout le monde a la parole mais un seul agrave la
fois Un effort reacuteparti dans le temps Prendre des notes Faire les lectures demandeacutees Je nrsquoai pas reacuteponse agrave tout soyez indulgent Parfois je parle vite arrecirctez-moi La reacutepartition des coteshellipE agrave A+
GTI515 Automne 2013 JF Couturier 15
Deacutepartement de geacutenie logiciel et des TI
QUIZ
Porte sur toute la matiegravere preacutesenteacutee en cours (cumulatif)
Commence agrave 18 h 20 minutes 25 de la note chacun Cours 3 5 10 et 12
GTI515 Automne 2013 JF Couturier 16
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 17
Plan du cours 1
Qui suis-jeProfesseur Assistant Eacutetudiants
Positionnement du cours dans le programme de geacutenie des TI
Preacutesentation du plan de cours Les processus drsquoaffaires Lrsquoanalyse du domaine et la modeacutelisation Lrsquoarchitecture applicative La production et la maintenance
Deacutepartement de geacutenie logiciel et des TI
Plan de cours
Plan de GTI-515 Parce que le cours vit une refonte le
plan de cours peut connaicirctre quelques modifications
GTI515 Automne 2013 JF Couturier 18
Deacutepartement de geacutenie logiciel et des TI
Laboratoires ndash GTI515
Eacutequipes de 4 Eacutequipes formeacutees lors de la premiegravere seacuteance de laboratoire Sujet pour les laboratoires confirmeacute par le professeur et le chargeacute de
laboratoire lors de la premiegravere seacuteance de laboratoire Production des arteacutefacts des disciplines de RUP
Document de vision
Diagrammes drsquoactiviteacute et BPMN
Modegravele du domaine et archeacutetypes
Diagramme des cas drsquoutilisation cas drsquoutilisation et diagramme de robustesse
SRS
Controcircle de la qualiteacute par des inspection par les pairs Outils Visio ou Visual Paradigm
GTI515 Automne 2013 JF Couturier 19
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 20
Peacutenaliteacutes de retard
lt 24 hres 20 24 hres gt et lt48 hres 40 48 hres gt et lt72 hres 60 gt72 hres 100
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 21
Plagiat
Lire le Chapitre 10 Plagiat et fraude du Regraveglement des eacutetudes de 1er cycle
Sanction minimale demandeacutee pour un laboratoire copieacute ou autres cas de plagiat ou fraude eacutechec du cours
Autre cas Copie drsquoun livre document ou document provenant
drsquoInternet sans citer la source
Reacuteutilisation de ses travaux drsquoun autre cours sans autorisation
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 22
Plan du cours 1
Qui suis-jeProfesseur Assistant Eacutetudiants
Positionnement du cours dans le programme de geacutenie des TI
Preacutesentation du plan de cours Lrsquoarchitecture dirigeacutee par les modegraveles
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 23
Les tendances dans le deacuteveloppementdes systegravemes drsquoinformation
Modeacutelisation UML2 BPMN MDA (Model Driven Architecture) SOA (agrave lrsquoaide des Services Web) Domain Specific Language
Les frameworks autour de Eclipse NetBean Visual Studio
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 24
UML - Historique
Ref Using the UML to Describe Design Patterns Diane Strode
Deacutepartement de geacutenie logiciel et des TI
Pourquoi modeacuteliser
Un modegravele est une abstraction du monde concret qui facilite sa compreacutehension
Un modegravele peut ecirctre sous forme graphique etou textuelle
Srsquoil est sous forme graphique il doit ecirctre compleacuteteacute par une preacutesentation textuelle
GTI515 Automne 2013 JF Couturier 25
Deacutepartement de geacutenie logiciel et des TI
La modeacutelisation dans les entreprises
Une perte de temps pour les non-informaticiens et mecircme les informaticiens
Une eacutevolution ineacuteluctable avec les nouveaux outils
Modeacuteliser = precirccher dans le deacutesert Cela deacutepend de la culture de votre deacutepartement
GTI515 Automne 2013 JF Couturier 26
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
256 milliards en projet logiciel aux US16 sont compleacuteteacutes en temps et dans
les coucircts
31 sont annuleacutes (81G$)
53 deacutepassent le budget preacutevu
42 seulement sont livreacutes avec les exigences initiales
GTI515 Automne 2013 JF Couturier 27
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
GTI515 Automne 2013 JF Couturier 28
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
GTI515 Automne 2013 JF Couturier 29
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
GTI515 Automne 2013 JF Couturier 30
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
Une grande proportion de projets TI eacutechouent PourquoiPlusieurs facteurs
Les mauvaises exigences en font partie
Si ccedila va si mal crsquoest qursquoil y a quelque chose qursquoon ne fait pas bien Il faut se remettre en question
GTI515 Automne 2013 JF Couturier 31
Deacutepartement de geacutenie logiciel et des TI
Et maintenant
GTI515 Automne 2013 JF Couturier 32
CHAOS Summary 2009
Deacutepartement de geacutenie logiciel et des TI
Et maintenant
GTI515 Automne 2013 JF Couturier 33
Standish Group 1999
CHAOS Summary 2009
Deacutepartement de geacutenie logiciel et des TI
Finalementhellip
GTI515 Automne 2013 JF Couturier 34
Deacutepartement de geacutenie logiciel et des TI
Reacuteussite Eacutechec
Mais qursquoest-ce qursquoun projet reacuteussi Dans les temps Dans le budget Avec les fonctions preacutevues
GTI515 Automne 2013 JF Couturier 35
Deacutepartement de geacutenie logiciel et des TI
Rappel
Notre domaine est tregraves jeune (70 ans) Geacutenie de la constructionhellip5000 ans
Mais nous progressons tregraves rapidement Pourquoi le geacutenie en TI
Artisanat vs geacutenie (le pif vs la meacutethode)
Acircge du geacutenie logiciel TI - Maturiteacute
Science virtuelle vs Meacutecanique construction
Une tendancehellipDe lrsquoartisanat agrave lrsquoindustrialisation du deacuteveloppement logiciel
GTI515 Automne 2013 JF Couturier 36
Deacutepartement de geacutenie logiciel et des TI
Industrialisation
Vers le milieu du 19e siegravecle Segmenter le travail des individus pour
ne pas ecirctre deacutependant drsquoun artisan Permet une production beaucoup plus
efficace en seacuterie
GTI515 Automne 2013 JF Couturier 37
Deacutepartement de geacutenie logiciel et des TI
Industrialisation
Est-ce que le deacuteveloppement peut-ecirctre industrialiseacuteCertains disent que non que le logiciel agrave
un caractegravere trop creacuteatif
Drsquoautres pensent que les reacutecents progregraves dans le domaine permettent une eacuteventuelle industrialisation dans la production drsquoapplication
GTI515 Automne 2013 JF Couturier 38
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 39
Technologies(OO CBD Services Web SOA
XML AOP DB design patternshellip)
Ingeacutenierie dirigeacutee par les modegraveles
Usines logicielles (Microsoft)Architecture dirigeacutee par les modegraveles (OMG)
Deux applications drsquoun mecircme concept de base
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 40
Techniques de deacuteveloppement assisteacute par ordinateur (Reacutef Software Factories Greenfield J p144)
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Un modegravele tregraves deacutetailleacute beaucoup de code geacuteneacutereacute
CASE Tools (Computer-aided software engineering)
Mal adapteacute au deacuteveloppement agile qui implique souvent des solutions partielles tregraves tocirct dans le cycle de deacuteveloppement
Synchronisation difficile
Eacuteloigneacutee de la plateforme
GTI515 Automne 2013 JF Couturier 41
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Exemple Outils graphiques de modeacutelisation des classes
Plus proche de la plateforme
Code geacuteneacutereacute pour la plateforme
Plus simple
Aide geacuteneacuteralement le deacuteveloppeur agrave voir les deacutependances entre les classes
Il reste beaucoup de code agrave faire agrave la main
Penser agrave coder du SWING Java agrave la mitaine
GTI515 Automne 2013 JF Couturier 42
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Existence drsquoun framework logiciel
On se base sur le framework pour automatiser-compleacuteter la production de certains eacuteleacutements comme les eacuteleacutements graphiques
Abstraction plus eacuteleveacutee
VB6 et ses formulaires
NET Hibernate
Peu drsquoabstractions au niveau du modegravele Classe entiteacute-relation
GTI515 Automne 2013 JF Couturier 43
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Finalement il y a la possibiliteacute drsquoavoir une laquo pile raquo de modegraveles
Drsquoun modegravele agrave lrsquoautre il y a transformation vers un modegravele de plus en plus preacutecis
Approche MDA
Concept de Domain Specific Language
Pour un domaine particulier on creacutee des laquo templates raquo reacuteutilisables
Permets la contribution des experts meacutetiers
GTI515 Automne 2013 JF Couturier 44
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles
GTI515 Automne 2013 JF Couturier 45
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Domain Specific Langage
Par opposition au General purpose language comme UML C++ Java ou C
AvantagesPermets agrave un expert meacutetier de
comprendre et valider un modegravele
InconveacutenientCoucirct Formation Maintenance
GTI515 Automne 2013 JF Couturier 46
httpenwikipediaorgwikiDomain_Specific_Language
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 47
BuzzhellipMDA MDD MDE
Model Driven Architecturemarque de commerce de lrsquoOMG
Model Driven Developmentextension de MDAmarque de commerce de lrsquoOMG
Model Driven Engineeringexpression geacuteneacuterique
Deacutepartement de geacutenie logiciel et des TI
Exemple Agrave partir des speacutecifications des exigences logicielles
Lrsquoacteur saisit la commande contenant
lrsquoadresse de livraison
lrsquoadresse de facturation
Le systegraveme creacutee la commande
Lrsquoacteur saisit un deacutetail de la commande avec
le nom du produit
la quantiteacute demandeacutee
le prix du produit
Le systegraveme creacutee le deacutetail et revient agrave lrsquoeacutetape 3
Lrsquoacteur termine la commande
Le systegraveme ferme la commande
GTI515 Automne 2013 JF Couturier 48
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 49
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Un modegravele (Diagramme de classes UML)
Deacutepartement de geacutenie logiciel et des TI
Model Driven ArchitectureUn scheacutema XML
ltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gt
ltxsdschema xmlnsxsd=httpwww targetNamespace=helliprsaquo
ltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo minOccurs=ldquo0ldquo maxOccurs=ldquounboundedgt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdcomplexType name=ldquoDetailCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoprixldquo type=ldquo xsdfloatldquogt
ltxsdelement name=ldquoquantiteldquo type=ldquo xsdintldquogt
ltxsdelement name=ldquonomProduitldquo type=ldquo xsdstringldquogt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdschemarsaquo
GTI515 Automne 2013 JF Couturier 50
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 51
Des classes Java
public class Commande
private String adresseLivraison
private String adresseFacturation
private Collection detailCommande
hellip
String getAdresseLivraison()
void setAdresseLivraison(String value)
String getAdresseFacturation()
void setAdresseFacturation(String value)
public class DetailCommande
private float prix
private int quantite
private String nomProduit
float getPrix()
void setPrix(float value)
int getQuantite()
void setQuantite(int value)
String getNomProduit()
void setNomProduit(String value)
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 52
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Programmepublic class Commande
private String adresseLivraisonprivate String adresseFacturation
String getAdresseLivraison()void setAdresseLivraison(String value)
String getAdresseFacturation()void setAdresseFacturation(String value)
Scheacutema XMLltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gtltxsdschema xmlnsxsd=httpwww
targetNamespace=helliprsaquoltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo
xsdstringldquogt ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo
Modegravele UML3 repreacutesentationsdes mecircmes exigences
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
Speacutecifications de lrsquoOMG Seacuteparation de la logique meacutetier de
toute plateforme technique Speacutecifications drsquoun langage de
transformation (QVT)
GTI515 Automne 2013 JF Couturier 53
Deacutepartement de geacutenie logiciel et des TI
Concept principal de MDA
Modeacuteliser pour documenter le systegraveme
Modeacuteliser pour construire le systegraveme
GTI515 Automne 2013 JF Couturier 55
Deacutepartement de geacutenie logiciel et des TI
CIM PIM PSM Code CIM
Computing Independant Model
Modegravele du domaine logique meacutetier
PIM Platform Independant Model
Modegravele de conception UML et OCL
PSM Platform Specific Model
NET J2EE
Codehellip
GTI515 Automne 2013 JF Couturier 56
Deacutepartement de geacutenie logiciel et des TI
Les diffeacuterentes eacutetapes
GTI515 Automne 2013 JF Couturier 57
Reacutef the Zachman Framework and the OMGrsquos MDA Business Process Trends Sept 2003
Deacutepartement de geacutenie logiciel et des TI
MDA et Gartner
GTI515 Automne 2013 JF Couturier 58
Gartner Hype Cycle 2008
Deacutepartement de geacutenie logiciel et des TI
Eacutetude de cas
Lecture de la discussion sur MDA Questions
Quels sont les arguments pour
Quels sont les arguments contre
Vos commentaires sur lrsquoarticle
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 59
Deacutepartement de geacutenie logiciel et des TI
Impact
Rocircle du deacuteveloppeur minimiseacute puisqursquoil nrsquointerpregravete plus le modegravele les regravegles de transformation srsquoen chargent
Modegraveles exportables drsquoune plateforme agrave un autre
Plus de 100 articles de recherche sur IEEE entre 2008 et 2009
Maishellip
GTI515 Automne 2013 JF Couturier 60
Deacutepartement de geacutenie logiciel et des TI
Impact
Est-ce applicable au monde agile
Le cycle de modeacutelisation est-il compatible avec le deacuteveloppement iteacuteratif
Est-ce qursquoil y a suffisamment de ressources hautement qualifieacutees pour reacutealiser ce type de projet
Pouvez-vous les former Pouvez-vous les conserver
Produire 80 du code et vous laisser les derniers 20 plus difficileshellip
Comment inteacutegrer les tests
GTI515 Automne 2013 JF Couturier 61
Scott Ambler Enterprise Unified Process p 191
Deacutepartement de geacutenie logiciel et des TI
Impact
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 62
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 63
Domaine
Exigences
Analyse
Conception
Reacutealisation
MDA
PIM
PSM
Modegravele des Processus drsquoaffaires
Modegravele drsquoanalyse du systegraveme
CIM
Modegravele des Cas drsquoutilisation
Modegravele de conception du systegraveme
Les modegraveles du cycle de deacuteveloppement de logiciels
Code
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 64
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 65
Deacutepartement de geacutenie logiciel et des TI
Exemple
GTI515 Automne 2013 JF Couturier 66
httpwwwibmcomdeveloperworksrationallibrary3100html
Deacutepartement de geacutenie logiciel et des TI
Ressources
Site de lOMG MDA Article drsquoIBM sur MDA Discussion sur MDA Wiki MDA Wiki QVT
GTI515 Automne 2013 JF Couturier 67
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 68
Laboratoire 1
Choix du sujet Validation de la porteacutee
Suffisamment long Plusieurs interactions humaines machines Reacutealisable dans une session
Chargeacute de laboratoire Oleg Litvinski Premier laboratoire lundi 7 mai
Deacutepartement de geacutenie logiciel et des TI
Le document de vision (RUP)
Une base de discussion et drsquoaccord parmi les intervenants du projet
Une description de lrsquoapplication en geacuteneacuteral incluant la description du marcheacute cible les clients les utilisateurs du systegraveme les problegravemes agrave reacutesoudre et les caracteacuteristiques de lrsquoapplication
GTI515 Automne 2013 JF Couturier 69
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 70
Requirements Management with Use Cases v20010300
Copyright copy 1998 2001 Rational Software all rights reserved
2
Problem
Solution Space
Problem Space
Needs
Features
SoftwareRequirements
Test Procedures Design User
Docs
The The Product Product To Be To Be BuiltBuilt
Traceability
Deacutepartement de geacutenie logiciel et des TI
Exemples de caracteacuteristiques (feature)
Domaine drsquoapplication Exemple de caracteacuteristique
Systegraveme de commande drsquoascenseur
Commande manuelle des portes durant une urgence de feu
Systegraveme de commande drsquoinventaire
Fournir un statut reacutecent de tous les items reacutepertorieacutes
Systegraveme de suivi de deacutefauts Fournir des laquo donneacutees raquo sur les tendances pour eacutevaluer la
qualiteacute
Systegraveme de paie Rapports par cateacutegories des deacuteductions remis agrave lrsquoimpocirct
Systegraveme de commande drsquoarmes
Minimum de deux confirmations indeacutependantes drsquoautorisation
drsquoattaque exigeacutee
GTI515 Automne 2013 JF Couturier 71
Deacutepartement de geacutenie logiciel et des TI
Niveau de deacutetail des caracteacuteristiques Pour tout nouveau systegraveme ou pour
une ameacutelioration majeure agrave un systegraveme existant il est recommandeacute de garder un niveau drsquoabstraction assez eacuteleveacute de sorte agrave avoir un maximum de caracteacuteristiques compris entre 25-99 et de preacutefeacuterence moins de 50
GTI515 Automne 2013 JF Couturier 72
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Statut Suit le progregraves
Exemples Proposeacute approuveacute incorporeacute etc
PrioriteacuteBeacuteneacutefice
Les caracteacuteristiques ne sont pas agrave prioriteacutes eacutegales ou geacutenegraverent des beacuteneacutefices eacutegaux
Exemple critiques importantes optionnelle
Effort Estimation du nombre de personnessemaines lignes de code points de fonction COSMIC_FFP
Risque La probabiliteacute que la caracteacuteristique aille causer un eacuteveacutenement indeacutesirable tel que le deacutepassement du budget ou des deacutelais ou mecircme lrsquoannulation du projet
GTI515 Automne 2013 JF Couturier 73
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Stabiliteacute La probabiliteacute que la caracteacuteristique elle-mecircme ou sa compreacutehension par lrsquoeacutequipe de deacuteveloppement changera
Mise en application
Documenter la version preacutevue pour laquelle la caracteacuteristique sera incorporeacutee
Assigneacutee agrave Deacutesigner lrsquoeacutequipe responsable de la caracteacuteristique
Raison Lrsquoorigine de la requecircte de la caracteacuteristique
GTI515 Automne 2013 JF Couturier 74
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 75
Deacutepartement de geacutenie logiciel et des TI
Reacutedaction du document de vision une description concise de tout ce qui est important au
produit ou agrave lrsquoapplication eacutecrit avec un niveau de deacutetails dans un langage lisible et
compreacutehensible par les intervenants du projet
Document de 15 agrave 20 pages
GTI515 Automne 2013 JF Couturier 76
Deacutepartement de geacutenie logiciel et des TI
Exemple le cas ACS
GTI515 Automne 2013 JF Couturier 77
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 78
Deacutepartement de geacutenie logiciel et des TI
Exemple de problegravemesle cas ACS
Controcircle drsquoune large gamme de mateacuteriels
Utilisation compliqueacutee Difficulteacutes de programmation Disponibiliteacute du mateacuteriel Risque de mauvaise utilisation
GTI515 Automne 2013 JF Couturier 79
Deacutepartement de geacutenie logiciel et des TI
Exemple de besoinsle cas ACS
AutomatiserLa distribution de fertilisantLa distribution de nourritureLa dureacutee de lrsquoeacuteclairage
Commander lrsquoopeacuteration des appareils Reacuteguler
le niveau et la dureteacute de lrsquoeauLa tempeacuterature
GTI515 Automne 2013 JF Couturier 80
Deacutepartement de geacutenie logiciel et des TI
Exemple de caracteacuteristiquesle cas ACS
Deacutemarrage automatique du systegraveme Programmation conserveacutee en cas de
panne drsquoalimentation Deacutetection automatique des modules Facile agrave programmer et agrave utiliser
Exigence non fonctionnelle
GTI515 Automne 2013 JF Couturier 81
Deacutepartement de geacutenie logiciel et des TI
Critegraveres drsquoeacutevaluation
Respect de lrsquoesprit du document
En tant qursquointervenant externe est-ce que je comprends bien
Respect de la forme du gabarit
Qualiteacute du franccedilais
Document de calibre professionnel que lrsquoon pourrait remettre agrave un dirigeant
GTI515 Automne 2013 JF Couturier 82
Deacutepartement de geacutenie logiciel et des TI
Grille drsquoeacutevaluation (sur 100)
Agrave venirhellip
GTI515 Automne 2013 JF Couturier 83
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 84
Prochain cours
La modeacutelisation des processus drsquoaffaires Le diagramme drsquoactiviteacute Le diagnostic des processus drsquoaffaires existant
Lectures Lrsquoutilisation drsquoUML Chapitre sur les diagrammes drsquoactiviteacutes dans Larman Lecture sur MDA Voir site Web du cours
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 85
Questions
- Systegravemes drsquoinformation dans les entreprises (GTI515)
- Plan du cours 1
- Qui suis-je JF Couturier
- Qui suis-je Eacutetudiant(e)
- Plan du cours 1 (2)
- Objectifs du programme
- Ingeacutenieur
- Programme GTI
- Geacutenie des TI
- Cours de speacutecialiteacutes GTI
- Objectif du cours
- Vue drsquoensemble du cours
- Lectures et reacutefeacuterences
- Regravegles du jeu
- QUIZ
- Plan du cours 1 (3)
- Plan de cours
- Laboratoires ndash GTI515
- Peacutenaliteacutes de retard
- Plagiat
- Plan du cours 1 (4)
- Les tendances dans le deacuteveloppement des systegravemes drsquoinformation
- UML - Historique
- Pourquoi modeacuteliser
- La modeacutelisation dans les entreprises
- Quelques chiffres
- Quelques chiffres (2)
- Quelques chiffres (3)
- Quelques chiffres (4)
- Quelques chiffres (5)
- Et maintenant
- Et maintenant (2)
- Finalementhellip
- Reacuteussite Eacutechec
- Rappel
- Industrialisation
- Industrialisation (2)
- Slide 39
- Slide 40
- Usines logicielles (S Factory)
- Usines logicielles (S Factory) (2)
- Usines logicielles (S Factory) (3)
- Usines logicielles (S Factory) (4)
- Usines logicielles
- Domain Specific Langage
- BuzzhellipMDA MDD MDE
- Exemple
- Model Driven Architecture
- Model Driven Architecture (2)
- Model Driven Architecture (3)
- Model Driven Architecture (4)
- Model Driven Architecture (5)
- Concept principal de MDA
- CIM PIM PSM Code
- Les diffeacuterentes eacutetapes
- MDA et Gartner
- Eacutetude de cas
- Impact
- Impact (2)
- Impact (3)
- Slide 63
- Slide 64
- Slide 65
- Exemple (2)
- Ressources
- Laboratoire 1
- Le document de vision (RUP)
- Slide 70
- Exemples de caracteacuteristiques (feature)
- Niveau de deacutetail des caracteacuteristiques
- Attributs des caracteacuteristiques
- Attributs des caracteacuteristiques
- Slide 75
- Reacutedaction du document de vision
- Exemple le cas ACS
- Slide 78
- Exemple de problegravemes le cas ACS
- Exemple de besoins le cas ACS
- Exemple de caracteacuteristiques le cas ACS
- Critegraveres drsquoeacutevaluation
- Grille drsquoeacutevaluation (sur 100)
- Prochain cours
- Questions
-
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 10
Cours de speacutecialiteacutes GTI GTI210 Introduction au geacutenie des TI
GTI510 Gestion de projets et assurance de la qualiteacute
GTI515 Systegravemes dinformation dans les entreprises
GTI525 Technologies de deacuteveloppement Internet
GTI710 Commerce eacutelectronique
GTI727 Progiciel de gestion inteacutegreacute
GTI660 Bases de donneacutees multimeacutedias
GTI310 Structures de donneacutees multimeacutedias
GTI410 Application des techniques numeacuteriques en graphisme et imagerie
GTI420 Infographie avanceacutee
GTI664 Applications multimeacutedias et Internet
GTI530 Aspects opeacuterationnels des reacuteseaux
GTI719 Seacutecuriteacute des reacuteseaux dentreprise
GTI777 Conception de services de reacuteseautique et de messagerie
GTI780 Sujets speacuteciaux en technologie de linformation
GTI790 Projet synthegravese en geacutenie des technologies de linformation
Deacutepartement de geacutenie logiciel et des TI
Objectif du cours
Analyse et modeacutelisation des processus drsquoaffaires Forces et faiblesses des processus drsquoaffaires
Speacutecifications des exigences drsquoun systegraveme drsquoinformation Ameacutelioration de lrsquoefficaciteacute des processus drsquoaffaires
Eacutetude des eacutetapes du cycle de transformation drsquoun systegraveme drsquoinformation automatiseacute reacutepondant aux exigences
Analyse maintenance opeacuteration drsquoun systegraveme drsquoinformation
Agrave la fin de ce cours lrsquoeacutetudiant sera en mesure dexpliquer le fonctionnement drsquoun systegraveme drsquoinformation reacuteel drsquoen eacutevaluer la qualiteacute et la pertinence et drsquoen diriger son adaptation agrave de nouvelles exigences de participer activement aux diffeacuterentes phases de lrsquoanalyse du systegraveme drsquoen controcircler la mise en place et lrsquoexploitation
Seacuteparation des responsabiliteacutes entre LOG-210 et GTIMTI-515
GTI515 Automne 2013 JF Couturier 12
Inspireacute de httpwwwetsmtlcazone2fichedecoursfichedecoursaspnumerodefiche=GTI515
Deacutepartement de geacutenie logiciel et des TI
Vue drsquoensemble du cours Analyse et modeacutelisation
Diagrammes drsquoactiviteacute
Modegravele du domaine et cas drsquoutilisation
Cas de test
Archeacutetypes drsquoanalyse ndash Modeacutelisation en couleur
Diagrammes de robustesse
BPMN et DFD
Gestion des TI
Cadre drsquoarchitecture drsquoentreprise et TOGAF
Gestion des services et ITIL V3
Maintenance logicielle et S3M
Gestion des applications et ASL (Si on a le temps)
GTI515 Automne 2013 JF Couturier 13
Deacutepartement de geacutenie logiciel et des TI
Lectures et reacutefeacuterences Sur le site Web du cours
Notes de coursArticlesEacutetudes de cas
Wikipeacutedia httpwwwwikipediaorg Comment ccedila marche
httpwwwcommentcamarchenet
GTI515 Automne 2013 JF Couturier 14
Deacutepartement de geacutenie logiciel et des TI
Regravegles du jeu La ponctualiteacute Tout le monde a la parole mais un seul agrave la
fois Un effort reacuteparti dans le temps Prendre des notes Faire les lectures demandeacutees Je nrsquoai pas reacuteponse agrave tout soyez indulgent Parfois je parle vite arrecirctez-moi La reacutepartition des coteshellipE agrave A+
GTI515 Automne 2013 JF Couturier 15
Deacutepartement de geacutenie logiciel et des TI
QUIZ
Porte sur toute la matiegravere preacutesenteacutee en cours (cumulatif)
Commence agrave 18 h 20 minutes 25 de la note chacun Cours 3 5 10 et 12
GTI515 Automne 2013 JF Couturier 16
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 17
Plan du cours 1
Qui suis-jeProfesseur Assistant Eacutetudiants
Positionnement du cours dans le programme de geacutenie des TI
Preacutesentation du plan de cours Les processus drsquoaffaires Lrsquoanalyse du domaine et la modeacutelisation Lrsquoarchitecture applicative La production et la maintenance
Deacutepartement de geacutenie logiciel et des TI
Plan de cours
Plan de GTI-515 Parce que le cours vit une refonte le
plan de cours peut connaicirctre quelques modifications
GTI515 Automne 2013 JF Couturier 18
Deacutepartement de geacutenie logiciel et des TI
Laboratoires ndash GTI515
Eacutequipes de 4 Eacutequipes formeacutees lors de la premiegravere seacuteance de laboratoire Sujet pour les laboratoires confirmeacute par le professeur et le chargeacute de
laboratoire lors de la premiegravere seacuteance de laboratoire Production des arteacutefacts des disciplines de RUP
Document de vision
Diagrammes drsquoactiviteacute et BPMN
Modegravele du domaine et archeacutetypes
Diagramme des cas drsquoutilisation cas drsquoutilisation et diagramme de robustesse
SRS
Controcircle de la qualiteacute par des inspection par les pairs Outils Visio ou Visual Paradigm
GTI515 Automne 2013 JF Couturier 19
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 20
Peacutenaliteacutes de retard
lt 24 hres 20 24 hres gt et lt48 hres 40 48 hres gt et lt72 hres 60 gt72 hres 100
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 21
Plagiat
Lire le Chapitre 10 Plagiat et fraude du Regraveglement des eacutetudes de 1er cycle
Sanction minimale demandeacutee pour un laboratoire copieacute ou autres cas de plagiat ou fraude eacutechec du cours
Autre cas Copie drsquoun livre document ou document provenant
drsquoInternet sans citer la source
Reacuteutilisation de ses travaux drsquoun autre cours sans autorisation
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 22
Plan du cours 1
Qui suis-jeProfesseur Assistant Eacutetudiants
Positionnement du cours dans le programme de geacutenie des TI
Preacutesentation du plan de cours Lrsquoarchitecture dirigeacutee par les modegraveles
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 23
Les tendances dans le deacuteveloppementdes systegravemes drsquoinformation
Modeacutelisation UML2 BPMN MDA (Model Driven Architecture) SOA (agrave lrsquoaide des Services Web) Domain Specific Language
Les frameworks autour de Eclipse NetBean Visual Studio
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 24
UML - Historique
Ref Using the UML to Describe Design Patterns Diane Strode
Deacutepartement de geacutenie logiciel et des TI
Pourquoi modeacuteliser
Un modegravele est une abstraction du monde concret qui facilite sa compreacutehension
Un modegravele peut ecirctre sous forme graphique etou textuelle
Srsquoil est sous forme graphique il doit ecirctre compleacuteteacute par une preacutesentation textuelle
GTI515 Automne 2013 JF Couturier 25
Deacutepartement de geacutenie logiciel et des TI
La modeacutelisation dans les entreprises
Une perte de temps pour les non-informaticiens et mecircme les informaticiens
Une eacutevolution ineacuteluctable avec les nouveaux outils
Modeacuteliser = precirccher dans le deacutesert Cela deacutepend de la culture de votre deacutepartement
GTI515 Automne 2013 JF Couturier 26
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
256 milliards en projet logiciel aux US16 sont compleacuteteacutes en temps et dans
les coucircts
31 sont annuleacutes (81G$)
53 deacutepassent le budget preacutevu
42 seulement sont livreacutes avec les exigences initiales
GTI515 Automne 2013 JF Couturier 27
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
GTI515 Automne 2013 JF Couturier 28
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
GTI515 Automne 2013 JF Couturier 29
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
GTI515 Automne 2013 JF Couturier 30
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
Une grande proportion de projets TI eacutechouent PourquoiPlusieurs facteurs
Les mauvaises exigences en font partie
Si ccedila va si mal crsquoest qursquoil y a quelque chose qursquoon ne fait pas bien Il faut se remettre en question
GTI515 Automne 2013 JF Couturier 31
Deacutepartement de geacutenie logiciel et des TI
Et maintenant
GTI515 Automne 2013 JF Couturier 32
CHAOS Summary 2009
Deacutepartement de geacutenie logiciel et des TI
Et maintenant
GTI515 Automne 2013 JF Couturier 33
Standish Group 1999
CHAOS Summary 2009
Deacutepartement de geacutenie logiciel et des TI
Finalementhellip
GTI515 Automne 2013 JF Couturier 34
Deacutepartement de geacutenie logiciel et des TI
Reacuteussite Eacutechec
Mais qursquoest-ce qursquoun projet reacuteussi Dans les temps Dans le budget Avec les fonctions preacutevues
GTI515 Automne 2013 JF Couturier 35
Deacutepartement de geacutenie logiciel et des TI
Rappel
Notre domaine est tregraves jeune (70 ans) Geacutenie de la constructionhellip5000 ans
Mais nous progressons tregraves rapidement Pourquoi le geacutenie en TI
Artisanat vs geacutenie (le pif vs la meacutethode)
Acircge du geacutenie logiciel TI - Maturiteacute
Science virtuelle vs Meacutecanique construction
Une tendancehellipDe lrsquoartisanat agrave lrsquoindustrialisation du deacuteveloppement logiciel
GTI515 Automne 2013 JF Couturier 36
Deacutepartement de geacutenie logiciel et des TI
Industrialisation
Vers le milieu du 19e siegravecle Segmenter le travail des individus pour
ne pas ecirctre deacutependant drsquoun artisan Permet une production beaucoup plus
efficace en seacuterie
GTI515 Automne 2013 JF Couturier 37
Deacutepartement de geacutenie logiciel et des TI
Industrialisation
Est-ce que le deacuteveloppement peut-ecirctre industrialiseacuteCertains disent que non que le logiciel agrave
un caractegravere trop creacuteatif
Drsquoautres pensent que les reacutecents progregraves dans le domaine permettent une eacuteventuelle industrialisation dans la production drsquoapplication
GTI515 Automne 2013 JF Couturier 38
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 39
Technologies(OO CBD Services Web SOA
XML AOP DB design patternshellip)
Ingeacutenierie dirigeacutee par les modegraveles
Usines logicielles (Microsoft)Architecture dirigeacutee par les modegraveles (OMG)
Deux applications drsquoun mecircme concept de base
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 40
Techniques de deacuteveloppement assisteacute par ordinateur (Reacutef Software Factories Greenfield J p144)
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Un modegravele tregraves deacutetailleacute beaucoup de code geacuteneacutereacute
CASE Tools (Computer-aided software engineering)
Mal adapteacute au deacuteveloppement agile qui implique souvent des solutions partielles tregraves tocirct dans le cycle de deacuteveloppement
Synchronisation difficile
Eacuteloigneacutee de la plateforme
GTI515 Automne 2013 JF Couturier 41
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Exemple Outils graphiques de modeacutelisation des classes
Plus proche de la plateforme
Code geacuteneacutereacute pour la plateforme
Plus simple
Aide geacuteneacuteralement le deacuteveloppeur agrave voir les deacutependances entre les classes
Il reste beaucoup de code agrave faire agrave la main
Penser agrave coder du SWING Java agrave la mitaine
GTI515 Automne 2013 JF Couturier 42
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Existence drsquoun framework logiciel
On se base sur le framework pour automatiser-compleacuteter la production de certains eacuteleacutements comme les eacuteleacutements graphiques
Abstraction plus eacuteleveacutee
VB6 et ses formulaires
NET Hibernate
Peu drsquoabstractions au niveau du modegravele Classe entiteacute-relation
GTI515 Automne 2013 JF Couturier 43
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Finalement il y a la possibiliteacute drsquoavoir une laquo pile raquo de modegraveles
Drsquoun modegravele agrave lrsquoautre il y a transformation vers un modegravele de plus en plus preacutecis
Approche MDA
Concept de Domain Specific Language
Pour un domaine particulier on creacutee des laquo templates raquo reacuteutilisables
Permets la contribution des experts meacutetiers
GTI515 Automne 2013 JF Couturier 44
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles
GTI515 Automne 2013 JF Couturier 45
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Domain Specific Langage
Par opposition au General purpose language comme UML C++ Java ou C
AvantagesPermets agrave un expert meacutetier de
comprendre et valider un modegravele
InconveacutenientCoucirct Formation Maintenance
GTI515 Automne 2013 JF Couturier 46
httpenwikipediaorgwikiDomain_Specific_Language
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 47
BuzzhellipMDA MDD MDE
Model Driven Architecturemarque de commerce de lrsquoOMG
Model Driven Developmentextension de MDAmarque de commerce de lrsquoOMG
Model Driven Engineeringexpression geacuteneacuterique
Deacutepartement de geacutenie logiciel et des TI
Exemple Agrave partir des speacutecifications des exigences logicielles
Lrsquoacteur saisit la commande contenant
lrsquoadresse de livraison
lrsquoadresse de facturation
Le systegraveme creacutee la commande
Lrsquoacteur saisit un deacutetail de la commande avec
le nom du produit
la quantiteacute demandeacutee
le prix du produit
Le systegraveme creacutee le deacutetail et revient agrave lrsquoeacutetape 3
Lrsquoacteur termine la commande
Le systegraveme ferme la commande
GTI515 Automne 2013 JF Couturier 48
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 49
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Un modegravele (Diagramme de classes UML)
Deacutepartement de geacutenie logiciel et des TI
Model Driven ArchitectureUn scheacutema XML
ltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gt
ltxsdschema xmlnsxsd=httpwww targetNamespace=helliprsaquo
ltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo minOccurs=ldquo0ldquo maxOccurs=ldquounboundedgt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdcomplexType name=ldquoDetailCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoprixldquo type=ldquo xsdfloatldquogt
ltxsdelement name=ldquoquantiteldquo type=ldquo xsdintldquogt
ltxsdelement name=ldquonomProduitldquo type=ldquo xsdstringldquogt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdschemarsaquo
GTI515 Automne 2013 JF Couturier 50
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 51
Des classes Java
public class Commande
private String adresseLivraison
private String adresseFacturation
private Collection detailCommande
hellip
String getAdresseLivraison()
void setAdresseLivraison(String value)
String getAdresseFacturation()
void setAdresseFacturation(String value)
public class DetailCommande
private float prix
private int quantite
private String nomProduit
float getPrix()
void setPrix(float value)
int getQuantite()
void setQuantite(int value)
String getNomProduit()
void setNomProduit(String value)
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 52
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Programmepublic class Commande
private String adresseLivraisonprivate String adresseFacturation
String getAdresseLivraison()void setAdresseLivraison(String value)
String getAdresseFacturation()void setAdresseFacturation(String value)
Scheacutema XMLltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gtltxsdschema xmlnsxsd=httpwww
targetNamespace=helliprsaquoltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo
xsdstringldquogt ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo
Modegravele UML3 repreacutesentationsdes mecircmes exigences
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
Speacutecifications de lrsquoOMG Seacuteparation de la logique meacutetier de
toute plateforme technique Speacutecifications drsquoun langage de
transformation (QVT)
GTI515 Automne 2013 JF Couturier 53
Deacutepartement de geacutenie logiciel et des TI
Concept principal de MDA
Modeacuteliser pour documenter le systegraveme
Modeacuteliser pour construire le systegraveme
GTI515 Automne 2013 JF Couturier 55
Deacutepartement de geacutenie logiciel et des TI
CIM PIM PSM Code CIM
Computing Independant Model
Modegravele du domaine logique meacutetier
PIM Platform Independant Model
Modegravele de conception UML et OCL
PSM Platform Specific Model
NET J2EE
Codehellip
GTI515 Automne 2013 JF Couturier 56
Deacutepartement de geacutenie logiciel et des TI
Les diffeacuterentes eacutetapes
GTI515 Automne 2013 JF Couturier 57
Reacutef the Zachman Framework and the OMGrsquos MDA Business Process Trends Sept 2003
Deacutepartement de geacutenie logiciel et des TI
MDA et Gartner
GTI515 Automne 2013 JF Couturier 58
Gartner Hype Cycle 2008
Deacutepartement de geacutenie logiciel et des TI
Eacutetude de cas
Lecture de la discussion sur MDA Questions
Quels sont les arguments pour
Quels sont les arguments contre
Vos commentaires sur lrsquoarticle
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 59
Deacutepartement de geacutenie logiciel et des TI
Impact
Rocircle du deacuteveloppeur minimiseacute puisqursquoil nrsquointerpregravete plus le modegravele les regravegles de transformation srsquoen chargent
Modegraveles exportables drsquoune plateforme agrave un autre
Plus de 100 articles de recherche sur IEEE entre 2008 et 2009
Maishellip
GTI515 Automne 2013 JF Couturier 60
Deacutepartement de geacutenie logiciel et des TI
Impact
Est-ce applicable au monde agile
Le cycle de modeacutelisation est-il compatible avec le deacuteveloppement iteacuteratif
Est-ce qursquoil y a suffisamment de ressources hautement qualifieacutees pour reacutealiser ce type de projet
Pouvez-vous les former Pouvez-vous les conserver
Produire 80 du code et vous laisser les derniers 20 plus difficileshellip
Comment inteacutegrer les tests
GTI515 Automne 2013 JF Couturier 61
Scott Ambler Enterprise Unified Process p 191
Deacutepartement de geacutenie logiciel et des TI
Impact
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 62
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 63
Domaine
Exigences
Analyse
Conception
Reacutealisation
MDA
PIM
PSM
Modegravele des Processus drsquoaffaires
Modegravele drsquoanalyse du systegraveme
CIM
Modegravele des Cas drsquoutilisation
Modegravele de conception du systegraveme
Les modegraveles du cycle de deacuteveloppement de logiciels
Code
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 64
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 65
Deacutepartement de geacutenie logiciel et des TI
Exemple
GTI515 Automne 2013 JF Couturier 66
httpwwwibmcomdeveloperworksrationallibrary3100html
Deacutepartement de geacutenie logiciel et des TI
Ressources
Site de lOMG MDA Article drsquoIBM sur MDA Discussion sur MDA Wiki MDA Wiki QVT
GTI515 Automne 2013 JF Couturier 67
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 68
Laboratoire 1
Choix du sujet Validation de la porteacutee
Suffisamment long Plusieurs interactions humaines machines Reacutealisable dans une session
Chargeacute de laboratoire Oleg Litvinski Premier laboratoire lundi 7 mai
Deacutepartement de geacutenie logiciel et des TI
Le document de vision (RUP)
Une base de discussion et drsquoaccord parmi les intervenants du projet
Une description de lrsquoapplication en geacuteneacuteral incluant la description du marcheacute cible les clients les utilisateurs du systegraveme les problegravemes agrave reacutesoudre et les caracteacuteristiques de lrsquoapplication
GTI515 Automne 2013 JF Couturier 69
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 70
Requirements Management with Use Cases v20010300
Copyright copy 1998 2001 Rational Software all rights reserved
2
Problem
Solution Space
Problem Space
Needs
Features
SoftwareRequirements
Test Procedures Design User
Docs
The The Product Product To Be To Be BuiltBuilt
Traceability
Deacutepartement de geacutenie logiciel et des TI
Exemples de caracteacuteristiques (feature)
Domaine drsquoapplication Exemple de caracteacuteristique
Systegraveme de commande drsquoascenseur
Commande manuelle des portes durant une urgence de feu
Systegraveme de commande drsquoinventaire
Fournir un statut reacutecent de tous les items reacutepertorieacutes
Systegraveme de suivi de deacutefauts Fournir des laquo donneacutees raquo sur les tendances pour eacutevaluer la
qualiteacute
Systegraveme de paie Rapports par cateacutegories des deacuteductions remis agrave lrsquoimpocirct
Systegraveme de commande drsquoarmes
Minimum de deux confirmations indeacutependantes drsquoautorisation
drsquoattaque exigeacutee
GTI515 Automne 2013 JF Couturier 71
Deacutepartement de geacutenie logiciel et des TI
Niveau de deacutetail des caracteacuteristiques Pour tout nouveau systegraveme ou pour
une ameacutelioration majeure agrave un systegraveme existant il est recommandeacute de garder un niveau drsquoabstraction assez eacuteleveacute de sorte agrave avoir un maximum de caracteacuteristiques compris entre 25-99 et de preacutefeacuterence moins de 50
GTI515 Automne 2013 JF Couturier 72
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Statut Suit le progregraves
Exemples Proposeacute approuveacute incorporeacute etc
PrioriteacuteBeacuteneacutefice
Les caracteacuteristiques ne sont pas agrave prioriteacutes eacutegales ou geacutenegraverent des beacuteneacutefices eacutegaux
Exemple critiques importantes optionnelle
Effort Estimation du nombre de personnessemaines lignes de code points de fonction COSMIC_FFP
Risque La probabiliteacute que la caracteacuteristique aille causer un eacuteveacutenement indeacutesirable tel que le deacutepassement du budget ou des deacutelais ou mecircme lrsquoannulation du projet
GTI515 Automne 2013 JF Couturier 73
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Stabiliteacute La probabiliteacute que la caracteacuteristique elle-mecircme ou sa compreacutehension par lrsquoeacutequipe de deacuteveloppement changera
Mise en application
Documenter la version preacutevue pour laquelle la caracteacuteristique sera incorporeacutee
Assigneacutee agrave Deacutesigner lrsquoeacutequipe responsable de la caracteacuteristique
Raison Lrsquoorigine de la requecircte de la caracteacuteristique
GTI515 Automne 2013 JF Couturier 74
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 75
Deacutepartement de geacutenie logiciel et des TI
Reacutedaction du document de vision une description concise de tout ce qui est important au
produit ou agrave lrsquoapplication eacutecrit avec un niveau de deacutetails dans un langage lisible et
compreacutehensible par les intervenants du projet
Document de 15 agrave 20 pages
GTI515 Automne 2013 JF Couturier 76
Deacutepartement de geacutenie logiciel et des TI
Exemple le cas ACS
GTI515 Automne 2013 JF Couturier 77
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 78
Deacutepartement de geacutenie logiciel et des TI
Exemple de problegravemesle cas ACS
Controcircle drsquoune large gamme de mateacuteriels
Utilisation compliqueacutee Difficulteacutes de programmation Disponibiliteacute du mateacuteriel Risque de mauvaise utilisation
GTI515 Automne 2013 JF Couturier 79
Deacutepartement de geacutenie logiciel et des TI
Exemple de besoinsle cas ACS
AutomatiserLa distribution de fertilisantLa distribution de nourritureLa dureacutee de lrsquoeacuteclairage
Commander lrsquoopeacuteration des appareils Reacuteguler
le niveau et la dureteacute de lrsquoeauLa tempeacuterature
GTI515 Automne 2013 JF Couturier 80
Deacutepartement de geacutenie logiciel et des TI
Exemple de caracteacuteristiquesle cas ACS
Deacutemarrage automatique du systegraveme Programmation conserveacutee en cas de
panne drsquoalimentation Deacutetection automatique des modules Facile agrave programmer et agrave utiliser
Exigence non fonctionnelle
GTI515 Automne 2013 JF Couturier 81
Deacutepartement de geacutenie logiciel et des TI
Critegraveres drsquoeacutevaluation
Respect de lrsquoesprit du document
En tant qursquointervenant externe est-ce que je comprends bien
Respect de la forme du gabarit
Qualiteacute du franccedilais
Document de calibre professionnel que lrsquoon pourrait remettre agrave un dirigeant
GTI515 Automne 2013 JF Couturier 82
Deacutepartement de geacutenie logiciel et des TI
Grille drsquoeacutevaluation (sur 100)
Agrave venirhellip
GTI515 Automne 2013 JF Couturier 83
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 84
Prochain cours
La modeacutelisation des processus drsquoaffaires Le diagramme drsquoactiviteacute Le diagnostic des processus drsquoaffaires existant
Lectures Lrsquoutilisation drsquoUML Chapitre sur les diagrammes drsquoactiviteacutes dans Larman Lecture sur MDA Voir site Web du cours
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 85
Questions
- Systegravemes drsquoinformation dans les entreprises (GTI515)
- Plan du cours 1
- Qui suis-je JF Couturier
- Qui suis-je Eacutetudiant(e)
- Plan du cours 1 (2)
- Objectifs du programme
- Ingeacutenieur
- Programme GTI
- Geacutenie des TI
- Cours de speacutecialiteacutes GTI
- Objectif du cours
- Vue drsquoensemble du cours
- Lectures et reacutefeacuterences
- Regravegles du jeu
- QUIZ
- Plan du cours 1 (3)
- Plan de cours
- Laboratoires ndash GTI515
- Peacutenaliteacutes de retard
- Plagiat
- Plan du cours 1 (4)
- Les tendances dans le deacuteveloppement des systegravemes drsquoinformation
- UML - Historique
- Pourquoi modeacuteliser
- La modeacutelisation dans les entreprises
- Quelques chiffres
- Quelques chiffres (2)
- Quelques chiffres (3)
- Quelques chiffres (4)
- Quelques chiffres (5)
- Et maintenant
- Et maintenant (2)
- Finalementhellip
- Reacuteussite Eacutechec
- Rappel
- Industrialisation
- Industrialisation (2)
- Slide 39
- Slide 40
- Usines logicielles (S Factory)
- Usines logicielles (S Factory) (2)
- Usines logicielles (S Factory) (3)
- Usines logicielles (S Factory) (4)
- Usines logicielles
- Domain Specific Langage
- BuzzhellipMDA MDD MDE
- Exemple
- Model Driven Architecture
- Model Driven Architecture (2)
- Model Driven Architecture (3)
- Model Driven Architecture (4)
- Model Driven Architecture (5)
- Concept principal de MDA
- CIM PIM PSM Code
- Les diffeacuterentes eacutetapes
- MDA et Gartner
- Eacutetude de cas
- Impact
- Impact (2)
- Impact (3)
- Slide 63
- Slide 64
- Slide 65
- Exemple (2)
- Ressources
- Laboratoire 1
- Le document de vision (RUP)
- Slide 70
- Exemples de caracteacuteristiques (feature)
- Niveau de deacutetail des caracteacuteristiques
- Attributs des caracteacuteristiques
- Attributs des caracteacuteristiques
- Slide 75
- Reacutedaction du document de vision
- Exemple le cas ACS
- Slide 78
- Exemple de problegravemes le cas ACS
- Exemple de besoins le cas ACS
- Exemple de caracteacuteristiques le cas ACS
- Critegraveres drsquoeacutevaluation
- Grille drsquoeacutevaluation (sur 100)
- Prochain cours
- Questions
-
Deacutepartement de geacutenie logiciel et des TI
Objectif du cours
Analyse et modeacutelisation des processus drsquoaffaires Forces et faiblesses des processus drsquoaffaires
Speacutecifications des exigences drsquoun systegraveme drsquoinformation Ameacutelioration de lrsquoefficaciteacute des processus drsquoaffaires
Eacutetude des eacutetapes du cycle de transformation drsquoun systegraveme drsquoinformation automatiseacute reacutepondant aux exigences
Analyse maintenance opeacuteration drsquoun systegraveme drsquoinformation
Agrave la fin de ce cours lrsquoeacutetudiant sera en mesure dexpliquer le fonctionnement drsquoun systegraveme drsquoinformation reacuteel drsquoen eacutevaluer la qualiteacute et la pertinence et drsquoen diriger son adaptation agrave de nouvelles exigences de participer activement aux diffeacuterentes phases de lrsquoanalyse du systegraveme drsquoen controcircler la mise en place et lrsquoexploitation
Seacuteparation des responsabiliteacutes entre LOG-210 et GTIMTI-515
GTI515 Automne 2013 JF Couturier 12
Inspireacute de httpwwwetsmtlcazone2fichedecoursfichedecoursaspnumerodefiche=GTI515
Deacutepartement de geacutenie logiciel et des TI
Vue drsquoensemble du cours Analyse et modeacutelisation
Diagrammes drsquoactiviteacute
Modegravele du domaine et cas drsquoutilisation
Cas de test
Archeacutetypes drsquoanalyse ndash Modeacutelisation en couleur
Diagrammes de robustesse
BPMN et DFD
Gestion des TI
Cadre drsquoarchitecture drsquoentreprise et TOGAF
Gestion des services et ITIL V3
Maintenance logicielle et S3M
Gestion des applications et ASL (Si on a le temps)
GTI515 Automne 2013 JF Couturier 13
Deacutepartement de geacutenie logiciel et des TI
Lectures et reacutefeacuterences Sur le site Web du cours
Notes de coursArticlesEacutetudes de cas
Wikipeacutedia httpwwwwikipediaorg Comment ccedila marche
httpwwwcommentcamarchenet
GTI515 Automne 2013 JF Couturier 14
Deacutepartement de geacutenie logiciel et des TI
Regravegles du jeu La ponctualiteacute Tout le monde a la parole mais un seul agrave la
fois Un effort reacuteparti dans le temps Prendre des notes Faire les lectures demandeacutees Je nrsquoai pas reacuteponse agrave tout soyez indulgent Parfois je parle vite arrecirctez-moi La reacutepartition des coteshellipE agrave A+
GTI515 Automne 2013 JF Couturier 15
Deacutepartement de geacutenie logiciel et des TI
QUIZ
Porte sur toute la matiegravere preacutesenteacutee en cours (cumulatif)
Commence agrave 18 h 20 minutes 25 de la note chacun Cours 3 5 10 et 12
GTI515 Automne 2013 JF Couturier 16
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 17
Plan du cours 1
Qui suis-jeProfesseur Assistant Eacutetudiants
Positionnement du cours dans le programme de geacutenie des TI
Preacutesentation du plan de cours Les processus drsquoaffaires Lrsquoanalyse du domaine et la modeacutelisation Lrsquoarchitecture applicative La production et la maintenance
Deacutepartement de geacutenie logiciel et des TI
Plan de cours
Plan de GTI-515 Parce que le cours vit une refonte le
plan de cours peut connaicirctre quelques modifications
GTI515 Automne 2013 JF Couturier 18
Deacutepartement de geacutenie logiciel et des TI
Laboratoires ndash GTI515
Eacutequipes de 4 Eacutequipes formeacutees lors de la premiegravere seacuteance de laboratoire Sujet pour les laboratoires confirmeacute par le professeur et le chargeacute de
laboratoire lors de la premiegravere seacuteance de laboratoire Production des arteacutefacts des disciplines de RUP
Document de vision
Diagrammes drsquoactiviteacute et BPMN
Modegravele du domaine et archeacutetypes
Diagramme des cas drsquoutilisation cas drsquoutilisation et diagramme de robustesse
SRS
Controcircle de la qualiteacute par des inspection par les pairs Outils Visio ou Visual Paradigm
GTI515 Automne 2013 JF Couturier 19
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 20
Peacutenaliteacutes de retard
lt 24 hres 20 24 hres gt et lt48 hres 40 48 hres gt et lt72 hres 60 gt72 hres 100
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 21
Plagiat
Lire le Chapitre 10 Plagiat et fraude du Regraveglement des eacutetudes de 1er cycle
Sanction minimale demandeacutee pour un laboratoire copieacute ou autres cas de plagiat ou fraude eacutechec du cours
Autre cas Copie drsquoun livre document ou document provenant
drsquoInternet sans citer la source
Reacuteutilisation de ses travaux drsquoun autre cours sans autorisation
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 22
Plan du cours 1
Qui suis-jeProfesseur Assistant Eacutetudiants
Positionnement du cours dans le programme de geacutenie des TI
Preacutesentation du plan de cours Lrsquoarchitecture dirigeacutee par les modegraveles
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 23
Les tendances dans le deacuteveloppementdes systegravemes drsquoinformation
Modeacutelisation UML2 BPMN MDA (Model Driven Architecture) SOA (agrave lrsquoaide des Services Web) Domain Specific Language
Les frameworks autour de Eclipse NetBean Visual Studio
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 24
UML - Historique
Ref Using the UML to Describe Design Patterns Diane Strode
Deacutepartement de geacutenie logiciel et des TI
Pourquoi modeacuteliser
Un modegravele est une abstraction du monde concret qui facilite sa compreacutehension
Un modegravele peut ecirctre sous forme graphique etou textuelle
Srsquoil est sous forme graphique il doit ecirctre compleacuteteacute par une preacutesentation textuelle
GTI515 Automne 2013 JF Couturier 25
Deacutepartement de geacutenie logiciel et des TI
La modeacutelisation dans les entreprises
Une perte de temps pour les non-informaticiens et mecircme les informaticiens
Une eacutevolution ineacuteluctable avec les nouveaux outils
Modeacuteliser = precirccher dans le deacutesert Cela deacutepend de la culture de votre deacutepartement
GTI515 Automne 2013 JF Couturier 26
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
256 milliards en projet logiciel aux US16 sont compleacuteteacutes en temps et dans
les coucircts
31 sont annuleacutes (81G$)
53 deacutepassent le budget preacutevu
42 seulement sont livreacutes avec les exigences initiales
GTI515 Automne 2013 JF Couturier 27
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
GTI515 Automne 2013 JF Couturier 28
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
GTI515 Automne 2013 JF Couturier 29
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
GTI515 Automne 2013 JF Couturier 30
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
Une grande proportion de projets TI eacutechouent PourquoiPlusieurs facteurs
Les mauvaises exigences en font partie
Si ccedila va si mal crsquoest qursquoil y a quelque chose qursquoon ne fait pas bien Il faut se remettre en question
GTI515 Automne 2013 JF Couturier 31
Deacutepartement de geacutenie logiciel et des TI
Et maintenant
GTI515 Automne 2013 JF Couturier 32
CHAOS Summary 2009
Deacutepartement de geacutenie logiciel et des TI
Et maintenant
GTI515 Automne 2013 JF Couturier 33
Standish Group 1999
CHAOS Summary 2009
Deacutepartement de geacutenie logiciel et des TI
Finalementhellip
GTI515 Automne 2013 JF Couturier 34
Deacutepartement de geacutenie logiciel et des TI
Reacuteussite Eacutechec
Mais qursquoest-ce qursquoun projet reacuteussi Dans les temps Dans le budget Avec les fonctions preacutevues
GTI515 Automne 2013 JF Couturier 35
Deacutepartement de geacutenie logiciel et des TI
Rappel
Notre domaine est tregraves jeune (70 ans) Geacutenie de la constructionhellip5000 ans
Mais nous progressons tregraves rapidement Pourquoi le geacutenie en TI
Artisanat vs geacutenie (le pif vs la meacutethode)
Acircge du geacutenie logiciel TI - Maturiteacute
Science virtuelle vs Meacutecanique construction
Une tendancehellipDe lrsquoartisanat agrave lrsquoindustrialisation du deacuteveloppement logiciel
GTI515 Automne 2013 JF Couturier 36
Deacutepartement de geacutenie logiciel et des TI
Industrialisation
Vers le milieu du 19e siegravecle Segmenter le travail des individus pour
ne pas ecirctre deacutependant drsquoun artisan Permet une production beaucoup plus
efficace en seacuterie
GTI515 Automne 2013 JF Couturier 37
Deacutepartement de geacutenie logiciel et des TI
Industrialisation
Est-ce que le deacuteveloppement peut-ecirctre industrialiseacuteCertains disent que non que le logiciel agrave
un caractegravere trop creacuteatif
Drsquoautres pensent que les reacutecents progregraves dans le domaine permettent une eacuteventuelle industrialisation dans la production drsquoapplication
GTI515 Automne 2013 JF Couturier 38
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 39
Technologies(OO CBD Services Web SOA
XML AOP DB design patternshellip)
Ingeacutenierie dirigeacutee par les modegraveles
Usines logicielles (Microsoft)Architecture dirigeacutee par les modegraveles (OMG)
Deux applications drsquoun mecircme concept de base
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 40
Techniques de deacuteveloppement assisteacute par ordinateur (Reacutef Software Factories Greenfield J p144)
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Un modegravele tregraves deacutetailleacute beaucoup de code geacuteneacutereacute
CASE Tools (Computer-aided software engineering)
Mal adapteacute au deacuteveloppement agile qui implique souvent des solutions partielles tregraves tocirct dans le cycle de deacuteveloppement
Synchronisation difficile
Eacuteloigneacutee de la plateforme
GTI515 Automne 2013 JF Couturier 41
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Exemple Outils graphiques de modeacutelisation des classes
Plus proche de la plateforme
Code geacuteneacutereacute pour la plateforme
Plus simple
Aide geacuteneacuteralement le deacuteveloppeur agrave voir les deacutependances entre les classes
Il reste beaucoup de code agrave faire agrave la main
Penser agrave coder du SWING Java agrave la mitaine
GTI515 Automne 2013 JF Couturier 42
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Existence drsquoun framework logiciel
On se base sur le framework pour automatiser-compleacuteter la production de certains eacuteleacutements comme les eacuteleacutements graphiques
Abstraction plus eacuteleveacutee
VB6 et ses formulaires
NET Hibernate
Peu drsquoabstractions au niveau du modegravele Classe entiteacute-relation
GTI515 Automne 2013 JF Couturier 43
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Finalement il y a la possibiliteacute drsquoavoir une laquo pile raquo de modegraveles
Drsquoun modegravele agrave lrsquoautre il y a transformation vers un modegravele de plus en plus preacutecis
Approche MDA
Concept de Domain Specific Language
Pour un domaine particulier on creacutee des laquo templates raquo reacuteutilisables
Permets la contribution des experts meacutetiers
GTI515 Automne 2013 JF Couturier 44
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles
GTI515 Automne 2013 JF Couturier 45
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Domain Specific Langage
Par opposition au General purpose language comme UML C++ Java ou C
AvantagesPermets agrave un expert meacutetier de
comprendre et valider un modegravele
InconveacutenientCoucirct Formation Maintenance
GTI515 Automne 2013 JF Couturier 46
httpenwikipediaorgwikiDomain_Specific_Language
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 47
BuzzhellipMDA MDD MDE
Model Driven Architecturemarque de commerce de lrsquoOMG
Model Driven Developmentextension de MDAmarque de commerce de lrsquoOMG
Model Driven Engineeringexpression geacuteneacuterique
Deacutepartement de geacutenie logiciel et des TI
Exemple Agrave partir des speacutecifications des exigences logicielles
Lrsquoacteur saisit la commande contenant
lrsquoadresse de livraison
lrsquoadresse de facturation
Le systegraveme creacutee la commande
Lrsquoacteur saisit un deacutetail de la commande avec
le nom du produit
la quantiteacute demandeacutee
le prix du produit
Le systegraveme creacutee le deacutetail et revient agrave lrsquoeacutetape 3
Lrsquoacteur termine la commande
Le systegraveme ferme la commande
GTI515 Automne 2013 JF Couturier 48
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 49
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Un modegravele (Diagramme de classes UML)
Deacutepartement de geacutenie logiciel et des TI
Model Driven ArchitectureUn scheacutema XML
ltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gt
ltxsdschema xmlnsxsd=httpwww targetNamespace=helliprsaquo
ltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo minOccurs=ldquo0ldquo maxOccurs=ldquounboundedgt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdcomplexType name=ldquoDetailCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoprixldquo type=ldquo xsdfloatldquogt
ltxsdelement name=ldquoquantiteldquo type=ldquo xsdintldquogt
ltxsdelement name=ldquonomProduitldquo type=ldquo xsdstringldquogt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdschemarsaquo
GTI515 Automne 2013 JF Couturier 50
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 51
Des classes Java
public class Commande
private String adresseLivraison
private String adresseFacturation
private Collection detailCommande
hellip
String getAdresseLivraison()
void setAdresseLivraison(String value)
String getAdresseFacturation()
void setAdresseFacturation(String value)
public class DetailCommande
private float prix
private int quantite
private String nomProduit
float getPrix()
void setPrix(float value)
int getQuantite()
void setQuantite(int value)
String getNomProduit()
void setNomProduit(String value)
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 52
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Programmepublic class Commande
private String adresseLivraisonprivate String adresseFacturation
String getAdresseLivraison()void setAdresseLivraison(String value)
String getAdresseFacturation()void setAdresseFacturation(String value)
Scheacutema XMLltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gtltxsdschema xmlnsxsd=httpwww
targetNamespace=helliprsaquoltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo
xsdstringldquogt ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo
Modegravele UML3 repreacutesentationsdes mecircmes exigences
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
Speacutecifications de lrsquoOMG Seacuteparation de la logique meacutetier de
toute plateforme technique Speacutecifications drsquoun langage de
transformation (QVT)
GTI515 Automne 2013 JF Couturier 53
Deacutepartement de geacutenie logiciel et des TI
Concept principal de MDA
Modeacuteliser pour documenter le systegraveme
Modeacuteliser pour construire le systegraveme
GTI515 Automne 2013 JF Couturier 55
Deacutepartement de geacutenie logiciel et des TI
CIM PIM PSM Code CIM
Computing Independant Model
Modegravele du domaine logique meacutetier
PIM Platform Independant Model
Modegravele de conception UML et OCL
PSM Platform Specific Model
NET J2EE
Codehellip
GTI515 Automne 2013 JF Couturier 56
Deacutepartement de geacutenie logiciel et des TI
Les diffeacuterentes eacutetapes
GTI515 Automne 2013 JF Couturier 57
Reacutef the Zachman Framework and the OMGrsquos MDA Business Process Trends Sept 2003
Deacutepartement de geacutenie logiciel et des TI
MDA et Gartner
GTI515 Automne 2013 JF Couturier 58
Gartner Hype Cycle 2008
Deacutepartement de geacutenie logiciel et des TI
Eacutetude de cas
Lecture de la discussion sur MDA Questions
Quels sont les arguments pour
Quels sont les arguments contre
Vos commentaires sur lrsquoarticle
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 59
Deacutepartement de geacutenie logiciel et des TI
Impact
Rocircle du deacuteveloppeur minimiseacute puisqursquoil nrsquointerpregravete plus le modegravele les regravegles de transformation srsquoen chargent
Modegraveles exportables drsquoune plateforme agrave un autre
Plus de 100 articles de recherche sur IEEE entre 2008 et 2009
Maishellip
GTI515 Automne 2013 JF Couturier 60
Deacutepartement de geacutenie logiciel et des TI
Impact
Est-ce applicable au monde agile
Le cycle de modeacutelisation est-il compatible avec le deacuteveloppement iteacuteratif
Est-ce qursquoil y a suffisamment de ressources hautement qualifieacutees pour reacutealiser ce type de projet
Pouvez-vous les former Pouvez-vous les conserver
Produire 80 du code et vous laisser les derniers 20 plus difficileshellip
Comment inteacutegrer les tests
GTI515 Automne 2013 JF Couturier 61
Scott Ambler Enterprise Unified Process p 191
Deacutepartement de geacutenie logiciel et des TI
Impact
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 62
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 63
Domaine
Exigences
Analyse
Conception
Reacutealisation
MDA
PIM
PSM
Modegravele des Processus drsquoaffaires
Modegravele drsquoanalyse du systegraveme
CIM
Modegravele des Cas drsquoutilisation
Modegravele de conception du systegraveme
Les modegraveles du cycle de deacuteveloppement de logiciels
Code
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 64
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 65
Deacutepartement de geacutenie logiciel et des TI
Exemple
GTI515 Automne 2013 JF Couturier 66
httpwwwibmcomdeveloperworksrationallibrary3100html
Deacutepartement de geacutenie logiciel et des TI
Ressources
Site de lOMG MDA Article drsquoIBM sur MDA Discussion sur MDA Wiki MDA Wiki QVT
GTI515 Automne 2013 JF Couturier 67
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 68
Laboratoire 1
Choix du sujet Validation de la porteacutee
Suffisamment long Plusieurs interactions humaines machines Reacutealisable dans une session
Chargeacute de laboratoire Oleg Litvinski Premier laboratoire lundi 7 mai
Deacutepartement de geacutenie logiciel et des TI
Le document de vision (RUP)
Une base de discussion et drsquoaccord parmi les intervenants du projet
Une description de lrsquoapplication en geacuteneacuteral incluant la description du marcheacute cible les clients les utilisateurs du systegraveme les problegravemes agrave reacutesoudre et les caracteacuteristiques de lrsquoapplication
GTI515 Automne 2013 JF Couturier 69
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 70
Requirements Management with Use Cases v20010300
Copyright copy 1998 2001 Rational Software all rights reserved
2
Problem
Solution Space
Problem Space
Needs
Features
SoftwareRequirements
Test Procedures Design User
Docs
The The Product Product To Be To Be BuiltBuilt
Traceability
Deacutepartement de geacutenie logiciel et des TI
Exemples de caracteacuteristiques (feature)
Domaine drsquoapplication Exemple de caracteacuteristique
Systegraveme de commande drsquoascenseur
Commande manuelle des portes durant une urgence de feu
Systegraveme de commande drsquoinventaire
Fournir un statut reacutecent de tous les items reacutepertorieacutes
Systegraveme de suivi de deacutefauts Fournir des laquo donneacutees raquo sur les tendances pour eacutevaluer la
qualiteacute
Systegraveme de paie Rapports par cateacutegories des deacuteductions remis agrave lrsquoimpocirct
Systegraveme de commande drsquoarmes
Minimum de deux confirmations indeacutependantes drsquoautorisation
drsquoattaque exigeacutee
GTI515 Automne 2013 JF Couturier 71
Deacutepartement de geacutenie logiciel et des TI
Niveau de deacutetail des caracteacuteristiques Pour tout nouveau systegraveme ou pour
une ameacutelioration majeure agrave un systegraveme existant il est recommandeacute de garder un niveau drsquoabstraction assez eacuteleveacute de sorte agrave avoir un maximum de caracteacuteristiques compris entre 25-99 et de preacutefeacuterence moins de 50
GTI515 Automne 2013 JF Couturier 72
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Statut Suit le progregraves
Exemples Proposeacute approuveacute incorporeacute etc
PrioriteacuteBeacuteneacutefice
Les caracteacuteristiques ne sont pas agrave prioriteacutes eacutegales ou geacutenegraverent des beacuteneacutefices eacutegaux
Exemple critiques importantes optionnelle
Effort Estimation du nombre de personnessemaines lignes de code points de fonction COSMIC_FFP
Risque La probabiliteacute que la caracteacuteristique aille causer un eacuteveacutenement indeacutesirable tel que le deacutepassement du budget ou des deacutelais ou mecircme lrsquoannulation du projet
GTI515 Automne 2013 JF Couturier 73
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Stabiliteacute La probabiliteacute que la caracteacuteristique elle-mecircme ou sa compreacutehension par lrsquoeacutequipe de deacuteveloppement changera
Mise en application
Documenter la version preacutevue pour laquelle la caracteacuteristique sera incorporeacutee
Assigneacutee agrave Deacutesigner lrsquoeacutequipe responsable de la caracteacuteristique
Raison Lrsquoorigine de la requecircte de la caracteacuteristique
GTI515 Automne 2013 JF Couturier 74
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 75
Deacutepartement de geacutenie logiciel et des TI
Reacutedaction du document de vision une description concise de tout ce qui est important au
produit ou agrave lrsquoapplication eacutecrit avec un niveau de deacutetails dans un langage lisible et
compreacutehensible par les intervenants du projet
Document de 15 agrave 20 pages
GTI515 Automne 2013 JF Couturier 76
Deacutepartement de geacutenie logiciel et des TI
Exemple le cas ACS
GTI515 Automne 2013 JF Couturier 77
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 78
Deacutepartement de geacutenie logiciel et des TI
Exemple de problegravemesle cas ACS
Controcircle drsquoune large gamme de mateacuteriels
Utilisation compliqueacutee Difficulteacutes de programmation Disponibiliteacute du mateacuteriel Risque de mauvaise utilisation
GTI515 Automne 2013 JF Couturier 79
Deacutepartement de geacutenie logiciel et des TI
Exemple de besoinsle cas ACS
AutomatiserLa distribution de fertilisantLa distribution de nourritureLa dureacutee de lrsquoeacuteclairage
Commander lrsquoopeacuteration des appareils Reacuteguler
le niveau et la dureteacute de lrsquoeauLa tempeacuterature
GTI515 Automne 2013 JF Couturier 80
Deacutepartement de geacutenie logiciel et des TI
Exemple de caracteacuteristiquesle cas ACS
Deacutemarrage automatique du systegraveme Programmation conserveacutee en cas de
panne drsquoalimentation Deacutetection automatique des modules Facile agrave programmer et agrave utiliser
Exigence non fonctionnelle
GTI515 Automne 2013 JF Couturier 81
Deacutepartement de geacutenie logiciel et des TI
Critegraveres drsquoeacutevaluation
Respect de lrsquoesprit du document
En tant qursquointervenant externe est-ce que je comprends bien
Respect de la forme du gabarit
Qualiteacute du franccedilais
Document de calibre professionnel que lrsquoon pourrait remettre agrave un dirigeant
GTI515 Automne 2013 JF Couturier 82
Deacutepartement de geacutenie logiciel et des TI
Grille drsquoeacutevaluation (sur 100)
Agrave venirhellip
GTI515 Automne 2013 JF Couturier 83
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 84
Prochain cours
La modeacutelisation des processus drsquoaffaires Le diagramme drsquoactiviteacute Le diagnostic des processus drsquoaffaires existant
Lectures Lrsquoutilisation drsquoUML Chapitre sur les diagrammes drsquoactiviteacutes dans Larman Lecture sur MDA Voir site Web du cours
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 85
Questions
- Systegravemes drsquoinformation dans les entreprises (GTI515)
- Plan du cours 1
- Qui suis-je JF Couturier
- Qui suis-je Eacutetudiant(e)
- Plan du cours 1 (2)
- Objectifs du programme
- Ingeacutenieur
- Programme GTI
- Geacutenie des TI
- Cours de speacutecialiteacutes GTI
- Objectif du cours
- Vue drsquoensemble du cours
- Lectures et reacutefeacuterences
- Regravegles du jeu
- QUIZ
- Plan du cours 1 (3)
- Plan de cours
- Laboratoires ndash GTI515
- Peacutenaliteacutes de retard
- Plagiat
- Plan du cours 1 (4)
- Les tendances dans le deacuteveloppement des systegravemes drsquoinformation
- UML - Historique
- Pourquoi modeacuteliser
- La modeacutelisation dans les entreprises
- Quelques chiffres
- Quelques chiffres (2)
- Quelques chiffres (3)
- Quelques chiffres (4)
- Quelques chiffres (5)
- Et maintenant
- Et maintenant (2)
- Finalementhellip
- Reacuteussite Eacutechec
- Rappel
- Industrialisation
- Industrialisation (2)
- Slide 39
- Slide 40
- Usines logicielles (S Factory)
- Usines logicielles (S Factory) (2)
- Usines logicielles (S Factory) (3)
- Usines logicielles (S Factory) (4)
- Usines logicielles
- Domain Specific Langage
- BuzzhellipMDA MDD MDE
- Exemple
- Model Driven Architecture
- Model Driven Architecture (2)
- Model Driven Architecture (3)
- Model Driven Architecture (4)
- Model Driven Architecture (5)
- Concept principal de MDA
- CIM PIM PSM Code
- Les diffeacuterentes eacutetapes
- MDA et Gartner
- Eacutetude de cas
- Impact
- Impact (2)
- Impact (3)
- Slide 63
- Slide 64
- Slide 65
- Exemple (2)
- Ressources
- Laboratoire 1
- Le document de vision (RUP)
- Slide 70
- Exemples de caracteacuteristiques (feature)
- Niveau de deacutetail des caracteacuteristiques
- Attributs des caracteacuteristiques
- Attributs des caracteacuteristiques
- Slide 75
- Reacutedaction du document de vision
- Exemple le cas ACS
- Slide 78
- Exemple de problegravemes le cas ACS
- Exemple de besoins le cas ACS
- Exemple de caracteacuteristiques le cas ACS
- Critegraveres drsquoeacutevaluation
- Grille drsquoeacutevaluation (sur 100)
- Prochain cours
- Questions
-
Deacutepartement de geacutenie logiciel et des TI
Vue drsquoensemble du cours Analyse et modeacutelisation
Diagrammes drsquoactiviteacute
Modegravele du domaine et cas drsquoutilisation
Cas de test
Archeacutetypes drsquoanalyse ndash Modeacutelisation en couleur
Diagrammes de robustesse
BPMN et DFD
Gestion des TI
Cadre drsquoarchitecture drsquoentreprise et TOGAF
Gestion des services et ITIL V3
Maintenance logicielle et S3M
Gestion des applications et ASL (Si on a le temps)
GTI515 Automne 2013 JF Couturier 13
Deacutepartement de geacutenie logiciel et des TI
Lectures et reacutefeacuterences Sur le site Web du cours
Notes de coursArticlesEacutetudes de cas
Wikipeacutedia httpwwwwikipediaorg Comment ccedila marche
httpwwwcommentcamarchenet
GTI515 Automne 2013 JF Couturier 14
Deacutepartement de geacutenie logiciel et des TI
Regravegles du jeu La ponctualiteacute Tout le monde a la parole mais un seul agrave la
fois Un effort reacuteparti dans le temps Prendre des notes Faire les lectures demandeacutees Je nrsquoai pas reacuteponse agrave tout soyez indulgent Parfois je parle vite arrecirctez-moi La reacutepartition des coteshellipE agrave A+
GTI515 Automne 2013 JF Couturier 15
Deacutepartement de geacutenie logiciel et des TI
QUIZ
Porte sur toute la matiegravere preacutesenteacutee en cours (cumulatif)
Commence agrave 18 h 20 minutes 25 de la note chacun Cours 3 5 10 et 12
GTI515 Automne 2013 JF Couturier 16
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 17
Plan du cours 1
Qui suis-jeProfesseur Assistant Eacutetudiants
Positionnement du cours dans le programme de geacutenie des TI
Preacutesentation du plan de cours Les processus drsquoaffaires Lrsquoanalyse du domaine et la modeacutelisation Lrsquoarchitecture applicative La production et la maintenance
Deacutepartement de geacutenie logiciel et des TI
Plan de cours
Plan de GTI-515 Parce que le cours vit une refonte le
plan de cours peut connaicirctre quelques modifications
GTI515 Automne 2013 JF Couturier 18
Deacutepartement de geacutenie logiciel et des TI
Laboratoires ndash GTI515
Eacutequipes de 4 Eacutequipes formeacutees lors de la premiegravere seacuteance de laboratoire Sujet pour les laboratoires confirmeacute par le professeur et le chargeacute de
laboratoire lors de la premiegravere seacuteance de laboratoire Production des arteacutefacts des disciplines de RUP
Document de vision
Diagrammes drsquoactiviteacute et BPMN
Modegravele du domaine et archeacutetypes
Diagramme des cas drsquoutilisation cas drsquoutilisation et diagramme de robustesse
SRS
Controcircle de la qualiteacute par des inspection par les pairs Outils Visio ou Visual Paradigm
GTI515 Automne 2013 JF Couturier 19
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 20
Peacutenaliteacutes de retard
lt 24 hres 20 24 hres gt et lt48 hres 40 48 hres gt et lt72 hres 60 gt72 hres 100
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 21
Plagiat
Lire le Chapitre 10 Plagiat et fraude du Regraveglement des eacutetudes de 1er cycle
Sanction minimale demandeacutee pour un laboratoire copieacute ou autres cas de plagiat ou fraude eacutechec du cours
Autre cas Copie drsquoun livre document ou document provenant
drsquoInternet sans citer la source
Reacuteutilisation de ses travaux drsquoun autre cours sans autorisation
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 22
Plan du cours 1
Qui suis-jeProfesseur Assistant Eacutetudiants
Positionnement du cours dans le programme de geacutenie des TI
Preacutesentation du plan de cours Lrsquoarchitecture dirigeacutee par les modegraveles
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 23
Les tendances dans le deacuteveloppementdes systegravemes drsquoinformation
Modeacutelisation UML2 BPMN MDA (Model Driven Architecture) SOA (agrave lrsquoaide des Services Web) Domain Specific Language
Les frameworks autour de Eclipse NetBean Visual Studio
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 24
UML - Historique
Ref Using the UML to Describe Design Patterns Diane Strode
Deacutepartement de geacutenie logiciel et des TI
Pourquoi modeacuteliser
Un modegravele est une abstraction du monde concret qui facilite sa compreacutehension
Un modegravele peut ecirctre sous forme graphique etou textuelle
Srsquoil est sous forme graphique il doit ecirctre compleacuteteacute par une preacutesentation textuelle
GTI515 Automne 2013 JF Couturier 25
Deacutepartement de geacutenie logiciel et des TI
La modeacutelisation dans les entreprises
Une perte de temps pour les non-informaticiens et mecircme les informaticiens
Une eacutevolution ineacuteluctable avec les nouveaux outils
Modeacuteliser = precirccher dans le deacutesert Cela deacutepend de la culture de votre deacutepartement
GTI515 Automne 2013 JF Couturier 26
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
256 milliards en projet logiciel aux US16 sont compleacuteteacutes en temps et dans
les coucircts
31 sont annuleacutes (81G$)
53 deacutepassent le budget preacutevu
42 seulement sont livreacutes avec les exigences initiales
GTI515 Automne 2013 JF Couturier 27
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
GTI515 Automne 2013 JF Couturier 28
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
GTI515 Automne 2013 JF Couturier 29
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
GTI515 Automne 2013 JF Couturier 30
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
Une grande proportion de projets TI eacutechouent PourquoiPlusieurs facteurs
Les mauvaises exigences en font partie
Si ccedila va si mal crsquoest qursquoil y a quelque chose qursquoon ne fait pas bien Il faut se remettre en question
GTI515 Automne 2013 JF Couturier 31
Deacutepartement de geacutenie logiciel et des TI
Et maintenant
GTI515 Automne 2013 JF Couturier 32
CHAOS Summary 2009
Deacutepartement de geacutenie logiciel et des TI
Et maintenant
GTI515 Automne 2013 JF Couturier 33
Standish Group 1999
CHAOS Summary 2009
Deacutepartement de geacutenie logiciel et des TI
Finalementhellip
GTI515 Automne 2013 JF Couturier 34
Deacutepartement de geacutenie logiciel et des TI
Reacuteussite Eacutechec
Mais qursquoest-ce qursquoun projet reacuteussi Dans les temps Dans le budget Avec les fonctions preacutevues
GTI515 Automne 2013 JF Couturier 35
Deacutepartement de geacutenie logiciel et des TI
Rappel
Notre domaine est tregraves jeune (70 ans) Geacutenie de la constructionhellip5000 ans
Mais nous progressons tregraves rapidement Pourquoi le geacutenie en TI
Artisanat vs geacutenie (le pif vs la meacutethode)
Acircge du geacutenie logiciel TI - Maturiteacute
Science virtuelle vs Meacutecanique construction
Une tendancehellipDe lrsquoartisanat agrave lrsquoindustrialisation du deacuteveloppement logiciel
GTI515 Automne 2013 JF Couturier 36
Deacutepartement de geacutenie logiciel et des TI
Industrialisation
Vers le milieu du 19e siegravecle Segmenter le travail des individus pour
ne pas ecirctre deacutependant drsquoun artisan Permet une production beaucoup plus
efficace en seacuterie
GTI515 Automne 2013 JF Couturier 37
Deacutepartement de geacutenie logiciel et des TI
Industrialisation
Est-ce que le deacuteveloppement peut-ecirctre industrialiseacuteCertains disent que non que le logiciel agrave
un caractegravere trop creacuteatif
Drsquoautres pensent que les reacutecents progregraves dans le domaine permettent une eacuteventuelle industrialisation dans la production drsquoapplication
GTI515 Automne 2013 JF Couturier 38
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 39
Technologies(OO CBD Services Web SOA
XML AOP DB design patternshellip)
Ingeacutenierie dirigeacutee par les modegraveles
Usines logicielles (Microsoft)Architecture dirigeacutee par les modegraveles (OMG)
Deux applications drsquoun mecircme concept de base
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 40
Techniques de deacuteveloppement assisteacute par ordinateur (Reacutef Software Factories Greenfield J p144)
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Un modegravele tregraves deacutetailleacute beaucoup de code geacuteneacutereacute
CASE Tools (Computer-aided software engineering)
Mal adapteacute au deacuteveloppement agile qui implique souvent des solutions partielles tregraves tocirct dans le cycle de deacuteveloppement
Synchronisation difficile
Eacuteloigneacutee de la plateforme
GTI515 Automne 2013 JF Couturier 41
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Exemple Outils graphiques de modeacutelisation des classes
Plus proche de la plateforme
Code geacuteneacutereacute pour la plateforme
Plus simple
Aide geacuteneacuteralement le deacuteveloppeur agrave voir les deacutependances entre les classes
Il reste beaucoup de code agrave faire agrave la main
Penser agrave coder du SWING Java agrave la mitaine
GTI515 Automne 2013 JF Couturier 42
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Existence drsquoun framework logiciel
On se base sur le framework pour automatiser-compleacuteter la production de certains eacuteleacutements comme les eacuteleacutements graphiques
Abstraction plus eacuteleveacutee
VB6 et ses formulaires
NET Hibernate
Peu drsquoabstractions au niveau du modegravele Classe entiteacute-relation
GTI515 Automne 2013 JF Couturier 43
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Finalement il y a la possibiliteacute drsquoavoir une laquo pile raquo de modegraveles
Drsquoun modegravele agrave lrsquoautre il y a transformation vers un modegravele de plus en plus preacutecis
Approche MDA
Concept de Domain Specific Language
Pour un domaine particulier on creacutee des laquo templates raquo reacuteutilisables
Permets la contribution des experts meacutetiers
GTI515 Automne 2013 JF Couturier 44
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles
GTI515 Automne 2013 JF Couturier 45
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Domain Specific Langage
Par opposition au General purpose language comme UML C++ Java ou C
AvantagesPermets agrave un expert meacutetier de
comprendre et valider un modegravele
InconveacutenientCoucirct Formation Maintenance
GTI515 Automne 2013 JF Couturier 46
httpenwikipediaorgwikiDomain_Specific_Language
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 47
BuzzhellipMDA MDD MDE
Model Driven Architecturemarque de commerce de lrsquoOMG
Model Driven Developmentextension de MDAmarque de commerce de lrsquoOMG
Model Driven Engineeringexpression geacuteneacuterique
Deacutepartement de geacutenie logiciel et des TI
Exemple Agrave partir des speacutecifications des exigences logicielles
Lrsquoacteur saisit la commande contenant
lrsquoadresse de livraison
lrsquoadresse de facturation
Le systegraveme creacutee la commande
Lrsquoacteur saisit un deacutetail de la commande avec
le nom du produit
la quantiteacute demandeacutee
le prix du produit
Le systegraveme creacutee le deacutetail et revient agrave lrsquoeacutetape 3
Lrsquoacteur termine la commande
Le systegraveme ferme la commande
GTI515 Automne 2013 JF Couturier 48
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 49
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Un modegravele (Diagramme de classes UML)
Deacutepartement de geacutenie logiciel et des TI
Model Driven ArchitectureUn scheacutema XML
ltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gt
ltxsdschema xmlnsxsd=httpwww targetNamespace=helliprsaquo
ltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo minOccurs=ldquo0ldquo maxOccurs=ldquounboundedgt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdcomplexType name=ldquoDetailCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoprixldquo type=ldquo xsdfloatldquogt
ltxsdelement name=ldquoquantiteldquo type=ldquo xsdintldquogt
ltxsdelement name=ldquonomProduitldquo type=ldquo xsdstringldquogt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdschemarsaquo
GTI515 Automne 2013 JF Couturier 50
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 51
Des classes Java
public class Commande
private String adresseLivraison
private String adresseFacturation
private Collection detailCommande
hellip
String getAdresseLivraison()
void setAdresseLivraison(String value)
String getAdresseFacturation()
void setAdresseFacturation(String value)
public class DetailCommande
private float prix
private int quantite
private String nomProduit
float getPrix()
void setPrix(float value)
int getQuantite()
void setQuantite(int value)
String getNomProduit()
void setNomProduit(String value)
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 52
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Programmepublic class Commande
private String adresseLivraisonprivate String adresseFacturation
String getAdresseLivraison()void setAdresseLivraison(String value)
String getAdresseFacturation()void setAdresseFacturation(String value)
Scheacutema XMLltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gtltxsdschema xmlnsxsd=httpwww
targetNamespace=helliprsaquoltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo
xsdstringldquogt ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo
Modegravele UML3 repreacutesentationsdes mecircmes exigences
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
Speacutecifications de lrsquoOMG Seacuteparation de la logique meacutetier de
toute plateforme technique Speacutecifications drsquoun langage de
transformation (QVT)
GTI515 Automne 2013 JF Couturier 53
Deacutepartement de geacutenie logiciel et des TI
Concept principal de MDA
Modeacuteliser pour documenter le systegraveme
Modeacuteliser pour construire le systegraveme
GTI515 Automne 2013 JF Couturier 55
Deacutepartement de geacutenie logiciel et des TI
CIM PIM PSM Code CIM
Computing Independant Model
Modegravele du domaine logique meacutetier
PIM Platform Independant Model
Modegravele de conception UML et OCL
PSM Platform Specific Model
NET J2EE
Codehellip
GTI515 Automne 2013 JF Couturier 56
Deacutepartement de geacutenie logiciel et des TI
Les diffeacuterentes eacutetapes
GTI515 Automne 2013 JF Couturier 57
Reacutef the Zachman Framework and the OMGrsquos MDA Business Process Trends Sept 2003
Deacutepartement de geacutenie logiciel et des TI
MDA et Gartner
GTI515 Automne 2013 JF Couturier 58
Gartner Hype Cycle 2008
Deacutepartement de geacutenie logiciel et des TI
Eacutetude de cas
Lecture de la discussion sur MDA Questions
Quels sont les arguments pour
Quels sont les arguments contre
Vos commentaires sur lrsquoarticle
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 59
Deacutepartement de geacutenie logiciel et des TI
Impact
Rocircle du deacuteveloppeur minimiseacute puisqursquoil nrsquointerpregravete plus le modegravele les regravegles de transformation srsquoen chargent
Modegraveles exportables drsquoune plateforme agrave un autre
Plus de 100 articles de recherche sur IEEE entre 2008 et 2009
Maishellip
GTI515 Automne 2013 JF Couturier 60
Deacutepartement de geacutenie logiciel et des TI
Impact
Est-ce applicable au monde agile
Le cycle de modeacutelisation est-il compatible avec le deacuteveloppement iteacuteratif
Est-ce qursquoil y a suffisamment de ressources hautement qualifieacutees pour reacutealiser ce type de projet
Pouvez-vous les former Pouvez-vous les conserver
Produire 80 du code et vous laisser les derniers 20 plus difficileshellip
Comment inteacutegrer les tests
GTI515 Automne 2013 JF Couturier 61
Scott Ambler Enterprise Unified Process p 191
Deacutepartement de geacutenie logiciel et des TI
Impact
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 62
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 63
Domaine
Exigences
Analyse
Conception
Reacutealisation
MDA
PIM
PSM
Modegravele des Processus drsquoaffaires
Modegravele drsquoanalyse du systegraveme
CIM
Modegravele des Cas drsquoutilisation
Modegravele de conception du systegraveme
Les modegraveles du cycle de deacuteveloppement de logiciels
Code
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 64
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 65
Deacutepartement de geacutenie logiciel et des TI
Exemple
GTI515 Automne 2013 JF Couturier 66
httpwwwibmcomdeveloperworksrationallibrary3100html
Deacutepartement de geacutenie logiciel et des TI
Ressources
Site de lOMG MDA Article drsquoIBM sur MDA Discussion sur MDA Wiki MDA Wiki QVT
GTI515 Automne 2013 JF Couturier 67
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 68
Laboratoire 1
Choix du sujet Validation de la porteacutee
Suffisamment long Plusieurs interactions humaines machines Reacutealisable dans une session
Chargeacute de laboratoire Oleg Litvinski Premier laboratoire lundi 7 mai
Deacutepartement de geacutenie logiciel et des TI
Le document de vision (RUP)
Une base de discussion et drsquoaccord parmi les intervenants du projet
Une description de lrsquoapplication en geacuteneacuteral incluant la description du marcheacute cible les clients les utilisateurs du systegraveme les problegravemes agrave reacutesoudre et les caracteacuteristiques de lrsquoapplication
GTI515 Automne 2013 JF Couturier 69
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 70
Requirements Management with Use Cases v20010300
Copyright copy 1998 2001 Rational Software all rights reserved
2
Problem
Solution Space
Problem Space
Needs
Features
SoftwareRequirements
Test Procedures Design User
Docs
The The Product Product To Be To Be BuiltBuilt
Traceability
Deacutepartement de geacutenie logiciel et des TI
Exemples de caracteacuteristiques (feature)
Domaine drsquoapplication Exemple de caracteacuteristique
Systegraveme de commande drsquoascenseur
Commande manuelle des portes durant une urgence de feu
Systegraveme de commande drsquoinventaire
Fournir un statut reacutecent de tous les items reacutepertorieacutes
Systegraveme de suivi de deacutefauts Fournir des laquo donneacutees raquo sur les tendances pour eacutevaluer la
qualiteacute
Systegraveme de paie Rapports par cateacutegories des deacuteductions remis agrave lrsquoimpocirct
Systegraveme de commande drsquoarmes
Minimum de deux confirmations indeacutependantes drsquoautorisation
drsquoattaque exigeacutee
GTI515 Automne 2013 JF Couturier 71
Deacutepartement de geacutenie logiciel et des TI
Niveau de deacutetail des caracteacuteristiques Pour tout nouveau systegraveme ou pour
une ameacutelioration majeure agrave un systegraveme existant il est recommandeacute de garder un niveau drsquoabstraction assez eacuteleveacute de sorte agrave avoir un maximum de caracteacuteristiques compris entre 25-99 et de preacutefeacuterence moins de 50
GTI515 Automne 2013 JF Couturier 72
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Statut Suit le progregraves
Exemples Proposeacute approuveacute incorporeacute etc
PrioriteacuteBeacuteneacutefice
Les caracteacuteristiques ne sont pas agrave prioriteacutes eacutegales ou geacutenegraverent des beacuteneacutefices eacutegaux
Exemple critiques importantes optionnelle
Effort Estimation du nombre de personnessemaines lignes de code points de fonction COSMIC_FFP
Risque La probabiliteacute que la caracteacuteristique aille causer un eacuteveacutenement indeacutesirable tel que le deacutepassement du budget ou des deacutelais ou mecircme lrsquoannulation du projet
GTI515 Automne 2013 JF Couturier 73
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Stabiliteacute La probabiliteacute que la caracteacuteristique elle-mecircme ou sa compreacutehension par lrsquoeacutequipe de deacuteveloppement changera
Mise en application
Documenter la version preacutevue pour laquelle la caracteacuteristique sera incorporeacutee
Assigneacutee agrave Deacutesigner lrsquoeacutequipe responsable de la caracteacuteristique
Raison Lrsquoorigine de la requecircte de la caracteacuteristique
GTI515 Automne 2013 JF Couturier 74
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 75
Deacutepartement de geacutenie logiciel et des TI
Reacutedaction du document de vision une description concise de tout ce qui est important au
produit ou agrave lrsquoapplication eacutecrit avec un niveau de deacutetails dans un langage lisible et
compreacutehensible par les intervenants du projet
Document de 15 agrave 20 pages
GTI515 Automne 2013 JF Couturier 76
Deacutepartement de geacutenie logiciel et des TI
Exemple le cas ACS
GTI515 Automne 2013 JF Couturier 77
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 78
Deacutepartement de geacutenie logiciel et des TI
Exemple de problegravemesle cas ACS
Controcircle drsquoune large gamme de mateacuteriels
Utilisation compliqueacutee Difficulteacutes de programmation Disponibiliteacute du mateacuteriel Risque de mauvaise utilisation
GTI515 Automne 2013 JF Couturier 79
Deacutepartement de geacutenie logiciel et des TI
Exemple de besoinsle cas ACS
AutomatiserLa distribution de fertilisantLa distribution de nourritureLa dureacutee de lrsquoeacuteclairage
Commander lrsquoopeacuteration des appareils Reacuteguler
le niveau et la dureteacute de lrsquoeauLa tempeacuterature
GTI515 Automne 2013 JF Couturier 80
Deacutepartement de geacutenie logiciel et des TI
Exemple de caracteacuteristiquesle cas ACS
Deacutemarrage automatique du systegraveme Programmation conserveacutee en cas de
panne drsquoalimentation Deacutetection automatique des modules Facile agrave programmer et agrave utiliser
Exigence non fonctionnelle
GTI515 Automne 2013 JF Couturier 81
Deacutepartement de geacutenie logiciel et des TI
Critegraveres drsquoeacutevaluation
Respect de lrsquoesprit du document
En tant qursquointervenant externe est-ce que je comprends bien
Respect de la forme du gabarit
Qualiteacute du franccedilais
Document de calibre professionnel que lrsquoon pourrait remettre agrave un dirigeant
GTI515 Automne 2013 JF Couturier 82
Deacutepartement de geacutenie logiciel et des TI
Grille drsquoeacutevaluation (sur 100)
Agrave venirhellip
GTI515 Automne 2013 JF Couturier 83
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 84
Prochain cours
La modeacutelisation des processus drsquoaffaires Le diagramme drsquoactiviteacute Le diagnostic des processus drsquoaffaires existant
Lectures Lrsquoutilisation drsquoUML Chapitre sur les diagrammes drsquoactiviteacutes dans Larman Lecture sur MDA Voir site Web du cours
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 85
Questions
- Systegravemes drsquoinformation dans les entreprises (GTI515)
- Plan du cours 1
- Qui suis-je JF Couturier
- Qui suis-je Eacutetudiant(e)
- Plan du cours 1 (2)
- Objectifs du programme
- Ingeacutenieur
- Programme GTI
- Geacutenie des TI
- Cours de speacutecialiteacutes GTI
- Objectif du cours
- Vue drsquoensemble du cours
- Lectures et reacutefeacuterences
- Regravegles du jeu
- QUIZ
- Plan du cours 1 (3)
- Plan de cours
- Laboratoires ndash GTI515
- Peacutenaliteacutes de retard
- Plagiat
- Plan du cours 1 (4)
- Les tendances dans le deacuteveloppement des systegravemes drsquoinformation
- UML - Historique
- Pourquoi modeacuteliser
- La modeacutelisation dans les entreprises
- Quelques chiffres
- Quelques chiffres (2)
- Quelques chiffres (3)
- Quelques chiffres (4)
- Quelques chiffres (5)
- Et maintenant
- Et maintenant (2)
- Finalementhellip
- Reacuteussite Eacutechec
- Rappel
- Industrialisation
- Industrialisation (2)
- Slide 39
- Slide 40
- Usines logicielles (S Factory)
- Usines logicielles (S Factory) (2)
- Usines logicielles (S Factory) (3)
- Usines logicielles (S Factory) (4)
- Usines logicielles
- Domain Specific Langage
- BuzzhellipMDA MDD MDE
- Exemple
- Model Driven Architecture
- Model Driven Architecture (2)
- Model Driven Architecture (3)
- Model Driven Architecture (4)
- Model Driven Architecture (5)
- Concept principal de MDA
- CIM PIM PSM Code
- Les diffeacuterentes eacutetapes
- MDA et Gartner
- Eacutetude de cas
- Impact
- Impact (2)
- Impact (3)
- Slide 63
- Slide 64
- Slide 65
- Exemple (2)
- Ressources
- Laboratoire 1
- Le document de vision (RUP)
- Slide 70
- Exemples de caracteacuteristiques (feature)
- Niveau de deacutetail des caracteacuteristiques
- Attributs des caracteacuteristiques
- Attributs des caracteacuteristiques
- Slide 75
- Reacutedaction du document de vision
- Exemple le cas ACS
- Slide 78
- Exemple de problegravemes le cas ACS
- Exemple de besoins le cas ACS
- Exemple de caracteacuteristiques le cas ACS
- Critegraveres drsquoeacutevaluation
- Grille drsquoeacutevaluation (sur 100)
- Prochain cours
- Questions
-
Deacutepartement de geacutenie logiciel et des TI
Lectures et reacutefeacuterences Sur le site Web du cours
Notes de coursArticlesEacutetudes de cas
Wikipeacutedia httpwwwwikipediaorg Comment ccedila marche
httpwwwcommentcamarchenet
GTI515 Automne 2013 JF Couturier 14
Deacutepartement de geacutenie logiciel et des TI
Regravegles du jeu La ponctualiteacute Tout le monde a la parole mais un seul agrave la
fois Un effort reacuteparti dans le temps Prendre des notes Faire les lectures demandeacutees Je nrsquoai pas reacuteponse agrave tout soyez indulgent Parfois je parle vite arrecirctez-moi La reacutepartition des coteshellipE agrave A+
GTI515 Automne 2013 JF Couturier 15
Deacutepartement de geacutenie logiciel et des TI
QUIZ
Porte sur toute la matiegravere preacutesenteacutee en cours (cumulatif)
Commence agrave 18 h 20 minutes 25 de la note chacun Cours 3 5 10 et 12
GTI515 Automne 2013 JF Couturier 16
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 17
Plan du cours 1
Qui suis-jeProfesseur Assistant Eacutetudiants
Positionnement du cours dans le programme de geacutenie des TI
Preacutesentation du plan de cours Les processus drsquoaffaires Lrsquoanalyse du domaine et la modeacutelisation Lrsquoarchitecture applicative La production et la maintenance
Deacutepartement de geacutenie logiciel et des TI
Plan de cours
Plan de GTI-515 Parce que le cours vit une refonte le
plan de cours peut connaicirctre quelques modifications
GTI515 Automne 2013 JF Couturier 18
Deacutepartement de geacutenie logiciel et des TI
Laboratoires ndash GTI515
Eacutequipes de 4 Eacutequipes formeacutees lors de la premiegravere seacuteance de laboratoire Sujet pour les laboratoires confirmeacute par le professeur et le chargeacute de
laboratoire lors de la premiegravere seacuteance de laboratoire Production des arteacutefacts des disciplines de RUP
Document de vision
Diagrammes drsquoactiviteacute et BPMN
Modegravele du domaine et archeacutetypes
Diagramme des cas drsquoutilisation cas drsquoutilisation et diagramme de robustesse
SRS
Controcircle de la qualiteacute par des inspection par les pairs Outils Visio ou Visual Paradigm
GTI515 Automne 2013 JF Couturier 19
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 20
Peacutenaliteacutes de retard
lt 24 hres 20 24 hres gt et lt48 hres 40 48 hres gt et lt72 hres 60 gt72 hres 100
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 21
Plagiat
Lire le Chapitre 10 Plagiat et fraude du Regraveglement des eacutetudes de 1er cycle
Sanction minimale demandeacutee pour un laboratoire copieacute ou autres cas de plagiat ou fraude eacutechec du cours
Autre cas Copie drsquoun livre document ou document provenant
drsquoInternet sans citer la source
Reacuteutilisation de ses travaux drsquoun autre cours sans autorisation
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 22
Plan du cours 1
Qui suis-jeProfesseur Assistant Eacutetudiants
Positionnement du cours dans le programme de geacutenie des TI
Preacutesentation du plan de cours Lrsquoarchitecture dirigeacutee par les modegraveles
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 23
Les tendances dans le deacuteveloppementdes systegravemes drsquoinformation
Modeacutelisation UML2 BPMN MDA (Model Driven Architecture) SOA (agrave lrsquoaide des Services Web) Domain Specific Language
Les frameworks autour de Eclipse NetBean Visual Studio
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 24
UML - Historique
Ref Using the UML to Describe Design Patterns Diane Strode
Deacutepartement de geacutenie logiciel et des TI
Pourquoi modeacuteliser
Un modegravele est une abstraction du monde concret qui facilite sa compreacutehension
Un modegravele peut ecirctre sous forme graphique etou textuelle
Srsquoil est sous forme graphique il doit ecirctre compleacuteteacute par une preacutesentation textuelle
GTI515 Automne 2013 JF Couturier 25
Deacutepartement de geacutenie logiciel et des TI
La modeacutelisation dans les entreprises
Une perte de temps pour les non-informaticiens et mecircme les informaticiens
Une eacutevolution ineacuteluctable avec les nouveaux outils
Modeacuteliser = precirccher dans le deacutesert Cela deacutepend de la culture de votre deacutepartement
GTI515 Automne 2013 JF Couturier 26
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
256 milliards en projet logiciel aux US16 sont compleacuteteacutes en temps et dans
les coucircts
31 sont annuleacutes (81G$)
53 deacutepassent le budget preacutevu
42 seulement sont livreacutes avec les exigences initiales
GTI515 Automne 2013 JF Couturier 27
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
GTI515 Automne 2013 JF Couturier 28
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
GTI515 Automne 2013 JF Couturier 29
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
GTI515 Automne 2013 JF Couturier 30
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
Une grande proportion de projets TI eacutechouent PourquoiPlusieurs facteurs
Les mauvaises exigences en font partie
Si ccedila va si mal crsquoest qursquoil y a quelque chose qursquoon ne fait pas bien Il faut se remettre en question
GTI515 Automne 2013 JF Couturier 31
Deacutepartement de geacutenie logiciel et des TI
Et maintenant
GTI515 Automne 2013 JF Couturier 32
CHAOS Summary 2009
Deacutepartement de geacutenie logiciel et des TI
Et maintenant
GTI515 Automne 2013 JF Couturier 33
Standish Group 1999
CHAOS Summary 2009
Deacutepartement de geacutenie logiciel et des TI
Finalementhellip
GTI515 Automne 2013 JF Couturier 34
Deacutepartement de geacutenie logiciel et des TI
Reacuteussite Eacutechec
Mais qursquoest-ce qursquoun projet reacuteussi Dans les temps Dans le budget Avec les fonctions preacutevues
GTI515 Automne 2013 JF Couturier 35
Deacutepartement de geacutenie logiciel et des TI
Rappel
Notre domaine est tregraves jeune (70 ans) Geacutenie de la constructionhellip5000 ans
Mais nous progressons tregraves rapidement Pourquoi le geacutenie en TI
Artisanat vs geacutenie (le pif vs la meacutethode)
Acircge du geacutenie logiciel TI - Maturiteacute
Science virtuelle vs Meacutecanique construction
Une tendancehellipDe lrsquoartisanat agrave lrsquoindustrialisation du deacuteveloppement logiciel
GTI515 Automne 2013 JF Couturier 36
Deacutepartement de geacutenie logiciel et des TI
Industrialisation
Vers le milieu du 19e siegravecle Segmenter le travail des individus pour
ne pas ecirctre deacutependant drsquoun artisan Permet une production beaucoup plus
efficace en seacuterie
GTI515 Automne 2013 JF Couturier 37
Deacutepartement de geacutenie logiciel et des TI
Industrialisation
Est-ce que le deacuteveloppement peut-ecirctre industrialiseacuteCertains disent que non que le logiciel agrave
un caractegravere trop creacuteatif
Drsquoautres pensent que les reacutecents progregraves dans le domaine permettent une eacuteventuelle industrialisation dans la production drsquoapplication
GTI515 Automne 2013 JF Couturier 38
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 39
Technologies(OO CBD Services Web SOA
XML AOP DB design patternshellip)
Ingeacutenierie dirigeacutee par les modegraveles
Usines logicielles (Microsoft)Architecture dirigeacutee par les modegraveles (OMG)
Deux applications drsquoun mecircme concept de base
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 40
Techniques de deacuteveloppement assisteacute par ordinateur (Reacutef Software Factories Greenfield J p144)
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Un modegravele tregraves deacutetailleacute beaucoup de code geacuteneacutereacute
CASE Tools (Computer-aided software engineering)
Mal adapteacute au deacuteveloppement agile qui implique souvent des solutions partielles tregraves tocirct dans le cycle de deacuteveloppement
Synchronisation difficile
Eacuteloigneacutee de la plateforme
GTI515 Automne 2013 JF Couturier 41
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Exemple Outils graphiques de modeacutelisation des classes
Plus proche de la plateforme
Code geacuteneacutereacute pour la plateforme
Plus simple
Aide geacuteneacuteralement le deacuteveloppeur agrave voir les deacutependances entre les classes
Il reste beaucoup de code agrave faire agrave la main
Penser agrave coder du SWING Java agrave la mitaine
GTI515 Automne 2013 JF Couturier 42
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Existence drsquoun framework logiciel
On se base sur le framework pour automatiser-compleacuteter la production de certains eacuteleacutements comme les eacuteleacutements graphiques
Abstraction plus eacuteleveacutee
VB6 et ses formulaires
NET Hibernate
Peu drsquoabstractions au niveau du modegravele Classe entiteacute-relation
GTI515 Automne 2013 JF Couturier 43
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Finalement il y a la possibiliteacute drsquoavoir une laquo pile raquo de modegraveles
Drsquoun modegravele agrave lrsquoautre il y a transformation vers un modegravele de plus en plus preacutecis
Approche MDA
Concept de Domain Specific Language
Pour un domaine particulier on creacutee des laquo templates raquo reacuteutilisables
Permets la contribution des experts meacutetiers
GTI515 Automne 2013 JF Couturier 44
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles
GTI515 Automne 2013 JF Couturier 45
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Domain Specific Langage
Par opposition au General purpose language comme UML C++ Java ou C
AvantagesPermets agrave un expert meacutetier de
comprendre et valider un modegravele
InconveacutenientCoucirct Formation Maintenance
GTI515 Automne 2013 JF Couturier 46
httpenwikipediaorgwikiDomain_Specific_Language
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 47
BuzzhellipMDA MDD MDE
Model Driven Architecturemarque de commerce de lrsquoOMG
Model Driven Developmentextension de MDAmarque de commerce de lrsquoOMG
Model Driven Engineeringexpression geacuteneacuterique
Deacutepartement de geacutenie logiciel et des TI
Exemple Agrave partir des speacutecifications des exigences logicielles
Lrsquoacteur saisit la commande contenant
lrsquoadresse de livraison
lrsquoadresse de facturation
Le systegraveme creacutee la commande
Lrsquoacteur saisit un deacutetail de la commande avec
le nom du produit
la quantiteacute demandeacutee
le prix du produit
Le systegraveme creacutee le deacutetail et revient agrave lrsquoeacutetape 3
Lrsquoacteur termine la commande
Le systegraveme ferme la commande
GTI515 Automne 2013 JF Couturier 48
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 49
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Un modegravele (Diagramme de classes UML)
Deacutepartement de geacutenie logiciel et des TI
Model Driven ArchitectureUn scheacutema XML
ltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gt
ltxsdschema xmlnsxsd=httpwww targetNamespace=helliprsaquo
ltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo minOccurs=ldquo0ldquo maxOccurs=ldquounboundedgt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdcomplexType name=ldquoDetailCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoprixldquo type=ldquo xsdfloatldquogt
ltxsdelement name=ldquoquantiteldquo type=ldquo xsdintldquogt
ltxsdelement name=ldquonomProduitldquo type=ldquo xsdstringldquogt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdschemarsaquo
GTI515 Automne 2013 JF Couturier 50
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 51
Des classes Java
public class Commande
private String adresseLivraison
private String adresseFacturation
private Collection detailCommande
hellip
String getAdresseLivraison()
void setAdresseLivraison(String value)
String getAdresseFacturation()
void setAdresseFacturation(String value)
public class DetailCommande
private float prix
private int quantite
private String nomProduit
float getPrix()
void setPrix(float value)
int getQuantite()
void setQuantite(int value)
String getNomProduit()
void setNomProduit(String value)
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 52
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Programmepublic class Commande
private String adresseLivraisonprivate String adresseFacturation
String getAdresseLivraison()void setAdresseLivraison(String value)
String getAdresseFacturation()void setAdresseFacturation(String value)
Scheacutema XMLltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gtltxsdschema xmlnsxsd=httpwww
targetNamespace=helliprsaquoltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo
xsdstringldquogt ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo
Modegravele UML3 repreacutesentationsdes mecircmes exigences
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
Speacutecifications de lrsquoOMG Seacuteparation de la logique meacutetier de
toute plateforme technique Speacutecifications drsquoun langage de
transformation (QVT)
GTI515 Automne 2013 JF Couturier 53
Deacutepartement de geacutenie logiciel et des TI
Concept principal de MDA
Modeacuteliser pour documenter le systegraveme
Modeacuteliser pour construire le systegraveme
GTI515 Automne 2013 JF Couturier 55
Deacutepartement de geacutenie logiciel et des TI
CIM PIM PSM Code CIM
Computing Independant Model
Modegravele du domaine logique meacutetier
PIM Platform Independant Model
Modegravele de conception UML et OCL
PSM Platform Specific Model
NET J2EE
Codehellip
GTI515 Automne 2013 JF Couturier 56
Deacutepartement de geacutenie logiciel et des TI
Les diffeacuterentes eacutetapes
GTI515 Automne 2013 JF Couturier 57
Reacutef the Zachman Framework and the OMGrsquos MDA Business Process Trends Sept 2003
Deacutepartement de geacutenie logiciel et des TI
MDA et Gartner
GTI515 Automne 2013 JF Couturier 58
Gartner Hype Cycle 2008
Deacutepartement de geacutenie logiciel et des TI
Eacutetude de cas
Lecture de la discussion sur MDA Questions
Quels sont les arguments pour
Quels sont les arguments contre
Vos commentaires sur lrsquoarticle
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 59
Deacutepartement de geacutenie logiciel et des TI
Impact
Rocircle du deacuteveloppeur minimiseacute puisqursquoil nrsquointerpregravete plus le modegravele les regravegles de transformation srsquoen chargent
Modegraveles exportables drsquoune plateforme agrave un autre
Plus de 100 articles de recherche sur IEEE entre 2008 et 2009
Maishellip
GTI515 Automne 2013 JF Couturier 60
Deacutepartement de geacutenie logiciel et des TI
Impact
Est-ce applicable au monde agile
Le cycle de modeacutelisation est-il compatible avec le deacuteveloppement iteacuteratif
Est-ce qursquoil y a suffisamment de ressources hautement qualifieacutees pour reacutealiser ce type de projet
Pouvez-vous les former Pouvez-vous les conserver
Produire 80 du code et vous laisser les derniers 20 plus difficileshellip
Comment inteacutegrer les tests
GTI515 Automne 2013 JF Couturier 61
Scott Ambler Enterprise Unified Process p 191
Deacutepartement de geacutenie logiciel et des TI
Impact
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 62
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 63
Domaine
Exigences
Analyse
Conception
Reacutealisation
MDA
PIM
PSM
Modegravele des Processus drsquoaffaires
Modegravele drsquoanalyse du systegraveme
CIM
Modegravele des Cas drsquoutilisation
Modegravele de conception du systegraveme
Les modegraveles du cycle de deacuteveloppement de logiciels
Code
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 64
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 65
Deacutepartement de geacutenie logiciel et des TI
Exemple
GTI515 Automne 2013 JF Couturier 66
httpwwwibmcomdeveloperworksrationallibrary3100html
Deacutepartement de geacutenie logiciel et des TI
Ressources
Site de lOMG MDA Article drsquoIBM sur MDA Discussion sur MDA Wiki MDA Wiki QVT
GTI515 Automne 2013 JF Couturier 67
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 68
Laboratoire 1
Choix du sujet Validation de la porteacutee
Suffisamment long Plusieurs interactions humaines machines Reacutealisable dans une session
Chargeacute de laboratoire Oleg Litvinski Premier laboratoire lundi 7 mai
Deacutepartement de geacutenie logiciel et des TI
Le document de vision (RUP)
Une base de discussion et drsquoaccord parmi les intervenants du projet
Une description de lrsquoapplication en geacuteneacuteral incluant la description du marcheacute cible les clients les utilisateurs du systegraveme les problegravemes agrave reacutesoudre et les caracteacuteristiques de lrsquoapplication
GTI515 Automne 2013 JF Couturier 69
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 70
Requirements Management with Use Cases v20010300
Copyright copy 1998 2001 Rational Software all rights reserved
2
Problem
Solution Space
Problem Space
Needs
Features
SoftwareRequirements
Test Procedures Design User
Docs
The The Product Product To Be To Be BuiltBuilt
Traceability
Deacutepartement de geacutenie logiciel et des TI
Exemples de caracteacuteristiques (feature)
Domaine drsquoapplication Exemple de caracteacuteristique
Systegraveme de commande drsquoascenseur
Commande manuelle des portes durant une urgence de feu
Systegraveme de commande drsquoinventaire
Fournir un statut reacutecent de tous les items reacutepertorieacutes
Systegraveme de suivi de deacutefauts Fournir des laquo donneacutees raquo sur les tendances pour eacutevaluer la
qualiteacute
Systegraveme de paie Rapports par cateacutegories des deacuteductions remis agrave lrsquoimpocirct
Systegraveme de commande drsquoarmes
Minimum de deux confirmations indeacutependantes drsquoautorisation
drsquoattaque exigeacutee
GTI515 Automne 2013 JF Couturier 71
Deacutepartement de geacutenie logiciel et des TI
Niveau de deacutetail des caracteacuteristiques Pour tout nouveau systegraveme ou pour
une ameacutelioration majeure agrave un systegraveme existant il est recommandeacute de garder un niveau drsquoabstraction assez eacuteleveacute de sorte agrave avoir un maximum de caracteacuteristiques compris entre 25-99 et de preacutefeacuterence moins de 50
GTI515 Automne 2013 JF Couturier 72
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Statut Suit le progregraves
Exemples Proposeacute approuveacute incorporeacute etc
PrioriteacuteBeacuteneacutefice
Les caracteacuteristiques ne sont pas agrave prioriteacutes eacutegales ou geacutenegraverent des beacuteneacutefices eacutegaux
Exemple critiques importantes optionnelle
Effort Estimation du nombre de personnessemaines lignes de code points de fonction COSMIC_FFP
Risque La probabiliteacute que la caracteacuteristique aille causer un eacuteveacutenement indeacutesirable tel que le deacutepassement du budget ou des deacutelais ou mecircme lrsquoannulation du projet
GTI515 Automne 2013 JF Couturier 73
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Stabiliteacute La probabiliteacute que la caracteacuteristique elle-mecircme ou sa compreacutehension par lrsquoeacutequipe de deacuteveloppement changera
Mise en application
Documenter la version preacutevue pour laquelle la caracteacuteristique sera incorporeacutee
Assigneacutee agrave Deacutesigner lrsquoeacutequipe responsable de la caracteacuteristique
Raison Lrsquoorigine de la requecircte de la caracteacuteristique
GTI515 Automne 2013 JF Couturier 74
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 75
Deacutepartement de geacutenie logiciel et des TI
Reacutedaction du document de vision une description concise de tout ce qui est important au
produit ou agrave lrsquoapplication eacutecrit avec un niveau de deacutetails dans un langage lisible et
compreacutehensible par les intervenants du projet
Document de 15 agrave 20 pages
GTI515 Automne 2013 JF Couturier 76
Deacutepartement de geacutenie logiciel et des TI
Exemple le cas ACS
GTI515 Automne 2013 JF Couturier 77
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 78
Deacutepartement de geacutenie logiciel et des TI
Exemple de problegravemesle cas ACS
Controcircle drsquoune large gamme de mateacuteriels
Utilisation compliqueacutee Difficulteacutes de programmation Disponibiliteacute du mateacuteriel Risque de mauvaise utilisation
GTI515 Automne 2013 JF Couturier 79
Deacutepartement de geacutenie logiciel et des TI
Exemple de besoinsle cas ACS
AutomatiserLa distribution de fertilisantLa distribution de nourritureLa dureacutee de lrsquoeacuteclairage
Commander lrsquoopeacuteration des appareils Reacuteguler
le niveau et la dureteacute de lrsquoeauLa tempeacuterature
GTI515 Automne 2013 JF Couturier 80
Deacutepartement de geacutenie logiciel et des TI
Exemple de caracteacuteristiquesle cas ACS
Deacutemarrage automatique du systegraveme Programmation conserveacutee en cas de
panne drsquoalimentation Deacutetection automatique des modules Facile agrave programmer et agrave utiliser
Exigence non fonctionnelle
GTI515 Automne 2013 JF Couturier 81
Deacutepartement de geacutenie logiciel et des TI
Critegraveres drsquoeacutevaluation
Respect de lrsquoesprit du document
En tant qursquointervenant externe est-ce que je comprends bien
Respect de la forme du gabarit
Qualiteacute du franccedilais
Document de calibre professionnel que lrsquoon pourrait remettre agrave un dirigeant
GTI515 Automne 2013 JF Couturier 82
Deacutepartement de geacutenie logiciel et des TI
Grille drsquoeacutevaluation (sur 100)
Agrave venirhellip
GTI515 Automne 2013 JF Couturier 83
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 84
Prochain cours
La modeacutelisation des processus drsquoaffaires Le diagramme drsquoactiviteacute Le diagnostic des processus drsquoaffaires existant
Lectures Lrsquoutilisation drsquoUML Chapitre sur les diagrammes drsquoactiviteacutes dans Larman Lecture sur MDA Voir site Web du cours
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 85
Questions
- Systegravemes drsquoinformation dans les entreprises (GTI515)
- Plan du cours 1
- Qui suis-je JF Couturier
- Qui suis-je Eacutetudiant(e)
- Plan du cours 1 (2)
- Objectifs du programme
- Ingeacutenieur
- Programme GTI
- Geacutenie des TI
- Cours de speacutecialiteacutes GTI
- Objectif du cours
- Vue drsquoensemble du cours
- Lectures et reacutefeacuterences
- Regravegles du jeu
- QUIZ
- Plan du cours 1 (3)
- Plan de cours
- Laboratoires ndash GTI515
- Peacutenaliteacutes de retard
- Plagiat
- Plan du cours 1 (4)
- Les tendances dans le deacuteveloppement des systegravemes drsquoinformation
- UML - Historique
- Pourquoi modeacuteliser
- La modeacutelisation dans les entreprises
- Quelques chiffres
- Quelques chiffres (2)
- Quelques chiffres (3)
- Quelques chiffres (4)
- Quelques chiffres (5)
- Et maintenant
- Et maintenant (2)
- Finalementhellip
- Reacuteussite Eacutechec
- Rappel
- Industrialisation
- Industrialisation (2)
- Slide 39
- Slide 40
- Usines logicielles (S Factory)
- Usines logicielles (S Factory) (2)
- Usines logicielles (S Factory) (3)
- Usines logicielles (S Factory) (4)
- Usines logicielles
- Domain Specific Langage
- BuzzhellipMDA MDD MDE
- Exemple
- Model Driven Architecture
- Model Driven Architecture (2)
- Model Driven Architecture (3)
- Model Driven Architecture (4)
- Model Driven Architecture (5)
- Concept principal de MDA
- CIM PIM PSM Code
- Les diffeacuterentes eacutetapes
- MDA et Gartner
- Eacutetude de cas
- Impact
- Impact (2)
- Impact (3)
- Slide 63
- Slide 64
- Slide 65
- Exemple (2)
- Ressources
- Laboratoire 1
- Le document de vision (RUP)
- Slide 70
- Exemples de caracteacuteristiques (feature)
- Niveau de deacutetail des caracteacuteristiques
- Attributs des caracteacuteristiques
- Attributs des caracteacuteristiques
- Slide 75
- Reacutedaction du document de vision
- Exemple le cas ACS
- Slide 78
- Exemple de problegravemes le cas ACS
- Exemple de besoins le cas ACS
- Exemple de caracteacuteristiques le cas ACS
- Critegraveres drsquoeacutevaluation
- Grille drsquoeacutevaluation (sur 100)
- Prochain cours
- Questions
-
Deacutepartement de geacutenie logiciel et des TI
Regravegles du jeu La ponctualiteacute Tout le monde a la parole mais un seul agrave la
fois Un effort reacuteparti dans le temps Prendre des notes Faire les lectures demandeacutees Je nrsquoai pas reacuteponse agrave tout soyez indulgent Parfois je parle vite arrecirctez-moi La reacutepartition des coteshellipE agrave A+
GTI515 Automne 2013 JF Couturier 15
Deacutepartement de geacutenie logiciel et des TI
QUIZ
Porte sur toute la matiegravere preacutesenteacutee en cours (cumulatif)
Commence agrave 18 h 20 minutes 25 de la note chacun Cours 3 5 10 et 12
GTI515 Automne 2013 JF Couturier 16
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 17
Plan du cours 1
Qui suis-jeProfesseur Assistant Eacutetudiants
Positionnement du cours dans le programme de geacutenie des TI
Preacutesentation du plan de cours Les processus drsquoaffaires Lrsquoanalyse du domaine et la modeacutelisation Lrsquoarchitecture applicative La production et la maintenance
Deacutepartement de geacutenie logiciel et des TI
Plan de cours
Plan de GTI-515 Parce que le cours vit une refonte le
plan de cours peut connaicirctre quelques modifications
GTI515 Automne 2013 JF Couturier 18
Deacutepartement de geacutenie logiciel et des TI
Laboratoires ndash GTI515
Eacutequipes de 4 Eacutequipes formeacutees lors de la premiegravere seacuteance de laboratoire Sujet pour les laboratoires confirmeacute par le professeur et le chargeacute de
laboratoire lors de la premiegravere seacuteance de laboratoire Production des arteacutefacts des disciplines de RUP
Document de vision
Diagrammes drsquoactiviteacute et BPMN
Modegravele du domaine et archeacutetypes
Diagramme des cas drsquoutilisation cas drsquoutilisation et diagramme de robustesse
SRS
Controcircle de la qualiteacute par des inspection par les pairs Outils Visio ou Visual Paradigm
GTI515 Automne 2013 JF Couturier 19
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 20
Peacutenaliteacutes de retard
lt 24 hres 20 24 hres gt et lt48 hres 40 48 hres gt et lt72 hres 60 gt72 hres 100
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 21
Plagiat
Lire le Chapitre 10 Plagiat et fraude du Regraveglement des eacutetudes de 1er cycle
Sanction minimale demandeacutee pour un laboratoire copieacute ou autres cas de plagiat ou fraude eacutechec du cours
Autre cas Copie drsquoun livre document ou document provenant
drsquoInternet sans citer la source
Reacuteutilisation de ses travaux drsquoun autre cours sans autorisation
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 22
Plan du cours 1
Qui suis-jeProfesseur Assistant Eacutetudiants
Positionnement du cours dans le programme de geacutenie des TI
Preacutesentation du plan de cours Lrsquoarchitecture dirigeacutee par les modegraveles
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 23
Les tendances dans le deacuteveloppementdes systegravemes drsquoinformation
Modeacutelisation UML2 BPMN MDA (Model Driven Architecture) SOA (agrave lrsquoaide des Services Web) Domain Specific Language
Les frameworks autour de Eclipse NetBean Visual Studio
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 24
UML - Historique
Ref Using the UML to Describe Design Patterns Diane Strode
Deacutepartement de geacutenie logiciel et des TI
Pourquoi modeacuteliser
Un modegravele est une abstraction du monde concret qui facilite sa compreacutehension
Un modegravele peut ecirctre sous forme graphique etou textuelle
Srsquoil est sous forme graphique il doit ecirctre compleacuteteacute par une preacutesentation textuelle
GTI515 Automne 2013 JF Couturier 25
Deacutepartement de geacutenie logiciel et des TI
La modeacutelisation dans les entreprises
Une perte de temps pour les non-informaticiens et mecircme les informaticiens
Une eacutevolution ineacuteluctable avec les nouveaux outils
Modeacuteliser = precirccher dans le deacutesert Cela deacutepend de la culture de votre deacutepartement
GTI515 Automne 2013 JF Couturier 26
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
256 milliards en projet logiciel aux US16 sont compleacuteteacutes en temps et dans
les coucircts
31 sont annuleacutes (81G$)
53 deacutepassent le budget preacutevu
42 seulement sont livreacutes avec les exigences initiales
GTI515 Automne 2013 JF Couturier 27
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
GTI515 Automne 2013 JF Couturier 28
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
GTI515 Automne 2013 JF Couturier 29
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
GTI515 Automne 2013 JF Couturier 30
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
Une grande proportion de projets TI eacutechouent PourquoiPlusieurs facteurs
Les mauvaises exigences en font partie
Si ccedila va si mal crsquoest qursquoil y a quelque chose qursquoon ne fait pas bien Il faut se remettre en question
GTI515 Automne 2013 JF Couturier 31
Deacutepartement de geacutenie logiciel et des TI
Et maintenant
GTI515 Automne 2013 JF Couturier 32
CHAOS Summary 2009
Deacutepartement de geacutenie logiciel et des TI
Et maintenant
GTI515 Automne 2013 JF Couturier 33
Standish Group 1999
CHAOS Summary 2009
Deacutepartement de geacutenie logiciel et des TI
Finalementhellip
GTI515 Automne 2013 JF Couturier 34
Deacutepartement de geacutenie logiciel et des TI
Reacuteussite Eacutechec
Mais qursquoest-ce qursquoun projet reacuteussi Dans les temps Dans le budget Avec les fonctions preacutevues
GTI515 Automne 2013 JF Couturier 35
Deacutepartement de geacutenie logiciel et des TI
Rappel
Notre domaine est tregraves jeune (70 ans) Geacutenie de la constructionhellip5000 ans
Mais nous progressons tregraves rapidement Pourquoi le geacutenie en TI
Artisanat vs geacutenie (le pif vs la meacutethode)
Acircge du geacutenie logiciel TI - Maturiteacute
Science virtuelle vs Meacutecanique construction
Une tendancehellipDe lrsquoartisanat agrave lrsquoindustrialisation du deacuteveloppement logiciel
GTI515 Automne 2013 JF Couturier 36
Deacutepartement de geacutenie logiciel et des TI
Industrialisation
Vers le milieu du 19e siegravecle Segmenter le travail des individus pour
ne pas ecirctre deacutependant drsquoun artisan Permet une production beaucoup plus
efficace en seacuterie
GTI515 Automne 2013 JF Couturier 37
Deacutepartement de geacutenie logiciel et des TI
Industrialisation
Est-ce que le deacuteveloppement peut-ecirctre industrialiseacuteCertains disent que non que le logiciel agrave
un caractegravere trop creacuteatif
Drsquoautres pensent que les reacutecents progregraves dans le domaine permettent une eacuteventuelle industrialisation dans la production drsquoapplication
GTI515 Automne 2013 JF Couturier 38
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 39
Technologies(OO CBD Services Web SOA
XML AOP DB design patternshellip)
Ingeacutenierie dirigeacutee par les modegraveles
Usines logicielles (Microsoft)Architecture dirigeacutee par les modegraveles (OMG)
Deux applications drsquoun mecircme concept de base
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 40
Techniques de deacuteveloppement assisteacute par ordinateur (Reacutef Software Factories Greenfield J p144)
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Un modegravele tregraves deacutetailleacute beaucoup de code geacuteneacutereacute
CASE Tools (Computer-aided software engineering)
Mal adapteacute au deacuteveloppement agile qui implique souvent des solutions partielles tregraves tocirct dans le cycle de deacuteveloppement
Synchronisation difficile
Eacuteloigneacutee de la plateforme
GTI515 Automne 2013 JF Couturier 41
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Exemple Outils graphiques de modeacutelisation des classes
Plus proche de la plateforme
Code geacuteneacutereacute pour la plateforme
Plus simple
Aide geacuteneacuteralement le deacuteveloppeur agrave voir les deacutependances entre les classes
Il reste beaucoup de code agrave faire agrave la main
Penser agrave coder du SWING Java agrave la mitaine
GTI515 Automne 2013 JF Couturier 42
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Existence drsquoun framework logiciel
On se base sur le framework pour automatiser-compleacuteter la production de certains eacuteleacutements comme les eacuteleacutements graphiques
Abstraction plus eacuteleveacutee
VB6 et ses formulaires
NET Hibernate
Peu drsquoabstractions au niveau du modegravele Classe entiteacute-relation
GTI515 Automne 2013 JF Couturier 43
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Finalement il y a la possibiliteacute drsquoavoir une laquo pile raquo de modegraveles
Drsquoun modegravele agrave lrsquoautre il y a transformation vers un modegravele de plus en plus preacutecis
Approche MDA
Concept de Domain Specific Language
Pour un domaine particulier on creacutee des laquo templates raquo reacuteutilisables
Permets la contribution des experts meacutetiers
GTI515 Automne 2013 JF Couturier 44
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles
GTI515 Automne 2013 JF Couturier 45
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Domain Specific Langage
Par opposition au General purpose language comme UML C++ Java ou C
AvantagesPermets agrave un expert meacutetier de
comprendre et valider un modegravele
InconveacutenientCoucirct Formation Maintenance
GTI515 Automne 2013 JF Couturier 46
httpenwikipediaorgwikiDomain_Specific_Language
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 47
BuzzhellipMDA MDD MDE
Model Driven Architecturemarque de commerce de lrsquoOMG
Model Driven Developmentextension de MDAmarque de commerce de lrsquoOMG
Model Driven Engineeringexpression geacuteneacuterique
Deacutepartement de geacutenie logiciel et des TI
Exemple Agrave partir des speacutecifications des exigences logicielles
Lrsquoacteur saisit la commande contenant
lrsquoadresse de livraison
lrsquoadresse de facturation
Le systegraveme creacutee la commande
Lrsquoacteur saisit un deacutetail de la commande avec
le nom du produit
la quantiteacute demandeacutee
le prix du produit
Le systegraveme creacutee le deacutetail et revient agrave lrsquoeacutetape 3
Lrsquoacteur termine la commande
Le systegraveme ferme la commande
GTI515 Automne 2013 JF Couturier 48
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 49
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Un modegravele (Diagramme de classes UML)
Deacutepartement de geacutenie logiciel et des TI
Model Driven ArchitectureUn scheacutema XML
ltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gt
ltxsdschema xmlnsxsd=httpwww targetNamespace=helliprsaquo
ltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo minOccurs=ldquo0ldquo maxOccurs=ldquounboundedgt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdcomplexType name=ldquoDetailCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoprixldquo type=ldquo xsdfloatldquogt
ltxsdelement name=ldquoquantiteldquo type=ldquo xsdintldquogt
ltxsdelement name=ldquonomProduitldquo type=ldquo xsdstringldquogt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdschemarsaquo
GTI515 Automne 2013 JF Couturier 50
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 51
Des classes Java
public class Commande
private String adresseLivraison
private String adresseFacturation
private Collection detailCommande
hellip
String getAdresseLivraison()
void setAdresseLivraison(String value)
String getAdresseFacturation()
void setAdresseFacturation(String value)
public class DetailCommande
private float prix
private int quantite
private String nomProduit
float getPrix()
void setPrix(float value)
int getQuantite()
void setQuantite(int value)
String getNomProduit()
void setNomProduit(String value)
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 52
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Programmepublic class Commande
private String adresseLivraisonprivate String adresseFacturation
String getAdresseLivraison()void setAdresseLivraison(String value)
String getAdresseFacturation()void setAdresseFacturation(String value)
Scheacutema XMLltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gtltxsdschema xmlnsxsd=httpwww
targetNamespace=helliprsaquoltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo
xsdstringldquogt ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo
Modegravele UML3 repreacutesentationsdes mecircmes exigences
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
Speacutecifications de lrsquoOMG Seacuteparation de la logique meacutetier de
toute plateforme technique Speacutecifications drsquoun langage de
transformation (QVT)
GTI515 Automne 2013 JF Couturier 53
Deacutepartement de geacutenie logiciel et des TI
Concept principal de MDA
Modeacuteliser pour documenter le systegraveme
Modeacuteliser pour construire le systegraveme
GTI515 Automne 2013 JF Couturier 55
Deacutepartement de geacutenie logiciel et des TI
CIM PIM PSM Code CIM
Computing Independant Model
Modegravele du domaine logique meacutetier
PIM Platform Independant Model
Modegravele de conception UML et OCL
PSM Platform Specific Model
NET J2EE
Codehellip
GTI515 Automne 2013 JF Couturier 56
Deacutepartement de geacutenie logiciel et des TI
Les diffeacuterentes eacutetapes
GTI515 Automne 2013 JF Couturier 57
Reacutef the Zachman Framework and the OMGrsquos MDA Business Process Trends Sept 2003
Deacutepartement de geacutenie logiciel et des TI
MDA et Gartner
GTI515 Automne 2013 JF Couturier 58
Gartner Hype Cycle 2008
Deacutepartement de geacutenie logiciel et des TI
Eacutetude de cas
Lecture de la discussion sur MDA Questions
Quels sont les arguments pour
Quels sont les arguments contre
Vos commentaires sur lrsquoarticle
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 59
Deacutepartement de geacutenie logiciel et des TI
Impact
Rocircle du deacuteveloppeur minimiseacute puisqursquoil nrsquointerpregravete plus le modegravele les regravegles de transformation srsquoen chargent
Modegraveles exportables drsquoune plateforme agrave un autre
Plus de 100 articles de recherche sur IEEE entre 2008 et 2009
Maishellip
GTI515 Automne 2013 JF Couturier 60
Deacutepartement de geacutenie logiciel et des TI
Impact
Est-ce applicable au monde agile
Le cycle de modeacutelisation est-il compatible avec le deacuteveloppement iteacuteratif
Est-ce qursquoil y a suffisamment de ressources hautement qualifieacutees pour reacutealiser ce type de projet
Pouvez-vous les former Pouvez-vous les conserver
Produire 80 du code et vous laisser les derniers 20 plus difficileshellip
Comment inteacutegrer les tests
GTI515 Automne 2013 JF Couturier 61
Scott Ambler Enterprise Unified Process p 191
Deacutepartement de geacutenie logiciel et des TI
Impact
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 62
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 63
Domaine
Exigences
Analyse
Conception
Reacutealisation
MDA
PIM
PSM
Modegravele des Processus drsquoaffaires
Modegravele drsquoanalyse du systegraveme
CIM
Modegravele des Cas drsquoutilisation
Modegravele de conception du systegraveme
Les modegraveles du cycle de deacuteveloppement de logiciels
Code
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 64
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 65
Deacutepartement de geacutenie logiciel et des TI
Exemple
GTI515 Automne 2013 JF Couturier 66
httpwwwibmcomdeveloperworksrationallibrary3100html
Deacutepartement de geacutenie logiciel et des TI
Ressources
Site de lOMG MDA Article drsquoIBM sur MDA Discussion sur MDA Wiki MDA Wiki QVT
GTI515 Automne 2013 JF Couturier 67
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 68
Laboratoire 1
Choix du sujet Validation de la porteacutee
Suffisamment long Plusieurs interactions humaines machines Reacutealisable dans une session
Chargeacute de laboratoire Oleg Litvinski Premier laboratoire lundi 7 mai
Deacutepartement de geacutenie logiciel et des TI
Le document de vision (RUP)
Une base de discussion et drsquoaccord parmi les intervenants du projet
Une description de lrsquoapplication en geacuteneacuteral incluant la description du marcheacute cible les clients les utilisateurs du systegraveme les problegravemes agrave reacutesoudre et les caracteacuteristiques de lrsquoapplication
GTI515 Automne 2013 JF Couturier 69
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 70
Requirements Management with Use Cases v20010300
Copyright copy 1998 2001 Rational Software all rights reserved
2
Problem
Solution Space
Problem Space
Needs
Features
SoftwareRequirements
Test Procedures Design User
Docs
The The Product Product To Be To Be BuiltBuilt
Traceability
Deacutepartement de geacutenie logiciel et des TI
Exemples de caracteacuteristiques (feature)
Domaine drsquoapplication Exemple de caracteacuteristique
Systegraveme de commande drsquoascenseur
Commande manuelle des portes durant une urgence de feu
Systegraveme de commande drsquoinventaire
Fournir un statut reacutecent de tous les items reacutepertorieacutes
Systegraveme de suivi de deacutefauts Fournir des laquo donneacutees raquo sur les tendances pour eacutevaluer la
qualiteacute
Systegraveme de paie Rapports par cateacutegories des deacuteductions remis agrave lrsquoimpocirct
Systegraveme de commande drsquoarmes
Minimum de deux confirmations indeacutependantes drsquoautorisation
drsquoattaque exigeacutee
GTI515 Automne 2013 JF Couturier 71
Deacutepartement de geacutenie logiciel et des TI
Niveau de deacutetail des caracteacuteristiques Pour tout nouveau systegraveme ou pour
une ameacutelioration majeure agrave un systegraveme existant il est recommandeacute de garder un niveau drsquoabstraction assez eacuteleveacute de sorte agrave avoir un maximum de caracteacuteristiques compris entre 25-99 et de preacutefeacuterence moins de 50
GTI515 Automne 2013 JF Couturier 72
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Statut Suit le progregraves
Exemples Proposeacute approuveacute incorporeacute etc
PrioriteacuteBeacuteneacutefice
Les caracteacuteristiques ne sont pas agrave prioriteacutes eacutegales ou geacutenegraverent des beacuteneacutefices eacutegaux
Exemple critiques importantes optionnelle
Effort Estimation du nombre de personnessemaines lignes de code points de fonction COSMIC_FFP
Risque La probabiliteacute que la caracteacuteristique aille causer un eacuteveacutenement indeacutesirable tel que le deacutepassement du budget ou des deacutelais ou mecircme lrsquoannulation du projet
GTI515 Automne 2013 JF Couturier 73
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Stabiliteacute La probabiliteacute que la caracteacuteristique elle-mecircme ou sa compreacutehension par lrsquoeacutequipe de deacuteveloppement changera
Mise en application
Documenter la version preacutevue pour laquelle la caracteacuteristique sera incorporeacutee
Assigneacutee agrave Deacutesigner lrsquoeacutequipe responsable de la caracteacuteristique
Raison Lrsquoorigine de la requecircte de la caracteacuteristique
GTI515 Automne 2013 JF Couturier 74
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 75
Deacutepartement de geacutenie logiciel et des TI
Reacutedaction du document de vision une description concise de tout ce qui est important au
produit ou agrave lrsquoapplication eacutecrit avec un niveau de deacutetails dans un langage lisible et
compreacutehensible par les intervenants du projet
Document de 15 agrave 20 pages
GTI515 Automne 2013 JF Couturier 76
Deacutepartement de geacutenie logiciel et des TI
Exemple le cas ACS
GTI515 Automne 2013 JF Couturier 77
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 78
Deacutepartement de geacutenie logiciel et des TI
Exemple de problegravemesle cas ACS
Controcircle drsquoune large gamme de mateacuteriels
Utilisation compliqueacutee Difficulteacutes de programmation Disponibiliteacute du mateacuteriel Risque de mauvaise utilisation
GTI515 Automne 2013 JF Couturier 79
Deacutepartement de geacutenie logiciel et des TI
Exemple de besoinsle cas ACS
AutomatiserLa distribution de fertilisantLa distribution de nourritureLa dureacutee de lrsquoeacuteclairage
Commander lrsquoopeacuteration des appareils Reacuteguler
le niveau et la dureteacute de lrsquoeauLa tempeacuterature
GTI515 Automne 2013 JF Couturier 80
Deacutepartement de geacutenie logiciel et des TI
Exemple de caracteacuteristiquesle cas ACS
Deacutemarrage automatique du systegraveme Programmation conserveacutee en cas de
panne drsquoalimentation Deacutetection automatique des modules Facile agrave programmer et agrave utiliser
Exigence non fonctionnelle
GTI515 Automne 2013 JF Couturier 81
Deacutepartement de geacutenie logiciel et des TI
Critegraveres drsquoeacutevaluation
Respect de lrsquoesprit du document
En tant qursquointervenant externe est-ce que je comprends bien
Respect de la forme du gabarit
Qualiteacute du franccedilais
Document de calibre professionnel que lrsquoon pourrait remettre agrave un dirigeant
GTI515 Automne 2013 JF Couturier 82
Deacutepartement de geacutenie logiciel et des TI
Grille drsquoeacutevaluation (sur 100)
Agrave venirhellip
GTI515 Automne 2013 JF Couturier 83
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 84
Prochain cours
La modeacutelisation des processus drsquoaffaires Le diagramme drsquoactiviteacute Le diagnostic des processus drsquoaffaires existant
Lectures Lrsquoutilisation drsquoUML Chapitre sur les diagrammes drsquoactiviteacutes dans Larman Lecture sur MDA Voir site Web du cours
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 85
Questions
- Systegravemes drsquoinformation dans les entreprises (GTI515)
- Plan du cours 1
- Qui suis-je JF Couturier
- Qui suis-je Eacutetudiant(e)
- Plan du cours 1 (2)
- Objectifs du programme
- Ingeacutenieur
- Programme GTI
- Geacutenie des TI
- Cours de speacutecialiteacutes GTI
- Objectif du cours
- Vue drsquoensemble du cours
- Lectures et reacutefeacuterences
- Regravegles du jeu
- QUIZ
- Plan du cours 1 (3)
- Plan de cours
- Laboratoires ndash GTI515
- Peacutenaliteacutes de retard
- Plagiat
- Plan du cours 1 (4)
- Les tendances dans le deacuteveloppement des systegravemes drsquoinformation
- UML - Historique
- Pourquoi modeacuteliser
- La modeacutelisation dans les entreprises
- Quelques chiffres
- Quelques chiffres (2)
- Quelques chiffres (3)
- Quelques chiffres (4)
- Quelques chiffres (5)
- Et maintenant
- Et maintenant (2)
- Finalementhellip
- Reacuteussite Eacutechec
- Rappel
- Industrialisation
- Industrialisation (2)
- Slide 39
- Slide 40
- Usines logicielles (S Factory)
- Usines logicielles (S Factory) (2)
- Usines logicielles (S Factory) (3)
- Usines logicielles (S Factory) (4)
- Usines logicielles
- Domain Specific Langage
- BuzzhellipMDA MDD MDE
- Exemple
- Model Driven Architecture
- Model Driven Architecture (2)
- Model Driven Architecture (3)
- Model Driven Architecture (4)
- Model Driven Architecture (5)
- Concept principal de MDA
- CIM PIM PSM Code
- Les diffeacuterentes eacutetapes
- MDA et Gartner
- Eacutetude de cas
- Impact
- Impact (2)
- Impact (3)
- Slide 63
- Slide 64
- Slide 65
- Exemple (2)
- Ressources
- Laboratoire 1
- Le document de vision (RUP)
- Slide 70
- Exemples de caracteacuteristiques (feature)
- Niveau de deacutetail des caracteacuteristiques
- Attributs des caracteacuteristiques
- Attributs des caracteacuteristiques
- Slide 75
- Reacutedaction du document de vision
- Exemple le cas ACS
- Slide 78
- Exemple de problegravemes le cas ACS
- Exemple de besoins le cas ACS
- Exemple de caracteacuteristiques le cas ACS
- Critegraveres drsquoeacutevaluation
- Grille drsquoeacutevaluation (sur 100)
- Prochain cours
- Questions
-
Deacutepartement de geacutenie logiciel et des TI
QUIZ
Porte sur toute la matiegravere preacutesenteacutee en cours (cumulatif)
Commence agrave 18 h 20 minutes 25 de la note chacun Cours 3 5 10 et 12
GTI515 Automne 2013 JF Couturier 16
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 17
Plan du cours 1
Qui suis-jeProfesseur Assistant Eacutetudiants
Positionnement du cours dans le programme de geacutenie des TI
Preacutesentation du plan de cours Les processus drsquoaffaires Lrsquoanalyse du domaine et la modeacutelisation Lrsquoarchitecture applicative La production et la maintenance
Deacutepartement de geacutenie logiciel et des TI
Plan de cours
Plan de GTI-515 Parce que le cours vit une refonte le
plan de cours peut connaicirctre quelques modifications
GTI515 Automne 2013 JF Couturier 18
Deacutepartement de geacutenie logiciel et des TI
Laboratoires ndash GTI515
Eacutequipes de 4 Eacutequipes formeacutees lors de la premiegravere seacuteance de laboratoire Sujet pour les laboratoires confirmeacute par le professeur et le chargeacute de
laboratoire lors de la premiegravere seacuteance de laboratoire Production des arteacutefacts des disciplines de RUP
Document de vision
Diagrammes drsquoactiviteacute et BPMN
Modegravele du domaine et archeacutetypes
Diagramme des cas drsquoutilisation cas drsquoutilisation et diagramme de robustesse
SRS
Controcircle de la qualiteacute par des inspection par les pairs Outils Visio ou Visual Paradigm
GTI515 Automne 2013 JF Couturier 19
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 20
Peacutenaliteacutes de retard
lt 24 hres 20 24 hres gt et lt48 hres 40 48 hres gt et lt72 hres 60 gt72 hres 100
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 21
Plagiat
Lire le Chapitre 10 Plagiat et fraude du Regraveglement des eacutetudes de 1er cycle
Sanction minimale demandeacutee pour un laboratoire copieacute ou autres cas de plagiat ou fraude eacutechec du cours
Autre cas Copie drsquoun livre document ou document provenant
drsquoInternet sans citer la source
Reacuteutilisation de ses travaux drsquoun autre cours sans autorisation
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 22
Plan du cours 1
Qui suis-jeProfesseur Assistant Eacutetudiants
Positionnement du cours dans le programme de geacutenie des TI
Preacutesentation du plan de cours Lrsquoarchitecture dirigeacutee par les modegraveles
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 23
Les tendances dans le deacuteveloppementdes systegravemes drsquoinformation
Modeacutelisation UML2 BPMN MDA (Model Driven Architecture) SOA (agrave lrsquoaide des Services Web) Domain Specific Language
Les frameworks autour de Eclipse NetBean Visual Studio
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 24
UML - Historique
Ref Using the UML to Describe Design Patterns Diane Strode
Deacutepartement de geacutenie logiciel et des TI
Pourquoi modeacuteliser
Un modegravele est une abstraction du monde concret qui facilite sa compreacutehension
Un modegravele peut ecirctre sous forme graphique etou textuelle
Srsquoil est sous forme graphique il doit ecirctre compleacuteteacute par une preacutesentation textuelle
GTI515 Automne 2013 JF Couturier 25
Deacutepartement de geacutenie logiciel et des TI
La modeacutelisation dans les entreprises
Une perte de temps pour les non-informaticiens et mecircme les informaticiens
Une eacutevolution ineacuteluctable avec les nouveaux outils
Modeacuteliser = precirccher dans le deacutesert Cela deacutepend de la culture de votre deacutepartement
GTI515 Automne 2013 JF Couturier 26
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
256 milliards en projet logiciel aux US16 sont compleacuteteacutes en temps et dans
les coucircts
31 sont annuleacutes (81G$)
53 deacutepassent le budget preacutevu
42 seulement sont livreacutes avec les exigences initiales
GTI515 Automne 2013 JF Couturier 27
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
GTI515 Automne 2013 JF Couturier 28
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
GTI515 Automne 2013 JF Couturier 29
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
GTI515 Automne 2013 JF Couturier 30
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
Une grande proportion de projets TI eacutechouent PourquoiPlusieurs facteurs
Les mauvaises exigences en font partie
Si ccedila va si mal crsquoest qursquoil y a quelque chose qursquoon ne fait pas bien Il faut se remettre en question
GTI515 Automne 2013 JF Couturier 31
Deacutepartement de geacutenie logiciel et des TI
Et maintenant
GTI515 Automne 2013 JF Couturier 32
CHAOS Summary 2009
Deacutepartement de geacutenie logiciel et des TI
Et maintenant
GTI515 Automne 2013 JF Couturier 33
Standish Group 1999
CHAOS Summary 2009
Deacutepartement de geacutenie logiciel et des TI
Finalementhellip
GTI515 Automne 2013 JF Couturier 34
Deacutepartement de geacutenie logiciel et des TI
Reacuteussite Eacutechec
Mais qursquoest-ce qursquoun projet reacuteussi Dans les temps Dans le budget Avec les fonctions preacutevues
GTI515 Automne 2013 JF Couturier 35
Deacutepartement de geacutenie logiciel et des TI
Rappel
Notre domaine est tregraves jeune (70 ans) Geacutenie de la constructionhellip5000 ans
Mais nous progressons tregraves rapidement Pourquoi le geacutenie en TI
Artisanat vs geacutenie (le pif vs la meacutethode)
Acircge du geacutenie logiciel TI - Maturiteacute
Science virtuelle vs Meacutecanique construction
Une tendancehellipDe lrsquoartisanat agrave lrsquoindustrialisation du deacuteveloppement logiciel
GTI515 Automne 2013 JF Couturier 36
Deacutepartement de geacutenie logiciel et des TI
Industrialisation
Vers le milieu du 19e siegravecle Segmenter le travail des individus pour
ne pas ecirctre deacutependant drsquoun artisan Permet une production beaucoup plus
efficace en seacuterie
GTI515 Automne 2013 JF Couturier 37
Deacutepartement de geacutenie logiciel et des TI
Industrialisation
Est-ce que le deacuteveloppement peut-ecirctre industrialiseacuteCertains disent que non que le logiciel agrave
un caractegravere trop creacuteatif
Drsquoautres pensent que les reacutecents progregraves dans le domaine permettent une eacuteventuelle industrialisation dans la production drsquoapplication
GTI515 Automne 2013 JF Couturier 38
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 39
Technologies(OO CBD Services Web SOA
XML AOP DB design patternshellip)
Ingeacutenierie dirigeacutee par les modegraveles
Usines logicielles (Microsoft)Architecture dirigeacutee par les modegraveles (OMG)
Deux applications drsquoun mecircme concept de base
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 40
Techniques de deacuteveloppement assisteacute par ordinateur (Reacutef Software Factories Greenfield J p144)
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Un modegravele tregraves deacutetailleacute beaucoup de code geacuteneacutereacute
CASE Tools (Computer-aided software engineering)
Mal adapteacute au deacuteveloppement agile qui implique souvent des solutions partielles tregraves tocirct dans le cycle de deacuteveloppement
Synchronisation difficile
Eacuteloigneacutee de la plateforme
GTI515 Automne 2013 JF Couturier 41
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Exemple Outils graphiques de modeacutelisation des classes
Plus proche de la plateforme
Code geacuteneacutereacute pour la plateforme
Plus simple
Aide geacuteneacuteralement le deacuteveloppeur agrave voir les deacutependances entre les classes
Il reste beaucoup de code agrave faire agrave la main
Penser agrave coder du SWING Java agrave la mitaine
GTI515 Automne 2013 JF Couturier 42
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Existence drsquoun framework logiciel
On se base sur le framework pour automatiser-compleacuteter la production de certains eacuteleacutements comme les eacuteleacutements graphiques
Abstraction plus eacuteleveacutee
VB6 et ses formulaires
NET Hibernate
Peu drsquoabstractions au niveau du modegravele Classe entiteacute-relation
GTI515 Automne 2013 JF Couturier 43
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Finalement il y a la possibiliteacute drsquoavoir une laquo pile raquo de modegraveles
Drsquoun modegravele agrave lrsquoautre il y a transformation vers un modegravele de plus en plus preacutecis
Approche MDA
Concept de Domain Specific Language
Pour un domaine particulier on creacutee des laquo templates raquo reacuteutilisables
Permets la contribution des experts meacutetiers
GTI515 Automne 2013 JF Couturier 44
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles
GTI515 Automne 2013 JF Couturier 45
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Domain Specific Langage
Par opposition au General purpose language comme UML C++ Java ou C
AvantagesPermets agrave un expert meacutetier de
comprendre et valider un modegravele
InconveacutenientCoucirct Formation Maintenance
GTI515 Automne 2013 JF Couturier 46
httpenwikipediaorgwikiDomain_Specific_Language
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 47
BuzzhellipMDA MDD MDE
Model Driven Architecturemarque de commerce de lrsquoOMG
Model Driven Developmentextension de MDAmarque de commerce de lrsquoOMG
Model Driven Engineeringexpression geacuteneacuterique
Deacutepartement de geacutenie logiciel et des TI
Exemple Agrave partir des speacutecifications des exigences logicielles
Lrsquoacteur saisit la commande contenant
lrsquoadresse de livraison
lrsquoadresse de facturation
Le systegraveme creacutee la commande
Lrsquoacteur saisit un deacutetail de la commande avec
le nom du produit
la quantiteacute demandeacutee
le prix du produit
Le systegraveme creacutee le deacutetail et revient agrave lrsquoeacutetape 3
Lrsquoacteur termine la commande
Le systegraveme ferme la commande
GTI515 Automne 2013 JF Couturier 48
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 49
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Un modegravele (Diagramme de classes UML)
Deacutepartement de geacutenie logiciel et des TI
Model Driven ArchitectureUn scheacutema XML
ltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gt
ltxsdschema xmlnsxsd=httpwww targetNamespace=helliprsaquo
ltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo minOccurs=ldquo0ldquo maxOccurs=ldquounboundedgt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdcomplexType name=ldquoDetailCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoprixldquo type=ldquo xsdfloatldquogt
ltxsdelement name=ldquoquantiteldquo type=ldquo xsdintldquogt
ltxsdelement name=ldquonomProduitldquo type=ldquo xsdstringldquogt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdschemarsaquo
GTI515 Automne 2013 JF Couturier 50
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 51
Des classes Java
public class Commande
private String adresseLivraison
private String adresseFacturation
private Collection detailCommande
hellip
String getAdresseLivraison()
void setAdresseLivraison(String value)
String getAdresseFacturation()
void setAdresseFacturation(String value)
public class DetailCommande
private float prix
private int quantite
private String nomProduit
float getPrix()
void setPrix(float value)
int getQuantite()
void setQuantite(int value)
String getNomProduit()
void setNomProduit(String value)
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 52
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Programmepublic class Commande
private String adresseLivraisonprivate String adresseFacturation
String getAdresseLivraison()void setAdresseLivraison(String value)
String getAdresseFacturation()void setAdresseFacturation(String value)
Scheacutema XMLltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gtltxsdschema xmlnsxsd=httpwww
targetNamespace=helliprsaquoltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo
xsdstringldquogt ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo
Modegravele UML3 repreacutesentationsdes mecircmes exigences
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
Speacutecifications de lrsquoOMG Seacuteparation de la logique meacutetier de
toute plateforme technique Speacutecifications drsquoun langage de
transformation (QVT)
GTI515 Automne 2013 JF Couturier 53
Deacutepartement de geacutenie logiciel et des TI
Concept principal de MDA
Modeacuteliser pour documenter le systegraveme
Modeacuteliser pour construire le systegraveme
GTI515 Automne 2013 JF Couturier 55
Deacutepartement de geacutenie logiciel et des TI
CIM PIM PSM Code CIM
Computing Independant Model
Modegravele du domaine logique meacutetier
PIM Platform Independant Model
Modegravele de conception UML et OCL
PSM Platform Specific Model
NET J2EE
Codehellip
GTI515 Automne 2013 JF Couturier 56
Deacutepartement de geacutenie logiciel et des TI
Les diffeacuterentes eacutetapes
GTI515 Automne 2013 JF Couturier 57
Reacutef the Zachman Framework and the OMGrsquos MDA Business Process Trends Sept 2003
Deacutepartement de geacutenie logiciel et des TI
MDA et Gartner
GTI515 Automne 2013 JF Couturier 58
Gartner Hype Cycle 2008
Deacutepartement de geacutenie logiciel et des TI
Eacutetude de cas
Lecture de la discussion sur MDA Questions
Quels sont les arguments pour
Quels sont les arguments contre
Vos commentaires sur lrsquoarticle
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 59
Deacutepartement de geacutenie logiciel et des TI
Impact
Rocircle du deacuteveloppeur minimiseacute puisqursquoil nrsquointerpregravete plus le modegravele les regravegles de transformation srsquoen chargent
Modegraveles exportables drsquoune plateforme agrave un autre
Plus de 100 articles de recherche sur IEEE entre 2008 et 2009
Maishellip
GTI515 Automne 2013 JF Couturier 60
Deacutepartement de geacutenie logiciel et des TI
Impact
Est-ce applicable au monde agile
Le cycle de modeacutelisation est-il compatible avec le deacuteveloppement iteacuteratif
Est-ce qursquoil y a suffisamment de ressources hautement qualifieacutees pour reacutealiser ce type de projet
Pouvez-vous les former Pouvez-vous les conserver
Produire 80 du code et vous laisser les derniers 20 plus difficileshellip
Comment inteacutegrer les tests
GTI515 Automne 2013 JF Couturier 61
Scott Ambler Enterprise Unified Process p 191
Deacutepartement de geacutenie logiciel et des TI
Impact
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 62
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 63
Domaine
Exigences
Analyse
Conception
Reacutealisation
MDA
PIM
PSM
Modegravele des Processus drsquoaffaires
Modegravele drsquoanalyse du systegraveme
CIM
Modegravele des Cas drsquoutilisation
Modegravele de conception du systegraveme
Les modegraveles du cycle de deacuteveloppement de logiciels
Code
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 64
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 65
Deacutepartement de geacutenie logiciel et des TI
Exemple
GTI515 Automne 2013 JF Couturier 66
httpwwwibmcomdeveloperworksrationallibrary3100html
Deacutepartement de geacutenie logiciel et des TI
Ressources
Site de lOMG MDA Article drsquoIBM sur MDA Discussion sur MDA Wiki MDA Wiki QVT
GTI515 Automne 2013 JF Couturier 67
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 68
Laboratoire 1
Choix du sujet Validation de la porteacutee
Suffisamment long Plusieurs interactions humaines machines Reacutealisable dans une session
Chargeacute de laboratoire Oleg Litvinski Premier laboratoire lundi 7 mai
Deacutepartement de geacutenie logiciel et des TI
Le document de vision (RUP)
Une base de discussion et drsquoaccord parmi les intervenants du projet
Une description de lrsquoapplication en geacuteneacuteral incluant la description du marcheacute cible les clients les utilisateurs du systegraveme les problegravemes agrave reacutesoudre et les caracteacuteristiques de lrsquoapplication
GTI515 Automne 2013 JF Couturier 69
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 70
Requirements Management with Use Cases v20010300
Copyright copy 1998 2001 Rational Software all rights reserved
2
Problem
Solution Space
Problem Space
Needs
Features
SoftwareRequirements
Test Procedures Design User
Docs
The The Product Product To Be To Be BuiltBuilt
Traceability
Deacutepartement de geacutenie logiciel et des TI
Exemples de caracteacuteristiques (feature)
Domaine drsquoapplication Exemple de caracteacuteristique
Systegraveme de commande drsquoascenseur
Commande manuelle des portes durant une urgence de feu
Systegraveme de commande drsquoinventaire
Fournir un statut reacutecent de tous les items reacutepertorieacutes
Systegraveme de suivi de deacutefauts Fournir des laquo donneacutees raquo sur les tendances pour eacutevaluer la
qualiteacute
Systegraveme de paie Rapports par cateacutegories des deacuteductions remis agrave lrsquoimpocirct
Systegraveme de commande drsquoarmes
Minimum de deux confirmations indeacutependantes drsquoautorisation
drsquoattaque exigeacutee
GTI515 Automne 2013 JF Couturier 71
Deacutepartement de geacutenie logiciel et des TI
Niveau de deacutetail des caracteacuteristiques Pour tout nouveau systegraveme ou pour
une ameacutelioration majeure agrave un systegraveme existant il est recommandeacute de garder un niveau drsquoabstraction assez eacuteleveacute de sorte agrave avoir un maximum de caracteacuteristiques compris entre 25-99 et de preacutefeacuterence moins de 50
GTI515 Automne 2013 JF Couturier 72
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Statut Suit le progregraves
Exemples Proposeacute approuveacute incorporeacute etc
PrioriteacuteBeacuteneacutefice
Les caracteacuteristiques ne sont pas agrave prioriteacutes eacutegales ou geacutenegraverent des beacuteneacutefices eacutegaux
Exemple critiques importantes optionnelle
Effort Estimation du nombre de personnessemaines lignes de code points de fonction COSMIC_FFP
Risque La probabiliteacute que la caracteacuteristique aille causer un eacuteveacutenement indeacutesirable tel que le deacutepassement du budget ou des deacutelais ou mecircme lrsquoannulation du projet
GTI515 Automne 2013 JF Couturier 73
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Stabiliteacute La probabiliteacute que la caracteacuteristique elle-mecircme ou sa compreacutehension par lrsquoeacutequipe de deacuteveloppement changera
Mise en application
Documenter la version preacutevue pour laquelle la caracteacuteristique sera incorporeacutee
Assigneacutee agrave Deacutesigner lrsquoeacutequipe responsable de la caracteacuteristique
Raison Lrsquoorigine de la requecircte de la caracteacuteristique
GTI515 Automne 2013 JF Couturier 74
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 75
Deacutepartement de geacutenie logiciel et des TI
Reacutedaction du document de vision une description concise de tout ce qui est important au
produit ou agrave lrsquoapplication eacutecrit avec un niveau de deacutetails dans un langage lisible et
compreacutehensible par les intervenants du projet
Document de 15 agrave 20 pages
GTI515 Automne 2013 JF Couturier 76
Deacutepartement de geacutenie logiciel et des TI
Exemple le cas ACS
GTI515 Automne 2013 JF Couturier 77
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 78
Deacutepartement de geacutenie logiciel et des TI
Exemple de problegravemesle cas ACS
Controcircle drsquoune large gamme de mateacuteriels
Utilisation compliqueacutee Difficulteacutes de programmation Disponibiliteacute du mateacuteriel Risque de mauvaise utilisation
GTI515 Automne 2013 JF Couturier 79
Deacutepartement de geacutenie logiciel et des TI
Exemple de besoinsle cas ACS
AutomatiserLa distribution de fertilisantLa distribution de nourritureLa dureacutee de lrsquoeacuteclairage
Commander lrsquoopeacuteration des appareils Reacuteguler
le niveau et la dureteacute de lrsquoeauLa tempeacuterature
GTI515 Automne 2013 JF Couturier 80
Deacutepartement de geacutenie logiciel et des TI
Exemple de caracteacuteristiquesle cas ACS
Deacutemarrage automatique du systegraveme Programmation conserveacutee en cas de
panne drsquoalimentation Deacutetection automatique des modules Facile agrave programmer et agrave utiliser
Exigence non fonctionnelle
GTI515 Automne 2013 JF Couturier 81
Deacutepartement de geacutenie logiciel et des TI
Critegraveres drsquoeacutevaluation
Respect de lrsquoesprit du document
En tant qursquointervenant externe est-ce que je comprends bien
Respect de la forme du gabarit
Qualiteacute du franccedilais
Document de calibre professionnel que lrsquoon pourrait remettre agrave un dirigeant
GTI515 Automne 2013 JF Couturier 82
Deacutepartement de geacutenie logiciel et des TI
Grille drsquoeacutevaluation (sur 100)
Agrave venirhellip
GTI515 Automne 2013 JF Couturier 83
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 84
Prochain cours
La modeacutelisation des processus drsquoaffaires Le diagramme drsquoactiviteacute Le diagnostic des processus drsquoaffaires existant
Lectures Lrsquoutilisation drsquoUML Chapitre sur les diagrammes drsquoactiviteacutes dans Larman Lecture sur MDA Voir site Web du cours
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 85
Questions
- Systegravemes drsquoinformation dans les entreprises (GTI515)
- Plan du cours 1
- Qui suis-je JF Couturier
- Qui suis-je Eacutetudiant(e)
- Plan du cours 1 (2)
- Objectifs du programme
- Ingeacutenieur
- Programme GTI
- Geacutenie des TI
- Cours de speacutecialiteacutes GTI
- Objectif du cours
- Vue drsquoensemble du cours
- Lectures et reacutefeacuterences
- Regravegles du jeu
- QUIZ
- Plan du cours 1 (3)
- Plan de cours
- Laboratoires ndash GTI515
- Peacutenaliteacutes de retard
- Plagiat
- Plan du cours 1 (4)
- Les tendances dans le deacuteveloppement des systegravemes drsquoinformation
- UML - Historique
- Pourquoi modeacuteliser
- La modeacutelisation dans les entreprises
- Quelques chiffres
- Quelques chiffres (2)
- Quelques chiffres (3)
- Quelques chiffres (4)
- Quelques chiffres (5)
- Et maintenant
- Et maintenant (2)
- Finalementhellip
- Reacuteussite Eacutechec
- Rappel
- Industrialisation
- Industrialisation (2)
- Slide 39
- Slide 40
- Usines logicielles (S Factory)
- Usines logicielles (S Factory) (2)
- Usines logicielles (S Factory) (3)
- Usines logicielles (S Factory) (4)
- Usines logicielles
- Domain Specific Langage
- BuzzhellipMDA MDD MDE
- Exemple
- Model Driven Architecture
- Model Driven Architecture (2)
- Model Driven Architecture (3)
- Model Driven Architecture (4)
- Model Driven Architecture (5)
- Concept principal de MDA
- CIM PIM PSM Code
- Les diffeacuterentes eacutetapes
- MDA et Gartner
- Eacutetude de cas
- Impact
- Impact (2)
- Impact (3)
- Slide 63
- Slide 64
- Slide 65
- Exemple (2)
- Ressources
- Laboratoire 1
- Le document de vision (RUP)
- Slide 70
- Exemples de caracteacuteristiques (feature)
- Niveau de deacutetail des caracteacuteristiques
- Attributs des caracteacuteristiques
- Attributs des caracteacuteristiques
- Slide 75
- Reacutedaction du document de vision
- Exemple le cas ACS
- Slide 78
- Exemple de problegravemes le cas ACS
- Exemple de besoins le cas ACS
- Exemple de caracteacuteristiques le cas ACS
- Critegraveres drsquoeacutevaluation
- Grille drsquoeacutevaluation (sur 100)
- Prochain cours
- Questions
-
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 17
Plan du cours 1
Qui suis-jeProfesseur Assistant Eacutetudiants
Positionnement du cours dans le programme de geacutenie des TI
Preacutesentation du plan de cours Les processus drsquoaffaires Lrsquoanalyse du domaine et la modeacutelisation Lrsquoarchitecture applicative La production et la maintenance
Deacutepartement de geacutenie logiciel et des TI
Plan de cours
Plan de GTI-515 Parce que le cours vit une refonte le
plan de cours peut connaicirctre quelques modifications
GTI515 Automne 2013 JF Couturier 18
Deacutepartement de geacutenie logiciel et des TI
Laboratoires ndash GTI515
Eacutequipes de 4 Eacutequipes formeacutees lors de la premiegravere seacuteance de laboratoire Sujet pour les laboratoires confirmeacute par le professeur et le chargeacute de
laboratoire lors de la premiegravere seacuteance de laboratoire Production des arteacutefacts des disciplines de RUP
Document de vision
Diagrammes drsquoactiviteacute et BPMN
Modegravele du domaine et archeacutetypes
Diagramme des cas drsquoutilisation cas drsquoutilisation et diagramme de robustesse
SRS
Controcircle de la qualiteacute par des inspection par les pairs Outils Visio ou Visual Paradigm
GTI515 Automne 2013 JF Couturier 19
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 20
Peacutenaliteacutes de retard
lt 24 hres 20 24 hres gt et lt48 hres 40 48 hres gt et lt72 hres 60 gt72 hres 100
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 21
Plagiat
Lire le Chapitre 10 Plagiat et fraude du Regraveglement des eacutetudes de 1er cycle
Sanction minimale demandeacutee pour un laboratoire copieacute ou autres cas de plagiat ou fraude eacutechec du cours
Autre cas Copie drsquoun livre document ou document provenant
drsquoInternet sans citer la source
Reacuteutilisation de ses travaux drsquoun autre cours sans autorisation
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 22
Plan du cours 1
Qui suis-jeProfesseur Assistant Eacutetudiants
Positionnement du cours dans le programme de geacutenie des TI
Preacutesentation du plan de cours Lrsquoarchitecture dirigeacutee par les modegraveles
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 23
Les tendances dans le deacuteveloppementdes systegravemes drsquoinformation
Modeacutelisation UML2 BPMN MDA (Model Driven Architecture) SOA (agrave lrsquoaide des Services Web) Domain Specific Language
Les frameworks autour de Eclipse NetBean Visual Studio
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 24
UML - Historique
Ref Using the UML to Describe Design Patterns Diane Strode
Deacutepartement de geacutenie logiciel et des TI
Pourquoi modeacuteliser
Un modegravele est une abstraction du monde concret qui facilite sa compreacutehension
Un modegravele peut ecirctre sous forme graphique etou textuelle
Srsquoil est sous forme graphique il doit ecirctre compleacuteteacute par une preacutesentation textuelle
GTI515 Automne 2013 JF Couturier 25
Deacutepartement de geacutenie logiciel et des TI
La modeacutelisation dans les entreprises
Une perte de temps pour les non-informaticiens et mecircme les informaticiens
Une eacutevolution ineacuteluctable avec les nouveaux outils
Modeacuteliser = precirccher dans le deacutesert Cela deacutepend de la culture de votre deacutepartement
GTI515 Automne 2013 JF Couturier 26
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
256 milliards en projet logiciel aux US16 sont compleacuteteacutes en temps et dans
les coucircts
31 sont annuleacutes (81G$)
53 deacutepassent le budget preacutevu
42 seulement sont livreacutes avec les exigences initiales
GTI515 Automne 2013 JF Couturier 27
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
GTI515 Automne 2013 JF Couturier 28
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
GTI515 Automne 2013 JF Couturier 29
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
GTI515 Automne 2013 JF Couturier 30
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
Une grande proportion de projets TI eacutechouent PourquoiPlusieurs facteurs
Les mauvaises exigences en font partie
Si ccedila va si mal crsquoest qursquoil y a quelque chose qursquoon ne fait pas bien Il faut se remettre en question
GTI515 Automne 2013 JF Couturier 31
Deacutepartement de geacutenie logiciel et des TI
Et maintenant
GTI515 Automne 2013 JF Couturier 32
CHAOS Summary 2009
Deacutepartement de geacutenie logiciel et des TI
Et maintenant
GTI515 Automne 2013 JF Couturier 33
Standish Group 1999
CHAOS Summary 2009
Deacutepartement de geacutenie logiciel et des TI
Finalementhellip
GTI515 Automne 2013 JF Couturier 34
Deacutepartement de geacutenie logiciel et des TI
Reacuteussite Eacutechec
Mais qursquoest-ce qursquoun projet reacuteussi Dans les temps Dans le budget Avec les fonctions preacutevues
GTI515 Automne 2013 JF Couturier 35
Deacutepartement de geacutenie logiciel et des TI
Rappel
Notre domaine est tregraves jeune (70 ans) Geacutenie de la constructionhellip5000 ans
Mais nous progressons tregraves rapidement Pourquoi le geacutenie en TI
Artisanat vs geacutenie (le pif vs la meacutethode)
Acircge du geacutenie logiciel TI - Maturiteacute
Science virtuelle vs Meacutecanique construction
Une tendancehellipDe lrsquoartisanat agrave lrsquoindustrialisation du deacuteveloppement logiciel
GTI515 Automne 2013 JF Couturier 36
Deacutepartement de geacutenie logiciel et des TI
Industrialisation
Vers le milieu du 19e siegravecle Segmenter le travail des individus pour
ne pas ecirctre deacutependant drsquoun artisan Permet une production beaucoup plus
efficace en seacuterie
GTI515 Automne 2013 JF Couturier 37
Deacutepartement de geacutenie logiciel et des TI
Industrialisation
Est-ce que le deacuteveloppement peut-ecirctre industrialiseacuteCertains disent que non que le logiciel agrave
un caractegravere trop creacuteatif
Drsquoautres pensent que les reacutecents progregraves dans le domaine permettent une eacuteventuelle industrialisation dans la production drsquoapplication
GTI515 Automne 2013 JF Couturier 38
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 39
Technologies(OO CBD Services Web SOA
XML AOP DB design patternshellip)
Ingeacutenierie dirigeacutee par les modegraveles
Usines logicielles (Microsoft)Architecture dirigeacutee par les modegraveles (OMG)
Deux applications drsquoun mecircme concept de base
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 40
Techniques de deacuteveloppement assisteacute par ordinateur (Reacutef Software Factories Greenfield J p144)
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Un modegravele tregraves deacutetailleacute beaucoup de code geacuteneacutereacute
CASE Tools (Computer-aided software engineering)
Mal adapteacute au deacuteveloppement agile qui implique souvent des solutions partielles tregraves tocirct dans le cycle de deacuteveloppement
Synchronisation difficile
Eacuteloigneacutee de la plateforme
GTI515 Automne 2013 JF Couturier 41
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Exemple Outils graphiques de modeacutelisation des classes
Plus proche de la plateforme
Code geacuteneacutereacute pour la plateforme
Plus simple
Aide geacuteneacuteralement le deacuteveloppeur agrave voir les deacutependances entre les classes
Il reste beaucoup de code agrave faire agrave la main
Penser agrave coder du SWING Java agrave la mitaine
GTI515 Automne 2013 JF Couturier 42
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Existence drsquoun framework logiciel
On se base sur le framework pour automatiser-compleacuteter la production de certains eacuteleacutements comme les eacuteleacutements graphiques
Abstraction plus eacuteleveacutee
VB6 et ses formulaires
NET Hibernate
Peu drsquoabstractions au niveau du modegravele Classe entiteacute-relation
GTI515 Automne 2013 JF Couturier 43
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Finalement il y a la possibiliteacute drsquoavoir une laquo pile raquo de modegraveles
Drsquoun modegravele agrave lrsquoautre il y a transformation vers un modegravele de plus en plus preacutecis
Approche MDA
Concept de Domain Specific Language
Pour un domaine particulier on creacutee des laquo templates raquo reacuteutilisables
Permets la contribution des experts meacutetiers
GTI515 Automne 2013 JF Couturier 44
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles
GTI515 Automne 2013 JF Couturier 45
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Domain Specific Langage
Par opposition au General purpose language comme UML C++ Java ou C
AvantagesPermets agrave un expert meacutetier de
comprendre et valider un modegravele
InconveacutenientCoucirct Formation Maintenance
GTI515 Automne 2013 JF Couturier 46
httpenwikipediaorgwikiDomain_Specific_Language
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 47
BuzzhellipMDA MDD MDE
Model Driven Architecturemarque de commerce de lrsquoOMG
Model Driven Developmentextension de MDAmarque de commerce de lrsquoOMG
Model Driven Engineeringexpression geacuteneacuterique
Deacutepartement de geacutenie logiciel et des TI
Exemple Agrave partir des speacutecifications des exigences logicielles
Lrsquoacteur saisit la commande contenant
lrsquoadresse de livraison
lrsquoadresse de facturation
Le systegraveme creacutee la commande
Lrsquoacteur saisit un deacutetail de la commande avec
le nom du produit
la quantiteacute demandeacutee
le prix du produit
Le systegraveme creacutee le deacutetail et revient agrave lrsquoeacutetape 3
Lrsquoacteur termine la commande
Le systegraveme ferme la commande
GTI515 Automne 2013 JF Couturier 48
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 49
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Un modegravele (Diagramme de classes UML)
Deacutepartement de geacutenie logiciel et des TI
Model Driven ArchitectureUn scheacutema XML
ltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gt
ltxsdschema xmlnsxsd=httpwww targetNamespace=helliprsaquo
ltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo minOccurs=ldquo0ldquo maxOccurs=ldquounboundedgt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdcomplexType name=ldquoDetailCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoprixldquo type=ldquo xsdfloatldquogt
ltxsdelement name=ldquoquantiteldquo type=ldquo xsdintldquogt
ltxsdelement name=ldquonomProduitldquo type=ldquo xsdstringldquogt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdschemarsaquo
GTI515 Automne 2013 JF Couturier 50
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 51
Des classes Java
public class Commande
private String adresseLivraison
private String adresseFacturation
private Collection detailCommande
hellip
String getAdresseLivraison()
void setAdresseLivraison(String value)
String getAdresseFacturation()
void setAdresseFacturation(String value)
public class DetailCommande
private float prix
private int quantite
private String nomProduit
float getPrix()
void setPrix(float value)
int getQuantite()
void setQuantite(int value)
String getNomProduit()
void setNomProduit(String value)
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 52
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Programmepublic class Commande
private String adresseLivraisonprivate String adresseFacturation
String getAdresseLivraison()void setAdresseLivraison(String value)
String getAdresseFacturation()void setAdresseFacturation(String value)
Scheacutema XMLltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gtltxsdschema xmlnsxsd=httpwww
targetNamespace=helliprsaquoltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo
xsdstringldquogt ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo
Modegravele UML3 repreacutesentationsdes mecircmes exigences
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
Speacutecifications de lrsquoOMG Seacuteparation de la logique meacutetier de
toute plateforme technique Speacutecifications drsquoun langage de
transformation (QVT)
GTI515 Automne 2013 JF Couturier 53
Deacutepartement de geacutenie logiciel et des TI
Concept principal de MDA
Modeacuteliser pour documenter le systegraveme
Modeacuteliser pour construire le systegraveme
GTI515 Automne 2013 JF Couturier 55
Deacutepartement de geacutenie logiciel et des TI
CIM PIM PSM Code CIM
Computing Independant Model
Modegravele du domaine logique meacutetier
PIM Platform Independant Model
Modegravele de conception UML et OCL
PSM Platform Specific Model
NET J2EE
Codehellip
GTI515 Automne 2013 JF Couturier 56
Deacutepartement de geacutenie logiciel et des TI
Les diffeacuterentes eacutetapes
GTI515 Automne 2013 JF Couturier 57
Reacutef the Zachman Framework and the OMGrsquos MDA Business Process Trends Sept 2003
Deacutepartement de geacutenie logiciel et des TI
MDA et Gartner
GTI515 Automne 2013 JF Couturier 58
Gartner Hype Cycle 2008
Deacutepartement de geacutenie logiciel et des TI
Eacutetude de cas
Lecture de la discussion sur MDA Questions
Quels sont les arguments pour
Quels sont les arguments contre
Vos commentaires sur lrsquoarticle
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 59
Deacutepartement de geacutenie logiciel et des TI
Impact
Rocircle du deacuteveloppeur minimiseacute puisqursquoil nrsquointerpregravete plus le modegravele les regravegles de transformation srsquoen chargent
Modegraveles exportables drsquoune plateforme agrave un autre
Plus de 100 articles de recherche sur IEEE entre 2008 et 2009
Maishellip
GTI515 Automne 2013 JF Couturier 60
Deacutepartement de geacutenie logiciel et des TI
Impact
Est-ce applicable au monde agile
Le cycle de modeacutelisation est-il compatible avec le deacuteveloppement iteacuteratif
Est-ce qursquoil y a suffisamment de ressources hautement qualifieacutees pour reacutealiser ce type de projet
Pouvez-vous les former Pouvez-vous les conserver
Produire 80 du code et vous laisser les derniers 20 plus difficileshellip
Comment inteacutegrer les tests
GTI515 Automne 2013 JF Couturier 61
Scott Ambler Enterprise Unified Process p 191
Deacutepartement de geacutenie logiciel et des TI
Impact
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 62
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 63
Domaine
Exigences
Analyse
Conception
Reacutealisation
MDA
PIM
PSM
Modegravele des Processus drsquoaffaires
Modegravele drsquoanalyse du systegraveme
CIM
Modegravele des Cas drsquoutilisation
Modegravele de conception du systegraveme
Les modegraveles du cycle de deacuteveloppement de logiciels
Code
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 64
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 65
Deacutepartement de geacutenie logiciel et des TI
Exemple
GTI515 Automne 2013 JF Couturier 66
httpwwwibmcomdeveloperworksrationallibrary3100html
Deacutepartement de geacutenie logiciel et des TI
Ressources
Site de lOMG MDA Article drsquoIBM sur MDA Discussion sur MDA Wiki MDA Wiki QVT
GTI515 Automne 2013 JF Couturier 67
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 68
Laboratoire 1
Choix du sujet Validation de la porteacutee
Suffisamment long Plusieurs interactions humaines machines Reacutealisable dans une session
Chargeacute de laboratoire Oleg Litvinski Premier laboratoire lundi 7 mai
Deacutepartement de geacutenie logiciel et des TI
Le document de vision (RUP)
Une base de discussion et drsquoaccord parmi les intervenants du projet
Une description de lrsquoapplication en geacuteneacuteral incluant la description du marcheacute cible les clients les utilisateurs du systegraveme les problegravemes agrave reacutesoudre et les caracteacuteristiques de lrsquoapplication
GTI515 Automne 2013 JF Couturier 69
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 70
Requirements Management with Use Cases v20010300
Copyright copy 1998 2001 Rational Software all rights reserved
2
Problem
Solution Space
Problem Space
Needs
Features
SoftwareRequirements
Test Procedures Design User
Docs
The The Product Product To Be To Be BuiltBuilt
Traceability
Deacutepartement de geacutenie logiciel et des TI
Exemples de caracteacuteristiques (feature)
Domaine drsquoapplication Exemple de caracteacuteristique
Systegraveme de commande drsquoascenseur
Commande manuelle des portes durant une urgence de feu
Systegraveme de commande drsquoinventaire
Fournir un statut reacutecent de tous les items reacutepertorieacutes
Systegraveme de suivi de deacutefauts Fournir des laquo donneacutees raquo sur les tendances pour eacutevaluer la
qualiteacute
Systegraveme de paie Rapports par cateacutegories des deacuteductions remis agrave lrsquoimpocirct
Systegraveme de commande drsquoarmes
Minimum de deux confirmations indeacutependantes drsquoautorisation
drsquoattaque exigeacutee
GTI515 Automne 2013 JF Couturier 71
Deacutepartement de geacutenie logiciel et des TI
Niveau de deacutetail des caracteacuteristiques Pour tout nouveau systegraveme ou pour
une ameacutelioration majeure agrave un systegraveme existant il est recommandeacute de garder un niveau drsquoabstraction assez eacuteleveacute de sorte agrave avoir un maximum de caracteacuteristiques compris entre 25-99 et de preacutefeacuterence moins de 50
GTI515 Automne 2013 JF Couturier 72
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Statut Suit le progregraves
Exemples Proposeacute approuveacute incorporeacute etc
PrioriteacuteBeacuteneacutefice
Les caracteacuteristiques ne sont pas agrave prioriteacutes eacutegales ou geacutenegraverent des beacuteneacutefices eacutegaux
Exemple critiques importantes optionnelle
Effort Estimation du nombre de personnessemaines lignes de code points de fonction COSMIC_FFP
Risque La probabiliteacute que la caracteacuteristique aille causer un eacuteveacutenement indeacutesirable tel que le deacutepassement du budget ou des deacutelais ou mecircme lrsquoannulation du projet
GTI515 Automne 2013 JF Couturier 73
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Stabiliteacute La probabiliteacute que la caracteacuteristique elle-mecircme ou sa compreacutehension par lrsquoeacutequipe de deacuteveloppement changera
Mise en application
Documenter la version preacutevue pour laquelle la caracteacuteristique sera incorporeacutee
Assigneacutee agrave Deacutesigner lrsquoeacutequipe responsable de la caracteacuteristique
Raison Lrsquoorigine de la requecircte de la caracteacuteristique
GTI515 Automne 2013 JF Couturier 74
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 75
Deacutepartement de geacutenie logiciel et des TI
Reacutedaction du document de vision une description concise de tout ce qui est important au
produit ou agrave lrsquoapplication eacutecrit avec un niveau de deacutetails dans un langage lisible et
compreacutehensible par les intervenants du projet
Document de 15 agrave 20 pages
GTI515 Automne 2013 JF Couturier 76
Deacutepartement de geacutenie logiciel et des TI
Exemple le cas ACS
GTI515 Automne 2013 JF Couturier 77
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 78
Deacutepartement de geacutenie logiciel et des TI
Exemple de problegravemesle cas ACS
Controcircle drsquoune large gamme de mateacuteriels
Utilisation compliqueacutee Difficulteacutes de programmation Disponibiliteacute du mateacuteriel Risque de mauvaise utilisation
GTI515 Automne 2013 JF Couturier 79
Deacutepartement de geacutenie logiciel et des TI
Exemple de besoinsle cas ACS
AutomatiserLa distribution de fertilisantLa distribution de nourritureLa dureacutee de lrsquoeacuteclairage
Commander lrsquoopeacuteration des appareils Reacuteguler
le niveau et la dureteacute de lrsquoeauLa tempeacuterature
GTI515 Automne 2013 JF Couturier 80
Deacutepartement de geacutenie logiciel et des TI
Exemple de caracteacuteristiquesle cas ACS
Deacutemarrage automatique du systegraveme Programmation conserveacutee en cas de
panne drsquoalimentation Deacutetection automatique des modules Facile agrave programmer et agrave utiliser
Exigence non fonctionnelle
GTI515 Automne 2013 JF Couturier 81
Deacutepartement de geacutenie logiciel et des TI
Critegraveres drsquoeacutevaluation
Respect de lrsquoesprit du document
En tant qursquointervenant externe est-ce que je comprends bien
Respect de la forme du gabarit
Qualiteacute du franccedilais
Document de calibre professionnel que lrsquoon pourrait remettre agrave un dirigeant
GTI515 Automne 2013 JF Couturier 82
Deacutepartement de geacutenie logiciel et des TI
Grille drsquoeacutevaluation (sur 100)
Agrave venirhellip
GTI515 Automne 2013 JF Couturier 83
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 84
Prochain cours
La modeacutelisation des processus drsquoaffaires Le diagramme drsquoactiviteacute Le diagnostic des processus drsquoaffaires existant
Lectures Lrsquoutilisation drsquoUML Chapitre sur les diagrammes drsquoactiviteacutes dans Larman Lecture sur MDA Voir site Web du cours
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 85
Questions
- Systegravemes drsquoinformation dans les entreprises (GTI515)
- Plan du cours 1
- Qui suis-je JF Couturier
- Qui suis-je Eacutetudiant(e)
- Plan du cours 1 (2)
- Objectifs du programme
- Ingeacutenieur
- Programme GTI
- Geacutenie des TI
- Cours de speacutecialiteacutes GTI
- Objectif du cours
- Vue drsquoensemble du cours
- Lectures et reacutefeacuterences
- Regravegles du jeu
- QUIZ
- Plan du cours 1 (3)
- Plan de cours
- Laboratoires ndash GTI515
- Peacutenaliteacutes de retard
- Plagiat
- Plan du cours 1 (4)
- Les tendances dans le deacuteveloppement des systegravemes drsquoinformation
- UML - Historique
- Pourquoi modeacuteliser
- La modeacutelisation dans les entreprises
- Quelques chiffres
- Quelques chiffres (2)
- Quelques chiffres (3)
- Quelques chiffres (4)
- Quelques chiffres (5)
- Et maintenant
- Et maintenant (2)
- Finalementhellip
- Reacuteussite Eacutechec
- Rappel
- Industrialisation
- Industrialisation (2)
- Slide 39
- Slide 40
- Usines logicielles (S Factory)
- Usines logicielles (S Factory) (2)
- Usines logicielles (S Factory) (3)
- Usines logicielles (S Factory) (4)
- Usines logicielles
- Domain Specific Langage
- BuzzhellipMDA MDD MDE
- Exemple
- Model Driven Architecture
- Model Driven Architecture (2)
- Model Driven Architecture (3)
- Model Driven Architecture (4)
- Model Driven Architecture (5)
- Concept principal de MDA
- CIM PIM PSM Code
- Les diffeacuterentes eacutetapes
- MDA et Gartner
- Eacutetude de cas
- Impact
- Impact (2)
- Impact (3)
- Slide 63
- Slide 64
- Slide 65
- Exemple (2)
- Ressources
- Laboratoire 1
- Le document de vision (RUP)
- Slide 70
- Exemples de caracteacuteristiques (feature)
- Niveau de deacutetail des caracteacuteristiques
- Attributs des caracteacuteristiques
- Attributs des caracteacuteristiques
- Slide 75
- Reacutedaction du document de vision
- Exemple le cas ACS
- Slide 78
- Exemple de problegravemes le cas ACS
- Exemple de besoins le cas ACS
- Exemple de caracteacuteristiques le cas ACS
- Critegraveres drsquoeacutevaluation
- Grille drsquoeacutevaluation (sur 100)
- Prochain cours
- Questions
-
Deacutepartement de geacutenie logiciel et des TI
Plan de cours
Plan de GTI-515 Parce que le cours vit une refonte le
plan de cours peut connaicirctre quelques modifications
GTI515 Automne 2013 JF Couturier 18
Deacutepartement de geacutenie logiciel et des TI
Laboratoires ndash GTI515
Eacutequipes de 4 Eacutequipes formeacutees lors de la premiegravere seacuteance de laboratoire Sujet pour les laboratoires confirmeacute par le professeur et le chargeacute de
laboratoire lors de la premiegravere seacuteance de laboratoire Production des arteacutefacts des disciplines de RUP
Document de vision
Diagrammes drsquoactiviteacute et BPMN
Modegravele du domaine et archeacutetypes
Diagramme des cas drsquoutilisation cas drsquoutilisation et diagramme de robustesse
SRS
Controcircle de la qualiteacute par des inspection par les pairs Outils Visio ou Visual Paradigm
GTI515 Automne 2013 JF Couturier 19
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 20
Peacutenaliteacutes de retard
lt 24 hres 20 24 hres gt et lt48 hres 40 48 hres gt et lt72 hres 60 gt72 hres 100
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 21
Plagiat
Lire le Chapitre 10 Plagiat et fraude du Regraveglement des eacutetudes de 1er cycle
Sanction minimale demandeacutee pour un laboratoire copieacute ou autres cas de plagiat ou fraude eacutechec du cours
Autre cas Copie drsquoun livre document ou document provenant
drsquoInternet sans citer la source
Reacuteutilisation de ses travaux drsquoun autre cours sans autorisation
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 22
Plan du cours 1
Qui suis-jeProfesseur Assistant Eacutetudiants
Positionnement du cours dans le programme de geacutenie des TI
Preacutesentation du plan de cours Lrsquoarchitecture dirigeacutee par les modegraveles
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 23
Les tendances dans le deacuteveloppementdes systegravemes drsquoinformation
Modeacutelisation UML2 BPMN MDA (Model Driven Architecture) SOA (agrave lrsquoaide des Services Web) Domain Specific Language
Les frameworks autour de Eclipse NetBean Visual Studio
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 24
UML - Historique
Ref Using the UML to Describe Design Patterns Diane Strode
Deacutepartement de geacutenie logiciel et des TI
Pourquoi modeacuteliser
Un modegravele est une abstraction du monde concret qui facilite sa compreacutehension
Un modegravele peut ecirctre sous forme graphique etou textuelle
Srsquoil est sous forme graphique il doit ecirctre compleacuteteacute par une preacutesentation textuelle
GTI515 Automne 2013 JF Couturier 25
Deacutepartement de geacutenie logiciel et des TI
La modeacutelisation dans les entreprises
Une perte de temps pour les non-informaticiens et mecircme les informaticiens
Une eacutevolution ineacuteluctable avec les nouveaux outils
Modeacuteliser = precirccher dans le deacutesert Cela deacutepend de la culture de votre deacutepartement
GTI515 Automne 2013 JF Couturier 26
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
256 milliards en projet logiciel aux US16 sont compleacuteteacutes en temps et dans
les coucircts
31 sont annuleacutes (81G$)
53 deacutepassent le budget preacutevu
42 seulement sont livreacutes avec les exigences initiales
GTI515 Automne 2013 JF Couturier 27
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
GTI515 Automne 2013 JF Couturier 28
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
GTI515 Automne 2013 JF Couturier 29
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
GTI515 Automne 2013 JF Couturier 30
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
Une grande proportion de projets TI eacutechouent PourquoiPlusieurs facteurs
Les mauvaises exigences en font partie
Si ccedila va si mal crsquoest qursquoil y a quelque chose qursquoon ne fait pas bien Il faut se remettre en question
GTI515 Automne 2013 JF Couturier 31
Deacutepartement de geacutenie logiciel et des TI
Et maintenant
GTI515 Automne 2013 JF Couturier 32
CHAOS Summary 2009
Deacutepartement de geacutenie logiciel et des TI
Et maintenant
GTI515 Automne 2013 JF Couturier 33
Standish Group 1999
CHAOS Summary 2009
Deacutepartement de geacutenie logiciel et des TI
Finalementhellip
GTI515 Automne 2013 JF Couturier 34
Deacutepartement de geacutenie logiciel et des TI
Reacuteussite Eacutechec
Mais qursquoest-ce qursquoun projet reacuteussi Dans les temps Dans le budget Avec les fonctions preacutevues
GTI515 Automne 2013 JF Couturier 35
Deacutepartement de geacutenie logiciel et des TI
Rappel
Notre domaine est tregraves jeune (70 ans) Geacutenie de la constructionhellip5000 ans
Mais nous progressons tregraves rapidement Pourquoi le geacutenie en TI
Artisanat vs geacutenie (le pif vs la meacutethode)
Acircge du geacutenie logiciel TI - Maturiteacute
Science virtuelle vs Meacutecanique construction
Une tendancehellipDe lrsquoartisanat agrave lrsquoindustrialisation du deacuteveloppement logiciel
GTI515 Automne 2013 JF Couturier 36
Deacutepartement de geacutenie logiciel et des TI
Industrialisation
Vers le milieu du 19e siegravecle Segmenter le travail des individus pour
ne pas ecirctre deacutependant drsquoun artisan Permet une production beaucoup plus
efficace en seacuterie
GTI515 Automne 2013 JF Couturier 37
Deacutepartement de geacutenie logiciel et des TI
Industrialisation
Est-ce que le deacuteveloppement peut-ecirctre industrialiseacuteCertains disent que non que le logiciel agrave
un caractegravere trop creacuteatif
Drsquoautres pensent que les reacutecents progregraves dans le domaine permettent une eacuteventuelle industrialisation dans la production drsquoapplication
GTI515 Automne 2013 JF Couturier 38
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 39
Technologies(OO CBD Services Web SOA
XML AOP DB design patternshellip)
Ingeacutenierie dirigeacutee par les modegraveles
Usines logicielles (Microsoft)Architecture dirigeacutee par les modegraveles (OMG)
Deux applications drsquoun mecircme concept de base
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 40
Techniques de deacuteveloppement assisteacute par ordinateur (Reacutef Software Factories Greenfield J p144)
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Un modegravele tregraves deacutetailleacute beaucoup de code geacuteneacutereacute
CASE Tools (Computer-aided software engineering)
Mal adapteacute au deacuteveloppement agile qui implique souvent des solutions partielles tregraves tocirct dans le cycle de deacuteveloppement
Synchronisation difficile
Eacuteloigneacutee de la plateforme
GTI515 Automne 2013 JF Couturier 41
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Exemple Outils graphiques de modeacutelisation des classes
Plus proche de la plateforme
Code geacuteneacutereacute pour la plateforme
Plus simple
Aide geacuteneacuteralement le deacuteveloppeur agrave voir les deacutependances entre les classes
Il reste beaucoup de code agrave faire agrave la main
Penser agrave coder du SWING Java agrave la mitaine
GTI515 Automne 2013 JF Couturier 42
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Existence drsquoun framework logiciel
On se base sur le framework pour automatiser-compleacuteter la production de certains eacuteleacutements comme les eacuteleacutements graphiques
Abstraction plus eacuteleveacutee
VB6 et ses formulaires
NET Hibernate
Peu drsquoabstractions au niveau du modegravele Classe entiteacute-relation
GTI515 Automne 2013 JF Couturier 43
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Finalement il y a la possibiliteacute drsquoavoir une laquo pile raquo de modegraveles
Drsquoun modegravele agrave lrsquoautre il y a transformation vers un modegravele de plus en plus preacutecis
Approche MDA
Concept de Domain Specific Language
Pour un domaine particulier on creacutee des laquo templates raquo reacuteutilisables
Permets la contribution des experts meacutetiers
GTI515 Automne 2013 JF Couturier 44
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles
GTI515 Automne 2013 JF Couturier 45
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Domain Specific Langage
Par opposition au General purpose language comme UML C++ Java ou C
AvantagesPermets agrave un expert meacutetier de
comprendre et valider un modegravele
InconveacutenientCoucirct Formation Maintenance
GTI515 Automne 2013 JF Couturier 46
httpenwikipediaorgwikiDomain_Specific_Language
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 47
BuzzhellipMDA MDD MDE
Model Driven Architecturemarque de commerce de lrsquoOMG
Model Driven Developmentextension de MDAmarque de commerce de lrsquoOMG
Model Driven Engineeringexpression geacuteneacuterique
Deacutepartement de geacutenie logiciel et des TI
Exemple Agrave partir des speacutecifications des exigences logicielles
Lrsquoacteur saisit la commande contenant
lrsquoadresse de livraison
lrsquoadresse de facturation
Le systegraveme creacutee la commande
Lrsquoacteur saisit un deacutetail de la commande avec
le nom du produit
la quantiteacute demandeacutee
le prix du produit
Le systegraveme creacutee le deacutetail et revient agrave lrsquoeacutetape 3
Lrsquoacteur termine la commande
Le systegraveme ferme la commande
GTI515 Automne 2013 JF Couturier 48
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 49
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Un modegravele (Diagramme de classes UML)
Deacutepartement de geacutenie logiciel et des TI
Model Driven ArchitectureUn scheacutema XML
ltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gt
ltxsdschema xmlnsxsd=httpwww targetNamespace=helliprsaquo
ltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo minOccurs=ldquo0ldquo maxOccurs=ldquounboundedgt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdcomplexType name=ldquoDetailCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoprixldquo type=ldquo xsdfloatldquogt
ltxsdelement name=ldquoquantiteldquo type=ldquo xsdintldquogt
ltxsdelement name=ldquonomProduitldquo type=ldquo xsdstringldquogt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdschemarsaquo
GTI515 Automne 2013 JF Couturier 50
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 51
Des classes Java
public class Commande
private String adresseLivraison
private String adresseFacturation
private Collection detailCommande
hellip
String getAdresseLivraison()
void setAdresseLivraison(String value)
String getAdresseFacturation()
void setAdresseFacturation(String value)
public class DetailCommande
private float prix
private int quantite
private String nomProduit
float getPrix()
void setPrix(float value)
int getQuantite()
void setQuantite(int value)
String getNomProduit()
void setNomProduit(String value)
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 52
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Programmepublic class Commande
private String adresseLivraisonprivate String adresseFacturation
String getAdresseLivraison()void setAdresseLivraison(String value)
String getAdresseFacturation()void setAdresseFacturation(String value)
Scheacutema XMLltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gtltxsdschema xmlnsxsd=httpwww
targetNamespace=helliprsaquoltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo
xsdstringldquogt ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo
Modegravele UML3 repreacutesentationsdes mecircmes exigences
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
Speacutecifications de lrsquoOMG Seacuteparation de la logique meacutetier de
toute plateforme technique Speacutecifications drsquoun langage de
transformation (QVT)
GTI515 Automne 2013 JF Couturier 53
Deacutepartement de geacutenie logiciel et des TI
Concept principal de MDA
Modeacuteliser pour documenter le systegraveme
Modeacuteliser pour construire le systegraveme
GTI515 Automne 2013 JF Couturier 55
Deacutepartement de geacutenie logiciel et des TI
CIM PIM PSM Code CIM
Computing Independant Model
Modegravele du domaine logique meacutetier
PIM Platform Independant Model
Modegravele de conception UML et OCL
PSM Platform Specific Model
NET J2EE
Codehellip
GTI515 Automne 2013 JF Couturier 56
Deacutepartement de geacutenie logiciel et des TI
Les diffeacuterentes eacutetapes
GTI515 Automne 2013 JF Couturier 57
Reacutef the Zachman Framework and the OMGrsquos MDA Business Process Trends Sept 2003
Deacutepartement de geacutenie logiciel et des TI
MDA et Gartner
GTI515 Automne 2013 JF Couturier 58
Gartner Hype Cycle 2008
Deacutepartement de geacutenie logiciel et des TI
Eacutetude de cas
Lecture de la discussion sur MDA Questions
Quels sont les arguments pour
Quels sont les arguments contre
Vos commentaires sur lrsquoarticle
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 59
Deacutepartement de geacutenie logiciel et des TI
Impact
Rocircle du deacuteveloppeur minimiseacute puisqursquoil nrsquointerpregravete plus le modegravele les regravegles de transformation srsquoen chargent
Modegraveles exportables drsquoune plateforme agrave un autre
Plus de 100 articles de recherche sur IEEE entre 2008 et 2009
Maishellip
GTI515 Automne 2013 JF Couturier 60
Deacutepartement de geacutenie logiciel et des TI
Impact
Est-ce applicable au monde agile
Le cycle de modeacutelisation est-il compatible avec le deacuteveloppement iteacuteratif
Est-ce qursquoil y a suffisamment de ressources hautement qualifieacutees pour reacutealiser ce type de projet
Pouvez-vous les former Pouvez-vous les conserver
Produire 80 du code et vous laisser les derniers 20 plus difficileshellip
Comment inteacutegrer les tests
GTI515 Automne 2013 JF Couturier 61
Scott Ambler Enterprise Unified Process p 191
Deacutepartement de geacutenie logiciel et des TI
Impact
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 62
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 63
Domaine
Exigences
Analyse
Conception
Reacutealisation
MDA
PIM
PSM
Modegravele des Processus drsquoaffaires
Modegravele drsquoanalyse du systegraveme
CIM
Modegravele des Cas drsquoutilisation
Modegravele de conception du systegraveme
Les modegraveles du cycle de deacuteveloppement de logiciels
Code
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 64
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 65
Deacutepartement de geacutenie logiciel et des TI
Exemple
GTI515 Automne 2013 JF Couturier 66
httpwwwibmcomdeveloperworksrationallibrary3100html
Deacutepartement de geacutenie logiciel et des TI
Ressources
Site de lOMG MDA Article drsquoIBM sur MDA Discussion sur MDA Wiki MDA Wiki QVT
GTI515 Automne 2013 JF Couturier 67
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 68
Laboratoire 1
Choix du sujet Validation de la porteacutee
Suffisamment long Plusieurs interactions humaines machines Reacutealisable dans une session
Chargeacute de laboratoire Oleg Litvinski Premier laboratoire lundi 7 mai
Deacutepartement de geacutenie logiciel et des TI
Le document de vision (RUP)
Une base de discussion et drsquoaccord parmi les intervenants du projet
Une description de lrsquoapplication en geacuteneacuteral incluant la description du marcheacute cible les clients les utilisateurs du systegraveme les problegravemes agrave reacutesoudre et les caracteacuteristiques de lrsquoapplication
GTI515 Automne 2013 JF Couturier 69
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 70
Requirements Management with Use Cases v20010300
Copyright copy 1998 2001 Rational Software all rights reserved
2
Problem
Solution Space
Problem Space
Needs
Features
SoftwareRequirements
Test Procedures Design User
Docs
The The Product Product To Be To Be BuiltBuilt
Traceability
Deacutepartement de geacutenie logiciel et des TI
Exemples de caracteacuteristiques (feature)
Domaine drsquoapplication Exemple de caracteacuteristique
Systegraveme de commande drsquoascenseur
Commande manuelle des portes durant une urgence de feu
Systegraveme de commande drsquoinventaire
Fournir un statut reacutecent de tous les items reacutepertorieacutes
Systegraveme de suivi de deacutefauts Fournir des laquo donneacutees raquo sur les tendances pour eacutevaluer la
qualiteacute
Systegraveme de paie Rapports par cateacutegories des deacuteductions remis agrave lrsquoimpocirct
Systegraveme de commande drsquoarmes
Minimum de deux confirmations indeacutependantes drsquoautorisation
drsquoattaque exigeacutee
GTI515 Automne 2013 JF Couturier 71
Deacutepartement de geacutenie logiciel et des TI
Niveau de deacutetail des caracteacuteristiques Pour tout nouveau systegraveme ou pour
une ameacutelioration majeure agrave un systegraveme existant il est recommandeacute de garder un niveau drsquoabstraction assez eacuteleveacute de sorte agrave avoir un maximum de caracteacuteristiques compris entre 25-99 et de preacutefeacuterence moins de 50
GTI515 Automne 2013 JF Couturier 72
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Statut Suit le progregraves
Exemples Proposeacute approuveacute incorporeacute etc
PrioriteacuteBeacuteneacutefice
Les caracteacuteristiques ne sont pas agrave prioriteacutes eacutegales ou geacutenegraverent des beacuteneacutefices eacutegaux
Exemple critiques importantes optionnelle
Effort Estimation du nombre de personnessemaines lignes de code points de fonction COSMIC_FFP
Risque La probabiliteacute que la caracteacuteristique aille causer un eacuteveacutenement indeacutesirable tel que le deacutepassement du budget ou des deacutelais ou mecircme lrsquoannulation du projet
GTI515 Automne 2013 JF Couturier 73
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Stabiliteacute La probabiliteacute que la caracteacuteristique elle-mecircme ou sa compreacutehension par lrsquoeacutequipe de deacuteveloppement changera
Mise en application
Documenter la version preacutevue pour laquelle la caracteacuteristique sera incorporeacutee
Assigneacutee agrave Deacutesigner lrsquoeacutequipe responsable de la caracteacuteristique
Raison Lrsquoorigine de la requecircte de la caracteacuteristique
GTI515 Automne 2013 JF Couturier 74
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 75
Deacutepartement de geacutenie logiciel et des TI
Reacutedaction du document de vision une description concise de tout ce qui est important au
produit ou agrave lrsquoapplication eacutecrit avec un niveau de deacutetails dans un langage lisible et
compreacutehensible par les intervenants du projet
Document de 15 agrave 20 pages
GTI515 Automne 2013 JF Couturier 76
Deacutepartement de geacutenie logiciel et des TI
Exemple le cas ACS
GTI515 Automne 2013 JF Couturier 77
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 78
Deacutepartement de geacutenie logiciel et des TI
Exemple de problegravemesle cas ACS
Controcircle drsquoune large gamme de mateacuteriels
Utilisation compliqueacutee Difficulteacutes de programmation Disponibiliteacute du mateacuteriel Risque de mauvaise utilisation
GTI515 Automne 2013 JF Couturier 79
Deacutepartement de geacutenie logiciel et des TI
Exemple de besoinsle cas ACS
AutomatiserLa distribution de fertilisantLa distribution de nourritureLa dureacutee de lrsquoeacuteclairage
Commander lrsquoopeacuteration des appareils Reacuteguler
le niveau et la dureteacute de lrsquoeauLa tempeacuterature
GTI515 Automne 2013 JF Couturier 80
Deacutepartement de geacutenie logiciel et des TI
Exemple de caracteacuteristiquesle cas ACS
Deacutemarrage automatique du systegraveme Programmation conserveacutee en cas de
panne drsquoalimentation Deacutetection automatique des modules Facile agrave programmer et agrave utiliser
Exigence non fonctionnelle
GTI515 Automne 2013 JF Couturier 81
Deacutepartement de geacutenie logiciel et des TI
Critegraveres drsquoeacutevaluation
Respect de lrsquoesprit du document
En tant qursquointervenant externe est-ce que je comprends bien
Respect de la forme du gabarit
Qualiteacute du franccedilais
Document de calibre professionnel que lrsquoon pourrait remettre agrave un dirigeant
GTI515 Automne 2013 JF Couturier 82
Deacutepartement de geacutenie logiciel et des TI
Grille drsquoeacutevaluation (sur 100)
Agrave venirhellip
GTI515 Automne 2013 JF Couturier 83
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 84
Prochain cours
La modeacutelisation des processus drsquoaffaires Le diagramme drsquoactiviteacute Le diagnostic des processus drsquoaffaires existant
Lectures Lrsquoutilisation drsquoUML Chapitre sur les diagrammes drsquoactiviteacutes dans Larman Lecture sur MDA Voir site Web du cours
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 85
Questions
- Systegravemes drsquoinformation dans les entreprises (GTI515)
- Plan du cours 1
- Qui suis-je JF Couturier
- Qui suis-je Eacutetudiant(e)
- Plan du cours 1 (2)
- Objectifs du programme
- Ingeacutenieur
- Programme GTI
- Geacutenie des TI
- Cours de speacutecialiteacutes GTI
- Objectif du cours
- Vue drsquoensemble du cours
- Lectures et reacutefeacuterences
- Regravegles du jeu
- QUIZ
- Plan du cours 1 (3)
- Plan de cours
- Laboratoires ndash GTI515
- Peacutenaliteacutes de retard
- Plagiat
- Plan du cours 1 (4)
- Les tendances dans le deacuteveloppement des systegravemes drsquoinformation
- UML - Historique
- Pourquoi modeacuteliser
- La modeacutelisation dans les entreprises
- Quelques chiffres
- Quelques chiffres (2)
- Quelques chiffres (3)
- Quelques chiffres (4)
- Quelques chiffres (5)
- Et maintenant
- Et maintenant (2)
- Finalementhellip
- Reacuteussite Eacutechec
- Rappel
- Industrialisation
- Industrialisation (2)
- Slide 39
- Slide 40
- Usines logicielles (S Factory)
- Usines logicielles (S Factory) (2)
- Usines logicielles (S Factory) (3)
- Usines logicielles (S Factory) (4)
- Usines logicielles
- Domain Specific Langage
- BuzzhellipMDA MDD MDE
- Exemple
- Model Driven Architecture
- Model Driven Architecture (2)
- Model Driven Architecture (3)
- Model Driven Architecture (4)
- Model Driven Architecture (5)
- Concept principal de MDA
- CIM PIM PSM Code
- Les diffeacuterentes eacutetapes
- MDA et Gartner
- Eacutetude de cas
- Impact
- Impact (2)
- Impact (3)
- Slide 63
- Slide 64
- Slide 65
- Exemple (2)
- Ressources
- Laboratoire 1
- Le document de vision (RUP)
- Slide 70
- Exemples de caracteacuteristiques (feature)
- Niveau de deacutetail des caracteacuteristiques
- Attributs des caracteacuteristiques
- Attributs des caracteacuteristiques
- Slide 75
- Reacutedaction du document de vision
- Exemple le cas ACS
- Slide 78
- Exemple de problegravemes le cas ACS
- Exemple de besoins le cas ACS
- Exemple de caracteacuteristiques le cas ACS
- Critegraveres drsquoeacutevaluation
- Grille drsquoeacutevaluation (sur 100)
- Prochain cours
- Questions
-
Deacutepartement de geacutenie logiciel et des TI
Laboratoires ndash GTI515
Eacutequipes de 4 Eacutequipes formeacutees lors de la premiegravere seacuteance de laboratoire Sujet pour les laboratoires confirmeacute par le professeur et le chargeacute de
laboratoire lors de la premiegravere seacuteance de laboratoire Production des arteacutefacts des disciplines de RUP
Document de vision
Diagrammes drsquoactiviteacute et BPMN
Modegravele du domaine et archeacutetypes
Diagramme des cas drsquoutilisation cas drsquoutilisation et diagramme de robustesse
SRS
Controcircle de la qualiteacute par des inspection par les pairs Outils Visio ou Visual Paradigm
GTI515 Automne 2013 JF Couturier 19
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 20
Peacutenaliteacutes de retard
lt 24 hres 20 24 hres gt et lt48 hres 40 48 hres gt et lt72 hres 60 gt72 hres 100
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 21
Plagiat
Lire le Chapitre 10 Plagiat et fraude du Regraveglement des eacutetudes de 1er cycle
Sanction minimale demandeacutee pour un laboratoire copieacute ou autres cas de plagiat ou fraude eacutechec du cours
Autre cas Copie drsquoun livre document ou document provenant
drsquoInternet sans citer la source
Reacuteutilisation de ses travaux drsquoun autre cours sans autorisation
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 22
Plan du cours 1
Qui suis-jeProfesseur Assistant Eacutetudiants
Positionnement du cours dans le programme de geacutenie des TI
Preacutesentation du plan de cours Lrsquoarchitecture dirigeacutee par les modegraveles
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 23
Les tendances dans le deacuteveloppementdes systegravemes drsquoinformation
Modeacutelisation UML2 BPMN MDA (Model Driven Architecture) SOA (agrave lrsquoaide des Services Web) Domain Specific Language
Les frameworks autour de Eclipse NetBean Visual Studio
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 24
UML - Historique
Ref Using the UML to Describe Design Patterns Diane Strode
Deacutepartement de geacutenie logiciel et des TI
Pourquoi modeacuteliser
Un modegravele est une abstraction du monde concret qui facilite sa compreacutehension
Un modegravele peut ecirctre sous forme graphique etou textuelle
Srsquoil est sous forme graphique il doit ecirctre compleacuteteacute par une preacutesentation textuelle
GTI515 Automne 2013 JF Couturier 25
Deacutepartement de geacutenie logiciel et des TI
La modeacutelisation dans les entreprises
Une perte de temps pour les non-informaticiens et mecircme les informaticiens
Une eacutevolution ineacuteluctable avec les nouveaux outils
Modeacuteliser = precirccher dans le deacutesert Cela deacutepend de la culture de votre deacutepartement
GTI515 Automne 2013 JF Couturier 26
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
256 milliards en projet logiciel aux US16 sont compleacuteteacutes en temps et dans
les coucircts
31 sont annuleacutes (81G$)
53 deacutepassent le budget preacutevu
42 seulement sont livreacutes avec les exigences initiales
GTI515 Automne 2013 JF Couturier 27
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
GTI515 Automne 2013 JF Couturier 28
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
GTI515 Automne 2013 JF Couturier 29
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
GTI515 Automne 2013 JF Couturier 30
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
Une grande proportion de projets TI eacutechouent PourquoiPlusieurs facteurs
Les mauvaises exigences en font partie
Si ccedila va si mal crsquoest qursquoil y a quelque chose qursquoon ne fait pas bien Il faut se remettre en question
GTI515 Automne 2013 JF Couturier 31
Deacutepartement de geacutenie logiciel et des TI
Et maintenant
GTI515 Automne 2013 JF Couturier 32
CHAOS Summary 2009
Deacutepartement de geacutenie logiciel et des TI
Et maintenant
GTI515 Automne 2013 JF Couturier 33
Standish Group 1999
CHAOS Summary 2009
Deacutepartement de geacutenie logiciel et des TI
Finalementhellip
GTI515 Automne 2013 JF Couturier 34
Deacutepartement de geacutenie logiciel et des TI
Reacuteussite Eacutechec
Mais qursquoest-ce qursquoun projet reacuteussi Dans les temps Dans le budget Avec les fonctions preacutevues
GTI515 Automne 2013 JF Couturier 35
Deacutepartement de geacutenie logiciel et des TI
Rappel
Notre domaine est tregraves jeune (70 ans) Geacutenie de la constructionhellip5000 ans
Mais nous progressons tregraves rapidement Pourquoi le geacutenie en TI
Artisanat vs geacutenie (le pif vs la meacutethode)
Acircge du geacutenie logiciel TI - Maturiteacute
Science virtuelle vs Meacutecanique construction
Une tendancehellipDe lrsquoartisanat agrave lrsquoindustrialisation du deacuteveloppement logiciel
GTI515 Automne 2013 JF Couturier 36
Deacutepartement de geacutenie logiciel et des TI
Industrialisation
Vers le milieu du 19e siegravecle Segmenter le travail des individus pour
ne pas ecirctre deacutependant drsquoun artisan Permet une production beaucoup plus
efficace en seacuterie
GTI515 Automne 2013 JF Couturier 37
Deacutepartement de geacutenie logiciel et des TI
Industrialisation
Est-ce que le deacuteveloppement peut-ecirctre industrialiseacuteCertains disent que non que le logiciel agrave
un caractegravere trop creacuteatif
Drsquoautres pensent que les reacutecents progregraves dans le domaine permettent une eacuteventuelle industrialisation dans la production drsquoapplication
GTI515 Automne 2013 JF Couturier 38
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 39
Technologies(OO CBD Services Web SOA
XML AOP DB design patternshellip)
Ingeacutenierie dirigeacutee par les modegraveles
Usines logicielles (Microsoft)Architecture dirigeacutee par les modegraveles (OMG)
Deux applications drsquoun mecircme concept de base
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 40
Techniques de deacuteveloppement assisteacute par ordinateur (Reacutef Software Factories Greenfield J p144)
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Un modegravele tregraves deacutetailleacute beaucoup de code geacuteneacutereacute
CASE Tools (Computer-aided software engineering)
Mal adapteacute au deacuteveloppement agile qui implique souvent des solutions partielles tregraves tocirct dans le cycle de deacuteveloppement
Synchronisation difficile
Eacuteloigneacutee de la plateforme
GTI515 Automne 2013 JF Couturier 41
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Exemple Outils graphiques de modeacutelisation des classes
Plus proche de la plateforme
Code geacuteneacutereacute pour la plateforme
Plus simple
Aide geacuteneacuteralement le deacuteveloppeur agrave voir les deacutependances entre les classes
Il reste beaucoup de code agrave faire agrave la main
Penser agrave coder du SWING Java agrave la mitaine
GTI515 Automne 2013 JF Couturier 42
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Existence drsquoun framework logiciel
On se base sur le framework pour automatiser-compleacuteter la production de certains eacuteleacutements comme les eacuteleacutements graphiques
Abstraction plus eacuteleveacutee
VB6 et ses formulaires
NET Hibernate
Peu drsquoabstractions au niveau du modegravele Classe entiteacute-relation
GTI515 Automne 2013 JF Couturier 43
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Finalement il y a la possibiliteacute drsquoavoir une laquo pile raquo de modegraveles
Drsquoun modegravele agrave lrsquoautre il y a transformation vers un modegravele de plus en plus preacutecis
Approche MDA
Concept de Domain Specific Language
Pour un domaine particulier on creacutee des laquo templates raquo reacuteutilisables
Permets la contribution des experts meacutetiers
GTI515 Automne 2013 JF Couturier 44
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles
GTI515 Automne 2013 JF Couturier 45
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Domain Specific Langage
Par opposition au General purpose language comme UML C++ Java ou C
AvantagesPermets agrave un expert meacutetier de
comprendre et valider un modegravele
InconveacutenientCoucirct Formation Maintenance
GTI515 Automne 2013 JF Couturier 46
httpenwikipediaorgwikiDomain_Specific_Language
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 47
BuzzhellipMDA MDD MDE
Model Driven Architecturemarque de commerce de lrsquoOMG
Model Driven Developmentextension de MDAmarque de commerce de lrsquoOMG
Model Driven Engineeringexpression geacuteneacuterique
Deacutepartement de geacutenie logiciel et des TI
Exemple Agrave partir des speacutecifications des exigences logicielles
Lrsquoacteur saisit la commande contenant
lrsquoadresse de livraison
lrsquoadresse de facturation
Le systegraveme creacutee la commande
Lrsquoacteur saisit un deacutetail de la commande avec
le nom du produit
la quantiteacute demandeacutee
le prix du produit
Le systegraveme creacutee le deacutetail et revient agrave lrsquoeacutetape 3
Lrsquoacteur termine la commande
Le systegraveme ferme la commande
GTI515 Automne 2013 JF Couturier 48
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 49
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Un modegravele (Diagramme de classes UML)
Deacutepartement de geacutenie logiciel et des TI
Model Driven ArchitectureUn scheacutema XML
ltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gt
ltxsdschema xmlnsxsd=httpwww targetNamespace=helliprsaquo
ltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo minOccurs=ldquo0ldquo maxOccurs=ldquounboundedgt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdcomplexType name=ldquoDetailCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoprixldquo type=ldquo xsdfloatldquogt
ltxsdelement name=ldquoquantiteldquo type=ldquo xsdintldquogt
ltxsdelement name=ldquonomProduitldquo type=ldquo xsdstringldquogt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdschemarsaquo
GTI515 Automne 2013 JF Couturier 50
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 51
Des classes Java
public class Commande
private String adresseLivraison
private String adresseFacturation
private Collection detailCommande
hellip
String getAdresseLivraison()
void setAdresseLivraison(String value)
String getAdresseFacturation()
void setAdresseFacturation(String value)
public class DetailCommande
private float prix
private int quantite
private String nomProduit
float getPrix()
void setPrix(float value)
int getQuantite()
void setQuantite(int value)
String getNomProduit()
void setNomProduit(String value)
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 52
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Programmepublic class Commande
private String adresseLivraisonprivate String adresseFacturation
String getAdresseLivraison()void setAdresseLivraison(String value)
String getAdresseFacturation()void setAdresseFacturation(String value)
Scheacutema XMLltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gtltxsdschema xmlnsxsd=httpwww
targetNamespace=helliprsaquoltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo
xsdstringldquogt ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo
Modegravele UML3 repreacutesentationsdes mecircmes exigences
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
Speacutecifications de lrsquoOMG Seacuteparation de la logique meacutetier de
toute plateforme technique Speacutecifications drsquoun langage de
transformation (QVT)
GTI515 Automne 2013 JF Couturier 53
Deacutepartement de geacutenie logiciel et des TI
Concept principal de MDA
Modeacuteliser pour documenter le systegraveme
Modeacuteliser pour construire le systegraveme
GTI515 Automne 2013 JF Couturier 55
Deacutepartement de geacutenie logiciel et des TI
CIM PIM PSM Code CIM
Computing Independant Model
Modegravele du domaine logique meacutetier
PIM Platform Independant Model
Modegravele de conception UML et OCL
PSM Platform Specific Model
NET J2EE
Codehellip
GTI515 Automne 2013 JF Couturier 56
Deacutepartement de geacutenie logiciel et des TI
Les diffeacuterentes eacutetapes
GTI515 Automne 2013 JF Couturier 57
Reacutef the Zachman Framework and the OMGrsquos MDA Business Process Trends Sept 2003
Deacutepartement de geacutenie logiciel et des TI
MDA et Gartner
GTI515 Automne 2013 JF Couturier 58
Gartner Hype Cycle 2008
Deacutepartement de geacutenie logiciel et des TI
Eacutetude de cas
Lecture de la discussion sur MDA Questions
Quels sont les arguments pour
Quels sont les arguments contre
Vos commentaires sur lrsquoarticle
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 59
Deacutepartement de geacutenie logiciel et des TI
Impact
Rocircle du deacuteveloppeur minimiseacute puisqursquoil nrsquointerpregravete plus le modegravele les regravegles de transformation srsquoen chargent
Modegraveles exportables drsquoune plateforme agrave un autre
Plus de 100 articles de recherche sur IEEE entre 2008 et 2009
Maishellip
GTI515 Automne 2013 JF Couturier 60
Deacutepartement de geacutenie logiciel et des TI
Impact
Est-ce applicable au monde agile
Le cycle de modeacutelisation est-il compatible avec le deacuteveloppement iteacuteratif
Est-ce qursquoil y a suffisamment de ressources hautement qualifieacutees pour reacutealiser ce type de projet
Pouvez-vous les former Pouvez-vous les conserver
Produire 80 du code et vous laisser les derniers 20 plus difficileshellip
Comment inteacutegrer les tests
GTI515 Automne 2013 JF Couturier 61
Scott Ambler Enterprise Unified Process p 191
Deacutepartement de geacutenie logiciel et des TI
Impact
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 62
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 63
Domaine
Exigences
Analyse
Conception
Reacutealisation
MDA
PIM
PSM
Modegravele des Processus drsquoaffaires
Modegravele drsquoanalyse du systegraveme
CIM
Modegravele des Cas drsquoutilisation
Modegravele de conception du systegraveme
Les modegraveles du cycle de deacuteveloppement de logiciels
Code
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 64
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 65
Deacutepartement de geacutenie logiciel et des TI
Exemple
GTI515 Automne 2013 JF Couturier 66
httpwwwibmcomdeveloperworksrationallibrary3100html
Deacutepartement de geacutenie logiciel et des TI
Ressources
Site de lOMG MDA Article drsquoIBM sur MDA Discussion sur MDA Wiki MDA Wiki QVT
GTI515 Automne 2013 JF Couturier 67
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 68
Laboratoire 1
Choix du sujet Validation de la porteacutee
Suffisamment long Plusieurs interactions humaines machines Reacutealisable dans une session
Chargeacute de laboratoire Oleg Litvinski Premier laboratoire lundi 7 mai
Deacutepartement de geacutenie logiciel et des TI
Le document de vision (RUP)
Une base de discussion et drsquoaccord parmi les intervenants du projet
Une description de lrsquoapplication en geacuteneacuteral incluant la description du marcheacute cible les clients les utilisateurs du systegraveme les problegravemes agrave reacutesoudre et les caracteacuteristiques de lrsquoapplication
GTI515 Automne 2013 JF Couturier 69
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 70
Requirements Management with Use Cases v20010300
Copyright copy 1998 2001 Rational Software all rights reserved
2
Problem
Solution Space
Problem Space
Needs
Features
SoftwareRequirements
Test Procedures Design User
Docs
The The Product Product To Be To Be BuiltBuilt
Traceability
Deacutepartement de geacutenie logiciel et des TI
Exemples de caracteacuteristiques (feature)
Domaine drsquoapplication Exemple de caracteacuteristique
Systegraveme de commande drsquoascenseur
Commande manuelle des portes durant une urgence de feu
Systegraveme de commande drsquoinventaire
Fournir un statut reacutecent de tous les items reacutepertorieacutes
Systegraveme de suivi de deacutefauts Fournir des laquo donneacutees raquo sur les tendances pour eacutevaluer la
qualiteacute
Systegraveme de paie Rapports par cateacutegories des deacuteductions remis agrave lrsquoimpocirct
Systegraveme de commande drsquoarmes
Minimum de deux confirmations indeacutependantes drsquoautorisation
drsquoattaque exigeacutee
GTI515 Automne 2013 JF Couturier 71
Deacutepartement de geacutenie logiciel et des TI
Niveau de deacutetail des caracteacuteristiques Pour tout nouveau systegraveme ou pour
une ameacutelioration majeure agrave un systegraveme existant il est recommandeacute de garder un niveau drsquoabstraction assez eacuteleveacute de sorte agrave avoir un maximum de caracteacuteristiques compris entre 25-99 et de preacutefeacuterence moins de 50
GTI515 Automne 2013 JF Couturier 72
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Statut Suit le progregraves
Exemples Proposeacute approuveacute incorporeacute etc
PrioriteacuteBeacuteneacutefice
Les caracteacuteristiques ne sont pas agrave prioriteacutes eacutegales ou geacutenegraverent des beacuteneacutefices eacutegaux
Exemple critiques importantes optionnelle
Effort Estimation du nombre de personnessemaines lignes de code points de fonction COSMIC_FFP
Risque La probabiliteacute que la caracteacuteristique aille causer un eacuteveacutenement indeacutesirable tel que le deacutepassement du budget ou des deacutelais ou mecircme lrsquoannulation du projet
GTI515 Automne 2013 JF Couturier 73
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Stabiliteacute La probabiliteacute que la caracteacuteristique elle-mecircme ou sa compreacutehension par lrsquoeacutequipe de deacuteveloppement changera
Mise en application
Documenter la version preacutevue pour laquelle la caracteacuteristique sera incorporeacutee
Assigneacutee agrave Deacutesigner lrsquoeacutequipe responsable de la caracteacuteristique
Raison Lrsquoorigine de la requecircte de la caracteacuteristique
GTI515 Automne 2013 JF Couturier 74
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 75
Deacutepartement de geacutenie logiciel et des TI
Reacutedaction du document de vision une description concise de tout ce qui est important au
produit ou agrave lrsquoapplication eacutecrit avec un niveau de deacutetails dans un langage lisible et
compreacutehensible par les intervenants du projet
Document de 15 agrave 20 pages
GTI515 Automne 2013 JF Couturier 76
Deacutepartement de geacutenie logiciel et des TI
Exemple le cas ACS
GTI515 Automne 2013 JF Couturier 77
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 78
Deacutepartement de geacutenie logiciel et des TI
Exemple de problegravemesle cas ACS
Controcircle drsquoune large gamme de mateacuteriels
Utilisation compliqueacutee Difficulteacutes de programmation Disponibiliteacute du mateacuteriel Risque de mauvaise utilisation
GTI515 Automne 2013 JF Couturier 79
Deacutepartement de geacutenie logiciel et des TI
Exemple de besoinsle cas ACS
AutomatiserLa distribution de fertilisantLa distribution de nourritureLa dureacutee de lrsquoeacuteclairage
Commander lrsquoopeacuteration des appareils Reacuteguler
le niveau et la dureteacute de lrsquoeauLa tempeacuterature
GTI515 Automne 2013 JF Couturier 80
Deacutepartement de geacutenie logiciel et des TI
Exemple de caracteacuteristiquesle cas ACS
Deacutemarrage automatique du systegraveme Programmation conserveacutee en cas de
panne drsquoalimentation Deacutetection automatique des modules Facile agrave programmer et agrave utiliser
Exigence non fonctionnelle
GTI515 Automne 2013 JF Couturier 81
Deacutepartement de geacutenie logiciel et des TI
Critegraveres drsquoeacutevaluation
Respect de lrsquoesprit du document
En tant qursquointervenant externe est-ce que je comprends bien
Respect de la forme du gabarit
Qualiteacute du franccedilais
Document de calibre professionnel que lrsquoon pourrait remettre agrave un dirigeant
GTI515 Automne 2013 JF Couturier 82
Deacutepartement de geacutenie logiciel et des TI
Grille drsquoeacutevaluation (sur 100)
Agrave venirhellip
GTI515 Automne 2013 JF Couturier 83
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 84
Prochain cours
La modeacutelisation des processus drsquoaffaires Le diagramme drsquoactiviteacute Le diagnostic des processus drsquoaffaires existant
Lectures Lrsquoutilisation drsquoUML Chapitre sur les diagrammes drsquoactiviteacutes dans Larman Lecture sur MDA Voir site Web du cours
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 85
Questions
- Systegravemes drsquoinformation dans les entreprises (GTI515)
- Plan du cours 1
- Qui suis-je JF Couturier
- Qui suis-je Eacutetudiant(e)
- Plan du cours 1 (2)
- Objectifs du programme
- Ingeacutenieur
- Programme GTI
- Geacutenie des TI
- Cours de speacutecialiteacutes GTI
- Objectif du cours
- Vue drsquoensemble du cours
- Lectures et reacutefeacuterences
- Regravegles du jeu
- QUIZ
- Plan du cours 1 (3)
- Plan de cours
- Laboratoires ndash GTI515
- Peacutenaliteacutes de retard
- Plagiat
- Plan du cours 1 (4)
- Les tendances dans le deacuteveloppement des systegravemes drsquoinformation
- UML - Historique
- Pourquoi modeacuteliser
- La modeacutelisation dans les entreprises
- Quelques chiffres
- Quelques chiffres (2)
- Quelques chiffres (3)
- Quelques chiffres (4)
- Quelques chiffres (5)
- Et maintenant
- Et maintenant (2)
- Finalementhellip
- Reacuteussite Eacutechec
- Rappel
- Industrialisation
- Industrialisation (2)
- Slide 39
- Slide 40
- Usines logicielles (S Factory)
- Usines logicielles (S Factory) (2)
- Usines logicielles (S Factory) (3)
- Usines logicielles (S Factory) (4)
- Usines logicielles
- Domain Specific Langage
- BuzzhellipMDA MDD MDE
- Exemple
- Model Driven Architecture
- Model Driven Architecture (2)
- Model Driven Architecture (3)
- Model Driven Architecture (4)
- Model Driven Architecture (5)
- Concept principal de MDA
- CIM PIM PSM Code
- Les diffeacuterentes eacutetapes
- MDA et Gartner
- Eacutetude de cas
- Impact
- Impact (2)
- Impact (3)
- Slide 63
- Slide 64
- Slide 65
- Exemple (2)
- Ressources
- Laboratoire 1
- Le document de vision (RUP)
- Slide 70
- Exemples de caracteacuteristiques (feature)
- Niveau de deacutetail des caracteacuteristiques
- Attributs des caracteacuteristiques
- Attributs des caracteacuteristiques
- Slide 75
- Reacutedaction du document de vision
- Exemple le cas ACS
- Slide 78
- Exemple de problegravemes le cas ACS
- Exemple de besoins le cas ACS
- Exemple de caracteacuteristiques le cas ACS
- Critegraveres drsquoeacutevaluation
- Grille drsquoeacutevaluation (sur 100)
- Prochain cours
- Questions
-
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 20
Peacutenaliteacutes de retard
lt 24 hres 20 24 hres gt et lt48 hres 40 48 hres gt et lt72 hres 60 gt72 hres 100
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 21
Plagiat
Lire le Chapitre 10 Plagiat et fraude du Regraveglement des eacutetudes de 1er cycle
Sanction minimale demandeacutee pour un laboratoire copieacute ou autres cas de plagiat ou fraude eacutechec du cours
Autre cas Copie drsquoun livre document ou document provenant
drsquoInternet sans citer la source
Reacuteutilisation de ses travaux drsquoun autre cours sans autorisation
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 22
Plan du cours 1
Qui suis-jeProfesseur Assistant Eacutetudiants
Positionnement du cours dans le programme de geacutenie des TI
Preacutesentation du plan de cours Lrsquoarchitecture dirigeacutee par les modegraveles
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 23
Les tendances dans le deacuteveloppementdes systegravemes drsquoinformation
Modeacutelisation UML2 BPMN MDA (Model Driven Architecture) SOA (agrave lrsquoaide des Services Web) Domain Specific Language
Les frameworks autour de Eclipse NetBean Visual Studio
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 24
UML - Historique
Ref Using the UML to Describe Design Patterns Diane Strode
Deacutepartement de geacutenie logiciel et des TI
Pourquoi modeacuteliser
Un modegravele est une abstraction du monde concret qui facilite sa compreacutehension
Un modegravele peut ecirctre sous forme graphique etou textuelle
Srsquoil est sous forme graphique il doit ecirctre compleacuteteacute par une preacutesentation textuelle
GTI515 Automne 2013 JF Couturier 25
Deacutepartement de geacutenie logiciel et des TI
La modeacutelisation dans les entreprises
Une perte de temps pour les non-informaticiens et mecircme les informaticiens
Une eacutevolution ineacuteluctable avec les nouveaux outils
Modeacuteliser = precirccher dans le deacutesert Cela deacutepend de la culture de votre deacutepartement
GTI515 Automne 2013 JF Couturier 26
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
256 milliards en projet logiciel aux US16 sont compleacuteteacutes en temps et dans
les coucircts
31 sont annuleacutes (81G$)
53 deacutepassent le budget preacutevu
42 seulement sont livreacutes avec les exigences initiales
GTI515 Automne 2013 JF Couturier 27
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
GTI515 Automne 2013 JF Couturier 28
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
GTI515 Automne 2013 JF Couturier 29
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
GTI515 Automne 2013 JF Couturier 30
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
Une grande proportion de projets TI eacutechouent PourquoiPlusieurs facteurs
Les mauvaises exigences en font partie
Si ccedila va si mal crsquoest qursquoil y a quelque chose qursquoon ne fait pas bien Il faut se remettre en question
GTI515 Automne 2013 JF Couturier 31
Deacutepartement de geacutenie logiciel et des TI
Et maintenant
GTI515 Automne 2013 JF Couturier 32
CHAOS Summary 2009
Deacutepartement de geacutenie logiciel et des TI
Et maintenant
GTI515 Automne 2013 JF Couturier 33
Standish Group 1999
CHAOS Summary 2009
Deacutepartement de geacutenie logiciel et des TI
Finalementhellip
GTI515 Automne 2013 JF Couturier 34
Deacutepartement de geacutenie logiciel et des TI
Reacuteussite Eacutechec
Mais qursquoest-ce qursquoun projet reacuteussi Dans les temps Dans le budget Avec les fonctions preacutevues
GTI515 Automne 2013 JF Couturier 35
Deacutepartement de geacutenie logiciel et des TI
Rappel
Notre domaine est tregraves jeune (70 ans) Geacutenie de la constructionhellip5000 ans
Mais nous progressons tregraves rapidement Pourquoi le geacutenie en TI
Artisanat vs geacutenie (le pif vs la meacutethode)
Acircge du geacutenie logiciel TI - Maturiteacute
Science virtuelle vs Meacutecanique construction
Une tendancehellipDe lrsquoartisanat agrave lrsquoindustrialisation du deacuteveloppement logiciel
GTI515 Automne 2013 JF Couturier 36
Deacutepartement de geacutenie logiciel et des TI
Industrialisation
Vers le milieu du 19e siegravecle Segmenter le travail des individus pour
ne pas ecirctre deacutependant drsquoun artisan Permet une production beaucoup plus
efficace en seacuterie
GTI515 Automne 2013 JF Couturier 37
Deacutepartement de geacutenie logiciel et des TI
Industrialisation
Est-ce que le deacuteveloppement peut-ecirctre industrialiseacuteCertains disent que non que le logiciel agrave
un caractegravere trop creacuteatif
Drsquoautres pensent que les reacutecents progregraves dans le domaine permettent une eacuteventuelle industrialisation dans la production drsquoapplication
GTI515 Automne 2013 JF Couturier 38
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 39
Technologies(OO CBD Services Web SOA
XML AOP DB design patternshellip)
Ingeacutenierie dirigeacutee par les modegraveles
Usines logicielles (Microsoft)Architecture dirigeacutee par les modegraveles (OMG)
Deux applications drsquoun mecircme concept de base
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 40
Techniques de deacuteveloppement assisteacute par ordinateur (Reacutef Software Factories Greenfield J p144)
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Un modegravele tregraves deacutetailleacute beaucoup de code geacuteneacutereacute
CASE Tools (Computer-aided software engineering)
Mal adapteacute au deacuteveloppement agile qui implique souvent des solutions partielles tregraves tocirct dans le cycle de deacuteveloppement
Synchronisation difficile
Eacuteloigneacutee de la plateforme
GTI515 Automne 2013 JF Couturier 41
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Exemple Outils graphiques de modeacutelisation des classes
Plus proche de la plateforme
Code geacuteneacutereacute pour la plateforme
Plus simple
Aide geacuteneacuteralement le deacuteveloppeur agrave voir les deacutependances entre les classes
Il reste beaucoup de code agrave faire agrave la main
Penser agrave coder du SWING Java agrave la mitaine
GTI515 Automne 2013 JF Couturier 42
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Existence drsquoun framework logiciel
On se base sur le framework pour automatiser-compleacuteter la production de certains eacuteleacutements comme les eacuteleacutements graphiques
Abstraction plus eacuteleveacutee
VB6 et ses formulaires
NET Hibernate
Peu drsquoabstractions au niveau du modegravele Classe entiteacute-relation
GTI515 Automne 2013 JF Couturier 43
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Finalement il y a la possibiliteacute drsquoavoir une laquo pile raquo de modegraveles
Drsquoun modegravele agrave lrsquoautre il y a transformation vers un modegravele de plus en plus preacutecis
Approche MDA
Concept de Domain Specific Language
Pour un domaine particulier on creacutee des laquo templates raquo reacuteutilisables
Permets la contribution des experts meacutetiers
GTI515 Automne 2013 JF Couturier 44
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles
GTI515 Automne 2013 JF Couturier 45
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Domain Specific Langage
Par opposition au General purpose language comme UML C++ Java ou C
AvantagesPermets agrave un expert meacutetier de
comprendre et valider un modegravele
InconveacutenientCoucirct Formation Maintenance
GTI515 Automne 2013 JF Couturier 46
httpenwikipediaorgwikiDomain_Specific_Language
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 47
BuzzhellipMDA MDD MDE
Model Driven Architecturemarque de commerce de lrsquoOMG
Model Driven Developmentextension de MDAmarque de commerce de lrsquoOMG
Model Driven Engineeringexpression geacuteneacuterique
Deacutepartement de geacutenie logiciel et des TI
Exemple Agrave partir des speacutecifications des exigences logicielles
Lrsquoacteur saisit la commande contenant
lrsquoadresse de livraison
lrsquoadresse de facturation
Le systegraveme creacutee la commande
Lrsquoacteur saisit un deacutetail de la commande avec
le nom du produit
la quantiteacute demandeacutee
le prix du produit
Le systegraveme creacutee le deacutetail et revient agrave lrsquoeacutetape 3
Lrsquoacteur termine la commande
Le systegraveme ferme la commande
GTI515 Automne 2013 JF Couturier 48
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 49
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Un modegravele (Diagramme de classes UML)
Deacutepartement de geacutenie logiciel et des TI
Model Driven ArchitectureUn scheacutema XML
ltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gt
ltxsdschema xmlnsxsd=httpwww targetNamespace=helliprsaquo
ltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo minOccurs=ldquo0ldquo maxOccurs=ldquounboundedgt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdcomplexType name=ldquoDetailCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoprixldquo type=ldquo xsdfloatldquogt
ltxsdelement name=ldquoquantiteldquo type=ldquo xsdintldquogt
ltxsdelement name=ldquonomProduitldquo type=ldquo xsdstringldquogt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdschemarsaquo
GTI515 Automne 2013 JF Couturier 50
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 51
Des classes Java
public class Commande
private String adresseLivraison
private String adresseFacturation
private Collection detailCommande
hellip
String getAdresseLivraison()
void setAdresseLivraison(String value)
String getAdresseFacturation()
void setAdresseFacturation(String value)
public class DetailCommande
private float prix
private int quantite
private String nomProduit
float getPrix()
void setPrix(float value)
int getQuantite()
void setQuantite(int value)
String getNomProduit()
void setNomProduit(String value)
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 52
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Programmepublic class Commande
private String adresseLivraisonprivate String adresseFacturation
String getAdresseLivraison()void setAdresseLivraison(String value)
String getAdresseFacturation()void setAdresseFacturation(String value)
Scheacutema XMLltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gtltxsdschema xmlnsxsd=httpwww
targetNamespace=helliprsaquoltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo
xsdstringldquogt ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo
Modegravele UML3 repreacutesentationsdes mecircmes exigences
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
Speacutecifications de lrsquoOMG Seacuteparation de la logique meacutetier de
toute plateforme technique Speacutecifications drsquoun langage de
transformation (QVT)
GTI515 Automne 2013 JF Couturier 53
Deacutepartement de geacutenie logiciel et des TI
Concept principal de MDA
Modeacuteliser pour documenter le systegraveme
Modeacuteliser pour construire le systegraveme
GTI515 Automne 2013 JF Couturier 55
Deacutepartement de geacutenie logiciel et des TI
CIM PIM PSM Code CIM
Computing Independant Model
Modegravele du domaine logique meacutetier
PIM Platform Independant Model
Modegravele de conception UML et OCL
PSM Platform Specific Model
NET J2EE
Codehellip
GTI515 Automne 2013 JF Couturier 56
Deacutepartement de geacutenie logiciel et des TI
Les diffeacuterentes eacutetapes
GTI515 Automne 2013 JF Couturier 57
Reacutef the Zachman Framework and the OMGrsquos MDA Business Process Trends Sept 2003
Deacutepartement de geacutenie logiciel et des TI
MDA et Gartner
GTI515 Automne 2013 JF Couturier 58
Gartner Hype Cycle 2008
Deacutepartement de geacutenie logiciel et des TI
Eacutetude de cas
Lecture de la discussion sur MDA Questions
Quels sont les arguments pour
Quels sont les arguments contre
Vos commentaires sur lrsquoarticle
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 59
Deacutepartement de geacutenie logiciel et des TI
Impact
Rocircle du deacuteveloppeur minimiseacute puisqursquoil nrsquointerpregravete plus le modegravele les regravegles de transformation srsquoen chargent
Modegraveles exportables drsquoune plateforme agrave un autre
Plus de 100 articles de recherche sur IEEE entre 2008 et 2009
Maishellip
GTI515 Automne 2013 JF Couturier 60
Deacutepartement de geacutenie logiciel et des TI
Impact
Est-ce applicable au monde agile
Le cycle de modeacutelisation est-il compatible avec le deacuteveloppement iteacuteratif
Est-ce qursquoil y a suffisamment de ressources hautement qualifieacutees pour reacutealiser ce type de projet
Pouvez-vous les former Pouvez-vous les conserver
Produire 80 du code et vous laisser les derniers 20 plus difficileshellip
Comment inteacutegrer les tests
GTI515 Automne 2013 JF Couturier 61
Scott Ambler Enterprise Unified Process p 191
Deacutepartement de geacutenie logiciel et des TI
Impact
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 62
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 63
Domaine
Exigences
Analyse
Conception
Reacutealisation
MDA
PIM
PSM
Modegravele des Processus drsquoaffaires
Modegravele drsquoanalyse du systegraveme
CIM
Modegravele des Cas drsquoutilisation
Modegravele de conception du systegraveme
Les modegraveles du cycle de deacuteveloppement de logiciels
Code
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 64
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 65
Deacutepartement de geacutenie logiciel et des TI
Exemple
GTI515 Automne 2013 JF Couturier 66
httpwwwibmcomdeveloperworksrationallibrary3100html
Deacutepartement de geacutenie logiciel et des TI
Ressources
Site de lOMG MDA Article drsquoIBM sur MDA Discussion sur MDA Wiki MDA Wiki QVT
GTI515 Automne 2013 JF Couturier 67
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 68
Laboratoire 1
Choix du sujet Validation de la porteacutee
Suffisamment long Plusieurs interactions humaines machines Reacutealisable dans une session
Chargeacute de laboratoire Oleg Litvinski Premier laboratoire lundi 7 mai
Deacutepartement de geacutenie logiciel et des TI
Le document de vision (RUP)
Une base de discussion et drsquoaccord parmi les intervenants du projet
Une description de lrsquoapplication en geacuteneacuteral incluant la description du marcheacute cible les clients les utilisateurs du systegraveme les problegravemes agrave reacutesoudre et les caracteacuteristiques de lrsquoapplication
GTI515 Automne 2013 JF Couturier 69
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 70
Requirements Management with Use Cases v20010300
Copyright copy 1998 2001 Rational Software all rights reserved
2
Problem
Solution Space
Problem Space
Needs
Features
SoftwareRequirements
Test Procedures Design User
Docs
The The Product Product To Be To Be BuiltBuilt
Traceability
Deacutepartement de geacutenie logiciel et des TI
Exemples de caracteacuteristiques (feature)
Domaine drsquoapplication Exemple de caracteacuteristique
Systegraveme de commande drsquoascenseur
Commande manuelle des portes durant une urgence de feu
Systegraveme de commande drsquoinventaire
Fournir un statut reacutecent de tous les items reacutepertorieacutes
Systegraveme de suivi de deacutefauts Fournir des laquo donneacutees raquo sur les tendances pour eacutevaluer la
qualiteacute
Systegraveme de paie Rapports par cateacutegories des deacuteductions remis agrave lrsquoimpocirct
Systegraveme de commande drsquoarmes
Minimum de deux confirmations indeacutependantes drsquoautorisation
drsquoattaque exigeacutee
GTI515 Automne 2013 JF Couturier 71
Deacutepartement de geacutenie logiciel et des TI
Niveau de deacutetail des caracteacuteristiques Pour tout nouveau systegraveme ou pour
une ameacutelioration majeure agrave un systegraveme existant il est recommandeacute de garder un niveau drsquoabstraction assez eacuteleveacute de sorte agrave avoir un maximum de caracteacuteristiques compris entre 25-99 et de preacutefeacuterence moins de 50
GTI515 Automne 2013 JF Couturier 72
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Statut Suit le progregraves
Exemples Proposeacute approuveacute incorporeacute etc
PrioriteacuteBeacuteneacutefice
Les caracteacuteristiques ne sont pas agrave prioriteacutes eacutegales ou geacutenegraverent des beacuteneacutefices eacutegaux
Exemple critiques importantes optionnelle
Effort Estimation du nombre de personnessemaines lignes de code points de fonction COSMIC_FFP
Risque La probabiliteacute que la caracteacuteristique aille causer un eacuteveacutenement indeacutesirable tel que le deacutepassement du budget ou des deacutelais ou mecircme lrsquoannulation du projet
GTI515 Automne 2013 JF Couturier 73
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Stabiliteacute La probabiliteacute que la caracteacuteristique elle-mecircme ou sa compreacutehension par lrsquoeacutequipe de deacuteveloppement changera
Mise en application
Documenter la version preacutevue pour laquelle la caracteacuteristique sera incorporeacutee
Assigneacutee agrave Deacutesigner lrsquoeacutequipe responsable de la caracteacuteristique
Raison Lrsquoorigine de la requecircte de la caracteacuteristique
GTI515 Automne 2013 JF Couturier 74
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 75
Deacutepartement de geacutenie logiciel et des TI
Reacutedaction du document de vision une description concise de tout ce qui est important au
produit ou agrave lrsquoapplication eacutecrit avec un niveau de deacutetails dans un langage lisible et
compreacutehensible par les intervenants du projet
Document de 15 agrave 20 pages
GTI515 Automne 2013 JF Couturier 76
Deacutepartement de geacutenie logiciel et des TI
Exemple le cas ACS
GTI515 Automne 2013 JF Couturier 77
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 78
Deacutepartement de geacutenie logiciel et des TI
Exemple de problegravemesle cas ACS
Controcircle drsquoune large gamme de mateacuteriels
Utilisation compliqueacutee Difficulteacutes de programmation Disponibiliteacute du mateacuteriel Risque de mauvaise utilisation
GTI515 Automne 2013 JF Couturier 79
Deacutepartement de geacutenie logiciel et des TI
Exemple de besoinsle cas ACS
AutomatiserLa distribution de fertilisantLa distribution de nourritureLa dureacutee de lrsquoeacuteclairage
Commander lrsquoopeacuteration des appareils Reacuteguler
le niveau et la dureteacute de lrsquoeauLa tempeacuterature
GTI515 Automne 2013 JF Couturier 80
Deacutepartement de geacutenie logiciel et des TI
Exemple de caracteacuteristiquesle cas ACS
Deacutemarrage automatique du systegraveme Programmation conserveacutee en cas de
panne drsquoalimentation Deacutetection automatique des modules Facile agrave programmer et agrave utiliser
Exigence non fonctionnelle
GTI515 Automne 2013 JF Couturier 81
Deacutepartement de geacutenie logiciel et des TI
Critegraveres drsquoeacutevaluation
Respect de lrsquoesprit du document
En tant qursquointervenant externe est-ce que je comprends bien
Respect de la forme du gabarit
Qualiteacute du franccedilais
Document de calibre professionnel que lrsquoon pourrait remettre agrave un dirigeant
GTI515 Automne 2013 JF Couturier 82
Deacutepartement de geacutenie logiciel et des TI
Grille drsquoeacutevaluation (sur 100)
Agrave venirhellip
GTI515 Automne 2013 JF Couturier 83
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 84
Prochain cours
La modeacutelisation des processus drsquoaffaires Le diagramme drsquoactiviteacute Le diagnostic des processus drsquoaffaires existant
Lectures Lrsquoutilisation drsquoUML Chapitre sur les diagrammes drsquoactiviteacutes dans Larman Lecture sur MDA Voir site Web du cours
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 85
Questions
- Systegravemes drsquoinformation dans les entreprises (GTI515)
- Plan du cours 1
- Qui suis-je JF Couturier
- Qui suis-je Eacutetudiant(e)
- Plan du cours 1 (2)
- Objectifs du programme
- Ingeacutenieur
- Programme GTI
- Geacutenie des TI
- Cours de speacutecialiteacutes GTI
- Objectif du cours
- Vue drsquoensemble du cours
- Lectures et reacutefeacuterences
- Regravegles du jeu
- QUIZ
- Plan du cours 1 (3)
- Plan de cours
- Laboratoires ndash GTI515
- Peacutenaliteacutes de retard
- Plagiat
- Plan du cours 1 (4)
- Les tendances dans le deacuteveloppement des systegravemes drsquoinformation
- UML - Historique
- Pourquoi modeacuteliser
- La modeacutelisation dans les entreprises
- Quelques chiffres
- Quelques chiffres (2)
- Quelques chiffres (3)
- Quelques chiffres (4)
- Quelques chiffres (5)
- Et maintenant
- Et maintenant (2)
- Finalementhellip
- Reacuteussite Eacutechec
- Rappel
- Industrialisation
- Industrialisation (2)
- Slide 39
- Slide 40
- Usines logicielles (S Factory)
- Usines logicielles (S Factory) (2)
- Usines logicielles (S Factory) (3)
- Usines logicielles (S Factory) (4)
- Usines logicielles
- Domain Specific Langage
- BuzzhellipMDA MDD MDE
- Exemple
- Model Driven Architecture
- Model Driven Architecture (2)
- Model Driven Architecture (3)
- Model Driven Architecture (4)
- Model Driven Architecture (5)
- Concept principal de MDA
- CIM PIM PSM Code
- Les diffeacuterentes eacutetapes
- MDA et Gartner
- Eacutetude de cas
- Impact
- Impact (2)
- Impact (3)
- Slide 63
- Slide 64
- Slide 65
- Exemple (2)
- Ressources
- Laboratoire 1
- Le document de vision (RUP)
- Slide 70
- Exemples de caracteacuteristiques (feature)
- Niveau de deacutetail des caracteacuteristiques
- Attributs des caracteacuteristiques
- Attributs des caracteacuteristiques
- Slide 75
- Reacutedaction du document de vision
- Exemple le cas ACS
- Slide 78
- Exemple de problegravemes le cas ACS
- Exemple de besoins le cas ACS
- Exemple de caracteacuteristiques le cas ACS
- Critegraveres drsquoeacutevaluation
- Grille drsquoeacutevaluation (sur 100)
- Prochain cours
- Questions
-
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 21
Plagiat
Lire le Chapitre 10 Plagiat et fraude du Regraveglement des eacutetudes de 1er cycle
Sanction minimale demandeacutee pour un laboratoire copieacute ou autres cas de plagiat ou fraude eacutechec du cours
Autre cas Copie drsquoun livre document ou document provenant
drsquoInternet sans citer la source
Reacuteutilisation de ses travaux drsquoun autre cours sans autorisation
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 22
Plan du cours 1
Qui suis-jeProfesseur Assistant Eacutetudiants
Positionnement du cours dans le programme de geacutenie des TI
Preacutesentation du plan de cours Lrsquoarchitecture dirigeacutee par les modegraveles
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 23
Les tendances dans le deacuteveloppementdes systegravemes drsquoinformation
Modeacutelisation UML2 BPMN MDA (Model Driven Architecture) SOA (agrave lrsquoaide des Services Web) Domain Specific Language
Les frameworks autour de Eclipse NetBean Visual Studio
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 24
UML - Historique
Ref Using the UML to Describe Design Patterns Diane Strode
Deacutepartement de geacutenie logiciel et des TI
Pourquoi modeacuteliser
Un modegravele est une abstraction du monde concret qui facilite sa compreacutehension
Un modegravele peut ecirctre sous forme graphique etou textuelle
Srsquoil est sous forme graphique il doit ecirctre compleacuteteacute par une preacutesentation textuelle
GTI515 Automne 2013 JF Couturier 25
Deacutepartement de geacutenie logiciel et des TI
La modeacutelisation dans les entreprises
Une perte de temps pour les non-informaticiens et mecircme les informaticiens
Une eacutevolution ineacuteluctable avec les nouveaux outils
Modeacuteliser = precirccher dans le deacutesert Cela deacutepend de la culture de votre deacutepartement
GTI515 Automne 2013 JF Couturier 26
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
256 milliards en projet logiciel aux US16 sont compleacuteteacutes en temps et dans
les coucircts
31 sont annuleacutes (81G$)
53 deacutepassent le budget preacutevu
42 seulement sont livreacutes avec les exigences initiales
GTI515 Automne 2013 JF Couturier 27
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
GTI515 Automne 2013 JF Couturier 28
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
GTI515 Automne 2013 JF Couturier 29
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
GTI515 Automne 2013 JF Couturier 30
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
Une grande proportion de projets TI eacutechouent PourquoiPlusieurs facteurs
Les mauvaises exigences en font partie
Si ccedila va si mal crsquoest qursquoil y a quelque chose qursquoon ne fait pas bien Il faut se remettre en question
GTI515 Automne 2013 JF Couturier 31
Deacutepartement de geacutenie logiciel et des TI
Et maintenant
GTI515 Automne 2013 JF Couturier 32
CHAOS Summary 2009
Deacutepartement de geacutenie logiciel et des TI
Et maintenant
GTI515 Automne 2013 JF Couturier 33
Standish Group 1999
CHAOS Summary 2009
Deacutepartement de geacutenie logiciel et des TI
Finalementhellip
GTI515 Automne 2013 JF Couturier 34
Deacutepartement de geacutenie logiciel et des TI
Reacuteussite Eacutechec
Mais qursquoest-ce qursquoun projet reacuteussi Dans les temps Dans le budget Avec les fonctions preacutevues
GTI515 Automne 2013 JF Couturier 35
Deacutepartement de geacutenie logiciel et des TI
Rappel
Notre domaine est tregraves jeune (70 ans) Geacutenie de la constructionhellip5000 ans
Mais nous progressons tregraves rapidement Pourquoi le geacutenie en TI
Artisanat vs geacutenie (le pif vs la meacutethode)
Acircge du geacutenie logiciel TI - Maturiteacute
Science virtuelle vs Meacutecanique construction
Une tendancehellipDe lrsquoartisanat agrave lrsquoindustrialisation du deacuteveloppement logiciel
GTI515 Automne 2013 JF Couturier 36
Deacutepartement de geacutenie logiciel et des TI
Industrialisation
Vers le milieu du 19e siegravecle Segmenter le travail des individus pour
ne pas ecirctre deacutependant drsquoun artisan Permet une production beaucoup plus
efficace en seacuterie
GTI515 Automne 2013 JF Couturier 37
Deacutepartement de geacutenie logiciel et des TI
Industrialisation
Est-ce que le deacuteveloppement peut-ecirctre industrialiseacuteCertains disent que non que le logiciel agrave
un caractegravere trop creacuteatif
Drsquoautres pensent que les reacutecents progregraves dans le domaine permettent une eacuteventuelle industrialisation dans la production drsquoapplication
GTI515 Automne 2013 JF Couturier 38
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 39
Technologies(OO CBD Services Web SOA
XML AOP DB design patternshellip)
Ingeacutenierie dirigeacutee par les modegraveles
Usines logicielles (Microsoft)Architecture dirigeacutee par les modegraveles (OMG)
Deux applications drsquoun mecircme concept de base
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 40
Techniques de deacuteveloppement assisteacute par ordinateur (Reacutef Software Factories Greenfield J p144)
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Un modegravele tregraves deacutetailleacute beaucoup de code geacuteneacutereacute
CASE Tools (Computer-aided software engineering)
Mal adapteacute au deacuteveloppement agile qui implique souvent des solutions partielles tregraves tocirct dans le cycle de deacuteveloppement
Synchronisation difficile
Eacuteloigneacutee de la plateforme
GTI515 Automne 2013 JF Couturier 41
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Exemple Outils graphiques de modeacutelisation des classes
Plus proche de la plateforme
Code geacuteneacutereacute pour la plateforme
Plus simple
Aide geacuteneacuteralement le deacuteveloppeur agrave voir les deacutependances entre les classes
Il reste beaucoup de code agrave faire agrave la main
Penser agrave coder du SWING Java agrave la mitaine
GTI515 Automne 2013 JF Couturier 42
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Existence drsquoun framework logiciel
On se base sur le framework pour automatiser-compleacuteter la production de certains eacuteleacutements comme les eacuteleacutements graphiques
Abstraction plus eacuteleveacutee
VB6 et ses formulaires
NET Hibernate
Peu drsquoabstractions au niveau du modegravele Classe entiteacute-relation
GTI515 Automne 2013 JF Couturier 43
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Finalement il y a la possibiliteacute drsquoavoir une laquo pile raquo de modegraveles
Drsquoun modegravele agrave lrsquoautre il y a transformation vers un modegravele de plus en plus preacutecis
Approche MDA
Concept de Domain Specific Language
Pour un domaine particulier on creacutee des laquo templates raquo reacuteutilisables
Permets la contribution des experts meacutetiers
GTI515 Automne 2013 JF Couturier 44
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles
GTI515 Automne 2013 JF Couturier 45
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Domain Specific Langage
Par opposition au General purpose language comme UML C++ Java ou C
AvantagesPermets agrave un expert meacutetier de
comprendre et valider un modegravele
InconveacutenientCoucirct Formation Maintenance
GTI515 Automne 2013 JF Couturier 46
httpenwikipediaorgwikiDomain_Specific_Language
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 47
BuzzhellipMDA MDD MDE
Model Driven Architecturemarque de commerce de lrsquoOMG
Model Driven Developmentextension de MDAmarque de commerce de lrsquoOMG
Model Driven Engineeringexpression geacuteneacuterique
Deacutepartement de geacutenie logiciel et des TI
Exemple Agrave partir des speacutecifications des exigences logicielles
Lrsquoacteur saisit la commande contenant
lrsquoadresse de livraison
lrsquoadresse de facturation
Le systegraveme creacutee la commande
Lrsquoacteur saisit un deacutetail de la commande avec
le nom du produit
la quantiteacute demandeacutee
le prix du produit
Le systegraveme creacutee le deacutetail et revient agrave lrsquoeacutetape 3
Lrsquoacteur termine la commande
Le systegraveme ferme la commande
GTI515 Automne 2013 JF Couturier 48
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 49
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Un modegravele (Diagramme de classes UML)
Deacutepartement de geacutenie logiciel et des TI
Model Driven ArchitectureUn scheacutema XML
ltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gt
ltxsdschema xmlnsxsd=httpwww targetNamespace=helliprsaquo
ltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo minOccurs=ldquo0ldquo maxOccurs=ldquounboundedgt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdcomplexType name=ldquoDetailCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoprixldquo type=ldquo xsdfloatldquogt
ltxsdelement name=ldquoquantiteldquo type=ldquo xsdintldquogt
ltxsdelement name=ldquonomProduitldquo type=ldquo xsdstringldquogt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdschemarsaquo
GTI515 Automne 2013 JF Couturier 50
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 51
Des classes Java
public class Commande
private String adresseLivraison
private String adresseFacturation
private Collection detailCommande
hellip
String getAdresseLivraison()
void setAdresseLivraison(String value)
String getAdresseFacturation()
void setAdresseFacturation(String value)
public class DetailCommande
private float prix
private int quantite
private String nomProduit
float getPrix()
void setPrix(float value)
int getQuantite()
void setQuantite(int value)
String getNomProduit()
void setNomProduit(String value)
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 52
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Programmepublic class Commande
private String adresseLivraisonprivate String adresseFacturation
String getAdresseLivraison()void setAdresseLivraison(String value)
String getAdresseFacturation()void setAdresseFacturation(String value)
Scheacutema XMLltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gtltxsdschema xmlnsxsd=httpwww
targetNamespace=helliprsaquoltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo
xsdstringldquogt ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo
Modegravele UML3 repreacutesentationsdes mecircmes exigences
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
Speacutecifications de lrsquoOMG Seacuteparation de la logique meacutetier de
toute plateforme technique Speacutecifications drsquoun langage de
transformation (QVT)
GTI515 Automne 2013 JF Couturier 53
Deacutepartement de geacutenie logiciel et des TI
Concept principal de MDA
Modeacuteliser pour documenter le systegraveme
Modeacuteliser pour construire le systegraveme
GTI515 Automne 2013 JF Couturier 55
Deacutepartement de geacutenie logiciel et des TI
CIM PIM PSM Code CIM
Computing Independant Model
Modegravele du domaine logique meacutetier
PIM Platform Independant Model
Modegravele de conception UML et OCL
PSM Platform Specific Model
NET J2EE
Codehellip
GTI515 Automne 2013 JF Couturier 56
Deacutepartement de geacutenie logiciel et des TI
Les diffeacuterentes eacutetapes
GTI515 Automne 2013 JF Couturier 57
Reacutef the Zachman Framework and the OMGrsquos MDA Business Process Trends Sept 2003
Deacutepartement de geacutenie logiciel et des TI
MDA et Gartner
GTI515 Automne 2013 JF Couturier 58
Gartner Hype Cycle 2008
Deacutepartement de geacutenie logiciel et des TI
Eacutetude de cas
Lecture de la discussion sur MDA Questions
Quels sont les arguments pour
Quels sont les arguments contre
Vos commentaires sur lrsquoarticle
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 59
Deacutepartement de geacutenie logiciel et des TI
Impact
Rocircle du deacuteveloppeur minimiseacute puisqursquoil nrsquointerpregravete plus le modegravele les regravegles de transformation srsquoen chargent
Modegraveles exportables drsquoune plateforme agrave un autre
Plus de 100 articles de recherche sur IEEE entre 2008 et 2009
Maishellip
GTI515 Automne 2013 JF Couturier 60
Deacutepartement de geacutenie logiciel et des TI
Impact
Est-ce applicable au monde agile
Le cycle de modeacutelisation est-il compatible avec le deacuteveloppement iteacuteratif
Est-ce qursquoil y a suffisamment de ressources hautement qualifieacutees pour reacutealiser ce type de projet
Pouvez-vous les former Pouvez-vous les conserver
Produire 80 du code et vous laisser les derniers 20 plus difficileshellip
Comment inteacutegrer les tests
GTI515 Automne 2013 JF Couturier 61
Scott Ambler Enterprise Unified Process p 191
Deacutepartement de geacutenie logiciel et des TI
Impact
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 62
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 63
Domaine
Exigences
Analyse
Conception
Reacutealisation
MDA
PIM
PSM
Modegravele des Processus drsquoaffaires
Modegravele drsquoanalyse du systegraveme
CIM
Modegravele des Cas drsquoutilisation
Modegravele de conception du systegraveme
Les modegraveles du cycle de deacuteveloppement de logiciels
Code
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 64
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 65
Deacutepartement de geacutenie logiciel et des TI
Exemple
GTI515 Automne 2013 JF Couturier 66
httpwwwibmcomdeveloperworksrationallibrary3100html
Deacutepartement de geacutenie logiciel et des TI
Ressources
Site de lOMG MDA Article drsquoIBM sur MDA Discussion sur MDA Wiki MDA Wiki QVT
GTI515 Automne 2013 JF Couturier 67
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 68
Laboratoire 1
Choix du sujet Validation de la porteacutee
Suffisamment long Plusieurs interactions humaines machines Reacutealisable dans une session
Chargeacute de laboratoire Oleg Litvinski Premier laboratoire lundi 7 mai
Deacutepartement de geacutenie logiciel et des TI
Le document de vision (RUP)
Une base de discussion et drsquoaccord parmi les intervenants du projet
Une description de lrsquoapplication en geacuteneacuteral incluant la description du marcheacute cible les clients les utilisateurs du systegraveme les problegravemes agrave reacutesoudre et les caracteacuteristiques de lrsquoapplication
GTI515 Automne 2013 JF Couturier 69
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 70
Requirements Management with Use Cases v20010300
Copyright copy 1998 2001 Rational Software all rights reserved
2
Problem
Solution Space
Problem Space
Needs
Features
SoftwareRequirements
Test Procedures Design User
Docs
The The Product Product To Be To Be BuiltBuilt
Traceability
Deacutepartement de geacutenie logiciel et des TI
Exemples de caracteacuteristiques (feature)
Domaine drsquoapplication Exemple de caracteacuteristique
Systegraveme de commande drsquoascenseur
Commande manuelle des portes durant une urgence de feu
Systegraveme de commande drsquoinventaire
Fournir un statut reacutecent de tous les items reacutepertorieacutes
Systegraveme de suivi de deacutefauts Fournir des laquo donneacutees raquo sur les tendances pour eacutevaluer la
qualiteacute
Systegraveme de paie Rapports par cateacutegories des deacuteductions remis agrave lrsquoimpocirct
Systegraveme de commande drsquoarmes
Minimum de deux confirmations indeacutependantes drsquoautorisation
drsquoattaque exigeacutee
GTI515 Automne 2013 JF Couturier 71
Deacutepartement de geacutenie logiciel et des TI
Niveau de deacutetail des caracteacuteristiques Pour tout nouveau systegraveme ou pour
une ameacutelioration majeure agrave un systegraveme existant il est recommandeacute de garder un niveau drsquoabstraction assez eacuteleveacute de sorte agrave avoir un maximum de caracteacuteristiques compris entre 25-99 et de preacutefeacuterence moins de 50
GTI515 Automne 2013 JF Couturier 72
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Statut Suit le progregraves
Exemples Proposeacute approuveacute incorporeacute etc
PrioriteacuteBeacuteneacutefice
Les caracteacuteristiques ne sont pas agrave prioriteacutes eacutegales ou geacutenegraverent des beacuteneacutefices eacutegaux
Exemple critiques importantes optionnelle
Effort Estimation du nombre de personnessemaines lignes de code points de fonction COSMIC_FFP
Risque La probabiliteacute que la caracteacuteristique aille causer un eacuteveacutenement indeacutesirable tel que le deacutepassement du budget ou des deacutelais ou mecircme lrsquoannulation du projet
GTI515 Automne 2013 JF Couturier 73
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Stabiliteacute La probabiliteacute que la caracteacuteristique elle-mecircme ou sa compreacutehension par lrsquoeacutequipe de deacuteveloppement changera
Mise en application
Documenter la version preacutevue pour laquelle la caracteacuteristique sera incorporeacutee
Assigneacutee agrave Deacutesigner lrsquoeacutequipe responsable de la caracteacuteristique
Raison Lrsquoorigine de la requecircte de la caracteacuteristique
GTI515 Automne 2013 JF Couturier 74
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 75
Deacutepartement de geacutenie logiciel et des TI
Reacutedaction du document de vision une description concise de tout ce qui est important au
produit ou agrave lrsquoapplication eacutecrit avec un niveau de deacutetails dans un langage lisible et
compreacutehensible par les intervenants du projet
Document de 15 agrave 20 pages
GTI515 Automne 2013 JF Couturier 76
Deacutepartement de geacutenie logiciel et des TI
Exemple le cas ACS
GTI515 Automne 2013 JF Couturier 77
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 78
Deacutepartement de geacutenie logiciel et des TI
Exemple de problegravemesle cas ACS
Controcircle drsquoune large gamme de mateacuteriels
Utilisation compliqueacutee Difficulteacutes de programmation Disponibiliteacute du mateacuteriel Risque de mauvaise utilisation
GTI515 Automne 2013 JF Couturier 79
Deacutepartement de geacutenie logiciel et des TI
Exemple de besoinsle cas ACS
AutomatiserLa distribution de fertilisantLa distribution de nourritureLa dureacutee de lrsquoeacuteclairage
Commander lrsquoopeacuteration des appareils Reacuteguler
le niveau et la dureteacute de lrsquoeauLa tempeacuterature
GTI515 Automne 2013 JF Couturier 80
Deacutepartement de geacutenie logiciel et des TI
Exemple de caracteacuteristiquesle cas ACS
Deacutemarrage automatique du systegraveme Programmation conserveacutee en cas de
panne drsquoalimentation Deacutetection automatique des modules Facile agrave programmer et agrave utiliser
Exigence non fonctionnelle
GTI515 Automne 2013 JF Couturier 81
Deacutepartement de geacutenie logiciel et des TI
Critegraveres drsquoeacutevaluation
Respect de lrsquoesprit du document
En tant qursquointervenant externe est-ce que je comprends bien
Respect de la forme du gabarit
Qualiteacute du franccedilais
Document de calibre professionnel que lrsquoon pourrait remettre agrave un dirigeant
GTI515 Automne 2013 JF Couturier 82
Deacutepartement de geacutenie logiciel et des TI
Grille drsquoeacutevaluation (sur 100)
Agrave venirhellip
GTI515 Automne 2013 JF Couturier 83
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 84
Prochain cours
La modeacutelisation des processus drsquoaffaires Le diagramme drsquoactiviteacute Le diagnostic des processus drsquoaffaires existant
Lectures Lrsquoutilisation drsquoUML Chapitre sur les diagrammes drsquoactiviteacutes dans Larman Lecture sur MDA Voir site Web du cours
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 85
Questions
- Systegravemes drsquoinformation dans les entreprises (GTI515)
- Plan du cours 1
- Qui suis-je JF Couturier
- Qui suis-je Eacutetudiant(e)
- Plan du cours 1 (2)
- Objectifs du programme
- Ingeacutenieur
- Programme GTI
- Geacutenie des TI
- Cours de speacutecialiteacutes GTI
- Objectif du cours
- Vue drsquoensemble du cours
- Lectures et reacutefeacuterences
- Regravegles du jeu
- QUIZ
- Plan du cours 1 (3)
- Plan de cours
- Laboratoires ndash GTI515
- Peacutenaliteacutes de retard
- Plagiat
- Plan du cours 1 (4)
- Les tendances dans le deacuteveloppement des systegravemes drsquoinformation
- UML - Historique
- Pourquoi modeacuteliser
- La modeacutelisation dans les entreprises
- Quelques chiffres
- Quelques chiffres (2)
- Quelques chiffres (3)
- Quelques chiffres (4)
- Quelques chiffres (5)
- Et maintenant
- Et maintenant (2)
- Finalementhellip
- Reacuteussite Eacutechec
- Rappel
- Industrialisation
- Industrialisation (2)
- Slide 39
- Slide 40
- Usines logicielles (S Factory)
- Usines logicielles (S Factory) (2)
- Usines logicielles (S Factory) (3)
- Usines logicielles (S Factory) (4)
- Usines logicielles
- Domain Specific Langage
- BuzzhellipMDA MDD MDE
- Exemple
- Model Driven Architecture
- Model Driven Architecture (2)
- Model Driven Architecture (3)
- Model Driven Architecture (4)
- Model Driven Architecture (5)
- Concept principal de MDA
- CIM PIM PSM Code
- Les diffeacuterentes eacutetapes
- MDA et Gartner
- Eacutetude de cas
- Impact
- Impact (2)
- Impact (3)
- Slide 63
- Slide 64
- Slide 65
- Exemple (2)
- Ressources
- Laboratoire 1
- Le document de vision (RUP)
- Slide 70
- Exemples de caracteacuteristiques (feature)
- Niveau de deacutetail des caracteacuteristiques
- Attributs des caracteacuteristiques
- Attributs des caracteacuteristiques
- Slide 75
- Reacutedaction du document de vision
- Exemple le cas ACS
- Slide 78
- Exemple de problegravemes le cas ACS
- Exemple de besoins le cas ACS
- Exemple de caracteacuteristiques le cas ACS
- Critegraveres drsquoeacutevaluation
- Grille drsquoeacutevaluation (sur 100)
- Prochain cours
- Questions
-
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 22
Plan du cours 1
Qui suis-jeProfesseur Assistant Eacutetudiants
Positionnement du cours dans le programme de geacutenie des TI
Preacutesentation du plan de cours Lrsquoarchitecture dirigeacutee par les modegraveles
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 23
Les tendances dans le deacuteveloppementdes systegravemes drsquoinformation
Modeacutelisation UML2 BPMN MDA (Model Driven Architecture) SOA (agrave lrsquoaide des Services Web) Domain Specific Language
Les frameworks autour de Eclipse NetBean Visual Studio
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 24
UML - Historique
Ref Using the UML to Describe Design Patterns Diane Strode
Deacutepartement de geacutenie logiciel et des TI
Pourquoi modeacuteliser
Un modegravele est une abstraction du monde concret qui facilite sa compreacutehension
Un modegravele peut ecirctre sous forme graphique etou textuelle
Srsquoil est sous forme graphique il doit ecirctre compleacuteteacute par une preacutesentation textuelle
GTI515 Automne 2013 JF Couturier 25
Deacutepartement de geacutenie logiciel et des TI
La modeacutelisation dans les entreprises
Une perte de temps pour les non-informaticiens et mecircme les informaticiens
Une eacutevolution ineacuteluctable avec les nouveaux outils
Modeacuteliser = precirccher dans le deacutesert Cela deacutepend de la culture de votre deacutepartement
GTI515 Automne 2013 JF Couturier 26
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
256 milliards en projet logiciel aux US16 sont compleacuteteacutes en temps et dans
les coucircts
31 sont annuleacutes (81G$)
53 deacutepassent le budget preacutevu
42 seulement sont livreacutes avec les exigences initiales
GTI515 Automne 2013 JF Couturier 27
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
GTI515 Automne 2013 JF Couturier 28
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
GTI515 Automne 2013 JF Couturier 29
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
GTI515 Automne 2013 JF Couturier 30
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
Une grande proportion de projets TI eacutechouent PourquoiPlusieurs facteurs
Les mauvaises exigences en font partie
Si ccedila va si mal crsquoest qursquoil y a quelque chose qursquoon ne fait pas bien Il faut se remettre en question
GTI515 Automne 2013 JF Couturier 31
Deacutepartement de geacutenie logiciel et des TI
Et maintenant
GTI515 Automne 2013 JF Couturier 32
CHAOS Summary 2009
Deacutepartement de geacutenie logiciel et des TI
Et maintenant
GTI515 Automne 2013 JF Couturier 33
Standish Group 1999
CHAOS Summary 2009
Deacutepartement de geacutenie logiciel et des TI
Finalementhellip
GTI515 Automne 2013 JF Couturier 34
Deacutepartement de geacutenie logiciel et des TI
Reacuteussite Eacutechec
Mais qursquoest-ce qursquoun projet reacuteussi Dans les temps Dans le budget Avec les fonctions preacutevues
GTI515 Automne 2013 JF Couturier 35
Deacutepartement de geacutenie logiciel et des TI
Rappel
Notre domaine est tregraves jeune (70 ans) Geacutenie de la constructionhellip5000 ans
Mais nous progressons tregraves rapidement Pourquoi le geacutenie en TI
Artisanat vs geacutenie (le pif vs la meacutethode)
Acircge du geacutenie logiciel TI - Maturiteacute
Science virtuelle vs Meacutecanique construction
Une tendancehellipDe lrsquoartisanat agrave lrsquoindustrialisation du deacuteveloppement logiciel
GTI515 Automne 2013 JF Couturier 36
Deacutepartement de geacutenie logiciel et des TI
Industrialisation
Vers le milieu du 19e siegravecle Segmenter le travail des individus pour
ne pas ecirctre deacutependant drsquoun artisan Permet une production beaucoup plus
efficace en seacuterie
GTI515 Automne 2013 JF Couturier 37
Deacutepartement de geacutenie logiciel et des TI
Industrialisation
Est-ce que le deacuteveloppement peut-ecirctre industrialiseacuteCertains disent que non que le logiciel agrave
un caractegravere trop creacuteatif
Drsquoautres pensent que les reacutecents progregraves dans le domaine permettent une eacuteventuelle industrialisation dans la production drsquoapplication
GTI515 Automne 2013 JF Couturier 38
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 39
Technologies(OO CBD Services Web SOA
XML AOP DB design patternshellip)
Ingeacutenierie dirigeacutee par les modegraveles
Usines logicielles (Microsoft)Architecture dirigeacutee par les modegraveles (OMG)
Deux applications drsquoun mecircme concept de base
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 40
Techniques de deacuteveloppement assisteacute par ordinateur (Reacutef Software Factories Greenfield J p144)
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Un modegravele tregraves deacutetailleacute beaucoup de code geacuteneacutereacute
CASE Tools (Computer-aided software engineering)
Mal adapteacute au deacuteveloppement agile qui implique souvent des solutions partielles tregraves tocirct dans le cycle de deacuteveloppement
Synchronisation difficile
Eacuteloigneacutee de la plateforme
GTI515 Automne 2013 JF Couturier 41
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Exemple Outils graphiques de modeacutelisation des classes
Plus proche de la plateforme
Code geacuteneacutereacute pour la plateforme
Plus simple
Aide geacuteneacuteralement le deacuteveloppeur agrave voir les deacutependances entre les classes
Il reste beaucoup de code agrave faire agrave la main
Penser agrave coder du SWING Java agrave la mitaine
GTI515 Automne 2013 JF Couturier 42
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Existence drsquoun framework logiciel
On se base sur le framework pour automatiser-compleacuteter la production de certains eacuteleacutements comme les eacuteleacutements graphiques
Abstraction plus eacuteleveacutee
VB6 et ses formulaires
NET Hibernate
Peu drsquoabstractions au niveau du modegravele Classe entiteacute-relation
GTI515 Automne 2013 JF Couturier 43
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Finalement il y a la possibiliteacute drsquoavoir une laquo pile raquo de modegraveles
Drsquoun modegravele agrave lrsquoautre il y a transformation vers un modegravele de plus en plus preacutecis
Approche MDA
Concept de Domain Specific Language
Pour un domaine particulier on creacutee des laquo templates raquo reacuteutilisables
Permets la contribution des experts meacutetiers
GTI515 Automne 2013 JF Couturier 44
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles
GTI515 Automne 2013 JF Couturier 45
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Domain Specific Langage
Par opposition au General purpose language comme UML C++ Java ou C
AvantagesPermets agrave un expert meacutetier de
comprendre et valider un modegravele
InconveacutenientCoucirct Formation Maintenance
GTI515 Automne 2013 JF Couturier 46
httpenwikipediaorgwikiDomain_Specific_Language
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 47
BuzzhellipMDA MDD MDE
Model Driven Architecturemarque de commerce de lrsquoOMG
Model Driven Developmentextension de MDAmarque de commerce de lrsquoOMG
Model Driven Engineeringexpression geacuteneacuterique
Deacutepartement de geacutenie logiciel et des TI
Exemple Agrave partir des speacutecifications des exigences logicielles
Lrsquoacteur saisit la commande contenant
lrsquoadresse de livraison
lrsquoadresse de facturation
Le systegraveme creacutee la commande
Lrsquoacteur saisit un deacutetail de la commande avec
le nom du produit
la quantiteacute demandeacutee
le prix du produit
Le systegraveme creacutee le deacutetail et revient agrave lrsquoeacutetape 3
Lrsquoacteur termine la commande
Le systegraveme ferme la commande
GTI515 Automne 2013 JF Couturier 48
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 49
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Un modegravele (Diagramme de classes UML)
Deacutepartement de geacutenie logiciel et des TI
Model Driven ArchitectureUn scheacutema XML
ltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gt
ltxsdschema xmlnsxsd=httpwww targetNamespace=helliprsaquo
ltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo minOccurs=ldquo0ldquo maxOccurs=ldquounboundedgt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdcomplexType name=ldquoDetailCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoprixldquo type=ldquo xsdfloatldquogt
ltxsdelement name=ldquoquantiteldquo type=ldquo xsdintldquogt
ltxsdelement name=ldquonomProduitldquo type=ldquo xsdstringldquogt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdschemarsaquo
GTI515 Automne 2013 JF Couturier 50
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 51
Des classes Java
public class Commande
private String adresseLivraison
private String adresseFacturation
private Collection detailCommande
hellip
String getAdresseLivraison()
void setAdresseLivraison(String value)
String getAdresseFacturation()
void setAdresseFacturation(String value)
public class DetailCommande
private float prix
private int quantite
private String nomProduit
float getPrix()
void setPrix(float value)
int getQuantite()
void setQuantite(int value)
String getNomProduit()
void setNomProduit(String value)
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 52
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Programmepublic class Commande
private String adresseLivraisonprivate String adresseFacturation
String getAdresseLivraison()void setAdresseLivraison(String value)
String getAdresseFacturation()void setAdresseFacturation(String value)
Scheacutema XMLltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gtltxsdschema xmlnsxsd=httpwww
targetNamespace=helliprsaquoltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo
xsdstringldquogt ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo
Modegravele UML3 repreacutesentationsdes mecircmes exigences
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
Speacutecifications de lrsquoOMG Seacuteparation de la logique meacutetier de
toute plateforme technique Speacutecifications drsquoun langage de
transformation (QVT)
GTI515 Automne 2013 JF Couturier 53
Deacutepartement de geacutenie logiciel et des TI
Concept principal de MDA
Modeacuteliser pour documenter le systegraveme
Modeacuteliser pour construire le systegraveme
GTI515 Automne 2013 JF Couturier 55
Deacutepartement de geacutenie logiciel et des TI
CIM PIM PSM Code CIM
Computing Independant Model
Modegravele du domaine logique meacutetier
PIM Platform Independant Model
Modegravele de conception UML et OCL
PSM Platform Specific Model
NET J2EE
Codehellip
GTI515 Automne 2013 JF Couturier 56
Deacutepartement de geacutenie logiciel et des TI
Les diffeacuterentes eacutetapes
GTI515 Automne 2013 JF Couturier 57
Reacutef the Zachman Framework and the OMGrsquos MDA Business Process Trends Sept 2003
Deacutepartement de geacutenie logiciel et des TI
MDA et Gartner
GTI515 Automne 2013 JF Couturier 58
Gartner Hype Cycle 2008
Deacutepartement de geacutenie logiciel et des TI
Eacutetude de cas
Lecture de la discussion sur MDA Questions
Quels sont les arguments pour
Quels sont les arguments contre
Vos commentaires sur lrsquoarticle
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 59
Deacutepartement de geacutenie logiciel et des TI
Impact
Rocircle du deacuteveloppeur minimiseacute puisqursquoil nrsquointerpregravete plus le modegravele les regravegles de transformation srsquoen chargent
Modegraveles exportables drsquoune plateforme agrave un autre
Plus de 100 articles de recherche sur IEEE entre 2008 et 2009
Maishellip
GTI515 Automne 2013 JF Couturier 60
Deacutepartement de geacutenie logiciel et des TI
Impact
Est-ce applicable au monde agile
Le cycle de modeacutelisation est-il compatible avec le deacuteveloppement iteacuteratif
Est-ce qursquoil y a suffisamment de ressources hautement qualifieacutees pour reacutealiser ce type de projet
Pouvez-vous les former Pouvez-vous les conserver
Produire 80 du code et vous laisser les derniers 20 plus difficileshellip
Comment inteacutegrer les tests
GTI515 Automne 2013 JF Couturier 61
Scott Ambler Enterprise Unified Process p 191
Deacutepartement de geacutenie logiciel et des TI
Impact
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 62
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 63
Domaine
Exigences
Analyse
Conception
Reacutealisation
MDA
PIM
PSM
Modegravele des Processus drsquoaffaires
Modegravele drsquoanalyse du systegraveme
CIM
Modegravele des Cas drsquoutilisation
Modegravele de conception du systegraveme
Les modegraveles du cycle de deacuteveloppement de logiciels
Code
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 64
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 65
Deacutepartement de geacutenie logiciel et des TI
Exemple
GTI515 Automne 2013 JF Couturier 66
httpwwwibmcomdeveloperworksrationallibrary3100html
Deacutepartement de geacutenie logiciel et des TI
Ressources
Site de lOMG MDA Article drsquoIBM sur MDA Discussion sur MDA Wiki MDA Wiki QVT
GTI515 Automne 2013 JF Couturier 67
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 68
Laboratoire 1
Choix du sujet Validation de la porteacutee
Suffisamment long Plusieurs interactions humaines machines Reacutealisable dans une session
Chargeacute de laboratoire Oleg Litvinski Premier laboratoire lundi 7 mai
Deacutepartement de geacutenie logiciel et des TI
Le document de vision (RUP)
Une base de discussion et drsquoaccord parmi les intervenants du projet
Une description de lrsquoapplication en geacuteneacuteral incluant la description du marcheacute cible les clients les utilisateurs du systegraveme les problegravemes agrave reacutesoudre et les caracteacuteristiques de lrsquoapplication
GTI515 Automne 2013 JF Couturier 69
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 70
Requirements Management with Use Cases v20010300
Copyright copy 1998 2001 Rational Software all rights reserved
2
Problem
Solution Space
Problem Space
Needs
Features
SoftwareRequirements
Test Procedures Design User
Docs
The The Product Product To Be To Be BuiltBuilt
Traceability
Deacutepartement de geacutenie logiciel et des TI
Exemples de caracteacuteristiques (feature)
Domaine drsquoapplication Exemple de caracteacuteristique
Systegraveme de commande drsquoascenseur
Commande manuelle des portes durant une urgence de feu
Systegraveme de commande drsquoinventaire
Fournir un statut reacutecent de tous les items reacutepertorieacutes
Systegraveme de suivi de deacutefauts Fournir des laquo donneacutees raquo sur les tendances pour eacutevaluer la
qualiteacute
Systegraveme de paie Rapports par cateacutegories des deacuteductions remis agrave lrsquoimpocirct
Systegraveme de commande drsquoarmes
Minimum de deux confirmations indeacutependantes drsquoautorisation
drsquoattaque exigeacutee
GTI515 Automne 2013 JF Couturier 71
Deacutepartement de geacutenie logiciel et des TI
Niveau de deacutetail des caracteacuteristiques Pour tout nouveau systegraveme ou pour
une ameacutelioration majeure agrave un systegraveme existant il est recommandeacute de garder un niveau drsquoabstraction assez eacuteleveacute de sorte agrave avoir un maximum de caracteacuteristiques compris entre 25-99 et de preacutefeacuterence moins de 50
GTI515 Automne 2013 JF Couturier 72
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Statut Suit le progregraves
Exemples Proposeacute approuveacute incorporeacute etc
PrioriteacuteBeacuteneacutefice
Les caracteacuteristiques ne sont pas agrave prioriteacutes eacutegales ou geacutenegraverent des beacuteneacutefices eacutegaux
Exemple critiques importantes optionnelle
Effort Estimation du nombre de personnessemaines lignes de code points de fonction COSMIC_FFP
Risque La probabiliteacute que la caracteacuteristique aille causer un eacuteveacutenement indeacutesirable tel que le deacutepassement du budget ou des deacutelais ou mecircme lrsquoannulation du projet
GTI515 Automne 2013 JF Couturier 73
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Stabiliteacute La probabiliteacute que la caracteacuteristique elle-mecircme ou sa compreacutehension par lrsquoeacutequipe de deacuteveloppement changera
Mise en application
Documenter la version preacutevue pour laquelle la caracteacuteristique sera incorporeacutee
Assigneacutee agrave Deacutesigner lrsquoeacutequipe responsable de la caracteacuteristique
Raison Lrsquoorigine de la requecircte de la caracteacuteristique
GTI515 Automne 2013 JF Couturier 74
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 75
Deacutepartement de geacutenie logiciel et des TI
Reacutedaction du document de vision une description concise de tout ce qui est important au
produit ou agrave lrsquoapplication eacutecrit avec un niveau de deacutetails dans un langage lisible et
compreacutehensible par les intervenants du projet
Document de 15 agrave 20 pages
GTI515 Automne 2013 JF Couturier 76
Deacutepartement de geacutenie logiciel et des TI
Exemple le cas ACS
GTI515 Automne 2013 JF Couturier 77
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 78
Deacutepartement de geacutenie logiciel et des TI
Exemple de problegravemesle cas ACS
Controcircle drsquoune large gamme de mateacuteriels
Utilisation compliqueacutee Difficulteacutes de programmation Disponibiliteacute du mateacuteriel Risque de mauvaise utilisation
GTI515 Automne 2013 JF Couturier 79
Deacutepartement de geacutenie logiciel et des TI
Exemple de besoinsle cas ACS
AutomatiserLa distribution de fertilisantLa distribution de nourritureLa dureacutee de lrsquoeacuteclairage
Commander lrsquoopeacuteration des appareils Reacuteguler
le niveau et la dureteacute de lrsquoeauLa tempeacuterature
GTI515 Automne 2013 JF Couturier 80
Deacutepartement de geacutenie logiciel et des TI
Exemple de caracteacuteristiquesle cas ACS
Deacutemarrage automatique du systegraveme Programmation conserveacutee en cas de
panne drsquoalimentation Deacutetection automatique des modules Facile agrave programmer et agrave utiliser
Exigence non fonctionnelle
GTI515 Automne 2013 JF Couturier 81
Deacutepartement de geacutenie logiciel et des TI
Critegraveres drsquoeacutevaluation
Respect de lrsquoesprit du document
En tant qursquointervenant externe est-ce que je comprends bien
Respect de la forme du gabarit
Qualiteacute du franccedilais
Document de calibre professionnel que lrsquoon pourrait remettre agrave un dirigeant
GTI515 Automne 2013 JF Couturier 82
Deacutepartement de geacutenie logiciel et des TI
Grille drsquoeacutevaluation (sur 100)
Agrave venirhellip
GTI515 Automne 2013 JF Couturier 83
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 84
Prochain cours
La modeacutelisation des processus drsquoaffaires Le diagramme drsquoactiviteacute Le diagnostic des processus drsquoaffaires existant
Lectures Lrsquoutilisation drsquoUML Chapitre sur les diagrammes drsquoactiviteacutes dans Larman Lecture sur MDA Voir site Web du cours
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 85
Questions
- Systegravemes drsquoinformation dans les entreprises (GTI515)
- Plan du cours 1
- Qui suis-je JF Couturier
- Qui suis-je Eacutetudiant(e)
- Plan du cours 1 (2)
- Objectifs du programme
- Ingeacutenieur
- Programme GTI
- Geacutenie des TI
- Cours de speacutecialiteacutes GTI
- Objectif du cours
- Vue drsquoensemble du cours
- Lectures et reacutefeacuterences
- Regravegles du jeu
- QUIZ
- Plan du cours 1 (3)
- Plan de cours
- Laboratoires ndash GTI515
- Peacutenaliteacutes de retard
- Plagiat
- Plan du cours 1 (4)
- Les tendances dans le deacuteveloppement des systegravemes drsquoinformation
- UML - Historique
- Pourquoi modeacuteliser
- La modeacutelisation dans les entreprises
- Quelques chiffres
- Quelques chiffres (2)
- Quelques chiffres (3)
- Quelques chiffres (4)
- Quelques chiffres (5)
- Et maintenant
- Et maintenant (2)
- Finalementhellip
- Reacuteussite Eacutechec
- Rappel
- Industrialisation
- Industrialisation (2)
- Slide 39
- Slide 40
- Usines logicielles (S Factory)
- Usines logicielles (S Factory) (2)
- Usines logicielles (S Factory) (3)
- Usines logicielles (S Factory) (4)
- Usines logicielles
- Domain Specific Langage
- BuzzhellipMDA MDD MDE
- Exemple
- Model Driven Architecture
- Model Driven Architecture (2)
- Model Driven Architecture (3)
- Model Driven Architecture (4)
- Model Driven Architecture (5)
- Concept principal de MDA
- CIM PIM PSM Code
- Les diffeacuterentes eacutetapes
- MDA et Gartner
- Eacutetude de cas
- Impact
- Impact (2)
- Impact (3)
- Slide 63
- Slide 64
- Slide 65
- Exemple (2)
- Ressources
- Laboratoire 1
- Le document de vision (RUP)
- Slide 70
- Exemples de caracteacuteristiques (feature)
- Niveau de deacutetail des caracteacuteristiques
- Attributs des caracteacuteristiques
- Attributs des caracteacuteristiques
- Slide 75
- Reacutedaction du document de vision
- Exemple le cas ACS
- Slide 78
- Exemple de problegravemes le cas ACS
- Exemple de besoins le cas ACS
- Exemple de caracteacuteristiques le cas ACS
- Critegraveres drsquoeacutevaluation
- Grille drsquoeacutevaluation (sur 100)
- Prochain cours
- Questions
-
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 23
Les tendances dans le deacuteveloppementdes systegravemes drsquoinformation
Modeacutelisation UML2 BPMN MDA (Model Driven Architecture) SOA (agrave lrsquoaide des Services Web) Domain Specific Language
Les frameworks autour de Eclipse NetBean Visual Studio
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 24
UML - Historique
Ref Using the UML to Describe Design Patterns Diane Strode
Deacutepartement de geacutenie logiciel et des TI
Pourquoi modeacuteliser
Un modegravele est une abstraction du monde concret qui facilite sa compreacutehension
Un modegravele peut ecirctre sous forme graphique etou textuelle
Srsquoil est sous forme graphique il doit ecirctre compleacuteteacute par une preacutesentation textuelle
GTI515 Automne 2013 JF Couturier 25
Deacutepartement de geacutenie logiciel et des TI
La modeacutelisation dans les entreprises
Une perte de temps pour les non-informaticiens et mecircme les informaticiens
Une eacutevolution ineacuteluctable avec les nouveaux outils
Modeacuteliser = precirccher dans le deacutesert Cela deacutepend de la culture de votre deacutepartement
GTI515 Automne 2013 JF Couturier 26
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
256 milliards en projet logiciel aux US16 sont compleacuteteacutes en temps et dans
les coucircts
31 sont annuleacutes (81G$)
53 deacutepassent le budget preacutevu
42 seulement sont livreacutes avec les exigences initiales
GTI515 Automne 2013 JF Couturier 27
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
GTI515 Automne 2013 JF Couturier 28
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
GTI515 Automne 2013 JF Couturier 29
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
GTI515 Automne 2013 JF Couturier 30
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
Une grande proportion de projets TI eacutechouent PourquoiPlusieurs facteurs
Les mauvaises exigences en font partie
Si ccedila va si mal crsquoest qursquoil y a quelque chose qursquoon ne fait pas bien Il faut se remettre en question
GTI515 Automne 2013 JF Couturier 31
Deacutepartement de geacutenie logiciel et des TI
Et maintenant
GTI515 Automne 2013 JF Couturier 32
CHAOS Summary 2009
Deacutepartement de geacutenie logiciel et des TI
Et maintenant
GTI515 Automne 2013 JF Couturier 33
Standish Group 1999
CHAOS Summary 2009
Deacutepartement de geacutenie logiciel et des TI
Finalementhellip
GTI515 Automne 2013 JF Couturier 34
Deacutepartement de geacutenie logiciel et des TI
Reacuteussite Eacutechec
Mais qursquoest-ce qursquoun projet reacuteussi Dans les temps Dans le budget Avec les fonctions preacutevues
GTI515 Automne 2013 JF Couturier 35
Deacutepartement de geacutenie logiciel et des TI
Rappel
Notre domaine est tregraves jeune (70 ans) Geacutenie de la constructionhellip5000 ans
Mais nous progressons tregraves rapidement Pourquoi le geacutenie en TI
Artisanat vs geacutenie (le pif vs la meacutethode)
Acircge du geacutenie logiciel TI - Maturiteacute
Science virtuelle vs Meacutecanique construction
Une tendancehellipDe lrsquoartisanat agrave lrsquoindustrialisation du deacuteveloppement logiciel
GTI515 Automne 2013 JF Couturier 36
Deacutepartement de geacutenie logiciel et des TI
Industrialisation
Vers le milieu du 19e siegravecle Segmenter le travail des individus pour
ne pas ecirctre deacutependant drsquoun artisan Permet une production beaucoup plus
efficace en seacuterie
GTI515 Automne 2013 JF Couturier 37
Deacutepartement de geacutenie logiciel et des TI
Industrialisation
Est-ce que le deacuteveloppement peut-ecirctre industrialiseacuteCertains disent que non que le logiciel agrave
un caractegravere trop creacuteatif
Drsquoautres pensent que les reacutecents progregraves dans le domaine permettent une eacuteventuelle industrialisation dans la production drsquoapplication
GTI515 Automne 2013 JF Couturier 38
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 39
Technologies(OO CBD Services Web SOA
XML AOP DB design patternshellip)
Ingeacutenierie dirigeacutee par les modegraveles
Usines logicielles (Microsoft)Architecture dirigeacutee par les modegraveles (OMG)
Deux applications drsquoun mecircme concept de base
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 40
Techniques de deacuteveloppement assisteacute par ordinateur (Reacutef Software Factories Greenfield J p144)
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Un modegravele tregraves deacutetailleacute beaucoup de code geacuteneacutereacute
CASE Tools (Computer-aided software engineering)
Mal adapteacute au deacuteveloppement agile qui implique souvent des solutions partielles tregraves tocirct dans le cycle de deacuteveloppement
Synchronisation difficile
Eacuteloigneacutee de la plateforme
GTI515 Automne 2013 JF Couturier 41
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Exemple Outils graphiques de modeacutelisation des classes
Plus proche de la plateforme
Code geacuteneacutereacute pour la plateforme
Plus simple
Aide geacuteneacuteralement le deacuteveloppeur agrave voir les deacutependances entre les classes
Il reste beaucoup de code agrave faire agrave la main
Penser agrave coder du SWING Java agrave la mitaine
GTI515 Automne 2013 JF Couturier 42
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Existence drsquoun framework logiciel
On se base sur le framework pour automatiser-compleacuteter la production de certains eacuteleacutements comme les eacuteleacutements graphiques
Abstraction plus eacuteleveacutee
VB6 et ses formulaires
NET Hibernate
Peu drsquoabstractions au niveau du modegravele Classe entiteacute-relation
GTI515 Automne 2013 JF Couturier 43
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Finalement il y a la possibiliteacute drsquoavoir une laquo pile raquo de modegraveles
Drsquoun modegravele agrave lrsquoautre il y a transformation vers un modegravele de plus en plus preacutecis
Approche MDA
Concept de Domain Specific Language
Pour un domaine particulier on creacutee des laquo templates raquo reacuteutilisables
Permets la contribution des experts meacutetiers
GTI515 Automne 2013 JF Couturier 44
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles
GTI515 Automne 2013 JF Couturier 45
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Domain Specific Langage
Par opposition au General purpose language comme UML C++ Java ou C
AvantagesPermets agrave un expert meacutetier de
comprendre et valider un modegravele
InconveacutenientCoucirct Formation Maintenance
GTI515 Automne 2013 JF Couturier 46
httpenwikipediaorgwikiDomain_Specific_Language
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 47
BuzzhellipMDA MDD MDE
Model Driven Architecturemarque de commerce de lrsquoOMG
Model Driven Developmentextension de MDAmarque de commerce de lrsquoOMG
Model Driven Engineeringexpression geacuteneacuterique
Deacutepartement de geacutenie logiciel et des TI
Exemple Agrave partir des speacutecifications des exigences logicielles
Lrsquoacteur saisit la commande contenant
lrsquoadresse de livraison
lrsquoadresse de facturation
Le systegraveme creacutee la commande
Lrsquoacteur saisit un deacutetail de la commande avec
le nom du produit
la quantiteacute demandeacutee
le prix du produit
Le systegraveme creacutee le deacutetail et revient agrave lrsquoeacutetape 3
Lrsquoacteur termine la commande
Le systegraveme ferme la commande
GTI515 Automne 2013 JF Couturier 48
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 49
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Un modegravele (Diagramme de classes UML)
Deacutepartement de geacutenie logiciel et des TI
Model Driven ArchitectureUn scheacutema XML
ltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gt
ltxsdschema xmlnsxsd=httpwww targetNamespace=helliprsaquo
ltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo minOccurs=ldquo0ldquo maxOccurs=ldquounboundedgt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdcomplexType name=ldquoDetailCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoprixldquo type=ldquo xsdfloatldquogt
ltxsdelement name=ldquoquantiteldquo type=ldquo xsdintldquogt
ltxsdelement name=ldquonomProduitldquo type=ldquo xsdstringldquogt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdschemarsaquo
GTI515 Automne 2013 JF Couturier 50
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 51
Des classes Java
public class Commande
private String adresseLivraison
private String adresseFacturation
private Collection detailCommande
hellip
String getAdresseLivraison()
void setAdresseLivraison(String value)
String getAdresseFacturation()
void setAdresseFacturation(String value)
public class DetailCommande
private float prix
private int quantite
private String nomProduit
float getPrix()
void setPrix(float value)
int getQuantite()
void setQuantite(int value)
String getNomProduit()
void setNomProduit(String value)
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 52
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Programmepublic class Commande
private String adresseLivraisonprivate String adresseFacturation
String getAdresseLivraison()void setAdresseLivraison(String value)
String getAdresseFacturation()void setAdresseFacturation(String value)
Scheacutema XMLltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gtltxsdschema xmlnsxsd=httpwww
targetNamespace=helliprsaquoltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo
xsdstringldquogt ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo
Modegravele UML3 repreacutesentationsdes mecircmes exigences
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
Speacutecifications de lrsquoOMG Seacuteparation de la logique meacutetier de
toute plateforme technique Speacutecifications drsquoun langage de
transformation (QVT)
GTI515 Automne 2013 JF Couturier 53
Deacutepartement de geacutenie logiciel et des TI
Concept principal de MDA
Modeacuteliser pour documenter le systegraveme
Modeacuteliser pour construire le systegraveme
GTI515 Automne 2013 JF Couturier 55
Deacutepartement de geacutenie logiciel et des TI
CIM PIM PSM Code CIM
Computing Independant Model
Modegravele du domaine logique meacutetier
PIM Platform Independant Model
Modegravele de conception UML et OCL
PSM Platform Specific Model
NET J2EE
Codehellip
GTI515 Automne 2013 JF Couturier 56
Deacutepartement de geacutenie logiciel et des TI
Les diffeacuterentes eacutetapes
GTI515 Automne 2013 JF Couturier 57
Reacutef the Zachman Framework and the OMGrsquos MDA Business Process Trends Sept 2003
Deacutepartement de geacutenie logiciel et des TI
MDA et Gartner
GTI515 Automne 2013 JF Couturier 58
Gartner Hype Cycle 2008
Deacutepartement de geacutenie logiciel et des TI
Eacutetude de cas
Lecture de la discussion sur MDA Questions
Quels sont les arguments pour
Quels sont les arguments contre
Vos commentaires sur lrsquoarticle
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 59
Deacutepartement de geacutenie logiciel et des TI
Impact
Rocircle du deacuteveloppeur minimiseacute puisqursquoil nrsquointerpregravete plus le modegravele les regravegles de transformation srsquoen chargent
Modegraveles exportables drsquoune plateforme agrave un autre
Plus de 100 articles de recherche sur IEEE entre 2008 et 2009
Maishellip
GTI515 Automne 2013 JF Couturier 60
Deacutepartement de geacutenie logiciel et des TI
Impact
Est-ce applicable au monde agile
Le cycle de modeacutelisation est-il compatible avec le deacuteveloppement iteacuteratif
Est-ce qursquoil y a suffisamment de ressources hautement qualifieacutees pour reacutealiser ce type de projet
Pouvez-vous les former Pouvez-vous les conserver
Produire 80 du code et vous laisser les derniers 20 plus difficileshellip
Comment inteacutegrer les tests
GTI515 Automne 2013 JF Couturier 61
Scott Ambler Enterprise Unified Process p 191
Deacutepartement de geacutenie logiciel et des TI
Impact
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 62
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 63
Domaine
Exigences
Analyse
Conception
Reacutealisation
MDA
PIM
PSM
Modegravele des Processus drsquoaffaires
Modegravele drsquoanalyse du systegraveme
CIM
Modegravele des Cas drsquoutilisation
Modegravele de conception du systegraveme
Les modegraveles du cycle de deacuteveloppement de logiciels
Code
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 64
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 65
Deacutepartement de geacutenie logiciel et des TI
Exemple
GTI515 Automne 2013 JF Couturier 66
httpwwwibmcomdeveloperworksrationallibrary3100html
Deacutepartement de geacutenie logiciel et des TI
Ressources
Site de lOMG MDA Article drsquoIBM sur MDA Discussion sur MDA Wiki MDA Wiki QVT
GTI515 Automne 2013 JF Couturier 67
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 68
Laboratoire 1
Choix du sujet Validation de la porteacutee
Suffisamment long Plusieurs interactions humaines machines Reacutealisable dans une session
Chargeacute de laboratoire Oleg Litvinski Premier laboratoire lundi 7 mai
Deacutepartement de geacutenie logiciel et des TI
Le document de vision (RUP)
Une base de discussion et drsquoaccord parmi les intervenants du projet
Une description de lrsquoapplication en geacuteneacuteral incluant la description du marcheacute cible les clients les utilisateurs du systegraveme les problegravemes agrave reacutesoudre et les caracteacuteristiques de lrsquoapplication
GTI515 Automne 2013 JF Couturier 69
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 70
Requirements Management with Use Cases v20010300
Copyright copy 1998 2001 Rational Software all rights reserved
2
Problem
Solution Space
Problem Space
Needs
Features
SoftwareRequirements
Test Procedures Design User
Docs
The The Product Product To Be To Be BuiltBuilt
Traceability
Deacutepartement de geacutenie logiciel et des TI
Exemples de caracteacuteristiques (feature)
Domaine drsquoapplication Exemple de caracteacuteristique
Systegraveme de commande drsquoascenseur
Commande manuelle des portes durant une urgence de feu
Systegraveme de commande drsquoinventaire
Fournir un statut reacutecent de tous les items reacutepertorieacutes
Systegraveme de suivi de deacutefauts Fournir des laquo donneacutees raquo sur les tendances pour eacutevaluer la
qualiteacute
Systegraveme de paie Rapports par cateacutegories des deacuteductions remis agrave lrsquoimpocirct
Systegraveme de commande drsquoarmes
Minimum de deux confirmations indeacutependantes drsquoautorisation
drsquoattaque exigeacutee
GTI515 Automne 2013 JF Couturier 71
Deacutepartement de geacutenie logiciel et des TI
Niveau de deacutetail des caracteacuteristiques Pour tout nouveau systegraveme ou pour
une ameacutelioration majeure agrave un systegraveme existant il est recommandeacute de garder un niveau drsquoabstraction assez eacuteleveacute de sorte agrave avoir un maximum de caracteacuteristiques compris entre 25-99 et de preacutefeacuterence moins de 50
GTI515 Automne 2013 JF Couturier 72
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Statut Suit le progregraves
Exemples Proposeacute approuveacute incorporeacute etc
PrioriteacuteBeacuteneacutefice
Les caracteacuteristiques ne sont pas agrave prioriteacutes eacutegales ou geacutenegraverent des beacuteneacutefices eacutegaux
Exemple critiques importantes optionnelle
Effort Estimation du nombre de personnessemaines lignes de code points de fonction COSMIC_FFP
Risque La probabiliteacute que la caracteacuteristique aille causer un eacuteveacutenement indeacutesirable tel que le deacutepassement du budget ou des deacutelais ou mecircme lrsquoannulation du projet
GTI515 Automne 2013 JF Couturier 73
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Stabiliteacute La probabiliteacute que la caracteacuteristique elle-mecircme ou sa compreacutehension par lrsquoeacutequipe de deacuteveloppement changera
Mise en application
Documenter la version preacutevue pour laquelle la caracteacuteristique sera incorporeacutee
Assigneacutee agrave Deacutesigner lrsquoeacutequipe responsable de la caracteacuteristique
Raison Lrsquoorigine de la requecircte de la caracteacuteristique
GTI515 Automne 2013 JF Couturier 74
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 75
Deacutepartement de geacutenie logiciel et des TI
Reacutedaction du document de vision une description concise de tout ce qui est important au
produit ou agrave lrsquoapplication eacutecrit avec un niveau de deacutetails dans un langage lisible et
compreacutehensible par les intervenants du projet
Document de 15 agrave 20 pages
GTI515 Automne 2013 JF Couturier 76
Deacutepartement de geacutenie logiciel et des TI
Exemple le cas ACS
GTI515 Automne 2013 JF Couturier 77
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 78
Deacutepartement de geacutenie logiciel et des TI
Exemple de problegravemesle cas ACS
Controcircle drsquoune large gamme de mateacuteriels
Utilisation compliqueacutee Difficulteacutes de programmation Disponibiliteacute du mateacuteriel Risque de mauvaise utilisation
GTI515 Automne 2013 JF Couturier 79
Deacutepartement de geacutenie logiciel et des TI
Exemple de besoinsle cas ACS
AutomatiserLa distribution de fertilisantLa distribution de nourritureLa dureacutee de lrsquoeacuteclairage
Commander lrsquoopeacuteration des appareils Reacuteguler
le niveau et la dureteacute de lrsquoeauLa tempeacuterature
GTI515 Automne 2013 JF Couturier 80
Deacutepartement de geacutenie logiciel et des TI
Exemple de caracteacuteristiquesle cas ACS
Deacutemarrage automatique du systegraveme Programmation conserveacutee en cas de
panne drsquoalimentation Deacutetection automatique des modules Facile agrave programmer et agrave utiliser
Exigence non fonctionnelle
GTI515 Automne 2013 JF Couturier 81
Deacutepartement de geacutenie logiciel et des TI
Critegraveres drsquoeacutevaluation
Respect de lrsquoesprit du document
En tant qursquointervenant externe est-ce que je comprends bien
Respect de la forme du gabarit
Qualiteacute du franccedilais
Document de calibre professionnel que lrsquoon pourrait remettre agrave un dirigeant
GTI515 Automne 2013 JF Couturier 82
Deacutepartement de geacutenie logiciel et des TI
Grille drsquoeacutevaluation (sur 100)
Agrave venirhellip
GTI515 Automne 2013 JF Couturier 83
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 84
Prochain cours
La modeacutelisation des processus drsquoaffaires Le diagramme drsquoactiviteacute Le diagnostic des processus drsquoaffaires existant
Lectures Lrsquoutilisation drsquoUML Chapitre sur les diagrammes drsquoactiviteacutes dans Larman Lecture sur MDA Voir site Web du cours
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 85
Questions
- Systegravemes drsquoinformation dans les entreprises (GTI515)
- Plan du cours 1
- Qui suis-je JF Couturier
- Qui suis-je Eacutetudiant(e)
- Plan du cours 1 (2)
- Objectifs du programme
- Ingeacutenieur
- Programme GTI
- Geacutenie des TI
- Cours de speacutecialiteacutes GTI
- Objectif du cours
- Vue drsquoensemble du cours
- Lectures et reacutefeacuterences
- Regravegles du jeu
- QUIZ
- Plan du cours 1 (3)
- Plan de cours
- Laboratoires ndash GTI515
- Peacutenaliteacutes de retard
- Plagiat
- Plan du cours 1 (4)
- Les tendances dans le deacuteveloppement des systegravemes drsquoinformation
- UML - Historique
- Pourquoi modeacuteliser
- La modeacutelisation dans les entreprises
- Quelques chiffres
- Quelques chiffres (2)
- Quelques chiffres (3)
- Quelques chiffres (4)
- Quelques chiffres (5)
- Et maintenant
- Et maintenant (2)
- Finalementhellip
- Reacuteussite Eacutechec
- Rappel
- Industrialisation
- Industrialisation (2)
- Slide 39
- Slide 40
- Usines logicielles (S Factory)
- Usines logicielles (S Factory) (2)
- Usines logicielles (S Factory) (3)
- Usines logicielles (S Factory) (4)
- Usines logicielles
- Domain Specific Langage
- BuzzhellipMDA MDD MDE
- Exemple
- Model Driven Architecture
- Model Driven Architecture (2)
- Model Driven Architecture (3)
- Model Driven Architecture (4)
- Model Driven Architecture (5)
- Concept principal de MDA
- CIM PIM PSM Code
- Les diffeacuterentes eacutetapes
- MDA et Gartner
- Eacutetude de cas
- Impact
- Impact (2)
- Impact (3)
- Slide 63
- Slide 64
- Slide 65
- Exemple (2)
- Ressources
- Laboratoire 1
- Le document de vision (RUP)
- Slide 70
- Exemples de caracteacuteristiques (feature)
- Niveau de deacutetail des caracteacuteristiques
- Attributs des caracteacuteristiques
- Attributs des caracteacuteristiques
- Slide 75
- Reacutedaction du document de vision
- Exemple le cas ACS
- Slide 78
- Exemple de problegravemes le cas ACS
- Exemple de besoins le cas ACS
- Exemple de caracteacuteristiques le cas ACS
- Critegraveres drsquoeacutevaluation
- Grille drsquoeacutevaluation (sur 100)
- Prochain cours
- Questions
-
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 24
UML - Historique
Ref Using the UML to Describe Design Patterns Diane Strode
Deacutepartement de geacutenie logiciel et des TI
Pourquoi modeacuteliser
Un modegravele est une abstraction du monde concret qui facilite sa compreacutehension
Un modegravele peut ecirctre sous forme graphique etou textuelle
Srsquoil est sous forme graphique il doit ecirctre compleacuteteacute par une preacutesentation textuelle
GTI515 Automne 2013 JF Couturier 25
Deacutepartement de geacutenie logiciel et des TI
La modeacutelisation dans les entreprises
Une perte de temps pour les non-informaticiens et mecircme les informaticiens
Une eacutevolution ineacuteluctable avec les nouveaux outils
Modeacuteliser = precirccher dans le deacutesert Cela deacutepend de la culture de votre deacutepartement
GTI515 Automne 2013 JF Couturier 26
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
256 milliards en projet logiciel aux US16 sont compleacuteteacutes en temps et dans
les coucircts
31 sont annuleacutes (81G$)
53 deacutepassent le budget preacutevu
42 seulement sont livreacutes avec les exigences initiales
GTI515 Automne 2013 JF Couturier 27
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
GTI515 Automne 2013 JF Couturier 28
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
GTI515 Automne 2013 JF Couturier 29
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
GTI515 Automne 2013 JF Couturier 30
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
Une grande proportion de projets TI eacutechouent PourquoiPlusieurs facteurs
Les mauvaises exigences en font partie
Si ccedila va si mal crsquoest qursquoil y a quelque chose qursquoon ne fait pas bien Il faut se remettre en question
GTI515 Automne 2013 JF Couturier 31
Deacutepartement de geacutenie logiciel et des TI
Et maintenant
GTI515 Automne 2013 JF Couturier 32
CHAOS Summary 2009
Deacutepartement de geacutenie logiciel et des TI
Et maintenant
GTI515 Automne 2013 JF Couturier 33
Standish Group 1999
CHAOS Summary 2009
Deacutepartement de geacutenie logiciel et des TI
Finalementhellip
GTI515 Automne 2013 JF Couturier 34
Deacutepartement de geacutenie logiciel et des TI
Reacuteussite Eacutechec
Mais qursquoest-ce qursquoun projet reacuteussi Dans les temps Dans le budget Avec les fonctions preacutevues
GTI515 Automne 2013 JF Couturier 35
Deacutepartement de geacutenie logiciel et des TI
Rappel
Notre domaine est tregraves jeune (70 ans) Geacutenie de la constructionhellip5000 ans
Mais nous progressons tregraves rapidement Pourquoi le geacutenie en TI
Artisanat vs geacutenie (le pif vs la meacutethode)
Acircge du geacutenie logiciel TI - Maturiteacute
Science virtuelle vs Meacutecanique construction
Une tendancehellipDe lrsquoartisanat agrave lrsquoindustrialisation du deacuteveloppement logiciel
GTI515 Automne 2013 JF Couturier 36
Deacutepartement de geacutenie logiciel et des TI
Industrialisation
Vers le milieu du 19e siegravecle Segmenter le travail des individus pour
ne pas ecirctre deacutependant drsquoun artisan Permet une production beaucoup plus
efficace en seacuterie
GTI515 Automne 2013 JF Couturier 37
Deacutepartement de geacutenie logiciel et des TI
Industrialisation
Est-ce que le deacuteveloppement peut-ecirctre industrialiseacuteCertains disent que non que le logiciel agrave
un caractegravere trop creacuteatif
Drsquoautres pensent que les reacutecents progregraves dans le domaine permettent une eacuteventuelle industrialisation dans la production drsquoapplication
GTI515 Automne 2013 JF Couturier 38
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 39
Technologies(OO CBD Services Web SOA
XML AOP DB design patternshellip)
Ingeacutenierie dirigeacutee par les modegraveles
Usines logicielles (Microsoft)Architecture dirigeacutee par les modegraveles (OMG)
Deux applications drsquoun mecircme concept de base
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 40
Techniques de deacuteveloppement assisteacute par ordinateur (Reacutef Software Factories Greenfield J p144)
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Un modegravele tregraves deacutetailleacute beaucoup de code geacuteneacutereacute
CASE Tools (Computer-aided software engineering)
Mal adapteacute au deacuteveloppement agile qui implique souvent des solutions partielles tregraves tocirct dans le cycle de deacuteveloppement
Synchronisation difficile
Eacuteloigneacutee de la plateforme
GTI515 Automne 2013 JF Couturier 41
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Exemple Outils graphiques de modeacutelisation des classes
Plus proche de la plateforme
Code geacuteneacutereacute pour la plateforme
Plus simple
Aide geacuteneacuteralement le deacuteveloppeur agrave voir les deacutependances entre les classes
Il reste beaucoup de code agrave faire agrave la main
Penser agrave coder du SWING Java agrave la mitaine
GTI515 Automne 2013 JF Couturier 42
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Existence drsquoun framework logiciel
On se base sur le framework pour automatiser-compleacuteter la production de certains eacuteleacutements comme les eacuteleacutements graphiques
Abstraction plus eacuteleveacutee
VB6 et ses formulaires
NET Hibernate
Peu drsquoabstractions au niveau du modegravele Classe entiteacute-relation
GTI515 Automne 2013 JF Couturier 43
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Finalement il y a la possibiliteacute drsquoavoir une laquo pile raquo de modegraveles
Drsquoun modegravele agrave lrsquoautre il y a transformation vers un modegravele de plus en plus preacutecis
Approche MDA
Concept de Domain Specific Language
Pour un domaine particulier on creacutee des laquo templates raquo reacuteutilisables
Permets la contribution des experts meacutetiers
GTI515 Automne 2013 JF Couturier 44
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles
GTI515 Automne 2013 JF Couturier 45
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Domain Specific Langage
Par opposition au General purpose language comme UML C++ Java ou C
AvantagesPermets agrave un expert meacutetier de
comprendre et valider un modegravele
InconveacutenientCoucirct Formation Maintenance
GTI515 Automne 2013 JF Couturier 46
httpenwikipediaorgwikiDomain_Specific_Language
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 47
BuzzhellipMDA MDD MDE
Model Driven Architecturemarque de commerce de lrsquoOMG
Model Driven Developmentextension de MDAmarque de commerce de lrsquoOMG
Model Driven Engineeringexpression geacuteneacuterique
Deacutepartement de geacutenie logiciel et des TI
Exemple Agrave partir des speacutecifications des exigences logicielles
Lrsquoacteur saisit la commande contenant
lrsquoadresse de livraison
lrsquoadresse de facturation
Le systegraveme creacutee la commande
Lrsquoacteur saisit un deacutetail de la commande avec
le nom du produit
la quantiteacute demandeacutee
le prix du produit
Le systegraveme creacutee le deacutetail et revient agrave lrsquoeacutetape 3
Lrsquoacteur termine la commande
Le systegraveme ferme la commande
GTI515 Automne 2013 JF Couturier 48
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 49
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Un modegravele (Diagramme de classes UML)
Deacutepartement de geacutenie logiciel et des TI
Model Driven ArchitectureUn scheacutema XML
ltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gt
ltxsdschema xmlnsxsd=httpwww targetNamespace=helliprsaquo
ltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo minOccurs=ldquo0ldquo maxOccurs=ldquounboundedgt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdcomplexType name=ldquoDetailCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoprixldquo type=ldquo xsdfloatldquogt
ltxsdelement name=ldquoquantiteldquo type=ldquo xsdintldquogt
ltxsdelement name=ldquonomProduitldquo type=ldquo xsdstringldquogt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdschemarsaquo
GTI515 Automne 2013 JF Couturier 50
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 51
Des classes Java
public class Commande
private String adresseLivraison
private String adresseFacturation
private Collection detailCommande
hellip
String getAdresseLivraison()
void setAdresseLivraison(String value)
String getAdresseFacturation()
void setAdresseFacturation(String value)
public class DetailCommande
private float prix
private int quantite
private String nomProduit
float getPrix()
void setPrix(float value)
int getQuantite()
void setQuantite(int value)
String getNomProduit()
void setNomProduit(String value)
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 52
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Programmepublic class Commande
private String adresseLivraisonprivate String adresseFacturation
String getAdresseLivraison()void setAdresseLivraison(String value)
String getAdresseFacturation()void setAdresseFacturation(String value)
Scheacutema XMLltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gtltxsdschema xmlnsxsd=httpwww
targetNamespace=helliprsaquoltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo
xsdstringldquogt ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo
Modegravele UML3 repreacutesentationsdes mecircmes exigences
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
Speacutecifications de lrsquoOMG Seacuteparation de la logique meacutetier de
toute plateforme technique Speacutecifications drsquoun langage de
transformation (QVT)
GTI515 Automne 2013 JF Couturier 53
Deacutepartement de geacutenie logiciel et des TI
Concept principal de MDA
Modeacuteliser pour documenter le systegraveme
Modeacuteliser pour construire le systegraveme
GTI515 Automne 2013 JF Couturier 55
Deacutepartement de geacutenie logiciel et des TI
CIM PIM PSM Code CIM
Computing Independant Model
Modegravele du domaine logique meacutetier
PIM Platform Independant Model
Modegravele de conception UML et OCL
PSM Platform Specific Model
NET J2EE
Codehellip
GTI515 Automne 2013 JF Couturier 56
Deacutepartement de geacutenie logiciel et des TI
Les diffeacuterentes eacutetapes
GTI515 Automne 2013 JF Couturier 57
Reacutef the Zachman Framework and the OMGrsquos MDA Business Process Trends Sept 2003
Deacutepartement de geacutenie logiciel et des TI
MDA et Gartner
GTI515 Automne 2013 JF Couturier 58
Gartner Hype Cycle 2008
Deacutepartement de geacutenie logiciel et des TI
Eacutetude de cas
Lecture de la discussion sur MDA Questions
Quels sont les arguments pour
Quels sont les arguments contre
Vos commentaires sur lrsquoarticle
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 59
Deacutepartement de geacutenie logiciel et des TI
Impact
Rocircle du deacuteveloppeur minimiseacute puisqursquoil nrsquointerpregravete plus le modegravele les regravegles de transformation srsquoen chargent
Modegraveles exportables drsquoune plateforme agrave un autre
Plus de 100 articles de recherche sur IEEE entre 2008 et 2009
Maishellip
GTI515 Automne 2013 JF Couturier 60
Deacutepartement de geacutenie logiciel et des TI
Impact
Est-ce applicable au monde agile
Le cycle de modeacutelisation est-il compatible avec le deacuteveloppement iteacuteratif
Est-ce qursquoil y a suffisamment de ressources hautement qualifieacutees pour reacutealiser ce type de projet
Pouvez-vous les former Pouvez-vous les conserver
Produire 80 du code et vous laisser les derniers 20 plus difficileshellip
Comment inteacutegrer les tests
GTI515 Automne 2013 JF Couturier 61
Scott Ambler Enterprise Unified Process p 191
Deacutepartement de geacutenie logiciel et des TI
Impact
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 62
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 63
Domaine
Exigences
Analyse
Conception
Reacutealisation
MDA
PIM
PSM
Modegravele des Processus drsquoaffaires
Modegravele drsquoanalyse du systegraveme
CIM
Modegravele des Cas drsquoutilisation
Modegravele de conception du systegraveme
Les modegraveles du cycle de deacuteveloppement de logiciels
Code
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 64
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 65
Deacutepartement de geacutenie logiciel et des TI
Exemple
GTI515 Automne 2013 JF Couturier 66
httpwwwibmcomdeveloperworksrationallibrary3100html
Deacutepartement de geacutenie logiciel et des TI
Ressources
Site de lOMG MDA Article drsquoIBM sur MDA Discussion sur MDA Wiki MDA Wiki QVT
GTI515 Automne 2013 JF Couturier 67
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 68
Laboratoire 1
Choix du sujet Validation de la porteacutee
Suffisamment long Plusieurs interactions humaines machines Reacutealisable dans une session
Chargeacute de laboratoire Oleg Litvinski Premier laboratoire lundi 7 mai
Deacutepartement de geacutenie logiciel et des TI
Le document de vision (RUP)
Une base de discussion et drsquoaccord parmi les intervenants du projet
Une description de lrsquoapplication en geacuteneacuteral incluant la description du marcheacute cible les clients les utilisateurs du systegraveme les problegravemes agrave reacutesoudre et les caracteacuteristiques de lrsquoapplication
GTI515 Automne 2013 JF Couturier 69
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 70
Requirements Management with Use Cases v20010300
Copyright copy 1998 2001 Rational Software all rights reserved
2
Problem
Solution Space
Problem Space
Needs
Features
SoftwareRequirements
Test Procedures Design User
Docs
The The Product Product To Be To Be BuiltBuilt
Traceability
Deacutepartement de geacutenie logiciel et des TI
Exemples de caracteacuteristiques (feature)
Domaine drsquoapplication Exemple de caracteacuteristique
Systegraveme de commande drsquoascenseur
Commande manuelle des portes durant une urgence de feu
Systegraveme de commande drsquoinventaire
Fournir un statut reacutecent de tous les items reacutepertorieacutes
Systegraveme de suivi de deacutefauts Fournir des laquo donneacutees raquo sur les tendances pour eacutevaluer la
qualiteacute
Systegraveme de paie Rapports par cateacutegories des deacuteductions remis agrave lrsquoimpocirct
Systegraveme de commande drsquoarmes
Minimum de deux confirmations indeacutependantes drsquoautorisation
drsquoattaque exigeacutee
GTI515 Automne 2013 JF Couturier 71
Deacutepartement de geacutenie logiciel et des TI
Niveau de deacutetail des caracteacuteristiques Pour tout nouveau systegraveme ou pour
une ameacutelioration majeure agrave un systegraveme existant il est recommandeacute de garder un niveau drsquoabstraction assez eacuteleveacute de sorte agrave avoir un maximum de caracteacuteristiques compris entre 25-99 et de preacutefeacuterence moins de 50
GTI515 Automne 2013 JF Couturier 72
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Statut Suit le progregraves
Exemples Proposeacute approuveacute incorporeacute etc
PrioriteacuteBeacuteneacutefice
Les caracteacuteristiques ne sont pas agrave prioriteacutes eacutegales ou geacutenegraverent des beacuteneacutefices eacutegaux
Exemple critiques importantes optionnelle
Effort Estimation du nombre de personnessemaines lignes de code points de fonction COSMIC_FFP
Risque La probabiliteacute que la caracteacuteristique aille causer un eacuteveacutenement indeacutesirable tel que le deacutepassement du budget ou des deacutelais ou mecircme lrsquoannulation du projet
GTI515 Automne 2013 JF Couturier 73
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Stabiliteacute La probabiliteacute que la caracteacuteristique elle-mecircme ou sa compreacutehension par lrsquoeacutequipe de deacuteveloppement changera
Mise en application
Documenter la version preacutevue pour laquelle la caracteacuteristique sera incorporeacutee
Assigneacutee agrave Deacutesigner lrsquoeacutequipe responsable de la caracteacuteristique
Raison Lrsquoorigine de la requecircte de la caracteacuteristique
GTI515 Automne 2013 JF Couturier 74
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 75
Deacutepartement de geacutenie logiciel et des TI
Reacutedaction du document de vision une description concise de tout ce qui est important au
produit ou agrave lrsquoapplication eacutecrit avec un niveau de deacutetails dans un langage lisible et
compreacutehensible par les intervenants du projet
Document de 15 agrave 20 pages
GTI515 Automne 2013 JF Couturier 76
Deacutepartement de geacutenie logiciel et des TI
Exemple le cas ACS
GTI515 Automne 2013 JF Couturier 77
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 78
Deacutepartement de geacutenie logiciel et des TI
Exemple de problegravemesle cas ACS
Controcircle drsquoune large gamme de mateacuteriels
Utilisation compliqueacutee Difficulteacutes de programmation Disponibiliteacute du mateacuteriel Risque de mauvaise utilisation
GTI515 Automne 2013 JF Couturier 79
Deacutepartement de geacutenie logiciel et des TI
Exemple de besoinsle cas ACS
AutomatiserLa distribution de fertilisantLa distribution de nourritureLa dureacutee de lrsquoeacuteclairage
Commander lrsquoopeacuteration des appareils Reacuteguler
le niveau et la dureteacute de lrsquoeauLa tempeacuterature
GTI515 Automne 2013 JF Couturier 80
Deacutepartement de geacutenie logiciel et des TI
Exemple de caracteacuteristiquesle cas ACS
Deacutemarrage automatique du systegraveme Programmation conserveacutee en cas de
panne drsquoalimentation Deacutetection automatique des modules Facile agrave programmer et agrave utiliser
Exigence non fonctionnelle
GTI515 Automne 2013 JF Couturier 81
Deacutepartement de geacutenie logiciel et des TI
Critegraveres drsquoeacutevaluation
Respect de lrsquoesprit du document
En tant qursquointervenant externe est-ce que je comprends bien
Respect de la forme du gabarit
Qualiteacute du franccedilais
Document de calibre professionnel que lrsquoon pourrait remettre agrave un dirigeant
GTI515 Automne 2013 JF Couturier 82
Deacutepartement de geacutenie logiciel et des TI
Grille drsquoeacutevaluation (sur 100)
Agrave venirhellip
GTI515 Automne 2013 JF Couturier 83
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 84
Prochain cours
La modeacutelisation des processus drsquoaffaires Le diagramme drsquoactiviteacute Le diagnostic des processus drsquoaffaires existant
Lectures Lrsquoutilisation drsquoUML Chapitre sur les diagrammes drsquoactiviteacutes dans Larman Lecture sur MDA Voir site Web du cours
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 85
Questions
- Systegravemes drsquoinformation dans les entreprises (GTI515)
- Plan du cours 1
- Qui suis-je JF Couturier
- Qui suis-je Eacutetudiant(e)
- Plan du cours 1 (2)
- Objectifs du programme
- Ingeacutenieur
- Programme GTI
- Geacutenie des TI
- Cours de speacutecialiteacutes GTI
- Objectif du cours
- Vue drsquoensemble du cours
- Lectures et reacutefeacuterences
- Regravegles du jeu
- QUIZ
- Plan du cours 1 (3)
- Plan de cours
- Laboratoires ndash GTI515
- Peacutenaliteacutes de retard
- Plagiat
- Plan du cours 1 (4)
- Les tendances dans le deacuteveloppement des systegravemes drsquoinformation
- UML - Historique
- Pourquoi modeacuteliser
- La modeacutelisation dans les entreprises
- Quelques chiffres
- Quelques chiffres (2)
- Quelques chiffres (3)
- Quelques chiffres (4)
- Quelques chiffres (5)
- Et maintenant
- Et maintenant (2)
- Finalementhellip
- Reacuteussite Eacutechec
- Rappel
- Industrialisation
- Industrialisation (2)
- Slide 39
- Slide 40
- Usines logicielles (S Factory)
- Usines logicielles (S Factory) (2)
- Usines logicielles (S Factory) (3)
- Usines logicielles (S Factory) (4)
- Usines logicielles
- Domain Specific Langage
- BuzzhellipMDA MDD MDE
- Exemple
- Model Driven Architecture
- Model Driven Architecture (2)
- Model Driven Architecture (3)
- Model Driven Architecture (4)
- Model Driven Architecture (5)
- Concept principal de MDA
- CIM PIM PSM Code
- Les diffeacuterentes eacutetapes
- MDA et Gartner
- Eacutetude de cas
- Impact
- Impact (2)
- Impact (3)
- Slide 63
- Slide 64
- Slide 65
- Exemple (2)
- Ressources
- Laboratoire 1
- Le document de vision (RUP)
- Slide 70
- Exemples de caracteacuteristiques (feature)
- Niveau de deacutetail des caracteacuteristiques
- Attributs des caracteacuteristiques
- Attributs des caracteacuteristiques
- Slide 75
- Reacutedaction du document de vision
- Exemple le cas ACS
- Slide 78
- Exemple de problegravemes le cas ACS
- Exemple de besoins le cas ACS
- Exemple de caracteacuteristiques le cas ACS
- Critegraveres drsquoeacutevaluation
- Grille drsquoeacutevaluation (sur 100)
- Prochain cours
- Questions
-
Deacutepartement de geacutenie logiciel et des TI
Pourquoi modeacuteliser
Un modegravele est une abstraction du monde concret qui facilite sa compreacutehension
Un modegravele peut ecirctre sous forme graphique etou textuelle
Srsquoil est sous forme graphique il doit ecirctre compleacuteteacute par une preacutesentation textuelle
GTI515 Automne 2013 JF Couturier 25
Deacutepartement de geacutenie logiciel et des TI
La modeacutelisation dans les entreprises
Une perte de temps pour les non-informaticiens et mecircme les informaticiens
Une eacutevolution ineacuteluctable avec les nouveaux outils
Modeacuteliser = precirccher dans le deacutesert Cela deacutepend de la culture de votre deacutepartement
GTI515 Automne 2013 JF Couturier 26
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
256 milliards en projet logiciel aux US16 sont compleacuteteacutes en temps et dans
les coucircts
31 sont annuleacutes (81G$)
53 deacutepassent le budget preacutevu
42 seulement sont livreacutes avec les exigences initiales
GTI515 Automne 2013 JF Couturier 27
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
GTI515 Automne 2013 JF Couturier 28
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
GTI515 Automne 2013 JF Couturier 29
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
GTI515 Automne 2013 JF Couturier 30
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
Une grande proportion de projets TI eacutechouent PourquoiPlusieurs facteurs
Les mauvaises exigences en font partie
Si ccedila va si mal crsquoest qursquoil y a quelque chose qursquoon ne fait pas bien Il faut se remettre en question
GTI515 Automne 2013 JF Couturier 31
Deacutepartement de geacutenie logiciel et des TI
Et maintenant
GTI515 Automne 2013 JF Couturier 32
CHAOS Summary 2009
Deacutepartement de geacutenie logiciel et des TI
Et maintenant
GTI515 Automne 2013 JF Couturier 33
Standish Group 1999
CHAOS Summary 2009
Deacutepartement de geacutenie logiciel et des TI
Finalementhellip
GTI515 Automne 2013 JF Couturier 34
Deacutepartement de geacutenie logiciel et des TI
Reacuteussite Eacutechec
Mais qursquoest-ce qursquoun projet reacuteussi Dans les temps Dans le budget Avec les fonctions preacutevues
GTI515 Automne 2013 JF Couturier 35
Deacutepartement de geacutenie logiciel et des TI
Rappel
Notre domaine est tregraves jeune (70 ans) Geacutenie de la constructionhellip5000 ans
Mais nous progressons tregraves rapidement Pourquoi le geacutenie en TI
Artisanat vs geacutenie (le pif vs la meacutethode)
Acircge du geacutenie logiciel TI - Maturiteacute
Science virtuelle vs Meacutecanique construction
Une tendancehellipDe lrsquoartisanat agrave lrsquoindustrialisation du deacuteveloppement logiciel
GTI515 Automne 2013 JF Couturier 36
Deacutepartement de geacutenie logiciel et des TI
Industrialisation
Vers le milieu du 19e siegravecle Segmenter le travail des individus pour
ne pas ecirctre deacutependant drsquoun artisan Permet une production beaucoup plus
efficace en seacuterie
GTI515 Automne 2013 JF Couturier 37
Deacutepartement de geacutenie logiciel et des TI
Industrialisation
Est-ce que le deacuteveloppement peut-ecirctre industrialiseacuteCertains disent que non que le logiciel agrave
un caractegravere trop creacuteatif
Drsquoautres pensent que les reacutecents progregraves dans le domaine permettent une eacuteventuelle industrialisation dans la production drsquoapplication
GTI515 Automne 2013 JF Couturier 38
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 39
Technologies(OO CBD Services Web SOA
XML AOP DB design patternshellip)
Ingeacutenierie dirigeacutee par les modegraveles
Usines logicielles (Microsoft)Architecture dirigeacutee par les modegraveles (OMG)
Deux applications drsquoun mecircme concept de base
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 40
Techniques de deacuteveloppement assisteacute par ordinateur (Reacutef Software Factories Greenfield J p144)
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Un modegravele tregraves deacutetailleacute beaucoup de code geacuteneacutereacute
CASE Tools (Computer-aided software engineering)
Mal adapteacute au deacuteveloppement agile qui implique souvent des solutions partielles tregraves tocirct dans le cycle de deacuteveloppement
Synchronisation difficile
Eacuteloigneacutee de la plateforme
GTI515 Automne 2013 JF Couturier 41
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Exemple Outils graphiques de modeacutelisation des classes
Plus proche de la plateforme
Code geacuteneacutereacute pour la plateforme
Plus simple
Aide geacuteneacuteralement le deacuteveloppeur agrave voir les deacutependances entre les classes
Il reste beaucoup de code agrave faire agrave la main
Penser agrave coder du SWING Java agrave la mitaine
GTI515 Automne 2013 JF Couturier 42
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Existence drsquoun framework logiciel
On se base sur le framework pour automatiser-compleacuteter la production de certains eacuteleacutements comme les eacuteleacutements graphiques
Abstraction plus eacuteleveacutee
VB6 et ses formulaires
NET Hibernate
Peu drsquoabstractions au niveau du modegravele Classe entiteacute-relation
GTI515 Automne 2013 JF Couturier 43
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Finalement il y a la possibiliteacute drsquoavoir une laquo pile raquo de modegraveles
Drsquoun modegravele agrave lrsquoautre il y a transformation vers un modegravele de plus en plus preacutecis
Approche MDA
Concept de Domain Specific Language
Pour un domaine particulier on creacutee des laquo templates raquo reacuteutilisables
Permets la contribution des experts meacutetiers
GTI515 Automne 2013 JF Couturier 44
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles
GTI515 Automne 2013 JF Couturier 45
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Domain Specific Langage
Par opposition au General purpose language comme UML C++ Java ou C
AvantagesPermets agrave un expert meacutetier de
comprendre et valider un modegravele
InconveacutenientCoucirct Formation Maintenance
GTI515 Automne 2013 JF Couturier 46
httpenwikipediaorgwikiDomain_Specific_Language
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 47
BuzzhellipMDA MDD MDE
Model Driven Architecturemarque de commerce de lrsquoOMG
Model Driven Developmentextension de MDAmarque de commerce de lrsquoOMG
Model Driven Engineeringexpression geacuteneacuterique
Deacutepartement de geacutenie logiciel et des TI
Exemple Agrave partir des speacutecifications des exigences logicielles
Lrsquoacteur saisit la commande contenant
lrsquoadresse de livraison
lrsquoadresse de facturation
Le systegraveme creacutee la commande
Lrsquoacteur saisit un deacutetail de la commande avec
le nom du produit
la quantiteacute demandeacutee
le prix du produit
Le systegraveme creacutee le deacutetail et revient agrave lrsquoeacutetape 3
Lrsquoacteur termine la commande
Le systegraveme ferme la commande
GTI515 Automne 2013 JF Couturier 48
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 49
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Un modegravele (Diagramme de classes UML)
Deacutepartement de geacutenie logiciel et des TI
Model Driven ArchitectureUn scheacutema XML
ltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gt
ltxsdschema xmlnsxsd=httpwww targetNamespace=helliprsaquo
ltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo minOccurs=ldquo0ldquo maxOccurs=ldquounboundedgt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdcomplexType name=ldquoDetailCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoprixldquo type=ldquo xsdfloatldquogt
ltxsdelement name=ldquoquantiteldquo type=ldquo xsdintldquogt
ltxsdelement name=ldquonomProduitldquo type=ldquo xsdstringldquogt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdschemarsaquo
GTI515 Automne 2013 JF Couturier 50
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 51
Des classes Java
public class Commande
private String adresseLivraison
private String adresseFacturation
private Collection detailCommande
hellip
String getAdresseLivraison()
void setAdresseLivraison(String value)
String getAdresseFacturation()
void setAdresseFacturation(String value)
public class DetailCommande
private float prix
private int quantite
private String nomProduit
float getPrix()
void setPrix(float value)
int getQuantite()
void setQuantite(int value)
String getNomProduit()
void setNomProduit(String value)
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 52
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Programmepublic class Commande
private String adresseLivraisonprivate String adresseFacturation
String getAdresseLivraison()void setAdresseLivraison(String value)
String getAdresseFacturation()void setAdresseFacturation(String value)
Scheacutema XMLltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gtltxsdschema xmlnsxsd=httpwww
targetNamespace=helliprsaquoltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo
xsdstringldquogt ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo
Modegravele UML3 repreacutesentationsdes mecircmes exigences
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
Speacutecifications de lrsquoOMG Seacuteparation de la logique meacutetier de
toute plateforme technique Speacutecifications drsquoun langage de
transformation (QVT)
GTI515 Automne 2013 JF Couturier 53
Deacutepartement de geacutenie logiciel et des TI
Concept principal de MDA
Modeacuteliser pour documenter le systegraveme
Modeacuteliser pour construire le systegraveme
GTI515 Automne 2013 JF Couturier 55
Deacutepartement de geacutenie logiciel et des TI
CIM PIM PSM Code CIM
Computing Independant Model
Modegravele du domaine logique meacutetier
PIM Platform Independant Model
Modegravele de conception UML et OCL
PSM Platform Specific Model
NET J2EE
Codehellip
GTI515 Automne 2013 JF Couturier 56
Deacutepartement de geacutenie logiciel et des TI
Les diffeacuterentes eacutetapes
GTI515 Automne 2013 JF Couturier 57
Reacutef the Zachman Framework and the OMGrsquos MDA Business Process Trends Sept 2003
Deacutepartement de geacutenie logiciel et des TI
MDA et Gartner
GTI515 Automne 2013 JF Couturier 58
Gartner Hype Cycle 2008
Deacutepartement de geacutenie logiciel et des TI
Eacutetude de cas
Lecture de la discussion sur MDA Questions
Quels sont les arguments pour
Quels sont les arguments contre
Vos commentaires sur lrsquoarticle
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 59
Deacutepartement de geacutenie logiciel et des TI
Impact
Rocircle du deacuteveloppeur minimiseacute puisqursquoil nrsquointerpregravete plus le modegravele les regravegles de transformation srsquoen chargent
Modegraveles exportables drsquoune plateforme agrave un autre
Plus de 100 articles de recherche sur IEEE entre 2008 et 2009
Maishellip
GTI515 Automne 2013 JF Couturier 60
Deacutepartement de geacutenie logiciel et des TI
Impact
Est-ce applicable au monde agile
Le cycle de modeacutelisation est-il compatible avec le deacuteveloppement iteacuteratif
Est-ce qursquoil y a suffisamment de ressources hautement qualifieacutees pour reacutealiser ce type de projet
Pouvez-vous les former Pouvez-vous les conserver
Produire 80 du code et vous laisser les derniers 20 plus difficileshellip
Comment inteacutegrer les tests
GTI515 Automne 2013 JF Couturier 61
Scott Ambler Enterprise Unified Process p 191
Deacutepartement de geacutenie logiciel et des TI
Impact
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 62
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 63
Domaine
Exigences
Analyse
Conception
Reacutealisation
MDA
PIM
PSM
Modegravele des Processus drsquoaffaires
Modegravele drsquoanalyse du systegraveme
CIM
Modegravele des Cas drsquoutilisation
Modegravele de conception du systegraveme
Les modegraveles du cycle de deacuteveloppement de logiciels
Code
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 64
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 65
Deacutepartement de geacutenie logiciel et des TI
Exemple
GTI515 Automne 2013 JF Couturier 66
httpwwwibmcomdeveloperworksrationallibrary3100html
Deacutepartement de geacutenie logiciel et des TI
Ressources
Site de lOMG MDA Article drsquoIBM sur MDA Discussion sur MDA Wiki MDA Wiki QVT
GTI515 Automne 2013 JF Couturier 67
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 68
Laboratoire 1
Choix du sujet Validation de la porteacutee
Suffisamment long Plusieurs interactions humaines machines Reacutealisable dans une session
Chargeacute de laboratoire Oleg Litvinski Premier laboratoire lundi 7 mai
Deacutepartement de geacutenie logiciel et des TI
Le document de vision (RUP)
Une base de discussion et drsquoaccord parmi les intervenants du projet
Une description de lrsquoapplication en geacuteneacuteral incluant la description du marcheacute cible les clients les utilisateurs du systegraveme les problegravemes agrave reacutesoudre et les caracteacuteristiques de lrsquoapplication
GTI515 Automne 2013 JF Couturier 69
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 70
Requirements Management with Use Cases v20010300
Copyright copy 1998 2001 Rational Software all rights reserved
2
Problem
Solution Space
Problem Space
Needs
Features
SoftwareRequirements
Test Procedures Design User
Docs
The The Product Product To Be To Be BuiltBuilt
Traceability
Deacutepartement de geacutenie logiciel et des TI
Exemples de caracteacuteristiques (feature)
Domaine drsquoapplication Exemple de caracteacuteristique
Systegraveme de commande drsquoascenseur
Commande manuelle des portes durant une urgence de feu
Systegraveme de commande drsquoinventaire
Fournir un statut reacutecent de tous les items reacutepertorieacutes
Systegraveme de suivi de deacutefauts Fournir des laquo donneacutees raquo sur les tendances pour eacutevaluer la
qualiteacute
Systegraveme de paie Rapports par cateacutegories des deacuteductions remis agrave lrsquoimpocirct
Systegraveme de commande drsquoarmes
Minimum de deux confirmations indeacutependantes drsquoautorisation
drsquoattaque exigeacutee
GTI515 Automne 2013 JF Couturier 71
Deacutepartement de geacutenie logiciel et des TI
Niveau de deacutetail des caracteacuteristiques Pour tout nouveau systegraveme ou pour
une ameacutelioration majeure agrave un systegraveme existant il est recommandeacute de garder un niveau drsquoabstraction assez eacuteleveacute de sorte agrave avoir un maximum de caracteacuteristiques compris entre 25-99 et de preacutefeacuterence moins de 50
GTI515 Automne 2013 JF Couturier 72
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Statut Suit le progregraves
Exemples Proposeacute approuveacute incorporeacute etc
PrioriteacuteBeacuteneacutefice
Les caracteacuteristiques ne sont pas agrave prioriteacutes eacutegales ou geacutenegraverent des beacuteneacutefices eacutegaux
Exemple critiques importantes optionnelle
Effort Estimation du nombre de personnessemaines lignes de code points de fonction COSMIC_FFP
Risque La probabiliteacute que la caracteacuteristique aille causer un eacuteveacutenement indeacutesirable tel que le deacutepassement du budget ou des deacutelais ou mecircme lrsquoannulation du projet
GTI515 Automne 2013 JF Couturier 73
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Stabiliteacute La probabiliteacute que la caracteacuteristique elle-mecircme ou sa compreacutehension par lrsquoeacutequipe de deacuteveloppement changera
Mise en application
Documenter la version preacutevue pour laquelle la caracteacuteristique sera incorporeacutee
Assigneacutee agrave Deacutesigner lrsquoeacutequipe responsable de la caracteacuteristique
Raison Lrsquoorigine de la requecircte de la caracteacuteristique
GTI515 Automne 2013 JF Couturier 74
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 75
Deacutepartement de geacutenie logiciel et des TI
Reacutedaction du document de vision une description concise de tout ce qui est important au
produit ou agrave lrsquoapplication eacutecrit avec un niveau de deacutetails dans un langage lisible et
compreacutehensible par les intervenants du projet
Document de 15 agrave 20 pages
GTI515 Automne 2013 JF Couturier 76
Deacutepartement de geacutenie logiciel et des TI
Exemple le cas ACS
GTI515 Automne 2013 JF Couturier 77
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 78
Deacutepartement de geacutenie logiciel et des TI
Exemple de problegravemesle cas ACS
Controcircle drsquoune large gamme de mateacuteriels
Utilisation compliqueacutee Difficulteacutes de programmation Disponibiliteacute du mateacuteriel Risque de mauvaise utilisation
GTI515 Automne 2013 JF Couturier 79
Deacutepartement de geacutenie logiciel et des TI
Exemple de besoinsle cas ACS
AutomatiserLa distribution de fertilisantLa distribution de nourritureLa dureacutee de lrsquoeacuteclairage
Commander lrsquoopeacuteration des appareils Reacuteguler
le niveau et la dureteacute de lrsquoeauLa tempeacuterature
GTI515 Automne 2013 JF Couturier 80
Deacutepartement de geacutenie logiciel et des TI
Exemple de caracteacuteristiquesle cas ACS
Deacutemarrage automatique du systegraveme Programmation conserveacutee en cas de
panne drsquoalimentation Deacutetection automatique des modules Facile agrave programmer et agrave utiliser
Exigence non fonctionnelle
GTI515 Automne 2013 JF Couturier 81
Deacutepartement de geacutenie logiciel et des TI
Critegraveres drsquoeacutevaluation
Respect de lrsquoesprit du document
En tant qursquointervenant externe est-ce que je comprends bien
Respect de la forme du gabarit
Qualiteacute du franccedilais
Document de calibre professionnel que lrsquoon pourrait remettre agrave un dirigeant
GTI515 Automne 2013 JF Couturier 82
Deacutepartement de geacutenie logiciel et des TI
Grille drsquoeacutevaluation (sur 100)
Agrave venirhellip
GTI515 Automne 2013 JF Couturier 83
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 84
Prochain cours
La modeacutelisation des processus drsquoaffaires Le diagramme drsquoactiviteacute Le diagnostic des processus drsquoaffaires existant
Lectures Lrsquoutilisation drsquoUML Chapitre sur les diagrammes drsquoactiviteacutes dans Larman Lecture sur MDA Voir site Web du cours
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 85
Questions
- Systegravemes drsquoinformation dans les entreprises (GTI515)
- Plan du cours 1
- Qui suis-je JF Couturier
- Qui suis-je Eacutetudiant(e)
- Plan du cours 1 (2)
- Objectifs du programme
- Ingeacutenieur
- Programme GTI
- Geacutenie des TI
- Cours de speacutecialiteacutes GTI
- Objectif du cours
- Vue drsquoensemble du cours
- Lectures et reacutefeacuterences
- Regravegles du jeu
- QUIZ
- Plan du cours 1 (3)
- Plan de cours
- Laboratoires ndash GTI515
- Peacutenaliteacutes de retard
- Plagiat
- Plan du cours 1 (4)
- Les tendances dans le deacuteveloppement des systegravemes drsquoinformation
- UML - Historique
- Pourquoi modeacuteliser
- La modeacutelisation dans les entreprises
- Quelques chiffres
- Quelques chiffres (2)
- Quelques chiffres (3)
- Quelques chiffres (4)
- Quelques chiffres (5)
- Et maintenant
- Et maintenant (2)
- Finalementhellip
- Reacuteussite Eacutechec
- Rappel
- Industrialisation
- Industrialisation (2)
- Slide 39
- Slide 40
- Usines logicielles (S Factory)
- Usines logicielles (S Factory) (2)
- Usines logicielles (S Factory) (3)
- Usines logicielles (S Factory) (4)
- Usines logicielles
- Domain Specific Langage
- BuzzhellipMDA MDD MDE
- Exemple
- Model Driven Architecture
- Model Driven Architecture (2)
- Model Driven Architecture (3)
- Model Driven Architecture (4)
- Model Driven Architecture (5)
- Concept principal de MDA
- CIM PIM PSM Code
- Les diffeacuterentes eacutetapes
- MDA et Gartner
- Eacutetude de cas
- Impact
- Impact (2)
- Impact (3)
- Slide 63
- Slide 64
- Slide 65
- Exemple (2)
- Ressources
- Laboratoire 1
- Le document de vision (RUP)
- Slide 70
- Exemples de caracteacuteristiques (feature)
- Niveau de deacutetail des caracteacuteristiques
- Attributs des caracteacuteristiques
- Attributs des caracteacuteristiques
- Slide 75
- Reacutedaction du document de vision
- Exemple le cas ACS
- Slide 78
- Exemple de problegravemes le cas ACS
- Exemple de besoins le cas ACS
- Exemple de caracteacuteristiques le cas ACS
- Critegraveres drsquoeacutevaluation
- Grille drsquoeacutevaluation (sur 100)
- Prochain cours
- Questions
-
Deacutepartement de geacutenie logiciel et des TI
La modeacutelisation dans les entreprises
Une perte de temps pour les non-informaticiens et mecircme les informaticiens
Une eacutevolution ineacuteluctable avec les nouveaux outils
Modeacuteliser = precirccher dans le deacutesert Cela deacutepend de la culture de votre deacutepartement
GTI515 Automne 2013 JF Couturier 26
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
256 milliards en projet logiciel aux US16 sont compleacuteteacutes en temps et dans
les coucircts
31 sont annuleacutes (81G$)
53 deacutepassent le budget preacutevu
42 seulement sont livreacutes avec les exigences initiales
GTI515 Automne 2013 JF Couturier 27
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
GTI515 Automne 2013 JF Couturier 28
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
GTI515 Automne 2013 JF Couturier 29
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
GTI515 Automne 2013 JF Couturier 30
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
Une grande proportion de projets TI eacutechouent PourquoiPlusieurs facteurs
Les mauvaises exigences en font partie
Si ccedila va si mal crsquoest qursquoil y a quelque chose qursquoon ne fait pas bien Il faut se remettre en question
GTI515 Automne 2013 JF Couturier 31
Deacutepartement de geacutenie logiciel et des TI
Et maintenant
GTI515 Automne 2013 JF Couturier 32
CHAOS Summary 2009
Deacutepartement de geacutenie logiciel et des TI
Et maintenant
GTI515 Automne 2013 JF Couturier 33
Standish Group 1999
CHAOS Summary 2009
Deacutepartement de geacutenie logiciel et des TI
Finalementhellip
GTI515 Automne 2013 JF Couturier 34
Deacutepartement de geacutenie logiciel et des TI
Reacuteussite Eacutechec
Mais qursquoest-ce qursquoun projet reacuteussi Dans les temps Dans le budget Avec les fonctions preacutevues
GTI515 Automne 2013 JF Couturier 35
Deacutepartement de geacutenie logiciel et des TI
Rappel
Notre domaine est tregraves jeune (70 ans) Geacutenie de la constructionhellip5000 ans
Mais nous progressons tregraves rapidement Pourquoi le geacutenie en TI
Artisanat vs geacutenie (le pif vs la meacutethode)
Acircge du geacutenie logiciel TI - Maturiteacute
Science virtuelle vs Meacutecanique construction
Une tendancehellipDe lrsquoartisanat agrave lrsquoindustrialisation du deacuteveloppement logiciel
GTI515 Automne 2013 JF Couturier 36
Deacutepartement de geacutenie logiciel et des TI
Industrialisation
Vers le milieu du 19e siegravecle Segmenter le travail des individus pour
ne pas ecirctre deacutependant drsquoun artisan Permet une production beaucoup plus
efficace en seacuterie
GTI515 Automne 2013 JF Couturier 37
Deacutepartement de geacutenie logiciel et des TI
Industrialisation
Est-ce que le deacuteveloppement peut-ecirctre industrialiseacuteCertains disent que non que le logiciel agrave
un caractegravere trop creacuteatif
Drsquoautres pensent que les reacutecents progregraves dans le domaine permettent une eacuteventuelle industrialisation dans la production drsquoapplication
GTI515 Automne 2013 JF Couturier 38
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 39
Technologies(OO CBD Services Web SOA
XML AOP DB design patternshellip)
Ingeacutenierie dirigeacutee par les modegraveles
Usines logicielles (Microsoft)Architecture dirigeacutee par les modegraveles (OMG)
Deux applications drsquoun mecircme concept de base
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 40
Techniques de deacuteveloppement assisteacute par ordinateur (Reacutef Software Factories Greenfield J p144)
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Un modegravele tregraves deacutetailleacute beaucoup de code geacuteneacutereacute
CASE Tools (Computer-aided software engineering)
Mal adapteacute au deacuteveloppement agile qui implique souvent des solutions partielles tregraves tocirct dans le cycle de deacuteveloppement
Synchronisation difficile
Eacuteloigneacutee de la plateforme
GTI515 Automne 2013 JF Couturier 41
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Exemple Outils graphiques de modeacutelisation des classes
Plus proche de la plateforme
Code geacuteneacutereacute pour la plateforme
Plus simple
Aide geacuteneacuteralement le deacuteveloppeur agrave voir les deacutependances entre les classes
Il reste beaucoup de code agrave faire agrave la main
Penser agrave coder du SWING Java agrave la mitaine
GTI515 Automne 2013 JF Couturier 42
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Existence drsquoun framework logiciel
On se base sur le framework pour automatiser-compleacuteter la production de certains eacuteleacutements comme les eacuteleacutements graphiques
Abstraction plus eacuteleveacutee
VB6 et ses formulaires
NET Hibernate
Peu drsquoabstractions au niveau du modegravele Classe entiteacute-relation
GTI515 Automne 2013 JF Couturier 43
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Finalement il y a la possibiliteacute drsquoavoir une laquo pile raquo de modegraveles
Drsquoun modegravele agrave lrsquoautre il y a transformation vers un modegravele de plus en plus preacutecis
Approche MDA
Concept de Domain Specific Language
Pour un domaine particulier on creacutee des laquo templates raquo reacuteutilisables
Permets la contribution des experts meacutetiers
GTI515 Automne 2013 JF Couturier 44
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles
GTI515 Automne 2013 JF Couturier 45
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Domain Specific Langage
Par opposition au General purpose language comme UML C++ Java ou C
AvantagesPermets agrave un expert meacutetier de
comprendre et valider un modegravele
InconveacutenientCoucirct Formation Maintenance
GTI515 Automne 2013 JF Couturier 46
httpenwikipediaorgwikiDomain_Specific_Language
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 47
BuzzhellipMDA MDD MDE
Model Driven Architecturemarque de commerce de lrsquoOMG
Model Driven Developmentextension de MDAmarque de commerce de lrsquoOMG
Model Driven Engineeringexpression geacuteneacuterique
Deacutepartement de geacutenie logiciel et des TI
Exemple Agrave partir des speacutecifications des exigences logicielles
Lrsquoacteur saisit la commande contenant
lrsquoadresse de livraison
lrsquoadresse de facturation
Le systegraveme creacutee la commande
Lrsquoacteur saisit un deacutetail de la commande avec
le nom du produit
la quantiteacute demandeacutee
le prix du produit
Le systegraveme creacutee le deacutetail et revient agrave lrsquoeacutetape 3
Lrsquoacteur termine la commande
Le systegraveme ferme la commande
GTI515 Automne 2013 JF Couturier 48
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 49
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Un modegravele (Diagramme de classes UML)
Deacutepartement de geacutenie logiciel et des TI
Model Driven ArchitectureUn scheacutema XML
ltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gt
ltxsdschema xmlnsxsd=httpwww targetNamespace=helliprsaquo
ltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo minOccurs=ldquo0ldquo maxOccurs=ldquounboundedgt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdcomplexType name=ldquoDetailCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoprixldquo type=ldquo xsdfloatldquogt
ltxsdelement name=ldquoquantiteldquo type=ldquo xsdintldquogt
ltxsdelement name=ldquonomProduitldquo type=ldquo xsdstringldquogt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdschemarsaquo
GTI515 Automne 2013 JF Couturier 50
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 51
Des classes Java
public class Commande
private String adresseLivraison
private String adresseFacturation
private Collection detailCommande
hellip
String getAdresseLivraison()
void setAdresseLivraison(String value)
String getAdresseFacturation()
void setAdresseFacturation(String value)
public class DetailCommande
private float prix
private int quantite
private String nomProduit
float getPrix()
void setPrix(float value)
int getQuantite()
void setQuantite(int value)
String getNomProduit()
void setNomProduit(String value)
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 52
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Programmepublic class Commande
private String adresseLivraisonprivate String adresseFacturation
String getAdresseLivraison()void setAdresseLivraison(String value)
String getAdresseFacturation()void setAdresseFacturation(String value)
Scheacutema XMLltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gtltxsdschema xmlnsxsd=httpwww
targetNamespace=helliprsaquoltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo
xsdstringldquogt ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo
Modegravele UML3 repreacutesentationsdes mecircmes exigences
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
Speacutecifications de lrsquoOMG Seacuteparation de la logique meacutetier de
toute plateforme technique Speacutecifications drsquoun langage de
transformation (QVT)
GTI515 Automne 2013 JF Couturier 53
Deacutepartement de geacutenie logiciel et des TI
Concept principal de MDA
Modeacuteliser pour documenter le systegraveme
Modeacuteliser pour construire le systegraveme
GTI515 Automne 2013 JF Couturier 55
Deacutepartement de geacutenie logiciel et des TI
CIM PIM PSM Code CIM
Computing Independant Model
Modegravele du domaine logique meacutetier
PIM Platform Independant Model
Modegravele de conception UML et OCL
PSM Platform Specific Model
NET J2EE
Codehellip
GTI515 Automne 2013 JF Couturier 56
Deacutepartement de geacutenie logiciel et des TI
Les diffeacuterentes eacutetapes
GTI515 Automne 2013 JF Couturier 57
Reacutef the Zachman Framework and the OMGrsquos MDA Business Process Trends Sept 2003
Deacutepartement de geacutenie logiciel et des TI
MDA et Gartner
GTI515 Automne 2013 JF Couturier 58
Gartner Hype Cycle 2008
Deacutepartement de geacutenie logiciel et des TI
Eacutetude de cas
Lecture de la discussion sur MDA Questions
Quels sont les arguments pour
Quels sont les arguments contre
Vos commentaires sur lrsquoarticle
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 59
Deacutepartement de geacutenie logiciel et des TI
Impact
Rocircle du deacuteveloppeur minimiseacute puisqursquoil nrsquointerpregravete plus le modegravele les regravegles de transformation srsquoen chargent
Modegraveles exportables drsquoune plateforme agrave un autre
Plus de 100 articles de recherche sur IEEE entre 2008 et 2009
Maishellip
GTI515 Automne 2013 JF Couturier 60
Deacutepartement de geacutenie logiciel et des TI
Impact
Est-ce applicable au monde agile
Le cycle de modeacutelisation est-il compatible avec le deacuteveloppement iteacuteratif
Est-ce qursquoil y a suffisamment de ressources hautement qualifieacutees pour reacutealiser ce type de projet
Pouvez-vous les former Pouvez-vous les conserver
Produire 80 du code et vous laisser les derniers 20 plus difficileshellip
Comment inteacutegrer les tests
GTI515 Automne 2013 JF Couturier 61
Scott Ambler Enterprise Unified Process p 191
Deacutepartement de geacutenie logiciel et des TI
Impact
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 62
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 63
Domaine
Exigences
Analyse
Conception
Reacutealisation
MDA
PIM
PSM
Modegravele des Processus drsquoaffaires
Modegravele drsquoanalyse du systegraveme
CIM
Modegravele des Cas drsquoutilisation
Modegravele de conception du systegraveme
Les modegraveles du cycle de deacuteveloppement de logiciels
Code
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 64
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 65
Deacutepartement de geacutenie logiciel et des TI
Exemple
GTI515 Automne 2013 JF Couturier 66
httpwwwibmcomdeveloperworksrationallibrary3100html
Deacutepartement de geacutenie logiciel et des TI
Ressources
Site de lOMG MDA Article drsquoIBM sur MDA Discussion sur MDA Wiki MDA Wiki QVT
GTI515 Automne 2013 JF Couturier 67
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 68
Laboratoire 1
Choix du sujet Validation de la porteacutee
Suffisamment long Plusieurs interactions humaines machines Reacutealisable dans une session
Chargeacute de laboratoire Oleg Litvinski Premier laboratoire lundi 7 mai
Deacutepartement de geacutenie logiciel et des TI
Le document de vision (RUP)
Une base de discussion et drsquoaccord parmi les intervenants du projet
Une description de lrsquoapplication en geacuteneacuteral incluant la description du marcheacute cible les clients les utilisateurs du systegraveme les problegravemes agrave reacutesoudre et les caracteacuteristiques de lrsquoapplication
GTI515 Automne 2013 JF Couturier 69
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 70
Requirements Management with Use Cases v20010300
Copyright copy 1998 2001 Rational Software all rights reserved
2
Problem
Solution Space
Problem Space
Needs
Features
SoftwareRequirements
Test Procedures Design User
Docs
The The Product Product To Be To Be BuiltBuilt
Traceability
Deacutepartement de geacutenie logiciel et des TI
Exemples de caracteacuteristiques (feature)
Domaine drsquoapplication Exemple de caracteacuteristique
Systegraveme de commande drsquoascenseur
Commande manuelle des portes durant une urgence de feu
Systegraveme de commande drsquoinventaire
Fournir un statut reacutecent de tous les items reacutepertorieacutes
Systegraveme de suivi de deacutefauts Fournir des laquo donneacutees raquo sur les tendances pour eacutevaluer la
qualiteacute
Systegraveme de paie Rapports par cateacutegories des deacuteductions remis agrave lrsquoimpocirct
Systegraveme de commande drsquoarmes
Minimum de deux confirmations indeacutependantes drsquoautorisation
drsquoattaque exigeacutee
GTI515 Automne 2013 JF Couturier 71
Deacutepartement de geacutenie logiciel et des TI
Niveau de deacutetail des caracteacuteristiques Pour tout nouveau systegraveme ou pour
une ameacutelioration majeure agrave un systegraveme existant il est recommandeacute de garder un niveau drsquoabstraction assez eacuteleveacute de sorte agrave avoir un maximum de caracteacuteristiques compris entre 25-99 et de preacutefeacuterence moins de 50
GTI515 Automne 2013 JF Couturier 72
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Statut Suit le progregraves
Exemples Proposeacute approuveacute incorporeacute etc
PrioriteacuteBeacuteneacutefice
Les caracteacuteristiques ne sont pas agrave prioriteacutes eacutegales ou geacutenegraverent des beacuteneacutefices eacutegaux
Exemple critiques importantes optionnelle
Effort Estimation du nombre de personnessemaines lignes de code points de fonction COSMIC_FFP
Risque La probabiliteacute que la caracteacuteristique aille causer un eacuteveacutenement indeacutesirable tel que le deacutepassement du budget ou des deacutelais ou mecircme lrsquoannulation du projet
GTI515 Automne 2013 JF Couturier 73
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Stabiliteacute La probabiliteacute que la caracteacuteristique elle-mecircme ou sa compreacutehension par lrsquoeacutequipe de deacuteveloppement changera
Mise en application
Documenter la version preacutevue pour laquelle la caracteacuteristique sera incorporeacutee
Assigneacutee agrave Deacutesigner lrsquoeacutequipe responsable de la caracteacuteristique
Raison Lrsquoorigine de la requecircte de la caracteacuteristique
GTI515 Automne 2013 JF Couturier 74
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 75
Deacutepartement de geacutenie logiciel et des TI
Reacutedaction du document de vision une description concise de tout ce qui est important au
produit ou agrave lrsquoapplication eacutecrit avec un niveau de deacutetails dans un langage lisible et
compreacutehensible par les intervenants du projet
Document de 15 agrave 20 pages
GTI515 Automne 2013 JF Couturier 76
Deacutepartement de geacutenie logiciel et des TI
Exemple le cas ACS
GTI515 Automne 2013 JF Couturier 77
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 78
Deacutepartement de geacutenie logiciel et des TI
Exemple de problegravemesle cas ACS
Controcircle drsquoune large gamme de mateacuteriels
Utilisation compliqueacutee Difficulteacutes de programmation Disponibiliteacute du mateacuteriel Risque de mauvaise utilisation
GTI515 Automne 2013 JF Couturier 79
Deacutepartement de geacutenie logiciel et des TI
Exemple de besoinsle cas ACS
AutomatiserLa distribution de fertilisantLa distribution de nourritureLa dureacutee de lrsquoeacuteclairage
Commander lrsquoopeacuteration des appareils Reacuteguler
le niveau et la dureteacute de lrsquoeauLa tempeacuterature
GTI515 Automne 2013 JF Couturier 80
Deacutepartement de geacutenie logiciel et des TI
Exemple de caracteacuteristiquesle cas ACS
Deacutemarrage automatique du systegraveme Programmation conserveacutee en cas de
panne drsquoalimentation Deacutetection automatique des modules Facile agrave programmer et agrave utiliser
Exigence non fonctionnelle
GTI515 Automne 2013 JF Couturier 81
Deacutepartement de geacutenie logiciel et des TI
Critegraveres drsquoeacutevaluation
Respect de lrsquoesprit du document
En tant qursquointervenant externe est-ce que je comprends bien
Respect de la forme du gabarit
Qualiteacute du franccedilais
Document de calibre professionnel que lrsquoon pourrait remettre agrave un dirigeant
GTI515 Automne 2013 JF Couturier 82
Deacutepartement de geacutenie logiciel et des TI
Grille drsquoeacutevaluation (sur 100)
Agrave venirhellip
GTI515 Automne 2013 JF Couturier 83
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 84
Prochain cours
La modeacutelisation des processus drsquoaffaires Le diagramme drsquoactiviteacute Le diagnostic des processus drsquoaffaires existant
Lectures Lrsquoutilisation drsquoUML Chapitre sur les diagrammes drsquoactiviteacutes dans Larman Lecture sur MDA Voir site Web du cours
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 85
Questions
- Systegravemes drsquoinformation dans les entreprises (GTI515)
- Plan du cours 1
- Qui suis-je JF Couturier
- Qui suis-je Eacutetudiant(e)
- Plan du cours 1 (2)
- Objectifs du programme
- Ingeacutenieur
- Programme GTI
- Geacutenie des TI
- Cours de speacutecialiteacutes GTI
- Objectif du cours
- Vue drsquoensemble du cours
- Lectures et reacutefeacuterences
- Regravegles du jeu
- QUIZ
- Plan du cours 1 (3)
- Plan de cours
- Laboratoires ndash GTI515
- Peacutenaliteacutes de retard
- Plagiat
- Plan du cours 1 (4)
- Les tendances dans le deacuteveloppement des systegravemes drsquoinformation
- UML - Historique
- Pourquoi modeacuteliser
- La modeacutelisation dans les entreprises
- Quelques chiffres
- Quelques chiffres (2)
- Quelques chiffres (3)
- Quelques chiffres (4)
- Quelques chiffres (5)
- Et maintenant
- Et maintenant (2)
- Finalementhellip
- Reacuteussite Eacutechec
- Rappel
- Industrialisation
- Industrialisation (2)
- Slide 39
- Slide 40
- Usines logicielles (S Factory)
- Usines logicielles (S Factory) (2)
- Usines logicielles (S Factory) (3)
- Usines logicielles (S Factory) (4)
- Usines logicielles
- Domain Specific Langage
- BuzzhellipMDA MDD MDE
- Exemple
- Model Driven Architecture
- Model Driven Architecture (2)
- Model Driven Architecture (3)
- Model Driven Architecture (4)
- Model Driven Architecture (5)
- Concept principal de MDA
- CIM PIM PSM Code
- Les diffeacuterentes eacutetapes
- MDA et Gartner
- Eacutetude de cas
- Impact
- Impact (2)
- Impact (3)
- Slide 63
- Slide 64
- Slide 65
- Exemple (2)
- Ressources
- Laboratoire 1
- Le document de vision (RUP)
- Slide 70
- Exemples de caracteacuteristiques (feature)
- Niveau de deacutetail des caracteacuteristiques
- Attributs des caracteacuteristiques
- Attributs des caracteacuteristiques
- Slide 75
- Reacutedaction du document de vision
- Exemple le cas ACS
- Slide 78
- Exemple de problegravemes le cas ACS
- Exemple de besoins le cas ACS
- Exemple de caracteacuteristiques le cas ACS
- Critegraveres drsquoeacutevaluation
- Grille drsquoeacutevaluation (sur 100)
- Prochain cours
- Questions
-
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
256 milliards en projet logiciel aux US16 sont compleacuteteacutes en temps et dans
les coucircts
31 sont annuleacutes (81G$)
53 deacutepassent le budget preacutevu
42 seulement sont livreacutes avec les exigences initiales
GTI515 Automne 2013 JF Couturier 27
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
GTI515 Automne 2013 JF Couturier 28
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
GTI515 Automne 2013 JF Couturier 29
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
GTI515 Automne 2013 JF Couturier 30
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
Une grande proportion de projets TI eacutechouent PourquoiPlusieurs facteurs
Les mauvaises exigences en font partie
Si ccedila va si mal crsquoest qursquoil y a quelque chose qursquoon ne fait pas bien Il faut se remettre en question
GTI515 Automne 2013 JF Couturier 31
Deacutepartement de geacutenie logiciel et des TI
Et maintenant
GTI515 Automne 2013 JF Couturier 32
CHAOS Summary 2009
Deacutepartement de geacutenie logiciel et des TI
Et maintenant
GTI515 Automne 2013 JF Couturier 33
Standish Group 1999
CHAOS Summary 2009
Deacutepartement de geacutenie logiciel et des TI
Finalementhellip
GTI515 Automne 2013 JF Couturier 34
Deacutepartement de geacutenie logiciel et des TI
Reacuteussite Eacutechec
Mais qursquoest-ce qursquoun projet reacuteussi Dans les temps Dans le budget Avec les fonctions preacutevues
GTI515 Automne 2013 JF Couturier 35
Deacutepartement de geacutenie logiciel et des TI
Rappel
Notre domaine est tregraves jeune (70 ans) Geacutenie de la constructionhellip5000 ans
Mais nous progressons tregraves rapidement Pourquoi le geacutenie en TI
Artisanat vs geacutenie (le pif vs la meacutethode)
Acircge du geacutenie logiciel TI - Maturiteacute
Science virtuelle vs Meacutecanique construction
Une tendancehellipDe lrsquoartisanat agrave lrsquoindustrialisation du deacuteveloppement logiciel
GTI515 Automne 2013 JF Couturier 36
Deacutepartement de geacutenie logiciel et des TI
Industrialisation
Vers le milieu du 19e siegravecle Segmenter le travail des individus pour
ne pas ecirctre deacutependant drsquoun artisan Permet une production beaucoup plus
efficace en seacuterie
GTI515 Automne 2013 JF Couturier 37
Deacutepartement de geacutenie logiciel et des TI
Industrialisation
Est-ce que le deacuteveloppement peut-ecirctre industrialiseacuteCertains disent que non que le logiciel agrave
un caractegravere trop creacuteatif
Drsquoautres pensent que les reacutecents progregraves dans le domaine permettent une eacuteventuelle industrialisation dans la production drsquoapplication
GTI515 Automne 2013 JF Couturier 38
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 39
Technologies(OO CBD Services Web SOA
XML AOP DB design patternshellip)
Ingeacutenierie dirigeacutee par les modegraveles
Usines logicielles (Microsoft)Architecture dirigeacutee par les modegraveles (OMG)
Deux applications drsquoun mecircme concept de base
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 40
Techniques de deacuteveloppement assisteacute par ordinateur (Reacutef Software Factories Greenfield J p144)
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Un modegravele tregraves deacutetailleacute beaucoup de code geacuteneacutereacute
CASE Tools (Computer-aided software engineering)
Mal adapteacute au deacuteveloppement agile qui implique souvent des solutions partielles tregraves tocirct dans le cycle de deacuteveloppement
Synchronisation difficile
Eacuteloigneacutee de la plateforme
GTI515 Automne 2013 JF Couturier 41
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Exemple Outils graphiques de modeacutelisation des classes
Plus proche de la plateforme
Code geacuteneacutereacute pour la plateforme
Plus simple
Aide geacuteneacuteralement le deacuteveloppeur agrave voir les deacutependances entre les classes
Il reste beaucoup de code agrave faire agrave la main
Penser agrave coder du SWING Java agrave la mitaine
GTI515 Automne 2013 JF Couturier 42
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Existence drsquoun framework logiciel
On se base sur le framework pour automatiser-compleacuteter la production de certains eacuteleacutements comme les eacuteleacutements graphiques
Abstraction plus eacuteleveacutee
VB6 et ses formulaires
NET Hibernate
Peu drsquoabstractions au niveau du modegravele Classe entiteacute-relation
GTI515 Automne 2013 JF Couturier 43
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Finalement il y a la possibiliteacute drsquoavoir une laquo pile raquo de modegraveles
Drsquoun modegravele agrave lrsquoautre il y a transformation vers un modegravele de plus en plus preacutecis
Approche MDA
Concept de Domain Specific Language
Pour un domaine particulier on creacutee des laquo templates raquo reacuteutilisables
Permets la contribution des experts meacutetiers
GTI515 Automne 2013 JF Couturier 44
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles
GTI515 Automne 2013 JF Couturier 45
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Domain Specific Langage
Par opposition au General purpose language comme UML C++ Java ou C
AvantagesPermets agrave un expert meacutetier de
comprendre et valider un modegravele
InconveacutenientCoucirct Formation Maintenance
GTI515 Automne 2013 JF Couturier 46
httpenwikipediaorgwikiDomain_Specific_Language
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 47
BuzzhellipMDA MDD MDE
Model Driven Architecturemarque de commerce de lrsquoOMG
Model Driven Developmentextension de MDAmarque de commerce de lrsquoOMG
Model Driven Engineeringexpression geacuteneacuterique
Deacutepartement de geacutenie logiciel et des TI
Exemple Agrave partir des speacutecifications des exigences logicielles
Lrsquoacteur saisit la commande contenant
lrsquoadresse de livraison
lrsquoadresse de facturation
Le systegraveme creacutee la commande
Lrsquoacteur saisit un deacutetail de la commande avec
le nom du produit
la quantiteacute demandeacutee
le prix du produit
Le systegraveme creacutee le deacutetail et revient agrave lrsquoeacutetape 3
Lrsquoacteur termine la commande
Le systegraveme ferme la commande
GTI515 Automne 2013 JF Couturier 48
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 49
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Un modegravele (Diagramme de classes UML)
Deacutepartement de geacutenie logiciel et des TI
Model Driven ArchitectureUn scheacutema XML
ltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gt
ltxsdschema xmlnsxsd=httpwww targetNamespace=helliprsaquo
ltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo minOccurs=ldquo0ldquo maxOccurs=ldquounboundedgt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdcomplexType name=ldquoDetailCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoprixldquo type=ldquo xsdfloatldquogt
ltxsdelement name=ldquoquantiteldquo type=ldquo xsdintldquogt
ltxsdelement name=ldquonomProduitldquo type=ldquo xsdstringldquogt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdschemarsaquo
GTI515 Automne 2013 JF Couturier 50
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 51
Des classes Java
public class Commande
private String adresseLivraison
private String adresseFacturation
private Collection detailCommande
hellip
String getAdresseLivraison()
void setAdresseLivraison(String value)
String getAdresseFacturation()
void setAdresseFacturation(String value)
public class DetailCommande
private float prix
private int quantite
private String nomProduit
float getPrix()
void setPrix(float value)
int getQuantite()
void setQuantite(int value)
String getNomProduit()
void setNomProduit(String value)
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 52
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Programmepublic class Commande
private String adresseLivraisonprivate String adresseFacturation
String getAdresseLivraison()void setAdresseLivraison(String value)
String getAdresseFacturation()void setAdresseFacturation(String value)
Scheacutema XMLltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gtltxsdschema xmlnsxsd=httpwww
targetNamespace=helliprsaquoltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo
xsdstringldquogt ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo
Modegravele UML3 repreacutesentationsdes mecircmes exigences
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
Speacutecifications de lrsquoOMG Seacuteparation de la logique meacutetier de
toute plateforme technique Speacutecifications drsquoun langage de
transformation (QVT)
GTI515 Automne 2013 JF Couturier 53
Deacutepartement de geacutenie logiciel et des TI
Concept principal de MDA
Modeacuteliser pour documenter le systegraveme
Modeacuteliser pour construire le systegraveme
GTI515 Automne 2013 JF Couturier 55
Deacutepartement de geacutenie logiciel et des TI
CIM PIM PSM Code CIM
Computing Independant Model
Modegravele du domaine logique meacutetier
PIM Platform Independant Model
Modegravele de conception UML et OCL
PSM Platform Specific Model
NET J2EE
Codehellip
GTI515 Automne 2013 JF Couturier 56
Deacutepartement de geacutenie logiciel et des TI
Les diffeacuterentes eacutetapes
GTI515 Automne 2013 JF Couturier 57
Reacutef the Zachman Framework and the OMGrsquos MDA Business Process Trends Sept 2003
Deacutepartement de geacutenie logiciel et des TI
MDA et Gartner
GTI515 Automne 2013 JF Couturier 58
Gartner Hype Cycle 2008
Deacutepartement de geacutenie logiciel et des TI
Eacutetude de cas
Lecture de la discussion sur MDA Questions
Quels sont les arguments pour
Quels sont les arguments contre
Vos commentaires sur lrsquoarticle
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 59
Deacutepartement de geacutenie logiciel et des TI
Impact
Rocircle du deacuteveloppeur minimiseacute puisqursquoil nrsquointerpregravete plus le modegravele les regravegles de transformation srsquoen chargent
Modegraveles exportables drsquoune plateforme agrave un autre
Plus de 100 articles de recherche sur IEEE entre 2008 et 2009
Maishellip
GTI515 Automne 2013 JF Couturier 60
Deacutepartement de geacutenie logiciel et des TI
Impact
Est-ce applicable au monde agile
Le cycle de modeacutelisation est-il compatible avec le deacuteveloppement iteacuteratif
Est-ce qursquoil y a suffisamment de ressources hautement qualifieacutees pour reacutealiser ce type de projet
Pouvez-vous les former Pouvez-vous les conserver
Produire 80 du code et vous laisser les derniers 20 plus difficileshellip
Comment inteacutegrer les tests
GTI515 Automne 2013 JF Couturier 61
Scott Ambler Enterprise Unified Process p 191
Deacutepartement de geacutenie logiciel et des TI
Impact
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 62
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 63
Domaine
Exigences
Analyse
Conception
Reacutealisation
MDA
PIM
PSM
Modegravele des Processus drsquoaffaires
Modegravele drsquoanalyse du systegraveme
CIM
Modegravele des Cas drsquoutilisation
Modegravele de conception du systegraveme
Les modegraveles du cycle de deacuteveloppement de logiciels
Code
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 64
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 65
Deacutepartement de geacutenie logiciel et des TI
Exemple
GTI515 Automne 2013 JF Couturier 66
httpwwwibmcomdeveloperworksrationallibrary3100html
Deacutepartement de geacutenie logiciel et des TI
Ressources
Site de lOMG MDA Article drsquoIBM sur MDA Discussion sur MDA Wiki MDA Wiki QVT
GTI515 Automne 2013 JF Couturier 67
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 68
Laboratoire 1
Choix du sujet Validation de la porteacutee
Suffisamment long Plusieurs interactions humaines machines Reacutealisable dans une session
Chargeacute de laboratoire Oleg Litvinski Premier laboratoire lundi 7 mai
Deacutepartement de geacutenie logiciel et des TI
Le document de vision (RUP)
Une base de discussion et drsquoaccord parmi les intervenants du projet
Une description de lrsquoapplication en geacuteneacuteral incluant la description du marcheacute cible les clients les utilisateurs du systegraveme les problegravemes agrave reacutesoudre et les caracteacuteristiques de lrsquoapplication
GTI515 Automne 2013 JF Couturier 69
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 70
Requirements Management with Use Cases v20010300
Copyright copy 1998 2001 Rational Software all rights reserved
2
Problem
Solution Space
Problem Space
Needs
Features
SoftwareRequirements
Test Procedures Design User
Docs
The The Product Product To Be To Be BuiltBuilt
Traceability
Deacutepartement de geacutenie logiciel et des TI
Exemples de caracteacuteristiques (feature)
Domaine drsquoapplication Exemple de caracteacuteristique
Systegraveme de commande drsquoascenseur
Commande manuelle des portes durant une urgence de feu
Systegraveme de commande drsquoinventaire
Fournir un statut reacutecent de tous les items reacutepertorieacutes
Systegraveme de suivi de deacutefauts Fournir des laquo donneacutees raquo sur les tendances pour eacutevaluer la
qualiteacute
Systegraveme de paie Rapports par cateacutegories des deacuteductions remis agrave lrsquoimpocirct
Systegraveme de commande drsquoarmes
Minimum de deux confirmations indeacutependantes drsquoautorisation
drsquoattaque exigeacutee
GTI515 Automne 2013 JF Couturier 71
Deacutepartement de geacutenie logiciel et des TI
Niveau de deacutetail des caracteacuteristiques Pour tout nouveau systegraveme ou pour
une ameacutelioration majeure agrave un systegraveme existant il est recommandeacute de garder un niveau drsquoabstraction assez eacuteleveacute de sorte agrave avoir un maximum de caracteacuteristiques compris entre 25-99 et de preacutefeacuterence moins de 50
GTI515 Automne 2013 JF Couturier 72
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Statut Suit le progregraves
Exemples Proposeacute approuveacute incorporeacute etc
PrioriteacuteBeacuteneacutefice
Les caracteacuteristiques ne sont pas agrave prioriteacutes eacutegales ou geacutenegraverent des beacuteneacutefices eacutegaux
Exemple critiques importantes optionnelle
Effort Estimation du nombre de personnessemaines lignes de code points de fonction COSMIC_FFP
Risque La probabiliteacute que la caracteacuteristique aille causer un eacuteveacutenement indeacutesirable tel que le deacutepassement du budget ou des deacutelais ou mecircme lrsquoannulation du projet
GTI515 Automne 2013 JF Couturier 73
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Stabiliteacute La probabiliteacute que la caracteacuteristique elle-mecircme ou sa compreacutehension par lrsquoeacutequipe de deacuteveloppement changera
Mise en application
Documenter la version preacutevue pour laquelle la caracteacuteristique sera incorporeacutee
Assigneacutee agrave Deacutesigner lrsquoeacutequipe responsable de la caracteacuteristique
Raison Lrsquoorigine de la requecircte de la caracteacuteristique
GTI515 Automne 2013 JF Couturier 74
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 75
Deacutepartement de geacutenie logiciel et des TI
Reacutedaction du document de vision une description concise de tout ce qui est important au
produit ou agrave lrsquoapplication eacutecrit avec un niveau de deacutetails dans un langage lisible et
compreacutehensible par les intervenants du projet
Document de 15 agrave 20 pages
GTI515 Automne 2013 JF Couturier 76
Deacutepartement de geacutenie logiciel et des TI
Exemple le cas ACS
GTI515 Automne 2013 JF Couturier 77
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 78
Deacutepartement de geacutenie logiciel et des TI
Exemple de problegravemesle cas ACS
Controcircle drsquoune large gamme de mateacuteriels
Utilisation compliqueacutee Difficulteacutes de programmation Disponibiliteacute du mateacuteriel Risque de mauvaise utilisation
GTI515 Automne 2013 JF Couturier 79
Deacutepartement de geacutenie logiciel et des TI
Exemple de besoinsle cas ACS
AutomatiserLa distribution de fertilisantLa distribution de nourritureLa dureacutee de lrsquoeacuteclairage
Commander lrsquoopeacuteration des appareils Reacuteguler
le niveau et la dureteacute de lrsquoeauLa tempeacuterature
GTI515 Automne 2013 JF Couturier 80
Deacutepartement de geacutenie logiciel et des TI
Exemple de caracteacuteristiquesle cas ACS
Deacutemarrage automatique du systegraveme Programmation conserveacutee en cas de
panne drsquoalimentation Deacutetection automatique des modules Facile agrave programmer et agrave utiliser
Exigence non fonctionnelle
GTI515 Automne 2013 JF Couturier 81
Deacutepartement de geacutenie logiciel et des TI
Critegraveres drsquoeacutevaluation
Respect de lrsquoesprit du document
En tant qursquointervenant externe est-ce que je comprends bien
Respect de la forme du gabarit
Qualiteacute du franccedilais
Document de calibre professionnel que lrsquoon pourrait remettre agrave un dirigeant
GTI515 Automne 2013 JF Couturier 82
Deacutepartement de geacutenie logiciel et des TI
Grille drsquoeacutevaluation (sur 100)
Agrave venirhellip
GTI515 Automne 2013 JF Couturier 83
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 84
Prochain cours
La modeacutelisation des processus drsquoaffaires Le diagramme drsquoactiviteacute Le diagnostic des processus drsquoaffaires existant
Lectures Lrsquoutilisation drsquoUML Chapitre sur les diagrammes drsquoactiviteacutes dans Larman Lecture sur MDA Voir site Web du cours
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 85
Questions
- Systegravemes drsquoinformation dans les entreprises (GTI515)
- Plan du cours 1
- Qui suis-je JF Couturier
- Qui suis-je Eacutetudiant(e)
- Plan du cours 1 (2)
- Objectifs du programme
- Ingeacutenieur
- Programme GTI
- Geacutenie des TI
- Cours de speacutecialiteacutes GTI
- Objectif du cours
- Vue drsquoensemble du cours
- Lectures et reacutefeacuterences
- Regravegles du jeu
- QUIZ
- Plan du cours 1 (3)
- Plan de cours
- Laboratoires ndash GTI515
- Peacutenaliteacutes de retard
- Plagiat
- Plan du cours 1 (4)
- Les tendances dans le deacuteveloppement des systegravemes drsquoinformation
- UML - Historique
- Pourquoi modeacuteliser
- La modeacutelisation dans les entreprises
- Quelques chiffres
- Quelques chiffres (2)
- Quelques chiffres (3)
- Quelques chiffres (4)
- Quelques chiffres (5)
- Et maintenant
- Et maintenant (2)
- Finalementhellip
- Reacuteussite Eacutechec
- Rappel
- Industrialisation
- Industrialisation (2)
- Slide 39
- Slide 40
- Usines logicielles (S Factory)
- Usines logicielles (S Factory) (2)
- Usines logicielles (S Factory) (3)
- Usines logicielles (S Factory) (4)
- Usines logicielles
- Domain Specific Langage
- BuzzhellipMDA MDD MDE
- Exemple
- Model Driven Architecture
- Model Driven Architecture (2)
- Model Driven Architecture (3)
- Model Driven Architecture (4)
- Model Driven Architecture (5)
- Concept principal de MDA
- CIM PIM PSM Code
- Les diffeacuterentes eacutetapes
- MDA et Gartner
- Eacutetude de cas
- Impact
- Impact (2)
- Impact (3)
- Slide 63
- Slide 64
- Slide 65
- Exemple (2)
- Ressources
- Laboratoire 1
- Le document de vision (RUP)
- Slide 70
- Exemples de caracteacuteristiques (feature)
- Niveau de deacutetail des caracteacuteristiques
- Attributs des caracteacuteristiques
- Attributs des caracteacuteristiques
- Slide 75
- Reacutedaction du document de vision
- Exemple le cas ACS
- Slide 78
- Exemple de problegravemes le cas ACS
- Exemple de besoins le cas ACS
- Exemple de caracteacuteristiques le cas ACS
- Critegraveres drsquoeacutevaluation
- Grille drsquoeacutevaluation (sur 100)
- Prochain cours
- Questions
-
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
GTI515 Automne 2013 JF Couturier 28
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
GTI515 Automne 2013 JF Couturier 29
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
GTI515 Automne 2013 JF Couturier 30
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
Une grande proportion de projets TI eacutechouent PourquoiPlusieurs facteurs
Les mauvaises exigences en font partie
Si ccedila va si mal crsquoest qursquoil y a quelque chose qursquoon ne fait pas bien Il faut se remettre en question
GTI515 Automne 2013 JF Couturier 31
Deacutepartement de geacutenie logiciel et des TI
Et maintenant
GTI515 Automne 2013 JF Couturier 32
CHAOS Summary 2009
Deacutepartement de geacutenie logiciel et des TI
Et maintenant
GTI515 Automne 2013 JF Couturier 33
Standish Group 1999
CHAOS Summary 2009
Deacutepartement de geacutenie logiciel et des TI
Finalementhellip
GTI515 Automne 2013 JF Couturier 34
Deacutepartement de geacutenie logiciel et des TI
Reacuteussite Eacutechec
Mais qursquoest-ce qursquoun projet reacuteussi Dans les temps Dans le budget Avec les fonctions preacutevues
GTI515 Automne 2013 JF Couturier 35
Deacutepartement de geacutenie logiciel et des TI
Rappel
Notre domaine est tregraves jeune (70 ans) Geacutenie de la constructionhellip5000 ans
Mais nous progressons tregraves rapidement Pourquoi le geacutenie en TI
Artisanat vs geacutenie (le pif vs la meacutethode)
Acircge du geacutenie logiciel TI - Maturiteacute
Science virtuelle vs Meacutecanique construction
Une tendancehellipDe lrsquoartisanat agrave lrsquoindustrialisation du deacuteveloppement logiciel
GTI515 Automne 2013 JF Couturier 36
Deacutepartement de geacutenie logiciel et des TI
Industrialisation
Vers le milieu du 19e siegravecle Segmenter le travail des individus pour
ne pas ecirctre deacutependant drsquoun artisan Permet une production beaucoup plus
efficace en seacuterie
GTI515 Automne 2013 JF Couturier 37
Deacutepartement de geacutenie logiciel et des TI
Industrialisation
Est-ce que le deacuteveloppement peut-ecirctre industrialiseacuteCertains disent que non que le logiciel agrave
un caractegravere trop creacuteatif
Drsquoautres pensent que les reacutecents progregraves dans le domaine permettent une eacuteventuelle industrialisation dans la production drsquoapplication
GTI515 Automne 2013 JF Couturier 38
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 39
Technologies(OO CBD Services Web SOA
XML AOP DB design patternshellip)
Ingeacutenierie dirigeacutee par les modegraveles
Usines logicielles (Microsoft)Architecture dirigeacutee par les modegraveles (OMG)
Deux applications drsquoun mecircme concept de base
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 40
Techniques de deacuteveloppement assisteacute par ordinateur (Reacutef Software Factories Greenfield J p144)
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Un modegravele tregraves deacutetailleacute beaucoup de code geacuteneacutereacute
CASE Tools (Computer-aided software engineering)
Mal adapteacute au deacuteveloppement agile qui implique souvent des solutions partielles tregraves tocirct dans le cycle de deacuteveloppement
Synchronisation difficile
Eacuteloigneacutee de la plateforme
GTI515 Automne 2013 JF Couturier 41
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Exemple Outils graphiques de modeacutelisation des classes
Plus proche de la plateforme
Code geacuteneacutereacute pour la plateforme
Plus simple
Aide geacuteneacuteralement le deacuteveloppeur agrave voir les deacutependances entre les classes
Il reste beaucoup de code agrave faire agrave la main
Penser agrave coder du SWING Java agrave la mitaine
GTI515 Automne 2013 JF Couturier 42
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Existence drsquoun framework logiciel
On se base sur le framework pour automatiser-compleacuteter la production de certains eacuteleacutements comme les eacuteleacutements graphiques
Abstraction plus eacuteleveacutee
VB6 et ses formulaires
NET Hibernate
Peu drsquoabstractions au niveau du modegravele Classe entiteacute-relation
GTI515 Automne 2013 JF Couturier 43
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Finalement il y a la possibiliteacute drsquoavoir une laquo pile raquo de modegraveles
Drsquoun modegravele agrave lrsquoautre il y a transformation vers un modegravele de plus en plus preacutecis
Approche MDA
Concept de Domain Specific Language
Pour un domaine particulier on creacutee des laquo templates raquo reacuteutilisables
Permets la contribution des experts meacutetiers
GTI515 Automne 2013 JF Couturier 44
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles
GTI515 Automne 2013 JF Couturier 45
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Domain Specific Langage
Par opposition au General purpose language comme UML C++ Java ou C
AvantagesPermets agrave un expert meacutetier de
comprendre et valider un modegravele
InconveacutenientCoucirct Formation Maintenance
GTI515 Automne 2013 JF Couturier 46
httpenwikipediaorgwikiDomain_Specific_Language
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 47
BuzzhellipMDA MDD MDE
Model Driven Architecturemarque de commerce de lrsquoOMG
Model Driven Developmentextension de MDAmarque de commerce de lrsquoOMG
Model Driven Engineeringexpression geacuteneacuterique
Deacutepartement de geacutenie logiciel et des TI
Exemple Agrave partir des speacutecifications des exigences logicielles
Lrsquoacteur saisit la commande contenant
lrsquoadresse de livraison
lrsquoadresse de facturation
Le systegraveme creacutee la commande
Lrsquoacteur saisit un deacutetail de la commande avec
le nom du produit
la quantiteacute demandeacutee
le prix du produit
Le systegraveme creacutee le deacutetail et revient agrave lrsquoeacutetape 3
Lrsquoacteur termine la commande
Le systegraveme ferme la commande
GTI515 Automne 2013 JF Couturier 48
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 49
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Un modegravele (Diagramme de classes UML)
Deacutepartement de geacutenie logiciel et des TI
Model Driven ArchitectureUn scheacutema XML
ltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gt
ltxsdschema xmlnsxsd=httpwww targetNamespace=helliprsaquo
ltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo minOccurs=ldquo0ldquo maxOccurs=ldquounboundedgt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdcomplexType name=ldquoDetailCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoprixldquo type=ldquo xsdfloatldquogt
ltxsdelement name=ldquoquantiteldquo type=ldquo xsdintldquogt
ltxsdelement name=ldquonomProduitldquo type=ldquo xsdstringldquogt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdschemarsaquo
GTI515 Automne 2013 JF Couturier 50
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 51
Des classes Java
public class Commande
private String adresseLivraison
private String adresseFacturation
private Collection detailCommande
hellip
String getAdresseLivraison()
void setAdresseLivraison(String value)
String getAdresseFacturation()
void setAdresseFacturation(String value)
public class DetailCommande
private float prix
private int quantite
private String nomProduit
float getPrix()
void setPrix(float value)
int getQuantite()
void setQuantite(int value)
String getNomProduit()
void setNomProduit(String value)
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 52
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Programmepublic class Commande
private String adresseLivraisonprivate String adresseFacturation
String getAdresseLivraison()void setAdresseLivraison(String value)
String getAdresseFacturation()void setAdresseFacturation(String value)
Scheacutema XMLltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gtltxsdschema xmlnsxsd=httpwww
targetNamespace=helliprsaquoltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo
xsdstringldquogt ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo
Modegravele UML3 repreacutesentationsdes mecircmes exigences
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
Speacutecifications de lrsquoOMG Seacuteparation de la logique meacutetier de
toute plateforme technique Speacutecifications drsquoun langage de
transformation (QVT)
GTI515 Automne 2013 JF Couturier 53
Deacutepartement de geacutenie logiciel et des TI
Concept principal de MDA
Modeacuteliser pour documenter le systegraveme
Modeacuteliser pour construire le systegraveme
GTI515 Automne 2013 JF Couturier 55
Deacutepartement de geacutenie logiciel et des TI
CIM PIM PSM Code CIM
Computing Independant Model
Modegravele du domaine logique meacutetier
PIM Platform Independant Model
Modegravele de conception UML et OCL
PSM Platform Specific Model
NET J2EE
Codehellip
GTI515 Automne 2013 JF Couturier 56
Deacutepartement de geacutenie logiciel et des TI
Les diffeacuterentes eacutetapes
GTI515 Automne 2013 JF Couturier 57
Reacutef the Zachman Framework and the OMGrsquos MDA Business Process Trends Sept 2003
Deacutepartement de geacutenie logiciel et des TI
MDA et Gartner
GTI515 Automne 2013 JF Couturier 58
Gartner Hype Cycle 2008
Deacutepartement de geacutenie logiciel et des TI
Eacutetude de cas
Lecture de la discussion sur MDA Questions
Quels sont les arguments pour
Quels sont les arguments contre
Vos commentaires sur lrsquoarticle
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 59
Deacutepartement de geacutenie logiciel et des TI
Impact
Rocircle du deacuteveloppeur minimiseacute puisqursquoil nrsquointerpregravete plus le modegravele les regravegles de transformation srsquoen chargent
Modegraveles exportables drsquoune plateforme agrave un autre
Plus de 100 articles de recherche sur IEEE entre 2008 et 2009
Maishellip
GTI515 Automne 2013 JF Couturier 60
Deacutepartement de geacutenie logiciel et des TI
Impact
Est-ce applicable au monde agile
Le cycle de modeacutelisation est-il compatible avec le deacuteveloppement iteacuteratif
Est-ce qursquoil y a suffisamment de ressources hautement qualifieacutees pour reacutealiser ce type de projet
Pouvez-vous les former Pouvez-vous les conserver
Produire 80 du code et vous laisser les derniers 20 plus difficileshellip
Comment inteacutegrer les tests
GTI515 Automne 2013 JF Couturier 61
Scott Ambler Enterprise Unified Process p 191
Deacutepartement de geacutenie logiciel et des TI
Impact
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 62
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 63
Domaine
Exigences
Analyse
Conception
Reacutealisation
MDA
PIM
PSM
Modegravele des Processus drsquoaffaires
Modegravele drsquoanalyse du systegraveme
CIM
Modegravele des Cas drsquoutilisation
Modegravele de conception du systegraveme
Les modegraveles du cycle de deacuteveloppement de logiciels
Code
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 64
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 65
Deacutepartement de geacutenie logiciel et des TI
Exemple
GTI515 Automne 2013 JF Couturier 66
httpwwwibmcomdeveloperworksrationallibrary3100html
Deacutepartement de geacutenie logiciel et des TI
Ressources
Site de lOMG MDA Article drsquoIBM sur MDA Discussion sur MDA Wiki MDA Wiki QVT
GTI515 Automne 2013 JF Couturier 67
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 68
Laboratoire 1
Choix du sujet Validation de la porteacutee
Suffisamment long Plusieurs interactions humaines machines Reacutealisable dans une session
Chargeacute de laboratoire Oleg Litvinski Premier laboratoire lundi 7 mai
Deacutepartement de geacutenie logiciel et des TI
Le document de vision (RUP)
Une base de discussion et drsquoaccord parmi les intervenants du projet
Une description de lrsquoapplication en geacuteneacuteral incluant la description du marcheacute cible les clients les utilisateurs du systegraveme les problegravemes agrave reacutesoudre et les caracteacuteristiques de lrsquoapplication
GTI515 Automne 2013 JF Couturier 69
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 70
Requirements Management with Use Cases v20010300
Copyright copy 1998 2001 Rational Software all rights reserved
2
Problem
Solution Space
Problem Space
Needs
Features
SoftwareRequirements
Test Procedures Design User
Docs
The The Product Product To Be To Be BuiltBuilt
Traceability
Deacutepartement de geacutenie logiciel et des TI
Exemples de caracteacuteristiques (feature)
Domaine drsquoapplication Exemple de caracteacuteristique
Systegraveme de commande drsquoascenseur
Commande manuelle des portes durant une urgence de feu
Systegraveme de commande drsquoinventaire
Fournir un statut reacutecent de tous les items reacutepertorieacutes
Systegraveme de suivi de deacutefauts Fournir des laquo donneacutees raquo sur les tendances pour eacutevaluer la
qualiteacute
Systegraveme de paie Rapports par cateacutegories des deacuteductions remis agrave lrsquoimpocirct
Systegraveme de commande drsquoarmes
Minimum de deux confirmations indeacutependantes drsquoautorisation
drsquoattaque exigeacutee
GTI515 Automne 2013 JF Couturier 71
Deacutepartement de geacutenie logiciel et des TI
Niveau de deacutetail des caracteacuteristiques Pour tout nouveau systegraveme ou pour
une ameacutelioration majeure agrave un systegraveme existant il est recommandeacute de garder un niveau drsquoabstraction assez eacuteleveacute de sorte agrave avoir un maximum de caracteacuteristiques compris entre 25-99 et de preacutefeacuterence moins de 50
GTI515 Automne 2013 JF Couturier 72
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Statut Suit le progregraves
Exemples Proposeacute approuveacute incorporeacute etc
PrioriteacuteBeacuteneacutefice
Les caracteacuteristiques ne sont pas agrave prioriteacutes eacutegales ou geacutenegraverent des beacuteneacutefices eacutegaux
Exemple critiques importantes optionnelle
Effort Estimation du nombre de personnessemaines lignes de code points de fonction COSMIC_FFP
Risque La probabiliteacute que la caracteacuteristique aille causer un eacuteveacutenement indeacutesirable tel que le deacutepassement du budget ou des deacutelais ou mecircme lrsquoannulation du projet
GTI515 Automne 2013 JF Couturier 73
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Stabiliteacute La probabiliteacute que la caracteacuteristique elle-mecircme ou sa compreacutehension par lrsquoeacutequipe de deacuteveloppement changera
Mise en application
Documenter la version preacutevue pour laquelle la caracteacuteristique sera incorporeacutee
Assigneacutee agrave Deacutesigner lrsquoeacutequipe responsable de la caracteacuteristique
Raison Lrsquoorigine de la requecircte de la caracteacuteristique
GTI515 Automne 2013 JF Couturier 74
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 75
Deacutepartement de geacutenie logiciel et des TI
Reacutedaction du document de vision une description concise de tout ce qui est important au
produit ou agrave lrsquoapplication eacutecrit avec un niveau de deacutetails dans un langage lisible et
compreacutehensible par les intervenants du projet
Document de 15 agrave 20 pages
GTI515 Automne 2013 JF Couturier 76
Deacutepartement de geacutenie logiciel et des TI
Exemple le cas ACS
GTI515 Automne 2013 JF Couturier 77
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 78
Deacutepartement de geacutenie logiciel et des TI
Exemple de problegravemesle cas ACS
Controcircle drsquoune large gamme de mateacuteriels
Utilisation compliqueacutee Difficulteacutes de programmation Disponibiliteacute du mateacuteriel Risque de mauvaise utilisation
GTI515 Automne 2013 JF Couturier 79
Deacutepartement de geacutenie logiciel et des TI
Exemple de besoinsle cas ACS
AutomatiserLa distribution de fertilisantLa distribution de nourritureLa dureacutee de lrsquoeacuteclairage
Commander lrsquoopeacuteration des appareils Reacuteguler
le niveau et la dureteacute de lrsquoeauLa tempeacuterature
GTI515 Automne 2013 JF Couturier 80
Deacutepartement de geacutenie logiciel et des TI
Exemple de caracteacuteristiquesle cas ACS
Deacutemarrage automatique du systegraveme Programmation conserveacutee en cas de
panne drsquoalimentation Deacutetection automatique des modules Facile agrave programmer et agrave utiliser
Exigence non fonctionnelle
GTI515 Automne 2013 JF Couturier 81
Deacutepartement de geacutenie logiciel et des TI
Critegraveres drsquoeacutevaluation
Respect de lrsquoesprit du document
En tant qursquointervenant externe est-ce que je comprends bien
Respect de la forme du gabarit
Qualiteacute du franccedilais
Document de calibre professionnel que lrsquoon pourrait remettre agrave un dirigeant
GTI515 Automne 2013 JF Couturier 82
Deacutepartement de geacutenie logiciel et des TI
Grille drsquoeacutevaluation (sur 100)
Agrave venirhellip
GTI515 Automne 2013 JF Couturier 83
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 84
Prochain cours
La modeacutelisation des processus drsquoaffaires Le diagramme drsquoactiviteacute Le diagnostic des processus drsquoaffaires existant
Lectures Lrsquoutilisation drsquoUML Chapitre sur les diagrammes drsquoactiviteacutes dans Larman Lecture sur MDA Voir site Web du cours
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 85
Questions
- Systegravemes drsquoinformation dans les entreprises (GTI515)
- Plan du cours 1
- Qui suis-je JF Couturier
- Qui suis-je Eacutetudiant(e)
- Plan du cours 1 (2)
- Objectifs du programme
- Ingeacutenieur
- Programme GTI
- Geacutenie des TI
- Cours de speacutecialiteacutes GTI
- Objectif du cours
- Vue drsquoensemble du cours
- Lectures et reacutefeacuterences
- Regravegles du jeu
- QUIZ
- Plan du cours 1 (3)
- Plan de cours
- Laboratoires ndash GTI515
- Peacutenaliteacutes de retard
- Plagiat
- Plan du cours 1 (4)
- Les tendances dans le deacuteveloppement des systegravemes drsquoinformation
- UML - Historique
- Pourquoi modeacuteliser
- La modeacutelisation dans les entreprises
- Quelques chiffres
- Quelques chiffres (2)
- Quelques chiffres (3)
- Quelques chiffres (4)
- Quelques chiffres (5)
- Et maintenant
- Et maintenant (2)
- Finalementhellip
- Reacuteussite Eacutechec
- Rappel
- Industrialisation
- Industrialisation (2)
- Slide 39
- Slide 40
- Usines logicielles (S Factory)
- Usines logicielles (S Factory) (2)
- Usines logicielles (S Factory) (3)
- Usines logicielles (S Factory) (4)
- Usines logicielles
- Domain Specific Langage
- BuzzhellipMDA MDD MDE
- Exemple
- Model Driven Architecture
- Model Driven Architecture (2)
- Model Driven Architecture (3)
- Model Driven Architecture (4)
- Model Driven Architecture (5)
- Concept principal de MDA
- CIM PIM PSM Code
- Les diffeacuterentes eacutetapes
- MDA et Gartner
- Eacutetude de cas
- Impact
- Impact (2)
- Impact (3)
- Slide 63
- Slide 64
- Slide 65
- Exemple (2)
- Ressources
- Laboratoire 1
- Le document de vision (RUP)
- Slide 70
- Exemples de caracteacuteristiques (feature)
- Niveau de deacutetail des caracteacuteristiques
- Attributs des caracteacuteristiques
- Attributs des caracteacuteristiques
- Slide 75
- Reacutedaction du document de vision
- Exemple le cas ACS
- Slide 78
- Exemple de problegravemes le cas ACS
- Exemple de besoins le cas ACS
- Exemple de caracteacuteristiques le cas ACS
- Critegraveres drsquoeacutevaluation
- Grille drsquoeacutevaluation (sur 100)
- Prochain cours
- Questions
-
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
GTI515 Automne 2013 JF Couturier 29
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
GTI515 Automne 2013 JF Couturier 30
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
Une grande proportion de projets TI eacutechouent PourquoiPlusieurs facteurs
Les mauvaises exigences en font partie
Si ccedila va si mal crsquoest qursquoil y a quelque chose qursquoon ne fait pas bien Il faut se remettre en question
GTI515 Automne 2013 JF Couturier 31
Deacutepartement de geacutenie logiciel et des TI
Et maintenant
GTI515 Automne 2013 JF Couturier 32
CHAOS Summary 2009
Deacutepartement de geacutenie logiciel et des TI
Et maintenant
GTI515 Automne 2013 JF Couturier 33
Standish Group 1999
CHAOS Summary 2009
Deacutepartement de geacutenie logiciel et des TI
Finalementhellip
GTI515 Automne 2013 JF Couturier 34
Deacutepartement de geacutenie logiciel et des TI
Reacuteussite Eacutechec
Mais qursquoest-ce qursquoun projet reacuteussi Dans les temps Dans le budget Avec les fonctions preacutevues
GTI515 Automne 2013 JF Couturier 35
Deacutepartement de geacutenie logiciel et des TI
Rappel
Notre domaine est tregraves jeune (70 ans) Geacutenie de la constructionhellip5000 ans
Mais nous progressons tregraves rapidement Pourquoi le geacutenie en TI
Artisanat vs geacutenie (le pif vs la meacutethode)
Acircge du geacutenie logiciel TI - Maturiteacute
Science virtuelle vs Meacutecanique construction
Une tendancehellipDe lrsquoartisanat agrave lrsquoindustrialisation du deacuteveloppement logiciel
GTI515 Automne 2013 JF Couturier 36
Deacutepartement de geacutenie logiciel et des TI
Industrialisation
Vers le milieu du 19e siegravecle Segmenter le travail des individus pour
ne pas ecirctre deacutependant drsquoun artisan Permet une production beaucoup plus
efficace en seacuterie
GTI515 Automne 2013 JF Couturier 37
Deacutepartement de geacutenie logiciel et des TI
Industrialisation
Est-ce que le deacuteveloppement peut-ecirctre industrialiseacuteCertains disent que non que le logiciel agrave
un caractegravere trop creacuteatif
Drsquoautres pensent que les reacutecents progregraves dans le domaine permettent une eacuteventuelle industrialisation dans la production drsquoapplication
GTI515 Automne 2013 JF Couturier 38
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 39
Technologies(OO CBD Services Web SOA
XML AOP DB design patternshellip)
Ingeacutenierie dirigeacutee par les modegraveles
Usines logicielles (Microsoft)Architecture dirigeacutee par les modegraveles (OMG)
Deux applications drsquoun mecircme concept de base
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 40
Techniques de deacuteveloppement assisteacute par ordinateur (Reacutef Software Factories Greenfield J p144)
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Un modegravele tregraves deacutetailleacute beaucoup de code geacuteneacutereacute
CASE Tools (Computer-aided software engineering)
Mal adapteacute au deacuteveloppement agile qui implique souvent des solutions partielles tregraves tocirct dans le cycle de deacuteveloppement
Synchronisation difficile
Eacuteloigneacutee de la plateforme
GTI515 Automne 2013 JF Couturier 41
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Exemple Outils graphiques de modeacutelisation des classes
Plus proche de la plateforme
Code geacuteneacutereacute pour la plateforme
Plus simple
Aide geacuteneacuteralement le deacuteveloppeur agrave voir les deacutependances entre les classes
Il reste beaucoup de code agrave faire agrave la main
Penser agrave coder du SWING Java agrave la mitaine
GTI515 Automne 2013 JF Couturier 42
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Existence drsquoun framework logiciel
On se base sur le framework pour automatiser-compleacuteter la production de certains eacuteleacutements comme les eacuteleacutements graphiques
Abstraction plus eacuteleveacutee
VB6 et ses formulaires
NET Hibernate
Peu drsquoabstractions au niveau du modegravele Classe entiteacute-relation
GTI515 Automne 2013 JF Couturier 43
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Finalement il y a la possibiliteacute drsquoavoir une laquo pile raquo de modegraveles
Drsquoun modegravele agrave lrsquoautre il y a transformation vers un modegravele de plus en plus preacutecis
Approche MDA
Concept de Domain Specific Language
Pour un domaine particulier on creacutee des laquo templates raquo reacuteutilisables
Permets la contribution des experts meacutetiers
GTI515 Automne 2013 JF Couturier 44
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles
GTI515 Automne 2013 JF Couturier 45
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Domain Specific Langage
Par opposition au General purpose language comme UML C++ Java ou C
AvantagesPermets agrave un expert meacutetier de
comprendre et valider un modegravele
InconveacutenientCoucirct Formation Maintenance
GTI515 Automne 2013 JF Couturier 46
httpenwikipediaorgwikiDomain_Specific_Language
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 47
BuzzhellipMDA MDD MDE
Model Driven Architecturemarque de commerce de lrsquoOMG
Model Driven Developmentextension de MDAmarque de commerce de lrsquoOMG
Model Driven Engineeringexpression geacuteneacuterique
Deacutepartement de geacutenie logiciel et des TI
Exemple Agrave partir des speacutecifications des exigences logicielles
Lrsquoacteur saisit la commande contenant
lrsquoadresse de livraison
lrsquoadresse de facturation
Le systegraveme creacutee la commande
Lrsquoacteur saisit un deacutetail de la commande avec
le nom du produit
la quantiteacute demandeacutee
le prix du produit
Le systegraveme creacutee le deacutetail et revient agrave lrsquoeacutetape 3
Lrsquoacteur termine la commande
Le systegraveme ferme la commande
GTI515 Automne 2013 JF Couturier 48
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 49
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Un modegravele (Diagramme de classes UML)
Deacutepartement de geacutenie logiciel et des TI
Model Driven ArchitectureUn scheacutema XML
ltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gt
ltxsdschema xmlnsxsd=httpwww targetNamespace=helliprsaquo
ltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo minOccurs=ldquo0ldquo maxOccurs=ldquounboundedgt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdcomplexType name=ldquoDetailCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoprixldquo type=ldquo xsdfloatldquogt
ltxsdelement name=ldquoquantiteldquo type=ldquo xsdintldquogt
ltxsdelement name=ldquonomProduitldquo type=ldquo xsdstringldquogt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdschemarsaquo
GTI515 Automne 2013 JF Couturier 50
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 51
Des classes Java
public class Commande
private String adresseLivraison
private String adresseFacturation
private Collection detailCommande
hellip
String getAdresseLivraison()
void setAdresseLivraison(String value)
String getAdresseFacturation()
void setAdresseFacturation(String value)
public class DetailCommande
private float prix
private int quantite
private String nomProduit
float getPrix()
void setPrix(float value)
int getQuantite()
void setQuantite(int value)
String getNomProduit()
void setNomProduit(String value)
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 52
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Programmepublic class Commande
private String adresseLivraisonprivate String adresseFacturation
String getAdresseLivraison()void setAdresseLivraison(String value)
String getAdresseFacturation()void setAdresseFacturation(String value)
Scheacutema XMLltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gtltxsdschema xmlnsxsd=httpwww
targetNamespace=helliprsaquoltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo
xsdstringldquogt ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo
Modegravele UML3 repreacutesentationsdes mecircmes exigences
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
Speacutecifications de lrsquoOMG Seacuteparation de la logique meacutetier de
toute plateforme technique Speacutecifications drsquoun langage de
transformation (QVT)
GTI515 Automne 2013 JF Couturier 53
Deacutepartement de geacutenie logiciel et des TI
Concept principal de MDA
Modeacuteliser pour documenter le systegraveme
Modeacuteliser pour construire le systegraveme
GTI515 Automne 2013 JF Couturier 55
Deacutepartement de geacutenie logiciel et des TI
CIM PIM PSM Code CIM
Computing Independant Model
Modegravele du domaine logique meacutetier
PIM Platform Independant Model
Modegravele de conception UML et OCL
PSM Platform Specific Model
NET J2EE
Codehellip
GTI515 Automne 2013 JF Couturier 56
Deacutepartement de geacutenie logiciel et des TI
Les diffeacuterentes eacutetapes
GTI515 Automne 2013 JF Couturier 57
Reacutef the Zachman Framework and the OMGrsquos MDA Business Process Trends Sept 2003
Deacutepartement de geacutenie logiciel et des TI
MDA et Gartner
GTI515 Automne 2013 JF Couturier 58
Gartner Hype Cycle 2008
Deacutepartement de geacutenie logiciel et des TI
Eacutetude de cas
Lecture de la discussion sur MDA Questions
Quels sont les arguments pour
Quels sont les arguments contre
Vos commentaires sur lrsquoarticle
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 59
Deacutepartement de geacutenie logiciel et des TI
Impact
Rocircle du deacuteveloppeur minimiseacute puisqursquoil nrsquointerpregravete plus le modegravele les regravegles de transformation srsquoen chargent
Modegraveles exportables drsquoune plateforme agrave un autre
Plus de 100 articles de recherche sur IEEE entre 2008 et 2009
Maishellip
GTI515 Automne 2013 JF Couturier 60
Deacutepartement de geacutenie logiciel et des TI
Impact
Est-ce applicable au monde agile
Le cycle de modeacutelisation est-il compatible avec le deacuteveloppement iteacuteratif
Est-ce qursquoil y a suffisamment de ressources hautement qualifieacutees pour reacutealiser ce type de projet
Pouvez-vous les former Pouvez-vous les conserver
Produire 80 du code et vous laisser les derniers 20 plus difficileshellip
Comment inteacutegrer les tests
GTI515 Automne 2013 JF Couturier 61
Scott Ambler Enterprise Unified Process p 191
Deacutepartement de geacutenie logiciel et des TI
Impact
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 62
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 63
Domaine
Exigences
Analyse
Conception
Reacutealisation
MDA
PIM
PSM
Modegravele des Processus drsquoaffaires
Modegravele drsquoanalyse du systegraveme
CIM
Modegravele des Cas drsquoutilisation
Modegravele de conception du systegraveme
Les modegraveles du cycle de deacuteveloppement de logiciels
Code
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 64
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 65
Deacutepartement de geacutenie logiciel et des TI
Exemple
GTI515 Automne 2013 JF Couturier 66
httpwwwibmcomdeveloperworksrationallibrary3100html
Deacutepartement de geacutenie logiciel et des TI
Ressources
Site de lOMG MDA Article drsquoIBM sur MDA Discussion sur MDA Wiki MDA Wiki QVT
GTI515 Automne 2013 JF Couturier 67
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 68
Laboratoire 1
Choix du sujet Validation de la porteacutee
Suffisamment long Plusieurs interactions humaines machines Reacutealisable dans une session
Chargeacute de laboratoire Oleg Litvinski Premier laboratoire lundi 7 mai
Deacutepartement de geacutenie logiciel et des TI
Le document de vision (RUP)
Une base de discussion et drsquoaccord parmi les intervenants du projet
Une description de lrsquoapplication en geacuteneacuteral incluant la description du marcheacute cible les clients les utilisateurs du systegraveme les problegravemes agrave reacutesoudre et les caracteacuteristiques de lrsquoapplication
GTI515 Automne 2013 JF Couturier 69
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 70
Requirements Management with Use Cases v20010300
Copyright copy 1998 2001 Rational Software all rights reserved
2
Problem
Solution Space
Problem Space
Needs
Features
SoftwareRequirements
Test Procedures Design User
Docs
The The Product Product To Be To Be BuiltBuilt
Traceability
Deacutepartement de geacutenie logiciel et des TI
Exemples de caracteacuteristiques (feature)
Domaine drsquoapplication Exemple de caracteacuteristique
Systegraveme de commande drsquoascenseur
Commande manuelle des portes durant une urgence de feu
Systegraveme de commande drsquoinventaire
Fournir un statut reacutecent de tous les items reacutepertorieacutes
Systegraveme de suivi de deacutefauts Fournir des laquo donneacutees raquo sur les tendances pour eacutevaluer la
qualiteacute
Systegraveme de paie Rapports par cateacutegories des deacuteductions remis agrave lrsquoimpocirct
Systegraveme de commande drsquoarmes
Minimum de deux confirmations indeacutependantes drsquoautorisation
drsquoattaque exigeacutee
GTI515 Automne 2013 JF Couturier 71
Deacutepartement de geacutenie logiciel et des TI
Niveau de deacutetail des caracteacuteristiques Pour tout nouveau systegraveme ou pour
une ameacutelioration majeure agrave un systegraveme existant il est recommandeacute de garder un niveau drsquoabstraction assez eacuteleveacute de sorte agrave avoir un maximum de caracteacuteristiques compris entre 25-99 et de preacutefeacuterence moins de 50
GTI515 Automne 2013 JF Couturier 72
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Statut Suit le progregraves
Exemples Proposeacute approuveacute incorporeacute etc
PrioriteacuteBeacuteneacutefice
Les caracteacuteristiques ne sont pas agrave prioriteacutes eacutegales ou geacutenegraverent des beacuteneacutefices eacutegaux
Exemple critiques importantes optionnelle
Effort Estimation du nombre de personnessemaines lignes de code points de fonction COSMIC_FFP
Risque La probabiliteacute que la caracteacuteristique aille causer un eacuteveacutenement indeacutesirable tel que le deacutepassement du budget ou des deacutelais ou mecircme lrsquoannulation du projet
GTI515 Automne 2013 JF Couturier 73
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Stabiliteacute La probabiliteacute que la caracteacuteristique elle-mecircme ou sa compreacutehension par lrsquoeacutequipe de deacuteveloppement changera
Mise en application
Documenter la version preacutevue pour laquelle la caracteacuteristique sera incorporeacutee
Assigneacutee agrave Deacutesigner lrsquoeacutequipe responsable de la caracteacuteristique
Raison Lrsquoorigine de la requecircte de la caracteacuteristique
GTI515 Automne 2013 JF Couturier 74
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 75
Deacutepartement de geacutenie logiciel et des TI
Reacutedaction du document de vision une description concise de tout ce qui est important au
produit ou agrave lrsquoapplication eacutecrit avec un niveau de deacutetails dans un langage lisible et
compreacutehensible par les intervenants du projet
Document de 15 agrave 20 pages
GTI515 Automne 2013 JF Couturier 76
Deacutepartement de geacutenie logiciel et des TI
Exemple le cas ACS
GTI515 Automne 2013 JF Couturier 77
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 78
Deacutepartement de geacutenie logiciel et des TI
Exemple de problegravemesle cas ACS
Controcircle drsquoune large gamme de mateacuteriels
Utilisation compliqueacutee Difficulteacutes de programmation Disponibiliteacute du mateacuteriel Risque de mauvaise utilisation
GTI515 Automne 2013 JF Couturier 79
Deacutepartement de geacutenie logiciel et des TI
Exemple de besoinsle cas ACS
AutomatiserLa distribution de fertilisantLa distribution de nourritureLa dureacutee de lrsquoeacuteclairage
Commander lrsquoopeacuteration des appareils Reacuteguler
le niveau et la dureteacute de lrsquoeauLa tempeacuterature
GTI515 Automne 2013 JF Couturier 80
Deacutepartement de geacutenie logiciel et des TI
Exemple de caracteacuteristiquesle cas ACS
Deacutemarrage automatique du systegraveme Programmation conserveacutee en cas de
panne drsquoalimentation Deacutetection automatique des modules Facile agrave programmer et agrave utiliser
Exigence non fonctionnelle
GTI515 Automne 2013 JF Couturier 81
Deacutepartement de geacutenie logiciel et des TI
Critegraveres drsquoeacutevaluation
Respect de lrsquoesprit du document
En tant qursquointervenant externe est-ce que je comprends bien
Respect de la forme du gabarit
Qualiteacute du franccedilais
Document de calibre professionnel que lrsquoon pourrait remettre agrave un dirigeant
GTI515 Automne 2013 JF Couturier 82
Deacutepartement de geacutenie logiciel et des TI
Grille drsquoeacutevaluation (sur 100)
Agrave venirhellip
GTI515 Automne 2013 JF Couturier 83
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 84
Prochain cours
La modeacutelisation des processus drsquoaffaires Le diagramme drsquoactiviteacute Le diagnostic des processus drsquoaffaires existant
Lectures Lrsquoutilisation drsquoUML Chapitre sur les diagrammes drsquoactiviteacutes dans Larman Lecture sur MDA Voir site Web du cours
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 85
Questions
- Systegravemes drsquoinformation dans les entreprises (GTI515)
- Plan du cours 1
- Qui suis-je JF Couturier
- Qui suis-je Eacutetudiant(e)
- Plan du cours 1 (2)
- Objectifs du programme
- Ingeacutenieur
- Programme GTI
- Geacutenie des TI
- Cours de speacutecialiteacutes GTI
- Objectif du cours
- Vue drsquoensemble du cours
- Lectures et reacutefeacuterences
- Regravegles du jeu
- QUIZ
- Plan du cours 1 (3)
- Plan de cours
- Laboratoires ndash GTI515
- Peacutenaliteacutes de retard
- Plagiat
- Plan du cours 1 (4)
- Les tendances dans le deacuteveloppement des systegravemes drsquoinformation
- UML - Historique
- Pourquoi modeacuteliser
- La modeacutelisation dans les entreprises
- Quelques chiffres
- Quelques chiffres (2)
- Quelques chiffres (3)
- Quelques chiffres (4)
- Quelques chiffres (5)
- Et maintenant
- Et maintenant (2)
- Finalementhellip
- Reacuteussite Eacutechec
- Rappel
- Industrialisation
- Industrialisation (2)
- Slide 39
- Slide 40
- Usines logicielles (S Factory)
- Usines logicielles (S Factory) (2)
- Usines logicielles (S Factory) (3)
- Usines logicielles (S Factory) (4)
- Usines logicielles
- Domain Specific Langage
- BuzzhellipMDA MDD MDE
- Exemple
- Model Driven Architecture
- Model Driven Architecture (2)
- Model Driven Architecture (3)
- Model Driven Architecture (4)
- Model Driven Architecture (5)
- Concept principal de MDA
- CIM PIM PSM Code
- Les diffeacuterentes eacutetapes
- MDA et Gartner
- Eacutetude de cas
- Impact
- Impact (2)
- Impact (3)
- Slide 63
- Slide 64
- Slide 65
- Exemple (2)
- Ressources
- Laboratoire 1
- Le document de vision (RUP)
- Slide 70
- Exemples de caracteacuteristiques (feature)
- Niveau de deacutetail des caracteacuteristiques
- Attributs des caracteacuteristiques
- Attributs des caracteacuteristiques
- Slide 75
- Reacutedaction du document de vision
- Exemple le cas ACS
- Slide 78
- Exemple de problegravemes le cas ACS
- Exemple de besoins le cas ACS
- Exemple de caracteacuteristiques le cas ACS
- Critegraveres drsquoeacutevaluation
- Grille drsquoeacutevaluation (sur 100)
- Prochain cours
- Questions
-
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
GTI515 Automne 2013 JF Couturier 30
Standish Group 1999
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
Une grande proportion de projets TI eacutechouent PourquoiPlusieurs facteurs
Les mauvaises exigences en font partie
Si ccedila va si mal crsquoest qursquoil y a quelque chose qursquoon ne fait pas bien Il faut se remettre en question
GTI515 Automne 2013 JF Couturier 31
Deacutepartement de geacutenie logiciel et des TI
Et maintenant
GTI515 Automne 2013 JF Couturier 32
CHAOS Summary 2009
Deacutepartement de geacutenie logiciel et des TI
Et maintenant
GTI515 Automne 2013 JF Couturier 33
Standish Group 1999
CHAOS Summary 2009
Deacutepartement de geacutenie logiciel et des TI
Finalementhellip
GTI515 Automne 2013 JF Couturier 34
Deacutepartement de geacutenie logiciel et des TI
Reacuteussite Eacutechec
Mais qursquoest-ce qursquoun projet reacuteussi Dans les temps Dans le budget Avec les fonctions preacutevues
GTI515 Automne 2013 JF Couturier 35
Deacutepartement de geacutenie logiciel et des TI
Rappel
Notre domaine est tregraves jeune (70 ans) Geacutenie de la constructionhellip5000 ans
Mais nous progressons tregraves rapidement Pourquoi le geacutenie en TI
Artisanat vs geacutenie (le pif vs la meacutethode)
Acircge du geacutenie logiciel TI - Maturiteacute
Science virtuelle vs Meacutecanique construction
Une tendancehellipDe lrsquoartisanat agrave lrsquoindustrialisation du deacuteveloppement logiciel
GTI515 Automne 2013 JF Couturier 36
Deacutepartement de geacutenie logiciel et des TI
Industrialisation
Vers le milieu du 19e siegravecle Segmenter le travail des individus pour
ne pas ecirctre deacutependant drsquoun artisan Permet une production beaucoup plus
efficace en seacuterie
GTI515 Automne 2013 JF Couturier 37
Deacutepartement de geacutenie logiciel et des TI
Industrialisation
Est-ce que le deacuteveloppement peut-ecirctre industrialiseacuteCertains disent que non que le logiciel agrave
un caractegravere trop creacuteatif
Drsquoautres pensent que les reacutecents progregraves dans le domaine permettent une eacuteventuelle industrialisation dans la production drsquoapplication
GTI515 Automne 2013 JF Couturier 38
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 39
Technologies(OO CBD Services Web SOA
XML AOP DB design patternshellip)
Ingeacutenierie dirigeacutee par les modegraveles
Usines logicielles (Microsoft)Architecture dirigeacutee par les modegraveles (OMG)
Deux applications drsquoun mecircme concept de base
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 40
Techniques de deacuteveloppement assisteacute par ordinateur (Reacutef Software Factories Greenfield J p144)
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Un modegravele tregraves deacutetailleacute beaucoup de code geacuteneacutereacute
CASE Tools (Computer-aided software engineering)
Mal adapteacute au deacuteveloppement agile qui implique souvent des solutions partielles tregraves tocirct dans le cycle de deacuteveloppement
Synchronisation difficile
Eacuteloigneacutee de la plateforme
GTI515 Automne 2013 JF Couturier 41
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Exemple Outils graphiques de modeacutelisation des classes
Plus proche de la plateforme
Code geacuteneacutereacute pour la plateforme
Plus simple
Aide geacuteneacuteralement le deacuteveloppeur agrave voir les deacutependances entre les classes
Il reste beaucoup de code agrave faire agrave la main
Penser agrave coder du SWING Java agrave la mitaine
GTI515 Automne 2013 JF Couturier 42
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Existence drsquoun framework logiciel
On se base sur le framework pour automatiser-compleacuteter la production de certains eacuteleacutements comme les eacuteleacutements graphiques
Abstraction plus eacuteleveacutee
VB6 et ses formulaires
NET Hibernate
Peu drsquoabstractions au niveau du modegravele Classe entiteacute-relation
GTI515 Automne 2013 JF Couturier 43
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Finalement il y a la possibiliteacute drsquoavoir une laquo pile raquo de modegraveles
Drsquoun modegravele agrave lrsquoautre il y a transformation vers un modegravele de plus en plus preacutecis
Approche MDA
Concept de Domain Specific Language
Pour un domaine particulier on creacutee des laquo templates raquo reacuteutilisables
Permets la contribution des experts meacutetiers
GTI515 Automne 2013 JF Couturier 44
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles
GTI515 Automne 2013 JF Couturier 45
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Domain Specific Langage
Par opposition au General purpose language comme UML C++ Java ou C
AvantagesPermets agrave un expert meacutetier de
comprendre et valider un modegravele
InconveacutenientCoucirct Formation Maintenance
GTI515 Automne 2013 JF Couturier 46
httpenwikipediaorgwikiDomain_Specific_Language
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 47
BuzzhellipMDA MDD MDE
Model Driven Architecturemarque de commerce de lrsquoOMG
Model Driven Developmentextension de MDAmarque de commerce de lrsquoOMG
Model Driven Engineeringexpression geacuteneacuterique
Deacutepartement de geacutenie logiciel et des TI
Exemple Agrave partir des speacutecifications des exigences logicielles
Lrsquoacteur saisit la commande contenant
lrsquoadresse de livraison
lrsquoadresse de facturation
Le systegraveme creacutee la commande
Lrsquoacteur saisit un deacutetail de la commande avec
le nom du produit
la quantiteacute demandeacutee
le prix du produit
Le systegraveme creacutee le deacutetail et revient agrave lrsquoeacutetape 3
Lrsquoacteur termine la commande
Le systegraveme ferme la commande
GTI515 Automne 2013 JF Couturier 48
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 49
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Un modegravele (Diagramme de classes UML)
Deacutepartement de geacutenie logiciel et des TI
Model Driven ArchitectureUn scheacutema XML
ltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gt
ltxsdschema xmlnsxsd=httpwww targetNamespace=helliprsaquo
ltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo minOccurs=ldquo0ldquo maxOccurs=ldquounboundedgt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdcomplexType name=ldquoDetailCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoprixldquo type=ldquo xsdfloatldquogt
ltxsdelement name=ldquoquantiteldquo type=ldquo xsdintldquogt
ltxsdelement name=ldquonomProduitldquo type=ldquo xsdstringldquogt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdschemarsaquo
GTI515 Automne 2013 JF Couturier 50
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 51
Des classes Java
public class Commande
private String adresseLivraison
private String adresseFacturation
private Collection detailCommande
hellip
String getAdresseLivraison()
void setAdresseLivraison(String value)
String getAdresseFacturation()
void setAdresseFacturation(String value)
public class DetailCommande
private float prix
private int quantite
private String nomProduit
float getPrix()
void setPrix(float value)
int getQuantite()
void setQuantite(int value)
String getNomProduit()
void setNomProduit(String value)
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 52
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Programmepublic class Commande
private String adresseLivraisonprivate String adresseFacturation
String getAdresseLivraison()void setAdresseLivraison(String value)
String getAdresseFacturation()void setAdresseFacturation(String value)
Scheacutema XMLltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gtltxsdschema xmlnsxsd=httpwww
targetNamespace=helliprsaquoltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo
xsdstringldquogt ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo
Modegravele UML3 repreacutesentationsdes mecircmes exigences
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
Speacutecifications de lrsquoOMG Seacuteparation de la logique meacutetier de
toute plateforme technique Speacutecifications drsquoun langage de
transformation (QVT)
GTI515 Automne 2013 JF Couturier 53
Deacutepartement de geacutenie logiciel et des TI
Concept principal de MDA
Modeacuteliser pour documenter le systegraveme
Modeacuteliser pour construire le systegraveme
GTI515 Automne 2013 JF Couturier 55
Deacutepartement de geacutenie logiciel et des TI
CIM PIM PSM Code CIM
Computing Independant Model
Modegravele du domaine logique meacutetier
PIM Platform Independant Model
Modegravele de conception UML et OCL
PSM Platform Specific Model
NET J2EE
Codehellip
GTI515 Automne 2013 JF Couturier 56
Deacutepartement de geacutenie logiciel et des TI
Les diffeacuterentes eacutetapes
GTI515 Automne 2013 JF Couturier 57
Reacutef the Zachman Framework and the OMGrsquos MDA Business Process Trends Sept 2003
Deacutepartement de geacutenie logiciel et des TI
MDA et Gartner
GTI515 Automne 2013 JF Couturier 58
Gartner Hype Cycle 2008
Deacutepartement de geacutenie logiciel et des TI
Eacutetude de cas
Lecture de la discussion sur MDA Questions
Quels sont les arguments pour
Quels sont les arguments contre
Vos commentaires sur lrsquoarticle
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 59
Deacutepartement de geacutenie logiciel et des TI
Impact
Rocircle du deacuteveloppeur minimiseacute puisqursquoil nrsquointerpregravete plus le modegravele les regravegles de transformation srsquoen chargent
Modegraveles exportables drsquoune plateforme agrave un autre
Plus de 100 articles de recherche sur IEEE entre 2008 et 2009
Maishellip
GTI515 Automne 2013 JF Couturier 60
Deacutepartement de geacutenie logiciel et des TI
Impact
Est-ce applicable au monde agile
Le cycle de modeacutelisation est-il compatible avec le deacuteveloppement iteacuteratif
Est-ce qursquoil y a suffisamment de ressources hautement qualifieacutees pour reacutealiser ce type de projet
Pouvez-vous les former Pouvez-vous les conserver
Produire 80 du code et vous laisser les derniers 20 plus difficileshellip
Comment inteacutegrer les tests
GTI515 Automne 2013 JF Couturier 61
Scott Ambler Enterprise Unified Process p 191
Deacutepartement de geacutenie logiciel et des TI
Impact
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 62
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 63
Domaine
Exigences
Analyse
Conception
Reacutealisation
MDA
PIM
PSM
Modegravele des Processus drsquoaffaires
Modegravele drsquoanalyse du systegraveme
CIM
Modegravele des Cas drsquoutilisation
Modegravele de conception du systegraveme
Les modegraveles du cycle de deacuteveloppement de logiciels
Code
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 64
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 65
Deacutepartement de geacutenie logiciel et des TI
Exemple
GTI515 Automne 2013 JF Couturier 66
httpwwwibmcomdeveloperworksrationallibrary3100html
Deacutepartement de geacutenie logiciel et des TI
Ressources
Site de lOMG MDA Article drsquoIBM sur MDA Discussion sur MDA Wiki MDA Wiki QVT
GTI515 Automne 2013 JF Couturier 67
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 68
Laboratoire 1
Choix du sujet Validation de la porteacutee
Suffisamment long Plusieurs interactions humaines machines Reacutealisable dans une session
Chargeacute de laboratoire Oleg Litvinski Premier laboratoire lundi 7 mai
Deacutepartement de geacutenie logiciel et des TI
Le document de vision (RUP)
Une base de discussion et drsquoaccord parmi les intervenants du projet
Une description de lrsquoapplication en geacuteneacuteral incluant la description du marcheacute cible les clients les utilisateurs du systegraveme les problegravemes agrave reacutesoudre et les caracteacuteristiques de lrsquoapplication
GTI515 Automne 2013 JF Couturier 69
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 70
Requirements Management with Use Cases v20010300
Copyright copy 1998 2001 Rational Software all rights reserved
2
Problem
Solution Space
Problem Space
Needs
Features
SoftwareRequirements
Test Procedures Design User
Docs
The The Product Product To Be To Be BuiltBuilt
Traceability
Deacutepartement de geacutenie logiciel et des TI
Exemples de caracteacuteristiques (feature)
Domaine drsquoapplication Exemple de caracteacuteristique
Systegraveme de commande drsquoascenseur
Commande manuelle des portes durant une urgence de feu
Systegraveme de commande drsquoinventaire
Fournir un statut reacutecent de tous les items reacutepertorieacutes
Systegraveme de suivi de deacutefauts Fournir des laquo donneacutees raquo sur les tendances pour eacutevaluer la
qualiteacute
Systegraveme de paie Rapports par cateacutegories des deacuteductions remis agrave lrsquoimpocirct
Systegraveme de commande drsquoarmes
Minimum de deux confirmations indeacutependantes drsquoautorisation
drsquoattaque exigeacutee
GTI515 Automne 2013 JF Couturier 71
Deacutepartement de geacutenie logiciel et des TI
Niveau de deacutetail des caracteacuteristiques Pour tout nouveau systegraveme ou pour
une ameacutelioration majeure agrave un systegraveme existant il est recommandeacute de garder un niveau drsquoabstraction assez eacuteleveacute de sorte agrave avoir un maximum de caracteacuteristiques compris entre 25-99 et de preacutefeacuterence moins de 50
GTI515 Automne 2013 JF Couturier 72
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Statut Suit le progregraves
Exemples Proposeacute approuveacute incorporeacute etc
PrioriteacuteBeacuteneacutefice
Les caracteacuteristiques ne sont pas agrave prioriteacutes eacutegales ou geacutenegraverent des beacuteneacutefices eacutegaux
Exemple critiques importantes optionnelle
Effort Estimation du nombre de personnessemaines lignes de code points de fonction COSMIC_FFP
Risque La probabiliteacute que la caracteacuteristique aille causer un eacuteveacutenement indeacutesirable tel que le deacutepassement du budget ou des deacutelais ou mecircme lrsquoannulation du projet
GTI515 Automne 2013 JF Couturier 73
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Stabiliteacute La probabiliteacute que la caracteacuteristique elle-mecircme ou sa compreacutehension par lrsquoeacutequipe de deacuteveloppement changera
Mise en application
Documenter la version preacutevue pour laquelle la caracteacuteristique sera incorporeacutee
Assigneacutee agrave Deacutesigner lrsquoeacutequipe responsable de la caracteacuteristique
Raison Lrsquoorigine de la requecircte de la caracteacuteristique
GTI515 Automne 2013 JF Couturier 74
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 75
Deacutepartement de geacutenie logiciel et des TI
Reacutedaction du document de vision une description concise de tout ce qui est important au
produit ou agrave lrsquoapplication eacutecrit avec un niveau de deacutetails dans un langage lisible et
compreacutehensible par les intervenants du projet
Document de 15 agrave 20 pages
GTI515 Automne 2013 JF Couturier 76
Deacutepartement de geacutenie logiciel et des TI
Exemple le cas ACS
GTI515 Automne 2013 JF Couturier 77
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 78
Deacutepartement de geacutenie logiciel et des TI
Exemple de problegravemesle cas ACS
Controcircle drsquoune large gamme de mateacuteriels
Utilisation compliqueacutee Difficulteacutes de programmation Disponibiliteacute du mateacuteriel Risque de mauvaise utilisation
GTI515 Automne 2013 JF Couturier 79
Deacutepartement de geacutenie logiciel et des TI
Exemple de besoinsle cas ACS
AutomatiserLa distribution de fertilisantLa distribution de nourritureLa dureacutee de lrsquoeacuteclairage
Commander lrsquoopeacuteration des appareils Reacuteguler
le niveau et la dureteacute de lrsquoeauLa tempeacuterature
GTI515 Automne 2013 JF Couturier 80
Deacutepartement de geacutenie logiciel et des TI
Exemple de caracteacuteristiquesle cas ACS
Deacutemarrage automatique du systegraveme Programmation conserveacutee en cas de
panne drsquoalimentation Deacutetection automatique des modules Facile agrave programmer et agrave utiliser
Exigence non fonctionnelle
GTI515 Automne 2013 JF Couturier 81
Deacutepartement de geacutenie logiciel et des TI
Critegraveres drsquoeacutevaluation
Respect de lrsquoesprit du document
En tant qursquointervenant externe est-ce que je comprends bien
Respect de la forme du gabarit
Qualiteacute du franccedilais
Document de calibre professionnel que lrsquoon pourrait remettre agrave un dirigeant
GTI515 Automne 2013 JF Couturier 82
Deacutepartement de geacutenie logiciel et des TI
Grille drsquoeacutevaluation (sur 100)
Agrave venirhellip
GTI515 Automne 2013 JF Couturier 83
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 84
Prochain cours
La modeacutelisation des processus drsquoaffaires Le diagramme drsquoactiviteacute Le diagnostic des processus drsquoaffaires existant
Lectures Lrsquoutilisation drsquoUML Chapitre sur les diagrammes drsquoactiviteacutes dans Larman Lecture sur MDA Voir site Web du cours
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 85
Questions
- Systegravemes drsquoinformation dans les entreprises (GTI515)
- Plan du cours 1
- Qui suis-je JF Couturier
- Qui suis-je Eacutetudiant(e)
- Plan du cours 1 (2)
- Objectifs du programme
- Ingeacutenieur
- Programme GTI
- Geacutenie des TI
- Cours de speacutecialiteacutes GTI
- Objectif du cours
- Vue drsquoensemble du cours
- Lectures et reacutefeacuterences
- Regravegles du jeu
- QUIZ
- Plan du cours 1 (3)
- Plan de cours
- Laboratoires ndash GTI515
- Peacutenaliteacutes de retard
- Plagiat
- Plan du cours 1 (4)
- Les tendances dans le deacuteveloppement des systegravemes drsquoinformation
- UML - Historique
- Pourquoi modeacuteliser
- La modeacutelisation dans les entreprises
- Quelques chiffres
- Quelques chiffres (2)
- Quelques chiffres (3)
- Quelques chiffres (4)
- Quelques chiffres (5)
- Et maintenant
- Et maintenant (2)
- Finalementhellip
- Reacuteussite Eacutechec
- Rappel
- Industrialisation
- Industrialisation (2)
- Slide 39
- Slide 40
- Usines logicielles (S Factory)
- Usines logicielles (S Factory) (2)
- Usines logicielles (S Factory) (3)
- Usines logicielles (S Factory) (4)
- Usines logicielles
- Domain Specific Langage
- BuzzhellipMDA MDD MDE
- Exemple
- Model Driven Architecture
- Model Driven Architecture (2)
- Model Driven Architecture (3)
- Model Driven Architecture (4)
- Model Driven Architecture (5)
- Concept principal de MDA
- CIM PIM PSM Code
- Les diffeacuterentes eacutetapes
- MDA et Gartner
- Eacutetude de cas
- Impact
- Impact (2)
- Impact (3)
- Slide 63
- Slide 64
- Slide 65
- Exemple (2)
- Ressources
- Laboratoire 1
- Le document de vision (RUP)
- Slide 70
- Exemples de caracteacuteristiques (feature)
- Niveau de deacutetail des caracteacuteristiques
- Attributs des caracteacuteristiques
- Attributs des caracteacuteristiques
- Slide 75
- Reacutedaction du document de vision
- Exemple le cas ACS
- Slide 78
- Exemple de problegravemes le cas ACS
- Exemple de besoins le cas ACS
- Exemple de caracteacuteristiques le cas ACS
- Critegraveres drsquoeacutevaluation
- Grille drsquoeacutevaluation (sur 100)
- Prochain cours
- Questions
-
Deacutepartement de geacutenie logiciel et des TI
Quelques chiffres
Une grande proportion de projets TI eacutechouent PourquoiPlusieurs facteurs
Les mauvaises exigences en font partie
Si ccedila va si mal crsquoest qursquoil y a quelque chose qursquoon ne fait pas bien Il faut se remettre en question
GTI515 Automne 2013 JF Couturier 31
Deacutepartement de geacutenie logiciel et des TI
Et maintenant
GTI515 Automne 2013 JF Couturier 32
CHAOS Summary 2009
Deacutepartement de geacutenie logiciel et des TI
Et maintenant
GTI515 Automne 2013 JF Couturier 33
Standish Group 1999
CHAOS Summary 2009
Deacutepartement de geacutenie logiciel et des TI
Finalementhellip
GTI515 Automne 2013 JF Couturier 34
Deacutepartement de geacutenie logiciel et des TI
Reacuteussite Eacutechec
Mais qursquoest-ce qursquoun projet reacuteussi Dans les temps Dans le budget Avec les fonctions preacutevues
GTI515 Automne 2013 JF Couturier 35
Deacutepartement de geacutenie logiciel et des TI
Rappel
Notre domaine est tregraves jeune (70 ans) Geacutenie de la constructionhellip5000 ans
Mais nous progressons tregraves rapidement Pourquoi le geacutenie en TI
Artisanat vs geacutenie (le pif vs la meacutethode)
Acircge du geacutenie logiciel TI - Maturiteacute
Science virtuelle vs Meacutecanique construction
Une tendancehellipDe lrsquoartisanat agrave lrsquoindustrialisation du deacuteveloppement logiciel
GTI515 Automne 2013 JF Couturier 36
Deacutepartement de geacutenie logiciel et des TI
Industrialisation
Vers le milieu du 19e siegravecle Segmenter le travail des individus pour
ne pas ecirctre deacutependant drsquoun artisan Permet une production beaucoup plus
efficace en seacuterie
GTI515 Automne 2013 JF Couturier 37
Deacutepartement de geacutenie logiciel et des TI
Industrialisation
Est-ce que le deacuteveloppement peut-ecirctre industrialiseacuteCertains disent que non que le logiciel agrave
un caractegravere trop creacuteatif
Drsquoautres pensent que les reacutecents progregraves dans le domaine permettent une eacuteventuelle industrialisation dans la production drsquoapplication
GTI515 Automne 2013 JF Couturier 38
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 39
Technologies(OO CBD Services Web SOA
XML AOP DB design patternshellip)
Ingeacutenierie dirigeacutee par les modegraveles
Usines logicielles (Microsoft)Architecture dirigeacutee par les modegraveles (OMG)
Deux applications drsquoun mecircme concept de base
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 40
Techniques de deacuteveloppement assisteacute par ordinateur (Reacutef Software Factories Greenfield J p144)
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Un modegravele tregraves deacutetailleacute beaucoup de code geacuteneacutereacute
CASE Tools (Computer-aided software engineering)
Mal adapteacute au deacuteveloppement agile qui implique souvent des solutions partielles tregraves tocirct dans le cycle de deacuteveloppement
Synchronisation difficile
Eacuteloigneacutee de la plateforme
GTI515 Automne 2013 JF Couturier 41
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Exemple Outils graphiques de modeacutelisation des classes
Plus proche de la plateforme
Code geacuteneacutereacute pour la plateforme
Plus simple
Aide geacuteneacuteralement le deacuteveloppeur agrave voir les deacutependances entre les classes
Il reste beaucoup de code agrave faire agrave la main
Penser agrave coder du SWING Java agrave la mitaine
GTI515 Automne 2013 JF Couturier 42
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Existence drsquoun framework logiciel
On se base sur le framework pour automatiser-compleacuteter la production de certains eacuteleacutements comme les eacuteleacutements graphiques
Abstraction plus eacuteleveacutee
VB6 et ses formulaires
NET Hibernate
Peu drsquoabstractions au niveau du modegravele Classe entiteacute-relation
GTI515 Automne 2013 JF Couturier 43
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Finalement il y a la possibiliteacute drsquoavoir une laquo pile raquo de modegraveles
Drsquoun modegravele agrave lrsquoautre il y a transformation vers un modegravele de plus en plus preacutecis
Approche MDA
Concept de Domain Specific Language
Pour un domaine particulier on creacutee des laquo templates raquo reacuteutilisables
Permets la contribution des experts meacutetiers
GTI515 Automne 2013 JF Couturier 44
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles
GTI515 Automne 2013 JF Couturier 45
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Domain Specific Langage
Par opposition au General purpose language comme UML C++ Java ou C
AvantagesPermets agrave un expert meacutetier de
comprendre et valider un modegravele
InconveacutenientCoucirct Formation Maintenance
GTI515 Automne 2013 JF Couturier 46
httpenwikipediaorgwikiDomain_Specific_Language
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 47
BuzzhellipMDA MDD MDE
Model Driven Architecturemarque de commerce de lrsquoOMG
Model Driven Developmentextension de MDAmarque de commerce de lrsquoOMG
Model Driven Engineeringexpression geacuteneacuterique
Deacutepartement de geacutenie logiciel et des TI
Exemple Agrave partir des speacutecifications des exigences logicielles
Lrsquoacteur saisit la commande contenant
lrsquoadresse de livraison
lrsquoadresse de facturation
Le systegraveme creacutee la commande
Lrsquoacteur saisit un deacutetail de la commande avec
le nom du produit
la quantiteacute demandeacutee
le prix du produit
Le systegraveme creacutee le deacutetail et revient agrave lrsquoeacutetape 3
Lrsquoacteur termine la commande
Le systegraveme ferme la commande
GTI515 Automne 2013 JF Couturier 48
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 49
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Un modegravele (Diagramme de classes UML)
Deacutepartement de geacutenie logiciel et des TI
Model Driven ArchitectureUn scheacutema XML
ltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gt
ltxsdschema xmlnsxsd=httpwww targetNamespace=helliprsaquo
ltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo minOccurs=ldquo0ldquo maxOccurs=ldquounboundedgt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdcomplexType name=ldquoDetailCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoprixldquo type=ldquo xsdfloatldquogt
ltxsdelement name=ldquoquantiteldquo type=ldquo xsdintldquogt
ltxsdelement name=ldquonomProduitldquo type=ldquo xsdstringldquogt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdschemarsaquo
GTI515 Automne 2013 JF Couturier 50
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 51
Des classes Java
public class Commande
private String adresseLivraison
private String adresseFacturation
private Collection detailCommande
hellip
String getAdresseLivraison()
void setAdresseLivraison(String value)
String getAdresseFacturation()
void setAdresseFacturation(String value)
public class DetailCommande
private float prix
private int quantite
private String nomProduit
float getPrix()
void setPrix(float value)
int getQuantite()
void setQuantite(int value)
String getNomProduit()
void setNomProduit(String value)
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 52
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Programmepublic class Commande
private String adresseLivraisonprivate String adresseFacturation
String getAdresseLivraison()void setAdresseLivraison(String value)
String getAdresseFacturation()void setAdresseFacturation(String value)
Scheacutema XMLltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gtltxsdschema xmlnsxsd=httpwww
targetNamespace=helliprsaquoltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo
xsdstringldquogt ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo
Modegravele UML3 repreacutesentationsdes mecircmes exigences
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
Speacutecifications de lrsquoOMG Seacuteparation de la logique meacutetier de
toute plateforme technique Speacutecifications drsquoun langage de
transformation (QVT)
GTI515 Automne 2013 JF Couturier 53
Deacutepartement de geacutenie logiciel et des TI
Concept principal de MDA
Modeacuteliser pour documenter le systegraveme
Modeacuteliser pour construire le systegraveme
GTI515 Automne 2013 JF Couturier 55
Deacutepartement de geacutenie logiciel et des TI
CIM PIM PSM Code CIM
Computing Independant Model
Modegravele du domaine logique meacutetier
PIM Platform Independant Model
Modegravele de conception UML et OCL
PSM Platform Specific Model
NET J2EE
Codehellip
GTI515 Automne 2013 JF Couturier 56
Deacutepartement de geacutenie logiciel et des TI
Les diffeacuterentes eacutetapes
GTI515 Automne 2013 JF Couturier 57
Reacutef the Zachman Framework and the OMGrsquos MDA Business Process Trends Sept 2003
Deacutepartement de geacutenie logiciel et des TI
MDA et Gartner
GTI515 Automne 2013 JF Couturier 58
Gartner Hype Cycle 2008
Deacutepartement de geacutenie logiciel et des TI
Eacutetude de cas
Lecture de la discussion sur MDA Questions
Quels sont les arguments pour
Quels sont les arguments contre
Vos commentaires sur lrsquoarticle
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 59
Deacutepartement de geacutenie logiciel et des TI
Impact
Rocircle du deacuteveloppeur minimiseacute puisqursquoil nrsquointerpregravete plus le modegravele les regravegles de transformation srsquoen chargent
Modegraveles exportables drsquoune plateforme agrave un autre
Plus de 100 articles de recherche sur IEEE entre 2008 et 2009
Maishellip
GTI515 Automne 2013 JF Couturier 60
Deacutepartement de geacutenie logiciel et des TI
Impact
Est-ce applicable au monde agile
Le cycle de modeacutelisation est-il compatible avec le deacuteveloppement iteacuteratif
Est-ce qursquoil y a suffisamment de ressources hautement qualifieacutees pour reacutealiser ce type de projet
Pouvez-vous les former Pouvez-vous les conserver
Produire 80 du code et vous laisser les derniers 20 plus difficileshellip
Comment inteacutegrer les tests
GTI515 Automne 2013 JF Couturier 61
Scott Ambler Enterprise Unified Process p 191
Deacutepartement de geacutenie logiciel et des TI
Impact
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 62
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 63
Domaine
Exigences
Analyse
Conception
Reacutealisation
MDA
PIM
PSM
Modegravele des Processus drsquoaffaires
Modegravele drsquoanalyse du systegraveme
CIM
Modegravele des Cas drsquoutilisation
Modegravele de conception du systegraveme
Les modegraveles du cycle de deacuteveloppement de logiciels
Code
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 64
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 65
Deacutepartement de geacutenie logiciel et des TI
Exemple
GTI515 Automne 2013 JF Couturier 66
httpwwwibmcomdeveloperworksrationallibrary3100html
Deacutepartement de geacutenie logiciel et des TI
Ressources
Site de lOMG MDA Article drsquoIBM sur MDA Discussion sur MDA Wiki MDA Wiki QVT
GTI515 Automne 2013 JF Couturier 67
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 68
Laboratoire 1
Choix du sujet Validation de la porteacutee
Suffisamment long Plusieurs interactions humaines machines Reacutealisable dans une session
Chargeacute de laboratoire Oleg Litvinski Premier laboratoire lundi 7 mai
Deacutepartement de geacutenie logiciel et des TI
Le document de vision (RUP)
Une base de discussion et drsquoaccord parmi les intervenants du projet
Une description de lrsquoapplication en geacuteneacuteral incluant la description du marcheacute cible les clients les utilisateurs du systegraveme les problegravemes agrave reacutesoudre et les caracteacuteristiques de lrsquoapplication
GTI515 Automne 2013 JF Couturier 69
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 70
Requirements Management with Use Cases v20010300
Copyright copy 1998 2001 Rational Software all rights reserved
2
Problem
Solution Space
Problem Space
Needs
Features
SoftwareRequirements
Test Procedures Design User
Docs
The The Product Product To Be To Be BuiltBuilt
Traceability
Deacutepartement de geacutenie logiciel et des TI
Exemples de caracteacuteristiques (feature)
Domaine drsquoapplication Exemple de caracteacuteristique
Systegraveme de commande drsquoascenseur
Commande manuelle des portes durant une urgence de feu
Systegraveme de commande drsquoinventaire
Fournir un statut reacutecent de tous les items reacutepertorieacutes
Systegraveme de suivi de deacutefauts Fournir des laquo donneacutees raquo sur les tendances pour eacutevaluer la
qualiteacute
Systegraveme de paie Rapports par cateacutegories des deacuteductions remis agrave lrsquoimpocirct
Systegraveme de commande drsquoarmes
Minimum de deux confirmations indeacutependantes drsquoautorisation
drsquoattaque exigeacutee
GTI515 Automne 2013 JF Couturier 71
Deacutepartement de geacutenie logiciel et des TI
Niveau de deacutetail des caracteacuteristiques Pour tout nouveau systegraveme ou pour
une ameacutelioration majeure agrave un systegraveme existant il est recommandeacute de garder un niveau drsquoabstraction assez eacuteleveacute de sorte agrave avoir un maximum de caracteacuteristiques compris entre 25-99 et de preacutefeacuterence moins de 50
GTI515 Automne 2013 JF Couturier 72
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Statut Suit le progregraves
Exemples Proposeacute approuveacute incorporeacute etc
PrioriteacuteBeacuteneacutefice
Les caracteacuteristiques ne sont pas agrave prioriteacutes eacutegales ou geacutenegraverent des beacuteneacutefices eacutegaux
Exemple critiques importantes optionnelle
Effort Estimation du nombre de personnessemaines lignes de code points de fonction COSMIC_FFP
Risque La probabiliteacute que la caracteacuteristique aille causer un eacuteveacutenement indeacutesirable tel que le deacutepassement du budget ou des deacutelais ou mecircme lrsquoannulation du projet
GTI515 Automne 2013 JF Couturier 73
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Stabiliteacute La probabiliteacute que la caracteacuteristique elle-mecircme ou sa compreacutehension par lrsquoeacutequipe de deacuteveloppement changera
Mise en application
Documenter la version preacutevue pour laquelle la caracteacuteristique sera incorporeacutee
Assigneacutee agrave Deacutesigner lrsquoeacutequipe responsable de la caracteacuteristique
Raison Lrsquoorigine de la requecircte de la caracteacuteristique
GTI515 Automne 2013 JF Couturier 74
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 75
Deacutepartement de geacutenie logiciel et des TI
Reacutedaction du document de vision une description concise de tout ce qui est important au
produit ou agrave lrsquoapplication eacutecrit avec un niveau de deacutetails dans un langage lisible et
compreacutehensible par les intervenants du projet
Document de 15 agrave 20 pages
GTI515 Automne 2013 JF Couturier 76
Deacutepartement de geacutenie logiciel et des TI
Exemple le cas ACS
GTI515 Automne 2013 JF Couturier 77
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 78
Deacutepartement de geacutenie logiciel et des TI
Exemple de problegravemesle cas ACS
Controcircle drsquoune large gamme de mateacuteriels
Utilisation compliqueacutee Difficulteacutes de programmation Disponibiliteacute du mateacuteriel Risque de mauvaise utilisation
GTI515 Automne 2013 JF Couturier 79
Deacutepartement de geacutenie logiciel et des TI
Exemple de besoinsle cas ACS
AutomatiserLa distribution de fertilisantLa distribution de nourritureLa dureacutee de lrsquoeacuteclairage
Commander lrsquoopeacuteration des appareils Reacuteguler
le niveau et la dureteacute de lrsquoeauLa tempeacuterature
GTI515 Automne 2013 JF Couturier 80
Deacutepartement de geacutenie logiciel et des TI
Exemple de caracteacuteristiquesle cas ACS
Deacutemarrage automatique du systegraveme Programmation conserveacutee en cas de
panne drsquoalimentation Deacutetection automatique des modules Facile agrave programmer et agrave utiliser
Exigence non fonctionnelle
GTI515 Automne 2013 JF Couturier 81
Deacutepartement de geacutenie logiciel et des TI
Critegraveres drsquoeacutevaluation
Respect de lrsquoesprit du document
En tant qursquointervenant externe est-ce que je comprends bien
Respect de la forme du gabarit
Qualiteacute du franccedilais
Document de calibre professionnel que lrsquoon pourrait remettre agrave un dirigeant
GTI515 Automne 2013 JF Couturier 82
Deacutepartement de geacutenie logiciel et des TI
Grille drsquoeacutevaluation (sur 100)
Agrave venirhellip
GTI515 Automne 2013 JF Couturier 83
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 84
Prochain cours
La modeacutelisation des processus drsquoaffaires Le diagramme drsquoactiviteacute Le diagnostic des processus drsquoaffaires existant
Lectures Lrsquoutilisation drsquoUML Chapitre sur les diagrammes drsquoactiviteacutes dans Larman Lecture sur MDA Voir site Web du cours
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 85
Questions
- Systegravemes drsquoinformation dans les entreprises (GTI515)
- Plan du cours 1
- Qui suis-je JF Couturier
- Qui suis-je Eacutetudiant(e)
- Plan du cours 1 (2)
- Objectifs du programme
- Ingeacutenieur
- Programme GTI
- Geacutenie des TI
- Cours de speacutecialiteacutes GTI
- Objectif du cours
- Vue drsquoensemble du cours
- Lectures et reacutefeacuterences
- Regravegles du jeu
- QUIZ
- Plan du cours 1 (3)
- Plan de cours
- Laboratoires ndash GTI515
- Peacutenaliteacutes de retard
- Plagiat
- Plan du cours 1 (4)
- Les tendances dans le deacuteveloppement des systegravemes drsquoinformation
- UML - Historique
- Pourquoi modeacuteliser
- La modeacutelisation dans les entreprises
- Quelques chiffres
- Quelques chiffres (2)
- Quelques chiffres (3)
- Quelques chiffres (4)
- Quelques chiffres (5)
- Et maintenant
- Et maintenant (2)
- Finalementhellip
- Reacuteussite Eacutechec
- Rappel
- Industrialisation
- Industrialisation (2)
- Slide 39
- Slide 40
- Usines logicielles (S Factory)
- Usines logicielles (S Factory) (2)
- Usines logicielles (S Factory) (3)
- Usines logicielles (S Factory) (4)
- Usines logicielles
- Domain Specific Langage
- BuzzhellipMDA MDD MDE
- Exemple
- Model Driven Architecture
- Model Driven Architecture (2)
- Model Driven Architecture (3)
- Model Driven Architecture (4)
- Model Driven Architecture (5)
- Concept principal de MDA
- CIM PIM PSM Code
- Les diffeacuterentes eacutetapes
- MDA et Gartner
- Eacutetude de cas
- Impact
- Impact (2)
- Impact (3)
- Slide 63
- Slide 64
- Slide 65
- Exemple (2)
- Ressources
- Laboratoire 1
- Le document de vision (RUP)
- Slide 70
- Exemples de caracteacuteristiques (feature)
- Niveau de deacutetail des caracteacuteristiques
- Attributs des caracteacuteristiques
- Attributs des caracteacuteristiques
- Slide 75
- Reacutedaction du document de vision
- Exemple le cas ACS
- Slide 78
- Exemple de problegravemes le cas ACS
- Exemple de besoins le cas ACS
- Exemple de caracteacuteristiques le cas ACS
- Critegraveres drsquoeacutevaluation
- Grille drsquoeacutevaluation (sur 100)
- Prochain cours
- Questions
-
Deacutepartement de geacutenie logiciel et des TI
Et maintenant
GTI515 Automne 2013 JF Couturier 32
CHAOS Summary 2009
Deacutepartement de geacutenie logiciel et des TI
Et maintenant
GTI515 Automne 2013 JF Couturier 33
Standish Group 1999
CHAOS Summary 2009
Deacutepartement de geacutenie logiciel et des TI
Finalementhellip
GTI515 Automne 2013 JF Couturier 34
Deacutepartement de geacutenie logiciel et des TI
Reacuteussite Eacutechec
Mais qursquoest-ce qursquoun projet reacuteussi Dans les temps Dans le budget Avec les fonctions preacutevues
GTI515 Automne 2013 JF Couturier 35
Deacutepartement de geacutenie logiciel et des TI
Rappel
Notre domaine est tregraves jeune (70 ans) Geacutenie de la constructionhellip5000 ans
Mais nous progressons tregraves rapidement Pourquoi le geacutenie en TI
Artisanat vs geacutenie (le pif vs la meacutethode)
Acircge du geacutenie logiciel TI - Maturiteacute
Science virtuelle vs Meacutecanique construction
Une tendancehellipDe lrsquoartisanat agrave lrsquoindustrialisation du deacuteveloppement logiciel
GTI515 Automne 2013 JF Couturier 36
Deacutepartement de geacutenie logiciel et des TI
Industrialisation
Vers le milieu du 19e siegravecle Segmenter le travail des individus pour
ne pas ecirctre deacutependant drsquoun artisan Permet une production beaucoup plus
efficace en seacuterie
GTI515 Automne 2013 JF Couturier 37
Deacutepartement de geacutenie logiciel et des TI
Industrialisation
Est-ce que le deacuteveloppement peut-ecirctre industrialiseacuteCertains disent que non que le logiciel agrave
un caractegravere trop creacuteatif
Drsquoautres pensent que les reacutecents progregraves dans le domaine permettent une eacuteventuelle industrialisation dans la production drsquoapplication
GTI515 Automne 2013 JF Couturier 38
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 39
Technologies(OO CBD Services Web SOA
XML AOP DB design patternshellip)
Ingeacutenierie dirigeacutee par les modegraveles
Usines logicielles (Microsoft)Architecture dirigeacutee par les modegraveles (OMG)
Deux applications drsquoun mecircme concept de base
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 40
Techniques de deacuteveloppement assisteacute par ordinateur (Reacutef Software Factories Greenfield J p144)
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Un modegravele tregraves deacutetailleacute beaucoup de code geacuteneacutereacute
CASE Tools (Computer-aided software engineering)
Mal adapteacute au deacuteveloppement agile qui implique souvent des solutions partielles tregraves tocirct dans le cycle de deacuteveloppement
Synchronisation difficile
Eacuteloigneacutee de la plateforme
GTI515 Automne 2013 JF Couturier 41
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Exemple Outils graphiques de modeacutelisation des classes
Plus proche de la plateforme
Code geacuteneacutereacute pour la plateforme
Plus simple
Aide geacuteneacuteralement le deacuteveloppeur agrave voir les deacutependances entre les classes
Il reste beaucoup de code agrave faire agrave la main
Penser agrave coder du SWING Java agrave la mitaine
GTI515 Automne 2013 JF Couturier 42
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Existence drsquoun framework logiciel
On se base sur le framework pour automatiser-compleacuteter la production de certains eacuteleacutements comme les eacuteleacutements graphiques
Abstraction plus eacuteleveacutee
VB6 et ses formulaires
NET Hibernate
Peu drsquoabstractions au niveau du modegravele Classe entiteacute-relation
GTI515 Automne 2013 JF Couturier 43
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Finalement il y a la possibiliteacute drsquoavoir une laquo pile raquo de modegraveles
Drsquoun modegravele agrave lrsquoautre il y a transformation vers un modegravele de plus en plus preacutecis
Approche MDA
Concept de Domain Specific Language
Pour un domaine particulier on creacutee des laquo templates raquo reacuteutilisables
Permets la contribution des experts meacutetiers
GTI515 Automne 2013 JF Couturier 44
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles
GTI515 Automne 2013 JF Couturier 45
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Domain Specific Langage
Par opposition au General purpose language comme UML C++ Java ou C
AvantagesPermets agrave un expert meacutetier de
comprendre et valider un modegravele
InconveacutenientCoucirct Formation Maintenance
GTI515 Automne 2013 JF Couturier 46
httpenwikipediaorgwikiDomain_Specific_Language
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 47
BuzzhellipMDA MDD MDE
Model Driven Architecturemarque de commerce de lrsquoOMG
Model Driven Developmentextension de MDAmarque de commerce de lrsquoOMG
Model Driven Engineeringexpression geacuteneacuterique
Deacutepartement de geacutenie logiciel et des TI
Exemple Agrave partir des speacutecifications des exigences logicielles
Lrsquoacteur saisit la commande contenant
lrsquoadresse de livraison
lrsquoadresse de facturation
Le systegraveme creacutee la commande
Lrsquoacteur saisit un deacutetail de la commande avec
le nom du produit
la quantiteacute demandeacutee
le prix du produit
Le systegraveme creacutee le deacutetail et revient agrave lrsquoeacutetape 3
Lrsquoacteur termine la commande
Le systegraveme ferme la commande
GTI515 Automne 2013 JF Couturier 48
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 49
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Un modegravele (Diagramme de classes UML)
Deacutepartement de geacutenie logiciel et des TI
Model Driven ArchitectureUn scheacutema XML
ltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gt
ltxsdschema xmlnsxsd=httpwww targetNamespace=helliprsaquo
ltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo minOccurs=ldquo0ldquo maxOccurs=ldquounboundedgt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdcomplexType name=ldquoDetailCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoprixldquo type=ldquo xsdfloatldquogt
ltxsdelement name=ldquoquantiteldquo type=ldquo xsdintldquogt
ltxsdelement name=ldquonomProduitldquo type=ldquo xsdstringldquogt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdschemarsaquo
GTI515 Automne 2013 JF Couturier 50
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 51
Des classes Java
public class Commande
private String adresseLivraison
private String adresseFacturation
private Collection detailCommande
hellip
String getAdresseLivraison()
void setAdresseLivraison(String value)
String getAdresseFacturation()
void setAdresseFacturation(String value)
public class DetailCommande
private float prix
private int quantite
private String nomProduit
float getPrix()
void setPrix(float value)
int getQuantite()
void setQuantite(int value)
String getNomProduit()
void setNomProduit(String value)
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 52
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Programmepublic class Commande
private String adresseLivraisonprivate String adresseFacturation
String getAdresseLivraison()void setAdresseLivraison(String value)
String getAdresseFacturation()void setAdresseFacturation(String value)
Scheacutema XMLltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gtltxsdschema xmlnsxsd=httpwww
targetNamespace=helliprsaquoltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo
xsdstringldquogt ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo
Modegravele UML3 repreacutesentationsdes mecircmes exigences
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
Speacutecifications de lrsquoOMG Seacuteparation de la logique meacutetier de
toute plateforme technique Speacutecifications drsquoun langage de
transformation (QVT)
GTI515 Automne 2013 JF Couturier 53
Deacutepartement de geacutenie logiciel et des TI
Concept principal de MDA
Modeacuteliser pour documenter le systegraveme
Modeacuteliser pour construire le systegraveme
GTI515 Automne 2013 JF Couturier 55
Deacutepartement de geacutenie logiciel et des TI
CIM PIM PSM Code CIM
Computing Independant Model
Modegravele du domaine logique meacutetier
PIM Platform Independant Model
Modegravele de conception UML et OCL
PSM Platform Specific Model
NET J2EE
Codehellip
GTI515 Automne 2013 JF Couturier 56
Deacutepartement de geacutenie logiciel et des TI
Les diffeacuterentes eacutetapes
GTI515 Automne 2013 JF Couturier 57
Reacutef the Zachman Framework and the OMGrsquos MDA Business Process Trends Sept 2003
Deacutepartement de geacutenie logiciel et des TI
MDA et Gartner
GTI515 Automne 2013 JF Couturier 58
Gartner Hype Cycle 2008
Deacutepartement de geacutenie logiciel et des TI
Eacutetude de cas
Lecture de la discussion sur MDA Questions
Quels sont les arguments pour
Quels sont les arguments contre
Vos commentaires sur lrsquoarticle
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 59
Deacutepartement de geacutenie logiciel et des TI
Impact
Rocircle du deacuteveloppeur minimiseacute puisqursquoil nrsquointerpregravete plus le modegravele les regravegles de transformation srsquoen chargent
Modegraveles exportables drsquoune plateforme agrave un autre
Plus de 100 articles de recherche sur IEEE entre 2008 et 2009
Maishellip
GTI515 Automne 2013 JF Couturier 60
Deacutepartement de geacutenie logiciel et des TI
Impact
Est-ce applicable au monde agile
Le cycle de modeacutelisation est-il compatible avec le deacuteveloppement iteacuteratif
Est-ce qursquoil y a suffisamment de ressources hautement qualifieacutees pour reacutealiser ce type de projet
Pouvez-vous les former Pouvez-vous les conserver
Produire 80 du code et vous laisser les derniers 20 plus difficileshellip
Comment inteacutegrer les tests
GTI515 Automne 2013 JF Couturier 61
Scott Ambler Enterprise Unified Process p 191
Deacutepartement de geacutenie logiciel et des TI
Impact
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 62
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 63
Domaine
Exigences
Analyse
Conception
Reacutealisation
MDA
PIM
PSM
Modegravele des Processus drsquoaffaires
Modegravele drsquoanalyse du systegraveme
CIM
Modegravele des Cas drsquoutilisation
Modegravele de conception du systegraveme
Les modegraveles du cycle de deacuteveloppement de logiciels
Code
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 64
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 65
Deacutepartement de geacutenie logiciel et des TI
Exemple
GTI515 Automne 2013 JF Couturier 66
httpwwwibmcomdeveloperworksrationallibrary3100html
Deacutepartement de geacutenie logiciel et des TI
Ressources
Site de lOMG MDA Article drsquoIBM sur MDA Discussion sur MDA Wiki MDA Wiki QVT
GTI515 Automne 2013 JF Couturier 67
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 68
Laboratoire 1
Choix du sujet Validation de la porteacutee
Suffisamment long Plusieurs interactions humaines machines Reacutealisable dans une session
Chargeacute de laboratoire Oleg Litvinski Premier laboratoire lundi 7 mai
Deacutepartement de geacutenie logiciel et des TI
Le document de vision (RUP)
Une base de discussion et drsquoaccord parmi les intervenants du projet
Une description de lrsquoapplication en geacuteneacuteral incluant la description du marcheacute cible les clients les utilisateurs du systegraveme les problegravemes agrave reacutesoudre et les caracteacuteristiques de lrsquoapplication
GTI515 Automne 2013 JF Couturier 69
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 70
Requirements Management with Use Cases v20010300
Copyright copy 1998 2001 Rational Software all rights reserved
2
Problem
Solution Space
Problem Space
Needs
Features
SoftwareRequirements
Test Procedures Design User
Docs
The The Product Product To Be To Be BuiltBuilt
Traceability
Deacutepartement de geacutenie logiciel et des TI
Exemples de caracteacuteristiques (feature)
Domaine drsquoapplication Exemple de caracteacuteristique
Systegraveme de commande drsquoascenseur
Commande manuelle des portes durant une urgence de feu
Systegraveme de commande drsquoinventaire
Fournir un statut reacutecent de tous les items reacutepertorieacutes
Systegraveme de suivi de deacutefauts Fournir des laquo donneacutees raquo sur les tendances pour eacutevaluer la
qualiteacute
Systegraveme de paie Rapports par cateacutegories des deacuteductions remis agrave lrsquoimpocirct
Systegraveme de commande drsquoarmes
Minimum de deux confirmations indeacutependantes drsquoautorisation
drsquoattaque exigeacutee
GTI515 Automne 2013 JF Couturier 71
Deacutepartement de geacutenie logiciel et des TI
Niveau de deacutetail des caracteacuteristiques Pour tout nouveau systegraveme ou pour
une ameacutelioration majeure agrave un systegraveme existant il est recommandeacute de garder un niveau drsquoabstraction assez eacuteleveacute de sorte agrave avoir un maximum de caracteacuteristiques compris entre 25-99 et de preacutefeacuterence moins de 50
GTI515 Automne 2013 JF Couturier 72
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Statut Suit le progregraves
Exemples Proposeacute approuveacute incorporeacute etc
PrioriteacuteBeacuteneacutefice
Les caracteacuteristiques ne sont pas agrave prioriteacutes eacutegales ou geacutenegraverent des beacuteneacutefices eacutegaux
Exemple critiques importantes optionnelle
Effort Estimation du nombre de personnessemaines lignes de code points de fonction COSMIC_FFP
Risque La probabiliteacute que la caracteacuteristique aille causer un eacuteveacutenement indeacutesirable tel que le deacutepassement du budget ou des deacutelais ou mecircme lrsquoannulation du projet
GTI515 Automne 2013 JF Couturier 73
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Stabiliteacute La probabiliteacute que la caracteacuteristique elle-mecircme ou sa compreacutehension par lrsquoeacutequipe de deacuteveloppement changera
Mise en application
Documenter la version preacutevue pour laquelle la caracteacuteristique sera incorporeacutee
Assigneacutee agrave Deacutesigner lrsquoeacutequipe responsable de la caracteacuteristique
Raison Lrsquoorigine de la requecircte de la caracteacuteristique
GTI515 Automne 2013 JF Couturier 74
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 75
Deacutepartement de geacutenie logiciel et des TI
Reacutedaction du document de vision une description concise de tout ce qui est important au
produit ou agrave lrsquoapplication eacutecrit avec un niveau de deacutetails dans un langage lisible et
compreacutehensible par les intervenants du projet
Document de 15 agrave 20 pages
GTI515 Automne 2013 JF Couturier 76
Deacutepartement de geacutenie logiciel et des TI
Exemple le cas ACS
GTI515 Automne 2013 JF Couturier 77
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 78
Deacutepartement de geacutenie logiciel et des TI
Exemple de problegravemesle cas ACS
Controcircle drsquoune large gamme de mateacuteriels
Utilisation compliqueacutee Difficulteacutes de programmation Disponibiliteacute du mateacuteriel Risque de mauvaise utilisation
GTI515 Automne 2013 JF Couturier 79
Deacutepartement de geacutenie logiciel et des TI
Exemple de besoinsle cas ACS
AutomatiserLa distribution de fertilisantLa distribution de nourritureLa dureacutee de lrsquoeacuteclairage
Commander lrsquoopeacuteration des appareils Reacuteguler
le niveau et la dureteacute de lrsquoeauLa tempeacuterature
GTI515 Automne 2013 JF Couturier 80
Deacutepartement de geacutenie logiciel et des TI
Exemple de caracteacuteristiquesle cas ACS
Deacutemarrage automatique du systegraveme Programmation conserveacutee en cas de
panne drsquoalimentation Deacutetection automatique des modules Facile agrave programmer et agrave utiliser
Exigence non fonctionnelle
GTI515 Automne 2013 JF Couturier 81
Deacutepartement de geacutenie logiciel et des TI
Critegraveres drsquoeacutevaluation
Respect de lrsquoesprit du document
En tant qursquointervenant externe est-ce que je comprends bien
Respect de la forme du gabarit
Qualiteacute du franccedilais
Document de calibre professionnel que lrsquoon pourrait remettre agrave un dirigeant
GTI515 Automne 2013 JF Couturier 82
Deacutepartement de geacutenie logiciel et des TI
Grille drsquoeacutevaluation (sur 100)
Agrave venirhellip
GTI515 Automne 2013 JF Couturier 83
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 84
Prochain cours
La modeacutelisation des processus drsquoaffaires Le diagramme drsquoactiviteacute Le diagnostic des processus drsquoaffaires existant
Lectures Lrsquoutilisation drsquoUML Chapitre sur les diagrammes drsquoactiviteacutes dans Larman Lecture sur MDA Voir site Web du cours
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 85
Questions
- Systegravemes drsquoinformation dans les entreprises (GTI515)
- Plan du cours 1
- Qui suis-je JF Couturier
- Qui suis-je Eacutetudiant(e)
- Plan du cours 1 (2)
- Objectifs du programme
- Ingeacutenieur
- Programme GTI
- Geacutenie des TI
- Cours de speacutecialiteacutes GTI
- Objectif du cours
- Vue drsquoensemble du cours
- Lectures et reacutefeacuterences
- Regravegles du jeu
- QUIZ
- Plan du cours 1 (3)
- Plan de cours
- Laboratoires ndash GTI515
- Peacutenaliteacutes de retard
- Plagiat
- Plan du cours 1 (4)
- Les tendances dans le deacuteveloppement des systegravemes drsquoinformation
- UML - Historique
- Pourquoi modeacuteliser
- La modeacutelisation dans les entreprises
- Quelques chiffres
- Quelques chiffres (2)
- Quelques chiffres (3)
- Quelques chiffres (4)
- Quelques chiffres (5)
- Et maintenant
- Et maintenant (2)
- Finalementhellip
- Reacuteussite Eacutechec
- Rappel
- Industrialisation
- Industrialisation (2)
- Slide 39
- Slide 40
- Usines logicielles (S Factory)
- Usines logicielles (S Factory) (2)
- Usines logicielles (S Factory) (3)
- Usines logicielles (S Factory) (4)
- Usines logicielles
- Domain Specific Langage
- BuzzhellipMDA MDD MDE
- Exemple
- Model Driven Architecture
- Model Driven Architecture (2)
- Model Driven Architecture (3)
- Model Driven Architecture (4)
- Model Driven Architecture (5)
- Concept principal de MDA
- CIM PIM PSM Code
- Les diffeacuterentes eacutetapes
- MDA et Gartner
- Eacutetude de cas
- Impact
- Impact (2)
- Impact (3)
- Slide 63
- Slide 64
- Slide 65
- Exemple (2)
- Ressources
- Laboratoire 1
- Le document de vision (RUP)
- Slide 70
- Exemples de caracteacuteristiques (feature)
- Niveau de deacutetail des caracteacuteristiques
- Attributs des caracteacuteristiques
- Attributs des caracteacuteristiques
- Slide 75
- Reacutedaction du document de vision
- Exemple le cas ACS
- Slide 78
- Exemple de problegravemes le cas ACS
- Exemple de besoins le cas ACS
- Exemple de caracteacuteristiques le cas ACS
- Critegraveres drsquoeacutevaluation
- Grille drsquoeacutevaluation (sur 100)
- Prochain cours
- Questions
-
Deacutepartement de geacutenie logiciel et des TI
Et maintenant
GTI515 Automne 2013 JF Couturier 33
Standish Group 1999
CHAOS Summary 2009
Deacutepartement de geacutenie logiciel et des TI
Finalementhellip
GTI515 Automne 2013 JF Couturier 34
Deacutepartement de geacutenie logiciel et des TI
Reacuteussite Eacutechec
Mais qursquoest-ce qursquoun projet reacuteussi Dans les temps Dans le budget Avec les fonctions preacutevues
GTI515 Automne 2013 JF Couturier 35
Deacutepartement de geacutenie logiciel et des TI
Rappel
Notre domaine est tregraves jeune (70 ans) Geacutenie de la constructionhellip5000 ans
Mais nous progressons tregraves rapidement Pourquoi le geacutenie en TI
Artisanat vs geacutenie (le pif vs la meacutethode)
Acircge du geacutenie logiciel TI - Maturiteacute
Science virtuelle vs Meacutecanique construction
Une tendancehellipDe lrsquoartisanat agrave lrsquoindustrialisation du deacuteveloppement logiciel
GTI515 Automne 2013 JF Couturier 36
Deacutepartement de geacutenie logiciel et des TI
Industrialisation
Vers le milieu du 19e siegravecle Segmenter le travail des individus pour
ne pas ecirctre deacutependant drsquoun artisan Permet une production beaucoup plus
efficace en seacuterie
GTI515 Automne 2013 JF Couturier 37
Deacutepartement de geacutenie logiciel et des TI
Industrialisation
Est-ce que le deacuteveloppement peut-ecirctre industrialiseacuteCertains disent que non que le logiciel agrave
un caractegravere trop creacuteatif
Drsquoautres pensent que les reacutecents progregraves dans le domaine permettent une eacuteventuelle industrialisation dans la production drsquoapplication
GTI515 Automne 2013 JF Couturier 38
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 39
Technologies(OO CBD Services Web SOA
XML AOP DB design patternshellip)
Ingeacutenierie dirigeacutee par les modegraveles
Usines logicielles (Microsoft)Architecture dirigeacutee par les modegraveles (OMG)
Deux applications drsquoun mecircme concept de base
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 40
Techniques de deacuteveloppement assisteacute par ordinateur (Reacutef Software Factories Greenfield J p144)
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Un modegravele tregraves deacutetailleacute beaucoup de code geacuteneacutereacute
CASE Tools (Computer-aided software engineering)
Mal adapteacute au deacuteveloppement agile qui implique souvent des solutions partielles tregraves tocirct dans le cycle de deacuteveloppement
Synchronisation difficile
Eacuteloigneacutee de la plateforme
GTI515 Automne 2013 JF Couturier 41
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Exemple Outils graphiques de modeacutelisation des classes
Plus proche de la plateforme
Code geacuteneacutereacute pour la plateforme
Plus simple
Aide geacuteneacuteralement le deacuteveloppeur agrave voir les deacutependances entre les classes
Il reste beaucoup de code agrave faire agrave la main
Penser agrave coder du SWING Java agrave la mitaine
GTI515 Automne 2013 JF Couturier 42
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Existence drsquoun framework logiciel
On se base sur le framework pour automatiser-compleacuteter la production de certains eacuteleacutements comme les eacuteleacutements graphiques
Abstraction plus eacuteleveacutee
VB6 et ses formulaires
NET Hibernate
Peu drsquoabstractions au niveau du modegravele Classe entiteacute-relation
GTI515 Automne 2013 JF Couturier 43
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Finalement il y a la possibiliteacute drsquoavoir une laquo pile raquo de modegraveles
Drsquoun modegravele agrave lrsquoautre il y a transformation vers un modegravele de plus en plus preacutecis
Approche MDA
Concept de Domain Specific Language
Pour un domaine particulier on creacutee des laquo templates raquo reacuteutilisables
Permets la contribution des experts meacutetiers
GTI515 Automne 2013 JF Couturier 44
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles
GTI515 Automne 2013 JF Couturier 45
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Domain Specific Langage
Par opposition au General purpose language comme UML C++ Java ou C
AvantagesPermets agrave un expert meacutetier de
comprendre et valider un modegravele
InconveacutenientCoucirct Formation Maintenance
GTI515 Automne 2013 JF Couturier 46
httpenwikipediaorgwikiDomain_Specific_Language
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 47
BuzzhellipMDA MDD MDE
Model Driven Architecturemarque de commerce de lrsquoOMG
Model Driven Developmentextension de MDAmarque de commerce de lrsquoOMG
Model Driven Engineeringexpression geacuteneacuterique
Deacutepartement de geacutenie logiciel et des TI
Exemple Agrave partir des speacutecifications des exigences logicielles
Lrsquoacteur saisit la commande contenant
lrsquoadresse de livraison
lrsquoadresse de facturation
Le systegraveme creacutee la commande
Lrsquoacteur saisit un deacutetail de la commande avec
le nom du produit
la quantiteacute demandeacutee
le prix du produit
Le systegraveme creacutee le deacutetail et revient agrave lrsquoeacutetape 3
Lrsquoacteur termine la commande
Le systegraveme ferme la commande
GTI515 Automne 2013 JF Couturier 48
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 49
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Un modegravele (Diagramme de classes UML)
Deacutepartement de geacutenie logiciel et des TI
Model Driven ArchitectureUn scheacutema XML
ltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gt
ltxsdschema xmlnsxsd=httpwww targetNamespace=helliprsaquo
ltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo minOccurs=ldquo0ldquo maxOccurs=ldquounboundedgt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdcomplexType name=ldquoDetailCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoprixldquo type=ldquo xsdfloatldquogt
ltxsdelement name=ldquoquantiteldquo type=ldquo xsdintldquogt
ltxsdelement name=ldquonomProduitldquo type=ldquo xsdstringldquogt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdschemarsaquo
GTI515 Automne 2013 JF Couturier 50
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 51
Des classes Java
public class Commande
private String adresseLivraison
private String adresseFacturation
private Collection detailCommande
hellip
String getAdresseLivraison()
void setAdresseLivraison(String value)
String getAdresseFacturation()
void setAdresseFacturation(String value)
public class DetailCommande
private float prix
private int quantite
private String nomProduit
float getPrix()
void setPrix(float value)
int getQuantite()
void setQuantite(int value)
String getNomProduit()
void setNomProduit(String value)
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 52
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Programmepublic class Commande
private String adresseLivraisonprivate String adresseFacturation
String getAdresseLivraison()void setAdresseLivraison(String value)
String getAdresseFacturation()void setAdresseFacturation(String value)
Scheacutema XMLltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gtltxsdschema xmlnsxsd=httpwww
targetNamespace=helliprsaquoltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo
xsdstringldquogt ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo
Modegravele UML3 repreacutesentationsdes mecircmes exigences
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
Speacutecifications de lrsquoOMG Seacuteparation de la logique meacutetier de
toute plateforme technique Speacutecifications drsquoun langage de
transformation (QVT)
GTI515 Automne 2013 JF Couturier 53
Deacutepartement de geacutenie logiciel et des TI
Concept principal de MDA
Modeacuteliser pour documenter le systegraveme
Modeacuteliser pour construire le systegraveme
GTI515 Automne 2013 JF Couturier 55
Deacutepartement de geacutenie logiciel et des TI
CIM PIM PSM Code CIM
Computing Independant Model
Modegravele du domaine logique meacutetier
PIM Platform Independant Model
Modegravele de conception UML et OCL
PSM Platform Specific Model
NET J2EE
Codehellip
GTI515 Automne 2013 JF Couturier 56
Deacutepartement de geacutenie logiciel et des TI
Les diffeacuterentes eacutetapes
GTI515 Automne 2013 JF Couturier 57
Reacutef the Zachman Framework and the OMGrsquos MDA Business Process Trends Sept 2003
Deacutepartement de geacutenie logiciel et des TI
MDA et Gartner
GTI515 Automne 2013 JF Couturier 58
Gartner Hype Cycle 2008
Deacutepartement de geacutenie logiciel et des TI
Eacutetude de cas
Lecture de la discussion sur MDA Questions
Quels sont les arguments pour
Quels sont les arguments contre
Vos commentaires sur lrsquoarticle
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 59
Deacutepartement de geacutenie logiciel et des TI
Impact
Rocircle du deacuteveloppeur minimiseacute puisqursquoil nrsquointerpregravete plus le modegravele les regravegles de transformation srsquoen chargent
Modegraveles exportables drsquoune plateforme agrave un autre
Plus de 100 articles de recherche sur IEEE entre 2008 et 2009
Maishellip
GTI515 Automne 2013 JF Couturier 60
Deacutepartement de geacutenie logiciel et des TI
Impact
Est-ce applicable au monde agile
Le cycle de modeacutelisation est-il compatible avec le deacuteveloppement iteacuteratif
Est-ce qursquoil y a suffisamment de ressources hautement qualifieacutees pour reacutealiser ce type de projet
Pouvez-vous les former Pouvez-vous les conserver
Produire 80 du code et vous laisser les derniers 20 plus difficileshellip
Comment inteacutegrer les tests
GTI515 Automne 2013 JF Couturier 61
Scott Ambler Enterprise Unified Process p 191
Deacutepartement de geacutenie logiciel et des TI
Impact
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 62
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 63
Domaine
Exigences
Analyse
Conception
Reacutealisation
MDA
PIM
PSM
Modegravele des Processus drsquoaffaires
Modegravele drsquoanalyse du systegraveme
CIM
Modegravele des Cas drsquoutilisation
Modegravele de conception du systegraveme
Les modegraveles du cycle de deacuteveloppement de logiciels
Code
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 64
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 65
Deacutepartement de geacutenie logiciel et des TI
Exemple
GTI515 Automne 2013 JF Couturier 66
httpwwwibmcomdeveloperworksrationallibrary3100html
Deacutepartement de geacutenie logiciel et des TI
Ressources
Site de lOMG MDA Article drsquoIBM sur MDA Discussion sur MDA Wiki MDA Wiki QVT
GTI515 Automne 2013 JF Couturier 67
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 68
Laboratoire 1
Choix du sujet Validation de la porteacutee
Suffisamment long Plusieurs interactions humaines machines Reacutealisable dans une session
Chargeacute de laboratoire Oleg Litvinski Premier laboratoire lundi 7 mai
Deacutepartement de geacutenie logiciel et des TI
Le document de vision (RUP)
Une base de discussion et drsquoaccord parmi les intervenants du projet
Une description de lrsquoapplication en geacuteneacuteral incluant la description du marcheacute cible les clients les utilisateurs du systegraveme les problegravemes agrave reacutesoudre et les caracteacuteristiques de lrsquoapplication
GTI515 Automne 2013 JF Couturier 69
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 70
Requirements Management with Use Cases v20010300
Copyright copy 1998 2001 Rational Software all rights reserved
2
Problem
Solution Space
Problem Space
Needs
Features
SoftwareRequirements
Test Procedures Design User
Docs
The The Product Product To Be To Be BuiltBuilt
Traceability
Deacutepartement de geacutenie logiciel et des TI
Exemples de caracteacuteristiques (feature)
Domaine drsquoapplication Exemple de caracteacuteristique
Systegraveme de commande drsquoascenseur
Commande manuelle des portes durant une urgence de feu
Systegraveme de commande drsquoinventaire
Fournir un statut reacutecent de tous les items reacutepertorieacutes
Systegraveme de suivi de deacutefauts Fournir des laquo donneacutees raquo sur les tendances pour eacutevaluer la
qualiteacute
Systegraveme de paie Rapports par cateacutegories des deacuteductions remis agrave lrsquoimpocirct
Systegraveme de commande drsquoarmes
Minimum de deux confirmations indeacutependantes drsquoautorisation
drsquoattaque exigeacutee
GTI515 Automne 2013 JF Couturier 71
Deacutepartement de geacutenie logiciel et des TI
Niveau de deacutetail des caracteacuteristiques Pour tout nouveau systegraveme ou pour
une ameacutelioration majeure agrave un systegraveme existant il est recommandeacute de garder un niveau drsquoabstraction assez eacuteleveacute de sorte agrave avoir un maximum de caracteacuteristiques compris entre 25-99 et de preacutefeacuterence moins de 50
GTI515 Automne 2013 JF Couturier 72
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Statut Suit le progregraves
Exemples Proposeacute approuveacute incorporeacute etc
PrioriteacuteBeacuteneacutefice
Les caracteacuteristiques ne sont pas agrave prioriteacutes eacutegales ou geacutenegraverent des beacuteneacutefices eacutegaux
Exemple critiques importantes optionnelle
Effort Estimation du nombre de personnessemaines lignes de code points de fonction COSMIC_FFP
Risque La probabiliteacute que la caracteacuteristique aille causer un eacuteveacutenement indeacutesirable tel que le deacutepassement du budget ou des deacutelais ou mecircme lrsquoannulation du projet
GTI515 Automne 2013 JF Couturier 73
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Stabiliteacute La probabiliteacute que la caracteacuteristique elle-mecircme ou sa compreacutehension par lrsquoeacutequipe de deacuteveloppement changera
Mise en application
Documenter la version preacutevue pour laquelle la caracteacuteristique sera incorporeacutee
Assigneacutee agrave Deacutesigner lrsquoeacutequipe responsable de la caracteacuteristique
Raison Lrsquoorigine de la requecircte de la caracteacuteristique
GTI515 Automne 2013 JF Couturier 74
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 75
Deacutepartement de geacutenie logiciel et des TI
Reacutedaction du document de vision une description concise de tout ce qui est important au
produit ou agrave lrsquoapplication eacutecrit avec un niveau de deacutetails dans un langage lisible et
compreacutehensible par les intervenants du projet
Document de 15 agrave 20 pages
GTI515 Automne 2013 JF Couturier 76
Deacutepartement de geacutenie logiciel et des TI
Exemple le cas ACS
GTI515 Automne 2013 JF Couturier 77
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 78
Deacutepartement de geacutenie logiciel et des TI
Exemple de problegravemesle cas ACS
Controcircle drsquoune large gamme de mateacuteriels
Utilisation compliqueacutee Difficulteacutes de programmation Disponibiliteacute du mateacuteriel Risque de mauvaise utilisation
GTI515 Automne 2013 JF Couturier 79
Deacutepartement de geacutenie logiciel et des TI
Exemple de besoinsle cas ACS
AutomatiserLa distribution de fertilisantLa distribution de nourritureLa dureacutee de lrsquoeacuteclairage
Commander lrsquoopeacuteration des appareils Reacuteguler
le niveau et la dureteacute de lrsquoeauLa tempeacuterature
GTI515 Automne 2013 JF Couturier 80
Deacutepartement de geacutenie logiciel et des TI
Exemple de caracteacuteristiquesle cas ACS
Deacutemarrage automatique du systegraveme Programmation conserveacutee en cas de
panne drsquoalimentation Deacutetection automatique des modules Facile agrave programmer et agrave utiliser
Exigence non fonctionnelle
GTI515 Automne 2013 JF Couturier 81
Deacutepartement de geacutenie logiciel et des TI
Critegraveres drsquoeacutevaluation
Respect de lrsquoesprit du document
En tant qursquointervenant externe est-ce que je comprends bien
Respect de la forme du gabarit
Qualiteacute du franccedilais
Document de calibre professionnel que lrsquoon pourrait remettre agrave un dirigeant
GTI515 Automne 2013 JF Couturier 82
Deacutepartement de geacutenie logiciel et des TI
Grille drsquoeacutevaluation (sur 100)
Agrave venirhellip
GTI515 Automne 2013 JF Couturier 83
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 84
Prochain cours
La modeacutelisation des processus drsquoaffaires Le diagramme drsquoactiviteacute Le diagnostic des processus drsquoaffaires existant
Lectures Lrsquoutilisation drsquoUML Chapitre sur les diagrammes drsquoactiviteacutes dans Larman Lecture sur MDA Voir site Web du cours
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 85
Questions
- Systegravemes drsquoinformation dans les entreprises (GTI515)
- Plan du cours 1
- Qui suis-je JF Couturier
- Qui suis-je Eacutetudiant(e)
- Plan du cours 1 (2)
- Objectifs du programme
- Ingeacutenieur
- Programme GTI
- Geacutenie des TI
- Cours de speacutecialiteacutes GTI
- Objectif du cours
- Vue drsquoensemble du cours
- Lectures et reacutefeacuterences
- Regravegles du jeu
- QUIZ
- Plan du cours 1 (3)
- Plan de cours
- Laboratoires ndash GTI515
- Peacutenaliteacutes de retard
- Plagiat
- Plan du cours 1 (4)
- Les tendances dans le deacuteveloppement des systegravemes drsquoinformation
- UML - Historique
- Pourquoi modeacuteliser
- La modeacutelisation dans les entreprises
- Quelques chiffres
- Quelques chiffres (2)
- Quelques chiffres (3)
- Quelques chiffres (4)
- Quelques chiffres (5)
- Et maintenant
- Et maintenant (2)
- Finalementhellip
- Reacuteussite Eacutechec
- Rappel
- Industrialisation
- Industrialisation (2)
- Slide 39
- Slide 40
- Usines logicielles (S Factory)
- Usines logicielles (S Factory) (2)
- Usines logicielles (S Factory) (3)
- Usines logicielles (S Factory) (4)
- Usines logicielles
- Domain Specific Langage
- BuzzhellipMDA MDD MDE
- Exemple
- Model Driven Architecture
- Model Driven Architecture (2)
- Model Driven Architecture (3)
- Model Driven Architecture (4)
- Model Driven Architecture (5)
- Concept principal de MDA
- CIM PIM PSM Code
- Les diffeacuterentes eacutetapes
- MDA et Gartner
- Eacutetude de cas
- Impact
- Impact (2)
- Impact (3)
- Slide 63
- Slide 64
- Slide 65
- Exemple (2)
- Ressources
- Laboratoire 1
- Le document de vision (RUP)
- Slide 70
- Exemples de caracteacuteristiques (feature)
- Niveau de deacutetail des caracteacuteristiques
- Attributs des caracteacuteristiques
- Attributs des caracteacuteristiques
- Slide 75
- Reacutedaction du document de vision
- Exemple le cas ACS
- Slide 78
- Exemple de problegravemes le cas ACS
- Exemple de besoins le cas ACS
- Exemple de caracteacuteristiques le cas ACS
- Critegraveres drsquoeacutevaluation
- Grille drsquoeacutevaluation (sur 100)
- Prochain cours
- Questions
-
Deacutepartement de geacutenie logiciel et des TI
Finalementhellip
GTI515 Automne 2013 JF Couturier 34
Deacutepartement de geacutenie logiciel et des TI
Reacuteussite Eacutechec
Mais qursquoest-ce qursquoun projet reacuteussi Dans les temps Dans le budget Avec les fonctions preacutevues
GTI515 Automne 2013 JF Couturier 35
Deacutepartement de geacutenie logiciel et des TI
Rappel
Notre domaine est tregraves jeune (70 ans) Geacutenie de la constructionhellip5000 ans
Mais nous progressons tregraves rapidement Pourquoi le geacutenie en TI
Artisanat vs geacutenie (le pif vs la meacutethode)
Acircge du geacutenie logiciel TI - Maturiteacute
Science virtuelle vs Meacutecanique construction
Une tendancehellipDe lrsquoartisanat agrave lrsquoindustrialisation du deacuteveloppement logiciel
GTI515 Automne 2013 JF Couturier 36
Deacutepartement de geacutenie logiciel et des TI
Industrialisation
Vers le milieu du 19e siegravecle Segmenter le travail des individus pour
ne pas ecirctre deacutependant drsquoun artisan Permet une production beaucoup plus
efficace en seacuterie
GTI515 Automne 2013 JF Couturier 37
Deacutepartement de geacutenie logiciel et des TI
Industrialisation
Est-ce que le deacuteveloppement peut-ecirctre industrialiseacuteCertains disent que non que le logiciel agrave
un caractegravere trop creacuteatif
Drsquoautres pensent que les reacutecents progregraves dans le domaine permettent une eacuteventuelle industrialisation dans la production drsquoapplication
GTI515 Automne 2013 JF Couturier 38
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 39
Technologies(OO CBD Services Web SOA
XML AOP DB design patternshellip)
Ingeacutenierie dirigeacutee par les modegraveles
Usines logicielles (Microsoft)Architecture dirigeacutee par les modegraveles (OMG)
Deux applications drsquoun mecircme concept de base
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 40
Techniques de deacuteveloppement assisteacute par ordinateur (Reacutef Software Factories Greenfield J p144)
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Un modegravele tregraves deacutetailleacute beaucoup de code geacuteneacutereacute
CASE Tools (Computer-aided software engineering)
Mal adapteacute au deacuteveloppement agile qui implique souvent des solutions partielles tregraves tocirct dans le cycle de deacuteveloppement
Synchronisation difficile
Eacuteloigneacutee de la plateforme
GTI515 Automne 2013 JF Couturier 41
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Exemple Outils graphiques de modeacutelisation des classes
Plus proche de la plateforme
Code geacuteneacutereacute pour la plateforme
Plus simple
Aide geacuteneacuteralement le deacuteveloppeur agrave voir les deacutependances entre les classes
Il reste beaucoup de code agrave faire agrave la main
Penser agrave coder du SWING Java agrave la mitaine
GTI515 Automne 2013 JF Couturier 42
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Existence drsquoun framework logiciel
On se base sur le framework pour automatiser-compleacuteter la production de certains eacuteleacutements comme les eacuteleacutements graphiques
Abstraction plus eacuteleveacutee
VB6 et ses formulaires
NET Hibernate
Peu drsquoabstractions au niveau du modegravele Classe entiteacute-relation
GTI515 Automne 2013 JF Couturier 43
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Finalement il y a la possibiliteacute drsquoavoir une laquo pile raquo de modegraveles
Drsquoun modegravele agrave lrsquoautre il y a transformation vers un modegravele de plus en plus preacutecis
Approche MDA
Concept de Domain Specific Language
Pour un domaine particulier on creacutee des laquo templates raquo reacuteutilisables
Permets la contribution des experts meacutetiers
GTI515 Automne 2013 JF Couturier 44
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles
GTI515 Automne 2013 JF Couturier 45
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Domain Specific Langage
Par opposition au General purpose language comme UML C++ Java ou C
AvantagesPermets agrave un expert meacutetier de
comprendre et valider un modegravele
InconveacutenientCoucirct Formation Maintenance
GTI515 Automne 2013 JF Couturier 46
httpenwikipediaorgwikiDomain_Specific_Language
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 47
BuzzhellipMDA MDD MDE
Model Driven Architecturemarque de commerce de lrsquoOMG
Model Driven Developmentextension de MDAmarque de commerce de lrsquoOMG
Model Driven Engineeringexpression geacuteneacuterique
Deacutepartement de geacutenie logiciel et des TI
Exemple Agrave partir des speacutecifications des exigences logicielles
Lrsquoacteur saisit la commande contenant
lrsquoadresse de livraison
lrsquoadresse de facturation
Le systegraveme creacutee la commande
Lrsquoacteur saisit un deacutetail de la commande avec
le nom du produit
la quantiteacute demandeacutee
le prix du produit
Le systegraveme creacutee le deacutetail et revient agrave lrsquoeacutetape 3
Lrsquoacteur termine la commande
Le systegraveme ferme la commande
GTI515 Automne 2013 JF Couturier 48
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 49
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Un modegravele (Diagramme de classes UML)
Deacutepartement de geacutenie logiciel et des TI
Model Driven ArchitectureUn scheacutema XML
ltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gt
ltxsdschema xmlnsxsd=httpwww targetNamespace=helliprsaquo
ltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo minOccurs=ldquo0ldquo maxOccurs=ldquounboundedgt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdcomplexType name=ldquoDetailCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoprixldquo type=ldquo xsdfloatldquogt
ltxsdelement name=ldquoquantiteldquo type=ldquo xsdintldquogt
ltxsdelement name=ldquonomProduitldquo type=ldquo xsdstringldquogt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdschemarsaquo
GTI515 Automne 2013 JF Couturier 50
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 51
Des classes Java
public class Commande
private String adresseLivraison
private String adresseFacturation
private Collection detailCommande
hellip
String getAdresseLivraison()
void setAdresseLivraison(String value)
String getAdresseFacturation()
void setAdresseFacturation(String value)
public class DetailCommande
private float prix
private int quantite
private String nomProduit
float getPrix()
void setPrix(float value)
int getQuantite()
void setQuantite(int value)
String getNomProduit()
void setNomProduit(String value)
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 52
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Programmepublic class Commande
private String adresseLivraisonprivate String adresseFacturation
String getAdresseLivraison()void setAdresseLivraison(String value)
String getAdresseFacturation()void setAdresseFacturation(String value)
Scheacutema XMLltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gtltxsdschema xmlnsxsd=httpwww
targetNamespace=helliprsaquoltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo
xsdstringldquogt ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo
Modegravele UML3 repreacutesentationsdes mecircmes exigences
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
Speacutecifications de lrsquoOMG Seacuteparation de la logique meacutetier de
toute plateforme technique Speacutecifications drsquoun langage de
transformation (QVT)
GTI515 Automne 2013 JF Couturier 53
Deacutepartement de geacutenie logiciel et des TI
Concept principal de MDA
Modeacuteliser pour documenter le systegraveme
Modeacuteliser pour construire le systegraveme
GTI515 Automne 2013 JF Couturier 55
Deacutepartement de geacutenie logiciel et des TI
CIM PIM PSM Code CIM
Computing Independant Model
Modegravele du domaine logique meacutetier
PIM Platform Independant Model
Modegravele de conception UML et OCL
PSM Platform Specific Model
NET J2EE
Codehellip
GTI515 Automne 2013 JF Couturier 56
Deacutepartement de geacutenie logiciel et des TI
Les diffeacuterentes eacutetapes
GTI515 Automne 2013 JF Couturier 57
Reacutef the Zachman Framework and the OMGrsquos MDA Business Process Trends Sept 2003
Deacutepartement de geacutenie logiciel et des TI
MDA et Gartner
GTI515 Automne 2013 JF Couturier 58
Gartner Hype Cycle 2008
Deacutepartement de geacutenie logiciel et des TI
Eacutetude de cas
Lecture de la discussion sur MDA Questions
Quels sont les arguments pour
Quels sont les arguments contre
Vos commentaires sur lrsquoarticle
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 59
Deacutepartement de geacutenie logiciel et des TI
Impact
Rocircle du deacuteveloppeur minimiseacute puisqursquoil nrsquointerpregravete plus le modegravele les regravegles de transformation srsquoen chargent
Modegraveles exportables drsquoune plateforme agrave un autre
Plus de 100 articles de recherche sur IEEE entre 2008 et 2009
Maishellip
GTI515 Automne 2013 JF Couturier 60
Deacutepartement de geacutenie logiciel et des TI
Impact
Est-ce applicable au monde agile
Le cycle de modeacutelisation est-il compatible avec le deacuteveloppement iteacuteratif
Est-ce qursquoil y a suffisamment de ressources hautement qualifieacutees pour reacutealiser ce type de projet
Pouvez-vous les former Pouvez-vous les conserver
Produire 80 du code et vous laisser les derniers 20 plus difficileshellip
Comment inteacutegrer les tests
GTI515 Automne 2013 JF Couturier 61
Scott Ambler Enterprise Unified Process p 191
Deacutepartement de geacutenie logiciel et des TI
Impact
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 62
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 63
Domaine
Exigences
Analyse
Conception
Reacutealisation
MDA
PIM
PSM
Modegravele des Processus drsquoaffaires
Modegravele drsquoanalyse du systegraveme
CIM
Modegravele des Cas drsquoutilisation
Modegravele de conception du systegraveme
Les modegraveles du cycle de deacuteveloppement de logiciels
Code
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 64
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 65
Deacutepartement de geacutenie logiciel et des TI
Exemple
GTI515 Automne 2013 JF Couturier 66
httpwwwibmcomdeveloperworksrationallibrary3100html
Deacutepartement de geacutenie logiciel et des TI
Ressources
Site de lOMG MDA Article drsquoIBM sur MDA Discussion sur MDA Wiki MDA Wiki QVT
GTI515 Automne 2013 JF Couturier 67
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 68
Laboratoire 1
Choix du sujet Validation de la porteacutee
Suffisamment long Plusieurs interactions humaines machines Reacutealisable dans une session
Chargeacute de laboratoire Oleg Litvinski Premier laboratoire lundi 7 mai
Deacutepartement de geacutenie logiciel et des TI
Le document de vision (RUP)
Une base de discussion et drsquoaccord parmi les intervenants du projet
Une description de lrsquoapplication en geacuteneacuteral incluant la description du marcheacute cible les clients les utilisateurs du systegraveme les problegravemes agrave reacutesoudre et les caracteacuteristiques de lrsquoapplication
GTI515 Automne 2013 JF Couturier 69
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 70
Requirements Management with Use Cases v20010300
Copyright copy 1998 2001 Rational Software all rights reserved
2
Problem
Solution Space
Problem Space
Needs
Features
SoftwareRequirements
Test Procedures Design User
Docs
The The Product Product To Be To Be BuiltBuilt
Traceability
Deacutepartement de geacutenie logiciel et des TI
Exemples de caracteacuteristiques (feature)
Domaine drsquoapplication Exemple de caracteacuteristique
Systegraveme de commande drsquoascenseur
Commande manuelle des portes durant une urgence de feu
Systegraveme de commande drsquoinventaire
Fournir un statut reacutecent de tous les items reacutepertorieacutes
Systegraveme de suivi de deacutefauts Fournir des laquo donneacutees raquo sur les tendances pour eacutevaluer la
qualiteacute
Systegraveme de paie Rapports par cateacutegories des deacuteductions remis agrave lrsquoimpocirct
Systegraveme de commande drsquoarmes
Minimum de deux confirmations indeacutependantes drsquoautorisation
drsquoattaque exigeacutee
GTI515 Automne 2013 JF Couturier 71
Deacutepartement de geacutenie logiciel et des TI
Niveau de deacutetail des caracteacuteristiques Pour tout nouveau systegraveme ou pour
une ameacutelioration majeure agrave un systegraveme existant il est recommandeacute de garder un niveau drsquoabstraction assez eacuteleveacute de sorte agrave avoir un maximum de caracteacuteristiques compris entre 25-99 et de preacutefeacuterence moins de 50
GTI515 Automne 2013 JF Couturier 72
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Statut Suit le progregraves
Exemples Proposeacute approuveacute incorporeacute etc
PrioriteacuteBeacuteneacutefice
Les caracteacuteristiques ne sont pas agrave prioriteacutes eacutegales ou geacutenegraverent des beacuteneacutefices eacutegaux
Exemple critiques importantes optionnelle
Effort Estimation du nombre de personnessemaines lignes de code points de fonction COSMIC_FFP
Risque La probabiliteacute que la caracteacuteristique aille causer un eacuteveacutenement indeacutesirable tel que le deacutepassement du budget ou des deacutelais ou mecircme lrsquoannulation du projet
GTI515 Automne 2013 JF Couturier 73
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Stabiliteacute La probabiliteacute que la caracteacuteristique elle-mecircme ou sa compreacutehension par lrsquoeacutequipe de deacuteveloppement changera
Mise en application
Documenter la version preacutevue pour laquelle la caracteacuteristique sera incorporeacutee
Assigneacutee agrave Deacutesigner lrsquoeacutequipe responsable de la caracteacuteristique
Raison Lrsquoorigine de la requecircte de la caracteacuteristique
GTI515 Automne 2013 JF Couturier 74
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 75
Deacutepartement de geacutenie logiciel et des TI
Reacutedaction du document de vision une description concise de tout ce qui est important au
produit ou agrave lrsquoapplication eacutecrit avec un niveau de deacutetails dans un langage lisible et
compreacutehensible par les intervenants du projet
Document de 15 agrave 20 pages
GTI515 Automne 2013 JF Couturier 76
Deacutepartement de geacutenie logiciel et des TI
Exemple le cas ACS
GTI515 Automne 2013 JF Couturier 77
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 78
Deacutepartement de geacutenie logiciel et des TI
Exemple de problegravemesle cas ACS
Controcircle drsquoune large gamme de mateacuteriels
Utilisation compliqueacutee Difficulteacutes de programmation Disponibiliteacute du mateacuteriel Risque de mauvaise utilisation
GTI515 Automne 2013 JF Couturier 79
Deacutepartement de geacutenie logiciel et des TI
Exemple de besoinsle cas ACS
AutomatiserLa distribution de fertilisantLa distribution de nourritureLa dureacutee de lrsquoeacuteclairage
Commander lrsquoopeacuteration des appareils Reacuteguler
le niveau et la dureteacute de lrsquoeauLa tempeacuterature
GTI515 Automne 2013 JF Couturier 80
Deacutepartement de geacutenie logiciel et des TI
Exemple de caracteacuteristiquesle cas ACS
Deacutemarrage automatique du systegraveme Programmation conserveacutee en cas de
panne drsquoalimentation Deacutetection automatique des modules Facile agrave programmer et agrave utiliser
Exigence non fonctionnelle
GTI515 Automne 2013 JF Couturier 81
Deacutepartement de geacutenie logiciel et des TI
Critegraveres drsquoeacutevaluation
Respect de lrsquoesprit du document
En tant qursquointervenant externe est-ce que je comprends bien
Respect de la forme du gabarit
Qualiteacute du franccedilais
Document de calibre professionnel que lrsquoon pourrait remettre agrave un dirigeant
GTI515 Automne 2013 JF Couturier 82
Deacutepartement de geacutenie logiciel et des TI
Grille drsquoeacutevaluation (sur 100)
Agrave venirhellip
GTI515 Automne 2013 JF Couturier 83
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 84
Prochain cours
La modeacutelisation des processus drsquoaffaires Le diagramme drsquoactiviteacute Le diagnostic des processus drsquoaffaires existant
Lectures Lrsquoutilisation drsquoUML Chapitre sur les diagrammes drsquoactiviteacutes dans Larman Lecture sur MDA Voir site Web du cours
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 85
Questions
- Systegravemes drsquoinformation dans les entreprises (GTI515)
- Plan du cours 1
- Qui suis-je JF Couturier
- Qui suis-je Eacutetudiant(e)
- Plan du cours 1 (2)
- Objectifs du programme
- Ingeacutenieur
- Programme GTI
- Geacutenie des TI
- Cours de speacutecialiteacutes GTI
- Objectif du cours
- Vue drsquoensemble du cours
- Lectures et reacutefeacuterences
- Regravegles du jeu
- QUIZ
- Plan du cours 1 (3)
- Plan de cours
- Laboratoires ndash GTI515
- Peacutenaliteacutes de retard
- Plagiat
- Plan du cours 1 (4)
- Les tendances dans le deacuteveloppement des systegravemes drsquoinformation
- UML - Historique
- Pourquoi modeacuteliser
- La modeacutelisation dans les entreprises
- Quelques chiffres
- Quelques chiffres (2)
- Quelques chiffres (3)
- Quelques chiffres (4)
- Quelques chiffres (5)
- Et maintenant
- Et maintenant (2)
- Finalementhellip
- Reacuteussite Eacutechec
- Rappel
- Industrialisation
- Industrialisation (2)
- Slide 39
- Slide 40
- Usines logicielles (S Factory)
- Usines logicielles (S Factory) (2)
- Usines logicielles (S Factory) (3)
- Usines logicielles (S Factory) (4)
- Usines logicielles
- Domain Specific Langage
- BuzzhellipMDA MDD MDE
- Exemple
- Model Driven Architecture
- Model Driven Architecture (2)
- Model Driven Architecture (3)
- Model Driven Architecture (4)
- Model Driven Architecture (5)
- Concept principal de MDA
- CIM PIM PSM Code
- Les diffeacuterentes eacutetapes
- MDA et Gartner
- Eacutetude de cas
- Impact
- Impact (2)
- Impact (3)
- Slide 63
- Slide 64
- Slide 65
- Exemple (2)
- Ressources
- Laboratoire 1
- Le document de vision (RUP)
- Slide 70
- Exemples de caracteacuteristiques (feature)
- Niveau de deacutetail des caracteacuteristiques
- Attributs des caracteacuteristiques
- Attributs des caracteacuteristiques
- Slide 75
- Reacutedaction du document de vision
- Exemple le cas ACS
- Slide 78
- Exemple de problegravemes le cas ACS
- Exemple de besoins le cas ACS
- Exemple de caracteacuteristiques le cas ACS
- Critegraveres drsquoeacutevaluation
- Grille drsquoeacutevaluation (sur 100)
- Prochain cours
- Questions
-
Deacutepartement de geacutenie logiciel et des TI
Reacuteussite Eacutechec
Mais qursquoest-ce qursquoun projet reacuteussi Dans les temps Dans le budget Avec les fonctions preacutevues
GTI515 Automne 2013 JF Couturier 35
Deacutepartement de geacutenie logiciel et des TI
Rappel
Notre domaine est tregraves jeune (70 ans) Geacutenie de la constructionhellip5000 ans
Mais nous progressons tregraves rapidement Pourquoi le geacutenie en TI
Artisanat vs geacutenie (le pif vs la meacutethode)
Acircge du geacutenie logiciel TI - Maturiteacute
Science virtuelle vs Meacutecanique construction
Une tendancehellipDe lrsquoartisanat agrave lrsquoindustrialisation du deacuteveloppement logiciel
GTI515 Automne 2013 JF Couturier 36
Deacutepartement de geacutenie logiciel et des TI
Industrialisation
Vers le milieu du 19e siegravecle Segmenter le travail des individus pour
ne pas ecirctre deacutependant drsquoun artisan Permet une production beaucoup plus
efficace en seacuterie
GTI515 Automne 2013 JF Couturier 37
Deacutepartement de geacutenie logiciel et des TI
Industrialisation
Est-ce que le deacuteveloppement peut-ecirctre industrialiseacuteCertains disent que non que le logiciel agrave
un caractegravere trop creacuteatif
Drsquoautres pensent que les reacutecents progregraves dans le domaine permettent une eacuteventuelle industrialisation dans la production drsquoapplication
GTI515 Automne 2013 JF Couturier 38
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 39
Technologies(OO CBD Services Web SOA
XML AOP DB design patternshellip)
Ingeacutenierie dirigeacutee par les modegraveles
Usines logicielles (Microsoft)Architecture dirigeacutee par les modegraveles (OMG)
Deux applications drsquoun mecircme concept de base
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 40
Techniques de deacuteveloppement assisteacute par ordinateur (Reacutef Software Factories Greenfield J p144)
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Un modegravele tregraves deacutetailleacute beaucoup de code geacuteneacutereacute
CASE Tools (Computer-aided software engineering)
Mal adapteacute au deacuteveloppement agile qui implique souvent des solutions partielles tregraves tocirct dans le cycle de deacuteveloppement
Synchronisation difficile
Eacuteloigneacutee de la plateforme
GTI515 Automne 2013 JF Couturier 41
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Exemple Outils graphiques de modeacutelisation des classes
Plus proche de la plateforme
Code geacuteneacutereacute pour la plateforme
Plus simple
Aide geacuteneacuteralement le deacuteveloppeur agrave voir les deacutependances entre les classes
Il reste beaucoup de code agrave faire agrave la main
Penser agrave coder du SWING Java agrave la mitaine
GTI515 Automne 2013 JF Couturier 42
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Existence drsquoun framework logiciel
On se base sur le framework pour automatiser-compleacuteter la production de certains eacuteleacutements comme les eacuteleacutements graphiques
Abstraction plus eacuteleveacutee
VB6 et ses formulaires
NET Hibernate
Peu drsquoabstractions au niveau du modegravele Classe entiteacute-relation
GTI515 Automne 2013 JF Couturier 43
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Finalement il y a la possibiliteacute drsquoavoir une laquo pile raquo de modegraveles
Drsquoun modegravele agrave lrsquoautre il y a transformation vers un modegravele de plus en plus preacutecis
Approche MDA
Concept de Domain Specific Language
Pour un domaine particulier on creacutee des laquo templates raquo reacuteutilisables
Permets la contribution des experts meacutetiers
GTI515 Automne 2013 JF Couturier 44
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles
GTI515 Automne 2013 JF Couturier 45
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Domain Specific Langage
Par opposition au General purpose language comme UML C++ Java ou C
AvantagesPermets agrave un expert meacutetier de
comprendre et valider un modegravele
InconveacutenientCoucirct Formation Maintenance
GTI515 Automne 2013 JF Couturier 46
httpenwikipediaorgwikiDomain_Specific_Language
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 47
BuzzhellipMDA MDD MDE
Model Driven Architecturemarque de commerce de lrsquoOMG
Model Driven Developmentextension de MDAmarque de commerce de lrsquoOMG
Model Driven Engineeringexpression geacuteneacuterique
Deacutepartement de geacutenie logiciel et des TI
Exemple Agrave partir des speacutecifications des exigences logicielles
Lrsquoacteur saisit la commande contenant
lrsquoadresse de livraison
lrsquoadresse de facturation
Le systegraveme creacutee la commande
Lrsquoacteur saisit un deacutetail de la commande avec
le nom du produit
la quantiteacute demandeacutee
le prix du produit
Le systegraveme creacutee le deacutetail et revient agrave lrsquoeacutetape 3
Lrsquoacteur termine la commande
Le systegraveme ferme la commande
GTI515 Automne 2013 JF Couturier 48
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 49
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Un modegravele (Diagramme de classes UML)
Deacutepartement de geacutenie logiciel et des TI
Model Driven ArchitectureUn scheacutema XML
ltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gt
ltxsdschema xmlnsxsd=httpwww targetNamespace=helliprsaquo
ltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo minOccurs=ldquo0ldquo maxOccurs=ldquounboundedgt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdcomplexType name=ldquoDetailCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoprixldquo type=ldquo xsdfloatldquogt
ltxsdelement name=ldquoquantiteldquo type=ldquo xsdintldquogt
ltxsdelement name=ldquonomProduitldquo type=ldquo xsdstringldquogt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdschemarsaquo
GTI515 Automne 2013 JF Couturier 50
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 51
Des classes Java
public class Commande
private String adresseLivraison
private String adresseFacturation
private Collection detailCommande
hellip
String getAdresseLivraison()
void setAdresseLivraison(String value)
String getAdresseFacturation()
void setAdresseFacturation(String value)
public class DetailCommande
private float prix
private int quantite
private String nomProduit
float getPrix()
void setPrix(float value)
int getQuantite()
void setQuantite(int value)
String getNomProduit()
void setNomProduit(String value)
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 52
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Programmepublic class Commande
private String adresseLivraisonprivate String adresseFacturation
String getAdresseLivraison()void setAdresseLivraison(String value)
String getAdresseFacturation()void setAdresseFacturation(String value)
Scheacutema XMLltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gtltxsdschema xmlnsxsd=httpwww
targetNamespace=helliprsaquoltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo
xsdstringldquogt ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo
Modegravele UML3 repreacutesentationsdes mecircmes exigences
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
Speacutecifications de lrsquoOMG Seacuteparation de la logique meacutetier de
toute plateforme technique Speacutecifications drsquoun langage de
transformation (QVT)
GTI515 Automne 2013 JF Couturier 53
Deacutepartement de geacutenie logiciel et des TI
Concept principal de MDA
Modeacuteliser pour documenter le systegraveme
Modeacuteliser pour construire le systegraveme
GTI515 Automne 2013 JF Couturier 55
Deacutepartement de geacutenie logiciel et des TI
CIM PIM PSM Code CIM
Computing Independant Model
Modegravele du domaine logique meacutetier
PIM Platform Independant Model
Modegravele de conception UML et OCL
PSM Platform Specific Model
NET J2EE
Codehellip
GTI515 Automne 2013 JF Couturier 56
Deacutepartement de geacutenie logiciel et des TI
Les diffeacuterentes eacutetapes
GTI515 Automne 2013 JF Couturier 57
Reacutef the Zachman Framework and the OMGrsquos MDA Business Process Trends Sept 2003
Deacutepartement de geacutenie logiciel et des TI
MDA et Gartner
GTI515 Automne 2013 JF Couturier 58
Gartner Hype Cycle 2008
Deacutepartement de geacutenie logiciel et des TI
Eacutetude de cas
Lecture de la discussion sur MDA Questions
Quels sont les arguments pour
Quels sont les arguments contre
Vos commentaires sur lrsquoarticle
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 59
Deacutepartement de geacutenie logiciel et des TI
Impact
Rocircle du deacuteveloppeur minimiseacute puisqursquoil nrsquointerpregravete plus le modegravele les regravegles de transformation srsquoen chargent
Modegraveles exportables drsquoune plateforme agrave un autre
Plus de 100 articles de recherche sur IEEE entre 2008 et 2009
Maishellip
GTI515 Automne 2013 JF Couturier 60
Deacutepartement de geacutenie logiciel et des TI
Impact
Est-ce applicable au monde agile
Le cycle de modeacutelisation est-il compatible avec le deacuteveloppement iteacuteratif
Est-ce qursquoil y a suffisamment de ressources hautement qualifieacutees pour reacutealiser ce type de projet
Pouvez-vous les former Pouvez-vous les conserver
Produire 80 du code et vous laisser les derniers 20 plus difficileshellip
Comment inteacutegrer les tests
GTI515 Automne 2013 JF Couturier 61
Scott Ambler Enterprise Unified Process p 191
Deacutepartement de geacutenie logiciel et des TI
Impact
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 62
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 63
Domaine
Exigences
Analyse
Conception
Reacutealisation
MDA
PIM
PSM
Modegravele des Processus drsquoaffaires
Modegravele drsquoanalyse du systegraveme
CIM
Modegravele des Cas drsquoutilisation
Modegravele de conception du systegraveme
Les modegraveles du cycle de deacuteveloppement de logiciels
Code
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 64
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 65
Deacutepartement de geacutenie logiciel et des TI
Exemple
GTI515 Automne 2013 JF Couturier 66
httpwwwibmcomdeveloperworksrationallibrary3100html
Deacutepartement de geacutenie logiciel et des TI
Ressources
Site de lOMG MDA Article drsquoIBM sur MDA Discussion sur MDA Wiki MDA Wiki QVT
GTI515 Automne 2013 JF Couturier 67
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 68
Laboratoire 1
Choix du sujet Validation de la porteacutee
Suffisamment long Plusieurs interactions humaines machines Reacutealisable dans une session
Chargeacute de laboratoire Oleg Litvinski Premier laboratoire lundi 7 mai
Deacutepartement de geacutenie logiciel et des TI
Le document de vision (RUP)
Une base de discussion et drsquoaccord parmi les intervenants du projet
Une description de lrsquoapplication en geacuteneacuteral incluant la description du marcheacute cible les clients les utilisateurs du systegraveme les problegravemes agrave reacutesoudre et les caracteacuteristiques de lrsquoapplication
GTI515 Automne 2013 JF Couturier 69
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 70
Requirements Management with Use Cases v20010300
Copyright copy 1998 2001 Rational Software all rights reserved
2
Problem
Solution Space
Problem Space
Needs
Features
SoftwareRequirements
Test Procedures Design User
Docs
The The Product Product To Be To Be BuiltBuilt
Traceability
Deacutepartement de geacutenie logiciel et des TI
Exemples de caracteacuteristiques (feature)
Domaine drsquoapplication Exemple de caracteacuteristique
Systegraveme de commande drsquoascenseur
Commande manuelle des portes durant une urgence de feu
Systegraveme de commande drsquoinventaire
Fournir un statut reacutecent de tous les items reacutepertorieacutes
Systegraveme de suivi de deacutefauts Fournir des laquo donneacutees raquo sur les tendances pour eacutevaluer la
qualiteacute
Systegraveme de paie Rapports par cateacutegories des deacuteductions remis agrave lrsquoimpocirct
Systegraveme de commande drsquoarmes
Minimum de deux confirmations indeacutependantes drsquoautorisation
drsquoattaque exigeacutee
GTI515 Automne 2013 JF Couturier 71
Deacutepartement de geacutenie logiciel et des TI
Niveau de deacutetail des caracteacuteristiques Pour tout nouveau systegraveme ou pour
une ameacutelioration majeure agrave un systegraveme existant il est recommandeacute de garder un niveau drsquoabstraction assez eacuteleveacute de sorte agrave avoir un maximum de caracteacuteristiques compris entre 25-99 et de preacutefeacuterence moins de 50
GTI515 Automne 2013 JF Couturier 72
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Statut Suit le progregraves
Exemples Proposeacute approuveacute incorporeacute etc
PrioriteacuteBeacuteneacutefice
Les caracteacuteristiques ne sont pas agrave prioriteacutes eacutegales ou geacutenegraverent des beacuteneacutefices eacutegaux
Exemple critiques importantes optionnelle
Effort Estimation du nombre de personnessemaines lignes de code points de fonction COSMIC_FFP
Risque La probabiliteacute que la caracteacuteristique aille causer un eacuteveacutenement indeacutesirable tel que le deacutepassement du budget ou des deacutelais ou mecircme lrsquoannulation du projet
GTI515 Automne 2013 JF Couturier 73
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Stabiliteacute La probabiliteacute que la caracteacuteristique elle-mecircme ou sa compreacutehension par lrsquoeacutequipe de deacuteveloppement changera
Mise en application
Documenter la version preacutevue pour laquelle la caracteacuteristique sera incorporeacutee
Assigneacutee agrave Deacutesigner lrsquoeacutequipe responsable de la caracteacuteristique
Raison Lrsquoorigine de la requecircte de la caracteacuteristique
GTI515 Automne 2013 JF Couturier 74
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 75
Deacutepartement de geacutenie logiciel et des TI
Reacutedaction du document de vision une description concise de tout ce qui est important au
produit ou agrave lrsquoapplication eacutecrit avec un niveau de deacutetails dans un langage lisible et
compreacutehensible par les intervenants du projet
Document de 15 agrave 20 pages
GTI515 Automne 2013 JF Couturier 76
Deacutepartement de geacutenie logiciel et des TI
Exemple le cas ACS
GTI515 Automne 2013 JF Couturier 77
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 78
Deacutepartement de geacutenie logiciel et des TI
Exemple de problegravemesle cas ACS
Controcircle drsquoune large gamme de mateacuteriels
Utilisation compliqueacutee Difficulteacutes de programmation Disponibiliteacute du mateacuteriel Risque de mauvaise utilisation
GTI515 Automne 2013 JF Couturier 79
Deacutepartement de geacutenie logiciel et des TI
Exemple de besoinsle cas ACS
AutomatiserLa distribution de fertilisantLa distribution de nourritureLa dureacutee de lrsquoeacuteclairage
Commander lrsquoopeacuteration des appareils Reacuteguler
le niveau et la dureteacute de lrsquoeauLa tempeacuterature
GTI515 Automne 2013 JF Couturier 80
Deacutepartement de geacutenie logiciel et des TI
Exemple de caracteacuteristiquesle cas ACS
Deacutemarrage automatique du systegraveme Programmation conserveacutee en cas de
panne drsquoalimentation Deacutetection automatique des modules Facile agrave programmer et agrave utiliser
Exigence non fonctionnelle
GTI515 Automne 2013 JF Couturier 81
Deacutepartement de geacutenie logiciel et des TI
Critegraveres drsquoeacutevaluation
Respect de lrsquoesprit du document
En tant qursquointervenant externe est-ce que je comprends bien
Respect de la forme du gabarit
Qualiteacute du franccedilais
Document de calibre professionnel que lrsquoon pourrait remettre agrave un dirigeant
GTI515 Automne 2013 JF Couturier 82
Deacutepartement de geacutenie logiciel et des TI
Grille drsquoeacutevaluation (sur 100)
Agrave venirhellip
GTI515 Automne 2013 JF Couturier 83
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 84
Prochain cours
La modeacutelisation des processus drsquoaffaires Le diagramme drsquoactiviteacute Le diagnostic des processus drsquoaffaires existant
Lectures Lrsquoutilisation drsquoUML Chapitre sur les diagrammes drsquoactiviteacutes dans Larman Lecture sur MDA Voir site Web du cours
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 85
Questions
- Systegravemes drsquoinformation dans les entreprises (GTI515)
- Plan du cours 1
- Qui suis-je JF Couturier
- Qui suis-je Eacutetudiant(e)
- Plan du cours 1 (2)
- Objectifs du programme
- Ingeacutenieur
- Programme GTI
- Geacutenie des TI
- Cours de speacutecialiteacutes GTI
- Objectif du cours
- Vue drsquoensemble du cours
- Lectures et reacutefeacuterences
- Regravegles du jeu
- QUIZ
- Plan du cours 1 (3)
- Plan de cours
- Laboratoires ndash GTI515
- Peacutenaliteacutes de retard
- Plagiat
- Plan du cours 1 (4)
- Les tendances dans le deacuteveloppement des systegravemes drsquoinformation
- UML - Historique
- Pourquoi modeacuteliser
- La modeacutelisation dans les entreprises
- Quelques chiffres
- Quelques chiffres (2)
- Quelques chiffres (3)
- Quelques chiffres (4)
- Quelques chiffres (5)
- Et maintenant
- Et maintenant (2)
- Finalementhellip
- Reacuteussite Eacutechec
- Rappel
- Industrialisation
- Industrialisation (2)
- Slide 39
- Slide 40
- Usines logicielles (S Factory)
- Usines logicielles (S Factory) (2)
- Usines logicielles (S Factory) (3)
- Usines logicielles (S Factory) (4)
- Usines logicielles
- Domain Specific Langage
- BuzzhellipMDA MDD MDE
- Exemple
- Model Driven Architecture
- Model Driven Architecture (2)
- Model Driven Architecture (3)
- Model Driven Architecture (4)
- Model Driven Architecture (5)
- Concept principal de MDA
- CIM PIM PSM Code
- Les diffeacuterentes eacutetapes
- MDA et Gartner
- Eacutetude de cas
- Impact
- Impact (2)
- Impact (3)
- Slide 63
- Slide 64
- Slide 65
- Exemple (2)
- Ressources
- Laboratoire 1
- Le document de vision (RUP)
- Slide 70
- Exemples de caracteacuteristiques (feature)
- Niveau de deacutetail des caracteacuteristiques
- Attributs des caracteacuteristiques
- Attributs des caracteacuteristiques
- Slide 75
- Reacutedaction du document de vision
- Exemple le cas ACS
- Slide 78
- Exemple de problegravemes le cas ACS
- Exemple de besoins le cas ACS
- Exemple de caracteacuteristiques le cas ACS
- Critegraveres drsquoeacutevaluation
- Grille drsquoeacutevaluation (sur 100)
- Prochain cours
- Questions
-
Deacutepartement de geacutenie logiciel et des TI
Rappel
Notre domaine est tregraves jeune (70 ans) Geacutenie de la constructionhellip5000 ans
Mais nous progressons tregraves rapidement Pourquoi le geacutenie en TI
Artisanat vs geacutenie (le pif vs la meacutethode)
Acircge du geacutenie logiciel TI - Maturiteacute
Science virtuelle vs Meacutecanique construction
Une tendancehellipDe lrsquoartisanat agrave lrsquoindustrialisation du deacuteveloppement logiciel
GTI515 Automne 2013 JF Couturier 36
Deacutepartement de geacutenie logiciel et des TI
Industrialisation
Vers le milieu du 19e siegravecle Segmenter le travail des individus pour
ne pas ecirctre deacutependant drsquoun artisan Permet une production beaucoup plus
efficace en seacuterie
GTI515 Automne 2013 JF Couturier 37
Deacutepartement de geacutenie logiciel et des TI
Industrialisation
Est-ce que le deacuteveloppement peut-ecirctre industrialiseacuteCertains disent que non que le logiciel agrave
un caractegravere trop creacuteatif
Drsquoautres pensent que les reacutecents progregraves dans le domaine permettent une eacuteventuelle industrialisation dans la production drsquoapplication
GTI515 Automne 2013 JF Couturier 38
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 39
Technologies(OO CBD Services Web SOA
XML AOP DB design patternshellip)
Ingeacutenierie dirigeacutee par les modegraveles
Usines logicielles (Microsoft)Architecture dirigeacutee par les modegraveles (OMG)
Deux applications drsquoun mecircme concept de base
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 40
Techniques de deacuteveloppement assisteacute par ordinateur (Reacutef Software Factories Greenfield J p144)
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Un modegravele tregraves deacutetailleacute beaucoup de code geacuteneacutereacute
CASE Tools (Computer-aided software engineering)
Mal adapteacute au deacuteveloppement agile qui implique souvent des solutions partielles tregraves tocirct dans le cycle de deacuteveloppement
Synchronisation difficile
Eacuteloigneacutee de la plateforme
GTI515 Automne 2013 JF Couturier 41
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Exemple Outils graphiques de modeacutelisation des classes
Plus proche de la plateforme
Code geacuteneacutereacute pour la plateforme
Plus simple
Aide geacuteneacuteralement le deacuteveloppeur agrave voir les deacutependances entre les classes
Il reste beaucoup de code agrave faire agrave la main
Penser agrave coder du SWING Java agrave la mitaine
GTI515 Automne 2013 JF Couturier 42
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Existence drsquoun framework logiciel
On se base sur le framework pour automatiser-compleacuteter la production de certains eacuteleacutements comme les eacuteleacutements graphiques
Abstraction plus eacuteleveacutee
VB6 et ses formulaires
NET Hibernate
Peu drsquoabstractions au niveau du modegravele Classe entiteacute-relation
GTI515 Automne 2013 JF Couturier 43
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Finalement il y a la possibiliteacute drsquoavoir une laquo pile raquo de modegraveles
Drsquoun modegravele agrave lrsquoautre il y a transformation vers un modegravele de plus en plus preacutecis
Approche MDA
Concept de Domain Specific Language
Pour un domaine particulier on creacutee des laquo templates raquo reacuteutilisables
Permets la contribution des experts meacutetiers
GTI515 Automne 2013 JF Couturier 44
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles
GTI515 Automne 2013 JF Couturier 45
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Domain Specific Langage
Par opposition au General purpose language comme UML C++ Java ou C
AvantagesPermets agrave un expert meacutetier de
comprendre et valider un modegravele
InconveacutenientCoucirct Formation Maintenance
GTI515 Automne 2013 JF Couturier 46
httpenwikipediaorgwikiDomain_Specific_Language
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 47
BuzzhellipMDA MDD MDE
Model Driven Architecturemarque de commerce de lrsquoOMG
Model Driven Developmentextension de MDAmarque de commerce de lrsquoOMG
Model Driven Engineeringexpression geacuteneacuterique
Deacutepartement de geacutenie logiciel et des TI
Exemple Agrave partir des speacutecifications des exigences logicielles
Lrsquoacteur saisit la commande contenant
lrsquoadresse de livraison
lrsquoadresse de facturation
Le systegraveme creacutee la commande
Lrsquoacteur saisit un deacutetail de la commande avec
le nom du produit
la quantiteacute demandeacutee
le prix du produit
Le systegraveme creacutee le deacutetail et revient agrave lrsquoeacutetape 3
Lrsquoacteur termine la commande
Le systegraveme ferme la commande
GTI515 Automne 2013 JF Couturier 48
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 49
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Un modegravele (Diagramme de classes UML)
Deacutepartement de geacutenie logiciel et des TI
Model Driven ArchitectureUn scheacutema XML
ltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gt
ltxsdschema xmlnsxsd=httpwww targetNamespace=helliprsaquo
ltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo minOccurs=ldquo0ldquo maxOccurs=ldquounboundedgt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdcomplexType name=ldquoDetailCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoprixldquo type=ldquo xsdfloatldquogt
ltxsdelement name=ldquoquantiteldquo type=ldquo xsdintldquogt
ltxsdelement name=ldquonomProduitldquo type=ldquo xsdstringldquogt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdschemarsaquo
GTI515 Automne 2013 JF Couturier 50
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 51
Des classes Java
public class Commande
private String adresseLivraison
private String adresseFacturation
private Collection detailCommande
hellip
String getAdresseLivraison()
void setAdresseLivraison(String value)
String getAdresseFacturation()
void setAdresseFacturation(String value)
public class DetailCommande
private float prix
private int quantite
private String nomProduit
float getPrix()
void setPrix(float value)
int getQuantite()
void setQuantite(int value)
String getNomProduit()
void setNomProduit(String value)
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 52
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Programmepublic class Commande
private String adresseLivraisonprivate String adresseFacturation
String getAdresseLivraison()void setAdresseLivraison(String value)
String getAdresseFacturation()void setAdresseFacturation(String value)
Scheacutema XMLltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gtltxsdschema xmlnsxsd=httpwww
targetNamespace=helliprsaquoltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo
xsdstringldquogt ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo
Modegravele UML3 repreacutesentationsdes mecircmes exigences
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
Speacutecifications de lrsquoOMG Seacuteparation de la logique meacutetier de
toute plateforme technique Speacutecifications drsquoun langage de
transformation (QVT)
GTI515 Automne 2013 JF Couturier 53
Deacutepartement de geacutenie logiciel et des TI
Concept principal de MDA
Modeacuteliser pour documenter le systegraveme
Modeacuteliser pour construire le systegraveme
GTI515 Automne 2013 JF Couturier 55
Deacutepartement de geacutenie logiciel et des TI
CIM PIM PSM Code CIM
Computing Independant Model
Modegravele du domaine logique meacutetier
PIM Platform Independant Model
Modegravele de conception UML et OCL
PSM Platform Specific Model
NET J2EE
Codehellip
GTI515 Automne 2013 JF Couturier 56
Deacutepartement de geacutenie logiciel et des TI
Les diffeacuterentes eacutetapes
GTI515 Automne 2013 JF Couturier 57
Reacutef the Zachman Framework and the OMGrsquos MDA Business Process Trends Sept 2003
Deacutepartement de geacutenie logiciel et des TI
MDA et Gartner
GTI515 Automne 2013 JF Couturier 58
Gartner Hype Cycle 2008
Deacutepartement de geacutenie logiciel et des TI
Eacutetude de cas
Lecture de la discussion sur MDA Questions
Quels sont les arguments pour
Quels sont les arguments contre
Vos commentaires sur lrsquoarticle
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 59
Deacutepartement de geacutenie logiciel et des TI
Impact
Rocircle du deacuteveloppeur minimiseacute puisqursquoil nrsquointerpregravete plus le modegravele les regravegles de transformation srsquoen chargent
Modegraveles exportables drsquoune plateforme agrave un autre
Plus de 100 articles de recherche sur IEEE entre 2008 et 2009
Maishellip
GTI515 Automne 2013 JF Couturier 60
Deacutepartement de geacutenie logiciel et des TI
Impact
Est-ce applicable au monde agile
Le cycle de modeacutelisation est-il compatible avec le deacuteveloppement iteacuteratif
Est-ce qursquoil y a suffisamment de ressources hautement qualifieacutees pour reacutealiser ce type de projet
Pouvez-vous les former Pouvez-vous les conserver
Produire 80 du code et vous laisser les derniers 20 plus difficileshellip
Comment inteacutegrer les tests
GTI515 Automne 2013 JF Couturier 61
Scott Ambler Enterprise Unified Process p 191
Deacutepartement de geacutenie logiciel et des TI
Impact
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 62
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 63
Domaine
Exigences
Analyse
Conception
Reacutealisation
MDA
PIM
PSM
Modegravele des Processus drsquoaffaires
Modegravele drsquoanalyse du systegraveme
CIM
Modegravele des Cas drsquoutilisation
Modegravele de conception du systegraveme
Les modegraveles du cycle de deacuteveloppement de logiciels
Code
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 64
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 65
Deacutepartement de geacutenie logiciel et des TI
Exemple
GTI515 Automne 2013 JF Couturier 66
httpwwwibmcomdeveloperworksrationallibrary3100html
Deacutepartement de geacutenie logiciel et des TI
Ressources
Site de lOMG MDA Article drsquoIBM sur MDA Discussion sur MDA Wiki MDA Wiki QVT
GTI515 Automne 2013 JF Couturier 67
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 68
Laboratoire 1
Choix du sujet Validation de la porteacutee
Suffisamment long Plusieurs interactions humaines machines Reacutealisable dans une session
Chargeacute de laboratoire Oleg Litvinski Premier laboratoire lundi 7 mai
Deacutepartement de geacutenie logiciel et des TI
Le document de vision (RUP)
Une base de discussion et drsquoaccord parmi les intervenants du projet
Une description de lrsquoapplication en geacuteneacuteral incluant la description du marcheacute cible les clients les utilisateurs du systegraveme les problegravemes agrave reacutesoudre et les caracteacuteristiques de lrsquoapplication
GTI515 Automne 2013 JF Couturier 69
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 70
Requirements Management with Use Cases v20010300
Copyright copy 1998 2001 Rational Software all rights reserved
2
Problem
Solution Space
Problem Space
Needs
Features
SoftwareRequirements
Test Procedures Design User
Docs
The The Product Product To Be To Be BuiltBuilt
Traceability
Deacutepartement de geacutenie logiciel et des TI
Exemples de caracteacuteristiques (feature)
Domaine drsquoapplication Exemple de caracteacuteristique
Systegraveme de commande drsquoascenseur
Commande manuelle des portes durant une urgence de feu
Systegraveme de commande drsquoinventaire
Fournir un statut reacutecent de tous les items reacutepertorieacutes
Systegraveme de suivi de deacutefauts Fournir des laquo donneacutees raquo sur les tendances pour eacutevaluer la
qualiteacute
Systegraveme de paie Rapports par cateacutegories des deacuteductions remis agrave lrsquoimpocirct
Systegraveme de commande drsquoarmes
Minimum de deux confirmations indeacutependantes drsquoautorisation
drsquoattaque exigeacutee
GTI515 Automne 2013 JF Couturier 71
Deacutepartement de geacutenie logiciel et des TI
Niveau de deacutetail des caracteacuteristiques Pour tout nouveau systegraveme ou pour
une ameacutelioration majeure agrave un systegraveme existant il est recommandeacute de garder un niveau drsquoabstraction assez eacuteleveacute de sorte agrave avoir un maximum de caracteacuteristiques compris entre 25-99 et de preacutefeacuterence moins de 50
GTI515 Automne 2013 JF Couturier 72
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Statut Suit le progregraves
Exemples Proposeacute approuveacute incorporeacute etc
PrioriteacuteBeacuteneacutefice
Les caracteacuteristiques ne sont pas agrave prioriteacutes eacutegales ou geacutenegraverent des beacuteneacutefices eacutegaux
Exemple critiques importantes optionnelle
Effort Estimation du nombre de personnessemaines lignes de code points de fonction COSMIC_FFP
Risque La probabiliteacute que la caracteacuteristique aille causer un eacuteveacutenement indeacutesirable tel que le deacutepassement du budget ou des deacutelais ou mecircme lrsquoannulation du projet
GTI515 Automne 2013 JF Couturier 73
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Stabiliteacute La probabiliteacute que la caracteacuteristique elle-mecircme ou sa compreacutehension par lrsquoeacutequipe de deacuteveloppement changera
Mise en application
Documenter la version preacutevue pour laquelle la caracteacuteristique sera incorporeacutee
Assigneacutee agrave Deacutesigner lrsquoeacutequipe responsable de la caracteacuteristique
Raison Lrsquoorigine de la requecircte de la caracteacuteristique
GTI515 Automne 2013 JF Couturier 74
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 75
Deacutepartement de geacutenie logiciel et des TI
Reacutedaction du document de vision une description concise de tout ce qui est important au
produit ou agrave lrsquoapplication eacutecrit avec un niveau de deacutetails dans un langage lisible et
compreacutehensible par les intervenants du projet
Document de 15 agrave 20 pages
GTI515 Automne 2013 JF Couturier 76
Deacutepartement de geacutenie logiciel et des TI
Exemple le cas ACS
GTI515 Automne 2013 JF Couturier 77
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 78
Deacutepartement de geacutenie logiciel et des TI
Exemple de problegravemesle cas ACS
Controcircle drsquoune large gamme de mateacuteriels
Utilisation compliqueacutee Difficulteacutes de programmation Disponibiliteacute du mateacuteriel Risque de mauvaise utilisation
GTI515 Automne 2013 JF Couturier 79
Deacutepartement de geacutenie logiciel et des TI
Exemple de besoinsle cas ACS
AutomatiserLa distribution de fertilisantLa distribution de nourritureLa dureacutee de lrsquoeacuteclairage
Commander lrsquoopeacuteration des appareils Reacuteguler
le niveau et la dureteacute de lrsquoeauLa tempeacuterature
GTI515 Automne 2013 JF Couturier 80
Deacutepartement de geacutenie logiciel et des TI
Exemple de caracteacuteristiquesle cas ACS
Deacutemarrage automatique du systegraveme Programmation conserveacutee en cas de
panne drsquoalimentation Deacutetection automatique des modules Facile agrave programmer et agrave utiliser
Exigence non fonctionnelle
GTI515 Automne 2013 JF Couturier 81
Deacutepartement de geacutenie logiciel et des TI
Critegraveres drsquoeacutevaluation
Respect de lrsquoesprit du document
En tant qursquointervenant externe est-ce que je comprends bien
Respect de la forme du gabarit
Qualiteacute du franccedilais
Document de calibre professionnel que lrsquoon pourrait remettre agrave un dirigeant
GTI515 Automne 2013 JF Couturier 82
Deacutepartement de geacutenie logiciel et des TI
Grille drsquoeacutevaluation (sur 100)
Agrave venirhellip
GTI515 Automne 2013 JF Couturier 83
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 84
Prochain cours
La modeacutelisation des processus drsquoaffaires Le diagramme drsquoactiviteacute Le diagnostic des processus drsquoaffaires existant
Lectures Lrsquoutilisation drsquoUML Chapitre sur les diagrammes drsquoactiviteacutes dans Larman Lecture sur MDA Voir site Web du cours
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 85
Questions
- Systegravemes drsquoinformation dans les entreprises (GTI515)
- Plan du cours 1
- Qui suis-je JF Couturier
- Qui suis-je Eacutetudiant(e)
- Plan du cours 1 (2)
- Objectifs du programme
- Ingeacutenieur
- Programme GTI
- Geacutenie des TI
- Cours de speacutecialiteacutes GTI
- Objectif du cours
- Vue drsquoensemble du cours
- Lectures et reacutefeacuterences
- Regravegles du jeu
- QUIZ
- Plan du cours 1 (3)
- Plan de cours
- Laboratoires ndash GTI515
- Peacutenaliteacutes de retard
- Plagiat
- Plan du cours 1 (4)
- Les tendances dans le deacuteveloppement des systegravemes drsquoinformation
- UML - Historique
- Pourquoi modeacuteliser
- La modeacutelisation dans les entreprises
- Quelques chiffres
- Quelques chiffres (2)
- Quelques chiffres (3)
- Quelques chiffres (4)
- Quelques chiffres (5)
- Et maintenant
- Et maintenant (2)
- Finalementhellip
- Reacuteussite Eacutechec
- Rappel
- Industrialisation
- Industrialisation (2)
- Slide 39
- Slide 40
- Usines logicielles (S Factory)
- Usines logicielles (S Factory) (2)
- Usines logicielles (S Factory) (3)
- Usines logicielles (S Factory) (4)
- Usines logicielles
- Domain Specific Langage
- BuzzhellipMDA MDD MDE
- Exemple
- Model Driven Architecture
- Model Driven Architecture (2)
- Model Driven Architecture (3)
- Model Driven Architecture (4)
- Model Driven Architecture (5)
- Concept principal de MDA
- CIM PIM PSM Code
- Les diffeacuterentes eacutetapes
- MDA et Gartner
- Eacutetude de cas
- Impact
- Impact (2)
- Impact (3)
- Slide 63
- Slide 64
- Slide 65
- Exemple (2)
- Ressources
- Laboratoire 1
- Le document de vision (RUP)
- Slide 70
- Exemples de caracteacuteristiques (feature)
- Niveau de deacutetail des caracteacuteristiques
- Attributs des caracteacuteristiques
- Attributs des caracteacuteristiques
- Slide 75
- Reacutedaction du document de vision
- Exemple le cas ACS
- Slide 78
- Exemple de problegravemes le cas ACS
- Exemple de besoins le cas ACS
- Exemple de caracteacuteristiques le cas ACS
- Critegraveres drsquoeacutevaluation
- Grille drsquoeacutevaluation (sur 100)
- Prochain cours
- Questions
-
Deacutepartement de geacutenie logiciel et des TI
Industrialisation
Vers le milieu du 19e siegravecle Segmenter le travail des individus pour
ne pas ecirctre deacutependant drsquoun artisan Permet une production beaucoup plus
efficace en seacuterie
GTI515 Automne 2013 JF Couturier 37
Deacutepartement de geacutenie logiciel et des TI
Industrialisation
Est-ce que le deacuteveloppement peut-ecirctre industrialiseacuteCertains disent que non que le logiciel agrave
un caractegravere trop creacuteatif
Drsquoautres pensent que les reacutecents progregraves dans le domaine permettent une eacuteventuelle industrialisation dans la production drsquoapplication
GTI515 Automne 2013 JF Couturier 38
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 39
Technologies(OO CBD Services Web SOA
XML AOP DB design patternshellip)
Ingeacutenierie dirigeacutee par les modegraveles
Usines logicielles (Microsoft)Architecture dirigeacutee par les modegraveles (OMG)
Deux applications drsquoun mecircme concept de base
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 40
Techniques de deacuteveloppement assisteacute par ordinateur (Reacutef Software Factories Greenfield J p144)
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Un modegravele tregraves deacutetailleacute beaucoup de code geacuteneacutereacute
CASE Tools (Computer-aided software engineering)
Mal adapteacute au deacuteveloppement agile qui implique souvent des solutions partielles tregraves tocirct dans le cycle de deacuteveloppement
Synchronisation difficile
Eacuteloigneacutee de la plateforme
GTI515 Automne 2013 JF Couturier 41
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Exemple Outils graphiques de modeacutelisation des classes
Plus proche de la plateforme
Code geacuteneacutereacute pour la plateforme
Plus simple
Aide geacuteneacuteralement le deacuteveloppeur agrave voir les deacutependances entre les classes
Il reste beaucoup de code agrave faire agrave la main
Penser agrave coder du SWING Java agrave la mitaine
GTI515 Automne 2013 JF Couturier 42
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Existence drsquoun framework logiciel
On se base sur le framework pour automatiser-compleacuteter la production de certains eacuteleacutements comme les eacuteleacutements graphiques
Abstraction plus eacuteleveacutee
VB6 et ses formulaires
NET Hibernate
Peu drsquoabstractions au niveau du modegravele Classe entiteacute-relation
GTI515 Automne 2013 JF Couturier 43
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Finalement il y a la possibiliteacute drsquoavoir une laquo pile raquo de modegraveles
Drsquoun modegravele agrave lrsquoautre il y a transformation vers un modegravele de plus en plus preacutecis
Approche MDA
Concept de Domain Specific Language
Pour un domaine particulier on creacutee des laquo templates raquo reacuteutilisables
Permets la contribution des experts meacutetiers
GTI515 Automne 2013 JF Couturier 44
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles
GTI515 Automne 2013 JF Couturier 45
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Domain Specific Langage
Par opposition au General purpose language comme UML C++ Java ou C
AvantagesPermets agrave un expert meacutetier de
comprendre et valider un modegravele
InconveacutenientCoucirct Formation Maintenance
GTI515 Automne 2013 JF Couturier 46
httpenwikipediaorgwikiDomain_Specific_Language
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 47
BuzzhellipMDA MDD MDE
Model Driven Architecturemarque de commerce de lrsquoOMG
Model Driven Developmentextension de MDAmarque de commerce de lrsquoOMG
Model Driven Engineeringexpression geacuteneacuterique
Deacutepartement de geacutenie logiciel et des TI
Exemple Agrave partir des speacutecifications des exigences logicielles
Lrsquoacteur saisit la commande contenant
lrsquoadresse de livraison
lrsquoadresse de facturation
Le systegraveme creacutee la commande
Lrsquoacteur saisit un deacutetail de la commande avec
le nom du produit
la quantiteacute demandeacutee
le prix du produit
Le systegraveme creacutee le deacutetail et revient agrave lrsquoeacutetape 3
Lrsquoacteur termine la commande
Le systegraveme ferme la commande
GTI515 Automne 2013 JF Couturier 48
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 49
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Un modegravele (Diagramme de classes UML)
Deacutepartement de geacutenie logiciel et des TI
Model Driven ArchitectureUn scheacutema XML
ltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gt
ltxsdschema xmlnsxsd=httpwww targetNamespace=helliprsaquo
ltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo minOccurs=ldquo0ldquo maxOccurs=ldquounboundedgt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdcomplexType name=ldquoDetailCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoprixldquo type=ldquo xsdfloatldquogt
ltxsdelement name=ldquoquantiteldquo type=ldquo xsdintldquogt
ltxsdelement name=ldquonomProduitldquo type=ldquo xsdstringldquogt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdschemarsaquo
GTI515 Automne 2013 JF Couturier 50
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 51
Des classes Java
public class Commande
private String adresseLivraison
private String adresseFacturation
private Collection detailCommande
hellip
String getAdresseLivraison()
void setAdresseLivraison(String value)
String getAdresseFacturation()
void setAdresseFacturation(String value)
public class DetailCommande
private float prix
private int quantite
private String nomProduit
float getPrix()
void setPrix(float value)
int getQuantite()
void setQuantite(int value)
String getNomProduit()
void setNomProduit(String value)
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 52
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Programmepublic class Commande
private String adresseLivraisonprivate String adresseFacturation
String getAdresseLivraison()void setAdresseLivraison(String value)
String getAdresseFacturation()void setAdresseFacturation(String value)
Scheacutema XMLltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gtltxsdschema xmlnsxsd=httpwww
targetNamespace=helliprsaquoltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo
xsdstringldquogt ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo
Modegravele UML3 repreacutesentationsdes mecircmes exigences
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
Speacutecifications de lrsquoOMG Seacuteparation de la logique meacutetier de
toute plateforme technique Speacutecifications drsquoun langage de
transformation (QVT)
GTI515 Automne 2013 JF Couturier 53
Deacutepartement de geacutenie logiciel et des TI
Concept principal de MDA
Modeacuteliser pour documenter le systegraveme
Modeacuteliser pour construire le systegraveme
GTI515 Automne 2013 JF Couturier 55
Deacutepartement de geacutenie logiciel et des TI
CIM PIM PSM Code CIM
Computing Independant Model
Modegravele du domaine logique meacutetier
PIM Platform Independant Model
Modegravele de conception UML et OCL
PSM Platform Specific Model
NET J2EE
Codehellip
GTI515 Automne 2013 JF Couturier 56
Deacutepartement de geacutenie logiciel et des TI
Les diffeacuterentes eacutetapes
GTI515 Automne 2013 JF Couturier 57
Reacutef the Zachman Framework and the OMGrsquos MDA Business Process Trends Sept 2003
Deacutepartement de geacutenie logiciel et des TI
MDA et Gartner
GTI515 Automne 2013 JF Couturier 58
Gartner Hype Cycle 2008
Deacutepartement de geacutenie logiciel et des TI
Eacutetude de cas
Lecture de la discussion sur MDA Questions
Quels sont les arguments pour
Quels sont les arguments contre
Vos commentaires sur lrsquoarticle
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 59
Deacutepartement de geacutenie logiciel et des TI
Impact
Rocircle du deacuteveloppeur minimiseacute puisqursquoil nrsquointerpregravete plus le modegravele les regravegles de transformation srsquoen chargent
Modegraveles exportables drsquoune plateforme agrave un autre
Plus de 100 articles de recherche sur IEEE entre 2008 et 2009
Maishellip
GTI515 Automne 2013 JF Couturier 60
Deacutepartement de geacutenie logiciel et des TI
Impact
Est-ce applicable au monde agile
Le cycle de modeacutelisation est-il compatible avec le deacuteveloppement iteacuteratif
Est-ce qursquoil y a suffisamment de ressources hautement qualifieacutees pour reacutealiser ce type de projet
Pouvez-vous les former Pouvez-vous les conserver
Produire 80 du code et vous laisser les derniers 20 plus difficileshellip
Comment inteacutegrer les tests
GTI515 Automne 2013 JF Couturier 61
Scott Ambler Enterprise Unified Process p 191
Deacutepartement de geacutenie logiciel et des TI
Impact
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 62
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 63
Domaine
Exigences
Analyse
Conception
Reacutealisation
MDA
PIM
PSM
Modegravele des Processus drsquoaffaires
Modegravele drsquoanalyse du systegraveme
CIM
Modegravele des Cas drsquoutilisation
Modegravele de conception du systegraveme
Les modegraveles du cycle de deacuteveloppement de logiciels
Code
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 64
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 65
Deacutepartement de geacutenie logiciel et des TI
Exemple
GTI515 Automne 2013 JF Couturier 66
httpwwwibmcomdeveloperworksrationallibrary3100html
Deacutepartement de geacutenie logiciel et des TI
Ressources
Site de lOMG MDA Article drsquoIBM sur MDA Discussion sur MDA Wiki MDA Wiki QVT
GTI515 Automne 2013 JF Couturier 67
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 68
Laboratoire 1
Choix du sujet Validation de la porteacutee
Suffisamment long Plusieurs interactions humaines machines Reacutealisable dans une session
Chargeacute de laboratoire Oleg Litvinski Premier laboratoire lundi 7 mai
Deacutepartement de geacutenie logiciel et des TI
Le document de vision (RUP)
Une base de discussion et drsquoaccord parmi les intervenants du projet
Une description de lrsquoapplication en geacuteneacuteral incluant la description du marcheacute cible les clients les utilisateurs du systegraveme les problegravemes agrave reacutesoudre et les caracteacuteristiques de lrsquoapplication
GTI515 Automne 2013 JF Couturier 69
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 70
Requirements Management with Use Cases v20010300
Copyright copy 1998 2001 Rational Software all rights reserved
2
Problem
Solution Space
Problem Space
Needs
Features
SoftwareRequirements
Test Procedures Design User
Docs
The The Product Product To Be To Be BuiltBuilt
Traceability
Deacutepartement de geacutenie logiciel et des TI
Exemples de caracteacuteristiques (feature)
Domaine drsquoapplication Exemple de caracteacuteristique
Systegraveme de commande drsquoascenseur
Commande manuelle des portes durant une urgence de feu
Systegraveme de commande drsquoinventaire
Fournir un statut reacutecent de tous les items reacutepertorieacutes
Systegraveme de suivi de deacutefauts Fournir des laquo donneacutees raquo sur les tendances pour eacutevaluer la
qualiteacute
Systegraveme de paie Rapports par cateacutegories des deacuteductions remis agrave lrsquoimpocirct
Systegraveme de commande drsquoarmes
Minimum de deux confirmations indeacutependantes drsquoautorisation
drsquoattaque exigeacutee
GTI515 Automne 2013 JF Couturier 71
Deacutepartement de geacutenie logiciel et des TI
Niveau de deacutetail des caracteacuteristiques Pour tout nouveau systegraveme ou pour
une ameacutelioration majeure agrave un systegraveme existant il est recommandeacute de garder un niveau drsquoabstraction assez eacuteleveacute de sorte agrave avoir un maximum de caracteacuteristiques compris entre 25-99 et de preacutefeacuterence moins de 50
GTI515 Automne 2013 JF Couturier 72
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Statut Suit le progregraves
Exemples Proposeacute approuveacute incorporeacute etc
PrioriteacuteBeacuteneacutefice
Les caracteacuteristiques ne sont pas agrave prioriteacutes eacutegales ou geacutenegraverent des beacuteneacutefices eacutegaux
Exemple critiques importantes optionnelle
Effort Estimation du nombre de personnessemaines lignes de code points de fonction COSMIC_FFP
Risque La probabiliteacute que la caracteacuteristique aille causer un eacuteveacutenement indeacutesirable tel que le deacutepassement du budget ou des deacutelais ou mecircme lrsquoannulation du projet
GTI515 Automne 2013 JF Couturier 73
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Stabiliteacute La probabiliteacute que la caracteacuteristique elle-mecircme ou sa compreacutehension par lrsquoeacutequipe de deacuteveloppement changera
Mise en application
Documenter la version preacutevue pour laquelle la caracteacuteristique sera incorporeacutee
Assigneacutee agrave Deacutesigner lrsquoeacutequipe responsable de la caracteacuteristique
Raison Lrsquoorigine de la requecircte de la caracteacuteristique
GTI515 Automne 2013 JF Couturier 74
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 75
Deacutepartement de geacutenie logiciel et des TI
Reacutedaction du document de vision une description concise de tout ce qui est important au
produit ou agrave lrsquoapplication eacutecrit avec un niveau de deacutetails dans un langage lisible et
compreacutehensible par les intervenants du projet
Document de 15 agrave 20 pages
GTI515 Automne 2013 JF Couturier 76
Deacutepartement de geacutenie logiciel et des TI
Exemple le cas ACS
GTI515 Automne 2013 JF Couturier 77
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 78
Deacutepartement de geacutenie logiciel et des TI
Exemple de problegravemesle cas ACS
Controcircle drsquoune large gamme de mateacuteriels
Utilisation compliqueacutee Difficulteacutes de programmation Disponibiliteacute du mateacuteriel Risque de mauvaise utilisation
GTI515 Automne 2013 JF Couturier 79
Deacutepartement de geacutenie logiciel et des TI
Exemple de besoinsle cas ACS
AutomatiserLa distribution de fertilisantLa distribution de nourritureLa dureacutee de lrsquoeacuteclairage
Commander lrsquoopeacuteration des appareils Reacuteguler
le niveau et la dureteacute de lrsquoeauLa tempeacuterature
GTI515 Automne 2013 JF Couturier 80
Deacutepartement de geacutenie logiciel et des TI
Exemple de caracteacuteristiquesle cas ACS
Deacutemarrage automatique du systegraveme Programmation conserveacutee en cas de
panne drsquoalimentation Deacutetection automatique des modules Facile agrave programmer et agrave utiliser
Exigence non fonctionnelle
GTI515 Automne 2013 JF Couturier 81
Deacutepartement de geacutenie logiciel et des TI
Critegraveres drsquoeacutevaluation
Respect de lrsquoesprit du document
En tant qursquointervenant externe est-ce que je comprends bien
Respect de la forme du gabarit
Qualiteacute du franccedilais
Document de calibre professionnel que lrsquoon pourrait remettre agrave un dirigeant
GTI515 Automne 2013 JF Couturier 82
Deacutepartement de geacutenie logiciel et des TI
Grille drsquoeacutevaluation (sur 100)
Agrave venirhellip
GTI515 Automne 2013 JF Couturier 83
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 84
Prochain cours
La modeacutelisation des processus drsquoaffaires Le diagramme drsquoactiviteacute Le diagnostic des processus drsquoaffaires existant
Lectures Lrsquoutilisation drsquoUML Chapitre sur les diagrammes drsquoactiviteacutes dans Larman Lecture sur MDA Voir site Web du cours
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 85
Questions
- Systegravemes drsquoinformation dans les entreprises (GTI515)
- Plan du cours 1
- Qui suis-je JF Couturier
- Qui suis-je Eacutetudiant(e)
- Plan du cours 1 (2)
- Objectifs du programme
- Ingeacutenieur
- Programme GTI
- Geacutenie des TI
- Cours de speacutecialiteacutes GTI
- Objectif du cours
- Vue drsquoensemble du cours
- Lectures et reacutefeacuterences
- Regravegles du jeu
- QUIZ
- Plan du cours 1 (3)
- Plan de cours
- Laboratoires ndash GTI515
- Peacutenaliteacutes de retard
- Plagiat
- Plan du cours 1 (4)
- Les tendances dans le deacuteveloppement des systegravemes drsquoinformation
- UML - Historique
- Pourquoi modeacuteliser
- La modeacutelisation dans les entreprises
- Quelques chiffres
- Quelques chiffres (2)
- Quelques chiffres (3)
- Quelques chiffres (4)
- Quelques chiffres (5)
- Et maintenant
- Et maintenant (2)
- Finalementhellip
- Reacuteussite Eacutechec
- Rappel
- Industrialisation
- Industrialisation (2)
- Slide 39
- Slide 40
- Usines logicielles (S Factory)
- Usines logicielles (S Factory) (2)
- Usines logicielles (S Factory) (3)
- Usines logicielles (S Factory) (4)
- Usines logicielles
- Domain Specific Langage
- BuzzhellipMDA MDD MDE
- Exemple
- Model Driven Architecture
- Model Driven Architecture (2)
- Model Driven Architecture (3)
- Model Driven Architecture (4)
- Model Driven Architecture (5)
- Concept principal de MDA
- CIM PIM PSM Code
- Les diffeacuterentes eacutetapes
- MDA et Gartner
- Eacutetude de cas
- Impact
- Impact (2)
- Impact (3)
- Slide 63
- Slide 64
- Slide 65
- Exemple (2)
- Ressources
- Laboratoire 1
- Le document de vision (RUP)
- Slide 70
- Exemples de caracteacuteristiques (feature)
- Niveau de deacutetail des caracteacuteristiques
- Attributs des caracteacuteristiques
- Attributs des caracteacuteristiques
- Slide 75
- Reacutedaction du document de vision
- Exemple le cas ACS
- Slide 78
- Exemple de problegravemes le cas ACS
- Exemple de besoins le cas ACS
- Exemple de caracteacuteristiques le cas ACS
- Critegraveres drsquoeacutevaluation
- Grille drsquoeacutevaluation (sur 100)
- Prochain cours
- Questions
-
Deacutepartement de geacutenie logiciel et des TI
Industrialisation
Est-ce que le deacuteveloppement peut-ecirctre industrialiseacuteCertains disent que non que le logiciel agrave
un caractegravere trop creacuteatif
Drsquoautres pensent que les reacutecents progregraves dans le domaine permettent une eacuteventuelle industrialisation dans la production drsquoapplication
GTI515 Automne 2013 JF Couturier 38
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 39
Technologies(OO CBD Services Web SOA
XML AOP DB design patternshellip)
Ingeacutenierie dirigeacutee par les modegraveles
Usines logicielles (Microsoft)Architecture dirigeacutee par les modegraveles (OMG)
Deux applications drsquoun mecircme concept de base
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 40
Techniques de deacuteveloppement assisteacute par ordinateur (Reacutef Software Factories Greenfield J p144)
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Un modegravele tregraves deacutetailleacute beaucoup de code geacuteneacutereacute
CASE Tools (Computer-aided software engineering)
Mal adapteacute au deacuteveloppement agile qui implique souvent des solutions partielles tregraves tocirct dans le cycle de deacuteveloppement
Synchronisation difficile
Eacuteloigneacutee de la plateforme
GTI515 Automne 2013 JF Couturier 41
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Exemple Outils graphiques de modeacutelisation des classes
Plus proche de la plateforme
Code geacuteneacutereacute pour la plateforme
Plus simple
Aide geacuteneacuteralement le deacuteveloppeur agrave voir les deacutependances entre les classes
Il reste beaucoup de code agrave faire agrave la main
Penser agrave coder du SWING Java agrave la mitaine
GTI515 Automne 2013 JF Couturier 42
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Existence drsquoun framework logiciel
On se base sur le framework pour automatiser-compleacuteter la production de certains eacuteleacutements comme les eacuteleacutements graphiques
Abstraction plus eacuteleveacutee
VB6 et ses formulaires
NET Hibernate
Peu drsquoabstractions au niveau du modegravele Classe entiteacute-relation
GTI515 Automne 2013 JF Couturier 43
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Finalement il y a la possibiliteacute drsquoavoir une laquo pile raquo de modegraveles
Drsquoun modegravele agrave lrsquoautre il y a transformation vers un modegravele de plus en plus preacutecis
Approche MDA
Concept de Domain Specific Language
Pour un domaine particulier on creacutee des laquo templates raquo reacuteutilisables
Permets la contribution des experts meacutetiers
GTI515 Automne 2013 JF Couturier 44
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles
GTI515 Automne 2013 JF Couturier 45
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Domain Specific Langage
Par opposition au General purpose language comme UML C++ Java ou C
AvantagesPermets agrave un expert meacutetier de
comprendre et valider un modegravele
InconveacutenientCoucirct Formation Maintenance
GTI515 Automne 2013 JF Couturier 46
httpenwikipediaorgwikiDomain_Specific_Language
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 47
BuzzhellipMDA MDD MDE
Model Driven Architecturemarque de commerce de lrsquoOMG
Model Driven Developmentextension de MDAmarque de commerce de lrsquoOMG
Model Driven Engineeringexpression geacuteneacuterique
Deacutepartement de geacutenie logiciel et des TI
Exemple Agrave partir des speacutecifications des exigences logicielles
Lrsquoacteur saisit la commande contenant
lrsquoadresse de livraison
lrsquoadresse de facturation
Le systegraveme creacutee la commande
Lrsquoacteur saisit un deacutetail de la commande avec
le nom du produit
la quantiteacute demandeacutee
le prix du produit
Le systegraveme creacutee le deacutetail et revient agrave lrsquoeacutetape 3
Lrsquoacteur termine la commande
Le systegraveme ferme la commande
GTI515 Automne 2013 JF Couturier 48
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 49
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Un modegravele (Diagramme de classes UML)
Deacutepartement de geacutenie logiciel et des TI
Model Driven ArchitectureUn scheacutema XML
ltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gt
ltxsdschema xmlnsxsd=httpwww targetNamespace=helliprsaquo
ltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo minOccurs=ldquo0ldquo maxOccurs=ldquounboundedgt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdcomplexType name=ldquoDetailCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoprixldquo type=ldquo xsdfloatldquogt
ltxsdelement name=ldquoquantiteldquo type=ldquo xsdintldquogt
ltxsdelement name=ldquonomProduitldquo type=ldquo xsdstringldquogt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdschemarsaquo
GTI515 Automne 2013 JF Couturier 50
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 51
Des classes Java
public class Commande
private String adresseLivraison
private String adresseFacturation
private Collection detailCommande
hellip
String getAdresseLivraison()
void setAdresseLivraison(String value)
String getAdresseFacturation()
void setAdresseFacturation(String value)
public class DetailCommande
private float prix
private int quantite
private String nomProduit
float getPrix()
void setPrix(float value)
int getQuantite()
void setQuantite(int value)
String getNomProduit()
void setNomProduit(String value)
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 52
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Programmepublic class Commande
private String adresseLivraisonprivate String adresseFacturation
String getAdresseLivraison()void setAdresseLivraison(String value)
String getAdresseFacturation()void setAdresseFacturation(String value)
Scheacutema XMLltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gtltxsdschema xmlnsxsd=httpwww
targetNamespace=helliprsaquoltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo
xsdstringldquogt ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo
Modegravele UML3 repreacutesentationsdes mecircmes exigences
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
Speacutecifications de lrsquoOMG Seacuteparation de la logique meacutetier de
toute plateforme technique Speacutecifications drsquoun langage de
transformation (QVT)
GTI515 Automne 2013 JF Couturier 53
Deacutepartement de geacutenie logiciel et des TI
Concept principal de MDA
Modeacuteliser pour documenter le systegraveme
Modeacuteliser pour construire le systegraveme
GTI515 Automne 2013 JF Couturier 55
Deacutepartement de geacutenie logiciel et des TI
CIM PIM PSM Code CIM
Computing Independant Model
Modegravele du domaine logique meacutetier
PIM Platform Independant Model
Modegravele de conception UML et OCL
PSM Platform Specific Model
NET J2EE
Codehellip
GTI515 Automne 2013 JF Couturier 56
Deacutepartement de geacutenie logiciel et des TI
Les diffeacuterentes eacutetapes
GTI515 Automne 2013 JF Couturier 57
Reacutef the Zachman Framework and the OMGrsquos MDA Business Process Trends Sept 2003
Deacutepartement de geacutenie logiciel et des TI
MDA et Gartner
GTI515 Automne 2013 JF Couturier 58
Gartner Hype Cycle 2008
Deacutepartement de geacutenie logiciel et des TI
Eacutetude de cas
Lecture de la discussion sur MDA Questions
Quels sont les arguments pour
Quels sont les arguments contre
Vos commentaires sur lrsquoarticle
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 59
Deacutepartement de geacutenie logiciel et des TI
Impact
Rocircle du deacuteveloppeur minimiseacute puisqursquoil nrsquointerpregravete plus le modegravele les regravegles de transformation srsquoen chargent
Modegraveles exportables drsquoune plateforme agrave un autre
Plus de 100 articles de recherche sur IEEE entre 2008 et 2009
Maishellip
GTI515 Automne 2013 JF Couturier 60
Deacutepartement de geacutenie logiciel et des TI
Impact
Est-ce applicable au monde agile
Le cycle de modeacutelisation est-il compatible avec le deacuteveloppement iteacuteratif
Est-ce qursquoil y a suffisamment de ressources hautement qualifieacutees pour reacutealiser ce type de projet
Pouvez-vous les former Pouvez-vous les conserver
Produire 80 du code et vous laisser les derniers 20 plus difficileshellip
Comment inteacutegrer les tests
GTI515 Automne 2013 JF Couturier 61
Scott Ambler Enterprise Unified Process p 191
Deacutepartement de geacutenie logiciel et des TI
Impact
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 62
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 63
Domaine
Exigences
Analyse
Conception
Reacutealisation
MDA
PIM
PSM
Modegravele des Processus drsquoaffaires
Modegravele drsquoanalyse du systegraveme
CIM
Modegravele des Cas drsquoutilisation
Modegravele de conception du systegraveme
Les modegraveles du cycle de deacuteveloppement de logiciels
Code
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 64
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 65
Deacutepartement de geacutenie logiciel et des TI
Exemple
GTI515 Automne 2013 JF Couturier 66
httpwwwibmcomdeveloperworksrationallibrary3100html
Deacutepartement de geacutenie logiciel et des TI
Ressources
Site de lOMG MDA Article drsquoIBM sur MDA Discussion sur MDA Wiki MDA Wiki QVT
GTI515 Automne 2013 JF Couturier 67
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 68
Laboratoire 1
Choix du sujet Validation de la porteacutee
Suffisamment long Plusieurs interactions humaines machines Reacutealisable dans une session
Chargeacute de laboratoire Oleg Litvinski Premier laboratoire lundi 7 mai
Deacutepartement de geacutenie logiciel et des TI
Le document de vision (RUP)
Une base de discussion et drsquoaccord parmi les intervenants du projet
Une description de lrsquoapplication en geacuteneacuteral incluant la description du marcheacute cible les clients les utilisateurs du systegraveme les problegravemes agrave reacutesoudre et les caracteacuteristiques de lrsquoapplication
GTI515 Automne 2013 JF Couturier 69
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 70
Requirements Management with Use Cases v20010300
Copyright copy 1998 2001 Rational Software all rights reserved
2
Problem
Solution Space
Problem Space
Needs
Features
SoftwareRequirements
Test Procedures Design User
Docs
The The Product Product To Be To Be BuiltBuilt
Traceability
Deacutepartement de geacutenie logiciel et des TI
Exemples de caracteacuteristiques (feature)
Domaine drsquoapplication Exemple de caracteacuteristique
Systegraveme de commande drsquoascenseur
Commande manuelle des portes durant une urgence de feu
Systegraveme de commande drsquoinventaire
Fournir un statut reacutecent de tous les items reacutepertorieacutes
Systegraveme de suivi de deacutefauts Fournir des laquo donneacutees raquo sur les tendances pour eacutevaluer la
qualiteacute
Systegraveme de paie Rapports par cateacutegories des deacuteductions remis agrave lrsquoimpocirct
Systegraveme de commande drsquoarmes
Minimum de deux confirmations indeacutependantes drsquoautorisation
drsquoattaque exigeacutee
GTI515 Automne 2013 JF Couturier 71
Deacutepartement de geacutenie logiciel et des TI
Niveau de deacutetail des caracteacuteristiques Pour tout nouveau systegraveme ou pour
une ameacutelioration majeure agrave un systegraveme existant il est recommandeacute de garder un niveau drsquoabstraction assez eacuteleveacute de sorte agrave avoir un maximum de caracteacuteristiques compris entre 25-99 et de preacutefeacuterence moins de 50
GTI515 Automne 2013 JF Couturier 72
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Statut Suit le progregraves
Exemples Proposeacute approuveacute incorporeacute etc
PrioriteacuteBeacuteneacutefice
Les caracteacuteristiques ne sont pas agrave prioriteacutes eacutegales ou geacutenegraverent des beacuteneacutefices eacutegaux
Exemple critiques importantes optionnelle
Effort Estimation du nombre de personnessemaines lignes de code points de fonction COSMIC_FFP
Risque La probabiliteacute que la caracteacuteristique aille causer un eacuteveacutenement indeacutesirable tel que le deacutepassement du budget ou des deacutelais ou mecircme lrsquoannulation du projet
GTI515 Automne 2013 JF Couturier 73
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Stabiliteacute La probabiliteacute que la caracteacuteristique elle-mecircme ou sa compreacutehension par lrsquoeacutequipe de deacuteveloppement changera
Mise en application
Documenter la version preacutevue pour laquelle la caracteacuteristique sera incorporeacutee
Assigneacutee agrave Deacutesigner lrsquoeacutequipe responsable de la caracteacuteristique
Raison Lrsquoorigine de la requecircte de la caracteacuteristique
GTI515 Automne 2013 JF Couturier 74
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 75
Deacutepartement de geacutenie logiciel et des TI
Reacutedaction du document de vision une description concise de tout ce qui est important au
produit ou agrave lrsquoapplication eacutecrit avec un niveau de deacutetails dans un langage lisible et
compreacutehensible par les intervenants du projet
Document de 15 agrave 20 pages
GTI515 Automne 2013 JF Couturier 76
Deacutepartement de geacutenie logiciel et des TI
Exemple le cas ACS
GTI515 Automne 2013 JF Couturier 77
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 78
Deacutepartement de geacutenie logiciel et des TI
Exemple de problegravemesle cas ACS
Controcircle drsquoune large gamme de mateacuteriels
Utilisation compliqueacutee Difficulteacutes de programmation Disponibiliteacute du mateacuteriel Risque de mauvaise utilisation
GTI515 Automne 2013 JF Couturier 79
Deacutepartement de geacutenie logiciel et des TI
Exemple de besoinsle cas ACS
AutomatiserLa distribution de fertilisantLa distribution de nourritureLa dureacutee de lrsquoeacuteclairage
Commander lrsquoopeacuteration des appareils Reacuteguler
le niveau et la dureteacute de lrsquoeauLa tempeacuterature
GTI515 Automne 2013 JF Couturier 80
Deacutepartement de geacutenie logiciel et des TI
Exemple de caracteacuteristiquesle cas ACS
Deacutemarrage automatique du systegraveme Programmation conserveacutee en cas de
panne drsquoalimentation Deacutetection automatique des modules Facile agrave programmer et agrave utiliser
Exigence non fonctionnelle
GTI515 Automne 2013 JF Couturier 81
Deacutepartement de geacutenie logiciel et des TI
Critegraveres drsquoeacutevaluation
Respect de lrsquoesprit du document
En tant qursquointervenant externe est-ce que je comprends bien
Respect de la forme du gabarit
Qualiteacute du franccedilais
Document de calibre professionnel que lrsquoon pourrait remettre agrave un dirigeant
GTI515 Automne 2013 JF Couturier 82
Deacutepartement de geacutenie logiciel et des TI
Grille drsquoeacutevaluation (sur 100)
Agrave venirhellip
GTI515 Automne 2013 JF Couturier 83
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 84
Prochain cours
La modeacutelisation des processus drsquoaffaires Le diagramme drsquoactiviteacute Le diagnostic des processus drsquoaffaires existant
Lectures Lrsquoutilisation drsquoUML Chapitre sur les diagrammes drsquoactiviteacutes dans Larman Lecture sur MDA Voir site Web du cours
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 85
Questions
- Systegravemes drsquoinformation dans les entreprises (GTI515)
- Plan du cours 1
- Qui suis-je JF Couturier
- Qui suis-je Eacutetudiant(e)
- Plan du cours 1 (2)
- Objectifs du programme
- Ingeacutenieur
- Programme GTI
- Geacutenie des TI
- Cours de speacutecialiteacutes GTI
- Objectif du cours
- Vue drsquoensemble du cours
- Lectures et reacutefeacuterences
- Regravegles du jeu
- QUIZ
- Plan du cours 1 (3)
- Plan de cours
- Laboratoires ndash GTI515
- Peacutenaliteacutes de retard
- Plagiat
- Plan du cours 1 (4)
- Les tendances dans le deacuteveloppement des systegravemes drsquoinformation
- UML - Historique
- Pourquoi modeacuteliser
- La modeacutelisation dans les entreprises
- Quelques chiffres
- Quelques chiffres (2)
- Quelques chiffres (3)
- Quelques chiffres (4)
- Quelques chiffres (5)
- Et maintenant
- Et maintenant (2)
- Finalementhellip
- Reacuteussite Eacutechec
- Rappel
- Industrialisation
- Industrialisation (2)
- Slide 39
- Slide 40
- Usines logicielles (S Factory)
- Usines logicielles (S Factory) (2)
- Usines logicielles (S Factory) (3)
- Usines logicielles (S Factory) (4)
- Usines logicielles
- Domain Specific Langage
- BuzzhellipMDA MDD MDE
- Exemple
- Model Driven Architecture
- Model Driven Architecture (2)
- Model Driven Architecture (3)
- Model Driven Architecture (4)
- Model Driven Architecture (5)
- Concept principal de MDA
- CIM PIM PSM Code
- Les diffeacuterentes eacutetapes
- MDA et Gartner
- Eacutetude de cas
- Impact
- Impact (2)
- Impact (3)
- Slide 63
- Slide 64
- Slide 65
- Exemple (2)
- Ressources
- Laboratoire 1
- Le document de vision (RUP)
- Slide 70
- Exemples de caracteacuteristiques (feature)
- Niveau de deacutetail des caracteacuteristiques
- Attributs des caracteacuteristiques
- Attributs des caracteacuteristiques
- Slide 75
- Reacutedaction du document de vision
- Exemple le cas ACS
- Slide 78
- Exemple de problegravemes le cas ACS
- Exemple de besoins le cas ACS
- Exemple de caracteacuteristiques le cas ACS
- Critegraveres drsquoeacutevaluation
- Grille drsquoeacutevaluation (sur 100)
- Prochain cours
- Questions
-
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 39
Technologies(OO CBD Services Web SOA
XML AOP DB design patternshellip)
Ingeacutenierie dirigeacutee par les modegraveles
Usines logicielles (Microsoft)Architecture dirigeacutee par les modegraveles (OMG)
Deux applications drsquoun mecircme concept de base
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 40
Techniques de deacuteveloppement assisteacute par ordinateur (Reacutef Software Factories Greenfield J p144)
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Un modegravele tregraves deacutetailleacute beaucoup de code geacuteneacutereacute
CASE Tools (Computer-aided software engineering)
Mal adapteacute au deacuteveloppement agile qui implique souvent des solutions partielles tregraves tocirct dans le cycle de deacuteveloppement
Synchronisation difficile
Eacuteloigneacutee de la plateforme
GTI515 Automne 2013 JF Couturier 41
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Exemple Outils graphiques de modeacutelisation des classes
Plus proche de la plateforme
Code geacuteneacutereacute pour la plateforme
Plus simple
Aide geacuteneacuteralement le deacuteveloppeur agrave voir les deacutependances entre les classes
Il reste beaucoup de code agrave faire agrave la main
Penser agrave coder du SWING Java agrave la mitaine
GTI515 Automne 2013 JF Couturier 42
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Existence drsquoun framework logiciel
On se base sur le framework pour automatiser-compleacuteter la production de certains eacuteleacutements comme les eacuteleacutements graphiques
Abstraction plus eacuteleveacutee
VB6 et ses formulaires
NET Hibernate
Peu drsquoabstractions au niveau du modegravele Classe entiteacute-relation
GTI515 Automne 2013 JF Couturier 43
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Finalement il y a la possibiliteacute drsquoavoir une laquo pile raquo de modegraveles
Drsquoun modegravele agrave lrsquoautre il y a transformation vers un modegravele de plus en plus preacutecis
Approche MDA
Concept de Domain Specific Language
Pour un domaine particulier on creacutee des laquo templates raquo reacuteutilisables
Permets la contribution des experts meacutetiers
GTI515 Automne 2013 JF Couturier 44
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles
GTI515 Automne 2013 JF Couturier 45
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Domain Specific Langage
Par opposition au General purpose language comme UML C++ Java ou C
AvantagesPermets agrave un expert meacutetier de
comprendre et valider un modegravele
InconveacutenientCoucirct Formation Maintenance
GTI515 Automne 2013 JF Couturier 46
httpenwikipediaorgwikiDomain_Specific_Language
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 47
BuzzhellipMDA MDD MDE
Model Driven Architecturemarque de commerce de lrsquoOMG
Model Driven Developmentextension de MDAmarque de commerce de lrsquoOMG
Model Driven Engineeringexpression geacuteneacuterique
Deacutepartement de geacutenie logiciel et des TI
Exemple Agrave partir des speacutecifications des exigences logicielles
Lrsquoacteur saisit la commande contenant
lrsquoadresse de livraison
lrsquoadresse de facturation
Le systegraveme creacutee la commande
Lrsquoacteur saisit un deacutetail de la commande avec
le nom du produit
la quantiteacute demandeacutee
le prix du produit
Le systegraveme creacutee le deacutetail et revient agrave lrsquoeacutetape 3
Lrsquoacteur termine la commande
Le systegraveme ferme la commande
GTI515 Automne 2013 JF Couturier 48
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 49
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Un modegravele (Diagramme de classes UML)
Deacutepartement de geacutenie logiciel et des TI
Model Driven ArchitectureUn scheacutema XML
ltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gt
ltxsdschema xmlnsxsd=httpwww targetNamespace=helliprsaquo
ltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo minOccurs=ldquo0ldquo maxOccurs=ldquounboundedgt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdcomplexType name=ldquoDetailCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoprixldquo type=ldquo xsdfloatldquogt
ltxsdelement name=ldquoquantiteldquo type=ldquo xsdintldquogt
ltxsdelement name=ldquonomProduitldquo type=ldquo xsdstringldquogt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdschemarsaquo
GTI515 Automne 2013 JF Couturier 50
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 51
Des classes Java
public class Commande
private String adresseLivraison
private String adresseFacturation
private Collection detailCommande
hellip
String getAdresseLivraison()
void setAdresseLivraison(String value)
String getAdresseFacturation()
void setAdresseFacturation(String value)
public class DetailCommande
private float prix
private int quantite
private String nomProduit
float getPrix()
void setPrix(float value)
int getQuantite()
void setQuantite(int value)
String getNomProduit()
void setNomProduit(String value)
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 52
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Programmepublic class Commande
private String adresseLivraisonprivate String adresseFacturation
String getAdresseLivraison()void setAdresseLivraison(String value)
String getAdresseFacturation()void setAdresseFacturation(String value)
Scheacutema XMLltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gtltxsdschema xmlnsxsd=httpwww
targetNamespace=helliprsaquoltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo
xsdstringldquogt ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo
Modegravele UML3 repreacutesentationsdes mecircmes exigences
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
Speacutecifications de lrsquoOMG Seacuteparation de la logique meacutetier de
toute plateforme technique Speacutecifications drsquoun langage de
transformation (QVT)
GTI515 Automne 2013 JF Couturier 53
Deacutepartement de geacutenie logiciel et des TI
Concept principal de MDA
Modeacuteliser pour documenter le systegraveme
Modeacuteliser pour construire le systegraveme
GTI515 Automne 2013 JF Couturier 55
Deacutepartement de geacutenie logiciel et des TI
CIM PIM PSM Code CIM
Computing Independant Model
Modegravele du domaine logique meacutetier
PIM Platform Independant Model
Modegravele de conception UML et OCL
PSM Platform Specific Model
NET J2EE
Codehellip
GTI515 Automne 2013 JF Couturier 56
Deacutepartement de geacutenie logiciel et des TI
Les diffeacuterentes eacutetapes
GTI515 Automne 2013 JF Couturier 57
Reacutef the Zachman Framework and the OMGrsquos MDA Business Process Trends Sept 2003
Deacutepartement de geacutenie logiciel et des TI
MDA et Gartner
GTI515 Automne 2013 JF Couturier 58
Gartner Hype Cycle 2008
Deacutepartement de geacutenie logiciel et des TI
Eacutetude de cas
Lecture de la discussion sur MDA Questions
Quels sont les arguments pour
Quels sont les arguments contre
Vos commentaires sur lrsquoarticle
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 59
Deacutepartement de geacutenie logiciel et des TI
Impact
Rocircle du deacuteveloppeur minimiseacute puisqursquoil nrsquointerpregravete plus le modegravele les regravegles de transformation srsquoen chargent
Modegraveles exportables drsquoune plateforme agrave un autre
Plus de 100 articles de recherche sur IEEE entre 2008 et 2009
Maishellip
GTI515 Automne 2013 JF Couturier 60
Deacutepartement de geacutenie logiciel et des TI
Impact
Est-ce applicable au monde agile
Le cycle de modeacutelisation est-il compatible avec le deacuteveloppement iteacuteratif
Est-ce qursquoil y a suffisamment de ressources hautement qualifieacutees pour reacutealiser ce type de projet
Pouvez-vous les former Pouvez-vous les conserver
Produire 80 du code et vous laisser les derniers 20 plus difficileshellip
Comment inteacutegrer les tests
GTI515 Automne 2013 JF Couturier 61
Scott Ambler Enterprise Unified Process p 191
Deacutepartement de geacutenie logiciel et des TI
Impact
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 62
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 63
Domaine
Exigences
Analyse
Conception
Reacutealisation
MDA
PIM
PSM
Modegravele des Processus drsquoaffaires
Modegravele drsquoanalyse du systegraveme
CIM
Modegravele des Cas drsquoutilisation
Modegravele de conception du systegraveme
Les modegraveles du cycle de deacuteveloppement de logiciels
Code
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 64
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 65
Deacutepartement de geacutenie logiciel et des TI
Exemple
GTI515 Automne 2013 JF Couturier 66
httpwwwibmcomdeveloperworksrationallibrary3100html
Deacutepartement de geacutenie logiciel et des TI
Ressources
Site de lOMG MDA Article drsquoIBM sur MDA Discussion sur MDA Wiki MDA Wiki QVT
GTI515 Automne 2013 JF Couturier 67
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 68
Laboratoire 1
Choix du sujet Validation de la porteacutee
Suffisamment long Plusieurs interactions humaines machines Reacutealisable dans une session
Chargeacute de laboratoire Oleg Litvinski Premier laboratoire lundi 7 mai
Deacutepartement de geacutenie logiciel et des TI
Le document de vision (RUP)
Une base de discussion et drsquoaccord parmi les intervenants du projet
Une description de lrsquoapplication en geacuteneacuteral incluant la description du marcheacute cible les clients les utilisateurs du systegraveme les problegravemes agrave reacutesoudre et les caracteacuteristiques de lrsquoapplication
GTI515 Automne 2013 JF Couturier 69
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 70
Requirements Management with Use Cases v20010300
Copyright copy 1998 2001 Rational Software all rights reserved
2
Problem
Solution Space
Problem Space
Needs
Features
SoftwareRequirements
Test Procedures Design User
Docs
The The Product Product To Be To Be BuiltBuilt
Traceability
Deacutepartement de geacutenie logiciel et des TI
Exemples de caracteacuteristiques (feature)
Domaine drsquoapplication Exemple de caracteacuteristique
Systegraveme de commande drsquoascenseur
Commande manuelle des portes durant une urgence de feu
Systegraveme de commande drsquoinventaire
Fournir un statut reacutecent de tous les items reacutepertorieacutes
Systegraveme de suivi de deacutefauts Fournir des laquo donneacutees raquo sur les tendances pour eacutevaluer la
qualiteacute
Systegraveme de paie Rapports par cateacutegories des deacuteductions remis agrave lrsquoimpocirct
Systegraveme de commande drsquoarmes
Minimum de deux confirmations indeacutependantes drsquoautorisation
drsquoattaque exigeacutee
GTI515 Automne 2013 JF Couturier 71
Deacutepartement de geacutenie logiciel et des TI
Niveau de deacutetail des caracteacuteristiques Pour tout nouveau systegraveme ou pour
une ameacutelioration majeure agrave un systegraveme existant il est recommandeacute de garder un niveau drsquoabstraction assez eacuteleveacute de sorte agrave avoir un maximum de caracteacuteristiques compris entre 25-99 et de preacutefeacuterence moins de 50
GTI515 Automne 2013 JF Couturier 72
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Statut Suit le progregraves
Exemples Proposeacute approuveacute incorporeacute etc
PrioriteacuteBeacuteneacutefice
Les caracteacuteristiques ne sont pas agrave prioriteacutes eacutegales ou geacutenegraverent des beacuteneacutefices eacutegaux
Exemple critiques importantes optionnelle
Effort Estimation du nombre de personnessemaines lignes de code points de fonction COSMIC_FFP
Risque La probabiliteacute que la caracteacuteristique aille causer un eacuteveacutenement indeacutesirable tel que le deacutepassement du budget ou des deacutelais ou mecircme lrsquoannulation du projet
GTI515 Automne 2013 JF Couturier 73
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Stabiliteacute La probabiliteacute que la caracteacuteristique elle-mecircme ou sa compreacutehension par lrsquoeacutequipe de deacuteveloppement changera
Mise en application
Documenter la version preacutevue pour laquelle la caracteacuteristique sera incorporeacutee
Assigneacutee agrave Deacutesigner lrsquoeacutequipe responsable de la caracteacuteristique
Raison Lrsquoorigine de la requecircte de la caracteacuteristique
GTI515 Automne 2013 JF Couturier 74
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 75
Deacutepartement de geacutenie logiciel et des TI
Reacutedaction du document de vision une description concise de tout ce qui est important au
produit ou agrave lrsquoapplication eacutecrit avec un niveau de deacutetails dans un langage lisible et
compreacutehensible par les intervenants du projet
Document de 15 agrave 20 pages
GTI515 Automne 2013 JF Couturier 76
Deacutepartement de geacutenie logiciel et des TI
Exemple le cas ACS
GTI515 Automne 2013 JF Couturier 77
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 78
Deacutepartement de geacutenie logiciel et des TI
Exemple de problegravemesle cas ACS
Controcircle drsquoune large gamme de mateacuteriels
Utilisation compliqueacutee Difficulteacutes de programmation Disponibiliteacute du mateacuteriel Risque de mauvaise utilisation
GTI515 Automne 2013 JF Couturier 79
Deacutepartement de geacutenie logiciel et des TI
Exemple de besoinsle cas ACS
AutomatiserLa distribution de fertilisantLa distribution de nourritureLa dureacutee de lrsquoeacuteclairage
Commander lrsquoopeacuteration des appareils Reacuteguler
le niveau et la dureteacute de lrsquoeauLa tempeacuterature
GTI515 Automne 2013 JF Couturier 80
Deacutepartement de geacutenie logiciel et des TI
Exemple de caracteacuteristiquesle cas ACS
Deacutemarrage automatique du systegraveme Programmation conserveacutee en cas de
panne drsquoalimentation Deacutetection automatique des modules Facile agrave programmer et agrave utiliser
Exigence non fonctionnelle
GTI515 Automne 2013 JF Couturier 81
Deacutepartement de geacutenie logiciel et des TI
Critegraveres drsquoeacutevaluation
Respect de lrsquoesprit du document
En tant qursquointervenant externe est-ce que je comprends bien
Respect de la forme du gabarit
Qualiteacute du franccedilais
Document de calibre professionnel que lrsquoon pourrait remettre agrave un dirigeant
GTI515 Automne 2013 JF Couturier 82
Deacutepartement de geacutenie logiciel et des TI
Grille drsquoeacutevaluation (sur 100)
Agrave venirhellip
GTI515 Automne 2013 JF Couturier 83
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 84
Prochain cours
La modeacutelisation des processus drsquoaffaires Le diagramme drsquoactiviteacute Le diagnostic des processus drsquoaffaires existant
Lectures Lrsquoutilisation drsquoUML Chapitre sur les diagrammes drsquoactiviteacutes dans Larman Lecture sur MDA Voir site Web du cours
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 85
Questions
- Systegravemes drsquoinformation dans les entreprises (GTI515)
- Plan du cours 1
- Qui suis-je JF Couturier
- Qui suis-je Eacutetudiant(e)
- Plan du cours 1 (2)
- Objectifs du programme
- Ingeacutenieur
- Programme GTI
- Geacutenie des TI
- Cours de speacutecialiteacutes GTI
- Objectif du cours
- Vue drsquoensemble du cours
- Lectures et reacutefeacuterences
- Regravegles du jeu
- QUIZ
- Plan du cours 1 (3)
- Plan de cours
- Laboratoires ndash GTI515
- Peacutenaliteacutes de retard
- Plagiat
- Plan du cours 1 (4)
- Les tendances dans le deacuteveloppement des systegravemes drsquoinformation
- UML - Historique
- Pourquoi modeacuteliser
- La modeacutelisation dans les entreprises
- Quelques chiffres
- Quelques chiffres (2)
- Quelques chiffres (3)
- Quelques chiffres (4)
- Quelques chiffres (5)
- Et maintenant
- Et maintenant (2)
- Finalementhellip
- Reacuteussite Eacutechec
- Rappel
- Industrialisation
- Industrialisation (2)
- Slide 39
- Slide 40
- Usines logicielles (S Factory)
- Usines logicielles (S Factory) (2)
- Usines logicielles (S Factory) (3)
- Usines logicielles (S Factory) (4)
- Usines logicielles
- Domain Specific Langage
- BuzzhellipMDA MDD MDE
- Exemple
- Model Driven Architecture
- Model Driven Architecture (2)
- Model Driven Architecture (3)
- Model Driven Architecture (4)
- Model Driven Architecture (5)
- Concept principal de MDA
- CIM PIM PSM Code
- Les diffeacuterentes eacutetapes
- MDA et Gartner
- Eacutetude de cas
- Impact
- Impact (2)
- Impact (3)
- Slide 63
- Slide 64
- Slide 65
- Exemple (2)
- Ressources
- Laboratoire 1
- Le document de vision (RUP)
- Slide 70
- Exemples de caracteacuteristiques (feature)
- Niveau de deacutetail des caracteacuteristiques
- Attributs des caracteacuteristiques
- Attributs des caracteacuteristiques
- Slide 75
- Reacutedaction du document de vision
- Exemple le cas ACS
- Slide 78
- Exemple de problegravemes le cas ACS
- Exemple de besoins le cas ACS
- Exemple de caracteacuteristiques le cas ACS
- Critegraveres drsquoeacutevaluation
- Grille drsquoeacutevaluation (sur 100)
- Prochain cours
- Questions
-
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 40
Techniques de deacuteveloppement assisteacute par ordinateur (Reacutef Software Factories Greenfield J p144)
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Un modegravele tregraves deacutetailleacute beaucoup de code geacuteneacutereacute
CASE Tools (Computer-aided software engineering)
Mal adapteacute au deacuteveloppement agile qui implique souvent des solutions partielles tregraves tocirct dans le cycle de deacuteveloppement
Synchronisation difficile
Eacuteloigneacutee de la plateforme
GTI515 Automne 2013 JF Couturier 41
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Exemple Outils graphiques de modeacutelisation des classes
Plus proche de la plateforme
Code geacuteneacutereacute pour la plateforme
Plus simple
Aide geacuteneacuteralement le deacuteveloppeur agrave voir les deacutependances entre les classes
Il reste beaucoup de code agrave faire agrave la main
Penser agrave coder du SWING Java agrave la mitaine
GTI515 Automne 2013 JF Couturier 42
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Existence drsquoun framework logiciel
On se base sur le framework pour automatiser-compleacuteter la production de certains eacuteleacutements comme les eacuteleacutements graphiques
Abstraction plus eacuteleveacutee
VB6 et ses formulaires
NET Hibernate
Peu drsquoabstractions au niveau du modegravele Classe entiteacute-relation
GTI515 Automne 2013 JF Couturier 43
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Finalement il y a la possibiliteacute drsquoavoir une laquo pile raquo de modegraveles
Drsquoun modegravele agrave lrsquoautre il y a transformation vers un modegravele de plus en plus preacutecis
Approche MDA
Concept de Domain Specific Language
Pour un domaine particulier on creacutee des laquo templates raquo reacuteutilisables
Permets la contribution des experts meacutetiers
GTI515 Automne 2013 JF Couturier 44
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles
GTI515 Automne 2013 JF Couturier 45
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Domain Specific Langage
Par opposition au General purpose language comme UML C++ Java ou C
AvantagesPermets agrave un expert meacutetier de
comprendre et valider un modegravele
InconveacutenientCoucirct Formation Maintenance
GTI515 Automne 2013 JF Couturier 46
httpenwikipediaorgwikiDomain_Specific_Language
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 47
BuzzhellipMDA MDD MDE
Model Driven Architecturemarque de commerce de lrsquoOMG
Model Driven Developmentextension de MDAmarque de commerce de lrsquoOMG
Model Driven Engineeringexpression geacuteneacuterique
Deacutepartement de geacutenie logiciel et des TI
Exemple Agrave partir des speacutecifications des exigences logicielles
Lrsquoacteur saisit la commande contenant
lrsquoadresse de livraison
lrsquoadresse de facturation
Le systegraveme creacutee la commande
Lrsquoacteur saisit un deacutetail de la commande avec
le nom du produit
la quantiteacute demandeacutee
le prix du produit
Le systegraveme creacutee le deacutetail et revient agrave lrsquoeacutetape 3
Lrsquoacteur termine la commande
Le systegraveme ferme la commande
GTI515 Automne 2013 JF Couturier 48
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 49
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Un modegravele (Diagramme de classes UML)
Deacutepartement de geacutenie logiciel et des TI
Model Driven ArchitectureUn scheacutema XML
ltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gt
ltxsdschema xmlnsxsd=httpwww targetNamespace=helliprsaquo
ltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo minOccurs=ldquo0ldquo maxOccurs=ldquounboundedgt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdcomplexType name=ldquoDetailCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoprixldquo type=ldquo xsdfloatldquogt
ltxsdelement name=ldquoquantiteldquo type=ldquo xsdintldquogt
ltxsdelement name=ldquonomProduitldquo type=ldquo xsdstringldquogt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdschemarsaquo
GTI515 Automne 2013 JF Couturier 50
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 51
Des classes Java
public class Commande
private String adresseLivraison
private String adresseFacturation
private Collection detailCommande
hellip
String getAdresseLivraison()
void setAdresseLivraison(String value)
String getAdresseFacturation()
void setAdresseFacturation(String value)
public class DetailCommande
private float prix
private int quantite
private String nomProduit
float getPrix()
void setPrix(float value)
int getQuantite()
void setQuantite(int value)
String getNomProduit()
void setNomProduit(String value)
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 52
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Programmepublic class Commande
private String adresseLivraisonprivate String adresseFacturation
String getAdresseLivraison()void setAdresseLivraison(String value)
String getAdresseFacturation()void setAdresseFacturation(String value)
Scheacutema XMLltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gtltxsdschema xmlnsxsd=httpwww
targetNamespace=helliprsaquoltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo
xsdstringldquogt ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo
Modegravele UML3 repreacutesentationsdes mecircmes exigences
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
Speacutecifications de lrsquoOMG Seacuteparation de la logique meacutetier de
toute plateforme technique Speacutecifications drsquoun langage de
transformation (QVT)
GTI515 Automne 2013 JF Couturier 53
Deacutepartement de geacutenie logiciel et des TI
Concept principal de MDA
Modeacuteliser pour documenter le systegraveme
Modeacuteliser pour construire le systegraveme
GTI515 Automne 2013 JF Couturier 55
Deacutepartement de geacutenie logiciel et des TI
CIM PIM PSM Code CIM
Computing Independant Model
Modegravele du domaine logique meacutetier
PIM Platform Independant Model
Modegravele de conception UML et OCL
PSM Platform Specific Model
NET J2EE
Codehellip
GTI515 Automne 2013 JF Couturier 56
Deacutepartement de geacutenie logiciel et des TI
Les diffeacuterentes eacutetapes
GTI515 Automne 2013 JF Couturier 57
Reacutef the Zachman Framework and the OMGrsquos MDA Business Process Trends Sept 2003
Deacutepartement de geacutenie logiciel et des TI
MDA et Gartner
GTI515 Automne 2013 JF Couturier 58
Gartner Hype Cycle 2008
Deacutepartement de geacutenie logiciel et des TI
Eacutetude de cas
Lecture de la discussion sur MDA Questions
Quels sont les arguments pour
Quels sont les arguments contre
Vos commentaires sur lrsquoarticle
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 59
Deacutepartement de geacutenie logiciel et des TI
Impact
Rocircle du deacuteveloppeur minimiseacute puisqursquoil nrsquointerpregravete plus le modegravele les regravegles de transformation srsquoen chargent
Modegraveles exportables drsquoune plateforme agrave un autre
Plus de 100 articles de recherche sur IEEE entre 2008 et 2009
Maishellip
GTI515 Automne 2013 JF Couturier 60
Deacutepartement de geacutenie logiciel et des TI
Impact
Est-ce applicable au monde agile
Le cycle de modeacutelisation est-il compatible avec le deacuteveloppement iteacuteratif
Est-ce qursquoil y a suffisamment de ressources hautement qualifieacutees pour reacutealiser ce type de projet
Pouvez-vous les former Pouvez-vous les conserver
Produire 80 du code et vous laisser les derniers 20 plus difficileshellip
Comment inteacutegrer les tests
GTI515 Automne 2013 JF Couturier 61
Scott Ambler Enterprise Unified Process p 191
Deacutepartement de geacutenie logiciel et des TI
Impact
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 62
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 63
Domaine
Exigences
Analyse
Conception
Reacutealisation
MDA
PIM
PSM
Modegravele des Processus drsquoaffaires
Modegravele drsquoanalyse du systegraveme
CIM
Modegravele des Cas drsquoutilisation
Modegravele de conception du systegraveme
Les modegraveles du cycle de deacuteveloppement de logiciels
Code
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 64
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 65
Deacutepartement de geacutenie logiciel et des TI
Exemple
GTI515 Automne 2013 JF Couturier 66
httpwwwibmcomdeveloperworksrationallibrary3100html
Deacutepartement de geacutenie logiciel et des TI
Ressources
Site de lOMG MDA Article drsquoIBM sur MDA Discussion sur MDA Wiki MDA Wiki QVT
GTI515 Automne 2013 JF Couturier 67
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 68
Laboratoire 1
Choix du sujet Validation de la porteacutee
Suffisamment long Plusieurs interactions humaines machines Reacutealisable dans une session
Chargeacute de laboratoire Oleg Litvinski Premier laboratoire lundi 7 mai
Deacutepartement de geacutenie logiciel et des TI
Le document de vision (RUP)
Une base de discussion et drsquoaccord parmi les intervenants du projet
Une description de lrsquoapplication en geacuteneacuteral incluant la description du marcheacute cible les clients les utilisateurs du systegraveme les problegravemes agrave reacutesoudre et les caracteacuteristiques de lrsquoapplication
GTI515 Automne 2013 JF Couturier 69
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 70
Requirements Management with Use Cases v20010300
Copyright copy 1998 2001 Rational Software all rights reserved
2
Problem
Solution Space
Problem Space
Needs
Features
SoftwareRequirements
Test Procedures Design User
Docs
The The Product Product To Be To Be BuiltBuilt
Traceability
Deacutepartement de geacutenie logiciel et des TI
Exemples de caracteacuteristiques (feature)
Domaine drsquoapplication Exemple de caracteacuteristique
Systegraveme de commande drsquoascenseur
Commande manuelle des portes durant une urgence de feu
Systegraveme de commande drsquoinventaire
Fournir un statut reacutecent de tous les items reacutepertorieacutes
Systegraveme de suivi de deacutefauts Fournir des laquo donneacutees raquo sur les tendances pour eacutevaluer la
qualiteacute
Systegraveme de paie Rapports par cateacutegories des deacuteductions remis agrave lrsquoimpocirct
Systegraveme de commande drsquoarmes
Minimum de deux confirmations indeacutependantes drsquoautorisation
drsquoattaque exigeacutee
GTI515 Automne 2013 JF Couturier 71
Deacutepartement de geacutenie logiciel et des TI
Niveau de deacutetail des caracteacuteristiques Pour tout nouveau systegraveme ou pour
une ameacutelioration majeure agrave un systegraveme existant il est recommandeacute de garder un niveau drsquoabstraction assez eacuteleveacute de sorte agrave avoir un maximum de caracteacuteristiques compris entre 25-99 et de preacutefeacuterence moins de 50
GTI515 Automne 2013 JF Couturier 72
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Statut Suit le progregraves
Exemples Proposeacute approuveacute incorporeacute etc
PrioriteacuteBeacuteneacutefice
Les caracteacuteristiques ne sont pas agrave prioriteacutes eacutegales ou geacutenegraverent des beacuteneacutefices eacutegaux
Exemple critiques importantes optionnelle
Effort Estimation du nombre de personnessemaines lignes de code points de fonction COSMIC_FFP
Risque La probabiliteacute que la caracteacuteristique aille causer un eacuteveacutenement indeacutesirable tel que le deacutepassement du budget ou des deacutelais ou mecircme lrsquoannulation du projet
GTI515 Automne 2013 JF Couturier 73
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Stabiliteacute La probabiliteacute que la caracteacuteristique elle-mecircme ou sa compreacutehension par lrsquoeacutequipe de deacuteveloppement changera
Mise en application
Documenter la version preacutevue pour laquelle la caracteacuteristique sera incorporeacutee
Assigneacutee agrave Deacutesigner lrsquoeacutequipe responsable de la caracteacuteristique
Raison Lrsquoorigine de la requecircte de la caracteacuteristique
GTI515 Automne 2013 JF Couturier 74
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 75
Deacutepartement de geacutenie logiciel et des TI
Reacutedaction du document de vision une description concise de tout ce qui est important au
produit ou agrave lrsquoapplication eacutecrit avec un niveau de deacutetails dans un langage lisible et
compreacutehensible par les intervenants du projet
Document de 15 agrave 20 pages
GTI515 Automne 2013 JF Couturier 76
Deacutepartement de geacutenie logiciel et des TI
Exemple le cas ACS
GTI515 Automne 2013 JF Couturier 77
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 78
Deacutepartement de geacutenie logiciel et des TI
Exemple de problegravemesle cas ACS
Controcircle drsquoune large gamme de mateacuteriels
Utilisation compliqueacutee Difficulteacutes de programmation Disponibiliteacute du mateacuteriel Risque de mauvaise utilisation
GTI515 Automne 2013 JF Couturier 79
Deacutepartement de geacutenie logiciel et des TI
Exemple de besoinsle cas ACS
AutomatiserLa distribution de fertilisantLa distribution de nourritureLa dureacutee de lrsquoeacuteclairage
Commander lrsquoopeacuteration des appareils Reacuteguler
le niveau et la dureteacute de lrsquoeauLa tempeacuterature
GTI515 Automne 2013 JF Couturier 80
Deacutepartement de geacutenie logiciel et des TI
Exemple de caracteacuteristiquesle cas ACS
Deacutemarrage automatique du systegraveme Programmation conserveacutee en cas de
panne drsquoalimentation Deacutetection automatique des modules Facile agrave programmer et agrave utiliser
Exigence non fonctionnelle
GTI515 Automne 2013 JF Couturier 81
Deacutepartement de geacutenie logiciel et des TI
Critegraveres drsquoeacutevaluation
Respect de lrsquoesprit du document
En tant qursquointervenant externe est-ce que je comprends bien
Respect de la forme du gabarit
Qualiteacute du franccedilais
Document de calibre professionnel que lrsquoon pourrait remettre agrave un dirigeant
GTI515 Automne 2013 JF Couturier 82
Deacutepartement de geacutenie logiciel et des TI
Grille drsquoeacutevaluation (sur 100)
Agrave venirhellip
GTI515 Automne 2013 JF Couturier 83
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 84
Prochain cours
La modeacutelisation des processus drsquoaffaires Le diagramme drsquoactiviteacute Le diagnostic des processus drsquoaffaires existant
Lectures Lrsquoutilisation drsquoUML Chapitre sur les diagrammes drsquoactiviteacutes dans Larman Lecture sur MDA Voir site Web du cours
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 85
Questions
- Systegravemes drsquoinformation dans les entreprises (GTI515)
- Plan du cours 1
- Qui suis-je JF Couturier
- Qui suis-je Eacutetudiant(e)
- Plan du cours 1 (2)
- Objectifs du programme
- Ingeacutenieur
- Programme GTI
- Geacutenie des TI
- Cours de speacutecialiteacutes GTI
- Objectif du cours
- Vue drsquoensemble du cours
- Lectures et reacutefeacuterences
- Regravegles du jeu
- QUIZ
- Plan du cours 1 (3)
- Plan de cours
- Laboratoires ndash GTI515
- Peacutenaliteacutes de retard
- Plagiat
- Plan du cours 1 (4)
- Les tendances dans le deacuteveloppement des systegravemes drsquoinformation
- UML - Historique
- Pourquoi modeacuteliser
- La modeacutelisation dans les entreprises
- Quelques chiffres
- Quelques chiffres (2)
- Quelques chiffres (3)
- Quelques chiffres (4)
- Quelques chiffres (5)
- Et maintenant
- Et maintenant (2)
- Finalementhellip
- Reacuteussite Eacutechec
- Rappel
- Industrialisation
- Industrialisation (2)
- Slide 39
- Slide 40
- Usines logicielles (S Factory)
- Usines logicielles (S Factory) (2)
- Usines logicielles (S Factory) (3)
- Usines logicielles (S Factory) (4)
- Usines logicielles
- Domain Specific Langage
- BuzzhellipMDA MDD MDE
- Exemple
- Model Driven Architecture
- Model Driven Architecture (2)
- Model Driven Architecture (3)
- Model Driven Architecture (4)
- Model Driven Architecture (5)
- Concept principal de MDA
- CIM PIM PSM Code
- Les diffeacuterentes eacutetapes
- MDA et Gartner
- Eacutetude de cas
- Impact
- Impact (2)
- Impact (3)
- Slide 63
- Slide 64
- Slide 65
- Exemple (2)
- Ressources
- Laboratoire 1
- Le document de vision (RUP)
- Slide 70
- Exemples de caracteacuteristiques (feature)
- Niveau de deacutetail des caracteacuteristiques
- Attributs des caracteacuteristiques
- Attributs des caracteacuteristiques
- Slide 75
- Reacutedaction du document de vision
- Exemple le cas ACS
- Slide 78
- Exemple de problegravemes le cas ACS
- Exemple de besoins le cas ACS
- Exemple de caracteacuteristiques le cas ACS
- Critegraveres drsquoeacutevaluation
- Grille drsquoeacutevaluation (sur 100)
- Prochain cours
- Questions
-
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Un modegravele tregraves deacutetailleacute beaucoup de code geacuteneacutereacute
CASE Tools (Computer-aided software engineering)
Mal adapteacute au deacuteveloppement agile qui implique souvent des solutions partielles tregraves tocirct dans le cycle de deacuteveloppement
Synchronisation difficile
Eacuteloigneacutee de la plateforme
GTI515 Automne 2013 JF Couturier 41
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Exemple Outils graphiques de modeacutelisation des classes
Plus proche de la plateforme
Code geacuteneacutereacute pour la plateforme
Plus simple
Aide geacuteneacuteralement le deacuteveloppeur agrave voir les deacutependances entre les classes
Il reste beaucoup de code agrave faire agrave la main
Penser agrave coder du SWING Java agrave la mitaine
GTI515 Automne 2013 JF Couturier 42
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Existence drsquoun framework logiciel
On se base sur le framework pour automatiser-compleacuteter la production de certains eacuteleacutements comme les eacuteleacutements graphiques
Abstraction plus eacuteleveacutee
VB6 et ses formulaires
NET Hibernate
Peu drsquoabstractions au niveau du modegravele Classe entiteacute-relation
GTI515 Automne 2013 JF Couturier 43
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Finalement il y a la possibiliteacute drsquoavoir une laquo pile raquo de modegraveles
Drsquoun modegravele agrave lrsquoautre il y a transformation vers un modegravele de plus en plus preacutecis
Approche MDA
Concept de Domain Specific Language
Pour un domaine particulier on creacutee des laquo templates raquo reacuteutilisables
Permets la contribution des experts meacutetiers
GTI515 Automne 2013 JF Couturier 44
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles
GTI515 Automne 2013 JF Couturier 45
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Domain Specific Langage
Par opposition au General purpose language comme UML C++ Java ou C
AvantagesPermets agrave un expert meacutetier de
comprendre et valider un modegravele
InconveacutenientCoucirct Formation Maintenance
GTI515 Automne 2013 JF Couturier 46
httpenwikipediaorgwikiDomain_Specific_Language
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 47
BuzzhellipMDA MDD MDE
Model Driven Architecturemarque de commerce de lrsquoOMG
Model Driven Developmentextension de MDAmarque de commerce de lrsquoOMG
Model Driven Engineeringexpression geacuteneacuterique
Deacutepartement de geacutenie logiciel et des TI
Exemple Agrave partir des speacutecifications des exigences logicielles
Lrsquoacteur saisit la commande contenant
lrsquoadresse de livraison
lrsquoadresse de facturation
Le systegraveme creacutee la commande
Lrsquoacteur saisit un deacutetail de la commande avec
le nom du produit
la quantiteacute demandeacutee
le prix du produit
Le systegraveme creacutee le deacutetail et revient agrave lrsquoeacutetape 3
Lrsquoacteur termine la commande
Le systegraveme ferme la commande
GTI515 Automne 2013 JF Couturier 48
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 49
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Un modegravele (Diagramme de classes UML)
Deacutepartement de geacutenie logiciel et des TI
Model Driven ArchitectureUn scheacutema XML
ltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gt
ltxsdschema xmlnsxsd=httpwww targetNamespace=helliprsaquo
ltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo minOccurs=ldquo0ldquo maxOccurs=ldquounboundedgt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdcomplexType name=ldquoDetailCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoprixldquo type=ldquo xsdfloatldquogt
ltxsdelement name=ldquoquantiteldquo type=ldquo xsdintldquogt
ltxsdelement name=ldquonomProduitldquo type=ldquo xsdstringldquogt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdschemarsaquo
GTI515 Automne 2013 JF Couturier 50
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 51
Des classes Java
public class Commande
private String adresseLivraison
private String adresseFacturation
private Collection detailCommande
hellip
String getAdresseLivraison()
void setAdresseLivraison(String value)
String getAdresseFacturation()
void setAdresseFacturation(String value)
public class DetailCommande
private float prix
private int quantite
private String nomProduit
float getPrix()
void setPrix(float value)
int getQuantite()
void setQuantite(int value)
String getNomProduit()
void setNomProduit(String value)
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 52
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Programmepublic class Commande
private String adresseLivraisonprivate String adresseFacturation
String getAdresseLivraison()void setAdresseLivraison(String value)
String getAdresseFacturation()void setAdresseFacturation(String value)
Scheacutema XMLltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gtltxsdschema xmlnsxsd=httpwww
targetNamespace=helliprsaquoltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo
xsdstringldquogt ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo
Modegravele UML3 repreacutesentationsdes mecircmes exigences
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
Speacutecifications de lrsquoOMG Seacuteparation de la logique meacutetier de
toute plateforme technique Speacutecifications drsquoun langage de
transformation (QVT)
GTI515 Automne 2013 JF Couturier 53
Deacutepartement de geacutenie logiciel et des TI
Concept principal de MDA
Modeacuteliser pour documenter le systegraveme
Modeacuteliser pour construire le systegraveme
GTI515 Automne 2013 JF Couturier 55
Deacutepartement de geacutenie logiciel et des TI
CIM PIM PSM Code CIM
Computing Independant Model
Modegravele du domaine logique meacutetier
PIM Platform Independant Model
Modegravele de conception UML et OCL
PSM Platform Specific Model
NET J2EE
Codehellip
GTI515 Automne 2013 JF Couturier 56
Deacutepartement de geacutenie logiciel et des TI
Les diffeacuterentes eacutetapes
GTI515 Automne 2013 JF Couturier 57
Reacutef the Zachman Framework and the OMGrsquos MDA Business Process Trends Sept 2003
Deacutepartement de geacutenie logiciel et des TI
MDA et Gartner
GTI515 Automne 2013 JF Couturier 58
Gartner Hype Cycle 2008
Deacutepartement de geacutenie logiciel et des TI
Eacutetude de cas
Lecture de la discussion sur MDA Questions
Quels sont les arguments pour
Quels sont les arguments contre
Vos commentaires sur lrsquoarticle
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 59
Deacutepartement de geacutenie logiciel et des TI
Impact
Rocircle du deacuteveloppeur minimiseacute puisqursquoil nrsquointerpregravete plus le modegravele les regravegles de transformation srsquoen chargent
Modegraveles exportables drsquoune plateforme agrave un autre
Plus de 100 articles de recherche sur IEEE entre 2008 et 2009
Maishellip
GTI515 Automne 2013 JF Couturier 60
Deacutepartement de geacutenie logiciel et des TI
Impact
Est-ce applicable au monde agile
Le cycle de modeacutelisation est-il compatible avec le deacuteveloppement iteacuteratif
Est-ce qursquoil y a suffisamment de ressources hautement qualifieacutees pour reacutealiser ce type de projet
Pouvez-vous les former Pouvez-vous les conserver
Produire 80 du code et vous laisser les derniers 20 plus difficileshellip
Comment inteacutegrer les tests
GTI515 Automne 2013 JF Couturier 61
Scott Ambler Enterprise Unified Process p 191
Deacutepartement de geacutenie logiciel et des TI
Impact
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 62
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 63
Domaine
Exigences
Analyse
Conception
Reacutealisation
MDA
PIM
PSM
Modegravele des Processus drsquoaffaires
Modegravele drsquoanalyse du systegraveme
CIM
Modegravele des Cas drsquoutilisation
Modegravele de conception du systegraveme
Les modegraveles du cycle de deacuteveloppement de logiciels
Code
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 64
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 65
Deacutepartement de geacutenie logiciel et des TI
Exemple
GTI515 Automne 2013 JF Couturier 66
httpwwwibmcomdeveloperworksrationallibrary3100html
Deacutepartement de geacutenie logiciel et des TI
Ressources
Site de lOMG MDA Article drsquoIBM sur MDA Discussion sur MDA Wiki MDA Wiki QVT
GTI515 Automne 2013 JF Couturier 67
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 68
Laboratoire 1
Choix du sujet Validation de la porteacutee
Suffisamment long Plusieurs interactions humaines machines Reacutealisable dans une session
Chargeacute de laboratoire Oleg Litvinski Premier laboratoire lundi 7 mai
Deacutepartement de geacutenie logiciel et des TI
Le document de vision (RUP)
Une base de discussion et drsquoaccord parmi les intervenants du projet
Une description de lrsquoapplication en geacuteneacuteral incluant la description du marcheacute cible les clients les utilisateurs du systegraveme les problegravemes agrave reacutesoudre et les caracteacuteristiques de lrsquoapplication
GTI515 Automne 2013 JF Couturier 69
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 70
Requirements Management with Use Cases v20010300
Copyright copy 1998 2001 Rational Software all rights reserved
2
Problem
Solution Space
Problem Space
Needs
Features
SoftwareRequirements
Test Procedures Design User
Docs
The The Product Product To Be To Be BuiltBuilt
Traceability
Deacutepartement de geacutenie logiciel et des TI
Exemples de caracteacuteristiques (feature)
Domaine drsquoapplication Exemple de caracteacuteristique
Systegraveme de commande drsquoascenseur
Commande manuelle des portes durant une urgence de feu
Systegraveme de commande drsquoinventaire
Fournir un statut reacutecent de tous les items reacutepertorieacutes
Systegraveme de suivi de deacutefauts Fournir des laquo donneacutees raquo sur les tendances pour eacutevaluer la
qualiteacute
Systegraveme de paie Rapports par cateacutegories des deacuteductions remis agrave lrsquoimpocirct
Systegraveme de commande drsquoarmes
Minimum de deux confirmations indeacutependantes drsquoautorisation
drsquoattaque exigeacutee
GTI515 Automne 2013 JF Couturier 71
Deacutepartement de geacutenie logiciel et des TI
Niveau de deacutetail des caracteacuteristiques Pour tout nouveau systegraveme ou pour
une ameacutelioration majeure agrave un systegraveme existant il est recommandeacute de garder un niveau drsquoabstraction assez eacuteleveacute de sorte agrave avoir un maximum de caracteacuteristiques compris entre 25-99 et de preacutefeacuterence moins de 50
GTI515 Automne 2013 JF Couturier 72
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Statut Suit le progregraves
Exemples Proposeacute approuveacute incorporeacute etc
PrioriteacuteBeacuteneacutefice
Les caracteacuteristiques ne sont pas agrave prioriteacutes eacutegales ou geacutenegraverent des beacuteneacutefices eacutegaux
Exemple critiques importantes optionnelle
Effort Estimation du nombre de personnessemaines lignes de code points de fonction COSMIC_FFP
Risque La probabiliteacute que la caracteacuteristique aille causer un eacuteveacutenement indeacutesirable tel que le deacutepassement du budget ou des deacutelais ou mecircme lrsquoannulation du projet
GTI515 Automne 2013 JF Couturier 73
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Stabiliteacute La probabiliteacute que la caracteacuteristique elle-mecircme ou sa compreacutehension par lrsquoeacutequipe de deacuteveloppement changera
Mise en application
Documenter la version preacutevue pour laquelle la caracteacuteristique sera incorporeacutee
Assigneacutee agrave Deacutesigner lrsquoeacutequipe responsable de la caracteacuteristique
Raison Lrsquoorigine de la requecircte de la caracteacuteristique
GTI515 Automne 2013 JF Couturier 74
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 75
Deacutepartement de geacutenie logiciel et des TI
Reacutedaction du document de vision une description concise de tout ce qui est important au
produit ou agrave lrsquoapplication eacutecrit avec un niveau de deacutetails dans un langage lisible et
compreacutehensible par les intervenants du projet
Document de 15 agrave 20 pages
GTI515 Automne 2013 JF Couturier 76
Deacutepartement de geacutenie logiciel et des TI
Exemple le cas ACS
GTI515 Automne 2013 JF Couturier 77
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 78
Deacutepartement de geacutenie logiciel et des TI
Exemple de problegravemesle cas ACS
Controcircle drsquoune large gamme de mateacuteriels
Utilisation compliqueacutee Difficulteacutes de programmation Disponibiliteacute du mateacuteriel Risque de mauvaise utilisation
GTI515 Automne 2013 JF Couturier 79
Deacutepartement de geacutenie logiciel et des TI
Exemple de besoinsle cas ACS
AutomatiserLa distribution de fertilisantLa distribution de nourritureLa dureacutee de lrsquoeacuteclairage
Commander lrsquoopeacuteration des appareils Reacuteguler
le niveau et la dureteacute de lrsquoeauLa tempeacuterature
GTI515 Automne 2013 JF Couturier 80
Deacutepartement de geacutenie logiciel et des TI
Exemple de caracteacuteristiquesle cas ACS
Deacutemarrage automatique du systegraveme Programmation conserveacutee en cas de
panne drsquoalimentation Deacutetection automatique des modules Facile agrave programmer et agrave utiliser
Exigence non fonctionnelle
GTI515 Automne 2013 JF Couturier 81
Deacutepartement de geacutenie logiciel et des TI
Critegraveres drsquoeacutevaluation
Respect de lrsquoesprit du document
En tant qursquointervenant externe est-ce que je comprends bien
Respect de la forme du gabarit
Qualiteacute du franccedilais
Document de calibre professionnel que lrsquoon pourrait remettre agrave un dirigeant
GTI515 Automne 2013 JF Couturier 82
Deacutepartement de geacutenie logiciel et des TI
Grille drsquoeacutevaluation (sur 100)
Agrave venirhellip
GTI515 Automne 2013 JF Couturier 83
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 84
Prochain cours
La modeacutelisation des processus drsquoaffaires Le diagramme drsquoactiviteacute Le diagnostic des processus drsquoaffaires existant
Lectures Lrsquoutilisation drsquoUML Chapitre sur les diagrammes drsquoactiviteacutes dans Larman Lecture sur MDA Voir site Web du cours
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 85
Questions
- Systegravemes drsquoinformation dans les entreprises (GTI515)
- Plan du cours 1
- Qui suis-je JF Couturier
- Qui suis-je Eacutetudiant(e)
- Plan du cours 1 (2)
- Objectifs du programme
- Ingeacutenieur
- Programme GTI
- Geacutenie des TI
- Cours de speacutecialiteacutes GTI
- Objectif du cours
- Vue drsquoensemble du cours
- Lectures et reacutefeacuterences
- Regravegles du jeu
- QUIZ
- Plan du cours 1 (3)
- Plan de cours
- Laboratoires ndash GTI515
- Peacutenaliteacutes de retard
- Plagiat
- Plan du cours 1 (4)
- Les tendances dans le deacuteveloppement des systegravemes drsquoinformation
- UML - Historique
- Pourquoi modeacuteliser
- La modeacutelisation dans les entreprises
- Quelques chiffres
- Quelques chiffres (2)
- Quelques chiffres (3)
- Quelques chiffres (4)
- Quelques chiffres (5)
- Et maintenant
- Et maintenant (2)
- Finalementhellip
- Reacuteussite Eacutechec
- Rappel
- Industrialisation
- Industrialisation (2)
- Slide 39
- Slide 40
- Usines logicielles (S Factory)
- Usines logicielles (S Factory) (2)
- Usines logicielles (S Factory) (3)
- Usines logicielles (S Factory) (4)
- Usines logicielles
- Domain Specific Langage
- BuzzhellipMDA MDD MDE
- Exemple
- Model Driven Architecture
- Model Driven Architecture (2)
- Model Driven Architecture (3)
- Model Driven Architecture (4)
- Model Driven Architecture (5)
- Concept principal de MDA
- CIM PIM PSM Code
- Les diffeacuterentes eacutetapes
- MDA et Gartner
- Eacutetude de cas
- Impact
- Impact (2)
- Impact (3)
- Slide 63
- Slide 64
- Slide 65
- Exemple (2)
- Ressources
- Laboratoire 1
- Le document de vision (RUP)
- Slide 70
- Exemples de caracteacuteristiques (feature)
- Niveau de deacutetail des caracteacuteristiques
- Attributs des caracteacuteristiques
- Attributs des caracteacuteristiques
- Slide 75
- Reacutedaction du document de vision
- Exemple le cas ACS
- Slide 78
- Exemple de problegravemes le cas ACS
- Exemple de besoins le cas ACS
- Exemple de caracteacuteristiques le cas ACS
- Critegraveres drsquoeacutevaluation
- Grille drsquoeacutevaluation (sur 100)
- Prochain cours
- Questions
-
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Exemple Outils graphiques de modeacutelisation des classes
Plus proche de la plateforme
Code geacuteneacutereacute pour la plateforme
Plus simple
Aide geacuteneacuteralement le deacuteveloppeur agrave voir les deacutependances entre les classes
Il reste beaucoup de code agrave faire agrave la main
Penser agrave coder du SWING Java agrave la mitaine
GTI515 Automne 2013 JF Couturier 42
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Existence drsquoun framework logiciel
On se base sur le framework pour automatiser-compleacuteter la production de certains eacuteleacutements comme les eacuteleacutements graphiques
Abstraction plus eacuteleveacutee
VB6 et ses formulaires
NET Hibernate
Peu drsquoabstractions au niveau du modegravele Classe entiteacute-relation
GTI515 Automne 2013 JF Couturier 43
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Finalement il y a la possibiliteacute drsquoavoir une laquo pile raquo de modegraveles
Drsquoun modegravele agrave lrsquoautre il y a transformation vers un modegravele de plus en plus preacutecis
Approche MDA
Concept de Domain Specific Language
Pour un domaine particulier on creacutee des laquo templates raquo reacuteutilisables
Permets la contribution des experts meacutetiers
GTI515 Automne 2013 JF Couturier 44
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles
GTI515 Automne 2013 JF Couturier 45
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Domain Specific Langage
Par opposition au General purpose language comme UML C++ Java ou C
AvantagesPermets agrave un expert meacutetier de
comprendre et valider un modegravele
InconveacutenientCoucirct Formation Maintenance
GTI515 Automne 2013 JF Couturier 46
httpenwikipediaorgwikiDomain_Specific_Language
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 47
BuzzhellipMDA MDD MDE
Model Driven Architecturemarque de commerce de lrsquoOMG
Model Driven Developmentextension de MDAmarque de commerce de lrsquoOMG
Model Driven Engineeringexpression geacuteneacuterique
Deacutepartement de geacutenie logiciel et des TI
Exemple Agrave partir des speacutecifications des exigences logicielles
Lrsquoacteur saisit la commande contenant
lrsquoadresse de livraison
lrsquoadresse de facturation
Le systegraveme creacutee la commande
Lrsquoacteur saisit un deacutetail de la commande avec
le nom du produit
la quantiteacute demandeacutee
le prix du produit
Le systegraveme creacutee le deacutetail et revient agrave lrsquoeacutetape 3
Lrsquoacteur termine la commande
Le systegraveme ferme la commande
GTI515 Automne 2013 JF Couturier 48
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 49
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Un modegravele (Diagramme de classes UML)
Deacutepartement de geacutenie logiciel et des TI
Model Driven ArchitectureUn scheacutema XML
ltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gt
ltxsdschema xmlnsxsd=httpwww targetNamespace=helliprsaquo
ltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo minOccurs=ldquo0ldquo maxOccurs=ldquounboundedgt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdcomplexType name=ldquoDetailCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoprixldquo type=ldquo xsdfloatldquogt
ltxsdelement name=ldquoquantiteldquo type=ldquo xsdintldquogt
ltxsdelement name=ldquonomProduitldquo type=ldquo xsdstringldquogt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdschemarsaquo
GTI515 Automne 2013 JF Couturier 50
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 51
Des classes Java
public class Commande
private String adresseLivraison
private String adresseFacturation
private Collection detailCommande
hellip
String getAdresseLivraison()
void setAdresseLivraison(String value)
String getAdresseFacturation()
void setAdresseFacturation(String value)
public class DetailCommande
private float prix
private int quantite
private String nomProduit
float getPrix()
void setPrix(float value)
int getQuantite()
void setQuantite(int value)
String getNomProduit()
void setNomProduit(String value)
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 52
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Programmepublic class Commande
private String adresseLivraisonprivate String adresseFacturation
String getAdresseLivraison()void setAdresseLivraison(String value)
String getAdresseFacturation()void setAdresseFacturation(String value)
Scheacutema XMLltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gtltxsdschema xmlnsxsd=httpwww
targetNamespace=helliprsaquoltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo
xsdstringldquogt ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo
Modegravele UML3 repreacutesentationsdes mecircmes exigences
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
Speacutecifications de lrsquoOMG Seacuteparation de la logique meacutetier de
toute plateforme technique Speacutecifications drsquoun langage de
transformation (QVT)
GTI515 Automne 2013 JF Couturier 53
Deacutepartement de geacutenie logiciel et des TI
Concept principal de MDA
Modeacuteliser pour documenter le systegraveme
Modeacuteliser pour construire le systegraveme
GTI515 Automne 2013 JF Couturier 55
Deacutepartement de geacutenie logiciel et des TI
CIM PIM PSM Code CIM
Computing Independant Model
Modegravele du domaine logique meacutetier
PIM Platform Independant Model
Modegravele de conception UML et OCL
PSM Platform Specific Model
NET J2EE
Codehellip
GTI515 Automne 2013 JF Couturier 56
Deacutepartement de geacutenie logiciel et des TI
Les diffeacuterentes eacutetapes
GTI515 Automne 2013 JF Couturier 57
Reacutef the Zachman Framework and the OMGrsquos MDA Business Process Trends Sept 2003
Deacutepartement de geacutenie logiciel et des TI
MDA et Gartner
GTI515 Automne 2013 JF Couturier 58
Gartner Hype Cycle 2008
Deacutepartement de geacutenie logiciel et des TI
Eacutetude de cas
Lecture de la discussion sur MDA Questions
Quels sont les arguments pour
Quels sont les arguments contre
Vos commentaires sur lrsquoarticle
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 59
Deacutepartement de geacutenie logiciel et des TI
Impact
Rocircle du deacuteveloppeur minimiseacute puisqursquoil nrsquointerpregravete plus le modegravele les regravegles de transformation srsquoen chargent
Modegraveles exportables drsquoune plateforme agrave un autre
Plus de 100 articles de recherche sur IEEE entre 2008 et 2009
Maishellip
GTI515 Automne 2013 JF Couturier 60
Deacutepartement de geacutenie logiciel et des TI
Impact
Est-ce applicable au monde agile
Le cycle de modeacutelisation est-il compatible avec le deacuteveloppement iteacuteratif
Est-ce qursquoil y a suffisamment de ressources hautement qualifieacutees pour reacutealiser ce type de projet
Pouvez-vous les former Pouvez-vous les conserver
Produire 80 du code et vous laisser les derniers 20 plus difficileshellip
Comment inteacutegrer les tests
GTI515 Automne 2013 JF Couturier 61
Scott Ambler Enterprise Unified Process p 191
Deacutepartement de geacutenie logiciel et des TI
Impact
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 62
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 63
Domaine
Exigences
Analyse
Conception
Reacutealisation
MDA
PIM
PSM
Modegravele des Processus drsquoaffaires
Modegravele drsquoanalyse du systegraveme
CIM
Modegravele des Cas drsquoutilisation
Modegravele de conception du systegraveme
Les modegraveles du cycle de deacuteveloppement de logiciels
Code
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 64
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 65
Deacutepartement de geacutenie logiciel et des TI
Exemple
GTI515 Automne 2013 JF Couturier 66
httpwwwibmcomdeveloperworksrationallibrary3100html
Deacutepartement de geacutenie logiciel et des TI
Ressources
Site de lOMG MDA Article drsquoIBM sur MDA Discussion sur MDA Wiki MDA Wiki QVT
GTI515 Automne 2013 JF Couturier 67
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 68
Laboratoire 1
Choix du sujet Validation de la porteacutee
Suffisamment long Plusieurs interactions humaines machines Reacutealisable dans une session
Chargeacute de laboratoire Oleg Litvinski Premier laboratoire lundi 7 mai
Deacutepartement de geacutenie logiciel et des TI
Le document de vision (RUP)
Une base de discussion et drsquoaccord parmi les intervenants du projet
Une description de lrsquoapplication en geacuteneacuteral incluant la description du marcheacute cible les clients les utilisateurs du systegraveme les problegravemes agrave reacutesoudre et les caracteacuteristiques de lrsquoapplication
GTI515 Automne 2013 JF Couturier 69
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 70
Requirements Management with Use Cases v20010300
Copyright copy 1998 2001 Rational Software all rights reserved
2
Problem
Solution Space
Problem Space
Needs
Features
SoftwareRequirements
Test Procedures Design User
Docs
The The Product Product To Be To Be BuiltBuilt
Traceability
Deacutepartement de geacutenie logiciel et des TI
Exemples de caracteacuteristiques (feature)
Domaine drsquoapplication Exemple de caracteacuteristique
Systegraveme de commande drsquoascenseur
Commande manuelle des portes durant une urgence de feu
Systegraveme de commande drsquoinventaire
Fournir un statut reacutecent de tous les items reacutepertorieacutes
Systegraveme de suivi de deacutefauts Fournir des laquo donneacutees raquo sur les tendances pour eacutevaluer la
qualiteacute
Systegraveme de paie Rapports par cateacutegories des deacuteductions remis agrave lrsquoimpocirct
Systegraveme de commande drsquoarmes
Minimum de deux confirmations indeacutependantes drsquoautorisation
drsquoattaque exigeacutee
GTI515 Automne 2013 JF Couturier 71
Deacutepartement de geacutenie logiciel et des TI
Niveau de deacutetail des caracteacuteristiques Pour tout nouveau systegraveme ou pour
une ameacutelioration majeure agrave un systegraveme existant il est recommandeacute de garder un niveau drsquoabstraction assez eacuteleveacute de sorte agrave avoir un maximum de caracteacuteristiques compris entre 25-99 et de preacutefeacuterence moins de 50
GTI515 Automne 2013 JF Couturier 72
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Statut Suit le progregraves
Exemples Proposeacute approuveacute incorporeacute etc
PrioriteacuteBeacuteneacutefice
Les caracteacuteristiques ne sont pas agrave prioriteacutes eacutegales ou geacutenegraverent des beacuteneacutefices eacutegaux
Exemple critiques importantes optionnelle
Effort Estimation du nombre de personnessemaines lignes de code points de fonction COSMIC_FFP
Risque La probabiliteacute que la caracteacuteristique aille causer un eacuteveacutenement indeacutesirable tel que le deacutepassement du budget ou des deacutelais ou mecircme lrsquoannulation du projet
GTI515 Automne 2013 JF Couturier 73
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Stabiliteacute La probabiliteacute que la caracteacuteristique elle-mecircme ou sa compreacutehension par lrsquoeacutequipe de deacuteveloppement changera
Mise en application
Documenter la version preacutevue pour laquelle la caracteacuteristique sera incorporeacutee
Assigneacutee agrave Deacutesigner lrsquoeacutequipe responsable de la caracteacuteristique
Raison Lrsquoorigine de la requecircte de la caracteacuteristique
GTI515 Automne 2013 JF Couturier 74
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 75
Deacutepartement de geacutenie logiciel et des TI
Reacutedaction du document de vision une description concise de tout ce qui est important au
produit ou agrave lrsquoapplication eacutecrit avec un niveau de deacutetails dans un langage lisible et
compreacutehensible par les intervenants du projet
Document de 15 agrave 20 pages
GTI515 Automne 2013 JF Couturier 76
Deacutepartement de geacutenie logiciel et des TI
Exemple le cas ACS
GTI515 Automne 2013 JF Couturier 77
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 78
Deacutepartement de geacutenie logiciel et des TI
Exemple de problegravemesle cas ACS
Controcircle drsquoune large gamme de mateacuteriels
Utilisation compliqueacutee Difficulteacutes de programmation Disponibiliteacute du mateacuteriel Risque de mauvaise utilisation
GTI515 Automne 2013 JF Couturier 79
Deacutepartement de geacutenie logiciel et des TI
Exemple de besoinsle cas ACS
AutomatiserLa distribution de fertilisantLa distribution de nourritureLa dureacutee de lrsquoeacuteclairage
Commander lrsquoopeacuteration des appareils Reacuteguler
le niveau et la dureteacute de lrsquoeauLa tempeacuterature
GTI515 Automne 2013 JF Couturier 80
Deacutepartement de geacutenie logiciel et des TI
Exemple de caracteacuteristiquesle cas ACS
Deacutemarrage automatique du systegraveme Programmation conserveacutee en cas de
panne drsquoalimentation Deacutetection automatique des modules Facile agrave programmer et agrave utiliser
Exigence non fonctionnelle
GTI515 Automne 2013 JF Couturier 81
Deacutepartement de geacutenie logiciel et des TI
Critegraveres drsquoeacutevaluation
Respect de lrsquoesprit du document
En tant qursquointervenant externe est-ce que je comprends bien
Respect de la forme du gabarit
Qualiteacute du franccedilais
Document de calibre professionnel que lrsquoon pourrait remettre agrave un dirigeant
GTI515 Automne 2013 JF Couturier 82
Deacutepartement de geacutenie logiciel et des TI
Grille drsquoeacutevaluation (sur 100)
Agrave venirhellip
GTI515 Automne 2013 JF Couturier 83
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 84
Prochain cours
La modeacutelisation des processus drsquoaffaires Le diagramme drsquoactiviteacute Le diagnostic des processus drsquoaffaires existant
Lectures Lrsquoutilisation drsquoUML Chapitre sur les diagrammes drsquoactiviteacutes dans Larman Lecture sur MDA Voir site Web du cours
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 85
Questions
- Systegravemes drsquoinformation dans les entreprises (GTI515)
- Plan du cours 1
- Qui suis-je JF Couturier
- Qui suis-je Eacutetudiant(e)
- Plan du cours 1 (2)
- Objectifs du programme
- Ingeacutenieur
- Programme GTI
- Geacutenie des TI
- Cours de speacutecialiteacutes GTI
- Objectif du cours
- Vue drsquoensemble du cours
- Lectures et reacutefeacuterences
- Regravegles du jeu
- QUIZ
- Plan du cours 1 (3)
- Plan de cours
- Laboratoires ndash GTI515
- Peacutenaliteacutes de retard
- Plagiat
- Plan du cours 1 (4)
- Les tendances dans le deacuteveloppement des systegravemes drsquoinformation
- UML - Historique
- Pourquoi modeacuteliser
- La modeacutelisation dans les entreprises
- Quelques chiffres
- Quelques chiffres (2)
- Quelques chiffres (3)
- Quelques chiffres (4)
- Quelques chiffres (5)
- Et maintenant
- Et maintenant (2)
- Finalementhellip
- Reacuteussite Eacutechec
- Rappel
- Industrialisation
- Industrialisation (2)
- Slide 39
- Slide 40
- Usines logicielles (S Factory)
- Usines logicielles (S Factory) (2)
- Usines logicielles (S Factory) (3)
- Usines logicielles (S Factory) (4)
- Usines logicielles
- Domain Specific Langage
- BuzzhellipMDA MDD MDE
- Exemple
- Model Driven Architecture
- Model Driven Architecture (2)
- Model Driven Architecture (3)
- Model Driven Architecture (4)
- Model Driven Architecture (5)
- Concept principal de MDA
- CIM PIM PSM Code
- Les diffeacuterentes eacutetapes
- MDA et Gartner
- Eacutetude de cas
- Impact
- Impact (2)
- Impact (3)
- Slide 63
- Slide 64
- Slide 65
- Exemple (2)
- Ressources
- Laboratoire 1
- Le document de vision (RUP)
- Slide 70
- Exemples de caracteacuteristiques (feature)
- Niveau de deacutetail des caracteacuteristiques
- Attributs des caracteacuteristiques
- Attributs des caracteacuteristiques
- Slide 75
- Reacutedaction du document de vision
- Exemple le cas ACS
- Slide 78
- Exemple de problegravemes le cas ACS
- Exemple de besoins le cas ACS
- Exemple de caracteacuteristiques le cas ACS
- Critegraveres drsquoeacutevaluation
- Grille drsquoeacutevaluation (sur 100)
- Prochain cours
- Questions
-
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Existence drsquoun framework logiciel
On se base sur le framework pour automatiser-compleacuteter la production de certains eacuteleacutements comme les eacuteleacutements graphiques
Abstraction plus eacuteleveacutee
VB6 et ses formulaires
NET Hibernate
Peu drsquoabstractions au niveau du modegravele Classe entiteacute-relation
GTI515 Automne 2013 JF Couturier 43
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Finalement il y a la possibiliteacute drsquoavoir une laquo pile raquo de modegraveles
Drsquoun modegravele agrave lrsquoautre il y a transformation vers un modegravele de plus en plus preacutecis
Approche MDA
Concept de Domain Specific Language
Pour un domaine particulier on creacutee des laquo templates raquo reacuteutilisables
Permets la contribution des experts meacutetiers
GTI515 Automne 2013 JF Couturier 44
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles
GTI515 Automne 2013 JF Couturier 45
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Domain Specific Langage
Par opposition au General purpose language comme UML C++ Java ou C
AvantagesPermets agrave un expert meacutetier de
comprendre et valider un modegravele
InconveacutenientCoucirct Formation Maintenance
GTI515 Automne 2013 JF Couturier 46
httpenwikipediaorgwikiDomain_Specific_Language
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 47
BuzzhellipMDA MDD MDE
Model Driven Architecturemarque de commerce de lrsquoOMG
Model Driven Developmentextension de MDAmarque de commerce de lrsquoOMG
Model Driven Engineeringexpression geacuteneacuterique
Deacutepartement de geacutenie logiciel et des TI
Exemple Agrave partir des speacutecifications des exigences logicielles
Lrsquoacteur saisit la commande contenant
lrsquoadresse de livraison
lrsquoadresse de facturation
Le systegraveme creacutee la commande
Lrsquoacteur saisit un deacutetail de la commande avec
le nom du produit
la quantiteacute demandeacutee
le prix du produit
Le systegraveme creacutee le deacutetail et revient agrave lrsquoeacutetape 3
Lrsquoacteur termine la commande
Le systegraveme ferme la commande
GTI515 Automne 2013 JF Couturier 48
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 49
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Un modegravele (Diagramme de classes UML)
Deacutepartement de geacutenie logiciel et des TI
Model Driven ArchitectureUn scheacutema XML
ltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gt
ltxsdschema xmlnsxsd=httpwww targetNamespace=helliprsaquo
ltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo minOccurs=ldquo0ldquo maxOccurs=ldquounboundedgt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdcomplexType name=ldquoDetailCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoprixldquo type=ldquo xsdfloatldquogt
ltxsdelement name=ldquoquantiteldquo type=ldquo xsdintldquogt
ltxsdelement name=ldquonomProduitldquo type=ldquo xsdstringldquogt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdschemarsaquo
GTI515 Automne 2013 JF Couturier 50
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 51
Des classes Java
public class Commande
private String adresseLivraison
private String adresseFacturation
private Collection detailCommande
hellip
String getAdresseLivraison()
void setAdresseLivraison(String value)
String getAdresseFacturation()
void setAdresseFacturation(String value)
public class DetailCommande
private float prix
private int quantite
private String nomProduit
float getPrix()
void setPrix(float value)
int getQuantite()
void setQuantite(int value)
String getNomProduit()
void setNomProduit(String value)
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 52
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Programmepublic class Commande
private String adresseLivraisonprivate String adresseFacturation
String getAdresseLivraison()void setAdresseLivraison(String value)
String getAdresseFacturation()void setAdresseFacturation(String value)
Scheacutema XMLltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gtltxsdschema xmlnsxsd=httpwww
targetNamespace=helliprsaquoltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo
xsdstringldquogt ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo
Modegravele UML3 repreacutesentationsdes mecircmes exigences
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
Speacutecifications de lrsquoOMG Seacuteparation de la logique meacutetier de
toute plateforme technique Speacutecifications drsquoun langage de
transformation (QVT)
GTI515 Automne 2013 JF Couturier 53
Deacutepartement de geacutenie logiciel et des TI
Concept principal de MDA
Modeacuteliser pour documenter le systegraveme
Modeacuteliser pour construire le systegraveme
GTI515 Automne 2013 JF Couturier 55
Deacutepartement de geacutenie logiciel et des TI
CIM PIM PSM Code CIM
Computing Independant Model
Modegravele du domaine logique meacutetier
PIM Platform Independant Model
Modegravele de conception UML et OCL
PSM Platform Specific Model
NET J2EE
Codehellip
GTI515 Automne 2013 JF Couturier 56
Deacutepartement de geacutenie logiciel et des TI
Les diffeacuterentes eacutetapes
GTI515 Automne 2013 JF Couturier 57
Reacutef the Zachman Framework and the OMGrsquos MDA Business Process Trends Sept 2003
Deacutepartement de geacutenie logiciel et des TI
MDA et Gartner
GTI515 Automne 2013 JF Couturier 58
Gartner Hype Cycle 2008
Deacutepartement de geacutenie logiciel et des TI
Eacutetude de cas
Lecture de la discussion sur MDA Questions
Quels sont les arguments pour
Quels sont les arguments contre
Vos commentaires sur lrsquoarticle
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 59
Deacutepartement de geacutenie logiciel et des TI
Impact
Rocircle du deacuteveloppeur minimiseacute puisqursquoil nrsquointerpregravete plus le modegravele les regravegles de transformation srsquoen chargent
Modegraveles exportables drsquoune plateforme agrave un autre
Plus de 100 articles de recherche sur IEEE entre 2008 et 2009
Maishellip
GTI515 Automne 2013 JF Couturier 60
Deacutepartement de geacutenie logiciel et des TI
Impact
Est-ce applicable au monde agile
Le cycle de modeacutelisation est-il compatible avec le deacuteveloppement iteacuteratif
Est-ce qursquoil y a suffisamment de ressources hautement qualifieacutees pour reacutealiser ce type de projet
Pouvez-vous les former Pouvez-vous les conserver
Produire 80 du code et vous laisser les derniers 20 plus difficileshellip
Comment inteacutegrer les tests
GTI515 Automne 2013 JF Couturier 61
Scott Ambler Enterprise Unified Process p 191
Deacutepartement de geacutenie logiciel et des TI
Impact
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 62
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 63
Domaine
Exigences
Analyse
Conception
Reacutealisation
MDA
PIM
PSM
Modegravele des Processus drsquoaffaires
Modegravele drsquoanalyse du systegraveme
CIM
Modegravele des Cas drsquoutilisation
Modegravele de conception du systegraveme
Les modegraveles du cycle de deacuteveloppement de logiciels
Code
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 64
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 65
Deacutepartement de geacutenie logiciel et des TI
Exemple
GTI515 Automne 2013 JF Couturier 66
httpwwwibmcomdeveloperworksrationallibrary3100html
Deacutepartement de geacutenie logiciel et des TI
Ressources
Site de lOMG MDA Article drsquoIBM sur MDA Discussion sur MDA Wiki MDA Wiki QVT
GTI515 Automne 2013 JF Couturier 67
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 68
Laboratoire 1
Choix du sujet Validation de la porteacutee
Suffisamment long Plusieurs interactions humaines machines Reacutealisable dans une session
Chargeacute de laboratoire Oleg Litvinski Premier laboratoire lundi 7 mai
Deacutepartement de geacutenie logiciel et des TI
Le document de vision (RUP)
Une base de discussion et drsquoaccord parmi les intervenants du projet
Une description de lrsquoapplication en geacuteneacuteral incluant la description du marcheacute cible les clients les utilisateurs du systegraveme les problegravemes agrave reacutesoudre et les caracteacuteristiques de lrsquoapplication
GTI515 Automne 2013 JF Couturier 69
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 70
Requirements Management with Use Cases v20010300
Copyright copy 1998 2001 Rational Software all rights reserved
2
Problem
Solution Space
Problem Space
Needs
Features
SoftwareRequirements
Test Procedures Design User
Docs
The The Product Product To Be To Be BuiltBuilt
Traceability
Deacutepartement de geacutenie logiciel et des TI
Exemples de caracteacuteristiques (feature)
Domaine drsquoapplication Exemple de caracteacuteristique
Systegraveme de commande drsquoascenseur
Commande manuelle des portes durant une urgence de feu
Systegraveme de commande drsquoinventaire
Fournir un statut reacutecent de tous les items reacutepertorieacutes
Systegraveme de suivi de deacutefauts Fournir des laquo donneacutees raquo sur les tendances pour eacutevaluer la
qualiteacute
Systegraveme de paie Rapports par cateacutegories des deacuteductions remis agrave lrsquoimpocirct
Systegraveme de commande drsquoarmes
Minimum de deux confirmations indeacutependantes drsquoautorisation
drsquoattaque exigeacutee
GTI515 Automne 2013 JF Couturier 71
Deacutepartement de geacutenie logiciel et des TI
Niveau de deacutetail des caracteacuteristiques Pour tout nouveau systegraveme ou pour
une ameacutelioration majeure agrave un systegraveme existant il est recommandeacute de garder un niveau drsquoabstraction assez eacuteleveacute de sorte agrave avoir un maximum de caracteacuteristiques compris entre 25-99 et de preacutefeacuterence moins de 50
GTI515 Automne 2013 JF Couturier 72
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Statut Suit le progregraves
Exemples Proposeacute approuveacute incorporeacute etc
PrioriteacuteBeacuteneacutefice
Les caracteacuteristiques ne sont pas agrave prioriteacutes eacutegales ou geacutenegraverent des beacuteneacutefices eacutegaux
Exemple critiques importantes optionnelle
Effort Estimation du nombre de personnessemaines lignes de code points de fonction COSMIC_FFP
Risque La probabiliteacute que la caracteacuteristique aille causer un eacuteveacutenement indeacutesirable tel que le deacutepassement du budget ou des deacutelais ou mecircme lrsquoannulation du projet
GTI515 Automne 2013 JF Couturier 73
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Stabiliteacute La probabiliteacute que la caracteacuteristique elle-mecircme ou sa compreacutehension par lrsquoeacutequipe de deacuteveloppement changera
Mise en application
Documenter la version preacutevue pour laquelle la caracteacuteristique sera incorporeacutee
Assigneacutee agrave Deacutesigner lrsquoeacutequipe responsable de la caracteacuteristique
Raison Lrsquoorigine de la requecircte de la caracteacuteristique
GTI515 Automne 2013 JF Couturier 74
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 75
Deacutepartement de geacutenie logiciel et des TI
Reacutedaction du document de vision une description concise de tout ce qui est important au
produit ou agrave lrsquoapplication eacutecrit avec un niveau de deacutetails dans un langage lisible et
compreacutehensible par les intervenants du projet
Document de 15 agrave 20 pages
GTI515 Automne 2013 JF Couturier 76
Deacutepartement de geacutenie logiciel et des TI
Exemple le cas ACS
GTI515 Automne 2013 JF Couturier 77
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 78
Deacutepartement de geacutenie logiciel et des TI
Exemple de problegravemesle cas ACS
Controcircle drsquoune large gamme de mateacuteriels
Utilisation compliqueacutee Difficulteacutes de programmation Disponibiliteacute du mateacuteriel Risque de mauvaise utilisation
GTI515 Automne 2013 JF Couturier 79
Deacutepartement de geacutenie logiciel et des TI
Exemple de besoinsle cas ACS
AutomatiserLa distribution de fertilisantLa distribution de nourritureLa dureacutee de lrsquoeacuteclairage
Commander lrsquoopeacuteration des appareils Reacuteguler
le niveau et la dureteacute de lrsquoeauLa tempeacuterature
GTI515 Automne 2013 JF Couturier 80
Deacutepartement de geacutenie logiciel et des TI
Exemple de caracteacuteristiquesle cas ACS
Deacutemarrage automatique du systegraveme Programmation conserveacutee en cas de
panne drsquoalimentation Deacutetection automatique des modules Facile agrave programmer et agrave utiliser
Exigence non fonctionnelle
GTI515 Automne 2013 JF Couturier 81
Deacutepartement de geacutenie logiciel et des TI
Critegraveres drsquoeacutevaluation
Respect de lrsquoesprit du document
En tant qursquointervenant externe est-ce que je comprends bien
Respect de la forme du gabarit
Qualiteacute du franccedilais
Document de calibre professionnel que lrsquoon pourrait remettre agrave un dirigeant
GTI515 Automne 2013 JF Couturier 82
Deacutepartement de geacutenie logiciel et des TI
Grille drsquoeacutevaluation (sur 100)
Agrave venirhellip
GTI515 Automne 2013 JF Couturier 83
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 84
Prochain cours
La modeacutelisation des processus drsquoaffaires Le diagramme drsquoactiviteacute Le diagnostic des processus drsquoaffaires existant
Lectures Lrsquoutilisation drsquoUML Chapitre sur les diagrammes drsquoactiviteacutes dans Larman Lecture sur MDA Voir site Web du cours
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 85
Questions
- Systegravemes drsquoinformation dans les entreprises (GTI515)
- Plan du cours 1
- Qui suis-je JF Couturier
- Qui suis-je Eacutetudiant(e)
- Plan du cours 1 (2)
- Objectifs du programme
- Ingeacutenieur
- Programme GTI
- Geacutenie des TI
- Cours de speacutecialiteacutes GTI
- Objectif du cours
- Vue drsquoensemble du cours
- Lectures et reacutefeacuterences
- Regravegles du jeu
- QUIZ
- Plan du cours 1 (3)
- Plan de cours
- Laboratoires ndash GTI515
- Peacutenaliteacutes de retard
- Plagiat
- Plan du cours 1 (4)
- Les tendances dans le deacuteveloppement des systegravemes drsquoinformation
- UML - Historique
- Pourquoi modeacuteliser
- La modeacutelisation dans les entreprises
- Quelques chiffres
- Quelques chiffres (2)
- Quelques chiffres (3)
- Quelques chiffres (4)
- Quelques chiffres (5)
- Et maintenant
- Et maintenant (2)
- Finalementhellip
- Reacuteussite Eacutechec
- Rappel
- Industrialisation
- Industrialisation (2)
- Slide 39
- Slide 40
- Usines logicielles (S Factory)
- Usines logicielles (S Factory) (2)
- Usines logicielles (S Factory) (3)
- Usines logicielles (S Factory) (4)
- Usines logicielles
- Domain Specific Langage
- BuzzhellipMDA MDD MDE
- Exemple
- Model Driven Architecture
- Model Driven Architecture (2)
- Model Driven Architecture (3)
- Model Driven Architecture (4)
- Model Driven Architecture (5)
- Concept principal de MDA
- CIM PIM PSM Code
- Les diffeacuterentes eacutetapes
- MDA et Gartner
- Eacutetude de cas
- Impact
- Impact (2)
- Impact (3)
- Slide 63
- Slide 64
- Slide 65
- Exemple (2)
- Ressources
- Laboratoire 1
- Le document de vision (RUP)
- Slide 70
- Exemples de caracteacuteristiques (feature)
- Niveau de deacutetail des caracteacuteristiques
- Attributs des caracteacuteristiques
- Attributs des caracteacuteristiques
- Slide 75
- Reacutedaction du document de vision
- Exemple le cas ACS
- Slide 78
- Exemple de problegravemes le cas ACS
- Exemple de besoins le cas ACS
- Exemple de caracteacuteristiques le cas ACS
- Critegraveres drsquoeacutevaluation
- Grille drsquoeacutevaluation (sur 100)
- Prochain cours
- Questions
-
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles (S Factory)
Finalement il y a la possibiliteacute drsquoavoir une laquo pile raquo de modegraveles
Drsquoun modegravele agrave lrsquoautre il y a transformation vers un modegravele de plus en plus preacutecis
Approche MDA
Concept de Domain Specific Language
Pour un domaine particulier on creacutee des laquo templates raquo reacuteutilisables
Permets la contribution des experts meacutetiers
GTI515 Automne 2013 JF Couturier 44
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles
GTI515 Automne 2013 JF Couturier 45
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Domain Specific Langage
Par opposition au General purpose language comme UML C++ Java ou C
AvantagesPermets agrave un expert meacutetier de
comprendre et valider un modegravele
InconveacutenientCoucirct Formation Maintenance
GTI515 Automne 2013 JF Couturier 46
httpenwikipediaorgwikiDomain_Specific_Language
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 47
BuzzhellipMDA MDD MDE
Model Driven Architecturemarque de commerce de lrsquoOMG
Model Driven Developmentextension de MDAmarque de commerce de lrsquoOMG
Model Driven Engineeringexpression geacuteneacuterique
Deacutepartement de geacutenie logiciel et des TI
Exemple Agrave partir des speacutecifications des exigences logicielles
Lrsquoacteur saisit la commande contenant
lrsquoadresse de livraison
lrsquoadresse de facturation
Le systegraveme creacutee la commande
Lrsquoacteur saisit un deacutetail de la commande avec
le nom du produit
la quantiteacute demandeacutee
le prix du produit
Le systegraveme creacutee le deacutetail et revient agrave lrsquoeacutetape 3
Lrsquoacteur termine la commande
Le systegraveme ferme la commande
GTI515 Automne 2013 JF Couturier 48
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 49
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Un modegravele (Diagramme de classes UML)
Deacutepartement de geacutenie logiciel et des TI
Model Driven ArchitectureUn scheacutema XML
ltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gt
ltxsdschema xmlnsxsd=httpwww targetNamespace=helliprsaquo
ltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo minOccurs=ldquo0ldquo maxOccurs=ldquounboundedgt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdcomplexType name=ldquoDetailCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoprixldquo type=ldquo xsdfloatldquogt
ltxsdelement name=ldquoquantiteldquo type=ldquo xsdintldquogt
ltxsdelement name=ldquonomProduitldquo type=ldquo xsdstringldquogt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdschemarsaquo
GTI515 Automne 2013 JF Couturier 50
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 51
Des classes Java
public class Commande
private String adresseLivraison
private String adresseFacturation
private Collection detailCommande
hellip
String getAdresseLivraison()
void setAdresseLivraison(String value)
String getAdresseFacturation()
void setAdresseFacturation(String value)
public class DetailCommande
private float prix
private int quantite
private String nomProduit
float getPrix()
void setPrix(float value)
int getQuantite()
void setQuantite(int value)
String getNomProduit()
void setNomProduit(String value)
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 52
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Programmepublic class Commande
private String adresseLivraisonprivate String adresseFacturation
String getAdresseLivraison()void setAdresseLivraison(String value)
String getAdresseFacturation()void setAdresseFacturation(String value)
Scheacutema XMLltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gtltxsdschema xmlnsxsd=httpwww
targetNamespace=helliprsaquoltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo
xsdstringldquogt ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo
Modegravele UML3 repreacutesentationsdes mecircmes exigences
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
Speacutecifications de lrsquoOMG Seacuteparation de la logique meacutetier de
toute plateforme technique Speacutecifications drsquoun langage de
transformation (QVT)
GTI515 Automne 2013 JF Couturier 53
Deacutepartement de geacutenie logiciel et des TI
Concept principal de MDA
Modeacuteliser pour documenter le systegraveme
Modeacuteliser pour construire le systegraveme
GTI515 Automne 2013 JF Couturier 55
Deacutepartement de geacutenie logiciel et des TI
CIM PIM PSM Code CIM
Computing Independant Model
Modegravele du domaine logique meacutetier
PIM Platform Independant Model
Modegravele de conception UML et OCL
PSM Platform Specific Model
NET J2EE
Codehellip
GTI515 Automne 2013 JF Couturier 56
Deacutepartement de geacutenie logiciel et des TI
Les diffeacuterentes eacutetapes
GTI515 Automne 2013 JF Couturier 57
Reacutef the Zachman Framework and the OMGrsquos MDA Business Process Trends Sept 2003
Deacutepartement de geacutenie logiciel et des TI
MDA et Gartner
GTI515 Automne 2013 JF Couturier 58
Gartner Hype Cycle 2008
Deacutepartement de geacutenie logiciel et des TI
Eacutetude de cas
Lecture de la discussion sur MDA Questions
Quels sont les arguments pour
Quels sont les arguments contre
Vos commentaires sur lrsquoarticle
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 59
Deacutepartement de geacutenie logiciel et des TI
Impact
Rocircle du deacuteveloppeur minimiseacute puisqursquoil nrsquointerpregravete plus le modegravele les regravegles de transformation srsquoen chargent
Modegraveles exportables drsquoune plateforme agrave un autre
Plus de 100 articles de recherche sur IEEE entre 2008 et 2009
Maishellip
GTI515 Automne 2013 JF Couturier 60
Deacutepartement de geacutenie logiciel et des TI
Impact
Est-ce applicable au monde agile
Le cycle de modeacutelisation est-il compatible avec le deacuteveloppement iteacuteratif
Est-ce qursquoil y a suffisamment de ressources hautement qualifieacutees pour reacutealiser ce type de projet
Pouvez-vous les former Pouvez-vous les conserver
Produire 80 du code et vous laisser les derniers 20 plus difficileshellip
Comment inteacutegrer les tests
GTI515 Automne 2013 JF Couturier 61
Scott Ambler Enterprise Unified Process p 191
Deacutepartement de geacutenie logiciel et des TI
Impact
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 62
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 63
Domaine
Exigences
Analyse
Conception
Reacutealisation
MDA
PIM
PSM
Modegravele des Processus drsquoaffaires
Modegravele drsquoanalyse du systegraveme
CIM
Modegravele des Cas drsquoutilisation
Modegravele de conception du systegraveme
Les modegraveles du cycle de deacuteveloppement de logiciels
Code
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 64
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 65
Deacutepartement de geacutenie logiciel et des TI
Exemple
GTI515 Automne 2013 JF Couturier 66
httpwwwibmcomdeveloperworksrationallibrary3100html
Deacutepartement de geacutenie logiciel et des TI
Ressources
Site de lOMG MDA Article drsquoIBM sur MDA Discussion sur MDA Wiki MDA Wiki QVT
GTI515 Automne 2013 JF Couturier 67
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 68
Laboratoire 1
Choix du sujet Validation de la porteacutee
Suffisamment long Plusieurs interactions humaines machines Reacutealisable dans une session
Chargeacute de laboratoire Oleg Litvinski Premier laboratoire lundi 7 mai
Deacutepartement de geacutenie logiciel et des TI
Le document de vision (RUP)
Une base de discussion et drsquoaccord parmi les intervenants du projet
Une description de lrsquoapplication en geacuteneacuteral incluant la description du marcheacute cible les clients les utilisateurs du systegraveme les problegravemes agrave reacutesoudre et les caracteacuteristiques de lrsquoapplication
GTI515 Automne 2013 JF Couturier 69
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 70
Requirements Management with Use Cases v20010300
Copyright copy 1998 2001 Rational Software all rights reserved
2
Problem
Solution Space
Problem Space
Needs
Features
SoftwareRequirements
Test Procedures Design User
Docs
The The Product Product To Be To Be BuiltBuilt
Traceability
Deacutepartement de geacutenie logiciel et des TI
Exemples de caracteacuteristiques (feature)
Domaine drsquoapplication Exemple de caracteacuteristique
Systegraveme de commande drsquoascenseur
Commande manuelle des portes durant une urgence de feu
Systegraveme de commande drsquoinventaire
Fournir un statut reacutecent de tous les items reacutepertorieacutes
Systegraveme de suivi de deacutefauts Fournir des laquo donneacutees raquo sur les tendances pour eacutevaluer la
qualiteacute
Systegraveme de paie Rapports par cateacutegories des deacuteductions remis agrave lrsquoimpocirct
Systegraveme de commande drsquoarmes
Minimum de deux confirmations indeacutependantes drsquoautorisation
drsquoattaque exigeacutee
GTI515 Automne 2013 JF Couturier 71
Deacutepartement de geacutenie logiciel et des TI
Niveau de deacutetail des caracteacuteristiques Pour tout nouveau systegraveme ou pour
une ameacutelioration majeure agrave un systegraveme existant il est recommandeacute de garder un niveau drsquoabstraction assez eacuteleveacute de sorte agrave avoir un maximum de caracteacuteristiques compris entre 25-99 et de preacutefeacuterence moins de 50
GTI515 Automne 2013 JF Couturier 72
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Statut Suit le progregraves
Exemples Proposeacute approuveacute incorporeacute etc
PrioriteacuteBeacuteneacutefice
Les caracteacuteristiques ne sont pas agrave prioriteacutes eacutegales ou geacutenegraverent des beacuteneacutefices eacutegaux
Exemple critiques importantes optionnelle
Effort Estimation du nombre de personnessemaines lignes de code points de fonction COSMIC_FFP
Risque La probabiliteacute que la caracteacuteristique aille causer un eacuteveacutenement indeacutesirable tel que le deacutepassement du budget ou des deacutelais ou mecircme lrsquoannulation du projet
GTI515 Automne 2013 JF Couturier 73
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Stabiliteacute La probabiliteacute que la caracteacuteristique elle-mecircme ou sa compreacutehension par lrsquoeacutequipe de deacuteveloppement changera
Mise en application
Documenter la version preacutevue pour laquelle la caracteacuteristique sera incorporeacutee
Assigneacutee agrave Deacutesigner lrsquoeacutequipe responsable de la caracteacuteristique
Raison Lrsquoorigine de la requecircte de la caracteacuteristique
GTI515 Automne 2013 JF Couturier 74
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 75
Deacutepartement de geacutenie logiciel et des TI
Reacutedaction du document de vision une description concise de tout ce qui est important au
produit ou agrave lrsquoapplication eacutecrit avec un niveau de deacutetails dans un langage lisible et
compreacutehensible par les intervenants du projet
Document de 15 agrave 20 pages
GTI515 Automne 2013 JF Couturier 76
Deacutepartement de geacutenie logiciel et des TI
Exemple le cas ACS
GTI515 Automne 2013 JF Couturier 77
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 78
Deacutepartement de geacutenie logiciel et des TI
Exemple de problegravemesle cas ACS
Controcircle drsquoune large gamme de mateacuteriels
Utilisation compliqueacutee Difficulteacutes de programmation Disponibiliteacute du mateacuteriel Risque de mauvaise utilisation
GTI515 Automne 2013 JF Couturier 79
Deacutepartement de geacutenie logiciel et des TI
Exemple de besoinsle cas ACS
AutomatiserLa distribution de fertilisantLa distribution de nourritureLa dureacutee de lrsquoeacuteclairage
Commander lrsquoopeacuteration des appareils Reacuteguler
le niveau et la dureteacute de lrsquoeauLa tempeacuterature
GTI515 Automne 2013 JF Couturier 80
Deacutepartement de geacutenie logiciel et des TI
Exemple de caracteacuteristiquesle cas ACS
Deacutemarrage automatique du systegraveme Programmation conserveacutee en cas de
panne drsquoalimentation Deacutetection automatique des modules Facile agrave programmer et agrave utiliser
Exigence non fonctionnelle
GTI515 Automne 2013 JF Couturier 81
Deacutepartement de geacutenie logiciel et des TI
Critegraveres drsquoeacutevaluation
Respect de lrsquoesprit du document
En tant qursquointervenant externe est-ce que je comprends bien
Respect de la forme du gabarit
Qualiteacute du franccedilais
Document de calibre professionnel que lrsquoon pourrait remettre agrave un dirigeant
GTI515 Automne 2013 JF Couturier 82
Deacutepartement de geacutenie logiciel et des TI
Grille drsquoeacutevaluation (sur 100)
Agrave venirhellip
GTI515 Automne 2013 JF Couturier 83
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 84
Prochain cours
La modeacutelisation des processus drsquoaffaires Le diagramme drsquoactiviteacute Le diagnostic des processus drsquoaffaires existant
Lectures Lrsquoutilisation drsquoUML Chapitre sur les diagrammes drsquoactiviteacutes dans Larman Lecture sur MDA Voir site Web du cours
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 85
Questions
- Systegravemes drsquoinformation dans les entreprises (GTI515)
- Plan du cours 1
- Qui suis-je JF Couturier
- Qui suis-je Eacutetudiant(e)
- Plan du cours 1 (2)
- Objectifs du programme
- Ingeacutenieur
- Programme GTI
- Geacutenie des TI
- Cours de speacutecialiteacutes GTI
- Objectif du cours
- Vue drsquoensemble du cours
- Lectures et reacutefeacuterences
- Regravegles du jeu
- QUIZ
- Plan du cours 1 (3)
- Plan de cours
- Laboratoires ndash GTI515
- Peacutenaliteacutes de retard
- Plagiat
- Plan du cours 1 (4)
- Les tendances dans le deacuteveloppement des systegravemes drsquoinformation
- UML - Historique
- Pourquoi modeacuteliser
- La modeacutelisation dans les entreprises
- Quelques chiffres
- Quelques chiffres (2)
- Quelques chiffres (3)
- Quelques chiffres (4)
- Quelques chiffres (5)
- Et maintenant
- Et maintenant (2)
- Finalementhellip
- Reacuteussite Eacutechec
- Rappel
- Industrialisation
- Industrialisation (2)
- Slide 39
- Slide 40
- Usines logicielles (S Factory)
- Usines logicielles (S Factory) (2)
- Usines logicielles (S Factory) (3)
- Usines logicielles (S Factory) (4)
- Usines logicielles
- Domain Specific Langage
- BuzzhellipMDA MDD MDE
- Exemple
- Model Driven Architecture
- Model Driven Architecture (2)
- Model Driven Architecture (3)
- Model Driven Architecture (4)
- Model Driven Architecture (5)
- Concept principal de MDA
- CIM PIM PSM Code
- Les diffeacuterentes eacutetapes
- MDA et Gartner
- Eacutetude de cas
- Impact
- Impact (2)
- Impact (3)
- Slide 63
- Slide 64
- Slide 65
- Exemple (2)
- Ressources
- Laboratoire 1
- Le document de vision (RUP)
- Slide 70
- Exemples de caracteacuteristiques (feature)
- Niveau de deacutetail des caracteacuteristiques
- Attributs des caracteacuteristiques
- Attributs des caracteacuteristiques
- Slide 75
- Reacutedaction du document de vision
- Exemple le cas ACS
- Slide 78
- Exemple de problegravemes le cas ACS
- Exemple de besoins le cas ACS
- Exemple de caracteacuteristiques le cas ACS
- Critegraveres drsquoeacutevaluation
- Grille drsquoeacutevaluation (sur 100)
- Prochain cours
- Questions
-
Deacutepartement de geacutenie logiciel et des TI
Usines logicielles
GTI515 Automne 2013 JF Couturier 45
Reacutef Software Factories Greenfield J
Deacutepartement de geacutenie logiciel et des TI
Domain Specific Langage
Par opposition au General purpose language comme UML C++ Java ou C
AvantagesPermets agrave un expert meacutetier de
comprendre et valider un modegravele
InconveacutenientCoucirct Formation Maintenance
GTI515 Automne 2013 JF Couturier 46
httpenwikipediaorgwikiDomain_Specific_Language
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 47
BuzzhellipMDA MDD MDE
Model Driven Architecturemarque de commerce de lrsquoOMG
Model Driven Developmentextension de MDAmarque de commerce de lrsquoOMG
Model Driven Engineeringexpression geacuteneacuterique
Deacutepartement de geacutenie logiciel et des TI
Exemple Agrave partir des speacutecifications des exigences logicielles
Lrsquoacteur saisit la commande contenant
lrsquoadresse de livraison
lrsquoadresse de facturation
Le systegraveme creacutee la commande
Lrsquoacteur saisit un deacutetail de la commande avec
le nom du produit
la quantiteacute demandeacutee
le prix du produit
Le systegraveme creacutee le deacutetail et revient agrave lrsquoeacutetape 3
Lrsquoacteur termine la commande
Le systegraveme ferme la commande
GTI515 Automne 2013 JF Couturier 48
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 49
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Un modegravele (Diagramme de classes UML)
Deacutepartement de geacutenie logiciel et des TI
Model Driven ArchitectureUn scheacutema XML
ltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gt
ltxsdschema xmlnsxsd=httpwww targetNamespace=helliprsaquo
ltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo minOccurs=ldquo0ldquo maxOccurs=ldquounboundedgt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdcomplexType name=ldquoDetailCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoprixldquo type=ldquo xsdfloatldquogt
ltxsdelement name=ldquoquantiteldquo type=ldquo xsdintldquogt
ltxsdelement name=ldquonomProduitldquo type=ldquo xsdstringldquogt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdschemarsaquo
GTI515 Automne 2013 JF Couturier 50
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 51
Des classes Java
public class Commande
private String adresseLivraison
private String adresseFacturation
private Collection detailCommande
hellip
String getAdresseLivraison()
void setAdresseLivraison(String value)
String getAdresseFacturation()
void setAdresseFacturation(String value)
public class DetailCommande
private float prix
private int quantite
private String nomProduit
float getPrix()
void setPrix(float value)
int getQuantite()
void setQuantite(int value)
String getNomProduit()
void setNomProduit(String value)
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 52
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Programmepublic class Commande
private String adresseLivraisonprivate String adresseFacturation
String getAdresseLivraison()void setAdresseLivraison(String value)
String getAdresseFacturation()void setAdresseFacturation(String value)
Scheacutema XMLltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gtltxsdschema xmlnsxsd=httpwww
targetNamespace=helliprsaquoltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo
xsdstringldquogt ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo
Modegravele UML3 repreacutesentationsdes mecircmes exigences
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
Speacutecifications de lrsquoOMG Seacuteparation de la logique meacutetier de
toute plateforme technique Speacutecifications drsquoun langage de
transformation (QVT)
GTI515 Automne 2013 JF Couturier 53
Deacutepartement de geacutenie logiciel et des TI
Concept principal de MDA
Modeacuteliser pour documenter le systegraveme
Modeacuteliser pour construire le systegraveme
GTI515 Automne 2013 JF Couturier 55
Deacutepartement de geacutenie logiciel et des TI
CIM PIM PSM Code CIM
Computing Independant Model
Modegravele du domaine logique meacutetier
PIM Platform Independant Model
Modegravele de conception UML et OCL
PSM Platform Specific Model
NET J2EE
Codehellip
GTI515 Automne 2013 JF Couturier 56
Deacutepartement de geacutenie logiciel et des TI
Les diffeacuterentes eacutetapes
GTI515 Automne 2013 JF Couturier 57
Reacutef the Zachman Framework and the OMGrsquos MDA Business Process Trends Sept 2003
Deacutepartement de geacutenie logiciel et des TI
MDA et Gartner
GTI515 Automne 2013 JF Couturier 58
Gartner Hype Cycle 2008
Deacutepartement de geacutenie logiciel et des TI
Eacutetude de cas
Lecture de la discussion sur MDA Questions
Quels sont les arguments pour
Quels sont les arguments contre
Vos commentaires sur lrsquoarticle
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 59
Deacutepartement de geacutenie logiciel et des TI
Impact
Rocircle du deacuteveloppeur minimiseacute puisqursquoil nrsquointerpregravete plus le modegravele les regravegles de transformation srsquoen chargent
Modegraveles exportables drsquoune plateforme agrave un autre
Plus de 100 articles de recherche sur IEEE entre 2008 et 2009
Maishellip
GTI515 Automne 2013 JF Couturier 60
Deacutepartement de geacutenie logiciel et des TI
Impact
Est-ce applicable au monde agile
Le cycle de modeacutelisation est-il compatible avec le deacuteveloppement iteacuteratif
Est-ce qursquoil y a suffisamment de ressources hautement qualifieacutees pour reacutealiser ce type de projet
Pouvez-vous les former Pouvez-vous les conserver
Produire 80 du code et vous laisser les derniers 20 plus difficileshellip
Comment inteacutegrer les tests
GTI515 Automne 2013 JF Couturier 61
Scott Ambler Enterprise Unified Process p 191
Deacutepartement de geacutenie logiciel et des TI
Impact
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 62
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 63
Domaine
Exigences
Analyse
Conception
Reacutealisation
MDA
PIM
PSM
Modegravele des Processus drsquoaffaires
Modegravele drsquoanalyse du systegraveme
CIM
Modegravele des Cas drsquoutilisation
Modegravele de conception du systegraveme
Les modegraveles du cycle de deacuteveloppement de logiciels
Code
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 64
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 65
Deacutepartement de geacutenie logiciel et des TI
Exemple
GTI515 Automne 2013 JF Couturier 66
httpwwwibmcomdeveloperworksrationallibrary3100html
Deacutepartement de geacutenie logiciel et des TI
Ressources
Site de lOMG MDA Article drsquoIBM sur MDA Discussion sur MDA Wiki MDA Wiki QVT
GTI515 Automne 2013 JF Couturier 67
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 68
Laboratoire 1
Choix du sujet Validation de la porteacutee
Suffisamment long Plusieurs interactions humaines machines Reacutealisable dans une session
Chargeacute de laboratoire Oleg Litvinski Premier laboratoire lundi 7 mai
Deacutepartement de geacutenie logiciel et des TI
Le document de vision (RUP)
Une base de discussion et drsquoaccord parmi les intervenants du projet
Une description de lrsquoapplication en geacuteneacuteral incluant la description du marcheacute cible les clients les utilisateurs du systegraveme les problegravemes agrave reacutesoudre et les caracteacuteristiques de lrsquoapplication
GTI515 Automne 2013 JF Couturier 69
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 70
Requirements Management with Use Cases v20010300
Copyright copy 1998 2001 Rational Software all rights reserved
2
Problem
Solution Space
Problem Space
Needs
Features
SoftwareRequirements
Test Procedures Design User
Docs
The The Product Product To Be To Be BuiltBuilt
Traceability
Deacutepartement de geacutenie logiciel et des TI
Exemples de caracteacuteristiques (feature)
Domaine drsquoapplication Exemple de caracteacuteristique
Systegraveme de commande drsquoascenseur
Commande manuelle des portes durant une urgence de feu
Systegraveme de commande drsquoinventaire
Fournir un statut reacutecent de tous les items reacutepertorieacutes
Systegraveme de suivi de deacutefauts Fournir des laquo donneacutees raquo sur les tendances pour eacutevaluer la
qualiteacute
Systegraveme de paie Rapports par cateacutegories des deacuteductions remis agrave lrsquoimpocirct
Systegraveme de commande drsquoarmes
Minimum de deux confirmations indeacutependantes drsquoautorisation
drsquoattaque exigeacutee
GTI515 Automne 2013 JF Couturier 71
Deacutepartement de geacutenie logiciel et des TI
Niveau de deacutetail des caracteacuteristiques Pour tout nouveau systegraveme ou pour
une ameacutelioration majeure agrave un systegraveme existant il est recommandeacute de garder un niveau drsquoabstraction assez eacuteleveacute de sorte agrave avoir un maximum de caracteacuteristiques compris entre 25-99 et de preacutefeacuterence moins de 50
GTI515 Automne 2013 JF Couturier 72
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Statut Suit le progregraves
Exemples Proposeacute approuveacute incorporeacute etc
PrioriteacuteBeacuteneacutefice
Les caracteacuteristiques ne sont pas agrave prioriteacutes eacutegales ou geacutenegraverent des beacuteneacutefices eacutegaux
Exemple critiques importantes optionnelle
Effort Estimation du nombre de personnessemaines lignes de code points de fonction COSMIC_FFP
Risque La probabiliteacute que la caracteacuteristique aille causer un eacuteveacutenement indeacutesirable tel que le deacutepassement du budget ou des deacutelais ou mecircme lrsquoannulation du projet
GTI515 Automne 2013 JF Couturier 73
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Stabiliteacute La probabiliteacute que la caracteacuteristique elle-mecircme ou sa compreacutehension par lrsquoeacutequipe de deacuteveloppement changera
Mise en application
Documenter la version preacutevue pour laquelle la caracteacuteristique sera incorporeacutee
Assigneacutee agrave Deacutesigner lrsquoeacutequipe responsable de la caracteacuteristique
Raison Lrsquoorigine de la requecircte de la caracteacuteristique
GTI515 Automne 2013 JF Couturier 74
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 75
Deacutepartement de geacutenie logiciel et des TI
Reacutedaction du document de vision une description concise de tout ce qui est important au
produit ou agrave lrsquoapplication eacutecrit avec un niveau de deacutetails dans un langage lisible et
compreacutehensible par les intervenants du projet
Document de 15 agrave 20 pages
GTI515 Automne 2013 JF Couturier 76
Deacutepartement de geacutenie logiciel et des TI
Exemple le cas ACS
GTI515 Automne 2013 JF Couturier 77
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 78
Deacutepartement de geacutenie logiciel et des TI
Exemple de problegravemesle cas ACS
Controcircle drsquoune large gamme de mateacuteriels
Utilisation compliqueacutee Difficulteacutes de programmation Disponibiliteacute du mateacuteriel Risque de mauvaise utilisation
GTI515 Automne 2013 JF Couturier 79
Deacutepartement de geacutenie logiciel et des TI
Exemple de besoinsle cas ACS
AutomatiserLa distribution de fertilisantLa distribution de nourritureLa dureacutee de lrsquoeacuteclairage
Commander lrsquoopeacuteration des appareils Reacuteguler
le niveau et la dureteacute de lrsquoeauLa tempeacuterature
GTI515 Automne 2013 JF Couturier 80
Deacutepartement de geacutenie logiciel et des TI
Exemple de caracteacuteristiquesle cas ACS
Deacutemarrage automatique du systegraveme Programmation conserveacutee en cas de
panne drsquoalimentation Deacutetection automatique des modules Facile agrave programmer et agrave utiliser
Exigence non fonctionnelle
GTI515 Automne 2013 JF Couturier 81
Deacutepartement de geacutenie logiciel et des TI
Critegraveres drsquoeacutevaluation
Respect de lrsquoesprit du document
En tant qursquointervenant externe est-ce que je comprends bien
Respect de la forme du gabarit
Qualiteacute du franccedilais
Document de calibre professionnel que lrsquoon pourrait remettre agrave un dirigeant
GTI515 Automne 2013 JF Couturier 82
Deacutepartement de geacutenie logiciel et des TI
Grille drsquoeacutevaluation (sur 100)
Agrave venirhellip
GTI515 Automne 2013 JF Couturier 83
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 84
Prochain cours
La modeacutelisation des processus drsquoaffaires Le diagramme drsquoactiviteacute Le diagnostic des processus drsquoaffaires existant
Lectures Lrsquoutilisation drsquoUML Chapitre sur les diagrammes drsquoactiviteacutes dans Larman Lecture sur MDA Voir site Web du cours
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 85
Questions
- Systegravemes drsquoinformation dans les entreprises (GTI515)
- Plan du cours 1
- Qui suis-je JF Couturier
- Qui suis-je Eacutetudiant(e)
- Plan du cours 1 (2)
- Objectifs du programme
- Ingeacutenieur
- Programme GTI
- Geacutenie des TI
- Cours de speacutecialiteacutes GTI
- Objectif du cours
- Vue drsquoensemble du cours
- Lectures et reacutefeacuterences
- Regravegles du jeu
- QUIZ
- Plan du cours 1 (3)
- Plan de cours
- Laboratoires ndash GTI515
- Peacutenaliteacutes de retard
- Plagiat
- Plan du cours 1 (4)
- Les tendances dans le deacuteveloppement des systegravemes drsquoinformation
- UML - Historique
- Pourquoi modeacuteliser
- La modeacutelisation dans les entreprises
- Quelques chiffres
- Quelques chiffres (2)
- Quelques chiffres (3)
- Quelques chiffres (4)
- Quelques chiffres (5)
- Et maintenant
- Et maintenant (2)
- Finalementhellip
- Reacuteussite Eacutechec
- Rappel
- Industrialisation
- Industrialisation (2)
- Slide 39
- Slide 40
- Usines logicielles (S Factory)
- Usines logicielles (S Factory) (2)
- Usines logicielles (S Factory) (3)
- Usines logicielles (S Factory) (4)
- Usines logicielles
- Domain Specific Langage
- BuzzhellipMDA MDD MDE
- Exemple
- Model Driven Architecture
- Model Driven Architecture (2)
- Model Driven Architecture (3)
- Model Driven Architecture (4)
- Model Driven Architecture (5)
- Concept principal de MDA
- CIM PIM PSM Code
- Les diffeacuterentes eacutetapes
- MDA et Gartner
- Eacutetude de cas
- Impact
- Impact (2)
- Impact (3)
- Slide 63
- Slide 64
- Slide 65
- Exemple (2)
- Ressources
- Laboratoire 1
- Le document de vision (RUP)
- Slide 70
- Exemples de caracteacuteristiques (feature)
- Niveau de deacutetail des caracteacuteristiques
- Attributs des caracteacuteristiques
- Attributs des caracteacuteristiques
- Slide 75
- Reacutedaction du document de vision
- Exemple le cas ACS
- Slide 78
- Exemple de problegravemes le cas ACS
- Exemple de besoins le cas ACS
- Exemple de caracteacuteristiques le cas ACS
- Critegraveres drsquoeacutevaluation
- Grille drsquoeacutevaluation (sur 100)
- Prochain cours
- Questions
-
Deacutepartement de geacutenie logiciel et des TI
Domain Specific Langage
Par opposition au General purpose language comme UML C++ Java ou C
AvantagesPermets agrave un expert meacutetier de
comprendre et valider un modegravele
InconveacutenientCoucirct Formation Maintenance
GTI515 Automne 2013 JF Couturier 46
httpenwikipediaorgwikiDomain_Specific_Language
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 47
BuzzhellipMDA MDD MDE
Model Driven Architecturemarque de commerce de lrsquoOMG
Model Driven Developmentextension de MDAmarque de commerce de lrsquoOMG
Model Driven Engineeringexpression geacuteneacuterique
Deacutepartement de geacutenie logiciel et des TI
Exemple Agrave partir des speacutecifications des exigences logicielles
Lrsquoacteur saisit la commande contenant
lrsquoadresse de livraison
lrsquoadresse de facturation
Le systegraveme creacutee la commande
Lrsquoacteur saisit un deacutetail de la commande avec
le nom du produit
la quantiteacute demandeacutee
le prix du produit
Le systegraveme creacutee le deacutetail et revient agrave lrsquoeacutetape 3
Lrsquoacteur termine la commande
Le systegraveme ferme la commande
GTI515 Automne 2013 JF Couturier 48
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 49
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Un modegravele (Diagramme de classes UML)
Deacutepartement de geacutenie logiciel et des TI
Model Driven ArchitectureUn scheacutema XML
ltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gt
ltxsdschema xmlnsxsd=httpwww targetNamespace=helliprsaquo
ltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo minOccurs=ldquo0ldquo maxOccurs=ldquounboundedgt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdcomplexType name=ldquoDetailCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoprixldquo type=ldquo xsdfloatldquogt
ltxsdelement name=ldquoquantiteldquo type=ldquo xsdintldquogt
ltxsdelement name=ldquonomProduitldquo type=ldquo xsdstringldquogt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdschemarsaquo
GTI515 Automne 2013 JF Couturier 50
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 51
Des classes Java
public class Commande
private String adresseLivraison
private String adresseFacturation
private Collection detailCommande
hellip
String getAdresseLivraison()
void setAdresseLivraison(String value)
String getAdresseFacturation()
void setAdresseFacturation(String value)
public class DetailCommande
private float prix
private int quantite
private String nomProduit
float getPrix()
void setPrix(float value)
int getQuantite()
void setQuantite(int value)
String getNomProduit()
void setNomProduit(String value)
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 52
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Programmepublic class Commande
private String adresseLivraisonprivate String adresseFacturation
String getAdresseLivraison()void setAdresseLivraison(String value)
String getAdresseFacturation()void setAdresseFacturation(String value)
Scheacutema XMLltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gtltxsdschema xmlnsxsd=httpwww
targetNamespace=helliprsaquoltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo
xsdstringldquogt ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo
Modegravele UML3 repreacutesentationsdes mecircmes exigences
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
Speacutecifications de lrsquoOMG Seacuteparation de la logique meacutetier de
toute plateforme technique Speacutecifications drsquoun langage de
transformation (QVT)
GTI515 Automne 2013 JF Couturier 53
Deacutepartement de geacutenie logiciel et des TI
Concept principal de MDA
Modeacuteliser pour documenter le systegraveme
Modeacuteliser pour construire le systegraveme
GTI515 Automne 2013 JF Couturier 55
Deacutepartement de geacutenie logiciel et des TI
CIM PIM PSM Code CIM
Computing Independant Model
Modegravele du domaine logique meacutetier
PIM Platform Independant Model
Modegravele de conception UML et OCL
PSM Platform Specific Model
NET J2EE
Codehellip
GTI515 Automne 2013 JF Couturier 56
Deacutepartement de geacutenie logiciel et des TI
Les diffeacuterentes eacutetapes
GTI515 Automne 2013 JF Couturier 57
Reacutef the Zachman Framework and the OMGrsquos MDA Business Process Trends Sept 2003
Deacutepartement de geacutenie logiciel et des TI
MDA et Gartner
GTI515 Automne 2013 JF Couturier 58
Gartner Hype Cycle 2008
Deacutepartement de geacutenie logiciel et des TI
Eacutetude de cas
Lecture de la discussion sur MDA Questions
Quels sont les arguments pour
Quels sont les arguments contre
Vos commentaires sur lrsquoarticle
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 59
Deacutepartement de geacutenie logiciel et des TI
Impact
Rocircle du deacuteveloppeur minimiseacute puisqursquoil nrsquointerpregravete plus le modegravele les regravegles de transformation srsquoen chargent
Modegraveles exportables drsquoune plateforme agrave un autre
Plus de 100 articles de recherche sur IEEE entre 2008 et 2009
Maishellip
GTI515 Automne 2013 JF Couturier 60
Deacutepartement de geacutenie logiciel et des TI
Impact
Est-ce applicable au monde agile
Le cycle de modeacutelisation est-il compatible avec le deacuteveloppement iteacuteratif
Est-ce qursquoil y a suffisamment de ressources hautement qualifieacutees pour reacutealiser ce type de projet
Pouvez-vous les former Pouvez-vous les conserver
Produire 80 du code et vous laisser les derniers 20 plus difficileshellip
Comment inteacutegrer les tests
GTI515 Automne 2013 JF Couturier 61
Scott Ambler Enterprise Unified Process p 191
Deacutepartement de geacutenie logiciel et des TI
Impact
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 62
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 63
Domaine
Exigences
Analyse
Conception
Reacutealisation
MDA
PIM
PSM
Modegravele des Processus drsquoaffaires
Modegravele drsquoanalyse du systegraveme
CIM
Modegravele des Cas drsquoutilisation
Modegravele de conception du systegraveme
Les modegraveles du cycle de deacuteveloppement de logiciels
Code
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 64
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 65
Deacutepartement de geacutenie logiciel et des TI
Exemple
GTI515 Automne 2013 JF Couturier 66
httpwwwibmcomdeveloperworksrationallibrary3100html
Deacutepartement de geacutenie logiciel et des TI
Ressources
Site de lOMG MDA Article drsquoIBM sur MDA Discussion sur MDA Wiki MDA Wiki QVT
GTI515 Automne 2013 JF Couturier 67
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 68
Laboratoire 1
Choix du sujet Validation de la porteacutee
Suffisamment long Plusieurs interactions humaines machines Reacutealisable dans une session
Chargeacute de laboratoire Oleg Litvinski Premier laboratoire lundi 7 mai
Deacutepartement de geacutenie logiciel et des TI
Le document de vision (RUP)
Une base de discussion et drsquoaccord parmi les intervenants du projet
Une description de lrsquoapplication en geacuteneacuteral incluant la description du marcheacute cible les clients les utilisateurs du systegraveme les problegravemes agrave reacutesoudre et les caracteacuteristiques de lrsquoapplication
GTI515 Automne 2013 JF Couturier 69
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 70
Requirements Management with Use Cases v20010300
Copyright copy 1998 2001 Rational Software all rights reserved
2
Problem
Solution Space
Problem Space
Needs
Features
SoftwareRequirements
Test Procedures Design User
Docs
The The Product Product To Be To Be BuiltBuilt
Traceability
Deacutepartement de geacutenie logiciel et des TI
Exemples de caracteacuteristiques (feature)
Domaine drsquoapplication Exemple de caracteacuteristique
Systegraveme de commande drsquoascenseur
Commande manuelle des portes durant une urgence de feu
Systegraveme de commande drsquoinventaire
Fournir un statut reacutecent de tous les items reacutepertorieacutes
Systegraveme de suivi de deacutefauts Fournir des laquo donneacutees raquo sur les tendances pour eacutevaluer la
qualiteacute
Systegraveme de paie Rapports par cateacutegories des deacuteductions remis agrave lrsquoimpocirct
Systegraveme de commande drsquoarmes
Minimum de deux confirmations indeacutependantes drsquoautorisation
drsquoattaque exigeacutee
GTI515 Automne 2013 JF Couturier 71
Deacutepartement de geacutenie logiciel et des TI
Niveau de deacutetail des caracteacuteristiques Pour tout nouveau systegraveme ou pour
une ameacutelioration majeure agrave un systegraveme existant il est recommandeacute de garder un niveau drsquoabstraction assez eacuteleveacute de sorte agrave avoir un maximum de caracteacuteristiques compris entre 25-99 et de preacutefeacuterence moins de 50
GTI515 Automne 2013 JF Couturier 72
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Statut Suit le progregraves
Exemples Proposeacute approuveacute incorporeacute etc
PrioriteacuteBeacuteneacutefice
Les caracteacuteristiques ne sont pas agrave prioriteacutes eacutegales ou geacutenegraverent des beacuteneacutefices eacutegaux
Exemple critiques importantes optionnelle
Effort Estimation du nombre de personnessemaines lignes de code points de fonction COSMIC_FFP
Risque La probabiliteacute que la caracteacuteristique aille causer un eacuteveacutenement indeacutesirable tel que le deacutepassement du budget ou des deacutelais ou mecircme lrsquoannulation du projet
GTI515 Automne 2013 JF Couturier 73
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Stabiliteacute La probabiliteacute que la caracteacuteristique elle-mecircme ou sa compreacutehension par lrsquoeacutequipe de deacuteveloppement changera
Mise en application
Documenter la version preacutevue pour laquelle la caracteacuteristique sera incorporeacutee
Assigneacutee agrave Deacutesigner lrsquoeacutequipe responsable de la caracteacuteristique
Raison Lrsquoorigine de la requecircte de la caracteacuteristique
GTI515 Automne 2013 JF Couturier 74
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 75
Deacutepartement de geacutenie logiciel et des TI
Reacutedaction du document de vision une description concise de tout ce qui est important au
produit ou agrave lrsquoapplication eacutecrit avec un niveau de deacutetails dans un langage lisible et
compreacutehensible par les intervenants du projet
Document de 15 agrave 20 pages
GTI515 Automne 2013 JF Couturier 76
Deacutepartement de geacutenie logiciel et des TI
Exemple le cas ACS
GTI515 Automne 2013 JF Couturier 77
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 78
Deacutepartement de geacutenie logiciel et des TI
Exemple de problegravemesle cas ACS
Controcircle drsquoune large gamme de mateacuteriels
Utilisation compliqueacutee Difficulteacutes de programmation Disponibiliteacute du mateacuteriel Risque de mauvaise utilisation
GTI515 Automne 2013 JF Couturier 79
Deacutepartement de geacutenie logiciel et des TI
Exemple de besoinsle cas ACS
AutomatiserLa distribution de fertilisantLa distribution de nourritureLa dureacutee de lrsquoeacuteclairage
Commander lrsquoopeacuteration des appareils Reacuteguler
le niveau et la dureteacute de lrsquoeauLa tempeacuterature
GTI515 Automne 2013 JF Couturier 80
Deacutepartement de geacutenie logiciel et des TI
Exemple de caracteacuteristiquesle cas ACS
Deacutemarrage automatique du systegraveme Programmation conserveacutee en cas de
panne drsquoalimentation Deacutetection automatique des modules Facile agrave programmer et agrave utiliser
Exigence non fonctionnelle
GTI515 Automne 2013 JF Couturier 81
Deacutepartement de geacutenie logiciel et des TI
Critegraveres drsquoeacutevaluation
Respect de lrsquoesprit du document
En tant qursquointervenant externe est-ce que je comprends bien
Respect de la forme du gabarit
Qualiteacute du franccedilais
Document de calibre professionnel que lrsquoon pourrait remettre agrave un dirigeant
GTI515 Automne 2013 JF Couturier 82
Deacutepartement de geacutenie logiciel et des TI
Grille drsquoeacutevaluation (sur 100)
Agrave venirhellip
GTI515 Automne 2013 JF Couturier 83
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 84
Prochain cours
La modeacutelisation des processus drsquoaffaires Le diagramme drsquoactiviteacute Le diagnostic des processus drsquoaffaires existant
Lectures Lrsquoutilisation drsquoUML Chapitre sur les diagrammes drsquoactiviteacutes dans Larman Lecture sur MDA Voir site Web du cours
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 85
Questions
- Systegravemes drsquoinformation dans les entreprises (GTI515)
- Plan du cours 1
- Qui suis-je JF Couturier
- Qui suis-je Eacutetudiant(e)
- Plan du cours 1 (2)
- Objectifs du programme
- Ingeacutenieur
- Programme GTI
- Geacutenie des TI
- Cours de speacutecialiteacutes GTI
- Objectif du cours
- Vue drsquoensemble du cours
- Lectures et reacutefeacuterences
- Regravegles du jeu
- QUIZ
- Plan du cours 1 (3)
- Plan de cours
- Laboratoires ndash GTI515
- Peacutenaliteacutes de retard
- Plagiat
- Plan du cours 1 (4)
- Les tendances dans le deacuteveloppement des systegravemes drsquoinformation
- UML - Historique
- Pourquoi modeacuteliser
- La modeacutelisation dans les entreprises
- Quelques chiffres
- Quelques chiffres (2)
- Quelques chiffres (3)
- Quelques chiffres (4)
- Quelques chiffres (5)
- Et maintenant
- Et maintenant (2)
- Finalementhellip
- Reacuteussite Eacutechec
- Rappel
- Industrialisation
- Industrialisation (2)
- Slide 39
- Slide 40
- Usines logicielles (S Factory)
- Usines logicielles (S Factory) (2)
- Usines logicielles (S Factory) (3)
- Usines logicielles (S Factory) (4)
- Usines logicielles
- Domain Specific Langage
- BuzzhellipMDA MDD MDE
- Exemple
- Model Driven Architecture
- Model Driven Architecture (2)
- Model Driven Architecture (3)
- Model Driven Architecture (4)
- Model Driven Architecture (5)
- Concept principal de MDA
- CIM PIM PSM Code
- Les diffeacuterentes eacutetapes
- MDA et Gartner
- Eacutetude de cas
- Impact
- Impact (2)
- Impact (3)
- Slide 63
- Slide 64
- Slide 65
- Exemple (2)
- Ressources
- Laboratoire 1
- Le document de vision (RUP)
- Slide 70
- Exemples de caracteacuteristiques (feature)
- Niveau de deacutetail des caracteacuteristiques
- Attributs des caracteacuteristiques
- Attributs des caracteacuteristiques
- Slide 75
- Reacutedaction du document de vision
- Exemple le cas ACS
- Slide 78
- Exemple de problegravemes le cas ACS
- Exemple de besoins le cas ACS
- Exemple de caracteacuteristiques le cas ACS
- Critegraveres drsquoeacutevaluation
- Grille drsquoeacutevaluation (sur 100)
- Prochain cours
- Questions
-
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 47
BuzzhellipMDA MDD MDE
Model Driven Architecturemarque de commerce de lrsquoOMG
Model Driven Developmentextension de MDAmarque de commerce de lrsquoOMG
Model Driven Engineeringexpression geacuteneacuterique
Deacutepartement de geacutenie logiciel et des TI
Exemple Agrave partir des speacutecifications des exigences logicielles
Lrsquoacteur saisit la commande contenant
lrsquoadresse de livraison
lrsquoadresse de facturation
Le systegraveme creacutee la commande
Lrsquoacteur saisit un deacutetail de la commande avec
le nom du produit
la quantiteacute demandeacutee
le prix du produit
Le systegraveme creacutee le deacutetail et revient agrave lrsquoeacutetape 3
Lrsquoacteur termine la commande
Le systegraveme ferme la commande
GTI515 Automne 2013 JF Couturier 48
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 49
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Un modegravele (Diagramme de classes UML)
Deacutepartement de geacutenie logiciel et des TI
Model Driven ArchitectureUn scheacutema XML
ltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gt
ltxsdschema xmlnsxsd=httpwww targetNamespace=helliprsaquo
ltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo minOccurs=ldquo0ldquo maxOccurs=ldquounboundedgt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdcomplexType name=ldquoDetailCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoprixldquo type=ldquo xsdfloatldquogt
ltxsdelement name=ldquoquantiteldquo type=ldquo xsdintldquogt
ltxsdelement name=ldquonomProduitldquo type=ldquo xsdstringldquogt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdschemarsaquo
GTI515 Automne 2013 JF Couturier 50
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 51
Des classes Java
public class Commande
private String adresseLivraison
private String adresseFacturation
private Collection detailCommande
hellip
String getAdresseLivraison()
void setAdresseLivraison(String value)
String getAdresseFacturation()
void setAdresseFacturation(String value)
public class DetailCommande
private float prix
private int quantite
private String nomProduit
float getPrix()
void setPrix(float value)
int getQuantite()
void setQuantite(int value)
String getNomProduit()
void setNomProduit(String value)
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 52
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Programmepublic class Commande
private String adresseLivraisonprivate String adresseFacturation
String getAdresseLivraison()void setAdresseLivraison(String value)
String getAdresseFacturation()void setAdresseFacturation(String value)
Scheacutema XMLltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gtltxsdschema xmlnsxsd=httpwww
targetNamespace=helliprsaquoltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo
xsdstringldquogt ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo
Modegravele UML3 repreacutesentationsdes mecircmes exigences
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
Speacutecifications de lrsquoOMG Seacuteparation de la logique meacutetier de
toute plateforme technique Speacutecifications drsquoun langage de
transformation (QVT)
GTI515 Automne 2013 JF Couturier 53
Deacutepartement de geacutenie logiciel et des TI
Concept principal de MDA
Modeacuteliser pour documenter le systegraveme
Modeacuteliser pour construire le systegraveme
GTI515 Automne 2013 JF Couturier 55
Deacutepartement de geacutenie logiciel et des TI
CIM PIM PSM Code CIM
Computing Independant Model
Modegravele du domaine logique meacutetier
PIM Platform Independant Model
Modegravele de conception UML et OCL
PSM Platform Specific Model
NET J2EE
Codehellip
GTI515 Automne 2013 JF Couturier 56
Deacutepartement de geacutenie logiciel et des TI
Les diffeacuterentes eacutetapes
GTI515 Automne 2013 JF Couturier 57
Reacutef the Zachman Framework and the OMGrsquos MDA Business Process Trends Sept 2003
Deacutepartement de geacutenie logiciel et des TI
MDA et Gartner
GTI515 Automne 2013 JF Couturier 58
Gartner Hype Cycle 2008
Deacutepartement de geacutenie logiciel et des TI
Eacutetude de cas
Lecture de la discussion sur MDA Questions
Quels sont les arguments pour
Quels sont les arguments contre
Vos commentaires sur lrsquoarticle
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 59
Deacutepartement de geacutenie logiciel et des TI
Impact
Rocircle du deacuteveloppeur minimiseacute puisqursquoil nrsquointerpregravete plus le modegravele les regravegles de transformation srsquoen chargent
Modegraveles exportables drsquoune plateforme agrave un autre
Plus de 100 articles de recherche sur IEEE entre 2008 et 2009
Maishellip
GTI515 Automne 2013 JF Couturier 60
Deacutepartement de geacutenie logiciel et des TI
Impact
Est-ce applicable au monde agile
Le cycle de modeacutelisation est-il compatible avec le deacuteveloppement iteacuteratif
Est-ce qursquoil y a suffisamment de ressources hautement qualifieacutees pour reacutealiser ce type de projet
Pouvez-vous les former Pouvez-vous les conserver
Produire 80 du code et vous laisser les derniers 20 plus difficileshellip
Comment inteacutegrer les tests
GTI515 Automne 2013 JF Couturier 61
Scott Ambler Enterprise Unified Process p 191
Deacutepartement de geacutenie logiciel et des TI
Impact
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 62
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 63
Domaine
Exigences
Analyse
Conception
Reacutealisation
MDA
PIM
PSM
Modegravele des Processus drsquoaffaires
Modegravele drsquoanalyse du systegraveme
CIM
Modegravele des Cas drsquoutilisation
Modegravele de conception du systegraveme
Les modegraveles du cycle de deacuteveloppement de logiciels
Code
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 64
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 65
Deacutepartement de geacutenie logiciel et des TI
Exemple
GTI515 Automne 2013 JF Couturier 66
httpwwwibmcomdeveloperworksrationallibrary3100html
Deacutepartement de geacutenie logiciel et des TI
Ressources
Site de lOMG MDA Article drsquoIBM sur MDA Discussion sur MDA Wiki MDA Wiki QVT
GTI515 Automne 2013 JF Couturier 67
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 68
Laboratoire 1
Choix du sujet Validation de la porteacutee
Suffisamment long Plusieurs interactions humaines machines Reacutealisable dans une session
Chargeacute de laboratoire Oleg Litvinski Premier laboratoire lundi 7 mai
Deacutepartement de geacutenie logiciel et des TI
Le document de vision (RUP)
Une base de discussion et drsquoaccord parmi les intervenants du projet
Une description de lrsquoapplication en geacuteneacuteral incluant la description du marcheacute cible les clients les utilisateurs du systegraveme les problegravemes agrave reacutesoudre et les caracteacuteristiques de lrsquoapplication
GTI515 Automne 2013 JF Couturier 69
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 70
Requirements Management with Use Cases v20010300
Copyright copy 1998 2001 Rational Software all rights reserved
2
Problem
Solution Space
Problem Space
Needs
Features
SoftwareRequirements
Test Procedures Design User
Docs
The The Product Product To Be To Be BuiltBuilt
Traceability
Deacutepartement de geacutenie logiciel et des TI
Exemples de caracteacuteristiques (feature)
Domaine drsquoapplication Exemple de caracteacuteristique
Systegraveme de commande drsquoascenseur
Commande manuelle des portes durant une urgence de feu
Systegraveme de commande drsquoinventaire
Fournir un statut reacutecent de tous les items reacutepertorieacutes
Systegraveme de suivi de deacutefauts Fournir des laquo donneacutees raquo sur les tendances pour eacutevaluer la
qualiteacute
Systegraveme de paie Rapports par cateacutegories des deacuteductions remis agrave lrsquoimpocirct
Systegraveme de commande drsquoarmes
Minimum de deux confirmations indeacutependantes drsquoautorisation
drsquoattaque exigeacutee
GTI515 Automne 2013 JF Couturier 71
Deacutepartement de geacutenie logiciel et des TI
Niveau de deacutetail des caracteacuteristiques Pour tout nouveau systegraveme ou pour
une ameacutelioration majeure agrave un systegraveme existant il est recommandeacute de garder un niveau drsquoabstraction assez eacuteleveacute de sorte agrave avoir un maximum de caracteacuteristiques compris entre 25-99 et de preacutefeacuterence moins de 50
GTI515 Automne 2013 JF Couturier 72
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Statut Suit le progregraves
Exemples Proposeacute approuveacute incorporeacute etc
PrioriteacuteBeacuteneacutefice
Les caracteacuteristiques ne sont pas agrave prioriteacutes eacutegales ou geacutenegraverent des beacuteneacutefices eacutegaux
Exemple critiques importantes optionnelle
Effort Estimation du nombre de personnessemaines lignes de code points de fonction COSMIC_FFP
Risque La probabiliteacute que la caracteacuteristique aille causer un eacuteveacutenement indeacutesirable tel que le deacutepassement du budget ou des deacutelais ou mecircme lrsquoannulation du projet
GTI515 Automne 2013 JF Couturier 73
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Stabiliteacute La probabiliteacute que la caracteacuteristique elle-mecircme ou sa compreacutehension par lrsquoeacutequipe de deacuteveloppement changera
Mise en application
Documenter la version preacutevue pour laquelle la caracteacuteristique sera incorporeacutee
Assigneacutee agrave Deacutesigner lrsquoeacutequipe responsable de la caracteacuteristique
Raison Lrsquoorigine de la requecircte de la caracteacuteristique
GTI515 Automne 2013 JF Couturier 74
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 75
Deacutepartement de geacutenie logiciel et des TI
Reacutedaction du document de vision une description concise de tout ce qui est important au
produit ou agrave lrsquoapplication eacutecrit avec un niveau de deacutetails dans un langage lisible et
compreacutehensible par les intervenants du projet
Document de 15 agrave 20 pages
GTI515 Automne 2013 JF Couturier 76
Deacutepartement de geacutenie logiciel et des TI
Exemple le cas ACS
GTI515 Automne 2013 JF Couturier 77
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 78
Deacutepartement de geacutenie logiciel et des TI
Exemple de problegravemesle cas ACS
Controcircle drsquoune large gamme de mateacuteriels
Utilisation compliqueacutee Difficulteacutes de programmation Disponibiliteacute du mateacuteriel Risque de mauvaise utilisation
GTI515 Automne 2013 JF Couturier 79
Deacutepartement de geacutenie logiciel et des TI
Exemple de besoinsle cas ACS
AutomatiserLa distribution de fertilisantLa distribution de nourritureLa dureacutee de lrsquoeacuteclairage
Commander lrsquoopeacuteration des appareils Reacuteguler
le niveau et la dureteacute de lrsquoeauLa tempeacuterature
GTI515 Automne 2013 JF Couturier 80
Deacutepartement de geacutenie logiciel et des TI
Exemple de caracteacuteristiquesle cas ACS
Deacutemarrage automatique du systegraveme Programmation conserveacutee en cas de
panne drsquoalimentation Deacutetection automatique des modules Facile agrave programmer et agrave utiliser
Exigence non fonctionnelle
GTI515 Automne 2013 JF Couturier 81
Deacutepartement de geacutenie logiciel et des TI
Critegraveres drsquoeacutevaluation
Respect de lrsquoesprit du document
En tant qursquointervenant externe est-ce que je comprends bien
Respect de la forme du gabarit
Qualiteacute du franccedilais
Document de calibre professionnel que lrsquoon pourrait remettre agrave un dirigeant
GTI515 Automne 2013 JF Couturier 82
Deacutepartement de geacutenie logiciel et des TI
Grille drsquoeacutevaluation (sur 100)
Agrave venirhellip
GTI515 Automne 2013 JF Couturier 83
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 84
Prochain cours
La modeacutelisation des processus drsquoaffaires Le diagramme drsquoactiviteacute Le diagnostic des processus drsquoaffaires existant
Lectures Lrsquoutilisation drsquoUML Chapitre sur les diagrammes drsquoactiviteacutes dans Larman Lecture sur MDA Voir site Web du cours
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 85
Questions
- Systegravemes drsquoinformation dans les entreprises (GTI515)
- Plan du cours 1
- Qui suis-je JF Couturier
- Qui suis-je Eacutetudiant(e)
- Plan du cours 1 (2)
- Objectifs du programme
- Ingeacutenieur
- Programme GTI
- Geacutenie des TI
- Cours de speacutecialiteacutes GTI
- Objectif du cours
- Vue drsquoensemble du cours
- Lectures et reacutefeacuterences
- Regravegles du jeu
- QUIZ
- Plan du cours 1 (3)
- Plan de cours
- Laboratoires ndash GTI515
- Peacutenaliteacutes de retard
- Plagiat
- Plan du cours 1 (4)
- Les tendances dans le deacuteveloppement des systegravemes drsquoinformation
- UML - Historique
- Pourquoi modeacuteliser
- La modeacutelisation dans les entreprises
- Quelques chiffres
- Quelques chiffres (2)
- Quelques chiffres (3)
- Quelques chiffres (4)
- Quelques chiffres (5)
- Et maintenant
- Et maintenant (2)
- Finalementhellip
- Reacuteussite Eacutechec
- Rappel
- Industrialisation
- Industrialisation (2)
- Slide 39
- Slide 40
- Usines logicielles (S Factory)
- Usines logicielles (S Factory) (2)
- Usines logicielles (S Factory) (3)
- Usines logicielles (S Factory) (4)
- Usines logicielles
- Domain Specific Langage
- BuzzhellipMDA MDD MDE
- Exemple
- Model Driven Architecture
- Model Driven Architecture (2)
- Model Driven Architecture (3)
- Model Driven Architecture (4)
- Model Driven Architecture (5)
- Concept principal de MDA
- CIM PIM PSM Code
- Les diffeacuterentes eacutetapes
- MDA et Gartner
- Eacutetude de cas
- Impact
- Impact (2)
- Impact (3)
- Slide 63
- Slide 64
- Slide 65
- Exemple (2)
- Ressources
- Laboratoire 1
- Le document de vision (RUP)
- Slide 70
- Exemples de caracteacuteristiques (feature)
- Niveau de deacutetail des caracteacuteristiques
- Attributs des caracteacuteristiques
- Attributs des caracteacuteristiques
- Slide 75
- Reacutedaction du document de vision
- Exemple le cas ACS
- Slide 78
- Exemple de problegravemes le cas ACS
- Exemple de besoins le cas ACS
- Exemple de caracteacuteristiques le cas ACS
- Critegraveres drsquoeacutevaluation
- Grille drsquoeacutevaluation (sur 100)
- Prochain cours
- Questions
-
Deacutepartement de geacutenie logiciel et des TI
Exemple Agrave partir des speacutecifications des exigences logicielles
Lrsquoacteur saisit la commande contenant
lrsquoadresse de livraison
lrsquoadresse de facturation
Le systegraveme creacutee la commande
Lrsquoacteur saisit un deacutetail de la commande avec
le nom du produit
la quantiteacute demandeacutee
le prix du produit
Le systegraveme creacutee le deacutetail et revient agrave lrsquoeacutetape 3
Lrsquoacteur termine la commande
Le systegraveme ferme la commande
GTI515 Automne 2013 JF Couturier 48
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 49
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Un modegravele (Diagramme de classes UML)
Deacutepartement de geacutenie logiciel et des TI
Model Driven ArchitectureUn scheacutema XML
ltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gt
ltxsdschema xmlnsxsd=httpwww targetNamespace=helliprsaquo
ltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo minOccurs=ldquo0ldquo maxOccurs=ldquounboundedgt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdcomplexType name=ldquoDetailCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoprixldquo type=ldquo xsdfloatldquogt
ltxsdelement name=ldquoquantiteldquo type=ldquo xsdintldquogt
ltxsdelement name=ldquonomProduitldquo type=ldquo xsdstringldquogt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdschemarsaquo
GTI515 Automne 2013 JF Couturier 50
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 51
Des classes Java
public class Commande
private String adresseLivraison
private String adresseFacturation
private Collection detailCommande
hellip
String getAdresseLivraison()
void setAdresseLivraison(String value)
String getAdresseFacturation()
void setAdresseFacturation(String value)
public class DetailCommande
private float prix
private int quantite
private String nomProduit
float getPrix()
void setPrix(float value)
int getQuantite()
void setQuantite(int value)
String getNomProduit()
void setNomProduit(String value)
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 52
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Programmepublic class Commande
private String adresseLivraisonprivate String adresseFacturation
String getAdresseLivraison()void setAdresseLivraison(String value)
String getAdresseFacturation()void setAdresseFacturation(String value)
Scheacutema XMLltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gtltxsdschema xmlnsxsd=httpwww
targetNamespace=helliprsaquoltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo
xsdstringldquogt ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo
Modegravele UML3 repreacutesentationsdes mecircmes exigences
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
Speacutecifications de lrsquoOMG Seacuteparation de la logique meacutetier de
toute plateforme technique Speacutecifications drsquoun langage de
transformation (QVT)
GTI515 Automne 2013 JF Couturier 53
Deacutepartement de geacutenie logiciel et des TI
Concept principal de MDA
Modeacuteliser pour documenter le systegraveme
Modeacuteliser pour construire le systegraveme
GTI515 Automne 2013 JF Couturier 55
Deacutepartement de geacutenie logiciel et des TI
CIM PIM PSM Code CIM
Computing Independant Model
Modegravele du domaine logique meacutetier
PIM Platform Independant Model
Modegravele de conception UML et OCL
PSM Platform Specific Model
NET J2EE
Codehellip
GTI515 Automne 2013 JF Couturier 56
Deacutepartement de geacutenie logiciel et des TI
Les diffeacuterentes eacutetapes
GTI515 Automne 2013 JF Couturier 57
Reacutef the Zachman Framework and the OMGrsquos MDA Business Process Trends Sept 2003
Deacutepartement de geacutenie logiciel et des TI
MDA et Gartner
GTI515 Automne 2013 JF Couturier 58
Gartner Hype Cycle 2008
Deacutepartement de geacutenie logiciel et des TI
Eacutetude de cas
Lecture de la discussion sur MDA Questions
Quels sont les arguments pour
Quels sont les arguments contre
Vos commentaires sur lrsquoarticle
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 59
Deacutepartement de geacutenie logiciel et des TI
Impact
Rocircle du deacuteveloppeur minimiseacute puisqursquoil nrsquointerpregravete plus le modegravele les regravegles de transformation srsquoen chargent
Modegraveles exportables drsquoune plateforme agrave un autre
Plus de 100 articles de recherche sur IEEE entre 2008 et 2009
Maishellip
GTI515 Automne 2013 JF Couturier 60
Deacutepartement de geacutenie logiciel et des TI
Impact
Est-ce applicable au monde agile
Le cycle de modeacutelisation est-il compatible avec le deacuteveloppement iteacuteratif
Est-ce qursquoil y a suffisamment de ressources hautement qualifieacutees pour reacutealiser ce type de projet
Pouvez-vous les former Pouvez-vous les conserver
Produire 80 du code et vous laisser les derniers 20 plus difficileshellip
Comment inteacutegrer les tests
GTI515 Automne 2013 JF Couturier 61
Scott Ambler Enterprise Unified Process p 191
Deacutepartement de geacutenie logiciel et des TI
Impact
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 62
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 63
Domaine
Exigences
Analyse
Conception
Reacutealisation
MDA
PIM
PSM
Modegravele des Processus drsquoaffaires
Modegravele drsquoanalyse du systegraveme
CIM
Modegravele des Cas drsquoutilisation
Modegravele de conception du systegraveme
Les modegraveles du cycle de deacuteveloppement de logiciels
Code
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 64
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 65
Deacutepartement de geacutenie logiciel et des TI
Exemple
GTI515 Automne 2013 JF Couturier 66
httpwwwibmcomdeveloperworksrationallibrary3100html
Deacutepartement de geacutenie logiciel et des TI
Ressources
Site de lOMG MDA Article drsquoIBM sur MDA Discussion sur MDA Wiki MDA Wiki QVT
GTI515 Automne 2013 JF Couturier 67
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 68
Laboratoire 1
Choix du sujet Validation de la porteacutee
Suffisamment long Plusieurs interactions humaines machines Reacutealisable dans une session
Chargeacute de laboratoire Oleg Litvinski Premier laboratoire lundi 7 mai
Deacutepartement de geacutenie logiciel et des TI
Le document de vision (RUP)
Une base de discussion et drsquoaccord parmi les intervenants du projet
Une description de lrsquoapplication en geacuteneacuteral incluant la description du marcheacute cible les clients les utilisateurs du systegraveme les problegravemes agrave reacutesoudre et les caracteacuteristiques de lrsquoapplication
GTI515 Automne 2013 JF Couturier 69
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 70
Requirements Management with Use Cases v20010300
Copyright copy 1998 2001 Rational Software all rights reserved
2
Problem
Solution Space
Problem Space
Needs
Features
SoftwareRequirements
Test Procedures Design User
Docs
The The Product Product To Be To Be BuiltBuilt
Traceability
Deacutepartement de geacutenie logiciel et des TI
Exemples de caracteacuteristiques (feature)
Domaine drsquoapplication Exemple de caracteacuteristique
Systegraveme de commande drsquoascenseur
Commande manuelle des portes durant une urgence de feu
Systegraveme de commande drsquoinventaire
Fournir un statut reacutecent de tous les items reacutepertorieacutes
Systegraveme de suivi de deacutefauts Fournir des laquo donneacutees raquo sur les tendances pour eacutevaluer la
qualiteacute
Systegraveme de paie Rapports par cateacutegories des deacuteductions remis agrave lrsquoimpocirct
Systegraveme de commande drsquoarmes
Minimum de deux confirmations indeacutependantes drsquoautorisation
drsquoattaque exigeacutee
GTI515 Automne 2013 JF Couturier 71
Deacutepartement de geacutenie logiciel et des TI
Niveau de deacutetail des caracteacuteristiques Pour tout nouveau systegraveme ou pour
une ameacutelioration majeure agrave un systegraveme existant il est recommandeacute de garder un niveau drsquoabstraction assez eacuteleveacute de sorte agrave avoir un maximum de caracteacuteristiques compris entre 25-99 et de preacutefeacuterence moins de 50
GTI515 Automne 2013 JF Couturier 72
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Statut Suit le progregraves
Exemples Proposeacute approuveacute incorporeacute etc
PrioriteacuteBeacuteneacutefice
Les caracteacuteristiques ne sont pas agrave prioriteacutes eacutegales ou geacutenegraverent des beacuteneacutefices eacutegaux
Exemple critiques importantes optionnelle
Effort Estimation du nombre de personnessemaines lignes de code points de fonction COSMIC_FFP
Risque La probabiliteacute que la caracteacuteristique aille causer un eacuteveacutenement indeacutesirable tel que le deacutepassement du budget ou des deacutelais ou mecircme lrsquoannulation du projet
GTI515 Automne 2013 JF Couturier 73
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Stabiliteacute La probabiliteacute que la caracteacuteristique elle-mecircme ou sa compreacutehension par lrsquoeacutequipe de deacuteveloppement changera
Mise en application
Documenter la version preacutevue pour laquelle la caracteacuteristique sera incorporeacutee
Assigneacutee agrave Deacutesigner lrsquoeacutequipe responsable de la caracteacuteristique
Raison Lrsquoorigine de la requecircte de la caracteacuteristique
GTI515 Automne 2013 JF Couturier 74
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 75
Deacutepartement de geacutenie logiciel et des TI
Reacutedaction du document de vision une description concise de tout ce qui est important au
produit ou agrave lrsquoapplication eacutecrit avec un niveau de deacutetails dans un langage lisible et
compreacutehensible par les intervenants du projet
Document de 15 agrave 20 pages
GTI515 Automne 2013 JF Couturier 76
Deacutepartement de geacutenie logiciel et des TI
Exemple le cas ACS
GTI515 Automne 2013 JF Couturier 77
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 78
Deacutepartement de geacutenie logiciel et des TI
Exemple de problegravemesle cas ACS
Controcircle drsquoune large gamme de mateacuteriels
Utilisation compliqueacutee Difficulteacutes de programmation Disponibiliteacute du mateacuteriel Risque de mauvaise utilisation
GTI515 Automne 2013 JF Couturier 79
Deacutepartement de geacutenie logiciel et des TI
Exemple de besoinsle cas ACS
AutomatiserLa distribution de fertilisantLa distribution de nourritureLa dureacutee de lrsquoeacuteclairage
Commander lrsquoopeacuteration des appareils Reacuteguler
le niveau et la dureteacute de lrsquoeauLa tempeacuterature
GTI515 Automne 2013 JF Couturier 80
Deacutepartement de geacutenie logiciel et des TI
Exemple de caracteacuteristiquesle cas ACS
Deacutemarrage automatique du systegraveme Programmation conserveacutee en cas de
panne drsquoalimentation Deacutetection automatique des modules Facile agrave programmer et agrave utiliser
Exigence non fonctionnelle
GTI515 Automne 2013 JF Couturier 81
Deacutepartement de geacutenie logiciel et des TI
Critegraveres drsquoeacutevaluation
Respect de lrsquoesprit du document
En tant qursquointervenant externe est-ce que je comprends bien
Respect de la forme du gabarit
Qualiteacute du franccedilais
Document de calibre professionnel que lrsquoon pourrait remettre agrave un dirigeant
GTI515 Automne 2013 JF Couturier 82
Deacutepartement de geacutenie logiciel et des TI
Grille drsquoeacutevaluation (sur 100)
Agrave venirhellip
GTI515 Automne 2013 JF Couturier 83
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 84
Prochain cours
La modeacutelisation des processus drsquoaffaires Le diagramme drsquoactiviteacute Le diagnostic des processus drsquoaffaires existant
Lectures Lrsquoutilisation drsquoUML Chapitre sur les diagrammes drsquoactiviteacutes dans Larman Lecture sur MDA Voir site Web du cours
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 85
Questions
- Systegravemes drsquoinformation dans les entreprises (GTI515)
- Plan du cours 1
- Qui suis-je JF Couturier
- Qui suis-je Eacutetudiant(e)
- Plan du cours 1 (2)
- Objectifs du programme
- Ingeacutenieur
- Programme GTI
- Geacutenie des TI
- Cours de speacutecialiteacutes GTI
- Objectif du cours
- Vue drsquoensemble du cours
- Lectures et reacutefeacuterences
- Regravegles du jeu
- QUIZ
- Plan du cours 1 (3)
- Plan de cours
- Laboratoires ndash GTI515
- Peacutenaliteacutes de retard
- Plagiat
- Plan du cours 1 (4)
- Les tendances dans le deacuteveloppement des systegravemes drsquoinformation
- UML - Historique
- Pourquoi modeacuteliser
- La modeacutelisation dans les entreprises
- Quelques chiffres
- Quelques chiffres (2)
- Quelques chiffres (3)
- Quelques chiffres (4)
- Quelques chiffres (5)
- Et maintenant
- Et maintenant (2)
- Finalementhellip
- Reacuteussite Eacutechec
- Rappel
- Industrialisation
- Industrialisation (2)
- Slide 39
- Slide 40
- Usines logicielles (S Factory)
- Usines logicielles (S Factory) (2)
- Usines logicielles (S Factory) (3)
- Usines logicielles (S Factory) (4)
- Usines logicielles
- Domain Specific Langage
- BuzzhellipMDA MDD MDE
- Exemple
- Model Driven Architecture
- Model Driven Architecture (2)
- Model Driven Architecture (3)
- Model Driven Architecture (4)
- Model Driven Architecture (5)
- Concept principal de MDA
- CIM PIM PSM Code
- Les diffeacuterentes eacutetapes
- MDA et Gartner
- Eacutetude de cas
- Impact
- Impact (2)
- Impact (3)
- Slide 63
- Slide 64
- Slide 65
- Exemple (2)
- Ressources
- Laboratoire 1
- Le document de vision (RUP)
- Slide 70
- Exemples de caracteacuteristiques (feature)
- Niveau de deacutetail des caracteacuteristiques
- Attributs des caracteacuteristiques
- Attributs des caracteacuteristiques
- Slide 75
- Reacutedaction du document de vision
- Exemple le cas ACS
- Slide 78
- Exemple de problegravemes le cas ACS
- Exemple de besoins le cas ACS
- Exemple de caracteacuteristiques le cas ACS
- Critegraveres drsquoeacutevaluation
- Grille drsquoeacutevaluation (sur 100)
- Prochain cours
- Questions
-
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 49
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Un modegravele (Diagramme de classes UML)
Deacutepartement de geacutenie logiciel et des TI
Model Driven ArchitectureUn scheacutema XML
ltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gt
ltxsdschema xmlnsxsd=httpwww targetNamespace=helliprsaquo
ltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo minOccurs=ldquo0ldquo maxOccurs=ldquounboundedgt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdcomplexType name=ldquoDetailCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoprixldquo type=ldquo xsdfloatldquogt
ltxsdelement name=ldquoquantiteldquo type=ldquo xsdintldquogt
ltxsdelement name=ldquonomProduitldquo type=ldquo xsdstringldquogt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdschemarsaquo
GTI515 Automne 2013 JF Couturier 50
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 51
Des classes Java
public class Commande
private String adresseLivraison
private String adresseFacturation
private Collection detailCommande
hellip
String getAdresseLivraison()
void setAdresseLivraison(String value)
String getAdresseFacturation()
void setAdresseFacturation(String value)
public class DetailCommande
private float prix
private int quantite
private String nomProduit
float getPrix()
void setPrix(float value)
int getQuantite()
void setQuantite(int value)
String getNomProduit()
void setNomProduit(String value)
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 52
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Programmepublic class Commande
private String adresseLivraisonprivate String adresseFacturation
String getAdresseLivraison()void setAdresseLivraison(String value)
String getAdresseFacturation()void setAdresseFacturation(String value)
Scheacutema XMLltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gtltxsdschema xmlnsxsd=httpwww
targetNamespace=helliprsaquoltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo
xsdstringldquogt ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo
Modegravele UML3 repreacutesentationsdes mecircmes exigences
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
Speacutecifications de lrsquoOMG Seacuteparation de la logique meacutetier de
toute plateforme technique Speacutecifications drsquoun langage de
transformation (QVT)
GTI515 Automne 2013 JF Couturier 53
Deacutepartement de geacutenie logiciel et des TI
Concept principal de MDA
Modeacuteliser pour documenter le systegraveme
Modeacuteliser pour construire le systegraveme
GTI515 Automne 2013 JF Couturier 55
Deacutepartement de geacutenie logiciel et des TI
CIM PIM PSM Code CIM
Computing Independant Model
Modegravele du domaine logique meacutetier
PIM Platform Independant Model
Modegravele de conception UML et OCL
PSM Platform Specific Model
NET J2EE
Codehellip
GTI515 Automne 2013 JF Couturier 56
Deacutepartement de geacutenie logiciel et des TI
Les diffeacuterentes eacutetapes
GTI515 Automne 2013 JF Couturier 57
Reacutef the Zachman Framework and the OMGrsquos MDA Business Process Trends Sept 2003
Deacutepartement de geacutenie logiciel et des TI
MDA et Gartner
GTI515 Automne 2013 JF Couturier 58
Gartner Hype Cycle 2008
Deacutepartement de geacutenie logiciel et des TI
Eacutetude de cas
Lecture de la discussion sur MDA Questions
Quels sont les arguments pour
Quels sont les arguments contre
Vos commentaires sur lrsquoarticle
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 59
Deacutepartement de geacutenie logiciel et des TI
Impact
Rocircle du deacuteveloppeur minimiseacute puisqursquoil nrsquointerpregravete plus le modegravele les regravegles de transformation srsquoen chargent
Modegraveles exportables drsquoune plateforme agrave un autre
Plus de 100 articles de recherche sur IEEE entre 2008 et 2009
Maishellip
GTI515 Automne 2013 JF Couturier 60
Deacutepartement de geacutenie logiciel et des TI
Impact
Est-ce applicable au monde agile
Le cycle de modeacutelisation est-il compatible avec le deacuteveloppement iteacuteratif
Est-ce qursquoil y a suffisamment de ressources hautement qualifieacutees pour reacutealiser ce type de projet
Pouvez-vous les former Pouvez-vous les conserver
Produire 80 du code et vous laisser les derniers 20 plus difficileshellip
Comment inteacutegrer les tests
GTI515 Automne 2013 JF Couturier 61
Scott Ambler Enterprise Unified Process p 191
Deacutepartement de geacutenie logiciel et des TI
Impact
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 62
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 63
Domaine
Exigences
Analyse
Conception
Reacutealisation
MDA
PIM
PSM
Modegravele des Processus drsquoaffaires
Modegravele drsquoanalyse du systegraveme
CIM
Modegravele des Cas drsquoutilisation
Modegravele de conception du systegraveme
Les modegraveles du cycle de deacuteveloppement de logiciels
Code
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 64
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 65
Deacutepartement de geacutenie logiciel et des TI
Exemple
GTI515 Automne 2013 JF Couturier 66
httpwwwibmcomdeveloperworksrationallibrary3100html
Deacutepartement de geacutenie logiciel et des TI
Ressources
Site de lOMG MDA Article drsquoIBM sur MDA Discussion sur MDA Wiki MDA Wiki QVT
GTI515 Automne 2013 JF Couturier 67
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 68
Laboratoire 1
Choix du sujet Validation de la porteacutee
Suffisamment long Plusieurs interactions humaines machines Reacutealisable dans une session
Chargeacute de laboratoire Oleg Litvinski Premier laboratoire lundi 7 mai
Deacutepartement de geacutenie logiciel et des TI
Le document de vision (RUP)
Une base de discussion et drsquoaccord parmi les intervenants du projet
Une description de lrsquoapplication en geacuteneacuteral incluant la description du marcheacute cible les clients les utilisateurs du systegraveme les problegravemes agrave reacutesoudre et les caracteacuteristiques de lrsquoapplication
GTI515 Automne 2013 JF Couturier 69
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 70
Requirements Management with Use Cases v20010300
Copyright copy 1998 2001 Rational Software all rights reserved
2
Problem
Solution Space
Problem Space
Needs
Features
SoftwareRequirements
Test Procedures Design User
Docs
The The Product Product To Be To Be BuiltBuilt
Traceability
Deacutepartement de geacutenie logiciel et des TI
Exemples de caracteacuteristiques (feature)
Domaine drsquoapplication Exemple de caracteacuteristique
Systegraveme de commande drsquoascenseur
Commande manuelle des portes durant une urgence de feu
Systegraveme de commande drsquoinventaire
Fournir un statut reacutecent de tous les items reacutepertorieacutes
Systegraveme de suivi de deacutefauts Fournir des laquo donneacutees raquo sur les tendances pour eacutevaluer la
qualiteacute
Systegraveme de paie Rapports par cateacutegories des deacuteductions remis agrave lrsquoimpocirct
Systegraveme de commande drsquoarmes
Minimum de deux confirmations indeacutependantes drsquoautorisation
drsquoattaque exigeacutee
GTI515 Automne 2013 JF Couturier 71
Deacutepartement de geacutenie logiciel et des TI
Niveau de deacutetail des caracteacuteristiques Pour tout nouveau systegraveme ou pour
une ameacutelioration majeure agrave un systegraveme existant il est recommandeacute de garder un niveau drsquoabstraction assez eacuteleveacute de sorte agrave avoir un maximum de caracteacuteristiques compris entre 25-99 et de preacutefeacuterence moins de 50
GTI515 Automne 2013 JF Couturier 72
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Statut Suit le progregraves
Exemples Proposeacute approuveacute incorporeacute etc
PrioriteacuteBeacuteneacutefice
Les caracteacuteristiques ne sont pas agrave prioriteacutes eacutegales ou geacutenegraverent des beacuteneacutefices eacutegaux
Exemple critiques importantes optionnelle
Effort Estimation du nombre de personnessemaines lignes de code points de fonction COSMIC_FFP
Risque La probabiliteacute que la caracteacuteristique aille causer un eacuteveacutenement indeacutesirable tel que le deacutepassement du budget ou des deacutelais ou mecircme lrsquoannulation du projet
GTI515 Automne 2013 JF Couturier 73
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Stabiliteacute La probabiliteacute que la caracteacuteristique elle-mecircme ou sa compreacutehension par lrsquoeacutequipe de deacuteveloppement changera
Mise en application
Documenter la version preacutevue pour laquelle la caracteacuteristique sera incorporeacutee
Assigneacutee agrave Deacutesigner lrsquoeacutequipe responsable de la caracteacuteristique
Raison Lrsquoorigine de la requecircte de la caracteacuteristique
GTI515 Automne 2013 JF Couturier 74
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 75
Deacutepartement de geacutenie logiciel et des TI
Reacutedaction du document de vision une description concise de tout ce qui est important au
produit ou agrave lrsquoapplication eacutecrit avec un niveau de deacutetails dans un langage lisible et
compreacutehensible par les intervenants du projet
Document de 15 agrave 20 pages
GTI515 Automne 2013 JF Couturier 76
Deacutepartement de geacutenie logiciel et des TI
Exemple le cas ACS
GTI515 Automne 2013 JF Couturier 77
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 78
Deacutepartement de geacutenie logiciel et des TI
Exemple de problegravemesle cas ACS
Controcircle drsquoune large gamme de mateacuteriels
Utilisation compliqueacutee Difficulteacutes de programmation Disponibiliteacute du mateacuteriel Risque de mauvaise utilisation
GTI515 Automne 2013 JF Couturier 79
Deacutepartement de geacutenie logiciel et des TI
Exemple de besoinsle cas ACS
AutomatiserLa distribution de fertilisantLa distribution de nourritureLa dureacutee de lrsquoeacuteclairage
Commander lrsquoopeacuteration des appareils Reacuteguler
le niveau et la dureteacute de lrsquoeauLa tempeacuterature
GTI515 Automne 2013 JF Couturier 80
Deacutepartement de geacutenie logiciel et des TI
Exemple de caracteacuteristiquesle cas ACS
Deacutemarrage automatique du systegraveme Programmation conserveacutee en cas de
panne drsquoalimentation Deacutetection automatique des modules Facile agrave programmer et agrave utiliser
Exigence non fonctionnelle
GTI515 Automne 2013 JF Couturier 81
Deacutepartement de geacutenie logiciel et des TI
Critegraveres drsquoeacutevaluation
Respect de lrsquoesprit du document
En tant qursquointervenant externe est-ce que je comprends bien
Respect de la forme du gabarit
Qualiteacute du franccedilais
Document de calibre professionnel que lrsquoon pourrait remettre agrave un dirigeant
GTI515 Automne 2013 JF Couturier 82
Deacutepartement de geacutenie logiciel et des TI
Grille drsquoeacutevaluation (sur 100)
Agrave venirhellip
GTI515 Automne 2013 JF Couturier 83
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 84
Prochain cours
La modeacutelisation des processus drsquoaffaires Le diagramme drsquoactiviteacute Le diagnostic des processus drsquoaffaires existant
Lectures Lrsquoutilisation drsquoUML Chapitre sur les diagrammes drsquoactiviteacutes dans Larman Lecture sur MDA Voir site Web du cours
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 85
Questions
- Systegravemes drsquoinformation dans les entreprises (GTI515)
- Plan du cours 1
- Qui suis-je JF Couturier
- Qui suis-je Eacutetudiant(e)
- Plan du cours 1 (2)
- Objectifs du programme
- Ingeacutenieur
- Programme GTI
- Geacutenie des TI
- Cours de speacutecialiteacutes GTI
- Objectif du cours
- Vue drsquoensemble du cours
- Lectures et reacutefeacuterences
- Regravegles du jeu
- QUIZ
- Plan du cours 1 (3)
- Plan de cours
- Laboratoires ndash GTI515
- Peacutenaliteacutes de retard
- Plagiat
- Plan du cours 1 (4)
- Les tendances dans le deacuteveloppement des systegravemes drsquoinformation
- UML - Historique
- Pourquoi modeacuteliser
- La modeacutelisation dans les entreprises
- Quelques chiffres
- Quelques chiffres (2)
- Quelques chiffres (3)
- Quelques chiffres (4)
- Quelques chiffres (5)
- Et maintenant
- Et maintenant (2)
- Finalementhellip
- Reacuteussite Eacutechec
- Rappel
- Industrialisation
- Industrialisation (2)
- Slide 39
- Slide 40
- Usines logicielles (S Factory)
- Usines logicielles (S Factory) (2)
- Usines logicielles (S Factory) (3)
- Usines logicielles (S Factory) (4)
- Usines logicielles
- Domain Specific Langage
- BuzzhellipMDA MDD MDE
- Exemple
- Model Driven Architecture
- Model Driven Architecture (2)
- Model Driven Architecture (3)
- Model Driven Architecture (4)
- Model Driven Architecture (5)
- Concept principal de MDA
- CIM PIM PSM Code
- Les diffeacuterentes eacutetapes
- MDA et Gartner
- Eacutetude de cas
- Impact
- Impact (2)
- Impact (3)
- Slide 63
- Slide 64
- Slide 65
- Exemple (2)
- Ressources
- Laboratoire 1
- Le document de vision (RUP)
- Slide 70
- Exemples de caracteacuteristiques (feature)
- Niveau de deacutetail des caracteacuteristiques
- Attributs des caracteacuteristiques
- Attributs des caracteacuteristiques
- Slide 75
- Reacutedaction du document de vision
- Exemple le cas ACS
- Slide 78
- Exemple de problegravemes le cas ACS
- Exemple de besoins le cas ACS
- Exemple de caracteacuteristiques le cas ACS
- Critegraveres drsquoeacutevaluation
- Grille drsquoeacutevaluation (sur 100)
- Prochain cours
- Questions
-
Deacutepartement de geacutenie logiciel et des TI
Model Driven ArchitectureUn scheacutema XML
ltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gt
ltxsdschema xmlnsxsd=httpwww targetNamespace=helliprsaquo
ltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt
ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo minOccurs=ldquo0ldquo maxOccurs=ldquounboundedgt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdcomplexType name=ldquoDetailCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoprixldquo type=ldquo xsdfloatldquogt
ltxsdelement name=ldquoquantiteldquo type=ldquo xsdintldquogt
ltxsdelement name=ldquonomProduitldquo type=ldquo xsdstringldquogt
ltxsdsequencegt
ltxsdcomplexTypegt
ltxsdschemarsaquo
GTI515 Automne 2013 JF Couturier 50
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 51
Des classes Java
public class Commande
private String adresseLivraison
private String adresseFacturation
private Collection detailCommande
hellip
String getAdresseLivraison()
void setAdresseLivraison(String value)
String getAdresseFacturation()
void setAdresseFacturation(String value)
public class DetailCommande
private float prix
private int quantite
private String nomProduit
float getPrix()
void setPrix(float value)
int getQuantite()
void setQuantite(int value)
String getNomProduit()
void setNomProduit(String value)
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 52
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Programmepublic class Commande
private String adresseLivraisonprivate String adresseFacturation
String getAdresseLivraison()void setAdresseLivraison(String value)
String getAdresseFacturation()void setAdresseFacturation(String value)
Scheacutema XMLltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gtltxsdschema xmlnsxsd=httpwww
targetNamespace=helliprsaquoltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo
xsdstringldquogt ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo
Modegravele UML3 repreacutesentationsdes mecircmes exigences
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
Speacutecifications de lrsquoOMG Seacuteparation de la logique meacutetier de
toute plateforme technique Speacutecifications drsquoun langage de
transformation (QVT)
GTI515 Automne 2013 JF Couturier 53
Deacutepartement de geacutenie logiciel et des TI
Concept principal de MDA
Modeacuteliser pour documenter le systegraveme
Modeacuteliser pour construire le systegraveme
GTI515 Automne 2013 JF Couturier 55
Deacutepartement de geacutenie logiciel et des TI
CIM PIM PSM Code CIM
Computing Independant Model
Modegravele du domaine logique meacutetier
PIM Platform Independant Model
Modegravele de conception UML et OCL
PSM Platform Specific Model
NET J2EE
Codehellip
GTI515 Automne 2013 JF Couturier 56
Deacutepartement de geacutenie logiciel et des TI
Les diffeacuterentes eacutetapes
GTI515 Automne 2013 JF Couturier 57
Reacutef the Zachman Framework and the OMGrsquos MDA Business Process Trends Sept 2003
Deacutepartement de geacutenie logiciel et des TI
MDA et Gartner
GTI515 Automne 2013 JF Couturier 58
Gartner Hype Cycle 2008
Deacutepartement de geacutenie logiciel et des TI
Eacutetude de cas
Lecture de la discussion sur MDA Questions
Quels sont les arguments pour
Quels sont les arguments contre
Vos commentaires sur lrsquoarticle
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 59
Deacutepartement de geacutenie logiciel et des TI
Impact
Rocircle du deacuteveloppeur minimiseacute puisqursquoil nrsquointerpregravete plus le modegravele les regravegles de transformation srsquoen chargent
Modegraveles exportables drsquoune plateforme agrave un autre
Plus de 100 articles de recherche sur IEEE entre 2008 et 2009
Maishellip
GTI515 Automne 2013 JF Couturier 60
Deacutepartement de geacutenie logiciel et des TI
Impact
Est-ce applicable au monde agile
Le cycle de modeacutelisation est-il compatible avec le deacuteveloppement iteacuteratif
Est-ce qursquoil y a suffisamment de ressources hautement qualifieacutees pour reacutealiser ce type de projet
Pouvez-vous les former Pouvez-vous les conserver
Produire 80 du code et vous laisser les derniers 20 plus difficileshellip
Comment inteacutegrer les tests
GTI515 Automne 2013 JF Couturier 61
Scott Ambler Enterprise Unified Process p 191
Deacutepartement de geacutenie logiciel et des TI
Impact
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 62
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 63
Domaine
Exigences
Analyse
Conception
Reacutealisation
MDA
PIM
PSM
Modegravele des Processus drsquoaffaires
Modegravele drsquoanalyse du systegraveme
CIM
Modegravele des Cas drsquoutilisation
Modegravele de conception du systegraveme
Les modegraveles du cycle de deacuteveloppement de logiciels
Code
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 64
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 65
Deacutepartement de geacutenie logiciel et des TI
Exemple
GTI515 Automne 2013 JF Couturier 66
httpwwwibmcomdeveloperworksrationallibrary3100html
Deacutepartement de geacutenie logiciel et des TI
Ressources
Site de lOMG MDA Article drsquoIBM sur MDA Discussion sur MDA Wiki MDA Wiki QVT
GTI515 Automne 2013 JF Couturier 67
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 68
Laboratoire 1
Choix du sujet Validation de la porteacutee
Suffisamment long Plusieurs interactions humaines machines Reacutealisable dans une session
Chargeacute de laboratoire Oleg Litvinski Premier laboratoire lundi 7 mai
Deacutepartement de geacutenie logiciel et des TI
Le document de vision (RUP)
Une base de discussion et drsquoaccord parmi les intervenants du projet
Une description de lrsquoapplication en geacuteneacuteral incluant la description du marcheacute cible les clients les utilisateurs du systegraveme les problegravemes agrave reacutesoudre et les caracteacuteristiques de lrsquoapplication
GTI515 Automne 2013 JF Couturier 69
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 70
Requirements Management with Use Cases v20010300
Copyright copy 1998 2001 Rational Software all rights reserved
2
Problem
Solution Space
Problem Space
Needs
Features
SoftwareRequirements
Test Procedures Design User
Docs
The The Product Product To Be To Be BuiltBuilt
Traceability
Deacutepartement de geacutenie logiciel et des TI
Exemples de caracteacuteristiques (feature)
Domaine drsquoapplication Exemple de caracteacuteristique
Systegraveme de commande drsquoascenseur
Commande manuelle des portes durant une urgence de feu
Systegraveme de commande drsquoinventaire
Fournir un statut reacutecent de tous les items reacutepertorieacutes
Systegraveme de suivi de deacutefauts Fournir des laquo donneacutees raquo sur les tendances pour eacutevaluer la
qualiteacute
Systegraveme de paie Rapports par cateacutegories des deacuteductions remis agrave lrsquoimpocirct
Systegraveme de commande drsquoarmes
Minimum de deux confirmations indeacutependantes drsquoautorisation
drsquoattaque exigeacutee
GTI515 Automne 2013 JF Couturier 71
Deacutepartement de geacutenie logiciel et des TI
Niveau de deacutetail des caracteacuteristiques Pour tout nouveau systegraveme ou pour
une ameacutelioration majeure agrave un systegraveme existant il est recommandeacute de garder un niveau drsquoabstraction assez eacuteleveacute de sorte agrave avoir un maximum de caracteacuteristiques compris entre 25-99 et de preacutefeacuterence moins de 50
GTI515 Automne 2013 JF Couturier 72
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Statut Suit le progregraves
Exemples Proposeacute approuveacute incorporeacute etc
PrioriteacuteBeacuteneacutefice
Les caracteacuteristiques ne sont pas agrave prioriteacutes eacutegales ou geacutenegraverent des beacuteneacutefices eacutegaux
Exemple critiques importantes optionnelle
Effort Estimation du nombre de personnessemaines lignes de code points de fonction COSMIC_FFP
Risque La probabiliteacute que la caracteacuteristique aille causer un eacuteveacutenement indeacutesirable tel que le deacutepassement du budget ou des deacutelais ou mecircme lrsquoannulation du projet
GTI515 Automne 2013 JF Couturier 73
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Stabiliteacute La probabiliteacute que la caracteacuteristique elle-mecircme ou sa compreacutehension par lrsquoeacutequipe de deacuteveloppement changera
Mise en application
Documenter la version preacutevue pour laquelle la caracteacuteristique sera incorporeacutee
Assigneacutee agrave Deacutesigner lrsquoeacutequipe responsable de la caracteacuteristique
Raison Lrsquoorigine de la requecircte de la caracteacuteristique
GTI515 Automne 2013 JF Couturier 74
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 75
Deacutepartement de geacutenie logiciel et des TI
Reacutedaction du document de vision une description concise de tout ce qui est important au
produit ou agrave lrsquoapplication eacutecrit avec un niveau de deacutetails dans un langage lisible et
compreacutehensible par les intervenants du projet
Document de 15 agrave 20 pages
GTI515 Automne 2013 JF Couturier 76
Deacutepartement de geacutenie logiciel et des TI
Exemple le cas ACS
GTI515 Automne 2013 JF Couturier 77
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 78
Deacutepartement de geacutenie logiciel et des TI
Exemple de problegravemesle cas ACS
Controcircle drsquoune large gamme de mateacuteriels
Utilisation compliqueacutee Difficulteacutes de programmation Disponibiliteacute du mateacuteriel Risque de mauvaise utilisation
GTI515 Automne 2013 JF Couturier 79
Deacutepartement de geacutenie logiciel et des TI
Exemple de besoinsle cas ACS
AutomatiserLa distribution de fertilisantLa distribution de nourritureLa dureacutee de lrsquoeacuteclairage
Commander lrsquoopeacuteration des appareils Reacuteguler
le niveau et la dureteacute de lrsquoeauLa tempeacuterature
GTI515 Automne 2013 JF Couturier 80
Deacutepartement de geacutenie logiciel et des TI
Exemple de caracteacuteristiquesle cas ACS
Deacutemarrage automatique du systegraveme Programmation conserveacutee en cas de
panne drsquoalimentation Deacutetection automatique des modules Facile agrave programmer et agrave utiliser
Exigence non fonctionnelle
GTI515 Automne 2013 JF Couturier 81
Deacutepartement de geacutenie logiciel et des TI
Critegraveres drsquoeacutevaluation
Respect de lrsquoesprit du document
En tant qursquointervenant externe est-ce que je comprends bien
Respect de la forme du gabarit
Qualiteacute du franccedilais
Document de calibre professionnel que lrsquoon pourrait remettre agrave un dirigeant
GTI515 Automne 2013 JF Couturier 82
Deacutepartement de geacutenie logiciel et des TI
Grille drsquoeacutevaluation (sur 100)
Agrave venirhellip
GTI515 Automne 2013 JF Couturier 83
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 84
Prochain cours
La modeacutelisation des processus drsquoaffaires Le diagramme drsquoactiviteacute Le diagnostic des processus drsquoaffaires existant
Lectures Lrsquoutilisation drsquoUML Chapitre sur les diagrammes drsquoactiviteacutes dans Larman Lecture sur MDA Voir site Web du cours
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 85
Questions
- Systegravemes drsquoinformation dans les entreprises (GTI515)
- Plan du cours 1
- Qui suis-je JF Couturier
- Qui suis-je Eacutetudiant(e)
- Plan du cours 1 (2)
- Objectifs du programme
- Ingeacutenieur
- Programme GTI
- Geacutenie des TI
- Cours de speacutecialiteacutes GTI
- Objectif du cours
- Vue drsquoensemble du cours
- Lectures et reacutefeacuterences
- Regravegles du jeu
- QUIZ
- Plan du cours 1 (3)
- Plan de cours
- Laboratoires ndash GTI515
- Peacutenaliteacutes de retard
- Plagiat
- Plan du cours 1 (4)
- Les tendances dans le deacuteveloppement des systegravemes drsquoinformation
- UML - Historique
- Pourquoi modeacuteliser
- La modeacutelisation dans les entreprises
- Quelques chiffres
- Quelques chiffres (2)
- Quelques chiffres (3)
- Quelques chiffres (4)
- Quelques chiffres (5)
- Et maintenant
- Et maintenant (2)
- Finalementhellip
- Reacuteussite Eacutechec
- Rappel
- Industrialisation
- Industrialisation (2)
- Slide 39
- Slide 40
- Usines logicielles (S Factory)
- Usines logicielles (S Factory) (2)
- Usines logicielles (S Factory) (3)
- Usines logicielles (S Factory) (4)
- Usines logicielles
- Domain Specific Langage
- BuzzhellipMDA MDD MDE
- Exemple
- Model Driven Architecture
- Model Driven Architecture (2)
- Model Driven Architecture (3)
- Model Driven Architecture (4)
- Model Driven Architecture (5)
- Concept principal de MDA
- CIM PIM PSM Code
- Les diffeacuterentes eacutetapes
- MDA et Gartner
- Eacutetude de cas
- Impact
- Impact (2)
- Impact (3)
- Slide 63
- Slide 64
- Slide 65
- Exemple (2)
- Ressources
- Laboratoire 1
- Le document de vision (RUP)
- Slide 70
- Exemples de caracteacuteristiques (feature)
- Niveau de deacutetail des caracteacuteristiques
- Attributs des caracteacuteristiques
- Attributs des caracteacuteristiques
- Slide 75
- Reacutedaction du document de vision
- Exemple le cas ACS
- Slide 78
- Exemple de problegravemes le cas ACS
- Exemple de besoins le cas ACS
- Exemple de caracteacuteristiques le cas ACS
- Critegraveres drsquoeacutevaluation
- Grille drsquoeacutevaluation (sur 100)
- Prochain cours
- Questions
-
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 51
Des classes Java
public class Commande
private String adresseLivraison
private String adresseFacturation
private Collection detailCommande
hellip
String getAdresseLivraison()
void setAdresseLivraison(String value)
String getAdresseFacturation()
void setAdresseFacturation(String value)
public class DetailCommande
private float prix
private int quantite
private String nomProduit
float getPrix()
void setPrix(float value)
int getQuantite()
void setQuantite(int value)
String getNomProduit()
void setNomProduit(String value)
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 52
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Programmepublic class Commande
private String adresseLivraisonprivate String adresseFacturation
String getAdresseLivraison()void setAdresseLivraison(String value)
String getAdresseFacturation()void setAdresseFacturation(String value)
Scheacutema XMLltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gtltxsdschema xmlnsxsd=httpwww
targetNamespace=helliprsaquoltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo
xsdstringldquogt ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo
Modegravele UML3 repreacutesentationsdes mecircmes exigences
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
Speacutecifications de lrsquoOMG Seacuteparation de la logique meacutetier de
toute plateforme technique Speacutecifications drsquoun langage de
transformation (QVT)
GTI515 Automne 2013 JF Couturier 53
Deacutepartement de geacutenie logiciel et des TI
Concept principal de MDA
Modeacuteliser pour documenter le systegraveme
Modeacuteliser pour construire le systegraveme
GTI515 Automne 2013 JF Couturier 55
Deacutepartement de geacutenie logiciel et des TI
CIM PIM PSM Code CIM
Computing Independant Model
Modegravele du domaine logique meacutetier
PIM Platform Independant Model
Modegravele de conception UML et OCL
PSM Platform Specific Model
NET J2EE
Codehellip
GTI515 Automne 2013 JF Couturier 56
Deacutepartement de geacutenie logiciel et des TI
Les diffeacuterentes eacutetapes
GTI515 Automne 2013 JF Couturier 57
Reacutef the Zachman Framework and the OMGrsquos MDA Business Process Trends Sept 2003
Deacutepartement de geacutenie logiciel et des TI
MDA et Gartner
GTI515 Automne 2013 JF Couturier 58
Gartner Hype Cycle 2008
Deacutepartement de geacutenie logiciel et des TI
Eacutetude de cas
Lecture de la discussion sur MDA Questions
Quels sont les arguments pour
Quels sont les arguments contre
Vos commentaires sur lrsquoarticle
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 59
Deacutepartement de geacutenie logiciel et des TI
Impact
Rocircle du deacuteveloppeur minimiseacute puisqursquoil nrsquointerpregravete plus le modegravele les regravegles de transformation srsquoen chargent
Modegraveles exportables drsquoune plateforme agrave un autre
Plus de 100 articles de recherche sur IEEE entre 2008 et 2009
Maishellip
GTI515 Automne 2013 JF Couturier 60
Deacutepartement de geacutenie logiciel et des TI
Impact
Est-ce applicable au monde agile
Le cycle de modeacutelisation est-il compatible avec le deacuteveloppement iteacuteratif
Est-ce qursquoil y a suffisamment de ressources hautement qualifieacutees pour reacutealiser ce type de projet
Pouvez-vous les former Pouvez-vous les conserver
Produire 80 du code et vous laisser les derniers 20 plus difficileshellip
Comment inteacutegrer les tests
GTI515 Automne 2013 JF Couturier 61
Scott Ambler Enterprise Unified Process p 191
Deacutepartement de geacutenie logiciel et des TI
Impact
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 62
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 63
Domaine
Exigences
Analyse
Conception
Reacutealisation
MDA
PIM
PSM
Modegravele des Processus drsquoaffaires
Modegravele drsquoanalyse du systegraveme
CIM
Modegravele des Cas drsquoutilisation
Modegravele de conception du systegraveme
Les modegraveles du cycle de deacuteveloppement de logiciels
Code
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 64
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 65
Deacutepartement de geacutenie logiciel et des TI
Exemple
GTI515 Automne 2013 JF Couturier 66
httpwwwibmcomdeveloperworksrationallibrary3100html
Deacutepartement de geacutenie logiciel et des TI
Ressources
Site de lOMG MDA Article drsquoIBM sur MDA Discussion sur MDA Wiki MDA Wiki QVT
GTI515 Automne 2013 JF Couturier 67
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 68
Laboratoire 1
Choix du sujet Validation de la porteacutee
Suffisamment long Plusieurs interactions humaines machines Reacutealisable dans une session
Chargeacute de laboratoire Oleg Litvinski Premier laboratoire lundi 7 mai
Deacutepartement de geacutenie logiciel et des TI
Le document de vision (RUP)
Une base de discussion et drsquoaccord parmi les intervenants du projet
Une description de lrsquoapplication en geacuteneacuteral incluant la description du marcheacute cible les clients les utilisateurs du systegraveme les problegravemes agrave reacutesoudre et les caracteacuteristiques de lrsquoapplication
GTI515 Automne 2013 JF Couturier 69
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 70
Requirements Management with Use Cases v20010300
Copyright copy 1998 2001 Rational Software all rights reserved
2
Problem
Solution Space
Problem Space
Needs
Features
SoftwareRequirements
Test Procedures Design User
Docs
The The Product Product To Be To Be BuiltBuilt
Traceability
Deacutepartement de geacutenie logiciel et des TI
Exemples de caracteacuteristiques (feature)
Domaine drsquoapplication Exemple de caracteacuteristique
Systegraveme de commande drsquoascenseur
Commande manuelle des portes durant une urgence de feu
Systegraveme de commande drsquoinventaire
Fournir un statut reacutecent de tous les items reacutepertorieacutes
Systegraveme de suivi de deacutefauts Fournir des laquo donneacutees raquo sur les tendances pour eacutevaluer la
qualiteacute
Systegraveme de paie Rapports par cateacutegories des deacuteductions remis agrave lrsquoimpocirct
Systegraveme de commande drsquoarmes
Minimum de deux confirmations indeacutependantes drsquoautorisation
drsquoattaque exigeacutee
GTI515 Automne 2013 JF Couturier 71
Deacutepartement de geacutenie logiciel et des TI
Niveau de deacutetail des caracteacuteristiques Pour tout nouveau systegraveme ou pour
une ameacutelioration majeure agrave un systegraveme existant il est recommandeacute de garder un niveau drsquoabstraction assez eacuteleveacute de sorte agrave avoir un maximum de caracteacuteristiques compris entre 25-99 et de preacutefeacuterence moins de 50
GTI515 Automne 2013 JF Couturier 72
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Statut Suit le progregraves
Exemples Proposeacute approuveacute incorporeacute etc
PrioriteacuteBeacuteneacutefice
Les caracteacuteristiques ne sont pas agrave prioriteacutes eacutegales ou geacutenegraverent des beacuteneacutefices eacutegaux
Exemple critiques importantes optionnelle
Effort Estimation du nombre de personnessemaines lignes de code points de fonction COSMIC_FFP
Risque La probabiliteacute que la caracteacuteristique aille causer un eacuteveacutenement indeacutesirable tel que le deacutepassement du budget ou des deacutelais ou mecircme lrsquoannulation du projet
GTI515 Automne 2013 JF Couturier 73
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Stabiliteacute La probabiliteacute que la caracteacuteristique elle-mecircme ou sa compreacutehension par lrsquoeacutequipe de deacuteveloppement changera
Mise en application
Documenter la version preacutevue pour laquelle la caracteacuteristique sera incorporeacutee
Assigneacutee agrave Deacutesigner lrsquoeacutequipe responsable de la caracteacuteristique
Raison Lrsquoorigine de la requecircte de la caracteacuteristique
GTI515 Automne 2013 JF Couturier 74
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 75
Deacutepartement de geacutenie logiciel et des TI
Reacutedaction du document de vision une description concise de tout ce qui est important au
produit ou agrave lrsquoapplication eacutecrit avec un niveau de deacutetails dans un langage lisible et
compreacutehensible par les intervenants du projet
Document de 15 agrave 20 pages
GTI515 Automne 2013 JF Couturier 76
Deacutepartement de geacutenie logiciel et des TI
Exemple le cas ACS
GTI515 Automne 2013 JF Couturier 77
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 78
Deacutepartement de geacutenie logiciel et des TI
Exemple de problegravemesle cas ACS
Controcircle drsquoune large gamme de mateacuteriels
Utilisation compliqueacutee Difficulteacutes de programmation Disponibiliteacute du mateacuteriel Risque de mauvaise utilisation
GTI515 Automne 2013 JF Couturier 79
Deacutepartement de geacutenie logiciel et des TI
Exemple de besoinsle cas ACS
AutomatiserLa distribution de fertilisantLa distribution de nourritureLa dureacutee de lrsquoeacuteclairage
Commander lrsquoopeacuteration des appareils Reacuteguler
le niveau et la dureteacute de lrsquoeauLa tempeacuterature
GTI515 Automne 2013 JF Couturier 80
Deacutepartement de geacutenie logiciel et des TI
Exemple de caracteacuteristiquesle cas ACS
Deacutemarrage automatique du systegraveme Programmation conserveacutee en cas de
panne drsquoalimentation Deacutetection automatique des modules Facile agrave programmer et agrave utiliser
Exigence non fonctionnelle
GTI515 Automne 2013 JF Couturier 81
Deacutepartement de geacutenie logiciel et des TI
Critegraveres drsquoeacutevaluation
Respect de lrsquoesprit du document
En tant qursquointervenant externe est-ce que je comprends bien
Respect de la forme du gabarit
Qualiteacute du franccedilais
Document de calibre professionnel que lrsquoon pourrait remettre agrave un dirigeant
GTI515 Automne 2013 JF Couturier 82
Deacutepartement de geacutenie logiciel et des TI
Grille drsquoeacutevaluation (sur 100)
Agrave venirhellip
GTI515 Automne 2013 JF Couturier 83
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 84
Prochain cours
La modeacutelisation des processus drsquoaffaires Le diagramme drsquoactiviteacute Le diagnostic des processus drsquoaffaires existant
Lectures Lrsquoutilisation drsquoUML Chapitre sur les diagrammes drsquoactiviteacutes dans Larman Lecture sur MDA Voir site Web du cours
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 85
Questions
- Systegravemes drsquoinformation dans les entreprises (GTI515)
- Plan du cours 1
- Qui suis-je JF Couturier
- Qui suis-je Eacutetudiant(e)
- Plan du cours 1 (2)
- Objectifs du programme
- Ingeacutenieur
- Programme GTI
- Geacutenie des TI
- Cours de speacutecialiteacutes GTI
- Objectif du cours
- Vue drsquoensemble du cours
- Lectures et reacutefeacuterences
- Regravegles du jeu
- QUIZ
- Plan du cours 1 (3)
- Plan de cours
- Laboratoires ndash GTI515
- Peacutenaliteacutes de retard
- Plagiat
- Plan du cours 1 (4)
- Les tendances dans le deacuteveloppement des systegravemes drsquoinformation
- UML - Historique
- Pourquoi modeacuteliser
- La modeacutelisation dans les entreprises
- Quelques chiffres
- Quelques chiffres (2)
- Quelques chiffres (3)
- Quelques chiffres (4)
- Quelques chiffres (5)
- Et maintenant
- Et maintenant (2)
- Finalementhellip
- Reacuteussite Eacutechec
- Rappel
- Industrialisation
- Industrialisation (2)
- Slide 39
- Slide 40
- Usines logicielles (S Factory)
- Usines logicielles (S Factory) (2)
- Usines logicielles (S Factory) (3)
- Usines logicielles (S Factory) (4)
- Usines logicielles
- Domain Specific Langage
- BuzzhellipMDA MDD MDE
- Exemple
- Model Driven Architecture
- Model Driven Architecture (2)
- Model Driven Architecture (3)
- Model Driven Architecture (4)
- Model Driven Architecture (5)
- Concept principal de MDA
- CIM PIM PSM Code
- Les diffeacuterentes eacutetapes
- MDA et Gartner
- Eacutetude de cas
- Impact
- Impact (2)
- Impact (3)
- Slide 63
- Slide 64
- Slide 65
- Exemple (2)
- Ressources
- Laboratoire 1
- Le document de vision (RUP)
- Slide 70
- Exemples de caracteacuteristiques (feature)
- Niveau de deacutetail des caracteacuteristiques
- Attributs des caracteacuteristiques
- Attributs des caracteacuteristiques
- Slide 75
- Reacutedaction du document de vision
- Exemple le cas ACS
- Slide 78
- Exemple de problegravemes le cas ACS
- Exemple de besoins le cas ACS
- Exemple de caracteacuteristiques le cas ACS
- Critegraveres drsquoeacutevaluation
- Grille drsquoeacutevaluation (sur 100)
- Prochain cours
- Questions
-
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
GTI515 Automne 2013 JF Couturier 52
DeacutetailCommande
prix floatquantiteacute intnomProduit String
DetailCommande()
Commande
adresseLivraison StringadresseFacturation String
Commande()
0
1
0
1
Programmepublic class Commande
private String adresseLivraisonprivate String adresseFacturation
String getAdresseLivraison()void setAdresseLivraison(String value)
String getAdresseFacturation()void setAdresseFacturation(String value)
Scheacutema XMLltxml version=ldquo10ldquo encoding =ldquoUTF-8ldquo gtltxsdschema xmlnsxsd=httpwww
targetNamespace=helliprsaquoltxsdcomplexType name=ldquoCommandegt
ltxsdsequencegt
ltxsdelement name=ldquoadresseLivraisonldquo type=ldquo
xsdstringldquogt ltxsdelement name=ldquoadresseFacturationldquo type=ldquo xsdstringldquogt ltxsdelement name=ldquodetailsCommandeldquo type=ldquoCommandeDetailldquo
Modegravele UML3 repreacutesentationsdes mecircmes exigences
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
Speacutecifications de lrsquoOMG Seacuteparation de la logique meacutetier de
toute plateforme technique Speacutecifications drsquoun langage de
transformation (QVT)
GTI515 Automne 2013 JF Couturier 53
Deacutepartement de geacutenie logiciel et des TI
Concept principal de MDA
Modeacuteliser pour documenter le systegraveme
Modeacuteliser pour construire le systegraveme
GTI515 Automne 2013 JF Couturier 55
Deacutepartement de geacutenie logiciel et des TI
CIM PIM PSM Code CIM
Computing Independant Model
Modegravele du domaine logique meacutetier
PIM Platform Independant Model
Modegravele de conception UML et OCL
PSM Platform Specific Model
NET J2EE
Codehellip
GTI515 Automne 2013 JF Couturier 56
Deacutepartement de geacutenie logiciel et des TI
Les diffeacuterentes eacutetapes
GTI515 Automne 2013 JF Couturier 57
Reacutef the Zachman Framework and the OMGrsquos MDA Business Process Trends Sept 2003
Deacutepartement de geacutenie logiciel et des TI
MDA et Gartner
GTI515 Automne 2013 JF Couturier 58
Gartner Hype Cycle 2008
Deacutepartement de geacutenie logiciel et des TI
Eacutetude de cas
Lecture de la discussion sur MDA Questions
Quels sont les arguments pour
Quels sont les arguments contre
Vos commentaires sur lrsquoarticle
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 59
Deacutepartement de geacutenie logiciel et des TI
Impact
Rocircle du deacuteveloppeur minimiseacute puisqursquoil nrsquointerpregravete plus le modegravele les regravegles de transformation srsquoen chargent
Modegraveles exportables drsquoune plateforme agrave un autre
Plus de 100 articles de recherche sur IEEE entre 2008 et 2009
Maishellip
GTI515 Automne 2013 JF Couturier 60
Deacutepartement de geacutenie logiciel et des TI
Impact
Est-ce applicable au monde agile
Le cycle de modeacutelisation est-il compatible avec le deacuteveloppement iteacuteratif
Est-ce qursquoil y a suffisamment de ressources hautement qualifieacutees pour reacutealiser ce type de projet
Pouvez-vous les former Pouvez-vous les conserver
Produire 80 du code et vous laisser les derniers 20 plus difficileshellip
Comment inteacutegrer les tests
GTI515 Automne 2013 JF Couturier 61
Scott Ambler Enterprise Unified Process p 191
Deacutepartement de geacutenie logiciel et des TI
Impact
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 62
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 63
Domaine
Exigences
Analyse
Conception
Reacutealisation
MDA
PIM
PSM
Modegravele des Processus drsquoaffaires
Modegravele drsquoanalyse du systegraveme
CIM
Modegravele des Cas drsquoutilisation
Modegravele de conception du systegraveme
Les modegraveles du cycle de deacuteveloppement de logiciels
Code
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 64
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 65
Deacutepartement de geacutenie logiciel et des TI
Exemple
GTI515 Automne 2013 JF Couturier 66
httpwwwibmcomdeveloperworksrationallibrary3100html
Deacutepartement de geacutenie logiciel et des TI
Ressources
Site de lOMG MDA Article drsquoIBM sur MDA Discussion sur MDA Wiki MDA Wiki QVT
GTI515 Automne 2013 JF Couturier 67
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 68
Laboratoire 1
Choix du sujet Validation de la porteacutee
Suffisamment long Plusieurs interactions humaines machines Reacutealisable dans une session
Chargeacute de laboratoire Oleg Litvinski Premier laboratoire lundi 7 mai
Deacutepartement de geacutenie logiciel et des TI
Le document de vision (RUP)
Une base de discussion et drsquoaccord parmi les intervenants du projet
Une description de lrsquoapplication en geacuteneacuteral incluant la description du marcheacute cible les clients les utilisateurs du systegraveme les problegravemes agrave reacutesoudre et les caracteacuteristiques de lrsquoapplication
GTI515 Automne 2013 JF Couturier 69
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 70
Requirements Management with Use Cases v20010300
Copyright copy 1998 2001 Rational Software all rights reserved
2
Problem
Solution Space
Problem Space
Needs
Features
SoftwareRequirements
Test Procedures Design User
Docs
The The Product Product To Be To Be BuiltBuilt
Traceability
Deacutepartement de geacutenie logiciel et des TI
Exemples de caracteacuteristiques (feature)
Domaine drsquoapplication Exemple de caracteacuteristique
Systegraveme de commande drsquoascenseur
Commande manuelle des portes durant une urgence de feu
Systegraveme de commande drsquoinventaire
Fournir un statut reacutecent de tous les items reacutepertorieacutes
Systegraveme de suivi de deacutefauts Fournir des laquo donneacutees raquo sur les tendances pour eacutevaluer la
qualiteacute
Systegraveme de paie Rapports par cateacutegories des deacuteductions remis agrave lrsquoimpocirct
Systegraveme de commande drsquoarmes
Minimum de deux confirmations indeacutependantes drsquoautorisation
drsquoattaque exigeacutee
GTI515 Automne 2013 JF Couturier 71
Deacutepartement de geacutenie logiciel et des TI
Niveau de deacutetail des caracteacuteristiques Pour tout nouveau systegraveme ou pour
une ameacutelioration majeure agrave un systegraveme existant il est recommandeacute de garder un niveau drsquoabstraction assez eacuteleveacute de sorte agrave avoir un maximum de caracteacuteristiques compris entre 25-99 et de preacutefeacuterence moins de 50
GTI515 Automne 2013 JF Couturier 72
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Statut Suit le progregraves
Exemples Proposeacute approuveacute incorporeacute etc
PrioriteacuteBeacuteneacutefice
Les caracteacuteristiques ne sont pas agrave prioriteacutes eacutegales ou geacutenegraverent des beacuteneacutefices eacutegaux
Exemple critiques importantes optionnelle
Effort Estimation du nombre de personnessemaines lignes de code points de fonction COSMIC_FFP
Risque La probabiliteacute que la caracteacuteristique aille causer un eacuteveacutenement indeacutesirable tel que le deacutepassement du budget ou des deacutelais ou mecircme lrsquoannulation du projet
GTI515 Automne 2013 JF Couturier 73
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Stabiliteacute La probabiliteacute que la caracteacuteristique elle-mecircme ou sa compreacutehension par lrsquoeacutequipe de deacuteveloppement changera
Mise en application
Documenter la version preacutevue pour laquelle la caracteacuteristique sera incorporeacutee
Assigneacutee agrave Deacutesigner lrsquoeacutequipe responsable de la caracteacuteristique
Raison Lrsquoorigine de la requecircte de la caracteacuteristique
GTI515 Automne 2013 JF Couturier 74
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 75
Deacutepartement de geacutenie logiciel et des TI
Reacutedaction du document de vision une description concise de tout ce qui est important au
produit ou agrave lrsquoapplication eacutecrit avec un niveau de deacutetails dans un langage lisible et
compreacutehensible par les intervenants du projet
Document de 15 agrave 20 pages
GTI515 Automne 2013 JF Couturier 76
Deacutepartement de geacutenie logiciel et des TI
Exemple le cas ACS
GTI515 Automne 2013 JF Couturier 77
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 78
Deacutepartement de geacutenie logiciel et des TI
Exemple de problegravemesle cas ACS
Controcircle drsquoune large gamme de mateacuteriels
Utilisation compliqueacutee Difficulteacutes de programmation Disponibiliteacute du mateacuteriel Risque de mauvaise utilisation
GTI515 Automne 2013 JF Couturier 79
Deacutepartement de geacutenie logiciel et des TI
Exemple de besoinsle cas ACS
AutomatiserLa distribution de fertilisantLa distribution de nourritureLa dureacutee de lrsquoeacuteclairage
Commander lrsquoopeacuteration des appareils Reacuteguler
le niveau et la dureteacute de lrsquoeauLa tempeacuterature
GTI515 Automne 2013 JF Couturier 80
Deacutepartement de geacutenie logiciel et des TI
Exemple de caracteacuteristiquesle cas ACS
Deacutemarrage automatique du systegraveme Programmation conserveacutee en cas de
panne drsquoalimentation Deacutetection automatique des modules Facile agrave programmer et agrave utiliser
Exigence non fonctionnelle
GTI515 Automne 2013 JF Couturier 81
Deacutepartement de geacutenie logiciel et des TI
Critegraveres drsquoeacutevaluation
Respect de lrsquoesprit du document
En tant qursquointervenant externe est-ce que je comprends bien
Respect de la forme du gabarit
Qualiteacute du franccedilais
Document de calibre professionnel que lrsquoon pourrait remettre agrave un dirigeant
GTI515 Automne 2013 JF Couturier 82
Deacutepartement de geacutenie logiciel et des TI
Grille drsquoeacutevaluation (sur 100)
Agrave venirhellip
GTI515 Automne 2013 JF Couturier 83
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 84
Prochain cours
La modeacutelisation des processus drsquoaffaires Le diagramme drsquoactiviteacute Le diagnostic des processus drsquoaffaires existant
Lectures Lrsquoutilisation drsquoUML Chapitre sur les diagrammes drsquoactiviteacutes dans Larman Lecture sur MDA Voir site Web du cours
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 85
Questions
- Systegravemes drsquoinformation dans les entreprises (GTI515)
- Plan du cours 1
- Qui suis-je JF Couturier
- Qui suis-je Eacutetudiant(e)
- Plan du cours 1 (2)
- Objectifs du programme
- Ingeacutenieur
- Programme GTI
- Geacutenie des TI
- Cours de speacutecialiteacutes GTI
- Objectif du cours
- Vue drsquoensemble du cours
- Lectures et reacutefeacuterences
- Regravegles du jeu
- QUIZ
- Plan du cours 1 (3)
- Plan de cours
- Laboratoires ndash GTI515
- Peacutenaliteacutes de retard
- Plagiat
- Plan du cours 1 (4)
- Les tendances dans le deacuteveloppement des systegravemes drsquoinformation
- UML - Historique
- Pourquoi modeacuteliser
- La modeacutelisation dans les entreprises
- Quelques chiffres
- Quelques chiffres (2)
- Quelques chiffres (3)
- Quelques chiffres (4)
- Quelques chiffres (5)
- Et maintenant
- Et maintenant (2)
- Finalementhellip
- Reacuteussite Eacutechec
- Rappel
- Industrialisation
- Industrialisation (2)
- Slide 39
- Slide 40
- Usines logicielles (S Factory)
- Usines logicielles (S Factory) (2)
- Usines logicielles (S Factory) (3)
- Usines logicielles (S Factory) (4)
- Usines logicielles
- Domain Specific Langage
- BuzzhellipMDA MDD MDE
- Exemple
- Model Driven Architecture
- Model Driven Architecture (2)
- Model Driven Architecture (3)
- Model Driven Architecture (4)
- Model Driven Architecture (5)
- Concept principal de MDA
- CIM PIM PSM Code
- Les diffeacuterentes eacutetapes
- MDA et Gartner
- Eacutetude de cas
- Impact
- Impact (2)
- Impact (3)
- Slide 63
- Slide 64
- Slide 65
- Exemple (2)
- Ressources
- Laboratoire 1
- Le document de vision (RUP)
- Slide 70
- Exemples de caracteacuteristiques (feature)
- Niveau de deacutetail des caracteacuteristiques
- Attributs des caracteacuteristiques
- Attributs des caracteacuteristiques
- Slide 75
- Reacutedaction du document de vision
- Exemple le cas ACS
- Slide 78
- Exemple de problegravemes le cas ACS
- Exemple de besoins le cas ACS
- Exemple de caracteacuteristiques le cas ACS
- Critegraveres drsquoeacutevaluation
- Grille drsquoeacutevaluation (sur 100)
- Prochain cours
- Questions
-
Deacutepartement de geacutenie logiciel et des TI
Model Driven Architecture
Speacutecifications de lrsquoOMG Seacuteparation de la logique meacutetier de
toute plateforme technique Speacutecifications drsquoun langage de
transformation (QVT)
GTI515 Automne 2013 JF Couturier 53
Deacutepartement de geacutenie logiciel et des TI
Concept principal de MDA
Modeacuteliser pour documenter le systegraveme
Modeacuteliser pour construire le systegraveme
GTI515 Automne 2013 JF Couturier 55
Deacutepartement de geacutenie logiciel et des TI
CIM PIM PSM Code CIM
Computing Independant Model
Modegravele du domaine logique meacutetier
PIM Platform Independant Model
Modegravele de conception UML et OCL
PSM Platform Specific Model
NET J2EE
Codehellip
GTI515 Automne 2013 JF Couturier 56
Deacutepartement de geacutenie logiciel et des TI
Les diffeacuterentes eacutetapes
GTI515 Automne 2013 JF Couturier 57
Reacutef the Zachman Framework and the OMGrsquos MDA Business Process Trends Sept 2003
Deacutepartement de geacutenie logiciel et des TI
MDA et Gartner
GTI515 Automne 2013 JF Couturier 58
Gartner Hype Cycle 2008
Deacutepartement de geacutenie logiciel et des TI
Eacutetude de cas
Lecture de la discussion sur MDA Questions
Quels sont les arguments pour
Quels sont les arguments contre
Vos commentaires sur lrsquoarticle
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 59
Deacutepartement de geacutenie logiciel et des TI
Impact
Rocircle du deacuteveloppeur minimiseacute puisqursquoil nrsquointerpregravete plus le modegravele les regravegles de transformation srsquoen chargent
Modegraveles exportables drsquoune plateforme agrave un autre
Plus de 100 articles de recherche sur IEEE entre 2008 et 2009
Maishellip
GTI515 Automne 2013 JF Couturier 60
Deacutepartement de geacutenie logiciel et des TI
Impact
Est-ce applicable au monde agile
Le cycle de modeacutelisation est-il compatible avec le deacuteveloppement iteacuteratif
Est-ce qursquoil y a suffisamment de ressources hautement qualifieacutees pour reacutealiser ce type de projet
Pouvez-vous les former Pouvez-vous les conserver
Produire 80 du code et vous laisser les derniers 20 plus difficileshellip
Comment inteacutegrer les tests
GTI515 Automne 2013 JF Couturier 61
Scott Ambler Enterprise Unified Process p 191
Deacutepartement de geacutenie logiciel et des TI
Impact
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 62
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 63
Domaine
Exigences
Analyse
Conception
Reacutealisation
MDA
PIM
PSM
Modegravele des Processus drsquoaffaires
Modegravele drsquoanalyse du systegraveme
CIM
Modegravele des Cas drsquoutilisation
Modegravele de conception du systegraveme
Les modegraveles du cycle de deacuteveloppement de logiciels
Code
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 64
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 65
Deacutepartement de geacutenie logiciel et des TI
Exemple
GTI515 Automne 2013 JF Couturier 66
httpwwwibmcomdeveloperworksrationallibrary3100html
Deacutepartement de geacutenie logiciel et des TI
Ressources
Site de lOMG MDA Article drsquoIBM sur MDA Discussion sur MDA Wiki MDA Wiki QVT
GTI515 Automne 2013 JF Couturier 67
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 68
Laboratoire 1
Choix du sujet Validation de la porteacutee
Suffisamment long Plusieurs interactions humaines machines Reacutealisable dans une session
Chargeacute de laboratoire Oleg Litvinski Premier laboratoire lundi 7 mai
Deacutepartement de geacutenie logiciel et des TI
Le document de vision (RUP)
Une base de discussion et drsquoaccord parmi les intervenants du projet
Une description de lrsquoapplication en geacuteneacuteral incluant la description du marcheacute cible les clients les utilisateurs du systegraveme les problegravemes agrave reacutesoudre et les caracteacuteristiques de lrsquoapplication
GTI515 Automne 2013 JF Couturier 69
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 70
Requirements Management with Use Cases v20010300
Copyright copy 1998 2001 Rational Software all rights reserved
2
Problem
Solution Space
Problem Space
Needs
Features
SoftwareRequirements
Test Procedures Design User
Docs
The The Product Product To Be To Be BuiltBuilt
Traceability
Deacutepartement de geacutenie logiciel et des TI
Exemples de caracteacuteristiques (feature)
Domaine drsquoapplication Exemple de caracteacuteristique
Systegraveme de commande drsquoascenseur
Commande manuelle des portes durant une urgence de feu
Systegraveme de commande drsquoinventaire
Fournir un statut reacutecent de tous les items reacutepertorieacutes
Systegraveme de suivi de deacutefauts Fournir des laquo donneacutees raquo sur les tendances pour eacutevaluer la
qualiteacute
Systegraveme de paie Rapports par cateacutegories des deacuteductions remis agrave lrsquoimpocirct
Systegraveme de commande drsquoarmes
Minimum de deux confirmations indeacutependantes drsquoautorisation
drsquoattaque exigeacutee
GTI515 Automne 2013 JF Couturier 71
Deacutepartement de geacutenie logiciel et des TI
Niveau de deacutetail des caracteacuteristiques Pour tout nouveau systegraveme ou pour
une ameacutelioration majeure agrave un systegraveme existant il est recommandeacute de garder un niveau drsquoabstraction assez eacuteleveacute de sorte agrave avoir un maximum de caracteacuteristiques compris entre 25-99 et de preacutefeacuterence moins de 50
GTI515 Automne 2013 JF Couturier 72
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Statut Suit le progregraves
Exemples Proposeacute approuveacute incorporeacute etc
PrioriteacuteBeacuteneacutefice
Les caracteacuteristiques ne sont pas agrave prioriteacutes eacutegales ou geacutenegraverent des beacuteneacutefices eacutegaux
Exemple critiques importantes optionnelle
Effort Estimation du nombre de personnessemaines lignes de code points de fonction COSMIC_FFP
Risque La probabiliteacute que la caracteacuteristique aille causer un eacuteveacutenement indeacutesirable tel que le deacutepassement du budget ou des deacutelais ou mecircme lrsquoannulation du projet
GTI515 Automne 2013 JF Couturier 73
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Stabiliteacute La probabiliteacute que la caracteacuteristique elle-mecircme ou sa compreacutehension par lrsquoeacutequipe de deacuteveloppement changera
Mise en application
Documenter la version preacutevue pour laquelle la caracteacuteristique sera incorporeacutee
Assigneacutee agrave Deacutesigner lrsquoeacutequipe responsable de la caracteacuteristique
Raison Lrsquoorigine de la requecircte de la caracteacuteristique
GTI515 Automne 2013 JF Couturier 74
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 75
Deacutepartement de geacutenie logiciel et des TI
Reacutedaction du document de vision une description concise de tout ce qui est important au
produit ou agrave lrsquoapplication eacutecrit avec un niveau de deacutetails dans un langage lisible et
compreacutehensible par les intervenants du projet
Document de 15 agrave 20 pages
GTI515 Automne 2013 JF Couturier 76
Deacutepartement de geacutenie logiciel et des TI
Exemple le cas ACS
GTI515 Automne 2013 JF Couturier 77
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 78
Deacutepartement de geacutenie logiciel et des TI
Exemple de problegravemesle cas ACS
Controcircle drsquoune large gamme de mateacuteriels
Utilisation compliqueacutee Difficulteacutes de programmation Disponibiliteacute du mateacuteriel Risque de mauvaise utilisation
GTI515 Automne 2013 JF Couturier 79
Deacutepartement de geacutenie logiciel et des TI
Exemple de besoinsle cas ACS
AutomatiserLa distribution de fertilisantLa distribution de nourritureLa dureacutee de lrsquoeacuteclairage
Commander lrsquoopeacuteration des appareils Reacuteguler
le niveau et la dureteacute de lrsquoeauLa tempeacuterature
GTI515 Automne 2013 JF Couturier 80
Deacutepartement de geacutenie logiciel et des TI
Exemple de caracteacuteristiquesle cas ACS
Deacutemarrage automatique du systegraveme Programmation conserveacutee en cas de
panne drsquoalimentation Deacutetection automatique des modules Facile agrave programmer et agrave utiliser
Exigence non fonctionnelle
GTI515 Automne 2013 JF Couturier 81
Deacutepartement de geacutenie logiciel et des TI
Critegraveres drsquoeacutevaluation
Respect de lrsquoesprit du document
En tant qursquointervenant externe est-ce que je comprends bien
Respect de la forme du gabarit
Qualiteacute du franccedilais
Document de calibre professionnel que lrsquoon pourrait remettre agrave un dirigeant
GTI515 Automne 2013 JF Couturier 82
Deacutepartement de geacutenie logiciel et des TI
Grille drsquoeacutevaluation (sur 100)
Agrave venirhellip
GTI515 Automne 2013 JF Couturier 83
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 84
Prochain cours
La modeacutelisation des processus drsquoaffaires Le diagramme drsquoactiviteacute Le diagnostic des processus drsquoaffaires existant
Lectures Lrsquoutilisation drsquoUML Chapitre sur les diagrammes drsquoactiviteacutes dans Larman Lecture sur MDA Voir site Web du cours
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 85
Questions
- Systegravemes drsquoinformation dans les entreprises (GTI515)
- Plan du cours 1
- Qui suis-je JF Couturier
- Qui suis-je Eacutetudiant(e)
- Plan du cours 1 (2)
- Objectifs du programme
- Ingeacutenieur
- Programme GTI
- Geacutenie des TI
- Cours de speacutecialiteacutes GTI
- Objectif du cours
- Vue drsquoensemble du cours
- Lectures et reacutefeacuterences
- Regravegles du jeu
- QUIZ
- Plan du cours 1 (3)
- Plan de cours
- Laboratoires ndash GTI515
- Peacutenaliteacutes de retard
- Plagiat
- Plan du cours 1 (4)
- Les tendances dans le deacuteveloppement des systegravemes drsquoinformation
- UML - Historique
- Pourquoi modeacuteliser
- La modeacutelisation dans les entreprises
- Quelques chiffres
- Quelques chiffres (2)
- Quelques chiffres (3)
- Quelques chiffres (4)
- Quelques chiffres (5)
- Et maintenant
- Et maintenant (2)
- Finalementhellip
- Reacuteussite Eacutechec
- Rappel
- Industrialisation
- Industrialisation (2)
- Slide 39
- Slide 40
- Usines logicielles (S Factory)
- Usines logicielles (S Factory) (2)
- Usines logicielles (S Factory) (3)
- Usines logicielles (S Factory) (4)
- Usines logicielles
- Domain Specific Langage
- BuzzhellipMDA MDD MDE
- Exemple
- Model Driven Architecture
- Model Driven Architecture (2)
- Model Driven Architecture (3)
- Model Driven Architecture (4)
- Model Driven Architecture (5)
- Concept principal de MDA
- CIM PIM PSM Code
- Les diffeacuterentes eacutetapes
- MDA et Gartner
- Eacutetude de cas
- Impact
- Impact (2)
- Impact (3)
- Slide 63
- Slide 64
- Slide 65
- Exemple (2)
- Ressources
- Laboratoire 1
- Le document de vision (RUP)
- Slide 70
- Exemples de caracteacuteristiques (feature)
- Niveau de deacutetail des caracteacuteristiques
- Attributs des caracteacuteristiques
- Attributs des caracteacuteristiques
- Slide 75
- Reacutedaction du document de vision
- Exemple le cas ACS
- Slide 78
- Exemple de problegravemes le cas ACS
- Exemple de besoins le cas ACS
- Exemple de caracteacuteristiques le cas ACS
- Critegraveres drsquoeacutevaluation
- Grille drsquoeacutevaluation (sur 100)
- Prochain cours
- Questions
-
Deacutepartement de geacutenie logiciel et des TI
Concept principal de MDA
Modeacuteliser pour documenter le systegraveme
Modeacuteliser pour construire le systegraveme
GTI515 Automne 2013 JF Couturier 55
Deacutepartement de geacutenie logiciel et des TI
CIM PIM PSM Code CIM
Computing Independant Model
Modegravele du domaine logique meacutetier
PIM Platform Independant Model
Modegravele de conception UML et OCL
PSM Platform Specific Model
NET J2EE
Codehellip
GTI515 Automne 2013 JF Couturier 56
Deacutepartement de geacutenie logiciel et des TI
Les diffeacuterentes eacutetapes
GTI515 Automne 2013 JF Couturier 57
Reacutef the Zachman Framework and the OMGrsquos MDA Business Process Trends Sept 2003
Deacutepartement de geacutenie logiciel et des TI
MDA et Gartner
GTI515 Automne 2013 JF Couturier 58
Gartner Hype Cycle 2008
Deacutepartement de geacutenie logiciel et des TI
Eacutetude de cas
Lecture de la discussion sur MDA Questions
Quels sont les arguments pour
Quels sont les arguments contre
Vos commentaires sur lrsquoarticle
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 59
Deacutepartement de geacutenie logiciel et des TI
Impact
Rocircle du deacuteveloppeur minimiseacute puisqursquoil nrsquointerpregravete plus le modegravele les regravegles de transformation srsquoen chargent
Modegraveles exportables drsquoune plateforme agrave un autre
Plus de 100 articles de recherche sur IEEE entre 2008 et 2009
Maishellip
GTI515 Automne 2013 JF Couturier 60
Deacutepartement de geacutenie logiciel et des TI
Impact
Est-ce applicable au monde agile
Le cycle de modeacutelisation est-il compatible avec le deacuteveloppement iteacuteratif
Est-ce qursquoil y a suffisamment de ressources hautement qualifieacutees pour reacutealiser ce type de projet
Pouvez-vous les former Pouvez-vous les conserver
Produire 80 du code et vous laisser les derniers 20 plus difficileshellip
Comment inteacutegrer les tests
GTI515 Automne 2013 JF Couturier 61
Scott Ambler Enterprise Unified Process p 191
Deacutepartement de geacutenie logiciel et des TI
Impact
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 62
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 63
Domaine
Exigences
Analyse
Conception
Reacutealisation
MDA
PIM
PSM
Modegravele des Processus drsquoaffaires
Modegravele drsquoanalyse du systegraveme
CIM
Modegravele des Cas drsquoutilisation
Modegravele de conception du systegraveme
Les modegraveles du cycle de deacuteveloppement de logiciels
Code
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 64
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 65
Deacutepartement de geacutenie logiciel et des TI
Exemple
GTI515 Automne 2013 JF Couturier 66
httpwwwibmcomdeveloperworksrationallibrary3100html
Deacutepartement de geacutenie logiciel et des TI
Ressources
Site de lOMG MDA Article drsquoIBM sur MDA Discussion sur MDA Wiki MDA Wiki QVT
GTI515 Automne 2013 JF Couturier 67
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 68
Laboratoire 1
Choix du sujet Validation de la porteacutee
Suffisamment long Plusieurs interactions humaines machines Reacutealisable dans une session
Chargeacute de laboratoire Oleg Litvinski Premier laboratoire lundi 7 mai
Deacutepartement de geacutenie logiciel et des TI
Le document de vision (RUP)
Une base de discussion et drsquoaccord parmi les intervenants du projet
Une description de lrsquoapplication en geacuteneacuteral incluant la description du marcheacute cible les clients les utilisateurs du systegraveme les problegravemes agrave reacutesoudre et les caracteacuteristiques de lrsquoapplication
GTI515 Automne 2013 JF Couturier 69
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 70
Requirements Management with Use Cases v20010300
Copyright copy 1998 2001 Rational Software all rights reserved
2
Problem
Solution Space
Problem Space
Needs
Features
SoftwareRequirements
Test Procedures Design User
Docs
The The Product Product To Be To Be BuiltBuilt
Traceability
Deacutepartement de geacutenie logiciel et des TI
Exemples de caracteacuteristiques (feature)
Domaine drsquoapplication Exemple de caracteacuteristique
Systegraveme de commande drsquoascenseur
Commande manuelle des portes durant une urgence de feu
Systegraveme de commande drsquoinventaire
Fournir un statut reacutecent de tous les items reacutepertorieacutes
Systegraveme de suivi de deacutefauts Fournir des laquo donneacutees raquo sur les tendances pour eacutevaluer la
qualiteacute
Systegraveme de paie Rapports par cateacutegories des deacuteductions remis agrave lrsquoimpocirct
Systegraveme de commande drsquoarmes
Minimum de deux confirmations indeacutependantes drsquoautorisation
drsquoattaque exigeacutee
GTI515 Automne 2013 JF Couturier 71
Deacutepartement de geacutenie logiciel et des TI
Niveau de deacutetail des caracteacuteristiques Pour tout nouveau systegraveme ou pour
une ameacutelioration majeure agrave un systegraveme existant il est recommandeacute de garder un niveau drsquoabstraction assez eacuteleveacute de sorte agrave avoir un maximum de caracteacuteristiques compris entre 25-99 et de preacutefeacuterence moins de 50
GTI515 Automne 2013 JF Couturier 72
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Statut Suit le progregraves
Exemples Proposeacute approuveacute incorporeacute etc
PrioriteacuteBeacuteneacutefice
Les caracteacuteristiques ne sont pas agrave prioriteacutes eacutegales ou geacutenegraverent des beacuteneacutefices eacutegaux
Exemple critiques importantes optionnelle
Effort Estimation du nombre de personnessemaines lignes de code points de fonction COSMIC_FFP
Risque La probabiliteacute que la caracteacuteristique aille causer un eacuteveacutenement indeacutesirable tel que le deacutepassement du budget ou des deacutelais ou mecircme lrsquoannulation du projet
GTI515 Automne 2013 JF Couturier 73
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Stabiliteacute La probabiliteacute que la caracteacuteristique elle-mecircme ou sa compreacutehension par lrsquoeacutequipe de deacuteveloppement changera
Mise en application
Documenter la version preacutevue pour laquelle la caracteacuteristique sera incorporeacutee
Assigneacutee agrave Deacutesigner lrsquoeacutequipe responsable de la caracteacuteristique
Raison Lrsquoorigine de la requecircte de la caracteacuteristique
GTI515 Automne 2013 JF Couturier 74
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 75
Deacutepartement de geacutenie logiciel et des TI
Reacutedaction du document de vision une description concise de tout ce qui est important au
produit ou agrave lrsquoapplication eacutecrit avec un niveau de deacutetails dans un langage lisible et
compreacutehensible par les intervenants du projet
Document de 15 agrave 20 pages
GTI515 Automne 2013 JF Couturier 76
Deacutepartement de geacutenie logiciel et des TI
Exemple le cas ACS
GTI515 Automne 2013 JF Couturier 77
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 78
Deacutepartement de geacutenie logiciel et des TI
Exemple de problegravemesle cas ACS
Controcircle drsquoune large gamme de mateacuteriels
Utilisation compliqueacutee Difficulteacutes de programmation Disponibiliteacute du mateacuteriel Risque de mauvaise utilisation
GTI515 Automne 2013 JF Couturier 79
Deacutepartement de geacutenie logiciel et des TI
Exemple de besoinsle cas ACS
AutomatiserLa distribution de fertilisantLa distribution de nourritureLa dureacutee de lrsquoeacuteclairage
Commander lrsquoopeacuteration des appareils Reacuteguler
le niveau et la dureteacute de lrsquoeauLa tempeacuterature
GTI515 Automne 2013 JF Couturier 80
Deacutepartement de geacutenie logiciel et des TI
Exemple de caracteacuteristiquesle cas ACS
Deacutemarrage automatique du systegraveme Programmation conserveacutee en cas de
panne drsquoalimentation Deacutetection automatique des modules Facile agrave programmer et agrave utiliser
Exigence non fonctionnelle
GTI515 Automne 2013 JF Couturier 81
Deacutepartement de geacutenie logiciel et des TI
Critegraveres drsquoeacutevaluation
Respect de lrsquoesprit du document
En tant qursquointervenant externe est-ce que je comprends bien
Respect de la forme du gabarit
Qualiteacute du franccedilais
Document de calibre professionnel que lrsquoon pourrait remettre agrave un dirigeant
GTI515 Automne 2013 JF Couturier 82
Deacutepartement de geacutenie logiciel et des TI
Grille drsquoeacutevaluation (sur 100)
Agrave venirhellip
GTI515 Automne 2013 JF Couturier 83
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 84
Prochain cours
La modeacutelisation des processus drsquoaffaires Le diagramme drsquoactiviteacute Le diagnostic des processus drsquoaffaires existant
Lectures Lrsquoutilisation drsquoUML Chapitre sur les diagrammes drsquoactiviteacutes dans Larman Lecture sur MDA Voir site Web du cours
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 85
Questions
- Systegravemes drsquoinformation dans les entreprises (GTI515)
- Plan du cours 1
- Qui suis-je JF Couturier
- Qui suis-je Eacutetudiant(e)
- Plan du cours 1 (2)
- Objectifs du programme
- Ingeacutenieur
- Programme GTI
- Geacutenie des TI
- Cours de speacutecialiteacutes GTI
- Objectif du cours
- Vue drsquoensemble du cours
- Lectures et reacutefeacuterences
- Regravegles du jeu
- QUIZ
- Plan du cours 1 (3)
- Plan de cours
- Laboratoires ndash GTI515
- Peacutenaliteacutes de retard
- Plagiat
- Plan du cours 1 (4)
- Les tendances dans le deacuteveloppement des systegravemes drsquoinformation
- UML - Historique
- Pourquoi modeacuteliser
- La modeacutelisation dans les entreprises
- Quelques chiffres
- Quelques chiffres (2)
- Quelques chiffres (3)
- Quelques chiffres (4)
- Quelques chiffres (5)
- Et maintenant
- Et maintenant (2)
- Finalementhellip
- Reacuteussite Eacutechec
- Rappel
- Industrialisation
- Industrialisation (2)
- Slide 39
- Slide 40
- Usines logicielles (S Factory)
- Usines logicielles (S Factory) (2)
- Usines logicielles (S Factory) (3)
- Usines logicielles (S Factory) (4)
- Usines logicielles
- Domain Specific Langage
- BuzzhellipMDA MDD MDE
- Exemple
- Model Driven Architecture
- Model Driven Architecture (2)
- Model Driven Architecture (3)
- Model Driven Architecture (4)
- Model Driven Architecture (5)
- Concept principal de MDA
- CIM PIM PSM Code
- Les diffeacuterentes eacutetapes
- MDA et Gartner
- Eacutetude de cas
- Impact
- Impact (2)
- Impact (3)
- Slide 63
- Slide 64
- Slide 65
- Exemple (2)
- Ressources
- Laboratoire 1
- Le document de vision (RUP)
- Slide 70
- Exemples de caracteacuteristiques (feature)
- Niveau de deacutetail des caracteacuteristiques
- Attributs des caracteacuteristiques
- Attributs des caracteacuteristiques
- Slide 75
- Reacutedaction du document de vision
- Exemple le cas ACS
- Slide 78
- Exemple de problegravemes le cas ACS
- Exemple de besoins le cas ACS
- Exemple de caracteacuteristiques le cas ACS
- Critegraveres drsquoeacutevaluation
- Grille drsquoeacutevaluation (sur 100)
- Prochain cours
- Questions
-
Deacutepartement de geacutenie logiciel et des TI
CIM PIM PSM Code CIM
Computing Independant Model
Modegravele du domaine logique meacutetier
PIM Platform Independant Model
Modegravele de conception UML et OCL
PSM Platform Specific Model
NET J2EE
Codehellip
GTI515 Automne 2013 JF Couturier 56
Deacutepartement de geacutenie logiciel et des TI
Les diffeacuterentes eacutetapes
GTI515 Automne 2013 JF Couturier 57
Reacutef the Zachman Framework and the OMGrsquos MDA Business Process Trends Sept 2003
Deacutepartement de geacutenie logiciel et des TI
MDA et Gartner
GTI515 Automne 2013 JF Couturier 58
Gartner Hype Cycle 2008
Deacutepartement de geacutenie logiciel et des TI
Eacutetude de cas
Lecture de la discussion sur MDA Questions
Quels sont les arguments pour
Quels sont les arguments contre
Vos commentaires sur lrsquoarticle
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 59
Deacutepartement de geacutenie logiciel et des TI
Impact
Rocircle du deacuteveloppeur minimiseacute puisqursquoil nrsquointerpregravete plus le modegravele les regravegles de transformation srsquoen chargent
Modegraveles exportables drsquoune plateforme agrave un autre
Plus de 100 articles de recherche sur IEEE entre 2008 et 2009
Maishellip
GTI515 Automne 2013 JF Couturier 60
Deacutepartement de geacutenie logiciel et des TI
Impact
Est-ce applicable au monde agile
Le cycle de modeacutelisation est-il compatible avec le deacuteveloppement iteacuteratif
Est-ce qursquoil y a suffisamment de ressources hautement qualifieacutees pour reacutealiser ce type de projet
Pouvez-vous les former Pouvez-vous les conserver
Produire 80 du code et vous laisser les derniers 20 plus difficileshellip
Comment inteacutegrer les tests
GTI515 Automne 2013 JF Couturier 61
Scott Ambler Enterprise Unified Process p 191
Deacutepartement de geacutenie logiciel et des TI
Impact
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 62
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 63
Domaine
Exigences
Analyse
Conception
Reacutealisation
MDA
PIM
PSM
Modegravele des Processus drsquoaffaires
Modegravele drsquoanalyse du systegraveme
CIM
Modegravele des Cas drsquoutilisation
Modegravele de conception du systegraveme
Les modegraveles du cycle de deacuteveloppement de logiciels
Code
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 64
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 65
Deacutepartement de geacutenie logiciel et des TI
Exemple
GTI515 Automne 2013 JF Couturier 66
httpwwwibmcomdeveloperworksrationallibrary3100html
Deacutepartement de geacutenie logiciel et des TI
Ressources
Site de lOMG MDA Article drsquoIBM sur MDA Discussion sur MDA Wiki MDA Wiki QVT
GTI515 Automne 2013 JF Couturier 67
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 68
Laboratoire 1
Choix du sujet Validation de la porteacutee
Suffisamment long Plusieurs interactions humaines machines Reacutealisable dans une session
Chargeacute de laboratoire Oleg Litvinski Premier laboratoire lundi 7 mai
Deacutepartement de geacutenie logiciel et des TI
Le document de vision (RUP)
Une base de discussion et drsquoaccord parmi les intervenants du projet
Une description de lrsquoapplication en geacuteneacuteral incluant la description du marcheacute cible les clients les utilisateurs du systegraveme les problegravemes agrave reacutesoudre et les caracteacuteristiques de lrsquoapplication
GTI515 Automne 2013 JF Couturier 69
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 70
Requirements Management with Use Cases v20010300
Copyright copy 1998 2001 Rational Software all rights reserved
2
Problem
Solution Space
Problem Space
Needs
Features
SoftwareRequirements
Test Procedures Design User
Docs
The The Product Product To Be To Be BuiltBuilt
Traceability
Deacutepartement de geacutenie logiciel et des TI
Exemples de caracteacuteristiques (feature)
Domaine drsquoapplication Exemple de caracteacuteristique
Systegraveme de commande drsquoascenseur
Commande manuelle des portes durant une urgence de feu
Systegraveme de commande drsquoinventaire
Fournir un statut reacutecent de tous les items reacutepertorieacutes
Systegraveme de suivi de deacutefauts Fournir des laquo donneacutees raquo sur les tendances pour eacutevaluer la
qualiteacute
Systegraveme de paie Rapports par cateacutegories des deacuteductions remis agrave lrsquoimpocirct
Systegraveme de commande drsquoarmes
Minimum de deux confirmations indeacutependantes drsquoautorisation
drsquoattaque exigeacutee
GTI515 Automne 2013 JF Couturier 71
Deacutepartement de geacutenie logiciel et des TI
Niveau de deacutetail des caracteacuteristiques Pour tout nouveau systegraveme ou pour
une ameacutelioration majeure agrave un systegraveme existant il est recommandeacute de garder un niveau drsquoabstraction assez eacuteleveacute de sorte agrave avoir un maximum de caracteacuteristiques compris entre 25-99 et de preacutefeacuterence moins de 50
GTI515 Automne 2013 JF Couturier 72
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Statut Suit le progregraves
Exemples Proposeacute approuveacute incorporeacute etc
PrioriteacuteBeacuteneacutefice
Les caracteacuteristiques ne sont pas agrave prioriteacutes eacutegales ou geacutenegraverent des beacuteneacutefices eacutegaux
Exemple critiques importantes optionnelle
Effort Estimation du nombre de personnessemaines lignes de code points de fonction COSMIC_FFP
Risque La probabiliteacute que la caracteacuteristique aille causer un eacuteveacutenement indeacutesirable tel que le deacutepassement du budget ou des deacutelais ou mecircme lrsquoannulation du projet
GTI515 Automne 2013 JF Couturier 73
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Stabiliteacute La probabiliteacute que la caracteacuteristique elle-mecircme ou sa compreacutehension par lrsquoeacutequipe de deacuteveloppement changera
Mise en application
Documenter la version preacutevue pour laquelle la caracteacuteristique sera incorporeacutee
Assigneacutee agrave Deacutesigner lrsquoeacutequipe responsable de la caracteacuteristique
Raison Lrsquoorigine de la requecircte de la caracteacuteristique
GTI515 Automne 2013 JF Couturier 74
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 75
Deacutepartement de geacutenie logiciel et des TI
Reacutedaction du document de vision une description concise de tout ce qui est important au
produit ou agrave lrsquoapplication eacutecrit avec un niveau de deacutetails dans un langage lisible et
compreacutehensible par les intervenants du projet
Document de 15 agrave 20 pages
GTI515 Automne 2013 JF Couturier 76
Deacutepartement de geacutenie logiciel et des TI
Exemple le cas ACS
GTI515 Automne 2013 JF Couturier 77
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 78
Deacutepartement de geacutenie logiciel et des TI
Exemple de problegravemesle cas ACS
Controcircle drsquoune large gamme de mateacuteriels
Utilisation compliqueacutee Difficulteacutes de programmation Disponibiliteacute du mateacuteriel Risque de mauvaise utilisation
GTI515 Automne 2013 JF Couturier 79
Deacutepartement de geacutenie logiciel et des TI
Exemple de besoinsle cas ACS
AutomatiserLa distribution de fertilisantLa distribution de nourritureLa dureacutee de lrsquoeacuteclairage
Commander lrsquoopeacuteration des appareils Reacuteguler
le niveau et la dureteacute de lrsquoeauLa tempeacuterature
GTI515 Automne 2013 JF Couturier 80
Deacutepartement de geacutenie logiciel et des TI
Exemple de caracteacuteristiquesle cas ACS
Deacutemarrage automatique du systegraveme Programmation conserveacutee en cas de
panne drsquoalimentation Deacutetection automatique des modules Facile agrave programmer et agrave utiliser
Exigence non fonctionnelle
GTI515 Automne 2013 JF Couturier 81
Deacutepartement de geacutenie logiciel et des TI
Critegraveres drsquoeacutevaluation
Respect de lrsquoesprit du document
En tant qursquointervenant externe est-ce que je comprends bien
Respect de la forme du gabarit
Qualiteacute du franccedilais
Document de calibre professionnel que lrsquoon pourrait remettre agrave un dirigeant
GTI515 Automne 2013 JF Couturier 82
Deacutepartement de geacutenie logiciel et des TI
Grille drsquoeacutevaluation (sur 100)
Agrave venirhellip
GTI515 Automne 2013 JF Couturier 83
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 84
Prochain cours
La modeacutelisation des processus drsquoaffaires Le diagramme drsquoactiviteacute Le diagnostic des processus drsquoaffaires existant
Lectures Lrsquoutilisation drsquoUML Chapitre sur les diagrammes drsquoactiviteacutes dans Larman Lecture sur MDA Voir site Web du cours
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 85
Questions
- Systegravemes drsquoinformation dans les entreprises (GTI515)
- Plan du cours 1
- Qui suis-je JF Couturier
- Qui suis-je Eacutetudiant(e)
- Plan du cours 1 (2)
- Objectifs du programme
- Ingeacutenieur
- Programme GTI
- Geacutenie des TI
- Cours de speacutecialiteacutes GTI
- Objectif du cours
- Vue drsquoensemble du cours
- Lectures et reacutefeacuterences
- Regravegles du jeu
- QUIZ
- Plan du cours 1 (3)
- Plan de cours
- Laboratoires ndash GTI515
- Peacutenaliteacutes de retard
- Plagiat
- Plan du cours 1 (4)
- Les tendances dans le deacuteveloppement des systegravemes drsquoinformation
- UML - Historique
- Pourquoi modeacuteliser
- La modeacutelisation dans les entreprises
- Quelques chiffres
- Quelques chiffres (2)
- Quelques chiffres (3)
- Quelques chiffres (4)
- Quelques chiffres (5)
- Et maintenant
- Et maintenant (2)
- Finalementhellip
- Reacuteussite Eacutechec
- Rappel
- Industrialisation
- Industrialisation (2)
- Slide 39
- Slide 40
- Usines logicielles (S Factory)
- Usines logicielles (S Factory) (2)
- Usines logicielles (S Factory) (3)
- Usines logicielles (S Factory) (4)
- Usines logicielles
- Domain Specific Langage
- BuzzhellipMDA MDD MDE
- Exemple
- Model Driven Architecture
- Model Driven Architecture (2)
- Model Driven Architecture (3)
- Model Driven Architecture (4)
- Model Driven Architecture (5)
- Concept principal de MDA
- CIM PIM PSM Code
- Les diffeacuterentes eacutetapes
- MDA et Gartner
- Eacutetude de cas
- Impact
- Impact (2)
- Impact (3)
- Slide 63
- Slide 64
- Slide 65
- Exemple (2)
- Ressources
- Laboratoire 1
- Le document de vision (RUP)
- Slide 70
- Exemples de caracteacuteristiques (feature)
- Niveau de deacutetail des caracteacuteristiques
- Attributs des caracteacuteristiques
- Attributs des caracteacuteristiques
- Slide 75
- Reacutedaction du document de vision
- Exemple le cas ACS
- Slide 78
- Exemple de problegravemes le cas ACS
- Exemple de besoins le cas ACS
- Exemple de caracteacuteristiques le cas ACS
- Critegraveres drsquoeacutevaluation
- Grille drsquoeacutevaluation (sur 100)
- Prochain cours
- Questions
-
Deacutepartement de geacutenie logiciel et des TI
Les diffeacuterentes eacutetapes
GTI515 Automne 2013 JF Couturier 57
Reacutef the Zachman Framework and the OMGrsquos MDA Business Process Trends Sept 2003
Deacutepartement de geacutenie logiciel et des TI
MDA et Gartner
GTI515 Automne 2013 JF Couturier 58
Gartner Hype Cycle 2008
Deacutepartement de geacutenie logiciel et des TI
Eacutetude de cas
Lecture de la discussion sur MDA Questions
Quels sont les arguments pour
Quels sont les arguments contre
Vos commentaires sur lrsquoarticle
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 59
Deacutepartement de geacutenie logiciel et des TI
Impact
Rocircle du deacuteveloppeur minimiseacute puisqursquoil nrsquointerpregravete plus le modegravele les regravegles de transformation srsquoen chargent
Modegraveles exportables drsquoune plateforme agrave un autre
Plus de 100 articles de recherche sur IEEE entre 2008 et 2009
Maishellip
GTI515 Automne 2013 JF Couturier 60
Deacutepartement de geacutenie logiciel et des TI
Impact
Est-ce applicable au monde agile
Le cycle de modeacutelisation est-il compatible avec le deacuteveloppement iteacuteratif
Est-ce qursquoil y a suffisamment de ressources hautement qualifieacutees pour reacutealiser ce type de projet
Pouvez-vous les former Pouvez-vous les conserver
Produire 80 du code et vous laisser les derniers 20 plus difficileshellip
Comment inteacutegrer les tests
GTI515 Automne 2013 JF Couturier 61
Scott Ambler Enterprise Unified Process p 191
Deacutepartement de geacutenie logiciel et des TI
Impact
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 62
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 63
Domaine
Exigences
Analyse
Conception
Reacutealisation
MDA
PIM
PSM
Modegravele des Processus drsquoaffaires
Modegravele drsquoanalyse du systegraveme
CIM
Modegravele des Cas drsquoutilisation
Modegravele de conception du systegraveme
Les modegraveles du cycle de deacuteveloppement de logiciels
Code
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 64
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 65
Deacutepartement de geacutenie logiciel et des TI
Exemple
GTI515 Automne 2013 JF Couturier 66
httpwwwibmcomdeveloperworksrationallibrary3100html
Deacutepartement de geacutenie logiciel et des TI
Ressources
Site de lOMG MDA Article drsquoIBM sur MDA Discussion sur MDA Wiki MDA Wiki QVT
GTI515 Automne 2013 JF Couturier 67
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 68
Laboratoire 1
Choix du sujet Validation de la porteacutee
Suffisamment long Plusieurs interactions humaines machines Reacutealisable dans une session
Chargeacute de laboratoire Oleg Litvinski Premier laboratoire lundi 7 mai
Deacutepartement de geacutenie logiciel et des TI
Le document de vision (RUP)
Une base de discussion et drsquoaccord parmi les intervenants du projet
Une description de lrsquoapplication en geacuteneacuteral incluant la description du marcheacute cible les clients les utilisateurs du systegraveme les problegravemes agrave reacutesoudre et les caracteacuteristiques de lrsquoapplication
GTI515 Automne 2013 JF Couturier 69
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 70
Requirements Management with Use Cases v20010300
Copyright copy 1998 2001 Rational Software all rights reserved
2
Problem
Solution Space
Problem Space
Needs
Features
SoftwareRequirements
Test Procedures Design User
Docs
The The Product Product To Be To Be BuiltBuilt
Traceability
Deacutepartement de geacutenie logiciel et des TI
Exemples de caracteacuteristiques (feature)
Domaine drsquoapplication Exemple de caracteacuteristique
Systegraveme de commande drsquoascenseur
Commande manuelle des portes durant une urgence de feu
Systegraveme de commande drsquoinventaire
Fournir un statut reacutecent de tous les items reacutepertorieacutes
Systegraveme de suivi de deacutefauts Fournir des laquo donneacutees raquo sur les tendances pour eacutevaluer la
qualiteacute
Systegraveme de paie Rapports par cateacutegories des deacuteductions remis agrave lrsquoimpocirct
Systegraveme de commande drsquoarmes
Minimum de deux confirmations indeacutependantes drsquoautorisation
drsquoattaque exigeacutee
GTI515 Automne 2013 JF Couturier 71
Deacutepartement de geacutenie logiciel et des TI
Niveau de deacutetail des caracteacuteristiques Pour tout nouveau systegraveme ou pour
une ameacutelioration majeure agrave un systegraveme existant il est recommandeacute de garder un niveau drsquoabstraction assez eacuteleveacute de sorte agrave avoir un maximum de caracteacuteristiques compris entre 25-99 et de preacutefeacuterence moins de 50
GTI515 Automne 2013 JF Couturier 72
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Statut Suit le progregraves
Exemples Proposeacute approuveacute incorporeacute etc
PrioriteacuteBeacuteneacutefice
Les caracteacuteristiques ne sont pas agrave prioriteacutes eacutegales ou geacutenegraverent des beacuteneacutefices eacutegaux
Exemple critiques importantes optionnelle
Effort Estimation du nombre de personnessemaines lignes de code points de fonction COSMIC_FFP
Risque La probabiliteacute que la caracteacuteristique aille causer un eacuteveacutenement indeacutesirable tel que le deacutepassement du budget ou des deacutelais ou mecircme lrsquoannulation du projet
GTI515 Automne 2013 JF Couturier 73
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Stabiliteacute La probabiliteacute que la caracteacuteristique elle-mecircme ou sa compreacutehension par lrsquoeacutequipe de deacuteveloppement changera
Mise en application
Documenter la version preacutevue pour laquelle la caracteacuteristique sera incorporeacutee
Assigneacutee agrave Deacutesigner lrsquoeacutequipe responsable de la caracteacuteristique
Raison Lrsquoorigine de la requecircte de la caracteacuteristique
GTI515 Automne 2013 JF Couturier 74
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 75
Deacutepartement de geacutenie logiciel et des TI
Reacutedaction du document de vision une description concise de tout ce qui est important au
produit ou agrave lrsquoapplication eacutecrit avec un niveau de deacutetails dans un langage lisible et
compreacutehensible par les intervenants du projet
Document de 15 agrave 20 pages
GTI515 Automne 2013 JF Couturier 76
Deacutepartement de geacutenie logiciel et des TI
Exemple le cas ACS
GTI515 Automne 2013 JF Couturier 77
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 78
Deacutepartement de geacutenie logiciel et des TI
Exemple de problegravemesle cas ACS
Controcircle drsquoune large gamme de mateacuteriels
Utilisation compliqueacutee Difficulteacutes de programmation Disponibiliteacute du mateacuteriel Risque de mauvaise utilisation
GTI515 Automne 2013 JF Couturier 79
Deacutepartement de geacutenie logiciel et des TI
Exemple de besoinsle cas ACS
AutomatiserLa distribution de fertilisantLa distribution de nourritureLa dureacutee de lrsquoeacuteclairage
Commander lrsquoopeacuteration des appareils Reacuteguler
le niveau et la dureteacute de lrsquoeauLa tempeacuterature
GTI515 Automne 2013 JF Couturier 80
Deacutepartement de geacutenie logiciel et des TI
Exemple de caracteacuteristiquesle cas ACS
Deacutemarrage automatique du systegraveme Programmation conserveacutee en cas de
panne drsquoalimentation Deacutetection automatique des modules Facile agrave programmer et agrave utiliser
Exigence non fonctionnelle
GTI515 Automne 2013 JF Couturier 81
Deacutepartement de geacutenie logiciel et des TI
Critegraveres drsquoeacutevaluation
Respect de lrsquoesprit du document
En tant qursquointervenant externe est-ce que je comprends bien
Respect de la forme du gabarit
Qualiteacute du franccedilais
Document de calibre professionnel que lrsquoon pourrait remettre agrave un dirigeant
GTI515 Automne 2013 JF Couturier 82
Deacutepartement de geacutenie logiciel et des TI
Grille drsquoeacutevaluation (sur 100)
Agrave venirhellip
GTI515 Automne 2013 JF Couturier 83
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 84
Prochain cours
La modeacutelisation des processus drsquoaffaires Le diagramme drsquoactiviteacute Le diagnostic des processus drsquoaffaires existant
Lectures Lrsquoutilisation drsquoUML Chapitre sur les diagrammes drsquoactiviteacutes dans Larman Lecture sur MDA Voir site Web du cours
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 85
Questions
- Systegravemes drsquoinformation dans les entreprises (GTI515)
- Plan du cours 1
- Qui suis-je JF Couturier
- Qui suis-je Eacutetudiant(e)
- Plan du cours 1 (2)
- Objectifs du programme
- Ingeacutenieur
- Programme GTI
- Geacutenie des TI
- Cours de speacutecialiteacutes GTI
- Objectif du cours
- Vue drsquoensemble du cours
- Lectures et reacutefeacuterences
- Regravegles du jeu
- QUIZ
- Plan du cours 1 (3)
- Plan de cours
- Laboratoires ndash GTI515
- Peacutenaliteacutes de retard
- Plagiat
- Plan du cours 1 (4)
- Les tendances dans le deacuteveloppement des systegravemes drsquoinformation
- UML - Historique
- Pourquoi modeacuteliser
- La modeacutelisation dans les entreprises
- Quelques chiffres
- Quelques chiffres (2)
- Quelques chiffres (3)
- Quelques chiffres (4)
- Quelques chiffres (5)
- Et maintenant
- Et maintenant (2)
- Finalementhellip
- Reacuteussite Eacutechec
- Rappel
- Industrialisation
- Industrialisation (2)
- Slide 39
- Slide 40
- Usines logicielles (S Factory)
- Usines logicielles (S Factory) (2)
- Usines logicielles (S Factory) (3)
- Usines logicielles (S Factory) (4)
- Usines logicielles
- Domain Specific Langage
- BuzzhellipMDA MDD MDE
- Exemple
- Model Driven Architecture
- Model Driven Architecture (2)
- Model Driven Architecture (3)
- Model Driven Architecture (4)
- Model Driven Architecture (5)
- Concept principal de MDA
- CIM PIM PSM Code
- Les diffeacuterentes eacutetapes
- MDA et Gartner
- Eacutetude de cas
- Impact
- Impact (2)
- Impact (3)
- Slide 63
- Slide 64
- Slide 65
- Exemple (2)
- Ressources
- Laboratoire 1
- Le document de vision (RUP)
- Slide 70
- Exemples de caracteacuteristiques (feature)
- Niveau de deacutetail des caracteacuteristiques
- Attributs des caracteacuteristiques
- Attributs des caracteacuteristiques
- Slide 75
- Reacutedaction du document de vision
- Exemple le cas ACS
- Slide 78
- Exemple de problegravemes le cas ACS
- Exemple de besoins le cas ACS
- Exemple de caracteacuteristiques le cas ACS
- Critegraveres drsquoeacutevaluation
- Grille drsquoeacutevaluation (sur 100)
- Prochain cours
- Questions
-
Deacutepartement de geacutenie logiciel et des TI
MDA et Gartner
GTI515 Automne 2013 JF Couturier 58
Gartner Hype Cycle 2008
Deacutepartement de geacutenie logiciel et des TI
Eacutetude de cas
Lecture de la discussion sur MDA Questions
Quels sont les arguments pour
Quels sont les arguments contre
Vos commentaires sur lrsquoarticle
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 59
Deacutepartement de geacutenie logiciel et des TI
Impact
Rocircle du deacuteveloppeur minimiseacute puisqursquoil nrsquointerpregravete plus le modegravele les regravegles de transformation srsquoen chargent
Modegraveles exportables drsquoune plateforme agrave un autre
Plus de 100 articles de recherche sur IEEE entre 2008 et 2009
Maishellip
GTI515 Automne 2013 JF Couturier 60
Deacutepartement de geacutenie logiciel et des TI
Impact
Est-ce applicable au monde agile
Le cycle de modeacutelisation est-il compatible avec le deacuteveloppement iteacuteratif
Est-ce qursquoil y a suffisamment de ressources hautement qualifieacutees pour reacutealiser ce type de projet
Pouvez-vous les former Pouvez-vous les conserver
Produire 80 du code et vous laisser les derniers 20 plus difficileshellip
Comment inteacutegrer les tests
GTI515 Automne 2013 JF Couturier 61
Scott Ambler Enterprise Unified Process p 191
Deacutepartement de geacutenie logiciel et des TI
Impact
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 62
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 63
Domaine
Exigences
Analyse
Conception
Reacutealisation
MDA
PIM
PSM
Modegravele des Processus drsquoaffaires
Modegravele drsquoanalyse du systegraveme
CIM
Modegravele des Cas drsquoutilisation
Modegravele de conception du systegraveme
Les modegraveles du cycle de deacuteveloppement de logiciels
Code
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 64
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 65
Deacutepartement de geacutenie logiciel et des TI
Exemple
GTI515 Automne 2013 JF Couturier 66
httpwwwibmcomdeveloperworksrationallibrary3100html
Deacutepartement de geacutenie logiciel et des TI
Ressources
Site de lOMG MDA Article drsquoIBM sur MDA Discussion sur MDA Wiki MDA Wiki QVT
GTI515 Automne 2013 JF Couturier 67
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 68
Laboratoire 1
Choix du sujet Validation de la porteacutee
Suffisamment long Plusieurs interactions humaines machines Reacutealisable dans une session
Chargeacute de laboratoire Oleg Litvinski Premier laboratoire lundi 7 mai
Deacutepartement de geacutenie logiciel et des TI
Le document de vision (RUP)
Une base de discussion et drsquoaccord parmi les intervenants du projet
Une description de lrsquoapplication en geacuteneacuteral incluant la description du marcheacute cible les clients les utilisateurs du systegraveme les problegravemes agrave reacutesoudre et les caracteacuteristiques de lrsquoapplication
GTI515 Automne 2013 JF Couturier 69
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 70
Requirements Management with Use Cases v20010300
Copyright copy 1998 2001 Rational Software all rights reserved
2
Problem
Solution Space
Problem Space
Needs
Features
SoftwareRequirements
Test Procedures Design User
Docs
The The Product Product To Be To Be BuiltBuilt
Traceability
Deacutepartement de geacutenie logiciel et des TI
Exemples de caracteacuteristiques (feature)
Domaine drsquoapplication Exemple de caracteacuteristique
Systegraveme de commande drsquoascenseur
Commande manuelle des portes durant une urgence de feu
Systegraveme de commande drsquoinventaire
Fournir un statut reacutecent de tous les items reacutepertorieacutes
Systegraveme de suivi de deacutefauts Fournir des laquo donneacutees raquo sur les tendances pour eacutevaluer la
qualiteacute
Systegraveme de paie Rapports par cateacutegories des deacuteductions remis agrave lrsquoimpocirct
Systegraveme de commande drsquoarmes
Minimum de deux confirmations indeacutependantes drsquoautorisation
drsquoattaque exigeacutee
GTI515 Automne 2013 JF Couturier 71
Deacutepartement de geacutenie logiciel et des TI
Niveau de deacutetail des caracteacuteristiques Pour tout nouveau systegraveme ou pour
une ameacutelioration majeure agrave un systegraveme existant il est recommandeacute de garder un niveau drsquoabstraction assez eacuteleveacute de sorte agrave avoir un maximum de caracteacuteristiques compris entre 25-99 et de preacutefeacuterence moins de 50
GTI515 Automne 2013 JF Couturier 72
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Statut Suit le progregraves
Exemples Proposeacute approuveacute incorporeacute etc
PrioriteacuteBeacuteneacutefice
Les caracteacuteristiques ne sont pas agrave prioriteacutes eacutegales ou geacutenegraverent des beacuteneacutefices eacutegaux
Exemple critiques importantes optionnelle
Effort Estimation du nombre de personnessemaines lignes de code points de fonction COSMIC_FFP
Risque La probabiliteacute que la caracteacuteristique aille causer un eacuteveacutenement indeacutesirable tel que le deacutepassement du budget ou des deacutelais ou mecircme lrsquoannulation du projet
GTI515 Automne 2013 JF Couturier 73
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Stabiliteacute La probabiliteacute que la caracteacuteristique elle-mecircme ou sa compreacutehension par lrsquoeacutequipe de deacuteveloppement changera
Mise en application
Documenter la version preacutevue pour laquelle la caracteacuteristique sera incorporeacutee
Assigneacutee agrave Deacutesigner lrsquoeacutequipe responsable de la caracteacuteristique
Raison Lrsquoorigine de la requecircte de la caracteacuteristique
GTI515 Automne 2013 JF Couturier 74
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 75
Deacutepartement de geacutenie logiciel et des TI
Reacutedaction du document de vision une description concise de tout ce qui est important au
produit ou agrave lrsquoapplication eacutecrit avec un niveau de deacutetails dans un langage lisible et
compreacutehensible par les intervenants du projet
Document de 15 agrave 20 pages
GTI515 Automne 2013 JF Couturier 76
Deacutepartement de geacutenie logiciel et des TI
Exemple le cas ACS
GTI515 Automne 2013 JF Couturier 77
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 78
Deacutepartement de geacutenie logiciel et des TI
Exemple de problegravemesle cas ACS
Controcircle drsquoune large gamme de mateacuteriels
Utilisation compliqueacutee Difficulteacutes de programmation Disponibiliteacute du mateacuteriel Risque de mauvaise utilisation
GTI515 Automne 2013 JF Couturier 79
Deacutepartement de geacutenie logiciel et des TI
Exemple de besoinsle cas ACS
AutomatiserLa distribution de fertilisantLa distribution de nourritureLa dureacutee de lrsquoeacuteclairage
Commander lrsquoopeacuteration des appareils Reacuteguler
le niveau et la dureteacute de lrsquoeauLa tempeacuterature
GTI515 Automne 2013 JF Couturier 80
Deacutepartement de geacutenie logiciel et des TI
Exemple de caracteacuteristiquesle cas ACS
Deacutemarrage automatique du systegraveme Programmation conserveacutee en cas de
panne drsquoalimentation Deacutetection automatique des modules Facile agrave programmer et agrave utiliser
Exigence non fonctionnelle
GTI515 Automne 2013 JF Couturier 81
Deacutepartement de geacutenie logiciel et des TI
Critegraveres drsquoeacutevaluation
Respect de lrsquoesprit du document
En tant qursquointervenant externe est-ce que je comprends bien
Respect de la forme du gabarit
Qualiteacute du franccedilais
Document de calibre professionnel que lrsquoon pourrait remettre agrave un dirigeant
GTI515 Automne 2013 JF Couturier 82
Deacutepartement de geacutenie logiciel et des TI
Grille drsquoeacutevaluation (sur 100)
Agrave venirhellip
GTI515 Automne 2013 JF Couturier 83
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 84
Prochain cours
La modeacutelisation des processus drsquoaffaires Le diagramme drsquoactiviteacute Le diagnostic des processus drsquoaffaires existant
Lectures Lrsquoutilisation drsquoUML Chapitre sur les diagrammes drsquoactiviteacutes dans Larman Lecture sur MDA Voir site Web du cours
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 85
Questions
- Systegravemes drsquoinformation dans les entreprises (GTI515)
- Plan du cours 1
- Qui suis-je JF Couturier
- Qui suis-je Eacutetudiant(e)
- Plan du cours 1 (2)
- Objectifs du programme
- Ingeacutenieur
- Programme GTI
- Geacutenie des TI
- Cours de speacutecialiteacutes GTI
- Objectif du cours
- Vue drsquoensemble du cours
- Lectures et reacutefeacuterences
- Regravegles du jeu
- QUIZ
- Plan du cours 1 (3)
- Plan de cours
- Laboratoires ndash GTI515
- Peacutenaliteacutes de retard
- Plagiat
- Plan du cours 1 (4)
- Les tendances dans le deacuteveloppement des systegravemes drsquoinformation
- UML - Historique
- Pourquoi modeacuteliser
- La modeacutelisation dans les entreprises
- Quelques chiffres
- Quelques chiffres (2)
- Quelques chiffres (3)
- Quelques chiffres (4)
- Quelques chiffres (5)
- Et maintenant
- Et maintenant (2)
- Finalementhellip
- Reacuteussite Eacutechec
- Rappel
- Industrialisation
- Industrialisation (2)
- Slide 39
- Slide 40
- Usines logicielles (S Factory)
- Usines logicielles (S Factory) (2)
- Usines logicielles (S Factory) (3)
- Usines logicielles (S Factory) (4)
- Usines logicielles
- Domain Specific Langage
- BuzzhellipMDA MDD MDE
- Exemple
- Model Driven Architecture
- Model Driven Architecture (2)
- Model Driven Architecture (3)
- Model Driven Architecture (4)
- Model Driven Architecture (5)
- Concept principal de MDA
- CIM PIM PSM Code
- Les diffeacuterentes eacutetapes
- MDA et Gartner
- Eacutetude de cas
- Impact
- Impact (2)
- Impact (3)
- Slide 63
- Slide 64
- Slide 65
- Exemple (2)
- Ressources
- Laboratoire 1
- Le document de vision (RUP)
- Slide 70
- Exemples de caracteacuteristiques (feature)
- Niveau de deacutetail des caracteacuteristiques
- Attributs des caracteacuteristiques
- Attributs des caracteacuteristiques
- Slide 75
- Reacutedaction du document de vision
- Exemple le cas ACS
- Slide 78
- Exemple de problegravemes le cas ACS
- Exemple de besoins le cas ACS
- Exemple de caracteacuteristiques le cas ACS
- Critegraveres drsquoeacutevaluation
- Grille drsquoeacutevaluation (sur 100)
- Prochain cours
- Questions
-
Deacutepartement de geacutenie logiciel et des TI
Eacutetude de cas
Lecture de la discussion sur MDA Questions
Quels sont les arguments pour
Quels sont les arguments contre
Vos commentaires sur lrsquoarticle
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 59
Deacutepartement de geacutenie logiciel et des TI
Impact
Rocircle du deacuteveloppeur minimiseacute puisqursquoil nrsquointerpregravete plus le modegravele les regravegles de transformation srsquoen chargent
Modegraveles exportables drsquoune plateforme agrave un autre
Plus de 100 articles de recherche sur IEEE entre 2008 et 2009
Maishellip
GTI515 Automne 2013 JF Couturier 60
Deacutepartement de geacutenie logiciel et des TI
Impact
Est-ce applicable au monde agile
Le cycle de modeacutelisation est-il compatible avec le deacuteveloppement iteacuteratif
Est-ce qursquoil y a suffisamment de ressources hautement qualifieacutees pour reacutealiser ce type de projet
Pouvez-vous les former Pouvez-vous les conserver
Produire 80 du code et vous laisser les derniers 20 plus difficileshellip
Comment inteacutegrer les tests
GTI515 Automne 2013 JF Couturier 61
Scott Ambler Enterprise Unified Process p 191
Deacutepartement de geacutenie logiciel et des TI
Impact
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 62
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 63
Domaine
Exigences
Analyse
Conception
Reacutealisation
MDA
PIM
PSM
Modegravele des Processus drsquoaffaires
Modegravele drsquoanalyse du systegraveme
CIM
Modegravele des Cas drsquoutilisation
Modegravele de conception du systegraveme
Les modegraveles du cycle de deacuteveloppement de logiciels
Code
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 64
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 65
Deacutepartement de geacutenie logiciel et des TI
Exemple
GTI515 Automne 2013 JF Couturier 66
httpwwwibmcomdeveloperworksrationallibrary3100html
Deacutepartement de geacutenie logiciel et des TI
Ressources
Site de lOMG MDA Article drsquoIBM sur MDA Discussion sur MDA Wiki MDA Wiki QVT
GTI515 Automne 2013 JF Couturier 67
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 68
Laboratoire 1
Choix du sujet Validation de la porteacutee
Suffisamment long Plusieurs interactions humaines machines Reacutealisable dans une session
Chargeacute de laboratoire Oleg Litvinski Premier laboratoire lundi 7 mai
Deacutepartement de geacutenie logiciel et des TI
Le document de vision (RUP)
Une base de discussion et drsquoaccord parmi les intervenants du projet
Une description de lrsquoapplication en geacuteneacuteral incluant la description du marcheacute cible les clients les utilisateurs du systegraveme les problegravemes agrave reacutesoudre et les caracteacuteristiques de lrsquoapplication
GTI515 Automne 2013 JF Couturier 69
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 70
Requirements Management with Use Cases v20010300
Copyright copy 1998 2001 Rational Software all rights reserved
2
Problem
Solution Space
Problem Space
Needs
Features
SoftwareRequirements
Test Procedures Design User
Docs
The The Product Product To Be To Be BuiltBuilt
Traceability
Deacutepartement de geacutenie logiciel et des TI
Exemples de caracteacuteristiques (feature)
Domaine drsquoapplication Exemple de caracteacuteristique
Systegraveme de commande drsquoascenseur
Commande manuelle des portes durant une urgence de feu
Systegraveme de commande drsquoinventaire
Fournir un statut reacutecent de tous les items reacutepertorieacutes
Systegraveme de suivi de deacutefauts Fournir des laquo donneacutees raquo sur les tendances pour eacutevaluer la
qualiteacute
Systegraveme de paie Rapports par cateacutegories des deacuteductions remis agrave lrsquoimpocirct
Systegraveme de commande drsquoarmes
Minimum de deux confirmations indeacutependantes drsquoautorisation
drsquoattaque exigeacutee
GTI515 Automne 2013 JF Couturier 71
Deacutepartement de geacutenie logiciel et des TI
Niveau de deacutetail des caracteacuteristiques Pour tout nouveau systegraveme ou pour
une ameacutelioration majeure agrave un systegraveme existant il est recommandeacute de garder un niveau drsquoabstraction assez eacuteleveacute de sorte agrave avoir un maximum de caracteacuteristiques compris entre 25-99 et de preacutefeacuterence moins de 50
GTI515 Automne 2013 JF Couturier 72
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Statut Suit le progregraves
Exemples Proposeacute approuveacute incorporeacute etc
PrioriteacuteBeacuteneacutefice
Les caracteacuteristiques ne sont pas agrave prioriteacutes eacutegales ou geacutenegraverent des beacuteneacutefices eacutegaux
Exemple critiques importantes optionnelle
Effort Estimation du nombre de personnessemaines lignes de code points de fonction COSMIC_FFP
Risque La probabiliteacute que la caracteacuteristique aille causer un eacuteveacutenement indeacutesirable tel que le deacutepassement du budget ou des deacutelais ou mecircme lrsquoannulation du projet
GTI515 Automne 2013 JF Couturier 73
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Stabiliteacute La probabiliteacute que la caracteacuteristique elle-mecircme ou sa compreacutehension par lrsquoeacutequipe de deacuteveloppement changera
Mise en application
Documenter la version preacutevue pour laquelle la caracteacuteristique sera incorporeacutee
Assigneacutee agrave Deacutesigner lrsquoeacutequipe responsable de la caracteacuteristique
Raison Lrsquoorigine de la requecircte de la caracteacuteristique
GTI515 Automne 2013 JF Couturier 74
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 75
Deacutepartement de geacutenie logiciel et des TI
Reacutedaction du document de vision une description concise de tout ce qui est important au
produit ou agrave lrsquoapplication eacutecrit avec un niveau de deacutetails dans un langage lisible et
compreacutehensible par les intervenants du projet
Document de 15 agrave 20 pages
GTI515 Automne 2013 JF Couturier 76
Deacutepartement de geacutenie logiciel et des TI
Exemple le cas ACS
GTI515 Automne 2013 JF Couturier 77
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 78
Deacutepartement de geacutenie logiciel et des TI
Exemple de problegravemesle cas ACS
Controcircle drsquoune large gamme de mateacuteriels
Utilisation compliqueacutee Difficulteacutes de programmation Disponibiliteacute du mateacuteriel Risque de mauvaise utilisation
GTI515 Automne 2013 JF Couturier 79
Deacutepartement de geacutenie logiciel et des TI
Exemple de besoinsle cas ACS
AutomatiserLa distribution de fertilisantLa distribution de nourritureLa dureacutee de lrsquoeacuteclairage
Commander lrsquoopeacuteration des appareils Reacuteguler
le niveau et la dureteacute de lrsquoeauLa tempeacuterature
GTI515 Automne 2013 JF Couturier 80
Deacutepartement de geacutenie logiciel et des TI
Exemple de caracteacuteristiquesle cas ACS
Deacutemarrage automatique du systegraveme Programmation conserveacutee en cas de
panne drsquoalimentation Deacutetection automatique des modules Facile agrave programmer et agrave utiliser
Exigence non fonctionnelle
GTI515 Automne 2013 JF Couturier 81
Deacutepartement de geacutenie logiciel et des TI
Critegraveres drsquoeacutevaluation
Respect de lrsquoesprit du document
En tant qursquointervenant externe est-ce que je comprends bien
Respect de la forme du gabarit
Qualiteacute du franccedilais
Document de calibre professionnel que lrsquoon pourrait remettre agrave un dirigeant
GTI515 Automne 2013 JF Couturier 82
Deacutepartement de geacutenie logiciel et des TI
Grille drsquoeacutevaluation (sur 100)
Agrave venirhellip
GTI515 Automne 2013 JF Couturier 83
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 84
Prochain cours
La modeacutelisation des processus drsquoaffaires Le diagramme drsquoactiviteacute Le diagnostic des processus drsquoaffaires existant
Lectures Lrsquoutilisation drsquoUML Chapitre sur les diagrammes drsquoactiviteacutes dans Larman Lecture sur MDA Voir site Web du cours
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 85
Questions
- Systegravemes drsquoinformation dans les entreprises (GTI515)
- Plan du cours 1
- Qui suis-je JF Couturier
- Qui suis-je Eacutetudiant(e)
- Plan du cours 1 (2)
- Objectifs du programme
- Ingeacutenieur
- Programme GTI
- Geacutenie des TI
- Cours de speacutecialiteacutes GTI
- Objectif du cours
- Vue drsquoensemble du cours
- Lectures et reacutefeacuterences
- Regravegles du jeu
- QUIZ
- Plan du cours 1 (3)
- Plan de cours
- Laboratoires ndash GTI515
- Peacutenaliteacutes de retard
- Plagiat
- Plan du cours 1 (4)
- Les tendances dans le deacuteveloppement des systegravemes drsquoinformation
- UML - Historique
- Pourquoi modeacuteliser
- La modeacutelisation dans les entreprises
- Quelques chiffres
- Quelques chiffres (2)
- Quelques chiffres (3)
- Quelques chiffres (4)
- Quelques chiffres (5)
- Et maintenant
- Et maintenant (2)
- Finalementhellip
- Reacuteussite Eacutechec
- Rappel
- Industrialisation
- Industrialisation (2)
- Slide 39
- Slide 40
- Usines logicielles (S Factory)
- Usines logicielles (S Factory) (2)
- Usines logicielles (S Factory) (3)
- Usines logicielles (S Factory) (4)
- Usines logicielles
- Domain Specific Langage
- BuzzhellipMDA MDD MDE
- Exemple
- Model Driven Architecture
- Model Driven Architecture (2)
- Model Driven Architecture (3)
- Model Driven Architecture (4)
- Model Driven Architecture (5)
- Concept principal de MDA
- CIM PIM PSM Code
- Les diffeacuterentes eacutetapes
- MDA et Gartner
- Eacutetude de cas
- Impact
- Impact (2)
- Impact (3)
- Slide 63
- Slide 64
- Slide 65
- Exemple (2)
- Ressources
- Laboratoire 1
- Le document de vision (RUP)
- Slide 70
- Exemples de caracteacuteristiques (feature)
- Niveau de deacutetail des caracteacuteristiques
- Attributs des caracteacuteristiques
- Attributs des caracteacuteristiques
- Slide 75
- Reacutedaction du document de vision
- Exemple le cas ACS
- Slide 78
- Exemple de problegravemes le cas ACS
- Exemple de besoins le cas ACS
- Exemple de caracteacuteristiques le cas ACS
- Critegraveres drsquoeacutevaluation
- Grille drsquoeacutevaluation (sur 100)
- Prochain cours
- Questions
-
Deacutepartement de geacutenie logiciel et des TI
Impact
Rocircle du deacuteveloppeur minimiseacute puisqursquoil nrsquointerpregravete plus le modegravele les regravegles de transformation srsquoen chargent
Modegraveles exportables drsquoune plateforme agrave un autre
Plus de 100 articles de recherche sur IEEE entre 2008 et 2009
Maishellip
GTI515 Automne 2013 JF Couturier 60
Deacutepartement de geacutenie logiciel et des TI
Impact
Est-ce applicable au monde agile
Le cycle de modeacutelisation est-il compatible avec le deacuteveloppement iteacuteratif
Est-ce qursquoil y a suffisamment de ressources hautement qualifieacutees pour reacutealiser ce type de projet
Pouvez-vous les former Pouvez-vous les conserver
Produire 80 du code et vous laisser les derniers 20 plus difficileshellip
Comment inteacutegrer les tests
GTI515 Automne 2013 JF Couturier 61
Scott Ambler Enterprise Unified Process p 191
Deacutepartement de geacutenie logiciel et des TI
Impact
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 62
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 63
Domaine
Exigences
Analyse
Conception
Reacutealisation
MDA
PIM
PSM
Modegravele des Processus drsquoaffaires
Modegravele drsquoanalyse du systegraveme
CIM
Modegravele des Cas drsquoutilisation
Modegravele de conception du systegraveme
Les modegraveles du cycle de deacuteveloppement de logiciels
Code
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 64
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 65
Deacutepartement de geacutenie logiciel et des TI
Exemple
GTI515 Automne 2013 JF Couturier 66
httpwwwibmcomdeveloperworksrationallibrary3100html
Deacutepartement de geacutenie logiciel et des TI
Ressources
Site de lOMG MDA Article drsquoIBM sur MDA Discussion sur MDA Wiki MDA Wiki QVT
GTI515 Automne 2013 JF Couturier 67
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 68
Laboratoire 1
Choix du sujet Validation de la porteacutee
Suffisamment long Plusieurs interactions humaines machines Reacutealisable dans une session
Chargeacute de laboratoire Oleg Litvinski Premier laboratoire lundi 7 mai
Deacutepartement de geacutenie logiciel et des TI
Le document de vision (RUP)
Une base de discussion et drsquoaccord parmi les intervenants du projet
Une description de lrsquoapplication en geacuteneacuteral incluant la description du marcheacute cible les clients les utilisateurs du systegraveme les problegravemes agrave reacutesoudre et les caracteacuteristiques de lrsquoapplication
GTI515 Automne 2013 JF Couturier 69
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 70
Requirements Management with Use Cases v20010300
Copyright copy 1998 2001 Rational Software all rights reserved
2
Problem
Solution Space
Problem Space
Needs
Features
SoftwareRequirements
Test Procedures Design User
Docs
The The Product Product To Be To Be BuiltBuilt
Traceability
Deacutepartement de geacutenie logiciel et des TI
Exemples de caracteacuteristiques (feature)
Domaine drsquoapplication Exemple de caracteacuteristique
Systegraveme de commande drsquoascenseur
Commande manuelle des portes durant une urgence de feu
Systegraveme de commande drsquoinventaire
Fournir un statut reacutecent de tous les items reacutepertorieacutes
Systegraveme de suivi de deacutefauts Fournir des laquo donneacutees raquo sur les tendances pour eacutevaluer la
qualiteacute
Systegraveme de paie Rapports par cateacutegories des deacuteductions remis agrave lrsquoimpocirct
Systegraveme de commande drsquoarmes
Minimum de deux confirmations indeacutependantes drsquoautorisation
drsquoattaque exigeacutee
GTI515 Automne 2013 JF Couturier 71
Deacutepartement de geacutenie logiciel et des TI
Niveau de deacutetail des caracteacuteristiques Pour tout nouveau systegraveme ou pour
une ameacutelioration majeure agrave un systegraveme existant il est recommandeacute de garder un niveau drsquoabstraction assez eacuteleveacute de sorte agrave avoir un maximum de caracteacuteristiques compris entre 25-99 et de preacutefeacuterence moins de 50
GTI515 Automne 2013 JF Couturier 72
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Statut Suit le progregraves
Exemples Proposeacute approuveacute incorporeacute etc
PrioriteacuteBeacuteneacutefice
Les caracteacuteristiques ne sont pas agrave prioriteacutes eacutegales ou geacutenegraverent des beacuteneacutefices eacutegaux
Exemple critiques importantes optionnelle
Effort Estimation du nombre de personnessemaines lignes de code points de fonction COSMIC_FFP
Risque La probabiliteacute que la caracteacuteristique aille causer un eacuteveacutenement indeacutesirable tel que le deacutepassement du budget ou des deacutelais ou mecircme lrsquoannulation du projet
GTI515 Automne 2013 JF Couturier 73
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Stabiliteacute La probabiliteacute que la caracteacuteristique elle-mecircme ou sa compreacutehension par lrsquoeacutequipe de deacuteveloppement changera
Mise en application
Documenter la version preacutevue pour laquelle la caracteacuteristique sera incorporeacutee
Assigneacutee agrave Deacutesigner lrsquoeacutequipe responsable de la caracteacuteristique
Raison Lrsquoorigine de la requecircte de la caracteacuteristique
GTI515 Automne 2013 JF Couturier 74
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 75
Deacutepartement de geacutenie logiciel et des TI
Reacutedaction du document de vision une description concise de tout ce qui est important au
produit ou agrave lrsquoapplication eacutecrit avec un niveau de deacutetails dans un langage lisible et
compreacutehensible par les intervenants du projet
Document de 15 agrave 20 pages
GTI515 Automne 2013 JF Couturier 76
Deacutepartement de geacutenie logiciel et des TI
Exemple le cas ACS
GTI515 Automne 2013 JF Couturier 77
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 78
Deacutepartement de geacutenie logiciel et des TI
Exemple de problegravemesle cas ACS
Controcircle drsquoune large gamme de mateacuteriels
Utilisation compliqueacutee Difficulteacutes de programmation Disponibiliteacute du mateacuteriel Risque de mauvaise utilisation
GTI515 Automne 2013 JF Couturier 79
Deacutepartement de geacutenie logiciel et des TI
Exemple de besoinsle cas ACS
AutomatiserLa distribution de fertilisantLa distribution de nourritureLa dureacutee de lrsquoeacuteclairage
Commander lrsquoopeacuteration des appareils Reacuteguler
le niveau et la dureteacute de lrsquoeauLa tempeacuterature
GTI515 Automne 2013 JF Couturier 80
Deacutepartement de geacutenie logiciel et des TI
Exemple de caracteacuteristiquesle cas ACS
Deacutemarrage automatique du systegraveme Programmation conserveacutee en cas de
panne drsquoalimentation Deacutetection automatique des modules Facile agrave programmer et agrave utiliser
Exigence non fonctionnelle
GTI515 Automne 2013 JF Couturier 81
Deacutepartement de geacutenie logiciel et des TI
Critegraveres drsquoeacutevaluation
Respect de lrsquoesprit du document
En tant qursquointervenant externe est-ce que je comprends bien
Respect de la forme du gabarit
Qualiteacute du franccedilais
Document de calibre professionnel que lrsquoon pourrait remettre agrave un dirigeant
GTI515 Automne 2013 JF Couturier 82
Deacutepartement de geacutenie logiciel et des TI
Grille drsquoeacutevaluation (sur 100)
Agrave venirhellip
GTI515 Automne 2013 JF Couturier 83
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 84
Prochain cours
La modeacutelisation des processus drsquoaffaires Le diagramme drsquoactiviteacute Le diagnostic des processus drsquoaffaires existant
Lectures Lrsquoutilisation drsquoUML Chapitre sur les diagrammes drsquoactiviteacutes dans Larman Lecture sur MDA Voir site Web du cours
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 85
Questions
- Systegravemes drsquoinformation dans les entreprises (GTI515)
- Plan du cours 1
- Qui suis-je JF Couturier
- Qui suis-je Eacutetudiant(e)
- Plan du cours 1 (2)
- Objectifs du programme
- Ingeacutenieur
- Programme GTI
- Geacutenie des TI
- Cours de speacutecialiteacutes GTI
- Objectif du cours
- Vue drsquoensemble du cours
- Lectures et reacutefeacuterences
- Regravegles du jeu
- QUIZ
- Plan du cours 1 (3)
- Plan de cours
- Laboratoires ndash GTI515
- Peacutenaliteacutes de retard
- Plagiat
- Plan du cours 1 (4)
- Les tendances dans le deacuteveloppement des systegravemes drsquoinformation
- UML - Historique
- Pourquoi modeacuteliser
- La modeacutelisation dans les entreprises
- Quelques chiffres
- Quelques chiffres (2)
- Quelques chiffres (3)
- Quelques chiffres (4)
- Quelques chiffres (5)
- Et maintenant
- Et maintenant (2)
- Finalementhellip
- Reacuteussite Eacutechec
- Rappel
- Industrialisation
- Industrialisation (2)
- Slide 39
- Slide 40
- Usines logicielles (S Factory)
- Usines logicielles (S Factory) (2)
- Usines logicielles (S Factory) (3)
- Usines logicielles (S Factory) (4)
- Usines logicielles
- Domain Specific Langage
- BuzzhellipMDA MDD MDE
- Exemple
- Model Driven Architecture
- Model Driven Architecture (2)
- Model Driven Architecture (3)
- Model Driven Architecture (4)
- Model Driven Architecture (5)
- Concept principal de MDA
- CIM PIM PSM Code
- Les diffeacuterentes eacutetapes
- MDA et Gartner
- Eacutetude de cas
- Impact
- Impact (2)
- Impact (3)
- Slide 63
- Slide 64
- Slide 65
- Exemple (2)
- Ressources
- Laboratoire 1
- Le document de vision (RUP)
- Slide 70
- Exemples de caracteacuteristiques (feature)
- Niveau de deacutetail des caracteacuteristiques
- Attributs des caracteacuteristiques
- Attributs des caracteacuteristiques
- Slide 75
- Reacutedaction du document de vision
- Exemple le cas ACS
- Slide 78
- Exemple de problegravemes le cas ACS
- Exemple de besoins le cas ACS
- Exemple de caracteacuteristiques le cas ACS
- Critegraveres drsquoeacutevaluation
- Grille drsquoeacutevaluation (sur 100)
- Prochain cours
- Questions
-
Deacutepartement de geacutenie logiciel et des TI
Impact
Est-ce applicable au monde agile
Le cycle de modeacutelisation est-il compatible avec le deacuteveloppement iteacuteratif
Est-ce qursquoil y a suffisamment de ressources hautement qualifieacutees pour reacutealiser ce type de projet
Pouvez-vous les former Pouvez-vous les conserver
Produire 80 du code et vous laisser les derniers 20 plus difficileshellip
Comment inteacutegrer les tests
GTI515 Automne 2013 JF Couturier 61
Scott Ambler Enterprise Unified Process p 191
Deacutepartement de geacutenie logiciel et des TI
Impact
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 62
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 63
Domaine
Exigences
Analyse
Conception
Reacutealisation
MDA
PIM
PSM
Modegravele des Processus drsquoaffaires
Modegravele drsquoanalyse du systegraveme
CIM
Modegravele des Cas drsquoutilisation
Modegravele de conception du systegraveme
Les modegraveles du cycle de deacuteveloppement de logiciels
Code
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 64
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 65
Deacutepartement de geacutenie logiciel et des TI
Exemple
GTI515 Automne 2013 JF Couturier 66
httpwwwibmcomdeveloperworksrationallibrary3100html
Deacutepartement de geacutenie logiciel et des TI
Ressources
Site de lOMG MDA Article drsquoIBM sur MDA Discussion sur MDA Wiki MDA Wiki QVT
GTI515 Automne 2013 JF Couturier 67
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 68
Laboratoire 1
Choix du sujet Validation de la porteacutee
Suffisamment long Plusieurs interactions humaines machines Reacutealisable dans une session
Chargeacute de laboratoire Oleg Litvinski Premier laboratoire lundi 7 mai
Deacutepartement de geacutenie logiciel et des TI
Le document de vision (RUP)
Une base de discussion et drsquoaccord parmi les intervenants du projet
Une description de lrsquoapplication en geacuteneacuteral incluant la description du marcheacute cible les clients les utilisateurs du systegraveme les problegravemes agrave reacutesoudre et les caracteacuteristiques de lrsquoapplication
GTI515 Automne 2013 JF Couturier 69
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 70
Requirements Management with Use Cases v20010300
Copyright copy 1998 2001 Rational Software all rights reserved
2
Problem
Solution Space
Problem Space
Needs
Features
SoftwareRequirements
Test Procedures Design User
Docs
The The Product Product To Be To Be BuiltBuilt
Traceability
Deacutepartement de geacutenie logiciel et des TI
Exemples de caracteacuteristiques (feature)
Domaine drsquoapplication Exemple de caracteacuteristique
Systegraveme de commande drsquoascenseur
Commande manuelle des portes durant une urgence de feu
Systegraveme de commande drsquoinventaire
Fournir un statut reacutecent de tous les items reacutepertorieacutes
Systegraveme de suivi de deacutefauts Fournir des laquo donneacutees raquo sur les tendances pour eacutevaluer la
qualiteacute
Systegraveme de paie Rapports par cateacutegories des deacuteductions remis agrave lrsquoimpocirct
Systegraveme de commande drsquoarmes
Minimum de deux confirmations indeacutependantes drsquoautorisation
drsquoattaque exigeacutee
GTI515 Automne 2013 JF Couturier 71
Deacutepartement de geacutenie logiciel et des TI
Niveau de deacutetail des caracteacuteristiques Pour tout nouveau systegraveme ou pour
une ameacutelioration majeure agrave un systegraveme existant il est recommandeacute de garder un niveau drsquoabstraction assez eacuteleveacute de sorte agrave avoir un maximum de caracteacuteristiques compris entre 25-99 et de preacutefeacuterence moins de 50
GTI515 Automne 2013 JF Couturier 72
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Statut Suit le progregraves
Exemples Proposeacute approuveacute incorporeacute etc
PrioriteacuteBeacuteneacutefice
Les caracteacuteristiques ne sont pas agrave prioriteacutes eacutegales ou geacutenegraverent des beacuteneacutefices eacutegaux
Exemple critiques importantes optionnelle
Effort Estimation du nombre de personnessemaines lignes de code points de fonction COSMIC_FFP
Risque La probabiliteacute que la caracteacuteristique aille causer un eacuteveacutenement indeacutesirable tel que le deacutepassement du budget ou des deacutelais ou mecircme lrsquoannulation du projet
GTI515 Automne 2013 JF Couturier 73
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Stabiliteacute La probabiliteacute que la caracteacuteristique elle-mecircme ou sa compreacutehension par lrsquoeacutequipe de deacuteveloppement changera
Mise en application
Documenter la version preacutevue pour laquelle la caracteacuteristique sera incorporeacutee
Assigneacutee agrave Deacutesigner lrsquoeacutequipe responsable de la caracteacuteristique
Raison Lrsquoorigine de la requecircte de la caracteacuteristique
GTI515 Automne 2013 JF Couturier 74
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 75
Deacutepartement de geacutenie logiciel et des TI
Reacutedaction du document de vision une description concise de tout ce qui est important au
produit ou agrave lrsquoapplication eacutecrit avec un niveau de deacutetails dans un langage lisible et
compreacutehensible par les intervenants du projet
Document de 15 agrave 20 pages
GTI515 Automne 2013 JF Couturier 76
Deacutepartement de geacutenie logiciel et des TI
Exemple le cas ACS
GTI515 Automne 2013 JF Couturier 77
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 78
Deacutepartement de geacutenie logiciel et des TI
Exemple de problegravemesle cas ACS
Controcircle drsquoune large gamme de mateacuteriels
Utilisation compliqueacutee Difficulteacutes de programmation Disponibiliteacute du mateacuteriel Risque de mauvaise utilisation
GTI515 Automne 2013 JF Couturier 79
Deacutepartement de geacutenie logiciel et des TI
Exemple de besoinsle cas ACS
AutomatiserLa distribution de fertilisantLa distribution de nourritureLa dureacutee de lrsquoeacuteclairage
Commander lrsquoopeacuteration des appareils Reacuteguler
le niveau et la dureteacute de lrsquoeauLa tempeacuterature
GTI515 Automne 2013 JF Couturier 80
Deacutepartement de geacutenie logiciel et des TI
Exemple de caracteacuteristiquesle cas ACS
Deacutemarrage automatique du systegraveme Programmation conserveacutee en cas de
panne drsquoalimentation Deacutetection automatique des modules Facile agrave programmer et agrave utiliser
Exigence non fonctionnelle
GTI515 Automne 2013 JF Couturier 81
Deacutepartement de geacutenie logiciel et des TI
Critegraveres drsquoeacutevaluation
Respect de lrsquoesprit du document
En tant qursquointervenant externe est-ce que je comprends bien
Respect de la forme du gabarit
Qualiteacute du franccedilais
Document de calibre professionnel que lrsquoon pourrait remettre agrave un dirigeant
GTI515 Automne 2013 JF Couturier 82
Deacutepartement de geacutenie logiciel et des TI
Grille drsquoeacutevaluation (sur 100)
Agrave venirhellip
GTI515 Automne 2013 JF Couturier 83
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 84
Prochain cours
La modeacutelisation des processus drsquoaffaires Le diagramme drsquoactiviteacute Le diagnostic des processus drsquoaffaires existant
Lectures Lrsquoutilisation drsquoUML Chapitre sur les diagrammes drsquoactiviteacutes dans Larman Lecture sur MDA Voir site Web du cours
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 85
Questions
- Systegravemes drsquoinformation dans les entreprises (GTI515)
- Plan du cours 1
- Qui suis-je JF Couturier
- Qui suis-je Eacutetudiant(e)
- Plan du cours 1 (2)
- Objectifs du programme
- Ingeacutenieur
- Programme GTI
- Geacutenie des TI
- Cours de speacutecialiteacutes GTI
- Objectif du cours
- Vue drsquoensemble du cours
- Lectures et reacutefeacuterences
- Regravegles du jeu
- QUIZ
- Plan du cours 1 (3)
- Plan de cours
- Laboratoires ndash GTI515
- Peacutenaliteacutes de retard
- Plagiat
- Plan du cours 1 (4)
- Les tendances dans le deacuteveloppement des systegravemes drsquoinformation
- UML - Historique
- Pourquoi modeacuteliser
- La modeacutelisation dans les entreprises
- Quelques chiffres
- Quelques chiffres (2)
- Quelques chiffres (3)
- Quelques chiffres (4)
- Quelques chiffres (5)
- Et maintenant
- Et maintenant (2)
- Finalementhellip
- Reacuteussite Eacutechec
- Rappel
- Industrialisation
- Industrialisation (2)
- Slide 39
- Slide 40
- Usines logicielles (S Factory)
- Usines logicielles (S Factory) (2)
- Usines logicielles (S Factory) (3)
- Usines logicielles (S Factory) (4)
- Usines logicielles
- Domain Specific Langage
- BuzzhellipMDA MDD MDE
- Exemple
- Model Driven Architecture
- Model Driven Architecture (2)
- Model Driven Architecture (3)
- Model Driven Architecture (4)
- Model Driven Architecture (5)
- Concept principal de MDA
- CIM PIM PSM Code
- Les diffeacuterentes eacutetapes
- MDA et Gartner
- Eacutetude de cas
- Impact
- Impact (2)
- Impact (3)
- Slide 63
- Slide 64
- Slide 65
- Exemple (2)
- Ressources
- Laboratoire 1
- Le document de vision (RUP)
- Slide 70
- Exemples de caracteacuteristiques (feature)
- Niveau de deacutetail des caracteacuteristiques
- Attributs des caracteacuteristiques
- Attributs des caracteacuteristiques
- Slide 75
- Reacutedaction du document de vision
- Exemple le cas ACS
- Slide 78
- Exemple de problegravemes le cas ACS
- Exemple de besoins le cas ACS
- Exemple de caracteacuteristiques le cas ACS
- Critegraveres drsquoeacutevaluation
- Grille drsquoeacutevaluation (sur 100)
- Prochain cours
- Questions
-
Deacutepartement de geacutenie logiciel et des TI
Impact
Quelle est votre opinion en rapport avec votre propre expeacuterience de travail
GTI515 Automne 2013 JF Couturier 62
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 63
Domaine
Exigences
Analyse
Conception
Reacutealisation
MDA
PIM
PSM
Modegravele des Processus drsquoaffaires
Modegravele drsquoanalyse du systegraveme
CIM
Modegravele des Cas drsquoutilisation
Modegravele de conception du systegraveme
Les modegraveles du cycle de deacuteveloppement de logiciels
Code
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 64
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 65
Deacutepartement de geacutenie logiciel et des TI
Exemple
GTI515 Automne 2013 JF Couturier 66
httpwwwibmcomdeveloperworksrationallibrary3100html
Deacutepartement de geacutenie logiciel et des TI
Ressources
Site de lOMG MDA Article drsquoIBM sur MDA Discussion sur MDA Wiki MDA Wiki QVT
GTI515 Automne 2013 JF Couturier 67
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 68
Laboratoire 1
Choix du sujet Validation de la porteacutee
Suffisamment long Plusieurs interactions humaines machines Reacutealisable dans une session
Chargeacute de laboratoire Oleg Litvinski Premier laboratoire lundi 7 mai
Deacutepartement de geacutenie logiciel et des TI
Le document de vision (RUP)
Une base de discussion et drsquoaccord parmi les intervenants du projet
Une description de lrsquoapplication en geacuteneacuteral incluant la description du marcheacute cible les clients les utilisateurs du systegraveme les problegravemes agrave reacutesoudre et les caracteacuteristiques de lrsquoapplication
GTI515 Automne 2013 JF Couturier 69
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 70
Requirements Management with Use Cases v20010300
Copyright copy 1998 2001 Rational Software all rights reserved
2
Problem
Solution Space
Problem Space
Needs
Features
SoftwareRequirements
Test Procedures Design User
Docs
The The Product Product To Be To Be BuiltBuilt
Traceability
Deacutepartement de geacutenie logiciel et des TI
Exemples de caracteacuteristiques (feature)
Domaine drsquoapplication Exemple de caracteacuteristique
Systegraveme de commande drsquoascenseur
Commande manuelle des portes durant une urgence de feu
Systegraveme de commande drsquoinventaire
Fournir un statut reacutecent de tous les items reacutepertorieacutes
Systegraveme de suivi de deacutefauts Fournir des laquo donneacutees raquo sur les tendances pour eacutevaluer la
qualiteacute
Systegraveme de paie Rapports par cateacutegories des deacuteductions remis agrave lrsquoimpocirct
Systegraveme de commande drsquoarmes
Minimum de deux confirmations indeacutependantes drsquoautorisation
drsquoattaque exigeacutee
GTI515 Automne 2013 JF Couturier 71
Deacutepartement de geacutenie logiciel et des TI
Niveau de deacutetail des caracteacuteristiques Pour tout nouveau systegraveme ou pour
une ameacutelioration majeure agrave un systegraveme existant il est recommandeacute de garder un niveau drsquoabstraction assez eacuteleveacute de sorte agrave avoir un maximum de caracteacuteristiques compris entre 25-99 et de preacutefeacuterence moins de 50
GTI515 Automne 2013 JF Couturier 72
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Statut Suit le progregraves
Exemples Proposeacute approuveacute incorporeacute etc
PrioriteacuteBeacuteneacutefice
Les caracteacuteristiques ne sont pas agrave prioriteacutes eacutegales ou geacutenegraverent des beacuteneacutefices eacutegaux
Exemple critiques importantes optionnelle
Effort Estimation du nombre de personnessemaines lignes de code points de fonction COSMIC_FFP
Risque La probabiliteacute que la caracteacuteristique aille causer un eacuteveacutenement indeacutesirable tel que le deacutepassement du budget ou des deacutelais ou mecircme lrsquoannulation du projet
GTI515 Automne 2013 JF Couturier 73
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Stabiliteacute La probabiliteacute que la caracteacuteristique elle-mecircme ou sa compreacutehension par lrsquoeacutequipe de deacuteveloppement changera
Mise en application
Documenter la version preacutevue pour laquelle la caracteacuteristique sera incorporeacutee
Assigneacutee agrave Deacutesigner lrsquoeacutequipe responsable de la caracteacuteristique
Raison Lrsquoorigine de la requecircte de la caracteacuteristique
GTI515 Automne 2013 JF Couturier 74
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 75
Deacutepartement de geacutenie logiciel et des TI
Reacutedaction du document de vision une description concise de tout ce qui est important au
produit ou agrave lrsquoapplication eacutecrit avec un niveau de deacutetails dans un langage lisible et
compreacutehensible par les intervenants du projet
Document de 15 agrave 20 pages
GTI515 Automne 2013 JF Couturier 76
Deacutepartement de geacutenie logiciel et des TI
Exemple le cas ACS
GTI515 Automne 2013 JF Couturier 77
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 78
Deacutepartement de geacutenie logiciel et des TI
Exemple de problegravemesle cas ACS
Controcircle drsquoune large gamme de mateacuteriels
Utilisation compliqueacutee Difficulteacutes de programmation Disponibiliteacute du mateacuteriel Risque de mauvaise utilisation
GTI515 Automne 2013 JF Couturier 79
Deacutepartement de geacutenie logiciel et des TI
Exemple de besoinsle cas ACS
AutomatiserLa distribution de fertilisantLa distribution de nourritureLa dureacutee de lrsquoeacuteclairage
Commander lrsquoopeacuteration des appareils Reacuteguler
le niveau et la dureteacute de lrsquoeauLa tempeacuterature
GTI515 Automne 2013 JF Couturier 80
Deacutepartement de geacutenie logiciel et des TI
Exemple de caracteacuteristiquesle cas ACS
Deacutemarrage automatique du systegraveme Programmation conserveacutee en cas de
panne drsquoalimentation Deacutetection automatique des modules Facile agrave programmer et agrave utiliser
Exigence non fonctionnelle
GTI515 Automne 2013 JF Couturier 81
Deacutepartement de geacutenie logiciel et des TI
Critegraveres drsquoeacutevaluation
Respect de lrsquoesprit du document
En tant qursquointervenant externe est-ce que je comprends bien
Respect de la forme du gabarit
Qualiteacute du franccedilais
Document de calibre professionnel que lrsquoon pourrait remettre agrave un dirigeant
GTI515 Automne 2013 JF Couturier 82
Deacutepartement de geacutenie logiciel et des TI
Grille drsquoeacutevaluation (sur 100)
Agrave venirhellip
GTI515 Automne 2013 JF Couturier 83
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 84
Prochain cours
La modeacutelisation des processus drsquoaffaires Le diagramme drsquoactiviteacute Le diagnostic des processus drsquoaffaires existant
Lectures Lrsquoutilisation drsquoUML Chapitre sur les diagrammes drsquoactiviteacutes dans Larman Lecture sur MDA Voir site Web du cours
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 85
Questions
- Systegravemes drsquoinformation dans les entreprises (GTI515)
- Plan du cours 1
- Qui suis-je JF Couturier
- Qui suis-je Eacutetudiant(e)
- Plan du cours 1 (2)
- Objectifs du programme
- Ingeacutenieur
- Programme GTI
- Geacutenie des TI
- Cours de speacutecialiteacutes GTI
- Objectif du cours
- Vue drsquoensemble du cours
- Lectures et reacutefeacuterences
- Regravegles du jeu
- QUIZ
- Plan du cours 1 (3)
- Plan de cours
- Laboratoires ndash GTI515
- Peacutenaliteacutes de retard
- Plagiat
- Plan du cours 1 (4)
- Les tendances dans le deacuteveloppement des systegravemes drsquoinformation
- UML - Historique
- Pourquoi modeacuteliser
- La modeacutelisation dans les entreprises
- Quelques chiffres
- Quelques chiffres (2)
- Quelques chiffres (3)
- Quelques chiffres (4)
- Quelques chiffres (5)
- Et maintenant
- Et maintenant (2)
- Finalementhellip
- Reacuteussite Eacutechec
- Rappel
- Industrialisation
- Industrialisation (2)
- Slide 39
- Slide 40
- Usines logicielles (S Factory)
- Usines logicielles (S Factory) (2)
- Usines logicielles (S Factory) (3)
- Usines logicielles (S Factory) (4)
- Usines logicielles
- Domain Specific Langage
- BuzzhellipMDA MDD MDE
- Exemple
- Model Driven Architecture
- Model Driven Architecture (2)
- Model Driven Architecture (3)
- Model Driven Architecture (4)
- Model Driven Architecture (5)
- Concept principal de MDA
- CIM PIM PSM Code
- Les diffeacuterentes eacutetapes
- MDA et Gartner
- Eacutetude de cas
- Impact
- Impact (2)
- Impact (3)
- Slide 63
- Slide 64
- Slide 65
- Exemple (2)
- Ressources
- Laboratoire 1
- Le document de vision (RUP)
- Slide 70
- Exemples de caracteacuteristiques (feature)
- Niveau de deacutetail des caracteacuteristiques
- Attributs des caracteacuteristiques
- Attributs des caracteacuteristiques
- Slide 75
- Reacutedaction du document de vision
- Exemple le cas ACS
- Slide 78
- Exemple de problegravemes le cas ACS
- Exemple de besoins le cas ACS
- Exemple de caracteacuteristiques le cas ACS
- Critegraveres drsquoeacutevaluation
- Grille drsquoeacutevaluation (sur 100)
- Prochain cours
- Questions
-
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 63
Domaine
Exigences
Analyse
Conception
Reacutealisation
MDA
PIM
PSM
Modegravele des Processus drsquoaffaires
Modegravele drsquoanalyse du systegraveme
CIM
Modegravele des Cas drsquoutilisation
Modegravele de conception du systegraveme
Les modegraveles du cycle de deacuteveloppement de logiciels
Code
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 64
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 65
Deacutepartement de geacutenie logiciel et des TI
Exemple
GTI515 Automne 2013 JF Couturier 66
httpwwwibmcomdeveloperworksrationallibrary3100html
Deacutepartement de geacutenie logiciel et des TI
Ressources
Site de lOMG MDA Article drsquoIBM sur MDA Discussion sur MDA Wiki MDA Wiki QVT
GTI515 Automne 2013 JF Couturier 67
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 68
Laboratoire 1
Choix du sujet Validation de la porteacutee
Suffisamment long Plusieurs interactions humaines machines Reacutealisable dans une session
Chargeacute de laboratoire Oleg Litvinski Premier laboratoire lundi 7 mai
Deacutepartement de geacutenie logiciel et des TI
Le document de vision (RUP)
Une base de discussion et drsquoaccord parmi les intervenants du projet
Une description de lrsquoapplication en geacuteneacuteral incluant la description du marcheacute cible les clients les utilisateurs du systegraveme les problegravemes agrave reacutesoudre et les caracteacuteristiques de lrsquoapplication
GTI515 Automne 2013 JF Couturier 69
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 70
Requirements Management with Use Cases v20010300
Copyright copy 1998 2001 Rational Software all rights reserved
2
Problem
Solution Space
Problem Space
Needs
Features
SoftwareRequirements
Test Procedures Design User
Docs
The The Product Product To Be To Be BuiltBuilt
Traceability
Deacutepartement de geacutenie logiciel et des TI
Exemples de caracteacuteristiques (feature)
Domaine drsquoapplication Exemple de caracteacuteristique
Systegraveme de commande drsquoascenseur
Commande manuelle des portes durant une urgence de feu
Systegraveme de commande drsquoinventaire
Fournir un statut reacutecent de tous les items reacutepertorieacutes
Systegraveme de suivi de deacutefauts Fournir des laquo donneacutees raquo sur les tendances pour eacutevaluer la
qualiteacute
Systegraveme de paie Rapports par cateacutegories des deacuteductions remis agrave lrsquoimpocirct
Systegraveme de commande drsquoarmes
Minimum de deux confirmations indeacutependantes drsquoautorisation
drsquoattaque exigeacutee
GTI515 Automne 2013 JF Couturier 71
Deacutepartement de geacutenie logiciel et des TI
Niveau de deacutetail des caracteacuteristiques Pour tout nouveau systegraveme ou pour
une ameacutelioration majeure agrave un systegraveme existant il est recommandeacute de garder un niveau drsquoabstraction assez eacuteleveacute de sorte agrave avoir un maximum de caracteacuteristiques compris entre 25-99 et de preacutefeacuterence moins de 50
GTI515 Automne 2013 JF Couturier 72
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Statut Suit le progregraves
Exemples Proposeacute approuveacute incorporeacute etc
PrioriteacuteBeacuteneacutefice
Les caracteacuteristiques ne sont pas agrave prioriteacutes eacutegales ou geacutenegraverent des beacuteneacutefices eacutegaux
Exemple critiques importantes optionnelle
Effort Estimation du nombre de personnessemaines lignes de code points de fonction COSMIC_FFP
Risque La probabiliteacute que la caracteacuteristique aille causer un eacuteveacutenement indeacutesirable tel que le deacutepassement du budget ou des deacutelais ou mecircme lrsquoannulation du projet
GTI515 Automne 2013 JF Couturier 73
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Stabiliteacute La probabiliteacute que la caracteacuteristique elle-mecircme ou sa compreacutehension par lrsquoeacutequipe de deacuteveloppement changera
Mise en application
Documenter la version preacutevue pour laquelle la caracteacuteristique sera incorporeacutee
Assigneacutee agrave Deacutesigner lrsquoeacutequipe responsable de la caracteacuteristique
Raison Lrsquoorigine de la requecircte de la caracteacuteristique
GTI515 Automne 2013 JF Couturier 74
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 75
Deacutepartement de geacutenie logiciel et des TI
Reacutedaction du document de vision une description concise de tout ce qui est important au
produit ou agrave lrsquoapplication eacutecrit avec un niveau de deacutetails dans un langage lisible et
compreacutehensible par les intervenants du projet
Document de 15 agrave 20 pages
GTI515 Automne 2013 JF Couturier 76
Deacutepartement de geacutenie logiciel et des TI
Exemple le cas ACS
GTI515 Automne 2013 JF Couturier 77
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 78
Deacutepartement de geacutenie logiciel et des TI
Exemple de problegravemesle cas ACS
Controcircle drsquoune large gamme de mateacuteriels
Utilisation compliqueacutee Difficulteacutes de programmation Disponibiliteacute du mateacuteriel Risque de mauvaise utilisation
GTI515 Automne 2013 JF Couturier 79
Deacutepartement de geacutenie logiciel et des TI
Exemple de besoinsle cas ACS
AutomatiserLa distribution de fertilisantLa distribution de nourritureLa dureacutee de lrsquoeacuteclairage
Commander lrsquoopeacuteration des appareils Reacuteguler
le niveau et la dureteacute de lrsquoeauLa tempeacuterature
GTI515 Automne 2013 JF Couturier 80
Deacutepartement de geacutenie logiciel et des TI
Exemple de caracteacuteristiquesle cas ACS
Deacutemarrage automatique du systegraveme Programmation conserveacutee en cas de
panne drsquoalimentation Deacutetection automatique des modules Facile agrave programmer et agrave utiliser
Exigence non fonctionnelle
GTI515 Automne 2013 JF Couturier 81
Deacutepartement de geacutenie logiciel et des TI
Critegraveres drsquoeacutevaluation
Respect de lrsquoesprit du document
En tant qursquointervenant externe est-ce que je comprends bien
Respect de la forme du gabarit
Qualiteacute du franccedilais
Document de calibre professionnel que lrsquoon pourrait remettre agrave un dirigeant
GTI515 Automne 2013 JF Couturier 82
Deacutepartement de geacutenie logiciel et des TI
Grille drsquoeacutevaluation (sur 100)
Agrave venirhellip
GTI515 Automne 2013 JF Couturier 83
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 84
Prochain cours
La modeacutelisation des processus drsquoaffaires Le diagramme drsquoactiviteacute Le diagnostic des processus drsquoaffaires existant
Lectures Lrsquoutilisation drsquoUML Chapitre sur les diagrammes drsquoactiviteacutes dans Larman Lecture sur MDA Voir site Web du cours
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 85
Questions
- Systegravemes drsquoinformation dans les entreprises (GTI515)
- Plan du cours 1
- Qui suis-je JF Couturier
- Qui suis-je Eacutetudiant(e)
- Plan du cours 1 (2)
- Objectifs du programme
- Ingeacutenieur
- Programme GTI
- Geacutenie des TI
- Cours de speacutecialiteacutes GTI
- Objectif du cours
- Vue drsquoensemble du cours
- Lectures et reacutefeacuterences
- Regravegles du jeu
- QUIZ
- Plan du cours 1 (3)
- Plan de cours
- Laboratoires ndash GTI515
- Peacutenaliteacutes de retard
- Plagiat
- Plan du cours 1 (4)
- Les tendances dans le deacuteveloppement des systegravemes drsquoinformation
- UML - Historique
- Pourquoi modeacuteliser
- La modeacutelisation dans les entreprises
- Quelques chiffres
- Quelques chiffres (2)
- Quelques chiffres (3)
- Quelques chiffres (4)
- Quelques chiffres (5)
- Et maintenant
- Et maintenant (2)
- Finalementhellip
- Reacuteussite Eacutechec
- Rappel
- Industrialisation
- Industrialisation (2)
- Slide 39
- Slide 40
- Usines logicielles (S Factory)
- Usines logicielles (S Factory) (2)
- Usines logicielles (S Factory) (3)
- Usines logicielles (S Factory) (4)
- Usines logicielles
- Domain Specific Langage
- BuzzhellipMDA MDD MDE
- Exemple
- Model Driven Architecture
- Model Driven Architecture (2)
- Model Driven Architecture (3)
- Model Driven Architecture (4)
- Model Driven Architecture (5)
- Concept principal de MDA
- CIM PIM PSM Code
- Les diffeacuterentes eacutetapes
- MDA et Gartner
- Eacutetude de cas
- Impact
- Impact (2)
- Impact (3)
- Slide 63
- Slide 64
- Slide 65
- Exemple (2)
- Ressources
- Laboratoire 1
- Le document de vision (RUP)
- Slide 70
- Exemples de caracteacuteristiques (feature)
- Niveau de deacutetail des caracteacuteristiques
- Attributs des caracteacuteristiques
- Attributs des caracteacuteristiques
- Slide 75
- Reacutedaction du document de vision
- Exemple le cas ACS
- Slide 78
- Exemple de problegravemes le cas ACS
- Exemple de besoins le cas ACS
- Exemple de caracteacuteristiques le cas ACS
- Critegraveres drsquoeacutevaluation
- Grille drsquoeacutevaluation (sur 100)
- Prochain cours
- Questions
-
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 64
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 65
Deacutepartement de geacutenie logiciel et des TI
Exemple
GTI515 Automne 2013 JF Couturier 66
httpwwwibmcomdeveloperworksrationallibrary3100html
Deacutepartement de geacutenie logiciel et des TI
Ressources
Site de lOMG MDA Article drsquoIBM sur MDA Discussion sur MDA Wiki MDA Wiki QVT
GTI515 Automne 2013 JF Couturier 67
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 68
Laboratoire 1
Choix du sujet Validation de la porteacutee
Suffisamment long Plusieurs interactions humaines machines Reacutealisable dans une session
Chargeacute de laboratoire Oleg Litvinski Premier laboratoire lundi 7 mai
Deacutepartement de geacutenie logiciel et des TI
Le document de vision (RUP)
Une base de discussion et drsquoaccord parmi les intervenants du projet
Une description de lrsquoapplication en geacuteneacuteral incluant la description du marcheacute cible les clients les utilisateurs du systegraveme les problegravemes agrave reacutesoudre et les caracteacuteristiques de lrsquoapplication
GTI515 Automne 2013 JF Couturier 69
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 70
Requirements Management with Use Cases v20010300
Copyright copy 1998 2001 Rational Software all rights reserved
2
Problem
Solution Space
Problem Space
Needs
Features
SoftwareRequirements
Test Procedures Design User
Docs
The The Product Product To Be To Be BuiltBuilt
Traceability
Deacutepartement de geacutenie logiciel et des TI
Exemples de caracteacuteristiques (feature)
Domaine drsquoapplication Exemple de caracteacuteristique
Systegraveme de commande drsquoascenseur
Commande manuelle des portes durant une urgence de feu
Systegraveme de commande drsquoinventaire
Fournir un statut reacutecent de tous les items reacutepertorieacutes
Systegraveme de suivi de deacutefauts Fournir des laquo donneacutees raquo sur les tendances pour eacutevaluer la
qualiteacute
Systegraveme de paie Rapports par cateacutegories des deacuteductions remis agrave lrsquoimpocirct
Systegraveme de commande drsquoarmes
Minimum de deux confirmations indeacutependantes drsquoautorisation
drsquoattaque exigeacutee
GTI515 Automne 2013 JF Couturier 71
Deacutepartement de geacutenie logiciel et des TI
Niveau de deacutetail des caracteacuteristiques Pour tout nouveau systegraveme ou pour
une ameacutelioration majeure agrave un systegraveme existant il est recommandeacute de garder un niveau drsquoabstraction assez eacuteleveacute de sorte agrave avoir un maximum de caracteacuteristiques compris entre 25-99 et de preacutefeacuterence moins de 50
GTI515 Automne 2013 JF Couturier 72
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Statut Suit le progregraves
Exemples Proposeacute approuveacute incorporeacute etc
PrioriteacuteBeacuteneacutefice
Les caracteacuteristiques ne sont pas agrave prioriteacutes eacutegales ou geacutenegraverent des beacuteneacutefices eacutegaux
Exemple critiques importantes optionnelle
Effort Estimation du nombre de personnessemaines lignes de code points de fonction COSMIC_FFP
Risque La probabiliteacute que la caracteacuteristique aille causer un eacuteveacutenement indeacutesirable tel que le deacutepassement du budget ou des deacutelais ou mecircme lrsquoannulation du projet
GTI515 Automne 2013 JF Couturier 73
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Stabiliteacute La probabiliteacute que la caracteacuteristique elle-mecircme ou sa compreacutehension par lrsquoeacutequipe de deacuteveloppement changera
Mise en application
Documenter la version preacutevue pour laquelle la caracteacuteristique sera incorporeacutee
Assigneacutee agrave Deacutesigner lrsquoeacutequipe responsable de la caracteacuteristique
Raison Lrsquoorigine de la requecircte de la caracteacuteristique
GTI515 Automne 2013 JF Couturier 74
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 75
Deacutepartement de geacutenie logiciel et des TI
Reacutedaction du document de vision une description concise de tout ce qui est important au
produit ou agrave lrsquoapplication eacutecrit avec un niveau de deacutetails dans un langage lisible et
compreacutehensible par les intervenants du projet
Document de 15 agrave 20 pages
GTI515 Automne 2013 JF Couturier 76
Deacutepartement de geacutenie logiciel et des TI
Exemple le cas ACS
GTI515 Automne 2013 JF Couturier 77
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 78
Deacutepartement de geacutenie logiciel et des TI
Exemple de problegravemesle cas ACS
Controcircle drsquoune large gamme de mateacuteriels
Utilisation compliqueacutee Difficulteacutes de programmation Disponibiliteacute du mateacuteriel Risque de mauvaise utilisation
GTI515 Automne 2013 JF Couturier 79
Deacutepartement de geacutenie logiciel et des TI
Exemple de besoinsle cas ACS
AutomatiserLa distribution de fertilisantLa distribution de nourritureLa dureacutee de lrsquoeacuteclairage
Commander lrsquoopeacuteration des appareils Reacuteguler
le niveau et la dureteacute de lrsquoeauLa tempeacuterature
GTI515 Automne 2013 JF Couturier 80
Deacutepartement de geacutenie logiciel et des TI
Exemple de caracteacuteristiquesle cas ACS
Deacutemarrage automatique du systegraveme Programmation conserveacutee en cas de
panne drsquoalimentation Deacutetection automatique des modules Facile agrave programmer et agrave utiliser
Exigence non fonctionnelle
GTI515 Automne 2013 JF Couturier 81
Deacutepartement de geacutenie logiciel et des TI
Critegraveres drsquoeacutevaluation
Respect de lrsquoesprit du document
En tant qursquointervenant externe est-ce que je comprends bien
Respect de la forme du gabarit
Qualiteacute du franccedilais
Document de calibre professionnel que lrsquoon pourrait remettre agrave un dirigeant
GTI515 Automne 2013 JF Couturier 82
Deacutepartement de geacutenie logiciel et des TI
Grille drsquoeacutevaluation (sur 100)
Agrave venirhellip
GTI515 Automne 2013 JF Couturier 83
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 84
Prochain cours
La modeacutelisation des processus drsquoaffaires Le diagramme drsquoactiviteacute Le diagnostic des processus drsquoaffaires existant
Lectures Lrsquoutilisation drsquoUML Chapitre sur les diagrammes drsquoactiviteacutes dans Larman Lecture sur MDA Voir site Web du cours
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 85
Questions
- Systegravemes drsquoinformation dans les entreprises (GTI515)
- Plan du cours 1
- Qui suis-je JF Couturier
- Qui suis-je Eacutetudiant(e)
- Plan du cours 1 (2)
- Objectifs du programme
- Ingeacutenieur
- Programme GTI
- Geacutenie des TI
- Cours de speacutecialiteacutes GTI
- Objectif du cours
- Vue drsquoensemble du cours
- Lectures et reacutefeacuterences
- Regravegles du jeu
- QUIZ
- Plan du cours 1 (3)
- Plan de cours
- Laboratoires ndash GTI515
- Peacutenaliteacutes de retard
- Plagiat
- Plan du cours 1 (4)
- Les tendances dans le deacuteveloppement des systegravemes drsquoinformation
- UML - Historique
- Pourquoi modeacuteliser
- La modeacutelisation dans les entreprises
- Quelques chiffres
- Quelques chiffres (2)
- Quelques chiffres (3)
- Quelques chiffres (4)
- Quelques chiffres (5)
- Et maintenant
- Et maintenant (2)
- Finalementhellip
- Reacuteussite Eacutechec
- Rappel
- Industrialisation
- Industrialisation (2)
- Slide 39
- Slide 40
- Usines logicielles (S Factory)
- Usines logicielles (S Factory) (2)
- Usines logicielles (S Factory) (3)
- Usines logicielles (S Factory) (4)
- Usines logicielles
- Domain Specific Langage
- BuzzhellipMDA MDD MDE
- Exemple
- Model Driven Architecture
- Model Driven Architecture (2)
- Model Driven Architecture (3)
- Model Driven Architecture (4)
- Model Driven Architecture (5)
- Concept principal de MDA
- CIM PIM PSM Code
- Les diffeacuterentes eacutetapes
- MDA et Gartner
- Eacutetude de cas
- Impact
- Impact (2)
- Impact (3)
- Slide 63
- Slide 64
- Slide 65
- Exemple (2)
- Ressources
- Laboratoire 1
- Le document de vision (RUP)
- Slide 70
- Exemples de caracteacuteristiques (feature)
- Niveau de deacutetail des caracteacuteristiques
- Attributs des caracteacuteristiques
- Attributs des caracteacuteristiques
- Slide 75
- Reacutedaction du document de vision
- Exemple le cas ACS
- Slide 78
- Exemple de problegravemes le cas ACS
- Exemple de besoins le cas ACS
- Exemple de caracteacuteristiques le cas ACS
- Critegraveres drsquoeacutevaluation
- Grille drsquoeacutevaluation (sur 100)
- Prochain cours
- Questions
-
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 65
Deacutepartement de geacutenie logiciel et des TI
Exemple
GTI515 Automne 2013 JF Couturier 66
httpwwwibmcomdeveloperworksrationallibrary3100html
Deacutepartement de geacutenie logiciel et des TI
Ressources
Site de lOMG MDA Article drsquoIBM sur MDA Discussion sur MDA Wiki MDA Wiki QVT
GTI515 Automne 2013 JF Couturier 67
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 68
Laboratoire 1
Choix du sujet Validation de la porteacutee
Suffisamment long Plusieurs interactions humaines machines Reacutealisable dans une session
Chargeacute de laboratoire Oleg Litvinski Premier laboratoire lundi 7 mai
Deacutepartement de geacutenie logiciel et des TI
Le document de vision (RUP)
Une base de discussion et drsquoaccord parmi les intervenants du projet
Une description de lrsquoapplication en geacuteneacuteral incluant la description du marcheacute cible les clients les utilisateurs du systegraveme les problegravemes agrave reacutesoudre et les caracteacuteristiques de lrsquoapplication
GTI515 Automne 2013 JF Couturier 69
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 70
Requirements Management with Use Cases v20010300
Copyright copy 1998 2001 Rational Software all rights reserved
2
Problem
Solution Space
Problem Space
Needs
Features
SoftwareRequirements
Test Procedures Design User
Docs
The The Product Product To Be To Be BuiltBuilt
Traceability
Deacutepartement de geacutenie logiciel et des TI
Exemples de caracteacuteristiques (feature)
Domaine drsquoapplication Exemple de caracteacuteristique
Systegraveme de commande drsquoascenseur
Commande manuelle des portes durant une urgence de feu
Systegraveme de commande drsquoinventaire
Fournir un statut reacutecent de tous les items reacutepertorieacutes
Systegraveme de suivi de deacutefauts Fournir des laquo donneacutees raquo sur les tendances pour eacutevaluer la
qualiteacute
Systegraveme de paie Rapports par cateacutegories des deacuteductions remis agrave lrsquoimpocirct
Systegraveme de commande drsquoarmes
Minimum de deux confirmations indeacutependantes drsquoautorisation
drsquoattaque exigeacutee
GTI515 Automne 2013 JF Couturier 71
Deacutepartement de geacutenie logiciel et des TI
Niveau de deacutetail des caracteacuteristiques Pour tout nouveau systegraveme ou pour
une ameacutelioration majeure agrave un systegraveme existant il est recommandeacute de garder un niveau drsquoabstraction assez eacuteleveacute de sorte agrave avoir un maximum de caracteacuteristiques compris entre 25-99 et de preacutefeacuterence moins de 50
GTI515 Automne 2013 JF Couturier 72
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Statut Suit le progregraves
Exemples Proposeacute approuveacute incorporeacute etc
PrioriteacuteBeacuteneacutefice
Les caracteacuteristiques ne sont pas agrave prioriteacutes eacutegales ou geacutenegraverent des beacuteneacutefices eacutegaux
Exemple critiques importantes optionnelle
Effort Estimation du nombre de personnessemaines lignes de code points de fonction COSMIC_FFP
Risque La probabiliteacute que la caracteacuteristique aille causer un eacuteveacutenement indeacutesirable tel que le deacutepassement du budget ou des deacutelais ou mecircme lrsquoannulation du projet
GTI515 Automne 2013 JF Couturier 73
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Stabiliteacute La probabiliteacute que la caracteacuteristique elle-mecircme ou sa compreacutehension par lrsquoeacutequipe de deacuteveloppement changera
Mise en application
Documenter la version preacutevue pour laquelle la caracteacuteristique sera incorporeacutee
Assigneacutee agrave Deacutesigner lrsquoeacutequipe responsable de la caracteacuteristique
Raison Lrsquoorigine de la requecircte de la caracteacuteristique
GTI515 Automne 2013 JF Couturier 74
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 75
Deacutepartement de geacutenie logiciel et des TI
Reacutedaction du document de vision une description concise de tout ce qui est important au
produit ou agrave lrsquoapplication eacutecrit avec un niveau de deacutetails dans un langage lisible et
compreacutehensible par les intervenants du projet
Document de 15 agrave 20 pages
GTI515 Automne 2013 JF Couturier 76
Deacutepartement de geacutenie logiciel et des TI
Exemple le cas ACS
GTI515 Automne 2013 JF Couturier 77
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 78
Deacutepartement de geacutenie logiciel et des TI
Exemple de problegravemesle cas ACS
Controcircle drsquoune large gamme de mateacuteriels
Utilisation compliqueacutee Difficulteacutes de programmation Disponibiliteacute du mateacuteriel Risque de mauvaise utilisation
GTI515 Automne 2013 JF Couturier 79
Deacutepartement de geacutenie logiciel et des TI
Exemple de besoinsle cas ACS
AutomatiserLa distribution de fertilisantLa distribution de nourritureLa dureacutee de lrsquoeacuteclairage
Commander lrsquoopeacuteration des appareils Reacuteguler
le niveau et la dureteacute de lrsquoeauLa tempeacuterature
GTI515 Automne 2013 JF Couturier 80
Deacutepartement de geacutenie logiciel et des TI
Exemple de caracteacuteristiquesle cas ACS
Deacutemarrage automatique du systegraveme Programmation conserveacutee en cas de
panne drsquoalimentation Deacutetection automatique des modules Facile agrave programmer et agrave utiliser
Exigence non fonctionnelle
GTI515 Automne 2013 JF Couturier 81
Deacutepartement de geacutenie logiciel et des TI
Critegraveres drsquoeacutevaluation
Respect de lrsquoesprit du document
En tant qursquointervenant externe est-ce que je comprends bien
Respect de la forme du gabarit
Qualiteacute du franccedilais
Document de calibre professionnel que lrsquoon pourrait remettre agrave un dirigeant
GTI515 Automne 2013 JF Couturier 82
Deacutepartement de geacutenie logiciel et des TI
Grille drsquoeacutevaluation (sur 100)
Agrave venirhellip
GTI515 Automne 2013 JF Couturier 83
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 84
Prochain cours
La modeacutelisation des processus drsquoaffaires Le diagramme drsquoactiviteacute Le diagnostic des processus drsquoaffaires existant
Lectures Lrsquoutilisation drsquoUML Chapitre sur les diagrammes drsquoactiviteacutes dans Larman Lecture sur MDA Voir site Web du cours
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 85
Questions
- Systegravemes drsquoinformation dans les entreprises (GTI515)
- Plan du cours 1
- Qui suis-je JF Couturier
- Qui suis-je Eacutetudiant(e)
- Plan du cours 1 (2)
- Objectifs du programme
- Ingeacutenieur
- Programme GTI
- Geacutenie des TI
- Cours de speacutecialiteacutes GTI
- Objectif du cours
- Vue drsquoensemble du cours
- Lectures et reacutefeacuterences
- Regravegles du jeu
- QUIZ
- Plan du cours 1 (3)
- Plan de cours
- Laboratoires ndash GTI515
- Peacutenaliteacutes de retard
- Plagiat
- Plan du cours 1 (4)
- Les tendances dans le deacuteveloppement des systegravemes drsquoinformation
- UML - Historique
- Pourquoi modeacuteliser
- La modeacutelisation dans les entreprises
- Quelques chiffres
- Quelques chiffres (2)
- Quelques chiffres (3)
- Quelques chiffres (4)
- Quelques chiffres (5)
- Et maintenant
- Et maintenant (2)
- Finalementhellip
- Reacuteussite Eacutechec
- Rappel
- Industrialisation
- Industrialisation (2)
- Slide 39
- Slide 40
- Usines logicielles (S Factory)
- Usines logicielles (S Factory) (2)
- Usines logicielles (S Factory) (3)
- Usines logicielles (S Factory) (4)
- Usines logicielles
- Domain Specific Langage
- BuzzhellipMDA MDD MDE
- Exemple
- Model Driven Architecture
- Model Driven Architecture (2)
- Model Driven Architecture (3)
- Model Driven Architecture (4)
- Model Driven Architecture (5)
- Concept principal de MDA
- CIM PIM PSM Code
- Les diffeacuterentes eacutetapes
- MDA et Gartner
- Eacutetude de cas
- Impact
- Impact (2)
- Impact (3)
- Slide 63
- Slide 64
- Slide 65
- Exemple (2)
- Ressources
- Laboratoire 1
- Le document de vision (RUP)
- Slide 70
- Exemples de caracteacuteristiques (feature)
- Niveau de deacutetail des caracteacuteristiques
- Attributs des caracteacuteristiques
- Attributs des caracteacuteristiques
- Slide 75
- Reacutedaction du document de vision
- Exemple le cas ACS
- Slide 78
- Exemple de problegravemes le cas ACS
- Exemple de besoins le cas ACS
- Exemple de caracteacuteristiques le cas ACS
- Critegraveres drsquoeacutevaluation
- Grille drsquoeacutevaluation (sur 100)
- Prochain cours
- Questions
-
Deacutepartement de geacutenie logiciel et des TI
Exemple
GTI515 Automne 2013 JF Couturier 66
httpwwwibmcomdeveloperworksrationallibrary3100html
Deacutepartement de geacutenie logiciel et des TI
Ressources
Site de lOMG MDA Article drsquoIBM sur MDA Discussion sur MDA Wiki MDA Wiki QVT
GTI515 Automne 2013 JF Couturier 67
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 68
Laboratoire 1
Choix du sujet Validation de la porteacutee
Suffisamment long Plusieurs interactions humaines machines Reacutealisable dans une session
Chargeacute de laboratoire Oleg Litvinski Premier laboratoire lundi 7 mai
Deacutepartement de geacutenie logiciel et des TI
Le document de vision (RUP)
Une base de discussion et drsquoaccord parmi les intervenants du projet
Une description de lrsquoapplication en geacuteneacuteral incluant la description du marcheacute cible les clients les utilisateurs du systegraveme les problegravemes agrave reacutesoudre et les caracteacuteristiques de lrsquoapplication
GTI515 Automne 2013 JF Couturier 69
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 70
Requirements Management with Use Cases v20010300
Copyright copy 1998 2001 Rational Software all rights reserved
2
Problem
Solution Space
Problem Space
Needs
Features
SoftwareRequirements
Test Procedures Design User
Docs
The The Product Product To Be To Be BuiltBuilt
Traceability
Deacutepartement de geacutenie logiciel et des TI
Exemples de caracteacuteristiques (feature)
Domaine drsquoapplication Exemple de caracteacuteristique
Systegraveme de commande drsquoascenseur
Commande manuelle des portes durant une urgence de feu
Systegraveme de commande drsquoinventaire
Fournir un statut reacutecent de tous les items reacutepertorieacutes
Systegraveme de suivi de deacutefauts Fournir des laquo donneacutees raquo sur les tendances pour eacutevaluer la
qualiteacute
Systegraveme de paie Rapports par cateacutegories des deacuteductions remis agrave lrsquoimpocirct
Systegraveme de commande drsquoarmes
Minimum de deux confirmations indeacutependantes drsquoautorisation
drsquoattaque exigeacutee
GTI515 Automne 2013 JF Couturier 71
Deacutepartement de geacutenie logiciel et des TI
Niveau de deacutetail des caracteacuteristiques Pour tout nouveau systegraveme ou pour
une ameacutelioration majeure agrave un systegraveme existant il est recommandeacute de garder un niveau drsquoabstraction assez eacuteleveacute de sorte agrave avoir un maximum de caracteacuteristiques compris entre 25-99 et de preacutefeacuterence moins de 50
GTI515 Automne 2013 JF Couturier 72
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Statut Suit le progregraves
Exemples Proposeacute approuveacute incorporeacute etc
PrioriteacuteBeacuteneacutefice
Les caracteacuteristiques ne sont pas agrave prioriteacutes eacutegales ou geacutenegraverent des beacuteneacutefices eacutegaux
Exemple critiques importantes optionnelle
Effort Estimation du nombre de personnessemaines lignes de code points de fonction COSMIC_FFP
Risque La probabiliteacute que la caracteacuteristique aille causer un eacuteveacutenement indeacutesirable tel que le deacutepassement du budget ou des deacutelais ou mecircme lrsquoannulation du projet
GTI515 Automne 2013 JF Couturier 73
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Stabiliteacute La probabiliteacute que la caracteacuteristique elle-mecircme ou sa compreacutehension par lrsquoeacutequipe de deacuteveloppement changera
Mise en application
Documenter la version preacutevue pour laquelle la caracteacuteristique sera incorporeacutee
Assigneacutee agrave Deacutesigner lrsquoeacutequipe responsable de la caracteacuteristique
Raison Lrsquoorigine de la requecircte de la caracteacuteristique
GTI515 Automne 2013 JF Couturier 74
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 75
Deacutepartement de geacutenie logiciel et des TI
Reacutedaction du document de vision une description concise de tout ce qui est important au
produit ou agrave lrsquoapplication eacutecrit avec un niveau de deacutetails dans un langage lisible et
compreacutehensible par les intervenants du projet
Document de 15 agrave 20 pages
GTI515 Automne 2013 JF Couturier 76
Deacutepartement de geacutenie logiciel et des TI
Exemple le cas ACS
GTI515 Automne 2013 JF Couturier 77
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 78
Deacutepartement de geacutenie logiciel et des TI
Exemple de problegravemesle cas ACS
Controcircle drsquoune large gamme de mateacuteriels
Utilisation compliqueacutee Difficulteacutes de programmation Disponibiliteacute du mateacuteriel Risque de mauvaise utilisation
GTI515 Automne 2013 JF Couturier 79
Deacutepartement de geacutenie logiciel et des TI
Exemple de besoinsle cas ACS
AutomatiserLa distribution de fertilisantLa distribution de nourritureLa dureacutee de lrsquoeacuteclairage
Commander lrsquoopeacuteration des appareils Reacuteguler
le niveau et la dureteacute de lrsquoeauLa tempeacuterature
GTI515 Automne 2013 JF Couturier 80
Deacutepartement de geacutenie logiciel et des TI
Exemple de caracteacuteristiquesle cas ACS
Deacutemarrage automatique du systegraveme Programmation conserveacutee en cas de
panne drsquoalimentation Deacutetection automatique des modules Facile agrave programmer et agrave utiliser
Exigence non fonctionnelle
GTI515 Automne 2013 JF Couturier 81
Deacutepartement de geacutenie logiciel et des TI
Critegraveres drsquoeacutevaluation
Respect de lrsquoesprit du document
En tant qursquointervenant externe est-ce que je comprends bien
Respect de la forme du gabarit
Qualiteacute du franccedilais
Document de calibre professionnel que lrsquoon pourrait remettre agrave un dirigeant
GTI515 Automne 2013 JF Couturier 82
Deacutepartement de geacutenie logiciel et des TI
Grille drsquoeacutevaluation (sur 100)
Agrave venirhellip
GTI515 Automne 2013 JF Couturier 83
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 84
Prochain cours
La modeacutelisation des processus drsquoaffaires Le diagramme drsquoactiviteacute Le diagnostic des processus drsquoaffaires existant
Lectures Lrsquoutilisation drsquoUML Chapitre sur les diagrammes drsquoactiviteacutes dans Larman Lecture sur MDA Voir site Web du cours
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 85
Questions
- Systegravemes drsquoinformation dans les entreprises (GTI515)
- Plan du cours 1
- Qui suis-je JF Couturier
- Qui suis-je Eacutetudiant(e)
- Plan du cours 1 (2)
- Objectifs du programme
- Ingeacutenieur
- Programme GTI
- Geacutenie des TI
- Cours de speacutecialiteacutes GTI
- Objectif du cours
- Vue drsquoensemble du cours
- Lectures et reacutefeacuterences
- Regravegles du jeu
- QUIZ
- Plan du cours 1 (3)
- Plan de cours
- Laboratoires ndash GTI515
- Peacutenaliteacutes de retard
- Plagiat
- Plan du cours 1 (4)
- Les tendances dans le deacuteveloppement des systegravemes drsquoinformation
- UML - Historique
- Pourquoi modeacuteliser
- La modeacutelisation dans les entreprises
- Quelques chiffres
- Quelques chiffres (2)
- Quelques chiffres (3)
- Quelques chiffres (4)
- Quelques chiffres (5)
- Et maintenant
- Et maintenant (2)
- Finalementhellip
- Reacuteussite Eacutechec
- Rappel
- Industrialisation
- Industrialisation (2)
- Slide 39
- Slide 40
- Usines logicielles (S Factory)
- Usines logicielles (S Factory) (2)
- Usines logicielles (S Factory) (3)
- Usines logicielles (S Factory) (4)
- Usines logicielles
- Domain Specific Langage
- BuzzhellipMDA MDD MDE
- Exemple
- Model Driven Architecture
- Model Driven Architecture (2)
- Model Driven Architecture (3)
- Model Driven Architecture (4)
- Model Driven Architecture (5)
- Concept principal de MDA
- CIM PIM PSM Code
- Les diffeacuterentes eacutetapes
- MDA et Gartner
- Eacutetude de cas
- Impact
- Impact (2)
- Impact (3)
- Slide 63
- Slide 64
- Slide 65
- Exemple (2)
- Ressources
- Laboratoire 1
- Le document de vision (RUP)
- Slide 70
- Exemples de caracteacuteristiques (feature)
- Niveau de deacutetail des caracteacuteristiques
- Attributs des caracteacuteristiques
- Attributs des caracteacuteristiques
- Slide 75
- Reacutedaction du document de vision
- Exemple le cas ACS
- Slide 78
- Exemple de problegravemes le cas ACS
- Exemple de besoins le cas ACS
- Exemple de caracteacuteristiques le cas ACS
- Critegraveres drsquoeacutevaluation
- Grille drsquoeacutevaluation (sur 100)
- Prochain cours
- Questions
-
Deacutepartement de geacutenie logiciel et des TI
Ressources
Site de lOMG MDA Article drsquoIBM sur MDA Discussion sur MDA Wiki MDA Wiki QVT
GTI515 Automne 2013 JF Couturier 67
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 68
Laboratoire 1
Choix du sujet Validation de la porteacutee
Suffisamment long Plusieurs interactions humaines machines Reacutealisable dans une session
Chargeacute de laboratoire Oleg Litvinski Premier laboratoire lundi 7 mai
Deacutepartement de geacutenie logiciel et des TI
Le document de vision (RUP)
Une base de discussion et drsquoaccord parmi les intervenants du projet
Une description de lrsquoapplication en geacuteneacuteral incluant la description du marcheacute cible les clients les utilisateurs du systegraveme les problegravemes agrave reacutesoudre et les caracteacuteristiques de lrsquoapplication
GTI515 Automne 2013 JF Couturier 69
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 70
Requirements Management with Use Cases v20010300
Copyright copy 1998 2001 Rational Software all rights reserved
2
Problem
Solution Space
Problem Space
Needs
Features
SoftwareRequirements
Test Procedures Design User
Docs
The The Product Product To Be To Be BuiltBuilt
Traceability
Deacutepartement de geacutenie logiciel et des TI
Exemples de caracteacuteristiques (feature)
Domaine drsquoapplication Exemple de caracteacuteristique
Systegraveme de commande drsquoascenseur
Commande manuelle des portes durant une urgence de feu
Systegraveme de commande drsquoinventaire
Fournir un statut reacutecent de tous les items reacutepertorieacutes
Systegraveme de suivi de deacutefauts Fournir des laquo donneacutees raquo sur les tendances pour eacutevaluer la
qualiteacute
Systegraveme de paie Rapports par cateacutegories des deacuteductions remis agrave lrsquoimpocirct
Systegraveme de commande drsquoarmes
Minimum de deux confirmations indeacutependantes drsquoautorisation
drsquoattaque exigeacutee
GTI515 Automne 2013 JF Couturier 71
Deacutepartement de geacutenie logiciel et des TI
Niveau de deacutetail des caracteacuteristiques Pour tout nouveau systegraveme ou pour
une ameacutelioration majeure agrave un systegraveme existant il est recommandeacute de garder un niveau drsquoabstraction assez eacuteleveacute de sorte agrave avoir un maximum de caracteacuteristiques compris entre 25-99 et de preacutefeacuterence moins de 50
GTI515 Automne 2013 JF Couturier 72
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Statut Suit le progregraves
Exemples Proposeacute approuveacute incorporeacute etc
PrioriteacuteBeacuteneacutefice
Les caracteacuteristiques ne sont pas agrave prioriteacutes eacutegales ou geacutenegraverent des beacuteneacutefices eacutegaux
Exemple critiques importantes optionnelle
Effort Estimation du nombre de personnessemaines lignes de code points de fonction COSMIC_FFP
Risque La probabiliteacute que la caracteacuteristique aille causer un eacuteveacutenement indeacutesirable tel que le deacutepassement du budget ou des deacutelais ou mecircme lrsquoannulation du projet
GTI515 Automne 2013 JF Couturier 73
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Stabiliteacute La probabiliteacute que la caracteacuteristique elle-mecircme ou sa compreacutehension par lrsquoeacutequipe de deacuteveloppement changera
Mise en application
Documenter la version preacutevue pour laquelle la caracteacuteristique sera incorporeacutee
Assigneacutee agrave Deacutesigner lrsquoeacutequipe responsable de la caracteacuteristique
Raison Lrsquoorigine de la requecircte de la caracteacuteristique
GTI515 Automne 2013 JF Couturier 74
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 75
Deacutepartement de geacutenie logiciel et des TI
Reacutedaction du document de vision une description concise de tout ce qui est important au
produit ou agrave lrsquoapplication eacutecrit avec un niveau de deacutetails dans un langage lisible et
compreacutehensible par les intervenants du projet
Document de 15 agrave 20 pages
GTI515 Automne 2013 JF Couturier 76
Deacutepartement de geacutenie logiciel et des TI
Exemple le cas ACS
GTI515 Automne 2013 JF Couturier 77
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 78
Deacutepartement de geacutenie logiciel et des TI
Exemple de problegravemesle cas ACS
Controcircle drsquoune large gamme de mateacuteriels
Utilisation compliqueacutee Difficulteacutes de programmation Disponibiliteacute du mateacuteriel Risque de mauvaise utilisation
GTI515 Automne 2013 JF Couturier 79
Deacutepartement de geacutenie logiciel et des TI
Exemple de besoinsle cas ACS
AutomatiserLa distribution de fertilisantLa distribution de nourritureLa dureacutee de lrsquoeacuteclairage
Commander lrsquoopeacuteration des appareils Reacuteguler
le niveau et la dureteacute de lrsquoeauLa tempeacuterature
GTI515 Automne 2013 JF Couturier 80
Deacutepartement de geacutenie logiciel et des TI
Exemple de caracteacuteristiquesle cas ACS
Deacutemarrage automatique du systegraveme Programmation conserveacutee en cas de
panne drsquoalimentation Deacutetection automatique des modules Facile agrave programmer et agrave utiliser
Exigence non fonctionnelle
GTI515 Automne 2013 JF Couturier 81
Deacutepartement de geacutenie logiciel et des TI
Critegraveres drsquoeacutevaluation
Respect de lrsquoesprit du document
En tant qursquointervenant externe est-ce que je comprends bien
Respect de la forme du gabarit
Qualiteacute du franccedilais
Document de calibre professionnel que lrsquoon pourrait remettre agrave un dirigeant
GTI515 Automne 2013 JF Couturier 82
Deacutepartement de geacutenie logiciel et des TI
Grille drsquoeacutevaluation (sur 100)
Agrave venirhellip
GTI515 Automne 2013 JF Couturier 83
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 84
Prochain cours
La modeacutelisation des processus drsquoaffaires Le diagramme drsquoactiviteacute Le diagnostic des processus drsquoaffaires existant
Lectures Lrsquoutilisation drsquoUML Chapitre sur les diagrammes drsquoactiviteacutes dans Larman Lecture sur MDA Voir site Web du cours
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 85
Questions
- Systegravemes drsquoinformation dans les entreprises (GTI515)
- Plan du cours 1
- Qui suis-je JF Couturier
- Qui suis-je Eacutetudiant(e)
- Plan du cours 1 (2)
- Objectifs du programme
- Ingeacutenieur
- Programme GTI
- Geacutenie des TI
- Cours de speacutecialiteacutes GTI
- Objectif du cours
- Vue drsquoensemble du cours
- Lectures et reacutefeacuterences
- Regravegles du jeu
- QUIZ
- Plan du cours 1 (3)
- Plan de cours
- Laboratoires ndash GTI515
- Peacutenaliteacutes de retard
- Plagiat
- Plan du cours 1 (4)
- Les tendances dans le deacuteveloppement des systegravemes drsquoinformation
- UML - Historique
- Pourquoi modeacuteliser
- La modeacutelisation dans les entreprises
- Quelques chiffres
- Quelques chiffres (2)
- Quelques chiffres (3)
- Quelques chiffres (4)
- Quelques chiffres (5)
- Et maintenant
- Et maintenant (2)
- Finalementhellip
- Reacuteussite Eacutechec
- Rappel
- Industrialisation
- Industrialisation (2)
- Slide 39
- Slide 40
- Usines logicielles (S Factory)
- Usines logicielles (S Factory) (2)
- Usines logicielles (S Factory) (3)
- Usines logicielles (S Factory) (4)
- Usines logicielles
- Domain Specific Langage
- BuzzhellipMDA MDD MDE
- Exemple
- Model Driven Architecture
- Model Driven Architecture (2)
- Model Driven Architecture (3)
- Model Driven Architecture (4)
- Model Driven Architecture (5)
- Concept principal de MDA
- CIM PIM PSM Code
- Les diffeacuterentes eacutetapes
- MDA et Gartner
- Eacutetude de cas
- Impact
- Impact (2)
- Impact (3)
- Slide 63
- Slide 64
- Slide 65
- Exemple (2)
- Ressources
- Laboratoire 1
- Le document de vision (RUP)
- Slide 70
- Exemples de caracteacuteristiques (feature)
- Niveau de deacutetail des caracteacuteristiques
- Attributs des caracteacuteristiques
- Attributs des caracteacuteristiques
- Slide 75
- Reacutedaction du document de vision
- Exemple le cas ACS
- Slide 78
- Exemple de problegravemes le cas ACS
- Exemple de besoins le cas ACS
- Exemple de caracteacuteristiques le cas ACS
- Critegraveres drsquoeacutevaluation
- Grille drsquoeacutevaluation (sur 100)
- Prochain cours
- Questions
-
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 68
Laboratoire 1
Choix du sujet Validation de la porteacutee
Suffisamment long Plusieurs interactions humaines machines Reacutealisable dans une session
Chargeacute de laboratoire Oleg Litvinski Premier laboratoire lundi 7 mai
Deacutepartement de geacutenie logiciel et des TI
Le document de vision (RUP)
Une base de discussion et drsquoaccord parmi les intervenants du projet
Une description de lrsquoapplication en geacuteneacuteral incluant la description du marcheacute cible les clients les utilisateurs du systegraveme les problegravemes agrave reacutesoudre et les caracteacuteristiques de lrsquoapplication
GTI515 Automne 2013 JF Couturier 69
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 70
Requirements Management with Use Cases v20010300
Copyright copy 1998 2001 Rational Software all rights reserved
2
Problem
Solution Space
Problem Space
Needs
Features
SoftwareRequirements
Test Procedures Design User
Docs
The The Product Product To Be To Be BuiltBuilt
Traceability
Deacutepartement de geacutenie logiciel et des TI
Exemples de caracteacuteristiques (feature)
Domaine drsquoapplication Exemple de caracteacuteristique
Systegraveme de commande drsquoascenseur
Commande manuelle des portes durant une urgence de feu
Systegraveme de commande drsquoinventaire
Fournir un statut reacutecent de tous les items reacutepertorieacutes
Systegraveme de suivi de deacutefauts Fournir des laquo donneacutees raquo sur les tendances pour eacutevaluer la
qualiteacute
Systegraveme de paie Rapports par cateacutegories des deacuteductions remis agrave lrsquoimpocirct
Systegraveme de commande drsquoarmes
Minimum de deux confirmations indeacutependantes drsquoautorisation
drsquoattaque exigeacutee
GTI515 Automne 2013 JF Couturier 71
Deacutepartement de geacutenie logiciel et des TI
Niveau de deacutetail des caracteacuteristiques Pour tout nouveau systegraveme ou pour
une ameacutelioration majeure agrave un systegraveme existant il est recommandeacute de garder un niveau drsquoabstraction assez eacuteleveacute de sorte agrave avoir un maximum de caracteacuteristiques compris entre 25-99 et de preacutefeacuterence moins de 50
GTI515 Automne 2013 JF Couturier 72
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Statut Suit le progregraves
Exemples Proposeacute approuveacute incorporeacute etc
PrioriteacuteBeacuteneacutefice
Les caracteacuteristiques ne sont pas agrave prioriteacutes eacutegales ou geacutenegraverent des beacuteneacutefices eacutegaux
Exemple critiques importantes optionnelle
Effort Estimation du nombre de personnessemaines lignes de code points de fonction COSMIC_FFP
Risque La probabiliteacute que la caracteacuteristique aille causer un eacuteveacutenement indeacutesirable tel que le deacutepassement du budget ou des deacutelais ou mecircme lrsquoannulation du projet
GTI515 Automne 2013 JF Couturier 73
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Stabiliteacute La probabiliteacute que la caracteacuteristique elle-mecircme ou sa compreacutehension par lrsquoeacutequipe de deacuteveloppement changera
Mise en application
Documenter la version preacutevue pour laquelle la caracteacuteristique sera incorporeacutee
Assigneacutee agrave Deacutesigner lrsquoeacutequipe responsable de la caracteacuteristique
Raison Lrsquoorigine de la requecircte de la caracteacuteristique
GTI515 Automne 2013 JF Couturier 74
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 75
Deacutepartement de geacutenie logiciel et des TI
Reacutedaction du document de vision une description concise de tout ce qui est important au
produit ou agrave lrsquoapplication eacutecrit avec un niveau de deacutetails dans un langage lisible et
compreacutehensible par les intervenants du projet
Document de 15 agrave 20 pages
GTI515 Automne 2013 JF Couturier 76
Deacutepartement de geacutenie logiciel et des TI
Exemple le cas ACS
GTI515 Automne 2013 JF Couturier 77
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 78
Deacutepartement de geacutenie logiciel et des TI
Exemple de problegravemesle cas ACS
Controcircle drsquoune large gamme de mateacuteriels
Utilisation compliqueacutee Difficulteacutes de programmation Disponibiliteacute du mateacuteriel Risque de mauvaise utilisation
GTI515 Automne 2013 JF Couturier 79
Deacutepartement de geacutenie logiciel et des TI
Exemple de besoinsle cas ACS
AutomatiserLa distribution de fertilisantLa distribution de nourritureLa dureacutee de lrsquoeacuteclairage
Commander lrsquoopeacuteration des appareils Reacuteguler
le niveau et la dureteacute de lrsquoeauLa tempeacuterature
GTI515 Automne 2013 JF Couturier 80
Deacutepartement de geacutenie logiciel et des TI
Exemple de caracteacuteristiquesle cas ACS
Deacutemarrage automatique du systegraveme Programmation conserveacutee en cas de
panne drsquoalimentation Deacutetection automatique des modules Facile agrave programmer et agrave utiliser
Exigence non fonctionnelle
GTI515 Automne 2013 JF Couturier 81
Deacutepartement de geacutenie logiciel et des TI
Critegraveres drsquoeacutevaluation
Respect de lrsquoesprit du document
En tant qursquointervenant externe est-ce que je comprends bien
Respect de la forme du gabarit
Qualiteacute du franccedilais
Document de calibre professionnel que lrsquoon pourrait remettre agrave un dirigeant
GTI515 Automne 2013 JF Couturier 82
Deacutepartement de geacutenie logiciel et des TI
Grille drsquoeacutevaluation (sur 100)
Agrave venirhellip
GTI515 Automne 2013 JF Couturier 83
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 84
Prochain cours
La modeacutelisation des processus drsquoaffaires Le diagramme drsquoactiviteacute Le diagnostic des processus drsquoaffaires existant
Lectures Lrsquoutilisation drsquoUML Chapitre sur les diagrammes drsquoactiviteacutes dans Larman Lecture sur MDA Voir site Web du cours
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 85
Questions
- Systegravemes drsquoinformation dans les entreprises (GTI515)
- Plan du cours 1
- Qui suis-je JF Couturier
- Qui suis-je Eacutetudiant(e)
- Plan du cours 1 (2)
- Objectifs du programme
- Ingeacutenieur
- Programme GTI
- Geacutenie des TI
- Cours de speacutecialiteacutes GTI
- Objectif du cours
- Vue drsquoensemble du cours
- Lectures et reacutefeacuterences
- Regravegles du jeu
- QUIZ
- Plan du cours 1 (3)
- Plan de cours
- Laboratoires ndash GTI515
- Peacutenaliteacutes de retard
- Plagiat
- Plan du cours 1 (4)
- Les tendances dans le deacuteveloppement des systegravemes drsquoinformation
- UML - Historique
- Pourquoi modeacuteliser
- La modeacutelisation dans les entreprises
- Quelques chiffres
- Quelques chiffres (2)
- Quelques chiffres (3)
- Quelques chiffres (4)
- Quelques chiffres (5)
- Et maintenant
- Et maintenant (2)
- Finalementhellip
- Reacuteussite Eacutechec
- Rappel
- Industrialisation
- Industrialisation (2)
- Slide 39
- Slide 40
- Usines logicielles (S Factory)
- Usines logicielles (S Factory) (2)
- Usines logicielles (S Factory) (3)
- Usines logicielles (S Factory) (4)
- Usines logicielles
- Domain Specific Langage
- BuzzhellipMDA MDD MDE
- Exemple
- Model Driven Architecture
- Model Driven Architecture (2)
- Model Driven Architecture (3)
- Model Driven Architecture (4)
- Model Driven Architecture (5)
- Concept principal de MDA
- CIM PIM PSM Code
- Les diffeacuterentes eacutetapes
- MDA et Gartner
- Eacutetude de cas
- Impact
- Impact (2)
- Impact (3)
- Slide 63
- Slide 64
- Slide 65
- Exemple (2)
- Ressources
- Laboratoire 1
- Le document de vision (RUP)
- Slide 70
- Exemples de caracteacuteristiques (feature)
- Niveau de deacutetail des caracteacuteristiques
- Attributs des caracteacuteristiques
- Attributs des caracteacuteristiques
- Slide 75
- Reacutedaction du document de vision
- Exemple le cas ACS
- Slide 78
- Exemple de problegravemes le cas ACS
- Exemple de besoins le cas ACS
- Exemple de caracteacuteristiques le cas ACS
- Critegraveres drsquoeacutevaluation
- Grille drsquoeacutevaluation (sur 100)
- Prochain cours
- Questions
-
Deacutepartement de geacutenie logiciel et des TI
Le document de vision (RUP)
Une base de discussion et drsquoaccord parmi les intervenants du projet
Une description de lrsquoapplication en geacuteneacuteral incluant la description du marcheacute cible les clients les utilisateurs du systegraveme les problegravemes agrave reacutesoudre et les caracteacuteristiques de lrsquoapplication
GTI515 Automne 2013 JF Couturier 69
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 70
Requirements Management with Use Cases v20010300
Copyright copy 1998 2001 Rational Software all rights reserved
2
Problem
Solution Space
Problem Space
Needs
Features
SoftwareRequirements
Test Procedures Design User
Docs
The The Product Product To Be To Be BuiltBuilt
Traceability
Deacutepartement de geacutenie logiciel et des TI
Exemples de caracteacuteristiques (feature)
Domaine drsquoapplication Exemple de caracteacuteristique
Systegraveme de commande drsquoascenseur
Commande manuelle des portes durant une urgence de feu
Systegraveme de commande drsquoinventaire
Fournir un statut reacutecent de tous les items reacutepertorieacutes
Systegraveme de suivi de deacutefauts Fournir des laquo donneacutees raquo sur les tendances pour eacutevaluer la
qualiteacute
Systegraveme de paie Rapports par cateacutegories des deacuteductions remis agrave lrsquoimpocirct
Systegraveme de commande drsquoarmes
Minimum de deux confirmations indeacutependantes drsquoautorisation
drsquoattaque exigeacutee
GTI515 Automne 2013 JF Couturier 71
Deacutepartement de geacutenie logiciel et des TI
Niveau de deacutetail des caracteacuteristiques Pour tout nouveau systegraveme ou pour
une ameacutelioration majeure agrave un systegraveme existant il est recommandeacute de garder un niveau drsquoabstraction assez eacuteleveacute de sorte agrave avoir un maximum de caracteacuteristiques compris entre 25-99 et de preacutefeacuterence moins de 50
GTI515 Automne 2013 JF Couturier 72
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Statut Suit le progregraves
Exemples Proposeacute approuveacute incorporeacute etc
PrioriteacuteBeacuteneacutefice
Les caracteacuteristiques ne sont pas agrave prioriteacutes eacutegales ou geacutenegraverent des beacuteneacutefices eacutegaux
Exemple critiques importantes optionnelle
Effort Estimation du nombre de personnessemaines lignes de code points de fonction COSMIC_FFP
Risque La probabiliteacute que la caracteacuteristique aille causer un eacuteveacutenement indeacutesirable tel que le deacutepassement du budget ou des deacutelais ou mecircme lrsquoannulation du projet
GTI515 Automne 2013 JF Couturier 73
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Stabiliteacute La probabiliteacute que la caracteacuteristique elle-mecircme ou sa compreacutehension par lrsquoeacutequipe de deacuteveloppement changera
Mise en application
Documenter la version preacutevue pour laquelle la caracteacuteristique sera incorporeacutee
Assigneacutee agrave Deacutesigner lrsquoeacutequipe responsable de la caracteacuteristique
Raison Lrsquoorigine de la requecircte de la caracteacuteristique
GTI515 Automne 2013 JF Couturier 74
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 75
Deacutepartement de geacutenie logiciel et des TI
Reacutedaction du document de vision une description concise de tout ce qui est important au
produit ou agrave lrsquoapplication eacutecrit avec un niveau de deacutetails dans un langage lisible et
compreacutehensible par les intervenants du projet
Document de 15 agrave 20 pages
GTI515 Automne 2013 JF Couturier 76
Deacutepartement de geacutenie logiciel et des TI
Exemple le cas ACS
GTI515 Automne 2013 JF Couturier 77
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 78
Deacutepartement de geacutenie logiciel et des TI
Exemple de problegravemesle cas ACS
Controcircle drsquoune large gamme de mateacuteriels
Utilisation compliqueacutee Difficulteacutes de programmation Disponibiliteacute du mateacuteriel Risque de mauvaise utilisation
GTI515 Automne 2013 JF Couturier 79
Deacutepartement de geacutenie logiciel et des TI
Exemple de besoinsle cas ACS
AutomatiserLa distribution de fertilisantLa distribution de nourritureLa dureacutee de lrsquoeacuteclairage
Commander lrsquoopeacuteration des appareils Reacuteguler
le niveau et la dureteacute de lrsquoeauLa tempeacuterature
GTI515 Automne 2013 JF Couturier 80
Deacutepartement de geacutenie logiciel et des TI
Exemple de caracteacuteristiquesle cas ACS
Deacutemarrage automatique du systegraveme Programmation conserveacutee en cas de
panne drsquoalimentation Deacutetection automatique des modules Facile agrave programmer et agrave utiliser
Exigence non fonctionnelle
GTI515 Automne 2013 JF Couturier 81
Deacutepartement de geacutenie logiciel et des TI
Critegraveres drsquoeacutevaluation
Respect de lrsquoesprit du document
En tant qursquointervenant externe est-ce que je comprends bien
Respect de la forme du gabarit
Qualiteacute du franccedilais
Document de calibre professionnel que lrsquoon pourrait remettre agrave un dirigeant
GTI515 Automne 2013 JF Couturier 82
Deacutepartement de geacutenie logiciel et des TI
Grille drsquoeacutevaluation (sur 100)
Agrave venirhellip
GTI515 Automne 2013 JF Couturier 83
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 84
Prochain cours
La modeacutelisation des processus drsquoaffaires Le diagramme drsquoactiviteacute Le diagnostic des processus drsquoaffaires existant
Lectures Lrsquoutilisation drsquoUML Chapitre sur les diagrammes drsquoactiviteacutes dans Larman Lecture sur MDA Voir site Web du cours
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 85
Questions
- Systegravemes drsquoinformation dans les entreprises (GTI515)
- Plan du cours 1
- Qui suis-je JF Couturier
- Qui suis-je Eacutetudiant(e)
- Plan du cours 1 (2)
- Objectifs du programme
- Ingeacutenieur
- Programme GTI
- Geacutenie des TI
- Cours de speacutecialiteacutes GTI
- Objectif du cours
- Vue drsquoensemble du cours
- Lectures et reacutefeacuterences
- Regravegles du jeu
- QUIZ
- Plan du cours 1 (3)
- Plan de cours
- Laboratoires ndash GTI515
- Peacutenaliteacutes de retard
- Plagiat
- Plan du cours 1 (4)
- Les tendances dans le deacuteveloppement des systegravemes drsquoinformation
- UML - Historique
- Pourquoi modeacuteliser
- La modeacutelisation dans les entreprises
- Quelques chiffres
- Quelques chiffres (2)
- Quelques chiffres (3)
- Quelques chiffres (4)
- Quelques chiffres (5)
- Et maintenant
- Et maintenant (2)
- Finalementhellip
- Reacuteussite Eacutechec
- Rappel
- Industrialisation
- Industrialisation (2)
- Slide 39
- Slide 40
- Usines logicielles (S Factory)
- Usines logicielles (S Factory) (2)
- Usines logicielles (S Factory) (3)
- Usines logicielles (S Factory) (4)
- Usines logicielles
- Domain Specific Langage
- BuzzhellipMDA MDD MDE
- Exemple
- Model Driven Architecture
- Model Driven Architecture (2)
- Model Driven Architecture (3)
- Model Driven Architecture (4)
- Model Driven Architecture (5)
- Concept principal de MDA
- CIM PIM PSM Code
- Les diffeacuterentes eacutetapes
- MDA et Gartner
- Eacutetude de cas
- Impact
- Impact (2)
- Impact (3)
- Slide 63
- Slide 64
- Slide 65
- Exemple (2)
- Ressources
- Laboratoire 1
- Le document de vision (RUP)
- Slide 70
- Exemples de caracteacuteristiques (feature)
- Niveau de deacutetail des caracteacuteristiques
- Attributs des caracteacuteristiques
- Attributs des caracteacuteristiques
- Slide 75
- Reacutedaction du document de vision
- Exemple le cas ACS
- Slide 78
- Exemple de problegravemes le cas ACS
- Exemple de besoins le cas ACS
- Exemple de caracteacuteristiques le cas ACS
- Critegraveres drsquoeacutevaluation
- Grille drsquoeacutevaluation (sur 100)
- Prochain cours
- Questions
-
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 70
Requirements Management with Use Cases v20010300
Copyright copy 1998 2001 Rational Software all rights reserved
2
Problem
Solution Space
Problem Space
Needs
Features
SoftwareRequirements
Test Procedures Design User
Docs
The The Product Product To Be To Be BuiltBuilt
Traceability
Deacutepartement de geacutenie logiciel et des TI
Exemples de caracteacuteristiques (feature)
Domaine drsquoapplication Exemple de caracteacuteristique
Systegraveme de commande drsquoascenseur
Commande manuelle des portes durant une urgence de feu
Systegraveme de commande drsquoinventaire
Fournir un statut reacutecent de tous les items reacutepertorieacutes
Systegraveme de suivi de deacutefauts Fournir des laquo donneacutees raquo sur les tendances pour eacutevaluer la
qualiteacute
Systegraveme de paie Rapports par cateacutegories des deacuteductions remis agrave lrsquoimpocirct
Systegraveme de commande drsquoarmes
Minimum de deux confirmations indeacutependantes drsquoautorisation
drsquoattaque exigeacutee
GTI515 Automne 2013 JF Couturier 71
Deacutepartement de geacutenie logiciel et des TI
Niveau de deacutetail des caracteacuteristiques Pour tout nouveau systegraveme ou pour
une ameacutelioration majeure agrave un systegraveme existant il est recommandeacute de garder un niveau drsquoabstraction assez eacuteleveacute de sorte agrave avoir un maximum de caracteacuteristiques compris entre 25-99 et de preacutefeacuterence moins de 50
GTI515 Automne 2013 JF Couturier 72
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Statut Suit le progregraves
Exemples Proposeacute approuveacute incorporeacute etc
PrioriteacuteBeacuteneacutefice
Les caracteacuteristiques ne sont pas agrave prioriteacutes eacutegales ou geacutenegraverent des beacuteneacutefices eacutegaux
Exemple critiques importantes optionnelle
Effort Estimation du nombre de personnessemaines lignes de code points de fonction COSMIC_FFP
Risque La probabiliteacute que la caracteacuteristique aille causer un eacuteveacutenement indeacutesirable tel que le deacutepassement du budget ou des deacutelais ou mecircme lrsquoannulation du projet
GTI515 Automne 2013 JF Couturier 73
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Stabiliteacute La probabiliteacute que la caracteacuteristique elle-mecircme ou sa compreacutehension par lrsquoeacutequipe de deacuteveloppement changera
Mise en application
Documenter la version preacutevue pour laquelle la caracteacuteristique sera incorporeacutee
Assigneacutee agrave Deacutesigner lrsquoeacutequipe responsable de la caracteacuteristique
Raison Lrsquoorigine de la requecircte de la caracteacuteristique
GTI515 Automne 2013 JF Couturier 74
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 75
Deacutepartement de geacutenie logiciel et des TI
Reacutedaction du document de vision une description concise de tout ce qui est important au
produit ou agrave lrsquoapplication eacutecrit avec un niveau de deacutetails dans un langage lisible et
compreacutehensible par les intervenants du projet
Document de 15 agrave 20 pages
GTI515 Automne 2013 JF Couturier 76
Deacutepartement de geacutenie logiciel et des TI
Exemple le cas ACS
GTI515 Automne 2013 JF Couturier 77
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 78
Deacutepartement de geacutenie logiciel et des TI
Exemple de problegravemesle cas ACS
Controcircle drsquoune large gamme de mateacuteriels
Utilisation compliqueacutee Difficulteacutes de programmation Disponibiliteacute du mateacuteriel Risque de mauvaise utilisation
GTI515 Automne 2013 JF Couturier 79
Deacutepartement de geacutenie logiciel et des TI
Exemple de besoinsle cas ACS
AutomatiserLa distribution de fertilisantLa distribution de nourritureLa dureacutee de lrsquoeacuteclairage
Commander lrsquoopeacuteration des appareils Reacuteguler
le niveau et la dureteacute de lrsquoeauLa tempeacuterature
GTI515 Automne 2013 JF Couturier 80
Deacutepartement de geacutenie logiciel et des TI
Exemple de caracteacuteristiquesle cas ACS
Deacutemarrage automatique du systegraveme Programmation conserveacutee en cas de
panne drsquoalimentation Deacutetection automatique des modules Facile agrave programmer et agrave utiliser
Exigence non fonctionnelle
GTI515 Automne 2013 JF Couturier 81
Deacutepartement de geacutenie logiciel et des TI
Critegraveres drsquoeacutevaluation
Respect de lrsquoesprit du document
En tant qursquointervenant externe est-ce que je comprends bien
Respect de la forme du gabarit
Qualiteacute du franccedilais
Document de calibre professionnel que lrsquoon pourrait remettre agrave un dirigeant
GTI515 Automne 2013 JF Couturier 82
Deacutepartement de geacutenie logiciel et des TI
Grille drsquoeacutevaluation (sur 100)
Agrave venirhellip
GTI515 Automne 2013 JF Couturier 83
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 84
Prochain cours
La modeacutelisation des processus drsquoaffaires Le diagramme drsquoactiviteacute Le diagnostic des processus drsquoaffaires existant
Lectures Lrsquoutilisation drsquoUML Chapitre sur les diagrammes drsquoactiviteacutes dans Larman Lecture sur MDA Voir site Web du cours
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 85
Questions
- Systegravemes drsquoinformation dans les entreprises (GTI515)
- Plan du cours 1
- Qui suis-je JF Couturier
- Qui suis-je Eacutetudiant(e)
- Plan du cours 1 (2)
- Objectifs du programme
- Ingeacutenieur
- Programme GTI
- Geacutenie des TI
- Cours de speacutecialiteacutes GTI
- Objectif du cours
- Vue drsquoensemble du cours
- Lectures et reacutefeacuterences
- Regravegles du jeu
- QUIZ
- Plan du cours 1 (3)
- Plan de cours
- Laboratoires ndash GTI515
- Peacutenaliteacutes de retard
- Plagiat
- Plan du cours 1 (4)
- Les tendances dans le deacuteveloppement des systegravemes drsquoinformation
- UML - Historique
- Pourquoi modeacuteliser
- La modeacutelisation dans les entreprises
- Quelques chiffres
- Quelques chiffres (2)
- Quelques chiffres (3)
- Quelques chiffres (4)
- Quelques chiffres (5)
- Et maintenant
- Et maintenant (2)
- Finalementhellip
- Reacuteussite Eacutechec
- Rappel
- Industrialisation
- Industrialisation (2)
- Slide 39
- Slide 40
- Usines logicielles (S Factory)
- Usines logicielles (S Factory) (2)
- Usines logicielles (S Factory) (3)
- Usines logicielles (S Factory) (4)
- Usines logicielles
- Domain Specific Langage
- BuzzhellipMDA MDD MDE
- Exemple
- Model Driven Architecture
- Model Driven Architecture (2)
- Model Driven Architecture (3)
- Model Driven Architecture (4)
- Model Driven Architecture (5)
- Concept principal de MDA
- CIM PIM PSM Code
- Les diffeacuterentes eacutetapes
- MDA et Gartner
- Eacutetude de cas
- Impact
- Impact (2)
- Impact (3)
- Slide 63
- Slide 64
- Slide 65
- Exemple (2)
- Ressources
- Laboratoire 1
- Le document de vision (RUP)
- Slide 70
- Exemples de caracteacuteristiques (feature)
- Niveau de deacutetail des caracteacuteristiques
- Attributs des caracteacuteristiques
- Attributs des caracteacuteristiques
- Slide 75
- Reacutedaction du document de vision
- Exemple le cas ACS
- Slide 78
- Exemple de problegravemes le cas ACS
- Exemple de besoins le cas ACS
- Exemple de caracteacuteristiques le cas ACS
- Critegraveres drsquoeacutevaluation
- Grille drsquoeacutevaluation (sur 100)
- Prochain cours
- Questions
-
Deacutepartement de geacutenie logiciel et des TI
Exemples de caracteacuteristiques (feature)
Domaine drsquoapplication Exemple de caracteacuteristique
Systegraveme de commande drsquoascenseur
Commande manuelle des portes durant une urgence de feu
Systegraveme de commande drsquoinventaire
Fournir un statut reacutecent de tous les items reacutepertorieacutes
Systegraveme de suivi de deacutefauts Fournir des laquo donneacutees raquo sur les tendances pour eacutevaluer la
qualiteacute
Systegraveme de paie Rapports par cateacutegories des deacuteductions remis agrave lrsquoimpocirct
Systegraveme de commande drsquoarmes
Minimum de deux confirmations indeacutependantes drsquoautorisation
drsquoattaque exigeacutee
GTI515 Automne 2013 JF Couturier 71
Deacutepartement de geacutenie logiciel et des TI
Niveau de deacutetail des caracteacuteristiques Pour tout nouveau systegraveme ou pour
une ameacutelioration majeure agrave un systegraveme existant il est recommandeacute de garder un niveau drsquoabstraction assez eacuteleveacute de sorte agrave avoir un maximum de caracteacuteristiques compris entre 25-99 et de preacutefeacuterence moins de 50
GTI515 Automne 2013 JF Couturier 72
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Statut Suit le progregraves
Exemples Proposeacute approuveacute incorporeacute etc
PrioriteacuteBeacuteneacutefice
Les caracteacuteristiques ne sont pas agrave prioriteacutes eacutegales ou geacutenegraverent des beacuteneacutefices eacutegaux
Exemple critiques importantes optionnelle
Effort Estimation du nombre de personnessemaines lignes de code points de fonction COSMIC_FFP
Risque La probabiliteacute que la caracteacuteristique aille causer un eacuteveacutenement indeacutesirable tel que le deacutepassement du budget ou des deacutelais ou mecircme lrsquoannulation du projet
GTI515 Automne 2013 JF Couturier 73
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Stabiliteacute La probabiliteacute que la caracteacuteristique elle-mecircme ou sa compreacutehension par lrsquoeacutequipe de deacuteveloppement changera
Mise en application
Documenter la version preacutevue pour laquelle la caracteacuteristique sera incorporeacutee
Assigneacutee agrave Deacutesigner lrsquoeacutequipe responsable de la caracteacuteristique
Raison Lrsquoorigine de la requecircte de la caracteacuteristique
GTI515 Automne 2013 JF Couturier 74
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 75
Deacutepartement de geacutenie logiciel et des TI
Reacutedaction du document de vision une description concise de tout ce qui est important au
produit ou agrave lrsquoapplication eacutecrit avec un niveau de deacutetails dans un langage lisible et
compreacutehensible par les intervenants du projet
Document de 15 agrave 20 pages
GTI515 Automne 2013 JF Couturier 76
Deacutepartement de geacutenie logiciel et des TI
Exemple le cas ACS
GTI515 Automne 2013 JF Couturier 77
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 78
Deacutepartement de geacutenie logiciel et des TI
Exemple de problegravemesle cas ACS
Controcircle drsquoune large gamme de mateacuteriels
Utilisation compliqueacutee Difficulteacutes de programmation Disponibiliteacute du mateacuteriel Risque de mauvaise utilisation
GTI515 Automne 2013 JF Couturier 79
Deacutepartement de geacutenie logiciel et des TI
Exemple de besoinsle cas ACS
AutomatiserLa distribution de fertilisantLa distribution de nourritureLa dureacutee de lrsquoeacuteclairage
Commander lrsquoopeacuteration des appareils Reacuteguler
le niveau et la dureteacute de lrsquoeauLa tempeacuterature
GTI515 Automne 2013 JF Couturier 80
Deacutepartement de geacutenie logiciel et des TI
Exemple de caracteacuteristiquesle cas ACS
Deacutemarrage automatique du systegraveme Programmation conserveacutee en cas de
panne drsquoalimentation Deacutetection automatique des modules Facile agrave programmer et agrave utiliser
Exigence non fonctionnelle
GTI515 Automne 2013 JF Couturier 81
Deacutepartement de geacutenie logiciel et des TI
Critegraveres drsquoeacutevaluation
Respect de lrsquoesprit du document
En tant qursquointervenant externe est-ce que je comprends bien
Respect de la forme du gabarit
Qualiteacute du franccedilais
Document de calibre professionnel que lrsquoon pourrait remettre agrave un dirigeant
GTI515 Automne 2013 JF Couturier 82
Deacutepartement de geacutenie logiciel et des TI
Grille drsquoeacutevaluation (sur 100)
Agrave venirhellip
GTI515 Automne 2013 JF Couturier 83
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 84
Prochain cours
La modeacutelisation des processus drsquoaffaires Le diagramme drsquoactiviteacute Le diagnostic des processus drsquoaffaires existant
Lectures Lrsquoutilisation drsquoUML Chapitre sur les diagrammes drsquoactiviteacutes dans Larman Lecture sur MDA Voir site Web du cours
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 85
Questions
- Systegravemes drsquoinformation dans les entreprises (GTI515)
- Plan du cours 1
- Qui suis-je JF Couturier
- Qui suis-je Eacutetudiant(e)
- Plan du cours 1 (2)
- Objectifs du programme
- Ingeacutenieur
- Programme GTI
- Geacutenie des TI
- Cours de speacutecialiteacutes GTI
- Objectif du cours
- Vue drsquoensemble du cours
- Lectures et reacutefeacuterences
- Regravegles du jeu
- QUIZ
- Plan du cours 1 (3)
- Plan de cours
- Laboratoires ndash GTI515
- Peacutenaliteacutes de retard
- Plagiat
- Plan du cours 1 (4)
- Les tendances dans le deacuteveloppement des systegravemes drsquoinformation
- UML - Historique
- Pourquoi modeacuteliser
- La modeacutelisation dans les entreprises
- Quelques chiffres
- Quelques chiffres (2)
- Quelques chiffres (3)
- Quelques chiffres (4)
- Quelques chiffres (5)
- Et maintenant
- Et maintenant (2)
- Finalementhellip
- Reacuteussite Eacutechec
- Rappel
- Industrialisation
- Industrialisation (2)
- Slide 39
- Slide 40
- Usines logicielles (S Factory)
- Usines logicielles (S Factory) (2)
- Usines logicielles (S Factory) (3)
- Usines logicielles (S Factory) (4)
- Usines logicielles
- Domain Specific Langage
- BuzzhellipMDA MDD MDE
- Exemple
- Model Driven Architecture
- Model Driven Architecture (2)
- Model Driven Architecture (3)
- Model Driven Architecture (4)
- Model Driven Architecture (5)
- Concept principal de MDA
- CIM PIM PSM Code
- Les diffeacuterentes eacutetapes
- MDA et Gartner
- Eacutetude de cas
- Impact
- Impact (2)
- Impact (3)
- Slide 63
- Slide 64
- Slide 65
- Exemple (2)
- Ressources
- Laboratoire 1
- Le document de vision (RUP)
- Slide 70
- Exemples de caracteacuteristiques (feature)
- Niveau de deacutetail des caracteacuteristiques
- Attributs des caracteacuteristiques
- Attributs des caracteacuteristiques
- Slide 75
- Reacutedaction du document de vision
- Exemple le cas ACS
- Slide 78
- Exemple de problegravemes le cas ACS
- Exemple de besoins le cas ACS
- Exemple de caracteacuteristiques le cas ACS
- Critegraveres drsquoeacutevaluation
- Grille drsquoeacutevaluation (sur 100)
- Prochain cours
- Questions
-
Deacutepartement de geacutenie logiciel et des TI
Niveau de deacutetail des caracteacuteristiques Pour tout nouveau systegraveme ou pour
une ameacutelioration majeure agrave un systegraveme existant il est recommandeacute de garder un niveau drsquoabstraction assez eacuteleveacute de sorte agrave avoir un maximum de caracteacuteristiques compris entre 25-99 et de preacutefeacuterence moins de 50
GTI515 Automne 2013 JF Couturier 72
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Statut Suit le progregraves
Exemples Proposeacute approuveacute incorporeacute etc
PrioriteacuteBeacuteneacutefice
Les caracteacuteristiques ne sont pas agrave prioriteacutes eacutegales ou geacutenegraverent des beacuteneacutefices eacutegaux
Exemple critiques importantes optionnelle
Effort Estimation du nombre de personnessemaines lignes de code points de fonction COSMIC_FFP
Risque La probabiliteacute que la caracteacuteristique aille causer un eacuteveacutenement indeacutesirable tel que le deacutepassement du budget ou des deacutelais ou mecircme lrsquoannulation du projet
GTI515 Automne 2013 JF Couturier 73
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Stabiliteacute La probabiliteacute que la caracteacuteristique elle-mecircme ou sa compreacutehension par lrsquoeacutequipe de deacuteveloppement changera
Mise en application
Documenter la version preacutevue pour laquelle la caracteacuteristique sera incorporeacutee
Assigneacutee agrave Deacutesigner lrsquoeacutequipe responsable de la caracteacuteristique
Raison Lrsquoorigine de la requecircte de la caracteacuteristique
GTI515 Automne 2013 JF Couturier 74
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 75
Deacutepartement de geacutenie logiciel et des TI
Reacutedaction du document de vision une description concise de tout ce qui est important au
produit ou agrave lrsquoapplication eacutecrit avec un niveau de deacutetails dans un langage lisible et
compreacutehensible par les intervenants du projet
Document de 15 agrave 20 pages
GTI515 Automne 2013 JF Couturier 76
Deacutepartement de geacutenie logiciel et des TI
Exemple le cas ACS
GTI515 Automne 2013 JF Couturier 77
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 78
Deacutepartement de geacutenie logiciel et des TI
Exemple de problegravemesle cas ACS
Controcircle drsquoune large gamme de mateacuteriels
Utilisation compliqueacutee Difficulteacutes de programmation Disponibiliteacute du mateacuteriel Risque de mauvaise utilisation
GTI515 Automne 2013 JF Couturier 79
Deacutepartement de geacutenie logiciel et des TI
Exemple de besoinsle cas ACS
AutomatiserLa distribution de fertilisantLa distribution de nourritureLa dureacutee de lrsquoeacuteclairage
Commander lrsquoopeacuteration des appareils Reacuteguler
le niveau et la dureteacute de lrsquoeauLa tempeacuterature
GTI515 Automne 2013 JF Couturier 80
Deacutepartement de geacutenie logiciel et des TI
Exemple de caracteacuteristiquesle cas ACS
Deacutemarrage automatique du systegraveme Programmation conserveacutee en cas de
panne drsquoalimentation Deacutetection automatique des modules Facile agrave programmer et agrave utiliser
Exigence non fonctionnelle
GTI515 Automne 2013 JF Couturier 81
Deacutepartement de geacutenie logiciel et des TI
Critegraveres drsquoeacutevaluation
Respect de lrsquoesprit du document
En tant qursquointervenant externe est-ce que je comprends bien
Respect de la forme du gabarit
Qualiteacute du franccedilais
Document de calibre professionnel que lrsquoon pourrait remettre agrave un dirigeant
GTI515 Automne 2013 JF Couturier 82
Deacutepartement de geacutenie logiciel et des TI
Grille drsquoeacutevaluation (sur 100)
Agrave venirhellip
GTI515 Automne 2013 JF Couturier 83
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 84
Prochain cours
La modeacutelisation des processus drsquoaffaires Le diagramme drsquoactiviteacute Le diagnostic des processus drsquoaffaires existant
Lectures Lrsquoutilisation drsquoUML Chapitre sur les diagrammes drsquoactiviteacutes dans Larman Lecture sur MDA Voir site Web du cours
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 85
Questions
- Systegravemes drsquoinformation dans les entreprises (GTI515)
- Plan du cours 1
- Qui suis-je JF Couturier
- Qui suis-je Eacutetudiant(e)
- Plan du cours 1 (2)
- Objectifs du programme
- Ingeacutenieur
- Programme GTI
- Geacutenie des TI
- Cours de speacutecialiteacutes GTI
- Objectif du cours
- Vue drsquoensemble du cours
- Lectures et reacutefeacuterences
- Regravegles du jeu
- QUIZ
- Plan du cours 1 (3)
- Plan de cours
- Laboratoires ndash GTI515
- Peacutenaliteacutes de retard
- Plagiat
- Plan du cours 1 (4)
- Les tendances dans le deacuteveloppement des systegravemes drsquoinformation
- UML - Historique
- Pourquoi modeacuteliser
- La modeacutelisation dans les entreprises
- Quelques chiffres
- Quelques chiffres (2)
- Quelques chiffres (3)
- Quelques chiffres (4)
- Quelques chiffres (5)
- Et maintenant
- Et maintenant (2)
- Finalementhellip
- Reacuteussite Eacutechec
- Rappel
- Industrialisation
- Industrialisation (2)
- Slide 39
- Slide 40
- Usines logicielles (S Factory)
- Usines logicielles (S Factory) (2)
- Usines logicielles (S Factory) (3)
- Usines logicielles (S Factory) (4)
- Usines logicielles
- Domain Specific Langage
- BuzzhellipMDA MDD MDE
- Exemple
- Model Driven Architecture
- Model Driven Architecture (2)
- Model Driven Architecture (3)
- Model Driven Architecture (4)
- Model Driven Architecture (5)
- Concept principal de MDA
- CIM PIM PSM Code
- Les diffeacuterentes eacutetapes
- MDA et Gartner
- Eacutetude de cas
- Impact
- Impact (2)
- Impact (3)
- Slide 63
- Slide 64
- Slide 65
- Exemple (2)
- Ressources
- Laboratoire 1
- Le document de vision (RUP)
- Slide 70
- Exemples de caracteacuteristiques (feature)
- Niveau de deacutetail des caracteacuteristiques
- Attributs des caracteacuteristiques
- Attributs des caracteacuteristiques
- Slide 75
- Reacutedaction du document de vision
- Exemple le cas ACS
- Slide 78
- Exemple de problegravemes le cas ACS
- Exemple de besoins le cas ACS
- Exemple de caracteacuteristiques le cas ACS
- Critegraveres drsquoeacutevaluation
- Grille drsquoeacutevaluation (sur 100)
- Prochain cours
- Questions
-
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Statut Suit le progregraves
Exemples Proposeacute approuveacute incorporeacute etc
PrioriteacuteBeacuteneacutefice
Les caracteacuteristiques ne sont pas agrave prioriteacutes eacutegales ou geacutenegraverent des beacuteneacutefices eacutegaux
Exemple critiques importantes optionnelle
Effort Estimation du nombre de personnessemaines lignes de code points de fonction COSMIC_FFP
Risque La probabiliteacute que la caracteacuteristique aille causer un eacuteveacutenement indeacutesirable tel que le deacutepassement du budget ou des deacutelais ou mecircme lrsquoannulation du projet
GTI515 Automne 2013 JF Couturier 73
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Stabiliteacute La probabiliteacute que la caracteacuteristique elle-mecircme ou sa compreacutehension par lrsquoeacutequipe de deacuteveloppement changera
Mise en application
Documenter la version preacutevue pour laquelle la caracteacuteristique sera incorporeacutee
Assigneacutee agrave Deacutesigner lrsquoeacutequipe responsable de la caracteacuteristique
Raison Lrsquoorigine de la requecircte de la caracteacuteristique
GTI515 Automne 2013 JF Couturier 74
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 75
Deacutepartement de geacutenie logiciel et des TI
Reacutedaction du document de vision une description concise de tout ce qui est important au
produit ou agrave lrsquoapplication eacutecrit avec un niveau de deacutetails dans un langage lisible et
compreacutehensible par les intervenants du projet
Document de 15 agrave 20 pages
GTI515 Automne 2013 JF Couturier 76
Deacutepartement de geacutenie logiciel et des TI
Exemple le cas ACS
GTI515 Automne 2013 JF Couturier 77
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 78
Deacutepartement de geacutenie logiciel et des TI
Exemple de problegravemesle cas ACS
Controcircle drsquoune large gamme de mateacuteriels
Utilisation compliqueacutee Difficulteacutes de programmation Disponibiliteacute du mateacuteriel Risque de mauvaise utilisation
GTI515 Automne 2013 JF Couturier 79
Deacutepartement de geacutenie logiciel et des TI
Exemple de besoinsle cas ACS
AutomatiserLa distribution de fertilisantLa distribution de nourritureLa dureacutee de lrsquoeacuteclairage
Commander lrsquoopeacuteration des appareils Reacuteguler
le niveau et la dureteacute de lrsquoeauLa tempeacuterature
GTI515 Automne 2013 JF Couturier 80
Deacutepartement de geacutenie logiciel et des TI
Exemple de caracteacuteristiquesle cas ACS
Deacutemarrage automatique du systegraveme Programmation conserveacutee en cas de
panne drsquoalimentation Deacutetection automatique des modules Facile agrave programmer et agrave utiliser
Exigence non fonctionnelle
GTI515 Automne 2013 JF Couturier 81
Deacutepartement de geacutenie logiciel et des TI
Critegraveres drsquoeacutevaluation
Respect de lrsquoesprit du document
En tant qursquointervenant externe est-ce que je comprends bien
Respect de la forme du gabarit
Qualiteacute du franccedilais
Document de calibre professionnel que lrsquoon pourrait remettre agrave un dirigeant
GTI515 Automne 2013 JF Couturier 82
Deacutepartement de geacutenie logiciel et des TI
Grille drsquoeacutevaluation (sur 100)
Agrave venirhellip
GTI515 Automne 2013 JF Couturier 83
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 84
Prochain cours
La modeacutelisation des processus drsquoaffaires Le diagramme drsquoactiviteacute Le diagnostic des processus drsquoaffaires existant
Lectures Lrsquoutilisation drsquoUML Chapitre sur les diagrammes drsquoactiviteacutes dans Larman Lecture sur MDA Voir site Web du cours
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 85
Questions
- Systegravemes drsquoinformation dans les entreprises (GTI515)
- Plan du cours 1
- Qui suis-je JF Couturier
- Qui suis-je Eacutetudiant(e)
- Plan du cours 1 (2)
- Objectifs du programme
- Ingeacutenieur
- Programme GTI
- Geacutenie des TI
- Cours de speacutecialiteacutes GTI
- Objectif du cours
- Vue drsquoensemble du cours
- Lectures et reacutefeacuterences
- Regravegles du jeu
- QUIZ
- Plan du cours 1 (3)
- Plan de cours
- Laboratoires ndash GTI515
- Peacutenaliteacutes de retard
- Plagiat
- Plan du cours 1 (4)
- Les tendances dans le deacuteveloppement des systegravemes drsquoinformation
- UML - Historique
- Pourquoi modeacuteliser
- La modeacutelisation dans les entreprises
- Quelques chiffres
- Quelques chiffres (2)
- Quelques chiffres (3)
- Quelques chiffres (4)
- Quelques chiffres (5)
- Et maintenant
- Et maintenant (2)
- Finalementhellip
- Reacuteussite Eacutechec
- Rappel
- Industrialisation
- Industrialisation (2)
- Slide 39
- Slide 40
- Usines logicielles (S Factory)
- Usines logicielles (S Factory) (2)
- Usines logicielles (S Factory) (3)
- Usines logicielles (S Factory) (4)
- Usines logicielles
- Domain Specific Langage
- BuzzhellipMDA MDD MDE
- Exemple
- Model Driven Architecture
- Model Driven Architecture (2)
- Model Driven Architecture (3)
- Model Driven Architecture (4)
- Model Driven Architecture (5)
- Concept principal de MDA
- CIM PIM PSM Code
- Les diffeacuterentes eacutetapes
- MDA et Gartner
- Eacutetude de cas
- Impact
- Impact (2)
- Impact (3)
- Slide 63
- Slide 64
- Slide 65
- Exemple (2)
- Ressources
- Laboratoire 1
- Le document de vision (RUP)
- Slide 70
- Exemples de caracteacuteristiques (feature)
- Niveau de deacutetail des caracteacuteristiques
- Attributs des caracteacuteristiques
- Attributs des caracteacuteristiques
- Slide 75
- Reacutedaction du document de vision
- Exemple le cas ACS
- Slide 78
- Exemple de problegravemes le cas ACS
- Exemple de besoins le cas ACS
- Exemple de caracteacuteristiques le cas ACS
- Critegraveres drsquoeacutevaluation
- Grille drsquoeacutevaluation (sur 100)
- Prochain cours
- Questions
-
Deacutepartement de geacutenie logiciel et des TI
Attributs des caracteacuteristiques
Attribut Description
Stabiliteacute La probabiliteacute que la caracteacuteristique elle-mecircme ou sa compreacutehension par lrsquoeacutequipe de deacuteveloppement changera
Mise en application
Documenter la version preacutevue pour laquelle la caracteacuteristique sera incorporeacutee
Assigneacutee agrave Deacutesigner lrsquoeacutequipe responsable de la caracteacuteristique
Raison Lrsquoorigine de la requecircte de la caracteacuteristique
GTI515 Automne 2013 JF Couturier 74
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 75
Deacutepartement de geacutenie logiciel et des TI
Reacutedaction du document de vision une description concise de tout ce qui est important au
produit ou agrave lrsquoapplication eacutecrit avec un niveau de deacutetails dans un langage lisible et
compreacutehensible par les intervenants du projet
Document de 15 agrave 20 pages
GTI515 Automne 2013 JF Couturier 76
Deacutepartement de geacutenie logiciel et des TI
Exemple le cas ACS
GTI515 Automne 2013 JF Couturier 77
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 78
Deacutepartement de geacutenie logiciel et des TI
Exemple de problegravemesle cas ACS
Controcircle drsquoune large gamme de mateacuteriels
Utilisation compliqueacutee Difficulteacutes de programmation Disponibiliteacute du mateacuteriel Risque de mauvaise utilisation
GTI515 Automne 2013 JF Couturier 79
Deacutepartement de geacutenie logiciel et des TI
Exemple de besoinsle cas ACS
AutomatiserLa distribution de fertilisantLa distribution de nourritureLa dureacutee de lrsquoeacuteclairage
Commander lrsquoopeacuteration des appareils Reacuteguler
le niveau et la dureteacute de lrsquoeauLa tempeacuterature
GTI515 Automne 2013 JF Couturier 80
Deacutepartement de geacutenie logiciel et des TI
Exemple de caracteacuteristiquesle cas ACS
Deacutemarrage automatique du systegraveme Programmation conserveacutee en cas de
panne drsquoalimentation Deacutetection automatique des modules Facile agrave programmer et agrave utiliser
Exigence non fonctionnelle
GTI515 Automne 2013 JF Couturier 81
Deacutepartement de geacutenie logiciel et des TI
Critegraveres drsquoeacutevaluation
Respect de lrsquoesprit du document
En tant qursquointervenant externe est-ce que je comprends bien
Respect de la forme du gabarit
Qualiteacute du franccedilais
Document de calibre professionnel que lrsquoon pourrait remettre agrave un dirigeant
GTI515 Automne 2013 JF Couturier 82
Deacutepartement de geacutenie logiciel et des TI
Grille drsquoeacutevaluation (sur 100)
Agrave venirhellip
GTI515 Automne 2013 JF Couturier 83
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 84
Prochain cours
La modeacutelisation des processus drsquoaffaires Le diagramme drsquoactiviteacute Le diagnostic des processus drsquoaffaires existant
Lectures Lrsquoutilisation drsquoUML Chapitre sur les diagrammes drsquoactiviteacutes dans Larman Lecture sur MDA Voir site Web du cours
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 85
Questions
- Systegravemes drsquoinformation dans les entreprises (GTI515)
- Plan du cours 1
- Qui suis-je JF Couturier
- Qui suis-je Eacutetudiant(e)
- Plan du cours 1 (2)
- Objectifs du programme
- Ingeacutenieur
- Programme GTI
- Geacutenie des TI
- Cours de speacutecialiteacutes GTI
- Objectif du cours
- Vue drsquoensemble du cours
- Lectures et reacutefeacuterences
- Regravegles du jeu
- QUIZ
- Plan du cours 1 (3)
- Plan de cours
- Laboratoires ndash GTI515
- Peacutenaliteacutes de retard
- Plagiat
- Plan du cours 1 (4)
- Les tendances dans le deacuteveloppement des systegravemes drsquoinformation
- UML - Historique
- Pourquoi modeacuteliser
- La modeacutelisation dans les entreprises
- Quelques chiffres
- Quelques chiffres (2)
- Quelques chiffres (3)
- Quelques chiffres (4)
- Quelques chiffres (5)
- Et maintenant
- Et maintenant (2)
- Finalementhellip
- Reacuteussite Eacutechec
- Rappel
- Industrialisation
- Industrialisation (2)
- Slide 39
- Slide 40
- Usines logicielles (S Factory)
- Usines logicielles (S Factory) (2)
- Usines logicielles (S Factory) (3)
- Usines logicielles (S Factory) (4)
- Usines logicielles
- Domain Specific Langage
- BuzzhellipMDA MDD MDE
- Exemple
- Model Driven Architecture
- Model Driven Architecture (2)
- Model Driven Architecture (3)
- Model Driven Architecture (4)
- Model Driven Architecture (5)
- Concept principal de MDA
- CIM PIM PSM Code
- Les diffeacuterentes eacutetapes
- MDA et Gartner
- Eacutetude de cas
- Impact
- Impact (2)
- Impact (3)
- Slide 63
- Slide 64
- Slide 65
- Exemple (2)
- Ressources
- Laboratoire 1
- Le document de vision (RUP)
- Slide 70
- Exemples de caracteacuteristiques (feature)
- Niveau de deacutetail des caracteacuteristiques
- Attributs des caracteacuteristiques
- Attributs des caracteacuteristiques
- Slide 75
- Reacutedaction du document de vision
- Exemple le cas ACS
- Slide 78
- Exemple de problegravemes le cas ACS
- Exemple de besoins le cas ACS
- Exemple de caracteacuteristiques le cas ACS
- Critegraveres drsquoeacutevaluation
- Grille drsquoeacutevaluation (sur 100)
- Prochain cours
- Questions
-
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 75
Deacutepartement de geacutenie logiciel et des TI
Reacutedaction du document de vision une description concise de tout ce qui est important au
produit ou agrave lrsquoapplication eacutecrit avec un niveau de deacutetails dans un langage lisible et
compreacutehensible par les intervenants du projet
Document de 15 agrave 20 pages
GTI515 Automne 2013 JF Couturier 76
Deacutepartement de geacutenie logiciel et des TI
Exemple le cas ACS
GTI515 Automne 2013 JF Couturier 77
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 78
Deacutepartement de geacutenie logiciel et des TI
Exemple de problegravemesle cas ACS
Controcircle drsquoune large gamme de mateacuteriels
Utilisation compliqueacutee Difficulteacutes de programmation Disponibiliteacute du mateacuteriel Risque de mauvaise utilisation
GTI515 Automne 2013 JF Couturier 79
Deacutepartement de geacutenie logiciel et des TI
Exemple de besoinsle cas ACS
AutomatiserLa distribution de fertilisantLa distribution de nourritureLa dureacutee de lrsquoeacuteclairage
Commander lrsquoopeacuteration des appareils Reacuteguler
le niveau et la dureteacute de lrsquoeauLa tempeacuterature
GTI515 Automne 2013 JF Couturier 80
Deacutepartement de geacutenie logiciel et des TI
Exemple de caracteacuteristiquesle cas ACS
Deacutemarrage automatique du systegraveme Programmation conserveacutee en cas de
panne drsquoalimentation Deacutetection automatique des modules Facile agrave programmer et agrave utiliser
Exigence non fonctionnelle
GTI515 Automne 2013 JF Couturier 81
Deacutepartement de geacutenie logiciel et des TI
Critegraveres drsquoeacutevaluation
Respect de lrsquoesprit du document
En tant qursquointervenant externe est-ce que je comprends bien
Respect de la forme du gabarit
Qualiteacute du franccedilais
Document de calibre professionnel que lrsquoon pourrait remettre agrave un dirigeant
GTI515 Automne 2013 JF Couturier 82
Deacutepartement de geacutenie logiciel et des TI
Grille drsquoeacutevaluation (sur 100)
Agrave venirhellip
GTI515 Automne 2013 JF Couturier 83
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 84
Prochain cours
La modeacutelisation des processus drsquoaffaires Le diagramme drsquoactiviteacute Le diagnostic des processus drsquoaffaires existant
Lectures Lrsquoutilisation drsquoUML Chapitre sur les diagrammes drsquoactiviteacutes dans Larman Lecture sur MDA Voir site Web du cours
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 85
Questions
- Systegravemes drsquoinformation dans les entreprises (GTI515)
- Plan du cours 1
- Qui suis-je JF Couturier
- Qui suis-je Eacutetudiant(e)
- Plan du cours 1 (2)
- Objectifs du programme
- Ingeacutenieur
- Programme GTI
- Geacutenie des TI
- Cours de speacutecialiteacutes GTI
- Objectif du cours
- Vue drsquoensemble du cours
- Lectures et reacutefeacuterences
- Regravegles du jeu
- QUIZ
- Plan du cours 1 (3)
- Plan de cours
- Laboratoires ndash GTI515
- Peacutenaliteacutes de retard
- Plagiat
- Plan du cours 1 (4)
- Les tendances dans le deacuteveloppement des systegravemes drsquoinformation
- UML - Historique
- Pourquoi modeacuteliser
- La modeacutelisation dans les entreprises
- Quelques chiffres
- Quelques chiffres (2)
- Quelques chiffres (3)
- Quelques chiffres (4)
- Quelques chiffres (5)
- Et maintenant
- Et maintenant (2)
- Finalementhellip
- Reacuteussite Eacutechec
- Rappel
- Industrialisation
- Industrialisation (2)
- Slide 39
- Slide 40
- Usines logicielles (S Factory)
- Usines logicielles (S Factory) (2)
- Usines logicielles (S Factory) (3)
- Usines logicielles (S Factory) (4)
- Usines logicielles
- Domain Specific Langage
- BuzzhellipMDA MDD MDE
- Exemple
- Model Driven Architecture
- Model Driven Architecture (2)
- Model Driven Architecture (3)
- Model Driven Architecture (4)
- Model Driven Architecture (5)
- Concept principal de MDA
- CIM PIM PSM Code
- Les diffeacuterentes eacutetapes
- MDA et Gartner
- Eacutetude de cas
- Impact
- Impact (2)
- Impact (3)
- Slide 63
- Slide 64
- Slide 65
- Exemple (2)
- Ressources
- Laboratoire 1
- Le document de vision (RUP)
- Slide 70
- Exemples de caracteacuteristiques (feature)
- Niveau de deacutetail des caracteacuteristiques
- Attributs des caracteacuteristiques
- Attributs des caracteacuteristiques
- Slide 75
- Reacutedaction du document de vision
- Exemple le cas ACS
- Slide 78
- Exemple de problegravemes le cas ACS
- Exemple de besoins le cas ACS
- Exemple de caracteacuteristiques le cas ACS
- Critegraveres drsquoeacutevaluation
- Grille drsquoeacutevaluation (sur 100)
- Prochain cours
- Questions
-
Deacutepartement de geacutenie logiciel et des TI
Reacutedaction du document de vision une description concise de tout ce qui est important au
produit ou agrave lrsquoapplication eacutecrit avec un niveau de deacutetails dans un langage lisible et
compreacutehensible par les intervenants du projet
Document de 15 agrave 20 pages
GTI515 Automne 2013 JF Couturier 76
Deacutepartement de geacutenie logiciel et des TI
Exemple le cas ACS
GTI515 Automne 2013 JF Couturier 77
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 78
Deacutepartement de geacutenie logiciel et des TI
Exemple de problegravemesle cas ACS
Controcircle drsquoune large gamme de mateacuteriels
Utilisation compliqueacutee Difficulteacutes de programmation Disponibiliteacute du mateacuteriel Risque de mauvaise utilisation
GTI515 Automne 2013 JF Couturier 79
Deacutepartement de geacutenie logiciel et des TI
Exemple de besoinsle cas ACS
AutomatiserLa distribution de fertilisantLa distribution de nourritureLa dureacutee de lrsquoeacuteclairage
Commander lrsquoopeacuteration des appareils Reacuteguler
le niveau et la dureteacute de lrsquoeauLa tempeacuterature
GTI515 Automne 2013 JF Couturier 80
Deacutepartement de geacutenie logiciel et des TI
Exemple de caracteacuteristiquesle cas ACS
Deacutemarrage automatique du systegraveme Programmation conserveacutee en cas de
panne drsquoalimentation Deacutetection automatique des modules Facile agrave programmer et agrave utiliser
Exigence non fonctionnelle
GTI515 Automne 2013 JF Couturier 81
Deacutepartement de geacutenie logiciel et des TI
Critegraveres drsquoeacutevaluation
Respect de lrsquoesprit du document
En tant qursquointervenant externe est-ce que je comprends bien
Respect de la forme du gabarit
Qualiteacute du franccedilais
Document de calibre professionnel que lrsquoon pourrait remettre agrave un dirigeant
GTI515 Automne 2013 JF Couturier 82
Deacutepartement de geacutenie logiciel et des TI
Grille drsquoeacutevaluation (sur 100)
Agrave venirhellip
GTI515 Automne 2013 JF Couturier 83
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 84
Prochain cours
La modeacutelisation des processus drsquoaffaires Le diagramme drsquoactiviteacute Le diagnostic des processus drsquoaffaires existant
Lectures Lrsquoutilisation drsquoUML Chapitre sur les diagrammes drsquoactiviteacutes dans Larman Lecture sur MDA Voir site Web du cours
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 85
Questions
- Systegravemes drsquoinformation dans les entreprises (GTI515)
- Plan du cours 1
- Qui suis-je JF Couturier
- Qui suis-je Eacutetudiant(e)
- Plan du cours 1 (2)
- Objectifs du programme
- Ingeacutenieur
- Programme GTI
- Geacutenie des TI
- Cours de speacutecialiteacutes GTI
- Objectif du cours
- Vue drsquoensemble du cours
- Lectures et reacutefeacuterences
- Regravegles du jeu
- QUIZ
- Plan du cours 1 (3)
- Plan de cours
- Laboratoires ndash GTI515
- Peacutenaliteacutes de retard
- Plagiat
- Plan du cours 1 (4)
- Les tendances dans le deacuteveloppement des systegravemes drsquoinformation
- UML - Historique
- Pourquoi modeacuteliser
- La modeacutelisation dans les entreprises
- Quelques chiffres
- Quelques chiffres (2)
- Quelques chiffres (3)
- Quelques chiffres (4)
- Quelques chiffres (5)
- Et maintenant
- Et maintenant (2)
- Finalementhellip
- Reacuteussite Eacutechec
- Rappel
- Industrialisation
- Industrialisation (2)
- Slide 39
- Slide 40
- Usines logicielles (S Factory)
- Usines logicielles (S Factory) (2)
- Usines logicielles (S Factory) (3)
- Usines logicielles (S Factory) (4)
- Usines logicielles
- Domain Specific Langage
- BuzzhellipMDA MDD MDE
- Exemple
- Model Driven Architecture
- Model Driven Architecture (2)
- Model Driven Architecture (3)
- Model Driven Architecture (4)
- Model Driven Architecture (5)
- Concept principal de MDA
- CIM PIM PSM Code
- Les diffeacuterentes eacutetapes
- MDA et Gartner
- Eacutetude de cas
- Impact
- Impact (2)
- Impact (3)
- Slide 63
- Slide 64
- Slide 65
- Exemple (2)
- Ressources
- Laboratoire 1
- Le document de vision (RUP)
- Slide 70
- Exemples de caracteacuteristiques (feature)
- Niveau de deacutetail des caracteacuteristiques
- Attributs des caracteacuteristiques
- Attributs des caracteacuteristiques
- Slide 75
- Reacutedaction du document de vision
- Exemple le cas ACS
- Slide 78
- Exemple de problegravemes le cas ACS
- Exemple de besoins le cas ACS
- Exemple de caracteacuteristiques le cas ACS
- Critegraveres drsquoeacutevaluation
- Grille drsquoeacutevaluation (sur 100)
- Prochain cours
- Questions
-
Deacutepartement de geacutenie logiciel et des TI
Exemple le cas ACS
GTI515 Automne 2013 JF Couturier 77
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 78
Deacutepartement de geacutenie logiciel et des TI
Exemple de problegravemesle cas ACS
Controcircle drsquoune large gamme de mateacuteriels
Utilisation compliqueacutee Difficulteacutes de programmation Disponibiliteacute du mateacuteriel Risque de mauvaise utilisation
GTI515 Automne 2013 JF Couturier 79
Deacutepartement de geacutenie logiciel et des TI
Exemple de besoinsle cas ACS
AutomatiserLa distribution de fertilisantLa distribution de nourritureLa dureacutee de lrsquoeacuteclairage
Commander lrsquoopeacuteration des appareils Reacuteguler
le niveau et la dureteacute de lrsquoeauLa tempeacuterature
GTI515 Automne 2013 JF Couturier 80
Deacutepartement de geacutenie logiciel et des TI
Exemple de caracteacuteristiquesle cas ACS
Deacutemarrage automatique du systegraveme Programmation conserveacutee en cas de
panne drsquoalimentation Deacutetection automatique des modules Facile agrave programmer et agrave utiliser
Exigence non fonctionnelle
GTI515 Automne 2013 JF Couturier 81
Deacutepartement de geacutenie logiciel et des TI
Critegraveres drsquoeacutevaluation
Respect de lrsquoesprit du document
En tant qursquointervenant externe est-ce que je comprends bien
Respect de la forme du gabarit
Qualiteacute du franccedilais
Document de calibre professionnel que lrsquoon pourrait remettre agrave un dirigeant
GTI515 Automne 2013 JF Couturier 82
Deacutepartement de geacutenie logiciel et des TI
Grille drsquoeacutevaluation (sur 100)
Agrave venirhellip
GTI515 Automne 2013 JF Couturier 83
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 84
Prochain cours
La modeacutelisation des processus drsquoaffaires Le diagramme drsquoactiviteacute Le diagnostic des processus drsquoaffaires existant
Lectures Lrsquoutilisation drsquoUML Chapitre sur les diagrammes drsquoactiviteacutes dans Larman Lecture sur MDA Voir site Web du cours
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 85
Questions
- Systegravemes drsquoinformation dans les entreprises (GTI515)
- Plan du cours 1
- Qui suis-je JF Couturier
- Qui suis-je Eacutetudiant(e)
- Plan du cours 1 (2)
- Objectifs du programme
- Ingeacutenieur
- Programme GTI
- Geacutenie des TI
- Cours de speacutecialiteacutes GTI
- Objectif du cours
- Vue drsquoensemble du cours
- Lectures et reacutefeacuterences
- Regravegles du jeu
- QUIZ
- Plan du cours 1 (3)
- Plan de cours
- Laboratoires ndash GTI515
- Peacutenaliteacutes de retard
- Plagiat
- Plan du cours 1 (4)
- Les tendances dans le deacuteveloppement des systegravemes drsquoinformation
- UML - Historique
- Pourquoi modeacuteliser
- La modeacutelisation dans les entreprises
- Quelques chiffres
- Quelques chiffres (2)
- Quelques chiffres (3)
- Quelques chiffres (4)
- Quelques chiffres (5)
- Et maintenant
- Et maintenant (2)
- Finalementhellip
- Reacuteussite Eacutechec
- Rappel
- Industrialisation
- Industrialisation (2)
- Slide 39
- Slide 40
- Usines logicielles (S Factory)
- Usines logicielles (S Factory) (2)
- Usines logicielles (S Factory) (3)
- Usines logicielles (S Factory) (4)
- Usines logicielles
- Domain Specific Langage
- BuzzhellipMDA MDD MDE
- Exemple
- Model Driven Architecture
- Model Driven Architecture (2)
- Model Driven Architecture (3)
- Model Driven Architecture (4)
- Model Driven Architecture (5)
- Concept principal de MDA
- CIM PIM PSM Code
- Les diffeacuterentes eacutetapes
- MDA et Gartner
- Eacutetude de cas
- Impact
- Impact (2)
- Impact (3)
- Slide 63
- Slide 64
- Slide 65
- Exemple (2)
- Ressources
- Laboratoire 1
- Le document de vision (RUP)
- Slide 70
- Exemples de caracteacuteristiques (feature)
- Niveau de deacutetail des caracteacuteristiques
- Attributs des caracteacuteristiques
- Attributs des caracteacuteristiques
- Slide 75
- Reacutedaction du document de vision
- Exemple le cas ACS
- Slide 78
- Exemple de problegravemes le cas ACS
- Exemple de besoins le cas ACS
- Exemple de caracteacuteristiques le cas ACS
- Critegraveres drsquoeacutevaluation
- Grille drsquoeacutevaluation (sur 100)
- Prochain cours
- Questions
-
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 78
Deacutepartement de geacutenie logiciel et des TI
Exemple de problegravemesle cas ACS
Controcircle drsquoune large gamme de mateacuteriels
Utilisation compliqueacutee Difficulteacutes de programmation Disponibiliteacute du mateacuteriel Risque de mauvaise utilisation
GTI515 Automne 2013 JF Couturier 79
Deacutepartement de geacutenie logiciel et des TI
Exemple de besoinsle cas ACS
AutomatiserLa distribution de fertilisantLa distribution de nourritureLa dureacutee de lrsquoeacuteclairage
Commander lrsquoopeacuteration des appareils Reacuteguler
le niveau et la dureteacute de lrsquoeauLa tempeacuterature
GTI515 Automne 2013 JF Couturier 80
Deacutepartement de geacutenie logiciel et des TI
Exemple de caracteacuteristiquesle cas ACS
Deacutemarrage automatique du systegraveme Programmation conserveacutee en cas de
panne drsquoalimentation Deacutetection automatique des modules Facile agrave programmer et agrave utiliser
Exigence non fonctionnelle
GTI515 Automne 2013 JF Couturier 81
Deacutepartement de geacutenie logiciel et des TI
Critegraveres drsquoeacutevaluation
Respect de lrsquoesprit du document
En tant qursquointervenant externe est-ce que je comprends bien
Respect de la forme du gabarit
Qualiteacute du franccedilais
Document de calibre professionnel que lrsquoon pourrait remettre agrave un dirigeant
GTI515 Automne 2013 JF Couturier 82
Deacutepartement de geacutenie logiciel et des TI
Grille drsquoeacutevaluation (sur 100)
Agrave venirhellip
GTI515 Automne 2013 JF Couturier 83
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 84
Prochain cours
La modeacutelisation des processus drsquoaffaires Le diagramme drsquoactiviteacute Le diagnostic des processus drsquoaffaires existant
Lectures Lrsquoutilisation drsquoUML Chapitre sur les diagrammes drsquoactiviteacutes dans Larman Lecture sur MDA Voir site Web du cours
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 85
Questions
- Systegravemes drsquoinformation dans les entreprises (GTI515)
- Plan du cours 1
- Qui suis-je JF Couturier
- Qui suis-je Eacutetudiant(e)
- Plan du cours 1 (2)
- Objectifs du programme
- Ingeacutenieur
- Programme GTI
- Geacutenie des TI
- Cours de speacutecialiteacutes GTI
- Objectif du cours
- Vue drsquoensemble du cours
- Lectures et reacutefeacuterences
- Regravegles du jeu
- QUIZ
- Plan du cours 1 (3)
- Plan de cours
- Laboratoires ndash GTI515
- Peacutenaliteacutes de retard
- Plagiat
- Plan du cours 1 (4)
- Les tendances dans le deacuteveloppement des systegravemes drsquoinformation
- UML - Historique
- Pourquoi modeacuteliser
- La modeacutelisation dans les entreprises
- Quelques chiffres
- Quelques chiffres (2)
- Quelques chiffres (3)
- Quelques chiffres (4)
- Quelques chiffres (5)
- Et maintenant
- Et maintenant (2)
- Finalementhellip
- Reacuteussite Eacutechec
- Rappel
- Industrialisation
- Industrialisation (2)
- Slide 39
- Slide 40
- Usines logicielles (S Factory)
- Usines logicielles (S Factory) (2)
- Usines logicielles (S Factory) (3)
- Usines logicielles (S Factory) (4)
- Usines logicielles
- Domain Specific Langage
- BuzzhellipMDA MDD MDE
- Exemple
- Model Driven Architecture
- Model Driven Architecture (2)
- Model Driven Architecture (3)
- Model Driven Architecture (4)
- Model Driven Architecture (5)
- Concept principal de MDA
- CIM PIM PSM Code
- Les diffeacuterentes eacutetapes
- MDA et Gartner
- Eacutetude de cas
- Impact
- Impact (2)
- Impact (3)
- Slide 63
- Slide 64
- Slide 65
- Exemple (2)
- Ressources
- Laboratoire 1
- Le document de vision (RUP)
- Slide 70
- Exemples de caracteacuteristiques (feature)
- Niveau de deacutetail des caracteacuteristiques
- Attributs des caracteacuteristiques
- Attributs des caracteacuteristiques
- Slide 75
- Reacutedaction du document de vision
- Exemple le cas ACS
- Slide 78
- Exemple de problegravemes le cas ACS
- Exemple de besoins le cas ACS
- Exemple de caracteacuteristiques le cas ACS
- Critegraveres drsquoeacutevaluation
- Grille drsquoeacutevaluation (sur 100)
- Prochain cours
- Questions
-
Deacutepartement de geacutenie logiciel et des TI
Exemple de problegravemesle cas ACS
Controcircle drsquoune large gamme de mateacuteriels
Utilisation compliqueacutee Difficulteacutes de programmation Disponibiliteacute du mateacuteriel Risque de mauvaise utilisation
GTI515 Automne 2013 JF Couturier 79
Deacutepartement de geacutenie logiciel et des TI
Exemple de besoinsle cas ACS
AutomatiserLa distribution de fertilisantLa distribution de nourritureLa dureacutee de lrsquoeacuteclairage
Commander lrsquoopeacuteration des appareils Reacuteguler
le niveau et la dureteacute de lrsquoeauLa tempeacuterature
GTI515 Automne 2013 JF Couturier 80
Deacutepartement de geacutenie logiciel et des TI
Exemple de caracteacuteristiquesle cas ACS
Deacutemarrage automatique du systegraveme Programmation conserveacutee en cas de
panne drsquoalimentation Deacutetection automatique des modules Facile agrave programmer et agrave utiliser
Exigence non fonctionnelle
GTI515 Automne 2013 JF Couturier 81
Deacutepartement de geacutenie logiciel et des TI
Critegraveres drsquoeacutevaluation
Respect de lrsquoesprit du document
En tant qursquointervenant externe est-ce que je comprends bien
Respect de la forme du gabarit
Qualiteacute du franccedilais
Document de calibre professionnel que lrsquoon pourrait remettre agrave un dirigeant
GTI515 Automne 2013 JF Couturier 82
Deacutepartement de geacutenie logiciel et des TI
Grille drsquoeacutevaluation (sur 100)
Agrave venirhellip
GTI515 Automne 2013 JF Couturier 83
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 84
Prochain cours
La modeacutelisation des processus drsquoaffaires Le diagramme drsquoactiviteacute Le diagnostic des processus drsquoaffaires existant
Lectures Lrsquoutilisation drsquoUML Chapitre sur les diagrammes drsquoactiviteacutes dans Larman Lecture sur MDA Voir site Web du cours
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 85
Questions
- Systegravemes drsquoinformation dans les entreprises (GTI515)
- Plan du cours 1
- Qui suis-je JF Couturier
- Qui suis-je Eacutetudiant(e)
- Plan du cours 1 (2)
- Objectifs du programme
- Ingeacutenieur
- Programme GTI
- Geacutenie des TI
- Cours de speacutecialiteacutes GTI
- Objectif du cours
- Vue drsquoensemble du cours
- Lectures et reacutefeacuterences
- Regravegles du jeu
- QUIZ
- Plan du cours 1 (3)
- Plan de cours
- Laboratoires ndash GTI515
- Peacutenaliteacutes de retard
- Plagiat
- Plan du cours 1 (4)
- Les tendances dans le deacuteveloppement des systegravemes drsquoinformation
- UML - Historique
- Pourquoi modeacuteliser
- La modeacutelisation dans les entreprises
- Quelques chiffres
- Quelques chiffres (2)
- Quelques chiffres (3)
- Quelques chiffres (4)
- Quelques chiffres (5)
- Et maintenant
- Et maintenant (2)
- Finalementhellip
- Reacuteussite Eacutechec
- Rappel
- Industrialisation
- Industrialisation (2)
- Slide 39
- Slide 40
- Usines logicielles (S Factory)
- Usines logicielles (S Factory) (2)
- Usines logicielles (S Factory) (3)
- Usines logicielles (S Factory) (4)
- Usines logicielles
- Domain Specific Langage
- BuzzhellipMDA MDD MDE
- Exemple
- Model Driven Architecture
- Model Driven Architecture (2)
- Model Driven Architecture (3)
- Model Driven Architecture (4)
- Model Driven Architecture (5)
- Concept principal de MDA
- CIM PIM PSM Code
- Les diffeacuterentes eacutetapes
- MDA et Gartner
- Eacutetude de cas
- Impact
- Impact (2)
- Impact (3)
- Slide 63
- Slide 64
- Slide 65
- Exemple (2)
- Ressources
- Laboratoire 1
- Le document de vision (RUP)
- Slide 70
- Exemples de caracteacuteristiques (feature)
- Niveau de deacutetail des caracteacuteristiques
- Attributs des caracteacuteristiques
- Attributs des caracteacuteristiques
- Slide 75
- Reacutedaction du document de vision
- Exemple le cas ACS
- Slide 78
- Exemple de problegravemes le cas ACS
- Exemple de besoins le cas ACS
- Exemple de caracteacuteristiques le cas ACS
- Critegraveres drsquoeacutevaluation
- Grille drsquoeacutevaluation (sur 100)
- Prochain cours
- Questions
-
Deacutepartement de geacutenie logiciel et des TI
Exemple de besoinsle cas ACS
AutomatiserLa distribution de fertilisantLa distribution de nourritureLa dureacutee de lrsquoeacuteclairage
Commander lrsquoopeacuteration des appareils Reacuteguler
le niveau et la dureteacute de lrsquoeauLa tempeacuterature
GTI515 Automne 2013 JF Couturier 80
Deacutepartement de geacutenie logiciel et des TI
Exemple de caracteacuteristiquesle cas ACS
Deacutemarrage automatique du systegraveme Programmation conserveacutee en cas de
panne drsquoalimentation Deacutetection automatique des modules Facile agrave programmer et agrave utiliser
Exigence non fonctionnelle
GTI515 Automne 2013 JF Couturier 81
Deacutepartement de geacutenie logiciel et des TI
Critegraveres drsquoeacutevaluation
Respect de lrsquoesprit du document
En tant qursquointervenant externe est-ce que je comprends bien
Respect de la forme du gabarit
Qualiteacute du franccedilais
Document de calibre professionnel que lrsquoon pourrait remettre agrave un dirigeant
GTI515 Automne 2013 JF Couturier 82
Deacutepartement de geacutenie logiciel et des TI
Grille drsquoeacutevaluation (sur 100)
Agrave venirhellip
GTI515 Automne 2013 JF Couturier 83
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 84
Prochain cours
La modeacutelisation des processus drsquoaffaires Le diagramme drsquoactiviteacute Le diagnostic des processus drsquoaffaires existant
Lectures Lrsquoutilisation drsquoUML Chapitre sur les diagrammes drsquoactiviteacutes dans Larman Lecture sur MDA Voir site Web du cours
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 85
Questions
- Systegravemes drsquoinformation dans les entreprises (GTI515)
- Plan du cours 1
- Qui suis-je JF Couturier
- Qui suis-je Eacutetudiant(e)
- Plan du cours 1 (2)
- Objectifs du programme
- Ingeacutenieur
- Programme GTI
- Geacutenie des TI
- Cours de speacutecialiteacutes GTI
- Objectif du cours
- Vue drsquoensemble du cours
- Lectures et reacutefeacuterences
- Regravegles du jeu
- QUIZ
- Plan du cours 1 (3)
- Plan de cours
- Laboratoires ndash GTI515
- Peacutenaliteacutes de retard
- Plagiat
- Plan du cours 1 (4)
- Les tendances dans le deacuteveloppement des systegravemes drsquoinformation
- UML - Historique
- Pourquoi modeacuteliser
- La modeacutelisation dans les entreprises
- Quelques chiffres
- Quelques chiffres (2)
- Quelques chiffres (3)
- Quelques chiffres (4)
- Quelques chiffres (5)
- Et maintenant
- Et maintenant (2)
- Finalementhellip
- Reacuteussite Eacutechec
- Rappel
- Industrialisation
- Industrialisation (2)
- Slide 39
- Slide 40
- Usines logicielles (S Factory)
- Usines logicielles (S Factory) (2)
- Usines logicielles (S Factory) (3)
- Usines logicielles (S Factory) (4)
- Usines logicielles
- Domain Specific Langage
- BuzzhellipMDA MDD MDE
- Exemple
- Model Driven Architecture
- Model Driven Architecture (2)
- Model Driven Architecture (3)
- Model Driven Architecture (4)
- Model Driven Architecture (5)
- Concept principal de MDA
- CIM PIM PSM Code
- Les diffeacuterentes eacutetapes
- MDA et Gartner
- Eacutetude de cas
- Impact
- Impact (2)
- Impact (3)
- Slide 63
- Slide 64
- Slide 65
- Exemple (2)
- Ressources
- Laboratoire 1
- Le document de vision (RUP)
- Slide 70
- Exemples de caracteacuteristiques (feature)
- Niveau de deacutetail des caracteacuteristiques
- Attributs des caracteacuteristiques
- Attributs des caracteacuteristiques
- Slide 75
- Reacutedaction du document de vision
- Exemple le cas ACS
- Slide 78
- Exemple de problegravemes le cas ACS
- Exemple de besoins le cas ACS
- Exemple de caracteacuteristiques le cas ACS
- Critegraveres drsquoeacutevaluation
- Grille drsquoeacutevaluation (sur 100)
- Prochain cours
- Questions
-
Deacutepartement de geacutenie logiciel et des TI
Exemple de caracteacuteristiquesle cas ACS
Deacutemarrage automatique du systegraveme Programmation conserveacutee en cas de
panne drsquoalimentation Deacutetection automatique des modules Facile agrave programmer et agrave utiliser
Exigence non fonctionnelle
GTI515 Automne 2013 JF Couturier 81
Deacutepartement de geacutenie logiciel et des TI
Critegraveres drsquoeacutevaluation
Respect de lrsquoesprit du document
En tant qursquointervenant externe est-ce que je comprends bien
Respect de la forme du gabarit
Qualiteacute du franccedilais
Document de calibre professionnel que lrsquoon pourrait remettre agrave un dirigeant
GTI515 Automne 2013 JF Couturier 82
Deacutepartement de geacutenie logiciel et des TI
Grille drsquoeacutevaluation (sur 100)
Agrave venirhellip
GTI515 Automne 2013 JF Couturier 83
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 84
Prochain cours
La modeacutelisation des processus drsquoaffaires Le diagramme drsquoactiviteacute Le diagnostic des processus drsquoaffaires existant
Lectures Lrsquoutilisation drsquoUML Chapitre sur les diagrammes drsquoactiviteacutes dans Larman Lecture sur MDA Voir site Web du cours
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 85
Questions
- Systegravemes drsquoinformation dans les entreprises (GTI515)
- Plan du cours 1
- Qui suis-je JF Couturier
- Qui suis-je Eacutetudiant(e)
- Plan du cours 1 (2)
- Objectifs du programme
- Ingeacutenieur
- Programme GTI
- Geacutenie des TI
- Cours de speacutecialiteacutes GTI
- Objectif du cours
- Vue drsquoensemble du cours
- Lectures et reacutefeacuterences
- Regravegles du jeu
- QUIZ
- Plan du cours 1 (3)
- Plan de cours
- Laboratoires ndash GTI515
- Peacutenaliteacutes de retard
- Plagiat
- Plan du cours 1 (4)
- Les tendances dans le deacuteveloppement des systegravemes drsquoinformation
- UML - Historique
- Pourquoi modeacuteliser
- La modeacutelisation dans les entreprises
- Quelques chiffres
- Quelques chiffres (2)
- Quelques chiffres (3)
- Quelques chiffres (4)
- Quelques chiffres (5)
- Et maintenant
- Et maintenant (2)
- Finalementhellip
- Reacuteussite Eacutechec
- Rappel
- Industrialisation
- Industrialisation (2)
- Slide 39
- Slide 40
- Usines logicielles (S Factory)
- Usines logicielles (S Factory) (2)
- Usines logicielles (S Factory) (3)
- Usines logicielles (S Factory) (4)
- Usines logicielles
- Domain Specific Langage
- BuzzhellipMDA MDD MDE
- Exemple
- Model Driven Architecture
- Model Driven Architecture (2)
- Model Driven Architecture (3)
- Model Driven Architecture (4)
- Model Driven Architecture (5)
- Concept principal de MDA
- CIM PIM PSM Code
- Les diffeacuterentes eacutetapes
- MDA et Gartner
- Eacutetude de cas
- Impact
- Impact (2)
- Impact (3)
- Slide 63
- Slide 64
- Slide 65
- Exemple (2)
- Ressources
- Laboratoire 1
- Le document de vision (RUP)
- Slide 70
- Exemples de caracteacuteristiques (feature)
- Niveau de deacutetail des caracteacuteristiques
- Attributs des caracteacuteristiques
- Attributs des caracteacuteristiques
- Slide 75
- Reacutedaction du document de vision
- Exemple le cas ACS
- Slide 78
- Exemple de problegravemes le cas ACS
- Exemple de besoins le cas ACS
- Exemple de caracteacuteristiques le cas ACS
- Critegraveres drsquoeacutevaluation
- Grille drsquoeacutevaluation (sur 100)
- Prochain cours
- Questions
-
Deacutepartement de geacutenie logiciel et des TI
Critegraveres drsquoeacutevaluation
Respect de lrsquoesprit du document
En tant qursquointervenant externe est-ce que je comprends bien
Respect de la forme du gabarit
Qualiteacute du franccedilais
Document de calibre professionnel que lrsquoon pourrait remettre agrave un dirigeant
GTI515 Automne 2013 JF Couturier 82
Deacutepartement de geacutenie logiciel et des TI
Grille drsquoeacutevaluation (sur 100)
Agrave venirhellip
GTI515 Automne 2013 JF Couturier 83
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 84
Prochain cours
La modeacutelisation des processus drsquoaffaires Le diagramme drsquoactiviteacute Le diagnostic des processus drsquoaffaires existant
Lectures Lrsquoutilisation drsquoUML Chapitre sur les diagrammes drsquoactiviteacutes dans Larman Lecture sur MDA Voir site Web du cours
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 85
Questions
- Systegravemes drsquoinformation dans les entreprises (GTI515)
- Plan du cours 1
- Qui suis-je JF Couturier
- Qui suis-je Eacutetudiant(e)
- Plan du cours 1 (2)
- Objectifs du programme
- Ingeacutenieur
- Programme GTI
- Geacutenie des TI
- Cours de speacutecialiteacutes GTI
- Objectif du cours
- Vue drsquoensemble du cours
- Lectures et reacutefeacuterences
- Regravegles du jeu
- QUIZ
- Plan du cours 1 (3)
- Plan de cours
- Laboratoires ndash GTI515
- Peacutenaliteacutes de retard
- Plagiat
- Plan du cours 1 (4)
- Les tendances dans le deacuteveloppement des systegravemes drsquoinformation
- UML - Historique
- Pourquoi modeacuteliser
- La modeacutelisation dans les entreprises
- Quelques chiffres
- Quelques chiffres (2)
- Quelques chiffres (3)
- Quelques chiffres (4)
- Quelques chiffres (5)
- Et maintenant
- Et maintenant (2)
- Finalementhellip
- Reacuteussite Eacutechec
- Rappel
- Industrialisation
- Industrialisation (2)
- Slide 39
- Slide 40
- Usines logicielles (S Factory)
- Usines logicielles (S Factory) (2)
- Usines logicielles (S Factory) (3)
- Usines logicielles (S Factory) (4)
- Usines logicielles
- Domain Specific Langage
- BuzzhellipMDA MDD MDE
- Exemple
- Model Driven Architecture
- Model Driven Architecture (2)
- Model Driven Architecture (3)
- Model Driven Architecture (4)
- Model Driven Architecture (5)
- Concept principal de MDA
- CIM PIM PSM Code
- Les diffeacuterentes eacutetapes
- MDA et Gartner
- Eacutetude de cas
- Impact
- Impact (2)
- Impact (3)
- Slide 63
- Slide 64
- Slide 65
- Exemple (2)
- Ressources
- Laboratoire 1
- Le document de vision (RUP)
- Slide 70
- Exemples de caracteacuteristiques (feature)
- Niveau de deacutetail des caracteacuteristiques
- Attributs des caracteacuteristiques
- Attributs des caracteacuteristiques
- Slide 75
- Reacutedaction du document de vision
- Exemple le cas ACS
- Slide 78
- Exemple de problegravemes le cas ACS
- Exemple de besoins le cas ACS
- Exemple de caracteacuteristiques le cas ACS
- Critegraveres drsquoeacutevaluation
- Grille drsquoeacutevaluation (sur 100)
- Prochain cours
- Questions
-
Deacutepartement de geacutenie logiciel et des TI
Grille drsquoeacutevaluation (sur 100)
Agrave venirhellip
GTI515 Automne 2013 JF Couturier 83
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 84
Prochain cours
La modeacutelisation des processus drsquoaffaires Le diagramme drsquoactiviteacute Le diagnostic des processus drsquoaffaires existant
Lectures Lrsquoutilisation drsquoUML Chapitre sur les diagrammes drsquoactiviteacutes dans Larman Lecture sur MDA Voir site Web du cours
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 85
Questions
- Systegravemes drsquoinformation dans les entreprises (GTI515)
- Plan du cours 1
- Qui suis-je JF Couturier
- Qui suis-je Eacutetudiant(e)
- Plan du cours 1 (2)
- Objectifs du programme
- Ingeacutenieur
- Programme GTI
- Geacutenie des TI
- Cours de speacutecialiteacutes GTI
- Objectif du cours
- Vue drsquoensemble du cours
- Lectures et reacutefeacuterences
- Regravegles du jeu
- QUIZ
- Plan du cours 1 (3)
- Plan de cours
- Laboratoires ndash GTI515
- Peacutenaliteacutes de retard
- Plagiat
- Plan du cours 1 (4)
- Les tendances dans le deacuteveloppement des systegravemes drsquoinformation
- UML - Historique
- Pourquoi modeacuteliser
- La modeacutelisation dans les entreprises
- Quelques chiffres
- Quelques chiffres (2)
- Quelques chiffres (3)
- Quelques chiffres (4)
- Quelques chiffres (5)
- Et maintenant
- Et maintenant (2)
- Finalementhellip
- Reacuteussite Eacutechec
- Rappel
- Industrialisation
- Industrialisation (2)
- Slide 39
- Slide 40
- Usines logicielles (S Factory)
- Usines logicielles (S Factory) (2)
- Usines logicielles (S Factory) (3)
- Usines logicielles (S Factory) (4)
- Usines logicielles
- Domain Specific Langage
- BuzzhellipMDA MDD MDE
- Exemple
- Model Driven Architecture
- Model Driven Architecture (2)
- Model Driven Architecture (3)
- Model Driven Architecture (4)
- Model Driven Architecture (5)
- Concept principal de MDA
- CIM PIM PSM Code
- Les diffeacuterentes eacutetapes
- MDA et Gartner
- Eacutetude de cas
- Impact
- Impact (2)
- Impact (3)
- Slide 63
- Slide 64
- Slide 65
- Exemple (2)
- Ressources
- Laboratoire 1
- Le document de vision (RUP)
- Slide 70
- Exemples de caracteacuteristiques (feature)
- Niveau de deacutetail des caracteacuteristiques
- Attributs des caracteacuteristiques
- Attributs des caracteacuteristiques
- Slide 75
- Reacutedaction du document de vision
- Exemple le cas ACS
- Slide 78
- Exemple de problegravemes le cas ACS
- Exemple de besoins le cas ACS
- Exemple de caracteacuteristiques le cas ACS
- Critegraveres drsquoeacutevaluation
- Grille drsquoeacutevaluation (sur 100)
- Prochain cours
- Questions
-
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 84
Prochain cours
La modeacutelisation des processus drsquoaffaires Le diagramme drsquoactiviteacute Le diagnostic des processus drsquoaffaires existant
Lectures Lrsquoutilisation drsquoUML Chapitre sur les diagrammes drsquoactiviteacutes dans Larman Lecture sur MDA Voir site Web du cours
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 85
Questions
- Systegravemes drsquoinformation dans les entreprises (GTI515)
- Plan du cours 1
- Qui suis-je JF Couturier
- Qui suis-je Eacutetudiant(e)
- Plan du cours 1 (2)
- Objectifs du programme
- Ingeacutenieur
- Programme GTI
- Geacutenie des TI
- Cours de speacutecialiteacutes GTI
- Objectif du cours
- Vue drsquoensemble du cours
- Lectures et reacutefeacuterences
- Regravegles du jeu
- QUIZ
- Plan du cours 1 (3)
- Plan de cours
- Laboratoires ndash GTI515
- Peacutenaliteacutes de retard
- Plagiat
- Plan du cours 1 (4)
- Les tendances dans le deacuteveloppement des systegravemes drsquoinformation
- UML - Historique
- Pourquoi modeacuteliser
- La modeacutelisation dans les entreprises
- Quelques chiffres
- Quelques chiffres (2)
- Quelques chiffres (3)
- Quelques chiffres (4)
- Quelques chiffres (5)
- Et maintenant
- Et maintenant (2)
- Finalementhellip
- Reacuteussite Eacutechec
- Rappel
- Industrialisation
- Industrialisation (2)
- Slide 39
- Slide 40
- Usines logicielles (S Factory)
- Usines logicielles (S Factory) (2)
- Usines logicielles (S Factory) (3)
- Usines logicielles (S Factory) (4)
- Usines logicielles
- Domain Specific Langage
- BuzzhellipMDA MDD MDE
- Exemple
- Model Driven Architecture
- Model Driven Architecture (2)
- Model Driven Architecture (3)
- Model Driven Architecture (4)
- Model Driven Architecture (5)
- Concept principal de MDA
- CIM PIM PSM Code
- Les diffeacuterentes eacutetapes
- MDA et Gartner
- Eacutetude de cas
- Impact
- Impact (2)
- Impact (3)
- Slide 63
- Slide 64
- Slide 65
- Exemple (2)
- Ressources
- Laboratoire 1
- Le document de vision (RUP)
- Slide 70
- Exemples de caracteacuteristiques (feature)
- Niveau de deacutetail des caracteacuteristiques
- Attributs des caracteacuteristiques
- Attributs des caracteacuteristiques
- Slide 75
- Reacutedaction du document de vision
- Exemple le cas ACS
- Slide 78
- Exemple de problegravemes le cas ACS
- Exemple de besoins le cas ACS
- Exemple de caracteacuteristiques le cas ACS
- Critegraveres drsquoeacutevaluation
- Grille drsquoeacutevaluation (sur 100)
- Prochain cours
- Questions
-
Deacutepartement de geacutenie logiciel et des TIGTI515 Automne 2013 JF Couturier 85
Questions
- Systegravemes drsquoinformation dans les entreprises (GTI515)
- Plan du cours 1
- Qui suis-je JF Couturier
- Qui suis-je Eacutetudiant(e)
- Plan du cours 1 (2)
- Objectifs du programme
- Ingeacutenieur
- Programme GTI
- Geacutenie des TI
- Cours de speacutecialiteacutes GTI
- Objectif du cours
- Vue drsquoensemble du cours
- Lectures et reacutefeacuterences
- Regravegles du jeu
- QUIZ
- Plan du cours 1 (3)
- Plan de cours
- Laboratoires ndash GTI515
- Peacutenaliteacutes de retard
- Plagiat
- Plan du cours 1 (4)
- Les tendances dans le deacuteveloppement des systegravemes drsquoinformation
- UML - Historique
- Pourquoi modeacuteliser
- La modeacutelisation dans les entreprises
- Quelques chiffres
- Quelques chiffres (2)
- Quelques chiffres (3)
- Quelques chiffres (4)
- Quelques chiffres (5)
- Et maintenant
- Et maintenant (2)
- Finalementhellip
- Reacuteussite Eacutechec
- Rappel
- Industrialisation
- Industrialisation (2)
- Slide 39
- Slide 40
- Usines logicielles (S Factory)
- Usines logicielles (S Factory) (2)
- Usines logicielles (S Factory) (3)
- Usines logicielles (S Factory) (4)
- Usines logicielles
- Domain Specific Langage
- BuzzhellipMDA MDD MDE
- Exemple
- Model Driven Architecture
- Model Driven Architecture (2)
- Model Driven Architecture (3)
- Model Driven Architecture (4)
- Model Driven Architecture (5)
- Concept principal de MDA
- CIM PIM PSM Code
- Les diffeacuterentes eacutetapes
- MDA et Gartner
- Eacutetude de cas
- Impact
- Impact (2)
- Impact (3)
- Slide 63
- Slide 64
- Slide 65
- Exemple (2)
- Ressources
- Laboratoire 1
- Le document de vision (RUP)
- Slide 70
- Exemples de caracteacuteristiques (feature)
- Niveau de deacutetail des caracteacuteristiques
- Attributs des caracteacuteristiques
- Attributs des caracteacuteristiques
- Slide 75
- Reacutedaction du document de vision
- Exemple le cas ACS
- Slide 78
- Exemple de problegravemes le cas ACS
- Exemple de besoins le cas ACS
- Exemple de caracteacuteristiques le cas ACS
- Critegraveres drsquoeacutevaluation
- Grille drsquoeacutevaluation (sur 100)
- Prochain cours
- Questions
-