• Aucun résultat trouvé

ne sont pas définis dans le modèle McCall. Il est adapté à chaque utilisateur du modèle de définir toutes les métriques les plus appropriées dans sa zone, son système et ses objectifs.

3.2. NOTRE MODÈLE DE QUALITÉ 51

• Le méta-modèle définit plus que deux niveaux et les détaille : Bonne qualité (B).

2. La séparation du niveau architectural

Ce critère indique si le méta-modèle définit le niveau architectural parmi les niveaux sur lesquels opèrent les processus d’extraction.

Les métriques qui évaluent ce critère sont :

• Le méta-modèle ne définit pas le niveau architectural : Mauvaise qualité (MV).

• Le méta-modèle définit le niveau architectural : Bonne qualité (B).

3. La spécification des activités générales

Ce critère indique si le méta-modèle définit les activités générales des processus d’extrac-tion. En fait, un méta-modèle dédié aux processus ayant une certaine fin doit définir les activités générales de ces processus.

Ainsi les métriques de ce critère sont :

• Le méta-modèle ne définit aucune activité des processus d’extraction : Mauvaise qualité (MV).

• Le méta-modèle définit au moins les activités de passage d’un niveau à l’autre : Qualité moyenne (MY).

• Le méta-modèle définit toutes les activités générales des processus d’extraction : Bonne qualité (B).

4. La spécification des artefacts essentiels

Ce critère indique si le méta-modèle détaille les artefacts essentiels des processus d’ex-traction. Un méta-modèle d’extraction d’une architecture logicielle doit définir les arte-facts essentiels des processus d’extraction.

Ainsi les métriques de ce critère sont :

• Le méta-modèle ne définit aucun artefact essentiel des processus d’extraction : Mau-vaise qualité (MV).

• Le méta-modèle définit les artefacts initiaux et finaux des processus d’extraction : Qualité moyenne (MY).

• Le méta-modèle définit tous les artefacts initiaux, finaux et intermédiaires essentiels des processus d’extraction : Bonne qualité (B).

5. La spécification des agents essentiels

Ce critère indique si le méta-modèle spécifie les agents essentiels des processus d’extrac-tion. Un méta-modèle d’extraction d’une architecture logicielle doit identifier les agents essentiels des processus d’extraction. Par rôle, on entend une entité physique telle qu’un architecte, un développeur, un programmeur... ou une entité abstraite telle qu’un outil, une technique, un algorithme...

Ainsi les métriques de ce critère sont :

• Le méta-modèle ne définit aucun agent essentiel des processus d’extraction : Mau-vaise qualité (MV).

• Le méta-modèle sépare entre les agents physiques et les agents abstraits des proces-sus d’extraction : Qualité moyenne (MY).

• Le méta-modèle détaille tous les agents essentiels des processus d’extraction : Bonne qualité (B).

Les critères de qualité d’une méthode

Selon la problématique étudiée sur les méthodes d’extraction, nous avons analysé les méthodes d’extraction selon les critères suivants :

1. L’intégration des connaissances de l’architecte

Ce critère indique si la méthode d’extraction prend en considération les connaissances de l’architecte ; ces connaissances sont des informations à propos du système acquis par l’architecte grâce à son expertise et les documentations existantes du système.

Les métriques de ce critère sont :

• La méthode d’extraction n’intègre pas les connaissances de l’architecte : Mauvaise qualité (MV).

• La méthode d’extraction intègre les connaissances de l’architecte en lui permettant de proposer seulement une architecture conceptuelle : Qualité moyenne (MY).

• La méthode d’extraction intègre les connaissances de l’architecte en lui permettant de proposer une architecture conceptuelle et d’ajouter d’autres informations durant le processus : Bonne qualité (B).

2. L’interaction de l’architecte

Ce critère indique si la méthode d’extraction permet l’interaction de l’architecte avec le processus d’extraction. Plus spécifiquement, l’interaction de l’architecte signifie que l’architecte puisse interagir avec les artefacts manipulés durant le processus d’extraction et configurer le processus selon ses besoins.

Les métriques de ce critère sont :

• La méthode d’extraction ne permet pas l’interaction de l’architecte avec le processus d’extraction : Mauvaise qualité (MV).

• La méthode d’extraction permet l’interaction de l’architecte en lui permettant de raffiner les artefacts : Qualité moyenne (MY).

• La méthode d’extraction permet l’interaction de l’architecte en lui permettant de raffiner les artefacts et configurer le processus selon ses besoins : Bonne qualité (B).

3. Les types des informations

Ce critère indique si la méthode d’extraction extrait une architecture logicielle à partir des informations qui représente efficacement le code source. Ainsi, ce critère signifie les types des informations extraites à partir du code source. Par exemple une méthode qui extrait l’architecture à partir des fichiers et la structuration des répertoires donne un résultat moins valorisant que celle qui extrait l’architecture à partir des fonctions et leurs appels, les classes et leurs relations.

Par la suite, les métriques de ce critère sont :

• La méthode d’extraction extrait des informations pas trop significatives comme les fichiers physiques et leurs relations : Mauvaise qualité (MV).

• La méthode d’extraction extrait des informations ayant une signification moyenne comme les fonctions, les classes, fichiers physiques et leurs relations : Qualité moyenne (MY).

