Ervaringen met het opzetten van een MDD omgeving



Vergelijkbare documenten
Model Driven Development. Kosten, baten, organisatie

Creëer je eigen DSL tools met Eclipse De Android Challenge

WAT BETEKENT BUSINESS AGILITY VOOR UW ONTWIKKELSTRAAT? SAMENVATTING BUSINESS AGILITY ITERATIEVE AANPAK ONTWIKKELSTRAAT

Agile bij grote administratieve systemen. Omgaan met requirements

1750,00 excl. BTW. analytisch denkvermogen, empathie, assertief, communicatief, aanleg voor formalisme,...

Agile Testen in de praktijk

Testdriven architecture

Verzamelde vragen en antwoorden Agile Applicatie ontwikkeling. Agile Methodiek en Technologie. Zest Application Professionals

Chris de Kok TDI 3. Vak: Software Architectuur Datum: Docent: Fons van Kesteren

Visie document software releasen Introductie. Pre conditie

Factsheet CONTINUOUS VALUE DELIVERY Mirabeau

Correspondentie inzake overnemen of reproductie kunt u richten aan:

Copyright IBS Nieuwbouw. Vereenvoudigd en versnelt Java ontwikkeling. Huub Cleutjens

Indoor Navigation System

Testing University. A fool with a tool is still a fool

Correspondentie inzake overnemen of reproductie kunt u richten aan:

Adding value to test tooling

Adding value to test tooling

Atos Origin bouwt betere software in minder tijd

Model driven Application Delivery

Continuous Delivery. Sander Aernouts

Enterprise Connectivity. Marnix van Bo. TU Delft Elek Software Architect 20 jaar ervarin ontwikkeling

Van 6 weken naar 6 minuten. met. OpenSource. Jan-Taeke Schuilenga Infrastructuur Architect Jantaeke.schuilenga@duo.nl

MDA in de praktijk. Freek Bosch, Business Unit Manager Amsterdam, 4 juni 2009

Van nature zijn we als ontwikkelaars lui aangelegd. Waarschijnlijk

Introductie. NAV performance. Derk Jan Oelemans. Manager Development, BI en E-Business Qurius Business Solutions

Professionele softwareontwikkeling PRODUCTIVITEIT EN KWALITEIT MET FOCUS OP DE GEHELE LEVENSDUUR VAN APPLICATIES

Customer Case: WoningNet

Continuous a continuous improvement story

Software Test Plan. Yannick Verschueren

Implementatie eboard. Nederlandse Board gebruikersdag. Fred Elgers, Hoofd Controlling

Uitdagingen performancetesten in een Agile omgeving Best Practices & Demo

R O D Y M I D D E L K O O P, R O D Y. M I D D E L K O O H A N. N R O D M I D D E

Adding value to test tooling Hoe en waarom DevOps de wereld van performance testen verandert

Test rapportage Waarom eigenlijk?

Preventing Anti-Patterns for Agile Testing

.NET of.not in de praktijk voorbij het onderbuikgevoel

Introductie ArchiMate

J2EE/.NET en de rol Applicatie Architectuur

Kleine cursus PHP5. Auteur: Raymond Moesker

Software Test Plan. Yannick Verschueren

100% voor uw onderneming.

Te hoog gemikte silver bullets missen doel Te hoog gemikte silver bullets missen doel

OPTIMIZE Vacature. JAVA Developer. Divisie Just Software

Software Development Done Right. Continuous Delivery. Bas Tichelaar

Connect Social Business

Eerste ontwerp Conferentie Software Development Programma 5 minuten Introductie. Netvlies Sedert 1997

Software Factories. Toepassing van Domain Specific Languages. achtergrond

Succesvolle Stakeholdercommunicatie Profijt halen uit ICT Architectuur

End-to-End testen: de laatste horde

AERIUS II. Mark Wilmot Product Owner AERIUS. Ministerie van EL&I Programma Directie Natura 2000 Programma Stikstof (PAS)

Connect Social Business. Plan van Aanpak voor mijn stage bij ConnectSB

Webtesten onder schaarste

Generiek framework voor administratieve toepassingen in een webgeörienteerde omgeving

Testgedreven ontwikkeling dat is pas veilig!

Kennis na het volgen van de training. Na het volgen van deze training bent u in staat:

Tool Ambitie Resultaat

BI appliance op maat. Ruud Geerlings

Pilot Kwaliteitgestuurde Plantenketen

icafe Project Joeri Verdeyen Stefaan De Spiegeleer Ben Naim Tanfous

Inhoudsopgave. Hoofdstuk 1: Ant...4

d e v e l o p m e n t s e r v i c e s p r o f f e s i o n a l s e r v i c e s p h p t r a i n i n g e n

Syfadis Suite. LMS & Talent applicatie

Stages/projecten voor het academiejaar Voka Kamer van Koophandel Limburg Hilde Klykens

Toekomstbestending maken van selectie tool Rekening houdend met strikte privacy wetgeving

Scaled agile in de praktijk: welke modellen zijn er en wat werkt het beste in jouw situatie?

ENTERPRISE LINKED DATA INTRODUCTIE

IIBA NL Jaarcongres "Business Analyse in Scaled Agile"

Een straat op maat. Inrichting van een ontwikkelstraat

Connect Social Business. Plan van Aanpak voor mijn stage bij ConnectSB

Ontwikkelmethoden en technieken. Ontwikkelmethoden & Technieken HC 2

MDA experiences in een uitvoeringsorganisatie. Eelco van Mens (Architect, Mn Services) 5 juni 2008

Microsoft; applicaties; ontwikkelaar; developer; apps; cloud; app; azure; cloud computing; DevOps; microsoft azure

E2E Company brochure

