18
Interface de génération de blason Projet STL Projet STL M.GIBERT / M.GIBERT / M.LIPPMANN M.LIPPMANN

Interface de génération de blason

  • Upload
    tamra

  • View
    37

  • Download
    1

Embed Size (px)

DESCRIPTION

Interface de génération de blason. Projet STLM.GIBERT / M.LIPPMANN. Sommaire. L’héraldique Le projet Naissance Grammaire ? Fonctionnalités Architecture La réalisation Représentation Design Patterns Communication Bilan Métriques Conclusion. L’héraldique ?. Science du blason : - PowerPoint PPT Presentation

Citation preview

Interface de génération de blason

Projet STLProjet STL M.GIBERT / M.LIPPMANNM.GIBERT / M.LIPPMANN

Sommaire1. L’héraldique2. Le projet

A. NaissanceB. Grammaire ?C. FonctionnalitésD. Architecture

3. La réalisationA. ReprésentationB. Design PatternsC. Communication

4. BilanA. MétriquesB. Conclusion

Interface de génération de blason M.GIBERT / M.LIPPMANN

2

L’héraldique ?

• Science du blason :– Identification d’un chevalier– Identification de la généalogie / faits

d’armes, etc…

• Intérêt :– Langage universel permettant une

identification « rapide » de la personne

Interface de génération de blason M.GIBERT / M.LIPPMANN

3

Naissance du projet• Projet précédent

– Création d’une armoirie à partir de la description sous forme de S-expression

– Ecrit en ML

• Objectif du nouveau logiciel– Ecrit en JAVA– Créer une armoirie par opérations successives

sur une IHM– Générer la S-expression correspondant

(possibilité de s’interfacer avec l’application ML)

– Créer un moteur graphique plus riche Interface de génération de blason

M.GIBERT / M.LIPPMANN4

Grammaire : Blason

Pavage

Brochant

Interface de génération de blason M.GIBERT / M.LIPPMANN

5

Plain

Simple

Partition

Grammaire :Figure• Position :

• Nombre :

Interface de génération de blason M.GIBERT / M.LIPPMANN

6

Dextre Senestre

Pointe

Chef

Grammaire :Figure• Accompagner :

• Charger :

Interface de génération de blason M.GIBERT / M.LIPPMANN

7

Processus de création d’un blason

Interface de génération de blason M.GIBERT / M.LIPPMANN

8

S-Expression

Interface de génération de blason M.GIBERT / M.LIPPMANN

9

(Or ( Accompagné (charge ( fasce sable ) (molette gueules ))( en Chef Senestre ( molette argent ))))

Fonctionnalités• Fonctionnalités sur le blason

– Création– Edition– Import / Export– Transformation en S-expression

• Fonctionnalités sur les figures– Chargement– Accompagnement– Agrandissement / Réduction– Décalage horizontal et / ou vertical

• Fonctionnalités sur l’armoirie– Prévisualisation– Export Jpeg ou SVG

Interface de génération de blason M.GIBERT / M.LIPPMANN

10

Aperçu

Interface de génération de blason M.GIBERT / M.LIPPMANN

11

Architecture• Découpage fonctionnel

– Un composant pour l’IHM– Un composant pour le moteur graphique– Un composant pour la description sous forme de S-

expression.

• Réutilisation de composants– PSTL n°31 : « Réalisation SVG du blason »– Partage de composants– Mise au point du protocole de communication (travail

collaboratif)

• Débouche sur :– 2 projets indépendants– 1 interface de communication

Interface de génération de blason M.GIBERT / M.LIPPMANN

12

Représentation du blason

• Nécessité d’une représentation :– Proche de la grammaire pré-établie– Exprimable en XML– Exprimable en S-expression– Utilisable dans une interface graphique

• Choix d’une représentation arborescente– Copie conforme de la grammaire– Traductible directement en S-expression et en XML– Prédéfini dans SWING (JTree)

• Définition des entités de base : les nœuds de l’arbre– Rapprochement du cours d’ILP– Réutilisation de concepts (design pattern,

« compilation », explicitation)

Interface de génération de blason M.GIBERT / M.LIPPMANN

13

Design pattern• Application de divers motifs de conception

– Fabrique (Blason, Figure)– Visiteurs

• Traduction d’un blason en XML• Traduction d’un blason en S-expression• Edition de nœuds du blason• Représentation graphique d’un blason (JTree)

– Observateurs (IHM)– Singleton (Journalisation des opérations

successives)

• Utilisation combinée de visiteurs et de fabriques – Fabrication de Blasons et Figure abstraits via l’IHM– Un visiteur remplace des bouts de l’arbre– Indépendance entre l’IHM et les types concretsInterface de génération de blason

M.GIBERT / M.LIPPMANN14

Communication• Projet composé de deux sous-projets

indépendants– IHM– Moteur graphique

• Nécessité d’une interface entre les deux modules– Communication IHM / Moteur Graphique via un fichier

XML– Communication Moteur Graphique / IHM via un fichier

SVG

• Avantages :– Formats indépendants du langage et de la plate-forme– Substituabilité des composants

Interface de génération de blason M.GIBERT / M.LIPPMANN

15

Métriques• Utilisation de métriques

– Indicateurs de qualité (conception/réalisation)– Outils statistiques– Evaluation du coût de maitenance

• Mesures à l’aide d’outils spécialisés pour Java– Plugin Metrics pour Eclipse– Analyseur PMD

• Mise en évidence des sections « délicates »– Interprétation des données– Normalisation du code

Interface de génération de blason M.GIBERT / M.LIPPMANN

16

Bilan• Projet formateur

– Découverte du métier (héraldique)– Ecriture d’un cahier des charges– Premières versions demandées rapidement

• Travail en amont– Découpage fonctionnel– Identification de composants utilisables

• Travail en aval– Intégration– Mesures de qualité

Interface de génération de blason M.GIBERT / M.LIPPMANN

17

Interface de génération de blason M.GIBERT / M.LIPPMANN

18