18
ALGORTHME DE ALGORTHME DE COMPOSITION COMPOSITION INTRODUCTION INTRODUCTION PRINCIPES DE BASE PRINCIPES DE BASE LES ETAPES LES ETAPES CONCLUSION CONCLUSION

ALGORTHME DE COMPOSITION

  • Upload
    cai

  • View
    16

  • Download
    1

Embed Size (px)

DESCRIPTION

ALGORTHME DE COMPOSITION. INTRODUCTION PRINCIPES DE BASE LES ETAPES CONCLUSION. INTRODUCTION. L’ ALGORITHME DE COMPOSITION PERMET DE CONSTRUIRE UN DIAGRAMME DE CLASSES A PARTIR DES ATTRIBUTS ET DES METHODES SIMULTANEMENT. - PowerPoint PPT Presentation

Citation preview

Page 1: ALGORTHME DE COMPOSITION

ALGORTHME DEALGORTHME DECOMPOSITIONCOMPOSITION

INTRODUCTIONINTRODUCTION

PRINCIPES DE BASEPRINCIPES DE BASE

LES ETAPESLES ETAPES

CONCLUSIONCONCLUSION

Page 2: ALGORTHME DE COMPOSITION

INTRODUCTIONINTRODUCTION

L’L’ ALGORITHME DE COMPOSITION ALGORITHME DE COMPOSITION PERMET DE CONSTRUIRE PERMET DE CONSTRUIRE UN DIAGRAMME DE CLASSES UN DIAGRAMME DE CLASSES A PARTIR DES ATTRIBUTS ET A PARTIR DES ATTRIBUTS ET DES METHODES SIMULTANEMENT.DES METHODES SIMULTANEMENT.

  IL REPOSE SUR L’AFFIRMATION SUIVANTE IL REPOSE SUR L’AFFIRMATION SUIVANTE : : IL EST POSSIBLE IL EST POSSIBLE DE CONNAITRE TOUS LES ATTRIBUTS ET TOUTES LES METHODES DE CONNAITRE TOUS LES ATTRIBUTS ET TOUTES LES METHODES D’UN PROBLEME DONNE. D’UN PROBLEME DONNE.

   CET AXIOME N’EST BIEN EVIDEMMENT PAS TOUJOURS CET AXIOME N’EST BIEN EVIDEMMENT PAS TOUJOURS VERIFIE ET CET VERIFIE ET CET ALGORITHMEALGORITHME NE PEUT DONC ETRE NE PEUT DONC ETRE APPLIQUEE DE MANIERE SYSTEMATIQUE.APPLIQUEE DE MANIERE SYSTEMATIQUE.

DANS TOUS LES PROBLEMES DEDANS TOUS LES PROBLEMES DE RE-INGINEERINGRE-INGINEERING (AYANT (AYANT POUR OBJECTIF LA TRANSFORMATION D’UN SYSTEME POUR OBJECTIF LA TRANSFORMATION D’UN SYSTEME CLASSIQUE EXISTANT EN SYSTEME OBJET) LES ATTRIBUTS ET CLASSIQUE EXISTANT EN SYSTEME OBJET) LES ATTRIBUTS ET LES METHODES SONT PAR DEFINITION CONNUS. LES METHODES SONT PAR DEFINITION CONNUS.

Page 3: ALGORTHME DE COMPOSITION

PRINCIPES DE BASE PRINCIPES DE BASE

IL EXISTE SEULEMENT DEUX TYPES D’OPERATIONS IL EXISTE SEULEMENT DEUX TYPES D’OPERATIONS EFFECTUEES PAR LES METHODES :EFFECTUEES PAR LES METHODES :

  – 1 LES OPERATIONS QUI 1 LES OPERATIONS QUI AFFECTENTAFFECTENT LES VALEURS LES VALEURS

DES ATTRIBUTS (CREATION, MODIFICATION, DES ATTRIBUTS (CREATION, MODIFICATION, CALCUL, ETC).CALCUL, ETC).

– 2 LES OPERATIONS QUI 2 LES OPERATIONS QUI CONSULTENTCONSULTENT LES LES VALEURS DES ATTRIBUTS (LECTURE, AFFICHAGE, VALEURS DES ATTRIBUTS (LECTURE, AFFICHAGE, COMPARAISON, ETC).COMPARAISON, ETC).

