SlideShare a Scribd company logo
1 of 36
Lessons learned in building a
     Model-Driven Software Factory




Johan den Haan
Head R&D Mendix
@JohanDenHaan
IT costs a lot, but is not fast
enough to meet Business Agility
wishes
We are going to
fix it today!
Join me on my
journey
Viewpoints

Context

A basic Model-Driven Software Factory

Releasing the product

Growing a user base
What kind of business problems do
        we want to solve?
Application characteristics
   Time-2-market
   Flexible
   Integration with commodity applications
   Portal / Rich user interface
   Domain knowledge
Who is our
target user?
Lessons learned
 Product dev. starts with a customer need
 MDD asks for repetition
 First step in building a MDSF is domain
  definition
 Make a clear choice about your target user
 Define the most important domain concepts
 Think about a methodology early - it will
  influence your DSL design and tool
Browser

                 Styling & user interaction
                                                            CSS, HTML, JavaScript
                         Client-side logic

                  Server communication


JVM

                                                            Java
       Flows & actions                   API & connectors


                          Access rules
                              ORM

Database
                                                            SQL
                              Data
Browser

                 Styling & user interaction                      CSS

                         Client-side logic
                                                            Rich Forms DSL
                  Server communication


JVM
                                                            Microflow DSL

       Flows & actions                   API & connectors   Mapping DSL


                          Access rules                       Security DSL

                              ORM                           Domain model

Database


                              Data
How to support our target users?
 Model should be easy to
  – Read
  – Browse
  – Search
  – Keep consistent
 Deployment
  – Should be easy / non-technical
  – Model execution / interpretation
  – Cloud infrastructure
Lessons learned (1)
 Interpretation is a viable alternative for code
  generation
 Use model checks to prevent errors early
 Make sure you can navigate and search
 Make DSLs as declarative as possible
 Prevent property explosion
 Create flexibility for unforeseen uses
Lessons learned (2)
 Do not only focus on development phase
 Deployment can be slow – compliance with
  code style, architecture, server config, etc.
 Cloud infrastructure can automate
  deployment
 Grow your factory bottom-up
 Always look at existing standards first
Applications build with
our product will suffer
from a double release
cycle
We need an
extension mechanism
How to ensure
quality?
Lessons learned (1)
 Put effort in documentation, training, and
  templates
 Create flexibility to prevent double release
  cycle troubles
 Release management is much easier with a
  plugin infrastructure
 Be always backwards compatible
Lessons learned (2)
 Deprecate model structures and provide
  alternatives for breaking changes
 Create (semi-)automated tests using test
  models
 Learn from reported bugs
 Do not only test the technical implementation
Why should he
use our product?
We should focus on
partners, but do
some lighthouse
projects ourselves
Make it easy to start
How to create an active user base?
Lessons learned (1)
 Make it compelling for partners to use your
  product – what’s in it for them?
 Start doing lighthouse projects yourself
 Sell business solutions to business people
 Eat your own dog food
 Integrate ‘community tools’ in modeling
  environment
Lessons learned (2)
 Use a reputation system for your support
  forum
 Give partners incentives to build reputation
 Create a place to download an share
  templates, extensions, etc.
 Make it compelling for partners to publish
  content
Viewpoints

Context

A basic Model-Driven Software Factory

Releasing the product

Growing a user base
Lessons learned in building a
Model-Driven Software Factory

       Learn more: world.mendix.com
   Read more: www.theenterprisearchitect.eu
         Connect: @JohanDenHaan

More Related Content

What's hot

Juc deck 16x9_dev_ops_mvp
Juc deck 16x9_dev_ops_mvpJuc deck 16x9_dev_ops_mvp
Juc deck 16x9_dev_ops_mvp
Curtis Yanko
 
Mobile to Mainframe - the Challenges of Enterprise DevOps Adoption
Mobile to Mainframe - the Challenges of Enterprise DevOps AdoptionMobile to Mainframe - the Challenges of Enterprise DevOps Adoption
Mobile to Mainframe - the Challenges of Enterprise DevOps Adoption
Sanjeev Sharma
 
Software Factories in the Real World: How an IBM WebSphere Integration Factor...
Software Factories in the Real World: How an IBM WebSphere Integration Factor...Software Factories in the Real World: How an IBM WebSphere Integration Factor...
Software Factories in the Real World: How an IBM WebSphere Integration Factor...
ghodgkinson
 
