Génie logiciel empirique

Un article de Wikipédia, l'encyclopédie libre.

Le génie logiciel empirique (en anglais : empirical software engineering), parfois appelé génie logiciel expérimental, est une branche du génie logiciel dont l'objectif est d'évaluer les concepts utilisés dans la réalisation de systèmes logiciels, à l'exemple des cycles de développement ou des architectures logicielles. Il s'agit de l'application des méthodes empiriques au génie logiciel.

Description[modifier | modifier le code]

Définition[modifier | modifier le code]

Le génie logiciel empirique désigne l'étude des artéfacts logiciels, c'est-à-dire des éléments qui participent à la création d'un logiciel ou qui en résultent, à des fins de caractérisation, de compréhension, d'évaluation, de prédiction, de contrôle, de gestion ou d'amélioration par le biais d'analyses qualitatives ou quantitatives[1].

À cette fin, les données manipulées en génie logiciel empirique couvrent tout le cycle de vie du logiciel en incluant entre autres le code source (fonctionnel ou de test), l’historique, la documentation ou encore les traces d’exécution du logiciel[2].

Objectifs[modifier | modifier le code]

De nombreux critères entrent en jeu lors de la conception d'un logiciel comme les méthodes de développement à adopter, le nombre de développeurs à employer ou le temps de réalisation à estimer[3]. Souvent fondés sur l'expérience des développeurs[3], les choix qui découlent de ces critères sont davantage influencés par les opinions et les anecdotes que par une analyse objective[3],[4]. En par exemple, plus de 30 % des articles scientifiques publiés dans des revues de génie logiciel ne présentent aucune validation expérimentale[5]. Parmi ceux qui présentent une forme d'expérimentation, seuls 10 % suivent une approche rigoureuse[6].

L'emploi des méthodes expérimentales en génie logiciel a alors pour objectif de prouver ou de réfuter l'intérêt d'une approche ou d'une technique en particulier[7].

Applications[modifier | modifier le code]

Méthodes de travail en génie logiciel[modifier | modifier le code]

Outils de développement[modifier | modifier le code]

Notes et références[modifier | modifier le code]

Voir aussi[modifier | modifier le code]

Bibliographie[modifier | modifier le code]

Document utilisé pour la rédaction de l’article : document utilisé comme source pour la rédaction de cet article.

  • [Basili et al. 1986] (en) Victor R. Basili, Richard W. Selby et David H. Hutchens, « Experimentation in software engineering », IEEE Transactions on Software Engineering, vol. SE-12, no 7,‎ , p. 733–743 (ISSN 0098-5589, DOI 10.1109/TSE.1986.6312975)
  • [Juristo et Moreno 2010] (en) Natalia Juristo et Ana M. Moreno, Basics of software engineering experimentation, Springer, , 367 p. (DOI 10.5555/1965114, lire en ligne). Ouvrage utilisé pour la rédaction de l'article.
  • [Harrison et Basili 1996] (en) Warren Harrison et Victor R. Basili, « Editorial », Empirical Software Engineering, vol. 1, no 1,‎ , p. 5-10 (ISSN 1382-3256, e-ISSN 1573-7616, DOI 10.1007/BF00125808, lire en ligne, consulté le ). Ouvrage utilisé pour la rédaction de l'article.

Articles connexes[modifier | modifier le code]