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

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

CUSEC 2003 - Normand Séguin1 Présentation CUSEC 2003 Les principes fondamentaux du génie logiciel Normand Séguin Professeur substitut Dép. informatique.

Présentations similaires


Présentation au sujet: "CUSEC 2003 - Normand Séguin1 Présentation CUSEC 2003 Les principes fondamentaux du génie logiciel Normand Séguin Professeur substitut Dép. informatique."— Transcription de la présentation:

1 CUSEC 2003 - Normand Séguin1 Présentation CUSEC 2003 Les principes fondamentaux du génie logiciel Normand Séguin Professeur substitut Dép. informatique UQAM

2 CUSEC 2003 - Normand Séguin2 Déroulement n Contexte et rôles des principes au sein de la discipline du génie logiciel n Revue des travaux faits sur le sujet n Constat de la situation n Orientations de recherche

3 CUSEC 2003 - Normand Séguin3 Caractéristiques du GL n Évolution technologique très marquée n Entraînant une désuétude rapide des : u Techniques u Méthodologies u Outils n A la recherche dune base plus stable pour établir les fondements de la discipline du génie logiciel

4 CUSEC 2003 - Normand Séguin4 Contexte n Au sein des disciplines classiques du génie u Les principes de base sont liés à des lois de la F Physique F Chimie F Biologie et autres… n Ces lois sont peu applicables au génie logiciel u Nature conceptuelle et intangible du produit : logiciel (Davis 95 et Maibaum 2002) n La discipline du GL doit développer ses propres principes en fonction de ses caractéristiques propres

5 CUSEC 2003 - Normand Séguin5 Principes : au cœur de la discipline Ghezzi et al. 2003 n Nécessité de développer la base qui est plus stable (principes) stabilité - +

6 CUSEC 2003 - Normand Séguin6 Principes : au cœur de la discipline n La connaissance des principes du génie logiciel permettrait à lingénieur logiciel de sélectionner les : u méthodologies, u techniques, u et les outils F Appropriés au contexte particulier de chacun des projets.

7 CUSEC 2003 - Normand Séguin7 Principes au cœur des normes n Forte croissance du corpus des normes u De quelques unes à plus de 300 (Moore 98) Normes Meilleures Pratiques observation systématisent

8 CUSEC 2003 - Normand Séguin8 Principes – cœur des normes n Problèmes pour les organismes (Moore 98) n Dun point de vue global: u Le corpus nest pas intégré u Manque de consistance u Chevauchements et zones grises u Certaines contradictions

9 CUSEC 2003 - Normand Séguin9 Principes – cœur des normes n Enjeux: u Augmentation de lutilisation des normes par les firmes pour améliorer leurs processus et la qualité du logiciel u le corpus des normes doit être adéquat u Comment régler les problèmes ?

10 CUSEC 2003 - Normand Séguin10 Principes – cœur des normes n Piste de solution u Dans dautres disciplines du génie F Possibilités détablir des liens entre Normes et principes scientifiques et dingénierie F Offrent des balises aux normes u Pour le génie logiciel ?

11 CUSEC 2003 - Normand Séguin11 Principes – cœur des normes n Modèle proposé (Bourque et al. 2002)

12 CUSEC 2003 - Normand Séguin12 Principes au sein du curriculum n Une discipline du génie est définie et fondée sur son curriculum n Meyer (2001) identifie les principes comme le premier composant du curriculum

13 CUSEC 2003 - Normand Séguin13 Principes comme base du SWEBOK n SoftWare Engineering Body of Knowledge u Projet majeur ETS-UQAM et autres partenaires u Corpus des connaissances du génie logiciel faisant lobjet dun consensus international u Recenser les connaissances de la discipline ainsi que les limites de celle-ci

14 CUSEC 2003 - Normand Séguin14 Principes comme base du SWEBOK n Un corpus de principes offrirait un cadre danalyse du SWEBOK et permettrait de le raffiner n Vérifier si les principes sont couverts par les sujets du guide

15 CUSEC 2003 - Normand Séguin15 Principes : les fondements Principes fondamentaux du génie logiciel Outils Méthodologies Méthodes Techniques Normes ISO / IEEE Curriculum Génie logiciel SWEBOK

16 CUSEC 2003 - Normand Séguin16 Quest-ce quun principe ? n a principle is a basic truth, rule or assumption about software engineering that holds regarless of the technique, tool or language selected (Davis 95)