Mobile to mainframe - The Challenges and Best Practices of Enterprise DevOps
Mobile to mainframe - The Challenges and Best Practices of Enterprise DevOps Mobile to mainframe - The Challenges and Best Practices of Enterprise DevOps
Mobile to mainframe - The Challenges and Best Practices of Enterprise DevOps
IBM UrbanCode Products
 

What's hot (20)

Juc deck 16x9_dev_ops_mvp
Juc deck 16x9_dev_ops_mvpJuc deck 16x9_dev_ops_mvp
Juc deck 16x9_dev_ops_mvp
 
Easily Create Scalable Automation using Selenium
Easily Create Scalable Automation using SeleniumEasily Create Scalable Automation using Selenium
Easily Create Scalable Automation using Selenium
 
Whitepaper: DevOps - Happiest Minds
Whitepaper: DevOps - Happiest MindsWhitepaper: DevOps - Happiest Minds
Whitepaper: DevOps - Happiest Minds
 
Mobile to Mainframe - the Challenges of Enterprise DevOps Adoption
Mobile to Mainframe - the Challenges of Enterprise DevOps AdoptionMobile to Mainframe - the Challenges of Enterprise DevOps Adoption
Mobile to Mainframe - the Challenges of Enterprise DevOps Adoption
 
Cloud, agile
Cloud, agileCloud, agile
Cloud, agile
 
Agile Mumbai 2020 Conference | Value of DevOps - Journey from Automation to N...
Agile Mumbai 2020 Conference | Value of DevOps - Journey from Automation to N...Agile Mumbai 2020 Conference | Value of DevOps - Journey from Automation to N...
Agile Mumbai 2020 Conference | Value of DevOps - Journey from Automation to N...
 
DevOps for IBM Commerce
DevOps for IBM CommerceDevOps for IBM Commerce
DevOps for IBM Commerce
 
Udvikling af apps til mobile enheder med IBM Worklight, Christina Møller, IBM
Udvikling af apps til mobile enheder med IBM Worklight, Christina Møller, IBMUdvikling af apps til mobile enheder med IBM Worklight, Christina Møller, IBM
Udvikling af apps til mobile enheder med IBM Worklight, Christina Møller, IBM
 
Converting to the latest COBOL Compiler made simple with the right tools
Converting to the latest COBOL Compiler made simple with the right toolsConverting to the latest COBOL Compiler made simple with the right tools
Converting to the latest COBOL Compiler made simple with the right tools
 
Rapid Application Development using FOSS
Rapid Application Development using FOSSRapid Application Development using FOSS
Rapid Application Development using FOSS
 
Software Factories in the Real World: How an IBM WebSphere Integration Factor...
Software Factories in the Real World: How an IBM WebSphere Integration Factor...Software Factories in the Real World: How an IBM WebSphere Integration Factor...
Software Factories in the Real World: How an IBM WebSphere Integration Factor...
 
Automated Testing for CA Plex and 2E
Automated Testing for CA Plex and 2EAutomated Testing for CA Plex and 2E
Automated Testing for CA Plex and 2E
 