LES OPERATIONS DU PREMIER TYPE SERONT DESIGNEES SOUS LES OPERATIONS DU PREMIER TYPE SERONT DESIGNEES SOUS LE TERME  : LE TERME  : OPERATIONS DEOPERATIONS DE MIS A JOUR ET NOTEES O.MIS A JOUR ET NOTEES O. LES OPERATIONS DU SECOND TYPE SERONT APPELEES : LES OPERATIONS DU SECOND TYPE SERONT APPELEES : OPERATIONS DE CONSULTATION ET NOTEES X.OPERATIONS DE CONSULTATION ET NOTEES X.

Page 4: ALGORTHME DE COMPOSITION

PRINCIPES DE BASEPRINCIPES DE BASE

IL EXISTE DONC TROIS CATEGORIES DE METHODESIL EXISTE DONC TROIS CATEGORIES DE METHODES

LESLES METHODES DE MIS A JOURMETHODES DE MIS A JOUR QUI QUI N’EFFECTUENT QUE DES OPERATIONS DE TYPE 1. N’EFFECTUENT QUE DES OPERATIONS DE TYPE 1.

LES METHODES DELES METHODES DE CONSULTATION CONSULTATION QUI QUI N’EFFECTUENT QUE DES OPERATIONS DE TYPE 2.N’EFFECTUENT QUE DES OPERATIONS DE TYPE 2.

LES METHODES MIXTESLES METHODES MIXTES QUI EFFECTUENT A LA QUI EFFECTUENT A LA FOIS DES OPERATIONS DE TYPE 1 ET 2.FOIS DES OPERATIONS DE TYPE 1 ET 2.

Page 5: ALGORTHME DE COMPOSITION

LES ETAPESLES ETAPES

  L’ALGORITHME DE COMPOSITION COMPORTE QUATRE L’ALGORITHME DE COMPOSITION COMPORTE QUATRE ETAPES.ETAPES.  

ETAPE 1ETAPE 1CETTE ETAPE CONSISTE A CONSTRUIRE LA CETTE ETAPE CONSISTE A CONSTRUIRE LA MATRICE MATRICE ATTRIBUTS/METHODESATTRIBUTS/METHODES (ATTRIBUTS EN LIGNE ET (ATTRIBUTS EN LIGNE ET METHODES EN COLONNE) EN PLAÇANT DANS CHAQUE METHODES EN COLONNE) EN PLAÇANT DANS CHAQUE CASE UN SYMBOLE O OU X SELON LA NATURE DE CASE UN SYMBOLE O OU X SELON LA NATURE DE L’OPERATION EFFECTUEE SUR L’ATTRIBUT.L’OPERATION EFFECTUEE SUR L’ATTRIBUT.

REMARQUES :REMARQUES :      IL DOIT Y AVOIR AU MOINS UN SYMBOLE O ET UN SYMBOLE X PAR IL DOIT Y AVOIR AU MOINS UN SYMBOLE O ET UN SYMBOLE X PAR

LIGNE PUISQUE CHAQUE ATTRIBUT DOIT ETRE MIS A JOUR ET LU AU LIGNE PUISQUE CHAQUE ATTRIBUT DOIT ETRE MIS A JOUR ET LU AU MOINS UNE FOIS.MOINS UNE FOIS.LORSQU’UNE OPERATION CONSULTE ET MET A JOUR UN MEME LORSQU’UNE OPERATION CONSULTE ET MET A JOUR UN MEME ATTRIBUT, LA MISE A JOUR L’EMPORTE SUR LA CONSULTATION ET ATTRIBUT, LA MISE A JOUR L’EMPORTE SUR LA CONSULTATION ET LE SYMBOLE O EST PRIVILEGIE.LE SYMBOLE O EST PRIVILEGIE.

Page 6: ALGORTHME DE COMPOSITION

ETAPE 1ETAPE 1  

M1M1 M2M2 M3M3 M4M4 M5M5 M6M6 M7M7 M8M8

A1A1 OO XX XX

A2A2 OO XX

A3A3 OO XX XX

A4A4 OO XX XX

A5A5 XX OO

A6A6 XX OO

A7A7 XX OO XX

A8A8 XX OO XX

A9A9 OO XX

A10A10 XX OO

EXEMPLE DE MATRICE ATTRIBUTS / METHODES

Page 7: ALGORTHME DE COMPOSITION

ETAPE 2ETAPE 2  

CETTE ETAPE CONSISTE A CONSTRUIRE LES CETTE ETAPE CONSISTE A CONSTRUIRE LES CLASSES DE BASECLASSES DE BASE, C’EST A DIRE LES , C’EST A DIRE LES CLASSES PERMETTANT DE PLACER CLASSES PERMETTANT DE PLACER TOUS TOUS LES ATTRIBUTS ET TOUTES LES LES ATTRIBUTS ET TOUTES LES METHODES EFFECTUANT AU MOINS UNE METHODES EFFECTUANT AU MOINS UNE OPERATION DE MIS A JOUR.OPERATION DE MIS A JOUR.

    

