Top Banner
www.modeliosoft.com www.modeliosoft.com Peut on être agile avec une approche Model Driven sur de grands projets ? Paris le 25 novembre 2010 by
14

Objecteering mdday2010

Jun 26, 2015

Download

Technology

MD DAY
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Objecteering mdday2010

www.modeliosoft.comwww.modeliosoft.com

Peut on être agile avec une approche Model Driven sur

de grands projets ?

Paris le 25 novembre 2010

by

Page 2: Objecteering mdday2010

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

Page 3: Objecteering mdday2010

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

Page 4: Objecteering mdday2010

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

Page 5: Objecteering mdday2010

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

Page 6: Objecteering mdday2010

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

Page 7: Objecteering mdday2010

www.modeliosoft.com

Découpage en projet

• Un SVN par projet

• Couplage « lâche » entre projets par « composants de modèles »

7

Page 8: Objecteering mdday2010

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

Page 9: Objecteering mdday2010

www.modeliosoft.com

Customisation Modelio: Outillage Dédié

Modelio Teamwork manager

Paramétrage Modelio

9

Page 10: Objecteering mdday2010

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

Page 11: Objecteering mdday2010

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

Page 12: Objecteering mdday2010

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

Page 13: Objecteering mdday2010

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

Page 14: Objecteering mdday2010

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