Elevate Your Continuous Delivery Strategy Above the Rolling Clouds (Interconn...
Elevate Your Continuous Delivery Strategy Above the Rolling Clouds (Interconn...Elevate Your Continuous Delivery Strategy Above the Rolling Clouds (Interconn...
Elevate Your Continuous Delivery Strategy Above the Rolling Clouds (Interconn...
 
Mobile to mainframe - The Challenges and Best Practices of Enterprise DevOps
Mobile to mainframe - The Challenges and Best Practices of Enterprise DevOps Mobile to mainframe - The Challenges and Best Practices of Enterprise DevOps
Mobile to mainframe - The Challenges and Best Practices of Enterprise DevOps
 
DevOps for Mainframe for IBM Pulse Conference
DevOps for Mainframe for IBM Pulse ConferenceDevOps for Mainframe for IBM Pulse Conference
DevOps for Mainframe for IBM Pulse Conference
 
Acceleo Day - Orange
Acceleo Day - OrangeAcceleo Day - Orange
Acceleo Day - Orange
 
IBM Application Delivery Foundation for z Systems
IBM Application Delivery Foundation for z SystemsIBM Application Delivery Foundation for z Systems
IBM Application Delivery Foundation for z Systems
 
Wise Men Oracle Mobility Webinar- 11-December-2014
Wise Men Oracle Mobility Webinar- 11-December-2014Wise Men Oracle Mobility Webinar- 11-December-2014
Wise Men Oracle Mobility Webinar- 11-December-2014
 
Aspirea sales presentation
Aspirea sales presentationAspirea sales presentation
Aspirea sales presentation
 
Lessons Learned from Large Scale Adoption of DevOps for IBM z Systems Software
Lessons Learned from Large Scale Adoption of DevOps for IBM z Systems SoftwareLessons Learned from Large Scale Adoption of DevOps for IBM z Systems Software
Lessons Learned from Large Scale Adoption of DevOps for IBM z Systems Software
 

Viewers also liked

BPM for Manufacturing (Business Process-Centric Manufacturing) v4
BPM for Manufacturing (Business Process-Centric  Manufacturing) v4BPM for Manufacturing (Business Process-Centric  Manufacturing) v4
BPM for Manufacturing (Business Process-Centric Manufacturing) v4
Sudhir(SMACI) Menon
 
'Growing to a Next Level Test Organisation' by Tim Koomen
'Growing to a Next Level Test Organisation' by Tim Koomen'Growing to a Next Level Test Organisation' by Tim Koomen
'Growing to a Next Level Test Organisation' by Tim Koomen
TEST Huddle
 
Software Factory - Overview
Software Factory - OverviewSoftware Factory - Overview
Software Factory - Overview
slides_teltools
 
PDC - Arquitetura - 001 - A vida, o universo e tudo mais ...
PDC - Arquitetura - 001 - A vida, o universo e tudo mais ...PDC - Arquitetura - 001 - A vida, o universo e tudo mais ...
PDC - Arquitetura - 001 - A vida, o universo e tudo mais ...
slides_teltools
 
Testing capability ppt
Testing capability pptTesting capability ppt
Testing capability ppt
anilreddyqa
 

Viewers also liked (20)

App Delivery Platform-as-a-Service - How we revolutionized the app developmen...
App Delivery Platform-as-a-Service - How we revolutionized the app developmen...App Delivery Platform-as-a-Service - How we revolutionized the app developmen...
App Delivery Platform-as-a-Service - How we revolutionized the app developmen...
 
Lessons Learned About Software Development
Lessons Learned About Software DevelopmentLessons Learned About Software Development
Lessons Learned About Software Development
 
BPM for Manufacturing (Business Process-Centric Manufacturing) v4
BPM for Manufacturing (Business Process-Centric  Manufacturing) v4BPM for Manufacturing (Business Process-Centric  Manufacturing) v4
BPM for Manufacturing (Business Process-Centric Manufacturing) v4
 
Computer programmer analyst performance appraisal
Computer programmer analyst performance appraisalComputer programmer analyst performance appraisal
Computer programmer analyst performance appraisal
 
'Growing to a Next Level Test Organisation' by Tim Koomen
'Growing to a Next Level Test Organisation' by Tim Koomen'Growing to a Next Level Test Organisation' by Tim Koomen
'Growing to a Next Level Test Organisation' by Tim Koomen
 
Agile MDD
Agile MDDAgile MDD
Agile MDD
 
Software Factory - Overview
Software Factory - OverviewSoftware Factory - Overview
Software Factory - Overview
 
BestShore - Global Software Factory
BestShore - Global Software FactoryBestShore - Global Software Factory
BestShore - Global Software Factory
 
Industrialization of testing
Industrialization of testing Industrialization of testing
Industrialization of testing
 
Why there is no future for Model Driven Development
Why there is no future for Model Driven DevelopmentWhy there is no future for Model Driven Development
Why there is no future for Model Driven Development
 
The Globally Integrated Enterprise and the Insurance Factory Model
The Globally Integrated Enterprise and the Insurance Factory ModelThe Globally Integrated Enterprise and the Insurance Factory Model
The Globally Integrated Enterprise and the Insurance Factory Model
 
Lean & Agile by Régis Medina at the Lean IT Summit 2013
Lean & Agile by Régis Medina at the Lean IT Summit 2013Lean & Agile by Régis Medina at the Lean IT Summit 2013
Lean & Agile by Régis Medina at the Lean IT Summit 2013
 
TCoE
TCoETCoE
TCoE
 
What is (tcoe) testing center of excellence
What is (tcoe) testing center of excellenceWhat is (tcoe) testing center of excellence
What is (tcoe) testing center of excellence
 
The Lean Software Factory by Yves Caseau
The Lean Software Factory by Yves CaseauThe Lean Software Factory by Yves Caseau
The Lean Software Factory by Yves Caseau
 
10 things to improve project management
10 things to improve project management10 things to improve project management
10 things to improve project management
 
PDC - Arquitetura - 001 - A vida, o universo e tudo mais ...
PDC - Arquitetura - 001 - A vida, o universo e tudo mais ...PDC - Arquitetura - 001 - A vida, o universo e tudo mais ...
PDC - Arquitetura - 001 - A vida, o universo e tudo mais ...
 
Testing capability ppt
Testing capability pptTesting capability ppt
Testing capability ppt
 
Testing Centre Of Excellence From AppLabs
Testing Centre Of Excellence From AppLabsTesting Centre Of Excellence From AppLabs
Testing Centre Of Excellence From AppLabs
 
Venture Builder / Start-up Factory Model One-slider Infographic
Venture Builder / Start-up Factory Model One-slider Infographic Venture Builder / Start-up Factory Model One-slider Infographic
Venture Builder / Start-up Factory Model One-slider Infographic
 

Similar to Lessons learned in building a model driven software factory

Mdd Lcds
Mdd LcdsMdd Lcds
Mdd Lcds
ravinxg
 
10 - Architetture Software - More architectural styles
10 - Architetture Software - More architectural styles10 - Architetture Software - More architectural styles
10 - Architetture Software - More architectural styles
Majong DevJfu
 
Makersbay Overview
Makersbay OverviewMakersbay Overview
Makersbay Overview
slodha
 
Ss Wrap Up Session 13 Aug
Ss Wrap Up Session 13 AugSs Wrap Up Session 13 Aug
Ss Wrap Up Session 13 Aug
WSO2
 
Opac labs overview-pr1.0
Opac labs overview-pr1.0Opac labs overview-pr1.0
Opac labs overview-pr1.0
opaclabs
 
EclipseCon 2013 Learn and share about integrations using Eclipse Lyo, OSLC an...
EclipseCon 2013 Learn and share about integrations using Eclipse Lyo, OSLC an...EclipseCon 2013 Learn and share about integrations using Eclipse Lyo, OSLC an...
EclipseCon 2013 Learn and share about integrations using Eclipse Lyo, OSLC an...
Steve Speicher
 
Perfect Storm: HR in the Cloud
Perfect Storm: HR in the CloudPerfect Storm: HR in the Cloud
Perfect Storm: HR in the Cloud
Stanton Jones
 
How To Select RIA
How To Select RIAHow To Select RIA
How To Select RIA
Terry Wang
 

Similar to Lessons learned in building a model driven software factory (20)

Mdd Lcds
Mdd LcdsMdd Lcds
Mdd Lcds
 
Mdd lcds
Mdd lcdsMdd lcds
Mdd lcds
 
10 - Architetture Software - More architectural styles
10 - Architetture Software - More architectural styles10 - Architetture Software - More architectural styles
10 - Architetture Software - More architectural styles
 
Nuno Godinho
Nuno GodinhoNuno Godinho
Nuno Godinho
 
Spring tutorials
Spring tutorialsSpring tutorials
Spring tutorials
 
Microservices for Enterprises
Microservices for Enterprises Microservices for Enterprises
Microservices for Enterprises
 
Makersbay Overview
Makersbay OverviewMakersbay Overview
Makersbay Overview
 
Madhava_Sr_JAVA_J2EE
Madhava_Sr_JAVA_J2EEMadhava_Sr_JAVA_J2EE
Madhava_Sr_JAVA_J2EE
 
Ss Wrap Up Session 13 Aug
Ss Wrap Up Session 13 AugSs Wrap Up Session 13 Aug
Ss Wrap Up Session 13 Aug
 
SOA Summer School: Best of SOA Summer School – Encore Session
SOA Summer School: Best of SOA Summer School – Encore Session SOA Summer School: Best of SOA Summer School – Encore Session
SOA Summer School: Best of SOA Summer School – Encore Session
 
Framework adoption for java enterprise application development
Framework adoption for java enterprise application developmentFramework adoption for java enterprise application development
Framework adoption for java enterprise application development
 
soa1.ppt
soa1.pptsoa1.ppt
soa1.ppt
 
ALM Integration in a Web 2.0 World
ALM Integration in a Web 2.0 WorldALM Integration in a Web 2.0 World
ALM Integration in a Web 2.0 World
 
Introduction to microservices
Introduction to microservicesIntroduction to microservices
Introduction to microservices
 
Can IBM i play with SOA?
Can IBM i play with SOA?Can IBM i play with SOA?
Can IBM i play with SOA?
 
Opac labs overview-pr1.0
Opac labs overview-pr1.0Opac labs overview-pr1.0
Opac labs overview-pr1.0
 
[WSO2Con EU 2017] Microservices for Enterprises
[WSO2Con EU 2017] Microservices for Enterprises[WSO2Con EU 2017] Microservices for Enterprises
[WSO2Con EU 2017] Microservices for Enterprises
 
EclipseCon 2013 Learn and share about integrations using Eclipse Lyo, OSLC an...
EclipseCon 2013 Learn and share about integrations using Eclipse Lyo, OSLC an...EclipseCon 2013 Learn and share about integrations using Eclipse Lyo, OSLC an...
EclipseCon 2013 Learn and share about integrations using Eclipse Lyo, OSLC an...
 
Perfect Storm: HR in the Cloud
Perfect Storm: HR in the CloudPerfect Storm: HR in the Cloud
Perfect Storm: HR in the Cloud
 
How To Select RIA
How To Select RIAHow To Select RIA
How To Select RIA
 

Recently uploaded

Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
vu2urc
 

Recently uploaded (20)

Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 

Lessons learned in building a model driven software factory

  • 1. Lessons learned in building a Model-Driven Software Factory Johan den Haan Head R&D Mendix @JohanDenHaan
  • 2. IT costs a lot, but is not fast enough to meet Business Agility wishes
  • 3. We are going to fix it today!
  • 4. Join me on my journey
  • 5. Viewpoints Context A basic Model-Driven Software Factory Releasing the product Growing a user base
  • 6.
  • 7. What kind of business problems do we want to solve?
  • 8. Application characteristics  Time-2-market  Flexible  Integration with commodity applications  Portal / Rich user interface  Domain knowledge
  • 10. Lessons learned  Product dev. starts with a customer need  MDD asks for repetition  First step in building a MDSF is domain definition  Make a clear choice about your target user  Define the most important domain concepts  Think about a methodology early - it will influence your DSL design and tool
  • 11.
  • 12. Browser Styling & user interaction CSS, HTML, JavaScript Client-side logic Server communication JVM Java Flows & actions API & connectors Access rules ORM Database SQL Data
  • 13. Browser Styling & user interaction CSS Client-side logic Rich Forms DSL Server communication JVM Microflow DSL Flows & actions API & connectors Mapping DSL Access rules Security DSL ORM Domain model Database Data
  • 14. How to support our target users?  Model should be easy to – Read – Browse – Search – Keep consistent  Deployment – Should be easy / non-technical – Model execution / interpretation – Cloud infrastructure
  • 15.
  • 16. Lessons learned (1)  Interpretation is a viable alternative for code generation  Use model checks to prevent errors early  Make sure you can navigate and search  Make DSLs as declarative as possible  Prevent property explosion  Create flexibility for unforeseen uses
  • 17. Lessons learned (2)  Do not only focus on development phase  Deployment can be slow – compliance with code style, architecture, server config, etc.  Cloud infrastructure can automate deployment  Grow your factory bottom-up  Always look at existing standards first
  • 18.
  • 19. Applications build with our product will suffer from a double release cycle
  • 20. We need an extension mechanism
  • 21.
  • 22.
  • 23.
  • 25. Lessons learned (1)  Put effort in documentation, training, and templates  Create flexibility to prevent double release cycle troubles  Release management is much easier with a plugin infrastructure  Be always backwards compatible
  • 26. Lessons learned (2)  Deprecate model structures and provide alternatives for breaking changes  Create (semi-)automated tests using test models  Learn from reported bugs  Do not only test the technical implementation
  • 27.
  • 28. Why should he use our product?
  • 29. We should focus on partners, but do some lighthouse projects ourselves
  • 30. Make it easy to start
  • 31. How to create an active user base?
  • 32. Lessons learned (1)  Make it compelling for partners to use your product – what’s in it for them?  Start doing lighthouse projects yourself  Sell business solutions to business people  Eat your own dog food  Integrate ‘community tools’ in modeling environment
  • 33. Lessons learned (2)  Use a reputation system for your support forum  Give partners incentives to build reputation  Create a place to download an share templates, extensions, etc.  Make it compelling for partners to publish content
  • 34. Viewpoints Context A basic Model-Driven Software Factory Releasing the product Growing a user base
  • 35.
  • 36. Lessons learned in building a Model-Driven Software Factory Learn more: world.mendix.com Read more: www.theenterprisearchitect.eu Connect: @JohanDenHaan