1 / 15

Interface de génération de blason

Interface de génération de blason. Projet STL M.GIBERT / M.LIPPMANN. Sommaire. L’héraldique Définitions Présentation Le projet Naissance Grammaire ? Fonctionnalités Architecture La réalisation Représentation Design Patterns Communication Bilan Métriques Conclusion.

habib
Télécharger la présentation

Interface de génération de blason

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


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

  2. Sommaire • L’héraldique • Définitions • Présentation • Le projet • Naissance • Grammaire ? • Fonctionnalités • Architecture • La réalisation • Représentation • Design Patterns • Communication • Bilan • Métriques • Conclusion Interface de génération de blason M.GIBERT / M.LIPPMANN

  3. L’héraldique ? • Science du blason : • Identification d’un chevalier • Identification de la généalogie • Intérêt : • Langage universel permettant une identification de l’origine de la personne entre plusieurs pays Interface de génération de blason M.GIBERT / M.LIPPMANN

  4. Création d’un blason Interface de génération de blason M.GIBERT / M.LIPPMANN

  5. 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.LIPPMANN

  6. Grammaire : Blason Pavage Réduit Brochant Plain Simple Partition Interface de génération de blason M.GIBERT / M.LIPPMANN

  7. Grammaire :Figure Chef • Position : • Accompagner : • Charger : Dextre Senestre Pointe Interface de génération de blason M.GIBERT / M.LIPPMANN

  8. 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

  9. 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 » • Non-duplication du travail • Mise au point du protocole de communication • Débouche sur : • 2 projets indépendants • 1 interface de communication Interface de génération de blason M.GIBERT / M.LIPPMANN

  10. Représentation • 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

  11. 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 concrets Interface de génération de blason M.GIBERT / M.LIPPMANN

  12. 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 • Subsitutabilité des composants • Inconvénients : • Pas de souplesse, fichiers non paramétrables • Ecritures sur disque inutiles Interface de génération de blason M.GIBERT / M.LIPPMANN

  13. Métriques • Utilisation de métriques • Indicateurs de qualité (conception/réalisation) • Outils statistiques utilisés pour évaluer le coût de maintenance d’un projet (ou repartir de zéro). • 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

  14. Bilan • Projet formateur • Métier inconnu auparavant • Cahier des charges inexistant • Premières versions demandées rapidement • Travail en amont • Découpage fonctionnel • Identification de composants utilisables (moteur graphique) • Travail en aval • Intégration • Mesures de qualité Interface de génération de blason M.GIBERT / M.LIPPMANN

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

More Related