Professional Documents
Culture Documents
Pierre Bourque, Robert Dupuis, Alain Abran Universit du Qubec Montral, James W.
Moore The Mitre Corporation & Leonard Tripp The Boeing Company
Rsum : Les auteurs, membres de lquipe
directrice du projet SWEBOK, dcrivent les
trois phases de leur projet, qui vise
caractriser un corpus de connaissances, ce
qui est une tape essentielle pour amener le
gnie logiciel au stade de vritable
profession.
L'IEEE Computer Society et l'Association for
Computing Machinery collaborent un projet
dont l'objectif est d'laborer un guide
prsentant le corpus des connaissances dans
le domaine du gnie logiciel, le projet
SWEBOK (en anglais, Software Engineering
Body of Knowledge). La description d'un
corpus de connaissances est une tape
essentielle vers la reconnaissance d'une
profession ; un corpus de ce type permet
dtablir un consensus sur le contenu de la
discipline concerne. En l'absence d'un tel
consensus, on ne peut ni valider un examen
qui mne lobtention dune licence, ni
instituer un cursus qui prpare les candidats
pour cet examen, ni formuler des critres
daccrditation de ce cursus.
Le projet SWEBOK (http://www.swebok.org)
en est actuellement la fin de la deuxime de
ses trois phases. Dans cet article, nous en
prsentons une vue densemble et en
rsumons les rsultats obtenus jusqu
maintenant.
OBJECTIFS ET PUBLIC VIS
Les objectifs du projet SWEBOK sont les
suivants :
1. Dcrire le contenu de la discipline du gnie
logiciel ;
2. Donner un accs, selon les sujets, au
corpus des connaissances du gnie logiciel ;
3. Promouvoir lchelle mondiale une vue
cohrente sur le gnie logiciel ;
4. Dfinir la place et tracer les frontires du
gnie logiciel relativement d'autres
disciplines comme l'informatique, la gestion
de projets, le gnie informatique et les
mathmatiques ;
5. Poser les fondations du cursus et de l'octroi
de certificats de comptence professionnelle.
Le projet SWEBOK ne cherche pas tablir
un corpus de connaissances proprement dit,
1999 IEEE. Cet article est paru originalement en anglais dans IEEE Software, Vol. 16, No 6, pp.
35-44, November/December 1999. Il est reproduit ici avec la permission de IEEE.
1
et
tableau
connaissances
des
du
logiciel
(Software
(Software
Gestion
de
configuration
Configuration Management)
Le
domaine
de
connaissances
du
management de lingnierie du logiciel
regroupe le sous-domaine du processus du
management et celui des mesures (voir la
figure 2e). Ces deux sous-domaines sont
souvent considrs comme distincts (et sont
en gnral enseigns comme tels). Mais ceuxci, tout en tant uniques, ont des relations
troites, ce qui a motiv leur traitement
combin.
Car,
essentiellement,
un
management sans mesures, qualitatives ou
quantitatives, indique un manque de rigueur,
et des mesures sans management indiquent,
elles, une absence dobjectifs ou de contexte.
Le sous-domaine
du
processus
de
management considre la notion de
management grande chelle dans le
thme de la coordination, qui se rapporte
des questions comme le choix de projets, le
dveloppement et limplantation de normes
ainsi que la constitution dquipes et le
dveloppement en quipe. Dans ce sousdomaine sont prsents aussi les sujets
restants en fonction des tapes dans le cycle
de vie du dveloppement du projet :
dmarrage et dfinition de la porte du projet,
planification (y compris le calendrier et
lvaluation des cots et des risques),
excution et, finalement, revue, valuation et
clture du projet.
Le sous-domaine des mesures regroupe
quatre sujets : les buts du programme de
mesure, le choix des mesures, la cueillette des
donnes et le dveloppement des modles.
Les trois premiers concernent principalement
la thorie et lutilit des mesures et traitent,
entre autres, du choix de celles-ci. Il est aussi
question de la prise de mesures, qui comporte
la fois des questions techniques (comme
lextraction automatique) et des questions
humaines (la conception des questionnaires
et la rponse aux mesures effectues). Le
quatrime sujet (le dveloppement de
modles) traite de lutilisation des donnes et
des
connaissances
ncessaires
pour
construire des modles.
Processus du gnie
Engineering Process)
logiciel
(Software
sous-domaines
qui
correspondent
approximativement aux tches du processus,
qui sont souvent excutes en parallle et
itrativement plutt que squentiellement
(voir la figure 2i).
Le sous-domaine du processus dingnierie
des exigences introduit le processus de
lingnierie des exigences, oriente les quatre
sous-domaines suivants et montre comment
lingnierie des exigences sinsre dans le
cycle de vie global du logiciel. Ce chapitre
traite aussi des questions contractuelles et
organisationnelles relatives aux projets.
Le sous-domaine de la clarification des
exigences recouvre ce quon appelle aussi
saisie, dcouverte ou acquisition des
exigences. Dans ce sous-domaine, il est
question de lorigine des exigences et de la
faon dont elles peuvent tre colliges par les
ingnieurs spcialistes du logiciel. Il sagit de
la premire tape dans ltablissement de la
comprhension du problme que le logiciel
doit
rsoudre.
Cest
une
activit
fondamentalement humaine dont le but est
didentifier les dpositaires des enjeux et
dtablir les relations entre lquipe de
dveloppement et le client.
Le sous-domaine de lanalyse des exigences
concerne le processus consistant vrifier les
exigences pour y dtecter les conflits
possibles et les rsoudre, dcouvrir les
limites du systme et la faon dont celui-ci
doit interagir avec son environnement et
passer des exigences du client celles du
logiciel.
Le sous-domaine de la validation des
exigences vrifie que celles-ci ne comportent
ni omissions, ni conflits, ni ambiguts et
sassure quelles suivent les normes de
qualit prescrites. Les exigences devraient
tre obligatoires, suffisantes et tre dcrites
de faon minimiser les fausses
interprtations.
Le sous-domaine du management des
exigences recouvre le cycle de vie du logiciel
dans son entier. Il sagit fondamentalement
den grer les modifications et de maintenir
les exigences de faon reflter le logiciel
qui a t ou sera construit.
Test du logiciel (Software Testing)
Le test du logiciel consiste vrifier
dynamiquement, par le biais d'un ensemble fini
de jeux d'essai, le comportement rel d'un
programme par rapport au comportement
spcifi et attendu. Les jeux d'essai sont
slectionns, de manire adquate, partir du
plusieurs
techniques de test gnralement admises. Ces
techniques sont classes partir de leurs
fondements : elles sont bases sur les
spcifications, sur le code, sur les dfauts, sur
lutilisation ou sont spcialises. Ce domaine
de connaissances traite des mesures lies aux
tests dans leur propre sous-domaine. Le
suivant aborde les questions relatives
lorganisation et au contrle du processus de
test, y compris les problmes de management
et les activits de test. Le sous-domaine du
test automatique porte sur les outils existants
et les concepts lis lautomatisation du
processus de test.
LE PROJET
Depuis 1993, lIEEE Computer Society et
lACM collaborent la promotion de la
professionnalisation du gnie logiciel par
leur participation au comit de coordination
sur le gnie logiciel Software Engineering
Coordinating Committee ou SWECC (site
Web : http://computer.org/tab/swecc).
La porte du projet SWEBOK, la diversit des
communauts qui y sont engages et la
ncessit dune participation importante
requirent un management temps plein
plutt que reposant sur le volontariat. Cest
pourquoi le SWECC a donn le mandat de la
gestion du projet au Laboratoire de recherche
en gestion des logiciels (LRGL) de
lUniversit du Qubec Montral. Le LRGL
est supervis par le SWECC.
Conclusion
Tout au cours du projet, lquipe SWEBOK a
rendu disponibles des documents dcrivant
concrtement lavancement du projet. La
plupart de ces documents sont publics et
peuvent tre consults sur le site Web du
projet. (Par courtoisie envers les spcialistes
des domaines de connaissances, les
documents provisoires ne seront pas diffuss
avant leur achvement.) Lquipe du projet
met actuellement jour les descriptions des
domaines de connaissances en tenant compte
des rsultats du deuxime cycle de relecture.
Au tout dbut de lan 2000, nous inviterons
les associations professionnelles et la
communaut du gnie logiciel participer au
troisime cycle de relecture et faire part de
leurs commentaires sur lensemble du guide.
La version Stoneman du guide ainsi termine
sera disponible sur le site Web au cours du
printemps 2000 et, dans la mesure du
possible, les documents de rfrence cits
seront gratuits.
Avant de dvelopper la version Ironman du
guide, nous utiliserons la version Stoneman
dans le cadre dapplications exprimentales
afin den dterminer la facilit dutilisation.
Bien que la couverture vise soit identique, le
dveloppement dIronman aura recours un
processus de relecture plus large et plus
exhaustif ; ce processus reposera en effet sur
des utilisations exprimentales du guide.
REMERCIEMENTS
Lquipe du projet SWEBOK tient
remercier les membres du comit industriel
consultatif pour leur support. Le financement
du projet est assur par lAssociation for
Computing Machinery, Boeing, Conseil
national de recherches du Canada, lIEEE
Computer Society, le National Institute of
Standards and Technology, Raytheon et SAP
Labs (Canada). Lquipe tient remercier
aussi les spcialistes des domaines de
connaissances pour leur travail considrable.
Enfin, lquipe est reconnaissante aux
relecteurs
pour
leur
indispensable
contribution.
Les auteurs tiennent galement remercier
M. Jean-Claude Rault, Mme Sybille Wolff et
Mme Louise Tremblay qui ont tous contribu
la traduction de cet article.
Les lecteurs peuvent contacter les auteurs en
s'adressant James W. Moore ladresse
suivante :
The MITRE Corp., 1820 Dolley Madison
Blvd., W534, McLean, VA 22102, tats-Unis
;
Courriel : james.w.moore@ieee.org
RFRENCES
[1] P. Bourque et coll., Guide to the Software
Engineering Body of Knowledge: A Strawman
Version, Universit du Qubec Montral,
1998, http://www.swebok.org .
[2] D.J. Bagert et coll., Guidelines for
Software Engineering Education, Version 1.0,
Software Engineering Institute, Carnegie
Mellon University, Pittsburgh, novembre
1999
http://www.sei.cmu.edu/collaborating/ed/wor
kgroup-ed.html .
[3] Project Management Institute, A Guide to
the Project Management Body of Knowledge,
Upper Darby, Pennsylvanie, 1996 ;
http://pmi.org/publictn/pmboktoc.htm
[4] W. Vincenti, What Engineers Know and
How They Know It: Analytical Studies from
Aeronautical History, The Johns Hopkins
University Press, Baltimore, 1990.
contacter
Pierre
Bourque
(bourque.pierre@uqam.ca).
CONSTRUCTION DU LOGICIEL
- Mthodes de construction linguistiques
- Mthodes de construction mathmatiques
- Mthodes de construction visuelles
- Rduction de la complexit
- Anticipation de la diversit
- Structuration pour la validation
- Utilisation de normes externes
(b)
CONCEPTION DU LOGICIEL
- Concepts de base et principes
- Qualit de la conception et mesures
- Architecture logicielle
- Notations de conception
- Stratgies et mthodes de conception
(c)
INFRASTRUCTURE DU GNIE LOGICIEL
- Mthodes de dveloppement
Mthodes heuristiques
Mthodes formelles
Mthodes de prototypage
- Outils logiciels
Outils de dveloppement et de maintenance
Outils pour activits de support
Outils de management
Ateliers : outils intgrs et environnements de gnie logiciel
Techniques dvaluation des outils
- Intgration des composants
Dfinition des composants
Modles de rfrence
Rutilisation
(d)
MANAGEMENT DU GNIE LOGICIEL
- Processus du management
Coordination
Dmarrage et dfinition de la porte
Planification
Excution
Revue et valuation
Clture
- Mesure
(e)
PROCESSUS DU GNIE LOGICIEL
- Concepts de base et dfinitions
Thmes
Terminologie
- Dfinition des processus
Dfinitions des types de processus
Modles de cycle de vie
Modles de processus de cycle de vie
Notations pour les dfinitions de processus
Mthodes de dfinition des processus
Automatisation
- valuation des processus
Mthodologie de la mesure des processus
Paradigme analytique
Paradigme de lvaluation des performances
- Mise en uvre et modification des processus
Paradigmes pour la mise en uvre et la modification des processus
Infrastructure
Consignes pour la mise en uvre et la modification des processus
valuation de la mise en uvre et de la modification des processus
(f)
VOLUTION ET MAINTENANCE DU LOGICIEL
- Concepts de la maintenance
Activits et rles de la maintenance Processus de la maintenance Aspect organisationnel de la
maintenance
Problmes de la maintenance du logiciel
Cot de la maintenance et estimation du cot de la maintenance
Mesures de la maintenance
- Outils et techniques pour la maintenance
(g)
ANALYSE DE LA QUALIT DU LOGICIEL
- Dfinition de la qualit des produits
Caractristiques de la qualit selon la norme ISO 9126
Scurit de fonctionnement
Volets de la qualit relatifs aux processus et aux contextes particuliers
- Analyse de la qualit du logiciel
Dfinition de lanalyse de la qualit
Plans des processus
Activits et techniques de lanalyse de la qualit
Mesure en matire danalyse de la qualit du logiciel
(h)
ANALYSE DES EXIGENCES DU LOGICIEL
- Processus de lingnierie des exigences
- Clarification des exigences
- Analyse des exigences
- Validation des exigences
- Management des exigences
(i)
TEST DU LOGICIEL
- Concepts de base et dfinitions
- Niveaux de test
- Techniques de test
- Mesures relatives au test
- Organisation et contrle du processus de test
- Automatisation du test
(j)