• Aucun résultat trouvé

Partie II – Contributions pour la représentation et la gestion des

6. Modèle organisationnel de points de vue

6.1. Modélisation des objectifs d’un processus d’ECD multi-vues

6.1.1. Approches de modélisation orientée but

L’analyse orientée but (Goal-Oriented Analysis) consiste en l'identification, la modélisation et l'analyse des buts et des objectifs opérationnels qui guident les décisions et les stratégies à différents niveaux dans une organisation.

Les approches de modélisation orientée but ne sont pas récentes en ingénierie des systèmes d’informations, elles datent du début des années 90 (Anton, 1997). La modélisation orientée but a été pratiquée de manière complémentaire à la modélisation orientée objet (Mylopoulos et al., 1999). En effet, la modélisation orientée objet est utilisée pour la spécification d’une solution logicielle du système d’information en question, alors que la modélisation orientée but est utilisée pour l’expression et l’analyse des besoins auxquels le système d’information doit répondre. D’ailleurs, l’introduction des cas d’utilisation dans le langage UML (Jacobson et al., 1992) illustre le besoin de raisonner autrement qu’objets pour décrire et représenter les objectifs du système et les besoins de ses futurs utilisateurs.

Les modèles de buts (Goals Models) ont été utilisés en ingénierie logicielle (Software Engineering) (Anton, 1997 ; Nuseibeh et Easterbrook, 2000) et en entrepôt de données (Data Warehousing) (Giorgini et al., 2005 ; Khouri et al., 2011 ; Kumar et al., 2010) afin d’identifier et de spécifier les besoins des utilisateurs, les objectifs opérationnels du système et les qualités de conception. En effet, l’identification des besoins (sous forme de buts de haut niveau) au début du processus de développement est cruciale (Nuseibeh et Easterbrook, 2000). Les besoins [exigences – requirement] peuvent être fonctionnels ou non fonctionnels. Les besoins non fonctionnels (également connus sous le nom des exigences de qualité) sont définis comme des attributs ou des contraintes du système tels que la performance, la sécurité et la fiabilité (Glinz, 2007).

Les modèles de buts sont reconnus aussi utiles pour l’analyse et conception des systèmes de gestion des connaissances. Des systèmes qui se concentrent sur la représentation des connaissances stratégiques et le raisonnement (Jarvis et al., 2001 ; Giorgini et al., 2004). Dans ce cas, les buts sont utilisés pour représenter les objectifs stratégiques d'une organisation et pour analyser et garder une trace des événements et des tendances qui peuvent influencer

Chapitre 6 – Modèle organisationnel de points de vue 119

positivement ou négativement ces objectifs. Et c’est précisément dans ce contexte où s’inscrit notre utilisation des modèles de buts pour représenter, analyser et garder la trace des objectifs opérationnels d’une analyse multi-vues.

6.1.1.1. La notion de but

En étudiant les travaux de modélisation à base de but, nous constatons qu’ils convergent tous vers la définition d’un but comme étant « un objectif que le futur système doit satisfaire » (Anton, 1996 ; Mylopoulos et al., 1999 ; Lamsweerde, 2001 ; Kavakli et Loucopoulos, 2004 ; Rolland et Salinesi, 2005). Les buts sont des objectifs opérationnels de haut niveau d’une entreprise, une organisation ou un système complexe. Ils capturent les raisons pour lesquelles le développement d’un système est nécessaire, et guident les décisions à différents niveaux durant la réalisation de ce système.

D’un point de vue processus de développement logiciel, la notion de but peut être vue comme un mécanisme logique pour identifier, spécifier, structurer, négocier et justifier les besoins et objectifs des utilisateurs.

Les buts peuvent être formulés à différents niveaux d'abstraction (Lamsweerde, 2001), allant du plus haut niveau, à savoir les préoccupations stratégiques (par exemple « former 10.000 ingénieurs par an à l’horizon 2010 » pour le système d’enseignement supérieur au Maroc), au plus bas niveau, à savoir les préoccupations techniques (par exemple : « augmenter l’effectif dans les écoles d’ingénieurs », « recruter plus d’enseignants », « construire plus de locaux »…). La manière dont un but est atteint est représentée par une décomposition du but en sous buts. Un but peut être simple ou complexe. Il est complexe lorsqu’il admet une décomposition en sous buts. La décomposition d’un but complexe en sous buts simples est un mécanisme de raffinement qui exprime le processus de réalisation d’un but.

