Couplage fort (génie logiciel)

Couplage fort (génie logiciel)

Couplage (informatique)

Page d'aide sur l'homonymie Pour l’article homonyme, voir Couplage

Le couplage est une métrique indiquant le niveau d'interaction entre deux ou plusieurs composants logiciels (fonctions, modules, objets ou applications). Deux composants sont dits couplés s'ils échangent de l'information. On parle de couplage fort ou couplage serré si les composants échangent beaucoup d'information. On parle de couplage faible, couplage léger ou couplage lâche si les composants échangent peu d'information.

Sommaire

Niveaux de couplage

Selon Pressman[1], il existe sept niveaux de couplage, du plus faible au plus fort :

  1. Sans couplage : les composants n'échangent pas d'information.
  2. Par données : les composants échangent de l'information par des méthodes utilisant des arguments (paramètres) de type simple (nombre, chaîne de caractères, tableau).
  3. Par paquet : les composants échangent de l'information par des méthodes utilisant des arguments de type composé (structure, classe).
  4. Par contrôle : les composants se passent ou modifient leur contrôle par changement d'un drapeau (verrou).
  5. Externe : les composants échangent de l'information par un moyen de communication externe (fichier, pipeline, lien de communication).
  6. Commun (global) : les composants échangent de l'information via un ensemble de données (variables) commun.
  7. Par contenu (interne) : les composants échangent de l'information en lisant et écrivant directement dans leurs espaces de données (variables) respectifs.

Une bonne architecture logicielle nécessite le couplage le plus faible possible.

Inconvénients d'un couplage fort

Un couplage fort est à proscrire pour plusieurs raisons :

  • Un couplage fort génère l'antipattern plat de spaghetti :
    • On ne peut pas déterminer le qui, le quoi et le comment d’une modification de données.
  • Un couplage fort implique nécessairement une faible indépendance fonctionnelle :
    • Le composant logiciel est difficilement réutilisable,
    • Le composant logiciel est difficilement testable.
  • Si deux tâches accèdent, par couplage fort, à une ressource commune (ressource critique) et qu'elles s'exécutent en exclusion mutuelle, alors si une des tâches reste bloquée en section critique elle bloque automatiquement l'autre :

Les composants perdent leur autonomie. On peut difficilement remplacer un composant par un autre. Les structures fonctionnant avec du couplage fort sont donc peu souples et peu ouvertes.

Solution

L'idée générale du couplage faible consiste à établir un protocole d'échange et à effectuer le moins d'hypothèses (ou à imposer le moins de contraintes) possible entre les composants. Ainsi, les composants interagissent dans un cadre défini.

Une métaphore classique est celle de la prise électrique qui est un standard pour le branchement d'appareils électriques. Cela se traduit en informatique par le concept de plugin.

Applications

Voir aussi

Notes et références

  1. Pressman R. S., Software Engineering: A Practitioner's Approach, Third Edition. McGraw-Hill. Chapitre 10, 1992
  • Portail de l’informatique Portail de l’informatique
Ce document provient de « Couplage (informatique) ».

Wikimedia Foundation. 2010.

Contenu soumis à la licence CC-BY-SA. Source : Article Couplage fort (génie logiciel) de Wikipédia en français (auteurs)

Игры ⚽ Поможем написать реферат

Regardez d'autres dictionnaires:

  • Qualité logicielle — En informatique et en particulier en génie logiciel, la qualité logicielle est une appréciation globale d un logiciel, basée sur de nombreux indicateurs [1]. La complétude des fonctionnalités, la précision des résultats, la fiabilité, la… …   Wikipédia en Français

  • Tube (informatique) — Pour les articles homonymes, voir Tube. En génie logiciel, un tube ou une pipeline est un mécanisme de communication inter processus sous la forme d une série de données, octets ou bits, accessibles en FIFO. Le patron de conception qui correspond …   Wikipédia en Français

  • Syndrome du plat de spaghettis — Plat de spaghetti En informatique, le syndrome du plat de spaghettis est une dégradation qui touche les systèmes informatiques trop fortement couplés. Le système devient coûteux à maintenir et sujet aux pannes. Sommaire …   Wikipédia en Français

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”