Cours de modlisation des traitements de systmes d information  informatiss - Les tables de dcision
39 pages
Slovak

Cours de modlisation des traitements de systmes d'information informatiss - Les tables de dcision

-

Le téléchargement nécessite un accès à la bibliothèque YouScribe
Tout savoir sur nos offres
39 pages
Slovak
Le téléchargement nécessite un accès à la bibliothèque YouScribe
Tout savoir sur nos offres

Description

Modélisation de logiciels de gestion 50. Les tables de décision Modélisation des données, modélisation des traitements et d’autres thèmes sont accessibles depuis l’index du cours de modélisation de logiciels de gestion: http://lgl.isnetne.ch/modelisation-2005 Table des matières 1 Préambule........................................................................................................................... 3 2 Définition 4 3 Structure ............................................................................................................................. 5 4 Elaboration ......................................................................................................................... 6 4.1 Les conditions ............................................................................................................ 6 4.2 Les actions.................................................................................................................. 7 4.3 Représentation sous forme d’une table de décision ................................................... 7 4.4 Simplification de la table de décision ........................................................................ 8 4.5 Pseudo code d’implantation ....................................................................................... 9 4.6 Implantation sous forme d’une collection de règles................................................. 10 5 Les règles............ ...

Sujets

Informations

Publié par
Nombre de lectures 93
Langue Slovak

Extrait

 
Modélisation de logiciels de gestion
 50. Les tables de décision
Table des matières
        Modélisation des données, modélisation des traitements et d’autres thèmes sont accessibles depuis l’index du cours de modélisation de logiciels de gestion:  http://lgl.isnetne.ch/modelisation-2005        1 Préambule........................................................................................................................... 3 2 Définition ........................................................................................................................... 4 3 Structure ............................................................................................................................. 5 4 Elaboration ......................................................................................................................... 6 4.1 Les conditions ............................................................................................................ 6 4.2 Les actions.................................................................................................................. 7 4.3 Représentation sous forme d’une table de décision ................................................... 7 4.4 Simplification de la table de décision ........................................................................ 8 4.5 Pseudo code dimplantation.......................................................................................9 4.6 Implantation sous forme d’une collection de règles................................................. 10 5 Les règles.......................................................................................................................... 11 5.1 Les règles simples .................................................................................................... 11 5.2 Les règles complexe ................................................................................................. 11 5.3 La règle ELSE .......................................................................................................... 11 6 Les tables.......................................................................................................................... 12 6.1 Tables limitées.......................................................................................................... 12 6.2 Tables étendues........................................................................................................13 6.3 Tables mixtes............................................................................................................ 14 7 Calcul du nombre de règles simples d’une table de décision........................................... 15 7.1 Nombre maximal de règles simples d’une table de décision à entrées mixtes ........ 15 7.2 Nombre maximal de règles simples d’une table de décision à entrées limitées ...... 16 7.3 Nombre de règles simples d’une table de décision avec règles complexes ............. 17 8 Complétion ....................................................................................................................... 18 8.1 Table logiquement complète .................................................................................... 18 8.2 Table formellement complète................................................................................... 18 9 Tables standards ............................................................................................................... 19 Cours de modélisation 2005/2006 50. Les tables de décision 26.11.2007/ P-A. Sunier http://lgl.isnetne.ch/modelisation-2005 1/39http://lgl.isnetne.ch  