Leiderschap in een organisatie met technische professionals

Testen als continuous enabler

Performance Testen bij Rabobank Nederland. TestNet Noord Testers bij de bank 21 februari 2012 Allan Beumer

Geen webservice? Geen probleem!

BESLUITVORMING; HET SPEL OF DE REGELS

De rol van Architectuur in de Agile omgeving van Rabobank Controle is een illusie

CMM 3: levert het wat op?

Van testproces tot testvak... en verder

Wat is JAVA? Peter van Rijn

DevSecOps Een buzzword of toch een noodzakelijke stap richting Secure DevOps?

Offshoring & Testing. Verander een uitdaging in een kans. Door Ernst Labruyère. re Consultant ps_testware. 20 september 2007

Building rich user interfaces in Java

De kracht van incourcing bij de rechtspraak

RAD Rapid application development. Een introductie. Algemene informatie voor medewerkers van SYSQA B.V.

Correspondentie inzake overnemen of reproductie kunt u richten aan:

Analyse Programmeertalen

Beveiligingsbeleid Perflectie. Architectuur & Procedures

DevOps Waarom moeilijk doen 31 oktober als het samen kan

SAMENVATTING CURRICULUM VITAE J. Andries

Betere dienstverlening financiële organisaties met continuous delivery Flexibeler, efficiënter en in kort tijdsbestek software ontwikkelen

ENTERPRISE LINKED DATA WORKSHOP

Beveiligingsbeleid. Online platform Perflectie

Transcriptie:

Ervaringen met het opzetten van een MDD omgeving

Introductie (1/3) Eric Jan Malotaux Software architect Mod4j Software architect Ordina Johan Vogelzang Developer Mod4j Projectleider Java ontwikkelstraat Ordina

Introductie (2/3) Doel van deze sessie Inzicht geven in aspecten die een rol spelen bij de ontwikkeling van een Model Driven Development omgeving. Ervaringen met de ontwikkeling van Mod4j Succes factoren Welke belangrijke keuzes zijn er te maken?

Introductie (3/3) Wat is Mod4j? Mod4j = Modeling for Java Focus: administratieve Java applicaties DSL gebaseerde Modeling Environment voor Eclipse (model editors, codegeneratoren) Set horizontaal georiënteerde DSL's referentie architectuur Opensource, http://mod4j.org

1. Bepaal doelstellingen Wat is de businesscase voor het ontwikkelen van een MDD omgeving? Kosten / baten Herhaalbaarheid Kwaliteit Productiviteit Time to market Mod4j: Productiviteit, kwaliteit Onderbouwing go / nogo beslissing

2. Bepaal doeldomein Voor welk domein wil je de te ontwikkelen MDD omgeving inzetten? Mod4j: Administratieve Java applicaties. Zorgt voor afbakening en focus Leidend voor architectuur Keuze van tools, frameworks

3. Bepaal de doelgroep Wie zijn de toekomstige gebruikers? Mod4j: Java developers Dus niet business experts Aansluiting op bestaande best practices Keuze van ontwikkeltools en ontwikkelomgeving De te ontwikkelen model syntax Acceptatie Feedback

4. Toolkeuze Selecteer de ontwikkelomgeving en tools Waar is de doelgroep mee bekend? Welke eisen worden gesteld aan de DSL's? Opensource / closedsource? Mod4j: Java developers => Eclipse platform Java developers => Maven buildframework Eclipse => Eclipse Modeling Framework (EMF) meta modeling Eclipse => OpenArchitectureWare (OAW) DSL ontwikkel platform OAW => Xtext syntax modeling OAW => Xpand, Xtend code generators, model transformaties OAW => Check validaties

5. Best practices Zorg er voor dat bestaande best practices blijvend kunnen worden toegepast Mod4j: Versiebeheer, diffing, merging => Textuele DSL's Code completion, syntax coloring Continuous integration => Mavenized Mod4j artifacts Unit testing Iteratief ontwikkelen Gaat niet ten koste van eerder behaalde verbeteringen Verhoogt kans van slagen Verhoogt acceptatie

6. Bepaal de doelarchitectuur Definiëer de doelarchitectuur en bouw een referentieapplicatie In de praktijk bewezen Mod4j: Softwarearchitectuur ontwikkeld door team van ervaren Java architecten Bijbehorende referentie-applicatie intern ontwikkeld minimale functionaliteit maximale technische dekking Te genereren code wordt direct afgeleid uit referentieapplicatie

Mod4j Referentie Architectuur

7. Bepaal welke DSL's Welke DSL's moeten er ontwikkeld worden? Houd DSL's klein Beter meerdere kleine DSL's dan één grote Zorg voor loose coupling tussen DSL's Niet alles hoeft in een DSL Mod4j: Vier horizontale DSL's afgeleid uit de referentie-architectuur Loose coupling: Mod4j CrossX zelf ontwikkeld (wordt onderdeel van Eclipse Modeling Project) Extension points voor handmatige code Schaalbaarheid en flexibiliteit

De vier Mod4j DSL's

8. Samenstelling ontwikkelteam Welke expertises moeten in het team aanwezig zijn? Mod4j DSL ontwikkeling: Language engineer (EMF Ecore, OAW Xtext, Xtend, Check) Codegenerator developer (OAW Xpand, Xtend) Java developer (Eclipse plug-ins, Java, Maven) Mod4j doelarchitectuur en code: Software architect Moeilijk om alle expertises in één persoon te vinden

9. Acceptatie Werk aan acceptatie Mod4j: Architecture board Gebruiksgemak door IDE integratie Klankbordgroep Intern opensource Pilot projecten Documentatie Demo projecten Betrokkenheid van alle stakeholders

Vragen?