Chapitre 4
Modélisation
'Useful abstractions are discovered, not invented' R.E. Johnson
& B. Foote in Journal of Object Oriented Programming, 1(1), 1988
Ce chapitre présente une spécification formelle
et semi-formelle du modèle d'interfacage proposé; puis, les
propriétés et méthodes de celles-ci sont analysées,
ainsi que les relations avec les objets manipulés dans la typologie de
l'interfacage. Il définit également un modèle d'objets
réutilisables pour les processus de développement qui
découle de la spécification formelle. Nous définissons
enfin une démarche pour l'acquisition et l'exploitation de ces
objets.
4.1 Une specification formelle des interfaces
4.1.1 Pourquoi une specification formelle?
Nous voulons pouvoir générer dynamiquement des
interfaces spécifiques (en ce sens qu'elles concernent un domaine
précis) dans l'exploitation des processus d'ingénierie
logicielle. Ceci implique de s'intéresser aux objets manipulés
que sont les interfaces et aux processus d'acquisition et d'exploitation de
celles-ci. La spécification formelle des interfaces permet de s'entendre
sur les objets manipulés et d'en extraire des propriétés
intéressantes pour leur manipulation. Ceci guidera l'élaboration
des modèles d'objets réutilisables. Mais avant,
définissons quelques observations empiriques. La spécification
semi-formelle sommaire suivra pour résumer la modélisation des
interfaces.
4.1.2 Quelques observations preliminaires
Les intuitions qui suivent proviennent d'observations
essentiellement empiriques.
Intuition 1. L'ensemble des operations rCalisables sur les
artefacts manipulCes par un processus contient quatre (04) operations :
ajouter, consulter, modifier, supprimer.
Intuition 2. Il existe quatre (04) types d'interfaces dans la
gestion des artefacts : les interfaces d'ajout, de consultation, de
modification et de suppression.
Intuition 3. Toutes les interfaces prennent en entrée un
artefact du processus et produisent en sortie l'artefact modifié. Donc
chaque interface ne manipule qu'un unique artefact.
Illustration 1. Prenons le cas simpliste où nous
voulons établir une association entre deux (02) artefacts, on peut se
dire que l'interface concernée aura à manipuler deux (02)
artefacts, mais on peut également se dire (ce qui nous sied le mieux) qu
'une association est un artefact avec comme attributs des liens logiques vers
les artefacts associés.
Intuition 4. Les champs d'une interface sont un sous-ensemble des
attributs du type d'artefact manipulé par celle-ci.
Trois (03) concepts se dégagent d'une interface : les
attributs de celle-ci, ses méthodes et l'objet manipulé. Ces
éléments vont nous permettre de définir un principe de
conception des interfaces.
4.1.3 Principe de conception des interfaces
Definition 1. Principe de conception des interfaces pour
l'exploitation des connaissances sur les processus
Nous proposons de disposer de trois (03) niveaux pour la
conception des interfaces pour l'exploitation des connaissances sur un
processus : le niveau lexical, le niveau sémantique et le niveau
syntaxique, voir figure 4.1.
1. Le niveau lexical concerne la description des attributs de
l'interface, on parlera de lexique d'une interface,
2. Le niveau sémantique quant à lui permet de
décrire les actions associées à l'interface, on parlera de
sémantique d'une interface,
3. Le niveau syntaxique s 'occupe des objets ou artefacts
manipulés par cette interface, on parlera de syntaxe d'une interface.
Ce principe qui décrit les trois (03) niveaux de
conception d'une interface guide le typage des interfaces que nous
présentons ci-dessous.
4.1.4 Typologie de l'interfacage
Soit I l'ensemble des interfaces associées à un
processus, A l'ensemble des artefacts de ce processus et O l'ensemble des
opérations applicables sur les interfaces,
Definition 2. L'ensemble des opérations sur les interfaces
peut-étre partitionné en quatre (04) sous-ensembles distincts
:
~ Les opérations de création d'un artefact,
~ Les opérations de consultation d'un artefact, ~ Les
opérations de modification d'un artefact,
Les operations de suppression d'un artefact.
La sCmantique d'une interface ne peut donc prendre que l'une des
valeurs : creation, consultation, modification ou suppression.
Definition 3. Soit f : A x O ? I, la fonction
de correspondance d'un couple (artefact,operation) à une interface,
alors :
ViEI, ? ! (a,o)EAxO telque
i=f(a,o)
f est bijective. On peut ainsi associer une unique interface
à tout couple (artefact,methode).
Illustration 2. Une interface ne manipule qu'un unique
artefact (voir Intuition 3), nous avons distinguC quatre (04) types
d'opCrations rCalisables sur un artefact (voir Intuition 1) et Cgalement quatre
(04) types d'interface (voir Intuition 2), la correspondance et l'unicitC sont
vite Ctablies.
Definition 4. Soit f de la definition 3,
Vo E O,
Va=a1,a2,--- ,am E A, m E N,
| {z }
m attributs
Vi = i1, i2, - - - , in E I, n E N,
| {z }
n attributs
{
{i1,i2,...,in} c {a1,a2,...,am}
i = f(a,o) =o =
semantique(i).
Le lexique d'une interface est un sous-ensemble des attributs
de la syntaxe de celle-ci. De méme, la sCmantique d'une interface est
l'opCration que celle-ci realise sur la syntaxe. Plus simplement, l'ensemble
des attributs manipulCs par une interface i en correspondance avec l'artefact a
est un sous-ensemble des attributs de celui-ci.
Il ressort de la typologie que le nombre d'interfaces
nécessaires à un processus donné comportant n types
d'artefacts est au pire des cas égal à 4 *n. La
spécification formelle nous permettra de définir des
modèles de ROSE pour les interfaces. De celle-ci découle une
spécification semi-formelle beaucoup plus proche d'un modèle
'informatique de la représentation des interfaces.
|