10 Décomposition de tables de décision ........................................................................... 20 10.1 Tables ouvertes......................................................................................................... 21 10.2 Tables fermées.......................................................................................................... 21 10.3 Exemple de décomposition d’une table en plusieurs ............................................... 22 11 Consolider une table de décision.................................................................................. 23 12 Recherche et élimination des redondances des actions ................................................ 24 13 Recherche et élimination des redondances des conditions........................................... 25 14 Recherche des redondances de règles .......................................................................... 26 14.1.1 Détection à l’aide des tables standards............................................................. 27 14.1.2 Détection par confrontation de règles .............................................................. 28 15 Redondances de règles avec ou sans contradiction ...................................................... 29 16 Elimination des redondances de règles sans contradiction .......................................... 30 16.1 Inclusion ................................................................................................................... 30 16.2 Intersection ............................................................................................................... 31 17 Vérification de la complétion ....................................................................................... 33 17.1 Calcul du nombre de règles ...................................................................................... 34 17.2 Utilisation d’une table standard................................................................................ 35 18 Minimisation des tables de décision............................................................................. 36 18.1 Minimisation des conditions .................................................................................... 36 18.2 Minimisation des actions.......................................................................................... 37 18.3 Minimisation des règles ........................................................................................... 38 19 Références bibliographiques ........................................................................................ 39  
Cours de modélisation 2005/2006 http://lgl.isnetne.ch/modelisation-2005  
50. Les tables de décision 2/39
26.11.2007/ P-A. Sunier http://lgl.isnetne.ch 
1 Préambule  Lors des chapitres précédents, nous avons vu comment modéliser les traitements du système d’information ; nous avons aussi étudié la représentation de l’interaction entre les traitements et les données. Nous nous souvenons que le but de tout traitement informatique consiste à transformer les données reçues en entrée et de renvoyer le résultat de cette transformation en sortie. Il nous faut maintenant disposer de modèles pour exprimer la logique de cette transformation.  Toute fonction, du modèle de flux de données de l’approche classique, reçoit un flux de données en entrée et fournit un flux de données en sortie. Il nous faut maintenant décrire le comportement interne de la fonction de traitement ; cette description peut se faire sous forme de pseudo Figure 1 - Fonction et flux de donnéesicidée . onde décision ou ecnro eedt baeld decode, tr stoucmarg ,emrad erb s  Nous présentons, dans ce chapitre, le concept de table de décision ; la table de décision nous semble le modèle le plus adéquat pour exprimer exhaustivement les règles de transformation d’un processus métier ou d’un traitement automatisé.  Il est essentiel que les différentes fonctions constitutives d’un système d’information se comportent comme des boîtes blanches1si nous voulons garantir l’adéquation du système d’information aux besoins exprimés. Une table de décision est certainement la représentation la plus rigoureuse et la plus pertinente qui soit de la logique interne d’une fonction et surtout, une table de décision est un excellent point de départ pour réaliser les tests de boîte blanche.   Malheureusement, les tables de décision ne sont, en général, pas supportées en tant que telles par les logiciels de conception de solutions informatiques. Progressivement, il apparaît sur le marché des moteurs de règles; les règles sont des éléments de tables de décision. Les moteurs de règles sont un gros progrès pour l’industrialisation et la qualité du logiciel mais s’ils excellent dans le traitement unitaire des règles, ils ne permettent pas de garantir l’exhaustivité des traitements d’une fonction.  Remarque: Le concept de table de décision provient de l’approche classique basée sur le paradigme de séparation des données et des traitements; toutefois, une table de décision reste un moyen de représentation tout à fait approprié pour décrire une activité, un cas d’utilisation ou encore une opération2de l’approche orientée objet. En effet, comme nous l’avons vu dans le chapitre de modélisation des traitements automatisés, lors de l’activité d’analyse du processus unifié (UP), nous présentons le système d’information en séparant les données (les entités métier) et les traitements (les interfaces et les contrôleurs).
                                                 1 Une boîte blanche est une fonction dont on connaît exactement les règles de comportement interne; à chaque jeu de données fourni en entrée n’est associé qu’un et un seul jeu de données en sortie. Par opposition à une boîte blanche, les résultats fournis par une boîte noire ne sont pas systématiquement prévisibles car le détail de son comportement interne n’est pas connu. 2Une méthode s’agissant de langage de programmation orienté objet. Cours de modélisation 2005/2006 50. Les tables de décision 26.11.2007/ P-A. Sunier http://lgl.isnetne.ch/modelisation-2005 3/39http://lgl.isnetne.ch  
2 Définition   Une table de décision exprime exhaustivement les relations entre la logique interne d’une fonction ou d’un processus, les données fournies en entrée et les données restituées en sortie.  Les données fournies en entrée deviennent les conditions de la table de décision.  données restituées en sortie proviennent des actions déclenchées par la table deLes décision.  Les couples (conditions, actions) deviennent les règles de la table de décision ou, dit autrement, la logique interne de la fonction.      
R1 R2 R3 R4
 Table – Programme de ski C1 Journée relâche N O O O C2 Temps chaud - O O N C3 Eau >= 20° - O N -   A1 Journée de ski X A2 Piscine extérieure XDonnées en sortie A3 Piscine intérieure X X
 Figure 2 - Logique interne d'une fonction
Données en entrée          La représentation de la logique interne d’une fonction par une table de décision nous permet d’atteindre l’objectif de prédictibilité que nous attendons d’une boîte blanche.  Par ailleurs, une table de décision nous offre les avantages suivants :  une grande facilité de lecture, même en présence de nombreuses conditions, actions et règles ;  une représentation précise de la logique interne de la fonction ;  grâce au mécanisme de complétude, il est possible de garantir l’exhaustivité des règles applicables aux différentes données reçues en entrée.  Lorsque la logique interne d’une fonction est relativement simple, il y a lieu de privilégier d’autres moyens de représentation plus simple comme un structogramme ou un arbre de décision.
Cours de modélisation 2005/2006 50. Les tables de décision 26.11.2007/ P-A. Sunier http://lgl.isnetne.ch/modelisation-2005 4/39http://lgl.isnetne.ch  
3 Structure  Les lignes d’une table de décision sont séparées en conditions et en actions; les conditions sont placées en premier et les actions ensuite. Les colonnes représentent sous forme de règles les relations entre valeurs de conditions et actions.  
 
 Figure 3 - Structure d'une table de décision
