Génie Logiciel Avancé Cours 1 : Introduction Qu'est-ce que le génie ...
Génie Logiciel Avancé Cours 1 : Introduction Qu'est-ce que le génie ...
Génie Logiciel Avancé Cours 1 : Introduction Qu'est-ce que le génie ...
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
Qu’est-<strong>ce</strong> qu’un pro<strong>ce</strong>ssus <br />
Activités du développement logiciel<br />
◮ Un pro<strong>ce</strong>ssus de développement logiciel est un ensemb<strong>le</strong> (structuré)<br />
d’activités <strong>que</strong> conduisent à la production d’un logiciel.<br />
◮ Il n’existe pas de pro<strong>ce</strong>ssus idéal.<br />
◮ La plupart des entreprises adapte <strong>le</strong>s pro<strong>ce</strong>ssus existants à <strong>le</strong>urs besoins.<br />
◮ Ces besoins varient en fonction du domaine, des contraintes de qualité, des<br />
personnes impliquées.<br />
⇒ Ce qui est essentiel, c’est de comprendre <strong>que</strong>l est son rô<strong>le</strong> dans <strong>ce</strong> pro<strong>ce</strong>ssus<br />
et d’en saisir <strong>le</strong>s rouages.<br />
⇒ L’étude et la prati<strong>que</strong> de pro<strong>ce</strong>ssus existants doit vous permettre de vous<br />
forger un regard affuté (et même criti<strong>que</strong>) sur <strong>ce</strong>s pro<strong>ce</strong>ssus.<br />
◮ Les activités des pro<strong>ce</strong>ssus de développement logiciels se regroupent en 4<br />
grandes catégories :<br />
1. La spécification du logiciel définit ses fonctionnalités et <strong>le</strong>urs contraintes.<br />
2. La con<strong>ce</strong>ption et l’implémentation sont chargées de réaliser <strong>le</strong> logiciel, en<br />
conformité avec sa spécification.<br />
3. La validation s’assure effectivement du respect de la spécification par <strong>le</strong><br />
logiciel produit.<br />
4. L’évolution adapte <strong>le</strong> logiciel aux besoins futurs de ses clients.<br />
Schéma général d’un pro<strong>ce</strong>ssus de développement<br />
Modè<strong>le</strong> en cascade<br />
Définition des besoins<br />
◮ Il est très rare d’appli<strong>que</strong>r un pro<strong>ce</strong>ssus comme une uni<strong>que</strong> sé<strong>que</strong>n<strong>ce</strong> des<br />
4 activités précédentes.<br />
◮ En effet, <strong>ce</strong> serait à l’encontre du principe d’incrémentalité.<br />
◮ En général, un logiciel comp<strong>le</strong>t est <strong>le</strong> fruit de plusieurs itérations.<br />
◮ Cha<strong>que</strong> itération contient <strong>le</strong>s 4 activités de spécification, con<strong>ce</strong>ption,<br />
validation et évolution.<br />
◮ Il existe différents modè<strong>le</strong>s de pro<strong>ce</strong>ssus qui organisent de façon différentes<br />
<strong>ce</strong>s activités : <strong>le</strong> modè<strong>le</strong> en cascade, <strong>le</strong> modè<strong>le</strong> de développement évolutif et<br />
<strong>le</strong> modè<strong>le</strong> de développement par composants.<br />
Con<strong>ce</strong>ption<br />
Implémentation et tests unitaires<br />
Intégration et test du système<br />
Livraison et maintenan<strong>ce</strong><br />
◮ Cha<strong>que</strong> phase doit se terminer pour commen<strong>ce</strong>r la suivante.<br />
◮ Des documents sont produits pour concrétiser la réalisation de cha<strong>que</strong> phase.