• Aucun résultat trouvé

Chapitre II : Etat de l’art

II.2. Génération automatique des IHM

II.2.1. Méthode MACAO et l’architecture proposée par Nicolas Ferry

II.2.1.1. Méthode MACAO

29

Des travaux de recherche existent pour générer de manière automatique une IHM. Mais on a sélectionné quelques travaux les plus essentiels et les plus proches du thème de recherche considéré.

II.2.1. Méthode MACAO et l’architecture proposée par Nicolas Ferry

Cette étude a amené à classifier et élaborer le formalisme à partir de la description des schémas ou des modèles conceptuels pour décrire les besoins des utilisateurs. On va décrire la méthode MACAO et l’architecture proposée par Nicolas Ferry avec les IHM utilisées.

II.2.1.1. Méthode MACAO

MACAO est une Méthode d’Analyse et de Conception d’Application orientée Objets. En partant d'une part des techniques les plus récentes en matière de conception et de programmation, d'autre part d'une réflexion portant sur les difficultés rencontrées au cours du déroulement d'un projet informatique, MACAO jette les bases d'une méthode complète, moderne et efficiente qui doit permettre de mener un projet de bout en bout en réduisant les risques d'échec de façon significative (Nicolas, 2008a). L’objectif de cette méthode est de formaliser les diagrammes de l'IHM pour permettre leur mise en œuvre et leurs échanges sur des plates-formes informatiques. Pratiquement, il n'existait pas encore d'outils pour dessiner, sauvegarder, imprimer et manipuler les diagrammes de l'IHM pour les systèmes hautement interactifs. Dans ce cas, MACAO est intervenue pour enrichir le traitement des schémas ou des diagrammes de l’IHM en créant de nouveaux diagrammes. Cette méthode assure le processus d’élaboration et de la formalisation des maquettes d’interface graphique dont le concept est basé sur le modèle. Cette formalisation a donné lieu à la réalisation d'un métamodèle.

A partir de ce métamodèle, l’initiative est de réaliser un éditeur de graphique permettant de manipuler et traiter ces modèles dans un cadre de production industrielle.

Les principaux objectifs de la méthode MACAO (Nicolas, 2008a) sont les suivants:

➢ Aider les informaticiens dans la recherche de toutes les informations nécessaires à la conception et au développement d'un logiciel,

➢ Concevoir la structure globale et détaillée du logiciel en termes de classes d'objets, ➢ Définir l'IHM la mieux adaptée aux besoins des utilisateurs,

➢ Développer des programmes orientés-objets fiables, évolutifs et réalisés dans les délais prévus,

---

30

MACAO vise à réduire les charges et les couts durant la conception et la modélisation d’une IHM. Cette méthode prend en charge tout le processus de développement de logiciel, elle contribue alors à l’Atelier de Génie Logiciel (AGL). Pour atteindre ces objectifs, MACAO propose une démarche participative depuis la définition et la description des besoins des utilisateurs jusqu'à la production, à la livraison et surtout à la maintenance du logiciel.

La méthode MACAO fait partie du concept pour la modélisation et le mécanisme de l'ingénierie dirigée par les modèles. Elle est une méthode orientée-objets qui vise la transformation de modèles. Elle représente aussi la séparation des modèles dans différents niveaux d’abstraction en vue de préconiser la transformation d’un modèle en un autre. La méthode MACAO adopte ainsi les diagrammes de la programmation orientée-objets, et elle supporte le paradigme de la notation UML (Group, 2007) et (Deeba et al., 2018) en ajoutant des modèles spécifiques aux IHM.

Les principales caractéristiques de MACAO sont les suivantes (Nicolas, 2008a):

➢ Étude structurée de l'existant ainsi que des besoins organisationnels et environnementaux,

➢ Développement itératif et participatif par prototypage incrémental permettant de réduire considérablement les risques,

➢ Utilisation des modèles UML, ➢ Modélisation conceptuelle de l'IHM,

➢ Représentation de l'IHM pour Windows et l'Internet,

➢ Proposition de critères d'évaluation permettant d'estimer la charge de travail pour le développement,

➢ Production d'une documentation type et d'une structure d'AGL permettant de gérer le projet et de maintenir efficacement le logiciel après sa livraison.

MACAO est aussi une méthode participative et interactive, elle apporte des concepts novateurs notamment dans le fait de placer l'utilisateur final au cœur de la solution. Elle est une véritable méthode quand on parle de Génie Logiciel par son analyse détaillée de l'aspect IHM, par sa réalisation de prototypes incrémentaux ainsi que par sa règle de non-régression des prototypes. Centrée sur l’architecture MDE, elle est également une méthode qui s’appuie sur les outils VisualSNI et VisualSEF pour réaliser un outil de génie logiciel pour la création des modèles des IHM. MACAO est une méthode de conception, de modélisation et de développement itératif et participatif.

---

31

(Nicolas, 2008a) a proposé trois niveaux d’abstraction selon l’architecture de type MDA : ➢ 1er niveau : niveau conceptuel géré par le SNI, qui correspond au niveau PIM de

l’approche MDA ;

➢ 2ème niveau : niveau logique appelé MLI (Modèle Logique des IHM ou DTI pour Définition Technique de l'IHM). Il correspond au niveau PSM de l’approche MDA. Ce niveau regroupe lui-même des diagrammes dynamiques : les Schémas d'Enchaînement (SE) et des diagrammes statiques représentant la Définition des Eléments (DE). En bref, ce 2ème niveau décrit le dessin de la maquette de l'écran ;

➢ 3ème niveau : niveau physique qui correspond au code de l'IHM.

La figure 8 présente les différents niveaux de l’axe IHM.

Figure 8: Différents niveaux de l’axe IHM (Nicolas, 2008a)

Ce schéma représente une architecture à trois niveaux selon l’architecture de type MDA. Dans ces différents niveaux de l’axe IHM, la question « Quoi ? » correspond au niveau PIM. Le concepteur établit le Schéma Navigationnel de l’IHM (SNI) pour répondre aux besoins et exigences des clients. Le niveau PSM qui répond à la question « Comment ?», représente la définition technique de l’IHM. Il correspond à la définition des maquettes IHM. Ce deuxième niveau est obtenu à partir de la transformation automatique ou semi-automatique du SNI. Pour passer d’un niveau à un autre, on a besoin d’un transformateur. C’est-à-dire que le modèle source et le modèle cible sont susceptibles d’être transformés jusqu’à ce que l’objectif soit atteint. Le dernier niveau appelé « codage » offre le code source modifiable pour le développeur.

---

32

Pour répondre aux besoins du client, il est nécessaire de modéliser ses attentes avec des langages et des représentations plus structurés (SNI, UML, etc.) pour mieux comprendre le problème à résoudre.