17 CUSEC 2003 - Normand Séguin17 Les principes doivent être... n Moins spécifiques que les méthodes n Plus durables que les méthodes et les techniques

18 CUSEC 2003 - Normand Séguin18 Exemples n Give products to customers early n Inspect code n Abstraction n Design for change n Modularization n Reuse n Use design alternatives

19 CUSEC 2003 - Normand Séguin19 Revue de littérature n Résumé des principaux travaux sur le sujet : u Boehm (1983) u Davis (1995) u Wiegers (1996) u Bourque et al. (2002) u Ghezzi et al. (2003)

20 CUSEC 2003 - Normand Séguin20 Travaux de Barry W. Boehm n Basé ses travaux sur lanalyse de projets réalisés au sein de la firme TRW n Objectif : u Dégager les principes qui seraient à la base du succès des projets n Critères didentification : 1. Doivent être indépendants 2. Doivent couvrir lensemble de la discipline

21 CUSEC 2003 - Normand Séguin21 Principes de Boehm 1.Manage using phased life cycle plan 2.Perform continuous validation 3.Maintain disciplined product control 4.Use modern programming practices 5.Maintain clear accountability for results 6.Use better and fewer people 7.Maintain a commitment to improve the process

22 CUSEC 2003 - Normand Séguin22 Principes de Boehm n Constat u Énoncés de règles à suivre et documentés u Les 7 principes doivent être suivis en bloc u Apport important pour la discipline n Lacunes u Pas de définition du terme « principe » u La méthodologie danalyse nest pas documentée

23 CUSEC 2003 - Normand Séguin23 Travaux de Booch et Bryan (1994) n Nécessité dappliquer des principes au sein du processus de développement n Lien entre les principes et des objectifs de qualité du logiciel : u Modifiability u Efficiency u Reliability u Understandability

24 CUSEC 2003 - Normand Séguin24 Travaux de Booch et Bryan

25 CUSEC 2003 - Normand Séguin25 Travaux de Booch et Bryan n Constats u Liens intéressants avec des objectifs de qualité n Lacunes u Pas de définition du terme principe u Pas de critères didentification u Pas énoncé sous forme de règles u Méthodologie non explicite

26 CUSEC 2003 - Normand Séguin26 Travaux de Alan Davis (1995) n Consacrer un ouvrage sur les principes n Davis identifie 201 principes classés en 8 catégories n Il définit le terme principe : u a principle is a basic truth, rule or assumption about software engineering that holds regarless of the technique, tool or language selected (Davis 95)

27 CUSEC 2003 - Normand Séguin27 Travaux de Alan Davis n Présentation dun modèle

28 CUSEC 2003 - Normand Séguin28 Travaux de Alan Davis 1.Make Quality Better 2.High-Quality Software is possible 3.Give products to customers early 4.Determine the problem before writing the requirements 5.Evaluate design alternatives

29 CUSEC 2003 - Normand Séguin29 Travaux de Alan Davis n Constat u Catégorisation des principes u Présente un modèle sur le rôle des principes n Lacunes u Pas de critères didentification des principes u Trop dénoncés, un raffinement est souhaitable

30 CUSEC 2003 - Normand Séguin30 Travaux de K. Wiegers (1996) n Impliqué dans lamélioration des processus de développement n Développement dune culture génie logiciel n Identification de 14 principes qui influencent la culture génie logiciel

31 CUSEC 2003 - Normand Séguin31 Travaux de K. Wiegers 1.Never let your boss or your customer talk you into doing a bad job 2.People need to feel the work they do is appreciated 3.Customer involvement is the most critical factor in software quality

32 CUSEC 2003 - Normand Séguin32 Travaux de K. Wiegers n Constat u Amène la vision « culturelle » dans lamélioration du processus u Propose une liste de 14 principes qui sont implicitement documentés n Lacunes u Pas de définition du terme « principe » u Pas de critères u Pas de méthodologie de sélection

33 CUSEC 2003 - Normand Séguin33 Travaux de Bourque et al. (2002) n Pierre Bourque, ETS n Alain Abran, ETS n Robert Dupuis, UQAM n James W. Moore, MITRE Corporation n Objectif : u Identifier des principes qui seraient fondamentaux au génie logiciel n Approche empirique

