b. Processus de développement du logiciel
Un processus définit une séquence
d'étapes, partiellement ordonnées, qui concourent à
l'obtention d'un système logiciel ou à l'évolution d'un
système existant. L'objet d'un processus de développement est de
produire des logiciels de qualité qui répondirent aux besoins de
leurs utilisateurs dans des temps et des couts
prévisibles.23
Plus simplement, un processus doit permettre de
répondre à la question fondamentale : « Qui fait quoi et
quand ». Le processus unifié UP est un processus de
développement logiciel interactif, centré sur l'architecture,
piloté par des cas d'utilisations et orienté vers la diminution
des risques.
c. Démarche UP
Le processus unifié (UP, en anglais pour Unifie
Process) Un processus unifié est un processus de développement
logiciel construit sur UML; il est itératif et incrémental,
centré sur l'architecture, conduit par les cas
20 MULLER P.A, Modélisation objet avec
UML, Edition, Eyrolless p 85
21 Jacques MUNDA Cours de QS
de CONCEPTION DE SYSTEME D'INFORMATION, ISS L'shi, 2012, inédit.
p3
22 Petit Larousse illustre,
les éditions françaises 1999, p.250
23 Pascal.R et Franck V, UML en action : de l'analyse
des besoins a la conception en java éd, Eyrolles 2003,
p3
Page 15 sur 68
d'utilisation et piloté par les risques. La gestion
d'un tel processus est organisé d'après les 4 phases suivantes :
pré étude (inception), élaboration, construction
et transition. Ses activités de développement sont
définies par 6 disciplines fondamentales qui décrivent la
modélisation métier, la capture des besoins, l'analyse et la
conception, l'implémentation, le test et le déploiement. Le
processus unifié doit donc être compris comme une trame commune
des meilleures pratiques de développement, et non comme l'ultime
tentative d'élaborer un processus universel. La définition d'un
processus UP est donc constituée de plusieurs disciplines
d'activité de production et de contrôle de cette production. Tout
processus UP répond aux caractéristiques ci-après.
· Il est itératif et incrémental.
d. PROCESSUS 2TUP
2TUP signifie « 2 Track Unified Process ». C'est un
processus UP qui répond aux caractéristiques que nous venons de
citer. Le processus 2TUP apporte une réponse aux contraintes de
changement continuel imposées aux systèmes d'information de
l'entreprise. En ce sens, il renforce le contrôle sur les
capacités d'évolution et de correction de tels systèmes.
« 2 Track » signifient littéralement que le processus suit
deux chemins. Il s'agit des chemins « fonctionnels » et «
d'architecture technique », qui correspondent aux deux axes de changement
imposés au système informatique. L'axiome fondateur du 2TUP
consiste à constater que toute évolution imposée au
système d'information peut se décomposer et se traiter
parallèlement.
L'opinion de Le M'oigne et celle de Henry Roux, se rejoignent
en un point commun qui est celui de la modélisation,
et c'est la modélisation qui va plus nous
intéresser par le fait qu'elle est la partie qui nous conduirait
à la conception du nouveau sous-système d'information à
instaurer pour la gestion du processus de la formation au sein de l'INPP de
Lubumbashi.
Ainsi donc, pour arriver à modéliser le
système ou le métier, nous nous servons de l'outil de
modélisation et ici l'outil utilisé est UP
(Unified Process) en français «
Processus Unifiés » qui est un processus
de développement logiciel construit sur UML ; il est itératif et
incrémental, centré sur l'architecture, conduit par les cas
d'utilisation et piloté par les risques. La gestion d'un tel processus
est, organisée d'après les 4 phases qui sont : pré
étude (insertion), élaboration, construction et
transition. Ses activités de développement sont définies
par 6 disciplines fondamentales qui décrivent la modélisation
métier, la capture des besoins, l'analyse et la conception,
l'implémentation, le test et le déploiement. Etant donné
qu'il existe plusieurs types d'UP, nous avons opté pour 2TUP
(2 Track Unified Process). Le processus 2TUP apporte une
réponse aux contraintes de changement continuel imposées aux
systèmes d'information de l'entreprise. En ce sens, il renforce le
contrôle sur les capacités
Page 16 sur 68
d'évolution et de correction de tels systèmes.
« 2 Track » signifient littéralement que le processus suit
deux chemins. Il s'agit des chemins« fonctionnels » et «
d'architecture technique », qui correspondent aux deux axes de changement
imposés au système informatique.24
Lorsqu'on utilise UP comme outil de modélisation, on a
le choix quant au langage ou support à utiliser pour schématiser
la modélisation du processus métier, d'où UML
(Unified Modeling Language) entre en jeu. UML se définit comme un
langage de modélisation graphique et textuel destiné à
comprendre et décrire des besoins, spécifier et documenter des
systèmes, esquisser des architectures logicielles, concevoir des
solutions et communiquer des
points de vue. Aujourd'hui, le standard industriel de
modélisation objet est UML.25
La problématique que pose la mise en oeuvre d'UML est
simple : Comment passer de l'expression des besoins au
déploiement du système informatique ? Nous avons
travaillé avec la version UML 2. Malgré le choix d'UML, il y a
aussi un autre langage mieux approprié pour le processus métier,
c'est le BPMN (Business Process Management) en
français Gestionnaire de Processus Métier.
2TUP est itératif
Une itération est une séquence distincte
d'activités avec un plan de base et des critères
d'évaluation, qui produit un release (interne ou externe). Le contenu
d'une itération est porteur d'améliorations ou
d'évolutions du système et il peut être
évalué par les utilisateurs.
2TUP est centré sur l'architecture
Les modèles définit tout au long du processus de
développement vont contribuer à établir une architecture
cohérente et solide.
2TUP est piloté par les cas d'utilisateur
d'UML
Comme nous l'avons souligné précédemment,
un bon nombre de risques proviennent de la non-adéquation technique et
fonctionnelle du système aux besoins des utilisateurs. Les exigences des
utilisateurs sont donc
24 P. Roques. - UML 2 en action. N°12014,
4e édition Eyrolles 2006, page 13.
25 P. Roques IDEM.
Page 17 sur 68
prioritairement traitées dans les deux branches du
processus en Y en considérant deux types d'acteurs différents du
système informatique : l'utilisateur consommateur des fonctions du
système, qui correspond généralement à un poste, un
rôle ou un métier dans l'entreprise. Il convient dans ce cadre de
se focaliser sur la plus-value que lui apporte le système dans
l'exercice de sa profession ; l'utilisateur exploitant le système, qui
correspond plutôt à un rôle technique et opérationnel
commun à la plupart des systèmes informatiques. Dans le domaine
client/serveur, les utilisateurs, considérés au sens large,
attendent des performances, une tenue à la charge, une
sécurité d'accès, etc. L'axe technique permet
également d'introduire le point de vue des exploitants et des
administrateurs souvent oubliés dans la livraison finale d'un
produit.
pilotée par les risques : en
définissant des priorités pour chaque fonctionnalité, on
peut minimiser les risques d'échec du projet.
La gestion d'un tel processus est organisée d'après
les 4 phases suivantes :
1. Pré étude(Inception) :
c'est ici qu'on évalue la valeur ajoutée du
développement et la capacité technique à le
réaliser (étude de faisabilité).
2. Elaboration : sert à confirmer
l'adéquation du système aux besoins des utilisateurs et à
livrer l'architecture de base.
3. Construction : sert à livrer
progressivement toutes les fonctions du système.
4. Transition : déployer le
système sur des sites opérationnels. Chaque phase est
elle-même décomposée séquentiellement en
itérations limitées dans le temps (entre 2 et 4 semaines). Le
résultat de chacune d'elles est un système testé,
intégré et exécutable. L'approche itérative est
fondée sur la croissance et l'affinement successifs d'un système
par le biais d'itérations multiples. Le système croît avec
le temps de façon incrémentale, itération par
itération, et c'est pourquoi cette méthode porte également
le nom de développement itératif et incrémental. Il s'agit
là du principe le plus important du Processus Unifié. Ces
activités de développement sont définies par 6 disciplines
fondamentales qui décrivent la capture des besoins, la
modélisation métier, l'analyse et la conception,
l'implémentation, le test et le déploiement.
Notons que ces différentes étapes (ou disciplines) peuvent se
dérouler à travers plusieurs phases. Le processus unifié
doit donc être compris comme une trame commune des meilleures pratiques
de développement. On dit de la méthode
UP qu'elle est générique c.à.d. qu'elle
définit un certain nombre de critères de développement,
que chaque société peut par la suite personnaliser afin de
créer son propre processus plus adapté à ses besoins.
C'est dans ce cadre que la société Valtech a
crée la méthode 2TUP.2TUP signifie «2 Track
Unified Process» .C'est un processus qui répond aux
caractéristiques du Processus
Unifié. Le processus 2TUP apporte une réponse
aux contraintes de changement continuel imposées aux systèmes
d'information de l'entreprise. En ce sens, il renforce le contrôle sur
les capacités d'évolution et de correction de tels
systèmes. « 2 Track» signifient littéralement que le
processus suit deux chemins. Il s'agit des « chemins
Page 18 sur 68
fonctionnels » et « d'architecture technique »,
qui correspondent aux deux axes de changement imposés au système
d'information.
|