Projet Génie Logiciel

7
Des patterns à la 3 ème dimension Projet Génie Logiciel EPSI 2011 : PACELLI / CUISIN

description

Projet Génie Logiciel. Des patterns à la 3 ème dimension. EPSI 2011 : PACELLI / CUISINIER. Le projet : Du . obj à la 3 Dimension …. Pont / Bridge (patron de conception). Problème : Utilisation de code tiers. Commande (patron de conception). Problème : Communication inter-couches. - PowerPoint PPT Presentation

Transcript of Projet Génie Logiciel

Page 1: Projet Génie Logiciel

Des patterns à la 3ème dimension

Projet Génie Logiciel

EPSI 2011 : PACELLI / CUISINIER

Page 2: Projet Génie Logiciel

Le projet : Du .obj à la 3 Dimension …

Page 3: Projet Génie Logiciel

• Problème : Utilisation de code tiers.

Pont / Bridge (patron de conception)

Page 4: Projet Génie Logiciel

• Problème : Communication inter-couches.

Commande (patron de conception)

Page 5: Projet Génie Logiciel

• Problème : Communication inter-couches.

Chaîne de responsabilité (patron de conception)

Page 6: Projet Génie Logiciel

• Problème : Mettre à jour l’état d’avancement d’un traitement long. (barre de progression et description de l’étape en cours)

Etat (patron de conception)

class Etat

Message

Common::Traitement

- abonnes: List<IObservateur>- courant: int- etapes: List<Etape>- nomTraitement: string

+ Abonner(IObservateur) : void+ AjouterEtape(Etape) : void+ Desabonner(IObservateur) : void- etape_ValeurChanged(object, EventArgs) : void# OnEtapeMaj(EventArgs) : void- OnFinTraitement(EventArgs) : void- OnSuivant(EventArgs) : void+ Suivant() : void+ Traitement(string)+ Traitement(string, Etape[])

«property»+ EtapeActuelle() : Etape+ NomTraitement() : string+ PourcentageTotal() : int

Common::Etape

- nom: string- pourcentage: int

+ Etape()+ Etape(string)

«property»+ Nom() : string+ Pourcentage() : int

«event»+ ValeurChanged() : EventHandler

Page 7: Projet Génie Logiciel

• Problème : appeler une fonction en fonction d’un événement.

Observateur (patron de conception)

class Observateur

«interface»Common::IObservateur

+ OnEtapeMaj(object, EventArgs) : void+ OnFinTraitement(object, EventArgs) : void+ OnSuivant(object, EventArgs) : void

Form

View::frmPrincipal

- instance: Principal- suivant: IChaineResponsabilite

- ckFilDeFer_CheckedChanged(object, EventArgs) : void- cmInitCamera_Click(object, EventArgs) : void- Exporter(object, EventArgs) : void+ frmPrincipal(IPluginRendu, int)- frmPrincipal_FormClosing(object, FormClosingEventArgs) : void- Importer(object, EventArgs) : void- InitialiserMenu() : void- MAJInfos(Modele) : void+ OnEtapeMaj(object, EventArgs) : void+ OnFinTraitement(object, EventArgs) : void+ OnSuivant(object, EventArgs) : void- Quitter() : void- tmiAPropos_Click(object, EventArgs) : void- tmiQuitter_Click(object, EventArgs) : void+ TraiterMessage(object, Pacu.Common.Message) : void

«property»+ Suivant() : IChaineResponsabilite

Message

Common::Traitement

- abonnes: List<IObservateur>- courant: int- etapes: List<Etape>- nomTraitement: string

+ Abonner(IObservateur) : void+ AjouterEtape(Etape) : void+ Desabonner(IObservateur) : void- etape_ValeurChanged(object, EventArgs) : void# OnEtapeMaj(EventArgs) : void- OnFinTraitement(EventArgs) : void- OnSuivant(EventArgs) : void+ Suivant() : void+ Traitement(string)+ Traitement(string, Etape[])

«property»+ EtapeActuelle() : Etape+ NomTraitement() : string+ PourcentageTotal() : intData::Principal

- instance: Principal- moteurRendu: MoteurRendu- plugins: GestionnairePlugins- ressources: GestionnaireRessources- suivant: IChaineResponsabilite

+ AjouterResponsabilite(IChaineResponsabilite) : void+ OnEtapeMaj(object, EventArgs) : void+ OnFinTraitement(object, EventArgs) : void+ OnSuivant(object, EventArgs) : void- Principal()+ TraiterMessage(object, Message) : void

«property»+ Instance() : Principal+ MoteurRendu() : MoteurRendu+ Plugins() : GestionnairePlugins+ Ressources() : GestionnaireRessources+ Suivant() : IChaineResponsabilite

-instance

-instance