34 CUSEC 2003 - Normand Séguin34 Travaux de Bourque et al. Activités

35 CUSEC 2003 - Normand Séguin35 Travaux de Bourque et al. Activités

36 CUSEC 2003 - Normand Séguin36 Travaux de Bourque et al. n Résultats u Liste de 15 principes candidats u Mesure du degré de consensus sur chacun u Plus de 560 personnes ont participé à la recherche

37 CUSEC 2003 - Normand Séguin37 Exemples de principes (Bourque et al.) n Appliquer et utiliser des mesures quantitatives dans la prise de décisions n Consacrer les ressources nécessaires à la compréhension du problème n Comme le logiciel est sujet au changement, il faut planifier et gérer ce changement

38 CUSEC 2003 - Normand Séguin38 Travaux de Bourque et al. n Constat u Démarche de recherche bien documentée et rigoureuse (la meilleure sur le sujet) u Résultats basés sur des opinions dexperts u Définition de critères didentification u Définition du terme « principe », mais pas de précision sur le qualificatif « fondamental »

39 CUSEC 2003 - Normand Séguin39 Ghezzi et al. (2003) n Auteurs dun livre de référence sur le génie logiciel n Particularité : u Les thèmes sont basés sur 7 principes du génie logiciel u Les auteurs croient que les principes sont à la base de la discipline u « …they [principles] constitute the foundation upon which all the rest may be built » p.64

40 CUSEC 2003 - Normand Séguin40 Ghezzi et al. (2003) Les 7 principes de base présentés

41 CUSEC 2003 - Normand Séguin41 Ghezzi et al. (2003) n Constat u Un rare ouvrage de référence sur le génie logiciel à baser explicitement son discours sur la base des principes u Une certaine vérification dans le temps de la stabilité des principes u Liens entre les principes et les objectifs de qualité u Un début de hiérarchisation dans les principes

42 CUSEC 2003 - Normand Séguin42 Sommaire n 13 travaux analysés (1970-2003) u Plus de 250 principes recensés u Pas de consensus entre les auteurs n Peu de rigueur u 4 définissent le terme principe u 2 définissent des critères didentification u 1 a une méthodologie explicite u Confusion dans lutilisation des termes F Principe, technique, méthodes, concept, notion n Perspectives différentes du génie logiciel

43 CUSEC 2003 - Normand Séguin43 Confusion dans les termes n « Abstraction is a fundamental technique… » n « Abstraction is also the central concept of information hiding » n « Software reuse is also a long-standing notion. » (Wasserman 1996) n « Principle : lasting concept that underlie the whole field » (Meyer 2001)

44 CUSEC 2003 - Normand Séguin44 Sommaire (suite) n Méthodologie u Grande lacune constatée u Résultats : basés sur lopinion des auteurs u Bases du choix des principes ? F Origines ? F Critères ? F Processus danalyse ?

45 CUSEC 2003 - Normand Séguin45 Sources des principes Sources Opinions des auteurs ProjetsLittérature Opinions dexperts Boehm Wiegers Davis Bourque et al.

46 CUSEC 2003 - Normand Séguin46 Regroupements Produit ProcessusIndividus

47 CUSEC 2003 - Normand Séguin47 Orientations de recherche n Établir un premier corpus de principes : u Fondamentaux à la discipline u Dont lorigine serait objective, démontrée rationnellement et documentée u Objet dun consensus u Appliqués et vérifiés objectivement dans les projets u Pour améliorer les infrastructures de la discipline (SWEBOK, Normes, Curriculum)

48 CUSEC 2003 - Normand Séguin48 Sous objectifs n Départager les principes propres au génie logiciel de ceux des disciplines sous- jacentes n Mettre fin aux confusions au niveau du vocabulaire utilisé n Offrir une base pour lamélioration des infrastructures de la discipline

49 CUSEC 2003 - Normand Séguin49 Sites Web n SWEBOK u www.swebok.orgwww.swebok.org n Laboratoire en génie logiciel ETS-UQAM u www.lrgl.uqam.ca www.lrgl.uqam.ca


Télécharger ppt "CUSEC 2003 - Normand Séguin1 Présentation CUSEC 2003 Les principes fondamentaux du génie logiciel Normand Séguin Professeur substitut Dép. informatique."

Présentations similaires


Annonces Google