Page 8: ALGORTHME DE COMPOSITION

ETAPE 2ETAPE 2    

C1

A1

M1

C2

A2A9

M2

C3

A3A4

M3

C5

A5A6

M5

C6

A8

M6

C7

A7A10

M7

SCHEMA DE CLASSES OBTENU A L’ISSUE DE L’ETAPE 2

Page 9: ALGORTHME DE COMPOSITION

ETAPE 2ETAPE 2    

DEUX CAS PARTICULIERS PEUVENT DEUX CAS PARTICULIERS PEUVENT APPARAITRE AU COURS DE CETTE ETAPE :APPARAITRE AU COURS DE CETTE ETAPE :

11ERER CAS CAS : INCLUSION DES ATTRIBUTS D’UNE CLASSE DANS UNE  : INCLUSION DES ATTRIBUTS D’UNE CLASSE DANS UNE AUTRE : DANS CE CAS ON FUSIONNE LES DEUX CLASSES EN AUTRE : DANS CE CAS ON FUSIONNE LES DEUX CLASSES EN

FAISANT L’UNION DES ATTRIBUTS ET DES METHODESFAISANT L’UNION DES ATTRIBUTS ET DES METHODES..

C

AiAjAk

Ml

C’

AiAj

Mn

C’’

AiAjAk

MlMn

+ EXEMPLE

Page 10: ALGORTHME DE COMPOSITION

ETAPE 2ETAPE 2    

22EMEEME CAS CAS : INTERSECTION (DES ENSEMBLES D’ATTRIBUTS) NON  : INTERSECTION (DES ENSEMBLES D’ATTRIBUTS) NON VIDE DE DEUX CLASSES. VIDE DE DEUX CLASSES.

– 11EREERE SOLUTION SOLUTION : ON CREE UN HERITAGE EN METTANT DANS LA  : ON CREE UN HERITAGE EN METTANT DANS LA CLASSE MERE LES ATTRIBUTS COMMUNS.CLASSE MERE LES ATTRIBUTS COMMUNS.

  CAiAjAk

Mp

C’AiAjAl

Mn

C’’AiAj+

CAk

Mp

C’Al

Mn

EXEMPLE

Page 11: ALGORTHME DE COMPOSITION

ETAPE 2ETAPE 2  

– 2 2 EMEEME SOLUTION SOLUTION : ON LAISSE DANS UNE CLASSE LE OU LES ATTRIBUTS COMMUNS  : ON LAISSE DANS UNE CLASSE LE OU LES ATTRIBUTS COMMUNS ET ON RAJOUTE UNE REFERENCE DANS L’AUTRE.ET ON RAJOUTE UNE REFERENCE DANS L’AUTRE.

LA SOLUTION CHOISIE EST FONCTION DU CONTEXTE C’EST A DIRE DE LA LA SOLUTION CHOISIE EST FONCTION DU CONTEXTE C’EST A DIRE DE LA SEMANTIQUE DES ATTRIBUTS ET DU NOMBRE D’ATTRIBUTS.SEMANTIQUE DES ATTRIBUTS ET DU NOMBRE D’ATTRIBUTS.

CAiAjAk

Mp

C’AiAjAl

Mn

C’AiAjAl

MnGET.AiGET.Aj

+

CAkRefC’

MpEXEMPLE

Page 12: ALGORTHME DE COMPOSITION

ETAPE 3ETAPE 3  

CETTE ETAPE PERMET DE PLACER DANS LES CETTE ETAPE PERMET DE PLACER DANS LES CLASSES CREEES PRECEDEMMENT LES CLASSES CREEES PRECEDEMMENT LES METHODES PERMETTANT D’ACCEDER AUX METHODES PERMETTANT D’ACCEDER AUX ATTRIBUTS CONSULTES PAR LES METHODES ATTRIBUTS CONSULTES PAR LES METHODES PLACEES DANS D’AUTRES CLASSES LORS DE PLACEES DANS D’AUTRES CLASSES LORS DE L’ETAPE PRECEDENTE. L’ETAPE PRECEDENTE.

  

CETTE ETAPE PERMET DE RESPECTER A LA CETTE ETAPE PERMET DE RESPECTER A LA LETTRE LE PRINCIPE D’ENCAPSULATION.LETTRE LE PRINCIPE D’ENCAPSULATION.

Page 13: ALGORTHME DE COMPOSITION

ETAPE 3ETAPE 3  

