c2_Introduction Au Genie Logiciel
-
Upload
monique-calmon -
Category
Documents
-
view
230 -
download
0
Transcript of c2_Introduction Au Genie Logiciel
-
7/25/2019 c2_Introduction Au Genie Logiciel
1/74
Introduction au GnieLogiciel
A. BeugnardMajeure Informatique INF301 GL-C22e semestre 2015
-
7/25/2019 c2_Introduction Au Genie Logiciel
2/74
Les cours de laxe GL de lUV1 - INF301
1. La dcouverte des objets2. Les cycles de vie des logiciels3. UML structurel et hritage
4. UML comportemental et concurrence
2 / 47 A. Beugnard Introduction au Gnie Logiciel
-
7/25/2019 c2_Introduction Au Genie Logiciel
3/74
Ce quon va voir ensemble
1. Le dveloppement logiciel2. Notion de cycle de vie3. Notions de qualit
Je vous invite prendre des notes. . .
3 / 47 A. Beugnard Introduction au Gnie Logiciel
-
7/25/2019 c2_Introduction Au Genie Logiciel
4/74
Avancement
1 Le dveloppement logicielIntroductionMtaphore avec le gnie civil
2 Notion de cycle de vie
3 Notions qualit logiciel
4 Synthse
4 / 47 A. Beugnard Introduction au Gnie Logiciel
-
7/25/2019 c2_Introduction Au Genie Logiciel
5/74
Pourquoi sintresser au logiciel ?
Il y en a partoutMontre ; 2 K instructionsTlviseur ; 100 K instructionsAutomobile ; 150 K instructionsTlphone mobile ; 150 K instructionsCentral tlphonique ; 1 M instructionsSystme du Charles de Gaule ; 8 M instructionsGuerre des toiles (projet Reagan) ; 50 M instructions
Vous en utiliserezVous en dfinirezVous en raliserez
5 / 47 A. Beugnard Introduction au Gnie Logiciel
-
7/25/2019 c2_Introduction Au Genie Logiciel
6/74
Des exemples
Robothttp://www.youtube.com/watch?v=dKZczUDGp_IAscenseur
http://www.youtube.com/watch?v=jYdfMkhuvfw
Contrle arienhttp://www.youtube.com/watch?v=y-38U_BdTGM
Salle contrle mtrohttp://www.youtube.com/watch?v=SmBAHr9OJnw
6 / 47 A. Beugnard Introduction au Gnie Logiciel
http://www.youtube.com/watch?v=dKZczUDGp_Ihttp://www.youtube.com/watch?v=jYdfMkhuvfwhttp://www.youtube.com/watch?v=y-38U_BdTGMhttp://www.youtube.com/watch?v=SmBAHr9OJnwhttp://www.youtube.com/watch?v=SmBAHr9OJnwhttp://www.youtube.com/watch?v=y-38U_BdTGMhttp://www.youtube.com/watch?v=jYdfMkhuvfwhttp://www.youtube.com/watch?v=dKZczUDGp_I -
7/25/2019 c2_Introduction Au Genie Logiciel
7/74
Les deux grands dfis
Matriser la tailledes informations/donnesdes systmes (rpartition gographique)des quipes
7 / 47 A. Beugnard Introduction au Gnie Logiciel
-
7/25/2019 c2_Introduction Au Genie Logiciel
8/74
Les deux grands dfis
Matriser la tailledes informations/donnesdes systmes (rpartition gographique)des quipes
Matiser la duremaintenir sur 10, 25, 30 ansrutiliser
7 / 47 A. Beugnard Introduction au Gnie Logiciel
-
7/25/2019 c2_Introduction Au Genie Logiciel
9/74
Les deux grands dfis
Matriser la tailledes informations/donnesdes systmes (rpartition gographique)des quipes
Matiser la duremaintenir sur 10, 25, 30 ansrutiliser
Difficile dans une cole...donc on simuledes
projets...comme lefil rouge
7 / 47 A. Beugnard Introduction au Gnie Logiciel
-
7/25/2019 c2_Introduction Au Genie Logiciel
10/74
Nature dominante
donne
interaction algorithme
12
3
4
5
6
1. prvision mto2. distributeur billets
3. ascenseur4. logiciel de paie5. diteur de texte6. transformation de
fichier
8 / 47 A. Beugnard Introduction au Gnie Logiciel
-
7/25/2019 c2_Introduction Au Genie Logiciel
11/74
Est-ce que a marche ?
Des erreurs fameuses. . .http://en.wikipedia.org/wiki/Software_bug
http://www5.in.tum.de/~huckle/bugse.html
http://www.cs.tau.ac.il/~nachumd/verify/horror.html
http://www.mines.inpl-nancy.fr/~tisseran/
cours/qualite-logiciel/qualite_logiciel.
html
9 / 47 A. Beugnard Introduction au Gnie Logiciel
http://en.wikipedia.org/wiki/Software_bughttp://www5.in.tum.de/~huckle/bugse.htmlhttp://www.cs.tau.ac.il/~nachumd/verify/horror.htmlhttp://www.cs.tau.ac.il/~nachumd/verify/horror.htmlhttp://www.mines.inpl-nancy.fr/~tisseran/cours/qualite-logiciel/qualite_logiciel.htmlhttp://www.mines.inpl-nancy.fr/~tisseran/cours/qualite-logiciel/qualite_logiciel.htmlhttp://www.mines.inpl-nancy.fr/~tisseran/cours/qualite-logiciel/qualite_logiciel.htmlhttp://www.mines.inpl-nancy.fr/~tisseran/cours/qualite-logiciel/qualite_logiciel.htmlhttp://www.mines.inpl-nancy.fr/~tisseran/cours/qualite-logiciel/qualite_logiciel.htmlhttp://www.mines.inpl-nancy.fr/~tisseran/cours/qualite-logiciel/qualite_logiciel.htmlhttp://www.cs.tau.ac.il/~nachumd/verify/horror.htmlhttp://www.cs.tau.ac.il/~nachumd/verify/horror.htmlhttp://www5.in.tum.de/~huckle/bugse.htmlhttp://en.wikipedia.org/wiki/Software_bug -
7/25/2019 c2_Introduction Au Genie Logiciel
12/74
Constats stables depuis 20 ans !
52.19604:Russite
29%
138.59253:Echec
19%
266.39648:Mitig
52%
10 / 47 A. Beugnard Introduction au Gnie Logiciel
-
7/25/2019 c2_Introduction Au Genie Logiciel
13/74
Citations
Les professionnels de linformatique se distinguent desautres par la pitre qualit de leur production. Ils nefournissent pas de garantie de leurs logiciels, pire, ilsdgagent leur responsabilit pour toutes les erreurs queleurs produits pourraient contenir.
Cit. approx. C.A.R. Hoare
Aujourdhui les problmes importants (de la production delogiciel) ne sont pas des problmes techniques, mais des
problmes de gestion.Prsident dun groupe de travail du DoD pour
lamlioration de lacquisition de logiciel
11 / 47 A. Beugnard Introduction au Gnie Logiciel
-
7/25/2019 c2_Introduction Au Genie Logiciel
14/74
Logiciel / Matriel
Le matriel cote de moins en moins cher.Le logiciel est de plus en plus coteux.
12 / 47 A. Beugnard Introduction au Gnie Logiciel
-
7/25/2019 c2_Introduction Au Genie Logiciel
15/74
Introduction au gnie logiciel
Vous avez des bases de programmation. . . maisProgrammernest pas ConcevoirLa technique ? ncessaire, mais pas si importanteque a!Le VRAI problme difficile : organisation, gestion
difficult de formalisationmultitude de paramtres, facteursgestions des humains
13 / 47 A. Beugnard Introduction au Gnie Logiciel
-
7/25/2019 c2_Introduction Au Genie Logiciel
16/74
Gnie logiciel : dfinitions
Ensemble de moyens (techniques, mthodes) misen uvre pour la construction de systmesinformatiques ( logiciel prpondrant).
Ensemble de moyens (techniques, mthodes) misen uvre pour la construction de logiciels.
14 / 47 A. Beugnard Introduction au Gnie Logiciel
-
7/25/2019 c2_Introduction Au Genie Logiciel
17/74
Les principaux acteurs
Client (MOA)Analyse les besoinsRdige un cahier des
chargesFait un appel doffrevalue les rponses
Choisit un prestataireSuit, participeRecette le produit
Fournisseur (MOE)
Analyse les besoinsRpond un appel doffre(analyse, faisabilit,intrt, prvisions,planification)
Conoit, raliseLivre le produit
15 / 47 A. Beugnard Introduction au Gnie Logiciel
-
7/25/2019 c2_Introduction Au Genie Logiciel
18/74
Les principaux objectifs
Client (MOA)Exprimer des besoins
FonctionnelsOprationnels
Non-fonctionnels (Qualit)Accepter le produit
Valider (fait ce quil faut)
Fournisseur (MOE)
Satisfaire les besoinsChoix de conception
Choix techniquesProgrammes, configurations,donnes
Livre le produitValider (fait ce quil faut)Vrifier (bien faire le travail)
16 / 47 A. Beugnard Introduction au Gnie Logiciel
-
7/25/2019 c2_Introduction Au Genie Logiciel
19/74
Objectifs de ce cours
Contexte du dveloppement logicielExemples et problmesPourquoi cest difficile
Les tapes dun cycle de vie
Les exigences dun systmeDes outils du dveloppement logiciel
17 / 47 A. Beugnard Introduction au Gnie Logiciel
-
7/25/2019 c2_Introduction Au Genie Logiciel
20/74
-
7/25/2019 c2_Introduction Au Genie Logiciel
21/74
-
7/25/2019 c2_Introduction Au Genie Logiciel
22/74
-
7/25/2019 c2_Introduction Au Genie Logiciel
23/74
De nombreuses rponses
Des tches connues. Un planning.De nombreux experts. Des documents.Nombreux outils. Nombreux spcialistes.
Des plans multiples.Plan doccupation des sols. Permis de construire.Prsence sur le chantier.. . .
En dveloppement logiciel, cest pareil !
20 / 47 A. Beugnard Introduction au Gnie Logiciel
-
7/25/2019 c2_Introduction Au Genie Logiciel
24/74
-
7/25/2019 c2_Introduction Au Genie Logiciel
25/74
-
7/25/2019 c2_Introduction Au Genie Logiciel
26/74
Avancement
1 Le dveloppement logiciel
2 Notion de cycle de vie
3 Notions qualit logiciel
4 Synthse
23 / 47 A. Beugnard Introduction au Gnie Logiciel
-
7/25/2019 c2_Introduction Au Genie Logiciel
27/74
-
7/25/2019 c2_Introduction Au Genie Logiciel
28/74
-
7/25/2019 c2_Introduction Au Genie Logiciel
29/74
-
7/25/2019 c2_Introduction Au Genie Logiciel
30/74
De la cration. . .
AnalyseComprendre le problmeComprendre les besoins (exigences)Exprime le problme :spcifier
Conceptions
Ralisation
25 / 47 A. Beugnard Introduction au Gnie Logiciel
-
7/25/2019 c2_Introduction Au Genie Logiciel
31/74
De la cration. . .
AnalyseComprendre le problmeComprendre les besoins (exigences)Exprime le problme :spcifier
Conceptions: comment dfinir ?
Ralisation
25 / 47 A. Beugnard Introduction au Gnie Logiciel
-
7/25/2019 c2_Introduction Au Genie Logiciel
32/74
-
7/25/2019 c2_Introduction Au Genie Logiciel
33/74
-
7/25/2019 c2_Introduction Au Genie Logiciel
34/74
-
7/25/2019 c2_Introduction Au Genie Logiciel
35/74
... la recette
Tests unitairesTests dintgration
Tests systme
Recette
26 / 47 A. Beugnard Introduction au Gnie Logiciel
-
7/25/2019 c2_Introduction Au Genie Logiciel
36/74
-
7/25/2019 c2_Introduction Au Genie Logiciel
37/74
l
-
7/25/2019 c2_Introduction Au Genie Logiciel
38/74
... la recette
Tests unitairesPour validation et vrification par composant
Tests dintgration : comment dfinir ?
Tests systme
Recette
26 / 47 A. Beugnard Introduction au Gnie Logiciel
-
7/25/2019 c2_Introduction Au Genie Logiciel
39/74
l
-
7/25/2019 c2_Introduction Au Genie Logiciel
40/74
... la recette
Tests unitairesPour validation et vrification par composant
Tests dintgrationPour validation et vrification par sous-systmes
Tests systme : comment dfinir ?
Recette
26 / 47 A. Beugnard Introduction au Gnie Logiciel
l tt
-
7/25/2019 c2_Introduction Au Genie Logiciel
41/74
... la recette
Tests unitairesPour validation et vrification par composant
Tests dintgrationPour validation et vrification par sous-systmes
Tests systmePour validation fonctionnelle complte du systmePour validation non-fonctionnelle complte du systme(Car les proprits non-fonctionnelles sontmergentes)
Recette
26 / 47 A. Beugnard Introduction au Gnie Logiciel
l tt
-
7/25/2019 c2_Introduction Au Genie Logiciel
42/74
... la recette
Tests unitairesPour validation et vrification par composant
Tests dintgrationPour validation et vrification par sous-systmes
Tests systmePour validation fonctionnelle complte du systmePour validation non-fonctionnelle complte du systme(Car les proprits non-fonctionnelles sontmergentes)
Recette : comment dfinir ?
26 / 47 A. Beugnard Introduction au Gnie Logiciel
l tt
-
7/25/2019 c2_Introduction Au Genie Logiciel
43/74
... la recette
Tests unitairesPour validation et vrification par composant
Tests dintgrationPour validation et vrification par sous-systmes
Tests systmePour validation fonctionnelle complte du systmePour validation non-fonctionnelle complte du systme(Car les proprits non-fonctionnelles sontmergentes)
RecettePour validation des conditions oprationnelles
26 / 47 A. Beugnard Introduction au Gnie Logiciel
-
7/25/2019 c2_Introduction Au Genie Logiciel
44/74
-
7/25/2019 c2_Introduction Au Genie Logiciel
45/74
Et la maintenance ?
-
7/25/2019 c2_Introduction Au Genie Logiciel
46/74
Et la maintenance ?
D70 D80 F80 D90Cot 40%
(Source DATAMATION 15/2/1990)
28 / 47 A. Beugnard Introduction au Gnie Logiciel
Et la maintenance ?
-
7/25/2019 c2_Introduction Au Genie Logiciel
47/74
Et la maintenance ?
D70 D80 F80 D90Cot 40% 55% 75% 90%
(Source DATAMATION 15/2/1990)
28 / 47 A. Beugnard Introduction au Gnie Logiciel
Et la maintenance ?
-
7/25/2019 c2_Introduction Au Genie Logiciel
48/74
Et la maintenance ?
D70 D80 F80 D90Cot 40% 55% 75% 90%
(Source DATAMATION 15/2/1990)
Dure de vie augmenteBesoins changentTechnologies changentComplexit augmente
28 / 47 A. Beugnard Introduction au Gnie Logiciel
-
7/25/2019 c2_Introduction Au Genie Logiciel
49/74
-
7/25/2019 c2_Introduction Au Genie Logiciel
50/74
Des outils et donc des experts (processus)
-
7/25/2019 c2_Introduction Au Genie Logiciel
51/74
Des outils et donc des experts (processus)
Pour organiserPlanificationModlisation de processus (workflow)
Pour partagerForges, outils de gestion de version (RCS, CVS, SVN)
Pour communiquerCourrielEspaces collaboratifs
31 / 47 A. Beugnard Introduction au Gnie Logiciel
CASE tools; IDE; AGL; etc
-
7/25/2019 c2_Introduction Au Genie Logiciel
52/74
CASE tools; IDE; AGL; etc
Des outils proposent dintgrer tous ces outils diversen une bote outils universelle.On parle (en franais) dAtelier de Gnie Logiciel ou(en anglais) dIntegrated Development Environment
ou de Compter-Aided Software Engineering. . . parexemple :eclipsenebeans
jazz
32 / 47 A. Beugnard Introduction au Gnie Logiciel
Avancement
-
7/25/2019 c2_Introduction Au Genie Logiciel
53/74
Avancement
1 Le dveloppement logiciel
2 Notion de cycle de vie
3 Notions qualit logiciel
4
Synthse
33 / 47 A. Beugnard Introduction au Gnie Logiciel
-
7/25/2019 c2_Introduction Au Genie Logiciel
54/74
-
7/25/2019 c2_Introduction Au Genie Logiciel
55/74
Qualit et satisfaction
-
7/25/2019 c2_Introduction Au Genie Logiciel
56/74
Q
On distingue :
la qualit attendue par le clientla qualit voulue par le fournisseur (interprtation dela prcdente)la qualit ralise par le fournisseurla qualit perue par le client
35 / 47 A. Beugnard Introduction au Gnie Logiciel
-
7/25/2019 c2_Introduction Au Genie Logiciel
57/74
Un brin dhistoire
-
7/25/2019 c2_Introduction Au Genie Logiciel
58/74
Contrle qualit (1910) on retire les produits nonconformes
Matrise de la qualit (1950) on prvient lapparitionde non-conformit (ISO 9000 v 1987-1994)
Management de la qualit (1951) la qualit est unoutils de management (ISO 9000 v 2000)Amlioration continue (1951) on entre dans une
dynamique damlioration (CCM,
ISO 15504)Il faut distinguer les premires expriences. . . de lastandardisation des pratiques.
36 / 47 A. Beugnard Introduction au Gnie Logiciel
LAssurance Qualit : Dfinition
-
7/25/2019 c2_Introduction Au Genie Logiciel
59/74
Ensemble des activits prtablies etsystmatiques mises en uvre dans le cadre dusystme qualit et dmontres en tant que debesoin, pour donner la confiance approprie en ce
quune entit satisfera aux exigences pour laqualit
(ISO 8402, 1995)
LAssurance qualit sapplique aux produits (logiciels,matriels, services) ainsi quaux processus mis enuvre.
37 / 47 A. Beugnard Introduction au Gnie Logiciel
LAssurance Qualit : Objectif
-
7/25/2019 c2_Introduction Au Genie Logiciel
60/74
La mise en uvre du processus dAssurance qualitpermet de garantir que
le logiciel labor est conforme ses exigenceslensemble des processus mis en uvre se droulentconformment aux modalits retenues (= prvisions)
Elle permet de donner confiancedans la qualit deslogiciels produits au chef de projet, la hirarchie et
au client.
38 / 47 A. Beugnard Introduction au Gnie Logiciel
Dfinir les exigences : le rle du client
-
7/25/2019 c2_Introduction Au Genie Logiciel
61/74
Les fonctionsLes qualit du service
Les qualits du produit
39 / 47 A. Beugnard Introduction au Gnie Logiciel
-
7/25/2019 c2_Introduction Au Genie Logiciel
62/74
Dfinir les exigences : le rle du client
-
7/25/2019 c2_Introduction Au Genie Logiciel
63/74
Les fonctionsLes qualit du service
EfficacitDisponibilitScurit
Passage lchelleLes qualits du produitConformitPortabilitMaintenabilit
Comment dfinir ?boolen ? entier ? rel ? quelle unitquelle signification ?
39 / 47 A. Beugnard Introduction au Gnie Logiciel
-
7/25/2019 c2_Introduction Au Genie Logiciel
64/74
Quelques facteurs : ISO 9126
-
7/25/2019 c2_Introduction Au Genie Logiciel
65/74
Capacit fonctionnelle Ensemble dattributs portantsur lexistence dun ensemble de fonctionset leurs proprits donnes. Les fonctionssont celles qui satisfont aux besoins
exprims ou implicites.Fiabilit Ensemble dattributs portant sur laptitudedu logiciel maintenir son niveau de servicedans des conditions prcises et pendant une
priode dtermine.
40 / 47 A. Beugnard Introduction au Gnie Logiciel
-
7/25/2019 c2_Introduction Au Genie Logiciel
66/74
-
7/25/2019 c2_Introduction Au Genie Logiciel
67/74
-
7/25/2019 c2_Introduction Au Genie Logiciel
68/74
-
7/25/2019 c2_Introduction Au Genie Logiciel
69/74
Mesurer lapplication des critres
-
7/25/2019 c2_Introduction Au Genie Logiciel
70/74
Mesures produit service processus ObjectiveRponse(oui/non)Enqute(0 5)
44 / 47 A. Beugnard Introduction au Gnie Logiciel
-
7/25/2019 c2_Introduction Au Genie Logiciel
71/74
-
7/25/2019 c2_Introduction Au Genie Logiciel
72/74
Conclusion
-
7/25/2019 c2_Introduction Au Genie Logiciel
73/74
Ce cours est une introduction
Il insiste sur limportance de lorganisationLa technique est naturellement ncessaire
Lorganisation est malheureusement indispensable(malheureusement, car moins attrayante pour destudiants)
Il introduit des lments de vocabulaire connatre(qui seront vus et revus pendant le filrouge)
46 / 47 A. Beugnard Introduction au Gnie Logiciel
Vocabulaire
-
7/25/2019 c2_Introduction Au Genie Logiciel
74/74
Cycle de viePlanificationSpcifier
Exigence(Facteur)CritreMtrique
AnalyseConceptionRalisation
TestIntgrationRecette
AGL (IDE)UMLCompilateur
Base de donnesJUnit
47 / 47 A. Beugnard Introduction au Gnie Logiciel