télécharger 240.49 Kb.
|
Cours de génie logiciel Laurent Henocque Contrôle Qualité 18/3/95 maison : styles pour fusion du cours, pied de page, en tete 23/2/96 fac : suppression de la page de garde, pour remplacement par un document extérieur insertion des scripts extract et search 8/10/96 : insertion copyright, changements de polices et relecture Cours de Génie Logiciel Contrôle Qualité en Programmation Laurent Henocque http://laurent.henocque.free.fr/ Enseignant Chercheur ESIL/INFO France http://laurent.henocque.perso.esil.univmed.fr/ ![]() ![]() Cette création est mise à disposition selon le Contrat Paternité-Partage des Conditions Initiales à l'Identique 2.0 France disponible en ligne http://creativecommons.org/licenses/by-sa/2.0/fr/ ou par courrier postal à Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA. version 1.4 en date du 17 Novembre 2008 IntroductionLe génie logiciel est une discipline qui vise à structurer et organiser l'ensemble des activités liées à la réalisation de logiciels, et à promouvoir des niveaux de qualité croissants. L'expérience des succès et échecs de l'industrie informatique a permis de dégager des concepts assez fédérateurs, et de mesurer leur efficacité. L'activité des chercheurs dans des domaines aussi variés que la psychologie, la linguistique, l'ergonomie et l'informatique évidemment a permis de faire apparaître des notions dont certaines font preuve aujourd'hui d'une grande acceptation du marché. La programmation orientée objet en est un exemple, avec son langage phare qui est C++. De très grands projets ont été réalisés selon des méthodes de spécification et de garantie de qualité souvent dérivées de méthodes utilisées pour l'industrie spatiale. On sait que l’efficacité maximale sur un projet informatique est obtenue pour deux personnes travaillant pendant six mois. Mais les grands logiciels sont réalisés par des équipes immenses (une centaine d’ingénieurs) en plusieurs années. Ce cours a pour projet de donner les bases de techniques de travail reconnues comme nécessaires pendant tout le cycle de vie du logiciel, et d'apprendre les méthodes qui permettent d'affronter systématiquement et de résoudre les problèmes. Fréquemment, les cours de génie logiciel s'appuient sur la chronologie naturelle des projets, en débutant par la spécification, pour continuer par la conception et finir par la programmation et la gestion de projet. Ce cours aborde les aspects individuels de la programmation, sur la base du langage C++, mais gagne a être abordé avant même que de parler de conception et de spécification Les raisons sont notamment que :
L’utilisation de C++ ne doit pas faire oublier que le concepteur (au sens large) d'un logiciel doit faire preuve d'ouverture d'esprit, et de malléabilité. En effet, une fois maîtrisées les étapes de spécification et de conception, l'étude préalable à la réalisation d'un logiciel conduit souvent à l'utilisation de langages ou d'outils dont on n'est pas forcément familier. La démarche qualité présentée dans ce cours sur la base du langage C++ peut être vue comme un exemple de ce qui doit être effectivement mis en oeuvre quels que soient le langage, la méthode et les outils utilisés au final. PlanNous verrons donc dans une première partie les concepts fondamentaux de qualité logicielle, et notamment les notions de contrats, d'invariants et une discussion sur la notion de test. Ensuite, nous évaluerons de quelle manière l’activité de programmation peut être organisée, dans un objectif de qualité. Une troisième partie liste des considérations techniques sur la qualité. Enfin, certains aspects humains (psychologiques notamment) seront abordés. |
![]() | ![]() | ||
![]() | «zéro défaut». C'est la limite idéaliste vers laquelle on tend pour la qualité du logiciel. Généralement 40% du budget global est... | ![]() | |
![]() | ![]() | ||
![]() | «Management en pme» qualité, rh, contrôle de gestion, achats au crp consulting balma | ![]() | |
![]() | «Betontechnik», «Bauen in der Landwirtschaft» sur les thèmes contrôle de qualité, résultats d’essais, matériaux de recyclage, contribution... | ![]() |