• La méthode d’extraction extrait des informations de différentes types comme la structure des fichiers physiques, les classes, les fonctions, le flux de données du-rant l’exécution : Bonne qualité (B).

3.2. NOTRE MODÈLE DE QUALITÉ 53 4. Le groupement des entités logicielles

Ce critère indique si la méthode d’extraction regroupe les entités logicielles (comme les classes et les fonctions) pour obtenir des éléments architecturaux de haut niveau. En d’autre termes, ce critère indique si la méthode d’extraction est basée sur le principe de groupement.

Les métriques de ce critère sont :

• La méthode d’extraction n’est pas basée sur le principe de groupement : Mauvaise qualité (MV).

• La méthode d’extraction groupe une seule fois les entités logicielles : Qualité moyenne (MY).

• La méthode d’extraction groupe plusieurs fois les entités logicielles, c.à.d la mé-thode suit un groupement hiérarchique pour passer des entités logicielles de bas niveau jusqu’à l’architecture de haut-niveau : Bonne qualité (B).

5. La correspondance des entités logicielles à l’architecture conceptuelle

Ce critère indique si la méthode d’extraction prend en considération une architecture conceptuelle proposée par l’architecte et inclut la correspondance des entités logicielles à l’architecture conceptuelle. En d’autres termes, ce critère indique si la méthode d’extrac-tion est basée sur le principe des architectures conceptuelles.

Les métriques de ce critère sont :

• La méthode d’extraction n’est pas basée sur le principe des architectures concep-tuelles : Mauvaise qualité (MV).

• La méthode d’extraction est basée sur le principe des architectures conceptuelles mais n’a pas identifié la méthode de correspondance des entités à l’architecture conceptuelle : Qualité moyenne (MY).

• La méthode d’extraction est basée sur le principe des architectures conceptuelles avec identification de la méthode de correspondance : Bonne qualité (B).

6. L’identification d’une architecture logicielle complète

Ce critère indique si la méthode d’extraction a donné comme résultat une architecture logicielle selon la définition d’architecture logicielle la plus admise. Celle-ci est la défini-tion de Len et al. [Len et al., 2003] (voir2.2.5). Ainsi, ce critère indique si l’architecture identifiée est composée des éléments, des relations entre les éléments et des propriétés des deux.

Par la suite les métriques de ce critère sont :

• La méthode d’extraction identifie une architecture logicielle en termes d’éléments architecturaux, leurs relations et propriétés : Bonne qualité (B).

• La méthode d’extraction identifie une architecture logicielle en termes d’éléments architecturaux et les éléments qui les composent : Qualité moyenne (MY).

• Autres : Mauvaise qualité (MV).

Les critères de qualité d’un outil

Un outil d’extraction supporte le processus d’extraction. Ainsi, nous avons analysé les outils d’extraction en étudiant s’il supporte suffisamment les méthodes d’extraction. Ainsi, les critères de qualité d’un outil sont les suivants :

1. L’intégration des connaissances l’architecte

Ce critère indique si l’outil d’extraction permet à l’architecture d’intégrer ses connais-sances dans le processus comme définir une architecture conceptuelle.

Les métriques de ce critère sont :

• L’outil ne supporte pas l’intégration des connaissances de l’architecte : Qualité Mau-vaise (MV).

• L’outil supporte l’intégration des connaissances de l’architecte : Bonne qualité (B).

2. L’interaction de l’architecte

Ce critère indique si l’outil d’extraction permet à l’architecte de raffiner les artefacts et d’interagir avec le processus, par exemple configurer certains paramètres.

Les métriques de ce critère sont :

• L’outil ne supporte pas l’interaction de l’architecte : Mauvaise qualité (MV).

• L’outil ne supporte le raffinement des artefacts : Qualité moyenne (MY).

• L’outil supporte le raffinement des artefacts et la configuration de certains para-mètres : Bonne qualité (B).

3. La structure extraite

Ce critère indique si l’outil extrait la structure statique et la structure dynamique à partir du code source. La structure dynamique définit les éléments du système et leurs relations lors de l’exécution du système et la structure statique définit les éléments du système et leurs relations sans exécution.

Par la suite les métriques de ce critère sont :

• L’outil extrait la structure statique : Qualité moyenne (MY).

• L’outil extrait la structure statique et dynamique : Bonne qualité (B).

4. La représentation des informations

Ce critère indique si l’outil d’extraction représente les informations extraites selon un modèle ou un standard. Par exemple, un modèle peut être un diagramme de classes selon la notation UML.

Les métriques de ce critère sont :

• L’outil n’extrait pas les informations selon un modèle ou un standard : Qualité moyenne (MY).

• L’outil extrait les informations selon un modèle ou un standard : Bonne qualité (B).

5. Les langages de programmation supportés

Ce critère indique si l’outil d’extraction opère sur plusieurs langages de programmation.

Les métriques de ce critère sont :

• L’outil n’opère que sur un seul langage de programmation : Qualité moyenne (MY).

• L’outil opère sur plusieurs langages de programmation : Bonne qualité (B).

6. Les types de programmation supportés

Ce critère indique si l’outil d’extraction opère sur plusieurs types de programmation comme programmation procédural ou orienté objet.

Les métriques de ce critère sont :