6.1.1.2. Rôles des buts en modélisation

Plusieurs raisons ont été citées dans la littérature pour souligner l’importance de l’utilisation des modèles de buts. Nous présentons ici quelques unes de ces raisons largement défendues par la communauté de l’ingénierie des besoins (Requirement Engineering). Pour plus de détails, on peut se référer à (Rolland et Salinesi, 2005) :

Élicitation des besoins et objectifs opérationnels : la modélisation orienté but a été introduite en ingénierie des besoins essentiellement pour l’acquisition (identification) et la spécification des besoins d’un système d’information (Dardenne et al., 1993).

Chapitre 6 – Modèle organisationnel de points de vue 120

Cette phase d’élicitation a pour objectif de comprendre et de décrire les besoins, les objectifs opérationnels et les contraintes techniques du système en cours de développement (Kavakli et Loucopoulos, 2004). La modélisation à base de but a l’avantage de permettre la spécification, négociation et validation de ces objectifs.

Raffinement des besoins et des objectifs complexes : ceci consiste en la décomposition de buts complexes en sous buts simples jusqu’à obtention de buts explicitement réalisables (Guzelian et al., 2004).

Traçabilité des besoins et des objectifs : les modèles de buts constituent un moyen pour assurer une traçabilité anticipée des besoins et objectifs d’un système (Khouri et al., 2011). En effet, les buts établissent un lien conceptuel entre le futur système et son environnement (les acteurs), ce qui facilite la propagation des changements dans les fonctionnalités du système et fournit un moyen pour expliquer ces changements aux différents acteurs du système.

Détection et gestion précoce des conflits : la coexistence de multiples points de vue lors d’un processus de développement (Nuseibeh et al., 1994) est intrinsèquement associée à la gestion des conflits entre points de vue. Les modèles de but sont reconnus utiles pour aider à la détection des conflits et de leur résolution depuis les phases préliminaires du processus (Lamsweerde et Letier, 2000).

6.1.1.3. Classification de buts

Les buts peuvent être de différents types. Aussi, plusieurs classifications de buts ont été proposées dans la littérature.

Il est usuel de classer les buts en buts fonctionnels et buts non fonctionnels (Dardenne et al., 1993). Un but fonctionnel définit un besoin opérationnel que le système doit satisfaire. Il exprime ce que l’utilisateur du système souhaiterait faire. Un but non fonctionnel (également connu sous le nom « exigence de qualité » - quality requirement) est défini comme une qualité ou une contrainte exigée du système telle que : la performance, la sécurité, la fiabilité, la flexibilité, la configurabilité, l’interopérabilité, etc. (Glinz, 2007). Cette typologie est un peu générale et peut être spécialisée d’avantage (Lamsweerde, 2001). Par exemple, un but de satisfaction est un but fonctionnel concernant la satisfaction de la requête d’un utilisateur, un but d’information est un but fonctionnel concernant l’information de cet utilisateur de l’état du système. Les buts non fonctionnels peuvent aussi être spécialisés de la même manière. Par exemple un but de performance est un but non fonctionnel spécialisé en temps et espace, un

Chapitre 6 – Modèle organisationnel de points de vue 121

but de sécurité est un but non fonctionnel spécialisé en confidentialité, intégrité et disponibilité. Une taxonomie plus riche de buts non fonctionnels peut être consultée dans (Chung et al., 2000).

Une autre distinction est souvent faite dans la littérature entre les buts soft (Soft Goals) et les buts hard (Hard Goals) (Mylopoulos et al., 1999). Un but soft est un but dont la satisfaction ne peut être établie dans un sens clair et avec des critères bien définis. Un but hard est un but dont la satisfaction peut être établie à travers des techniques de vérification (algorithmique). D’une manière générale les taxonomies de buts sont utilisées pour définir des méthodes (ou heuristiques) pour l’acquisition des buts et leur raffinement, pour le raisonnement et l’analyse des besoins à base de but.