2. Pourquoi une
méthodologie Objet
La technologie objet, tout en n'étant pas la
panacée, offre une solution aux problèmes des systèmes
informatiques d'aujourd'hui, quant à :
La complexité du logiciel
Le logiciel est de plus en plus intégré à
l'entreprise. Il offre de plus grandes fonctionnalités. En outre, les
logiciels doivent pouvoir s'interfacer et communiquer entre eux.
Les évolutions technologiques
Il faut s'assurer de la pérennité de la solution
mise en place. C'est à dire, développer une solution suffisamment
ouverte pour incorporer les technologies de demain.
La taille des équipes
Il faut savoir gérer plusieurs types de
compétences techniques, s'assurer que la communication soit
réelle entre les différentes équipes et gérer le
travail en parallèle sur une même tâche.
Les délais de plus en plus courts
Les entreprises ne peuvent attendre longtemps un
système qui leur permettra de gagner en productivité.
Les spécifications peu précises
L'évolution rapide des applications
2.1 Apports d'UML et de l'objet
UML préconise de séparer les aspects
fonctionnels, technologiques et architecturaux.
Pour la compréhension entre les différents
acteurs d'un projet UML propose des diagrammes qui vont permettre
d'éclaircir les spécifications.
Enfin, pour répondre à l'évolution rapide
des applications, il faut pouvoir facilement effectuer un retour sur chaque
phase du cycle de développement. Le cycle de vie objet qui,
itératif et incrémental, permet d'effectuer ce retour.
2.2 - Le Cycle de vie
Le cycle de vie d'un projet à objets possède
trois caractéristiques fondamentales :
Une traçabilité entre les étapes.
Un caractère itératif.
Un caractère incrémental.
2.2.1
- La traçabilité
Le fait d'utiliser les concepts objets n'engendre plus de
rupture entre les différentes phases lors de la réalisation d'un
système. Les concepts peuvent être utilisés à tous
les stades du cycle de vie (excepté lors de la définition des cas
d'utilisation).
2.2.2
- Le cycle de vie itératif
Lorsqu'un système est trop complexe pour être
réalisé du premier coup, il est plus facile de le
développer par évolutions.
L'approche objet n'est pas nécessaire pour mettre en
oeuvre un développement itératif. Elle le facilite grâce
à l'encapsulation et la modularité.
Le cycle de vie itératif permet de se rendre vite
compte si le système fonctionne correctement. Il permet de tenir compte
des risques suivants :
Méconnaissance des besoins par le client.
Incompréhension des besoins par le client.
Instabilité des besoins.
Le fait de voir une réalisation rapide peut motiver
l'équipe de développement.
Une itération correspond aux phases suivantes :
Expression des besoins
Spécifications fonctionnelles
Analyse
Expression des besoins
Implémentation
Tests de vérification
Validation des besoins
Un cycle de vie itératif n'est réussi que si les
acteurs prennent entièrement part au développement du
système. Les cas d'utilisation sont là pour faire rentrer leurs
besoins dans un cadre structurant et stable.
Le nombre d'itération dépend de la
complexité des systèmes à construire.
L'itération permet :
Les modifications des spécifications.
L'adéquation entre l'analyse, la conception et
l'implémentation.
L'acceptation du client.
2.2.3
- Un cycle de vie incrémental
Le but est de développer les fonctionnalités du
système en lui ajoutant des améliorations successives à
chaque étape du cycle de développement.
Le développement d'une série de prototypes
exécutables permettra d'aboutir à la réalisation du
système final. L'évolution des prototypes permet de
détecter les défauts et les dérives de la construction
logicielle, permettant ainsi d'évaluer les risques du projet (garder le
cap sur les coûts et les délais).
La réalisation de prototypes peut être
menée en parallèle par plusieurs équipes de
développement. Le prototype peut être précédé
d'une maquette qui va permettre de valider l'enchaînement des
écrans et leur ergonomie.
Enfin, le prototype est parlant pour l'utilisateur. Ce dernier
se trouve plus intégré au projet.
|