Qu'est-ce que la cohésion en génie logiciel ?
Les significations littéraires du mot « cohésion » sont la cohérence et l'organisation d'unités différentes. En informatique et en génie logiciel, la cohésion fait référence au niveau de force et d'unité avec lequel les différents composants d'un programme logiciel sont inter-reliés entre eux. Il est resté une norme en génie logiciel que les programmes logiciels sont développés à travers différentes fonctions inter-reliées (ou modules), et chacun de ces modules a des tâches distinctes qui lui sont associées. La cohésion de tout logiciel détermine la force de son code source, et peut être davantage comprise en explorant ses principes associatifs, ses types et ses méthodes de calcul.
Fondamentaux
Le concept de cohésion est introduit pour capturer les caractéristiques de « qualité », « concision » et « efficacité » d'un programme dans le domaine du génie logiciel. Ce concept facilite la détermination du degré de liaison de chaque module d'un programme logiciel, ce qui indique à quelle vitesse il peut effectuer différentes tâches qui lui sont assignées. Une cohésion accrue d'un programme logiciel est obtenue par des opérations très identiques effectuées par ses différents modules, et est inversement proportionnelle au nombre diminué de modules. Cela signifie qu'un programme logiciel conçu pour effectuer plusieurs tâches via plusieurs modules a une probabilité plus élevée d'avoir une cohésion plus faible, ce qui affecte négativement sa performance globale et son efficacité sur les machines informatiques.
Principes associatifs
Les principes associatifs de la cohésion logicielle font référence aux types de relations entre un module logiciel et les actions (opérations) correspondantes. Ces principes constituent collectivement la cohésion de tout programme logiciel, et varient selon ses différentes exigences opérationnelles. Il y a sept principes associatifs formalisés pour sept types de cohésion logicielle, qui incluent la cohésion fortuite, logique, temporelle, procédurale, communicationnelle, séquentielle et fonctionnelle. Chacun de ces types de cohésion a un principe associatif unique associé, qui définit ses propriétés d'action pour tout module logiciel.
Propriétés
Il y a certaines propriétés prédéfinies associées à la cohésion en génie logiciel. Par exemple, si un logiciel est constitué de trois modules différents et que tous sont similaires entre eux en termes d'actions, la cohésion globale du programme logiciel augmente. De même, la cohésion diminue si ces modules ont des actions entièrement différentes et uniques associées. De plus, la cohésion des programmes logiciels dépend également des types de données qu'ils traitent, et est inversement proportionnelle au nombre accru de types de données.
Analyse
La cohésion d'un programme logiciel peut être analysée par des méthodes quantitatives et qualitatives. Dans le processus de mesure qualitative, le code textuel du programme logiciel est analysé en prenant ses différents échantillons et en les évaluant selon les normes de codage du langage de programmation respectif. En contraste, l'évaluation quantitative de la cohésion identifie le nombre de modules constitués dans un programme logiciel et évalue leurs actions selon des échelles prédéfinies.
