Étude des facteurs influençant le choix d'un processus de développement

Le but du projet décrit dans ce document est d'étudier les facteurs influençant le choix d'un processus de développement de logiciels dans un contexte organisationnel ayant les caractéristiques suivantes : le développement est effectué par des petites équipes; ces équipes développent des logiciels d'affaires non critiques; le développement logiciel s'effectue dans un environnement technologique en évolution. Le travail vise deux objectifs: premièrement, offrir une analyse/synthèse des principaux facteurs influençant le choix d'un processus de développement logiciel; deuxièmement, proposer un processus de développement logiciel pour un contexte particulier d'une entreprise réelle : le CHUM Informatique.

Le travail effectué nous montre que le domaine général des processus de développement logiciel peut être séparé en deux catégories : les processus classiques et les processus agiles. Les premiers (processus classiques), a priori plus lourds, se divisent en deux types : les standards internationaux, comme l'ISO 12207 et le CMM, et les processus disponibles sur le marché des processus de développement logiciel, comme le RUP d'IBM (Rational) et le OPEN du Consortium OPEN (organisme à but non lucratif). Quant aux processus agiles, tels CRYSTAL et eXtreme Programming (XP), ils se caractérisent par la production d'une quantité limitée de documentation et la concentration des efforts de développement sur les artefacts directement reliés à la production du code source. Nous avons aussi étudié les différents facteurs qui influencent le choix d'un processus de développement, les répartissant en trois catégories : commerciaux et stratégiques; techniques; humains et organisationnels. Une démarche permettant de compléter la synthèse de Boehm et Turner pour tenir compte de facteurs parfois escamotés, comme les facteurs commerciaux et stratégiques ou les facteurs humains et organisationnels, est aussi présentée. Ces diverses notions sont ensuite appliquées à un projet spécifique du CHUM Informatique, le projet SIURGE.

En conclusion le travail fait ressortir l'importance pour les organisations productrices de logiciels de bien maîtriser les facteurs influençant les processus de développement logiciel étant donné l'impact que ces processus peuvent avoir sur la stratégie de l'entreprise.