EXEMPLE : LA METHODE MI CREE L’ATTRIBUT AJ DANS LA EXEMPLE : LA METHODE MI CREE L’ATTRIBUT AJ DANS LA CLASSE C1 ET CONSULTE L’ATTRIBUT AK DANS LA CLASSE CLASSE C1 ET CONSULTE L’ATTRIBUT AK DANS LA CLASSE C2. C2.

IL FAUT DANS CE CAS AJOUTER DANS C2 UNE METHODE IL FAUT DANS CE CAS AJOUTER DANS C2 UNE METHODE QUE NOUS NOTERONS GETAK QUI PERMET D’AUTORISER LA QUE NOUS NOTERONS GETAK QUI PERMET D’AUTORISER LA CONSULTATION DE AK PAR MI . IL FAUT PAR AILLEURS CONSULTATION DE AK PAR MI . IL FAUT PAR AILLEURS AJOUTER DANS C1 UNE REFERENCE VERS C2.AJOUTER DANS C1 UNE REFERENCE VERS C2.

C1AjRefC2

Mi

C2Ak

GETAk

Page 14: ALGORTHME DE COMPOSITION

ETAPE 3ETAPE 3  

C1

A1RefC5

M1GET.A1GET.A1

C2

A2A9RefC1

M2GET.A9

C3

A3A4

M3GET.A3

C5

A5A6RefC1RefC6RefC7

M5GET.A5GET.A6

C6

A8RefC2

M6GET.A8

C7

A7A10RefC3

M7GET.A7GET.A10

SCHEMA OBTENU APRES L’ETAPE 3

Page 15: ALGORTHME DE COMPOSITION

ETAPE 4ETAPE 4  

  CETTE DERNIERE ETAPE PERMET DE PLACER CETTE DERNIERE ETAPE PERMET DE PLACER LES METHODES QUI NE FONT QUE DES LES METHODES QUI NE FONT QUE DES CONSULTATIONS AINSI QUE LES METHODES CONSULTATIONS AINSI QUE LES METHODES AUTORISANT CES CONSULTATIONS (GET).AUTORISANT CES CONSULTATIONS (GET).

  

Page 16: ALGORTHME DE COMPOSITION

ETAPE 4ETAPE 4    

C1

A1RefC5

M1GET.A1

C2

A2A9RefC1RefC3

M2GET.A9M4

C3

A3A4RefC6RefC7

M3GET.A3M8GET.A4

C5

A5A6RefC1RefC6RefC7

M5GET.A5GET.A6

C7

A7A10RefC3

M7GET.A7GET.A10

C6

A8RefC2

M6GET.A8

SCHEMA FINAL OBTENU APRES L’ETAPE 4

Page 17: ALGORTHME DE COMPOSITION

CONCLUSIONCONCLUSION

LA COMPOSITION PERMET D’OBTENIRLA COMPOSITION PERMET D’OBTENIRLES MEILLEURS REGROUPEMENTSLES MEILLEURS REGROUPEMENTS ATTRIBUTS/METHODES POSSIBLESATTRIBUTS/METHODES POSSIBLES, EN , EN RESPECTANT LE PRINCIPE D’ENCAPSULATION. RESPECTANT LE PRINCIPE D’ENCAPSULATION. – ELLE POSSEDE LE MEME OBJECTIF QUE LA ELLE POSSEDE LE MEME OBJECTIF QUE LA

NORMALISATION NORMALISATION DES DONNEES EN CC : DES DONNEES EN CC : STRUCTURER UN ENSEMBLE D’ELEMENTS STRUCTURER UN ENSEMBLE D’ELEMENTS

DANS LE RESPECT D’UNE CONTRAINTE. DANS LE RESPECT D’UNE CONTRAINTE. – DE CE POINT DE VUE, L’ENCAPSULATION DE CE POINT DE VUE, L’ENCAPSULATION

PEUT-ETRE CONSIDEREE COMME PEUT-ETRE CONSIDEREE COMME UNE AIDE A UNE AIDE A LA STRUCTURATION DES METHODES.LA STRUCTURATION DES METHODES.

Page 18: ALGORTHME DE COMPOSITION

EXEMPLEEXEMPLE

M1M1 M2M2 M3M3 M4M4 M5M5 M6M6 M7M7 M8M8 M9M9 M1M100

M1M111

M1M122

A1A1 OO XX XXA2A2 OO OO XX XX XXA3A3 OO OO XX XX XXA4A4 XX OOA5A5 XX OO OO XXA6A6 XX OO XX OOA7A7 XX OO XXA8A8 XX XX OO XXA9A9 XX OO XXA1A100

XX OO OO

A1A111

XX OO