Cours de modélisation 2005/2006 http://lgl.isnetne.ch/modelisation-2005  
50. Les tables de décision 5/39
 
26.11.2007/ P-A. Sunier http://lgl.isnetne.ch 
4 Elaboration  Pour élaborer la table de décision relative à un processus ou une fonction, la première étape consiste à mettre en évidence les conditions et les actions.  Prenons l’exemple de l’occupation de la journée de Nicolas; si Jacques et André viennent chez Nicolas, ils iront dehors en cas de beau temps et resteront dedans à jouer aux cartes s’il pleut. Si André ne vient pas, Nicolas jouera aux échecs, de même, s’il se trouve seul avec son ami André. Si Nicolas se trouve tout seul et qu’il pleut, il en profitera pour lire un livre. Si Nicolas est seul et qu’il fait beau temps, il ira se promener en forêt.  4.1 Les conditions  A partir du texte de notre exemple, nous mettons en évidence les conditions reproduites dans la partie gauche du tableau de la Figure 4:  Conditions présentes dans le texte Conditions simplifiées Jacques et André viennent. André ne vient as. Jacques vient (oui ou non) (Nicolas est seul avec Jacques) Jacques ne vient pas. (Nicolas est seul avec André) André vient (oui ou non) Nicolas se trouve seul. Il fait beau temps. Il pleut Il pleut (oui ou non)  Figure 4 - Liste des conditions  Les conditions présentes dans le texte, ou de manière générale les conditions exprimées par la maîtrise d’ouvrage ou les utilisateurs dans le cadre d’un projet d’informatisation sont souvent compliquées et difficilement exploitables; pour les simplifier, nous élaborons des descriptions susceptibles d’être associées à des valeurs discrètes ou à un intervalle de valeurs. Pour notre exemple, les deux conditions « Il fait beau temps » et « Il pleut » sont simplifiées par la description de condition « Il pleut » à laquelle nous pourrons associer les valeurs « Oui » et « Non ».  
Cours de modélisation 2005/2006 http://lgl.isnetne.ch/modelisation-2005  
50. Les tables de décision 6/39
26.11.2007/ P-A. Sunier http://lgl.isnetne.ch 
      
Actions simplifiées Aller dehors. Rester dedans et jouer aux cartes. Jouer aux échecs avec André Jouer aux échecs avec Jacques Lire un livre. Se promener en forêt.
Figure 5 - Liste des actions
4.2 Les actions  Après avoir mis en évidence et simplifié les conditions, il nous faut mettre en évidence et simplifier les actions.  Actions présentes dans le texte Aller dehors. Rester dedans et jouer aux cartes. Jouer aux échecs  Avec André  Avec Jacques Lire un livre. Se promener en forêt.   4.3 Représentation sous forme d’une table de décision   Maintenant que nous avons établi une liste de conditions et d’actions, nous pouvons mettre en relation les différentes valeurs de conditions et d’actions sous forme de règles.  TD – Occupation de Nicolas R1 R2 R3 R4 R5 R6 R7 R8 C1 Jacques vient O O O O N N N N C2 André vient O O N N O O N N C3 Il pleut O N O N O N O N A1 Aller dehors X A2 Rester dedans et jouer aux cartes X A3 Jouer aux échecs avec Jacques X X A4 Jouer aux échecs avec André X X A5 Lire un livre X A6 Se promener en forêt X  
Figure 6 - Table de décision d'occupation de Nicolas
Cours de modélisation 2005/2006 50. Les tables de décision 26.11.2007/ P-A. Sunier http://lgl.isnetne.ch/modelisation-2005 7/39http://lgl.isnetne.ch  
4.4 Simplification de la table de décision  Nous pouvons observer que les règles R3 et R4 de la table de décision de la Figure 6 ne tiennent pas compte de la condition « Il pleut » ; il en est de même pour les règles R5 et R6.  Nous simplifions la table de décision en remplaçant les règles R3 et R4 par une nouvelle règle dont la condition « Il pleut » n’est pas prise en compte.  TD – Occupation de Nicolas R1 R2 R3 R4 R5 R6 C1 Jacques vient O O O N N N C2 André vient O O N O N N C3 Il pleut O N - - O N A1 Aller dehors X A2 Rester dedans et jouer aux cartes X A3 Jouer aux échecs avec Jacques X A4 Jouer aux échecs avec André X A5 Lire un livre X A6 Se promener en forêt X  Figure 7 - Table de décision d'occupation de Nicolas simplifiée  Cours de modélisation 2005/2006 50. Les tables de décision 26.11.2007/ P-A. Sunier http://lgl.isnetne.ch/modelisation-2005 8/39http://lgl.isnetne.ch  
 
