Concept: Intégration du logiciel
Ces instructions décrivent quelques approches pour intégrer les composants logiciels dans le système.
Relations
Eléments connexes
Description principale

Le terme "intégration" fait référence à une activité de développement logiciel où des composants logiciels distincts sont regroupés pour former un ensemble. L'intégration se fait à plusieurs niveaux et plusieurs étapes de l'implémentation :

  • Intégration du travail d'une équipe travaillant dans le même sous-système d'implémentation avant de livrer le sous-système aux intégrateurs système.
  • Intégration de sous-systèmes dans un système complet.

L'approche du processus Rational Unified Process concernant l'intégration est d'intégrer le logiciel de façon incrémentielle. Une intégration incrémentielle veut dire que le code est écrit et testé par petites touches, puis qu'il est combiné en un ensemble en ajoutant un élément à la fois.

L'approche opposée est l'intégration par phases. Une intégration par phases s'appuie sur l'intégration de beaucoup de composants (nouveaux et modifiés) à la fois. L'inconvénient majeur d'une telle intégration est qu'elle introduit de multiples variables et rend la localisation des erreurs plus difficile. Ceci est principalement du au fait qu'une erreur peut se trouver dans n'importe lequel des nouveaux composants, dans l'interaction entre les nouveaux composants au coeur du système ou dans l'interaction entre les nouveaux composants.

Les avantages d'une intégration incrémentielle sont les suivants :

  • Les erreurs sont faciles à localiser. Lorsqu'un nouveau problème apparaît lors de l'intégration incrémentielle, le composant nouveau ou modifié ou son interaction avec les composants précédemment intégrés sont les premiers endroits où chercher l'erreur. Il y a aussi plus de chances que les incidents soient repérés un à un avec une intégration incrémentielle, ce qui facilite l'identification des erreurs.
  • Les composants sont testés de manière plus complète. Les composants sont intégrés après avoir été développés puis testés. Cela veut dire que les composants sont testés plus souvent que si l'intégration se fait en une seule fois.
  • On obtient plus vite quelque chose qui fonctionne. Les développeurs voient les résultats de leur travail rapidement au lieu d'avoir à attendre la fin pour tout visualiser, ce qui est meilleur pour le moral. Cela permet aussi d'obtenir un feed-back rapidement.

Il est important de comprendre que l'intégration a lieu au moins une fois à l'intérieur de chaque itération. Un plan d'itération définit quels cas d'utilisation concevoir et quelles classes implémenter. La stratégie d'intégration a pour but de déterminer l'ordre dans lequel les classes sont implémentées puis combinées.