Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Objecteering mdday2010

917 views

Published on

Published in: Technology, Business
  • Be the first to comment

  • Be the first to like this

Objecteering mdday2010

  1. 1. www.modeliosoft.comwww.modeliosoft.com Peut on être agile avec une approche Model Driven sur de grands projets ? Paris le 25 novembre 2010 by
  2. 2. www.modeliosoft.com Combiner les avantages de Modélisation, MDA, Grands projets, Agilité • Trop souvent, Modélisation/Agilité ou MDA/Grands projets sont perçus comme antinomiques • MDA nécessite une organisation d’équipe dédiée, des outils adaptés pour passer à l’échelle de grandes équipes • Domaines essentiels souvent rébarbatifs pour les développeurs peuvent être facilités par une approche guidée par le modèle – Gestion de version et configuration, – Intégration, – Validation, – Organisation du travail de groupe 2
  3. 3. www.modeliosoft.com Retour d’expérience: le projet • Pas de théorie, mais une recherche pragmatique de solutions de confort pour un développement de qualité • Développement interne de l’outil Modelio … avec l’outil Modelio • Plusieurs technologies: C++, Java, Modules MDA Modelio (Java et API Modelio). 3000 Classes; 15 .. 25 Intervenants. • Framework spécifique Modelio (gestion de la persistance, de la cohérence, règles de présentation, gestion des transactions, gestion de l’identification, production d’API Java …) • Production automatisée MDA: Metamodèle  Framework • Développement d’un produit (compatibilité ascendante, branches de version, …) en évolution depuis … 1991. 3
  4. 4. www.modeliosoft.com L’adhésion des responsables et développeurs: Une nécessité • Le développeur doit percevoir le gain: productivité, coopération facilitée, niveau de procédure et qualité garantis • Le responsable doit percevoir le gain en qualité et productivité • La coopération des contributeurs est indispensable: discipline acceptée et collectivement encouragée • Tous les développeurs ont le même environnement (toolkit): version de Modelio, extension, IDE, chaîne de production. Mise à jour centralisée. 4
  5. 5. www.modeliosoft.com Organisation d’un projet : Synoptique Model Driven, MDA, Intégration continue ? Corrections faites par tel développeurs ? Anomalies corrigées ? Interventions sur tel composant 5
  6. 6. www.modeliosoft.com Les outils supports • Modelio : Modélisation, génération de code • Modules Modelio: Java Designer, C++ Designer, MDA Designer, Teamwork manager, Document Publisher • Extensions Modelio dédiées au support du processus de développement (modules Java spécifiques) : intégration avec les autres outils, automatisation de procédures, génération automatique vers framework interne de gestion de modèles • Eclipse : IDE développements Java • MS Visual Studio IDE développements C++ • Subversion : gestion de version et configuration, utilisé via le coupage natif Modelio Teamwork Manager. • Mantis : gestion d’anomalie. Application web. • Testlink : gestion des tests • Hudson : production automatisée d’applications. 6
  7. 7. www.modeliosoft.com Découpage en projet • Un SVN par projet • Couplage « lâche » entre projets par « composants de modèles » 7
  8. 8. www.modeliosoft.com Coopération au niveau du modèle Obligations du participant: • Ne pas réserver trop longtemps des parties de modèle • Compiler/tester avant de livrer • Documenter sa livraison (ce qui est modifié, pourquoi, comment, impacts sur validation, …) Etapes 8
  9. 9. www.modeliosoft.com Customisation Modelio: Outillage Dédié Modelio Teamwork manager Paramétrage Modelio 9
  10. 10. www.modeliosoft.com MDA: plusieurs pratiques au sein du même projet • Génération complète (Metamodèle  framework): Travail exclusif au niveau du modèle • Génération partielle (conception technique): Génération en mode « Model Driven ». Le modèle est maître. La modificication de code est encadrée (balisée). Architecture globale, classes essentielles et structurantes. • Génération « roundtrip » (codage): Le code est maître. génération depuis modèle, modification/synchronisation à partir de code. Classes techniques, complémentant l’architecture (ex: IHM, « ActionListener », …) Le développeur doit respecter les modes « Model Driven » dans ses interventions La GVC et la coopération sont constamment gérés via le modèle (code 100% reproduit depuis modèle et extensions) 10
  11. 11. www.modeliosoft.com Passage à l’échelle MDA: on évite • Cascade de transformations de modèles/mises à jour manuelles – Mise à jour des modifs d’un modèle vers un modèle transformé: OK – Mise à jour des modifs d’un modèle vers un modèle transformé modifié manuellement • Plusieurs modèles/artefacts partiellement déduits les uns des autres, chacun gérés en configuration (ex: modèle et code séparés) • Un modèle de haut niveau sur lequel interviennent un nombre limité de personnes génère/met à jour des modifications disséminées dans un modèle de plus bas niveau sur lesquelles interviennent plusieurs personnes 11
  12. 12. www.modeliosoft.com Modelio : Des outils pour assister les développeurs sur les grands projets Diff/Merge de modèles Analyse d’impact sur modèles 12
  13. 13. www.modeliosoft.com Gains de productivité: ne pas oublier l’essentiel • Coût codage = 30% coût de réalisation • Coût de réalisation = 30% coût de possession d’un logiciel  Maintenabilité constitue un enjeu très important • Une approche guidée par le modèle bien gérée – Améliore l’analyse et la conception, l’architecture – Automatise (partiellement) le codage – Assiste la gestion de configuration, de version, test et validation donc améliore la maintenabilité • Gains obtenus par des procédures et de l’outillage adaptés. 13
  14. 14.  Téléchargez le white paper  Téléchargez Modelio Free Edition ou Modelio Enterprise Edition www.modelio.fr  Téléchargez les extensions - plug-ins Modelio - (SoaML, Tests for UML, …) disponible en open source sur: www.open-modelio.sourceforge.com Evaluez Modelio Enterprise Edition, téléchargez Modelio Free Edition, regardez des démos, ou découvrez les autres atouts de Modelio ! M o d e l i n g S o l u t i o n s

×