4.5 Pseudo code d’implantation  Une table de décision peut être traduite telle quelle en code exécutable comme illustré par le pseudo code de la Figure 8.    IF Jacques vient THEN IF André vient THEN IF il pleut THEN - Rester dedans et jouer aux cartes ELSE - Aller dehors  ENDIF ELSE - Jouer aux échecs avec Jacques ENDIF ELSE IF André vient THEN - Jouer aux échecs avec André ELSE IF il pleut THEN -Lire un livre ELSE - Se promener en forêt ENDIF ENDIF ENDIF  
   
Figure 8 – Pseudo code de la table dedécision d'occupation de Nicolas simplifiée
Cours de modélisation 2005/2006 http://lgl.isnetne.ch/modelisation-2005  
50. Les tables de décision 9/39
26.11.2007/ P-A. Sunier http://lgl.isnetne.ch 
4.6 Implantation sous forme d’une collection de règles  En cas de changement à l’intérieur d’une table de décision, l’adaptation du pseudo code de la Figure 8 peut être relativement fastidieuse et surtout susceptible d’engendrer des erreurs3.  En lieu et place de produire des enchaînements de tests et d’actions, nous préconisons d’évaluer chaque règle de la table de décision et d’exécuter la règle qui est valide.     R1 := (Jacques vient) AND (André vient) AND (Il pleut) R2 := (Jacques vient) AND (André vient) AND NOT (Il pleut) R3 := (Jacques vient) AND NOT (André vient) R4 := NOT (Jacques vient) AND (André vient) R5 := NOT(Jacques vient) AND NOT(André vient) AND (Il pleut) R6 := NOT(Jacques vient) AND NOT(André vient) AND NOT (Il pleut)  IF R1 THEN Rester dedans et jouer aux cartes -ENDIF  IF R2 THEN - Aller dehors ENDIF  IF R3 THEN - Jouer aux cartes avec Jacques ENDIF  IF R4 THEN - Jouer aux cartes avec André ENDIF  IF R5 THEN - Lire un livre ENDIF  IF R6 THEN Se promener en forêt -ENDIF   Figure 9 – Pseudo code sous forme d’une collection de règles  Chaque variable R1 à Rn correspond à l’évaluation des indicateurs des conditions de la règle correspondante de la table de décision ; les valeurs possibles sont Vrai ou Faux.  Une seule variable R1 à Rn peut avoir la valeur Vrai.
                                                 3en l’occurrence de régression du code ; le code ancien fonctionnait correctement et l’utilisateur neIl s’agit comprend pas pourquoi le logiciel ne fonctionne plus correctement. Cours de modélisation 2005/2006 50. Les tables de décision 26.11.2007/ P-A. Sunier http://lgl.isnetne.ch/modelisation-2005 10/39http://lgl.isnetne.ch  
ELSE R1 R2 R3 R4  O O O N  10 20 30 - N N O - 1 2 3 4  X  X X X
5 Les règles  Trois sortes de règles peuvent apparaître dans une table de décision : la règle ELSE, les règles simples et les règles complexes.   TD – Exemple de règles C1 Condition 1 C2 Condition 2 C3 Condition 3 A1 Action 1 A2 Action 2 A3 Action 3 A4 Erreur  Figure 10 – Exemple des différentes règles possibles  5.1 Les règles simples  Une règle simple est une règle ne possédant pas de valeur indifférente (-) dans ses indicateurs de condition. R2 et R3 de la Figure 10 sont des règles simples.  5.2 Les règles complexe  Une règle complexe est une règle possédant une ou plusieurs valeurs indifférentes (-) dans ses indicateurs de condition. R1 et R4 de la Figure 10 sont des règles complexes.  5.3 La règle ELSE  La règle ELSE est une règle recouvrant toutes les règles ne figurant pas dans la table de décision et correspondant généralement à des erreurs. En principe, la règle ELSE est placée en début ou en fin des règles.  Remarque: La règle ELSE n’est pas prise en compte pour lecalcul du nombre de règles.
Cours de modélisation 2005/2006 50. Les tables de décision 26.11.2007/ P-A. Sunier http://lgl.isnetne.ch/modelisation-2005 11/39http://lgl.isnetne.ch  
  • Univers Univers
  • Ebooks Ebooks
  • Livres audio Livres audio
  • Presse Presse
  • Podcasts Podcasts
  • BD BD
  • Documents Documents