whittle modeling wizards 2012
DESCRIPTION
Researchers in model-driven development (MDD) should be intimately familiar with how MDD is used in industry. If they are not, there is a danger that new methods and tools are developed without proper consideration for the way that MDD developers actually work and think. A thorough understanding of current MDD industrial practice can inform research problems and ensure that research solutions are actually adopted. This talk will describe results from a year long study, which applied methods from social science to understand how MDD is actually used in industry. Based on a survey of over 400 MDD practitioners, in-depth interviews with 22 industry professionals from 17 different companies, and a small number of on-site observational studies, the talk will discuss the current state-of-practice in industrial use of MDD, and will offer some insights on current research gaps.TRANSCRIPT
![Page 1: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/1.jpg)
The Truth about Model-Driven Development in Industry
– and Why Researchers Should Care
Jon Whittlejoint work with John Hutchinson, Mark Rouncefield
School of Computing & Communications
Lancaster University, UK
![Page 2: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/2.jpg)
2001 AD
![Page 3: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/3.jpg)
![Page 4: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/4.jpg)
I'm sorry, Dave. I'm afraid I can't do that.
![Page 5: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/5.jpg)
![Page 6: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/6.jpg)
model-driven architecture
aka.model-driven developmentmodel-driven engineeringmodel-based software developmentmodel-based designmodel-integrated computingdomain-specific modeling
![Page 7: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/7.jpg)
productivity
![Page 8: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/8.jpg)
maintainability
![Page 9: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/9.jpg)
portability
![Page 10: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/10.jpg)
interoperability
![Page 11: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/11.jpg)
all is well with the world
![Page 12: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/12.jpg)
except for…
those darned naysayers
![Page 13: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/13.jpg)
![Page 14: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/14.jpg)
2012 AD
![Page 15: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/15.jpg)
who was right?
![Page 16: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/16.jpg)
talk outline• Project EAMDE
– Social/organizational/technical factors
• Discoveries– Some observations– Some lessons– Some tips
![Page 17: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/17.jpg)
Project EAMDE
• Widely-distributed questionnaire on how MDD is used– 35 questions pertaining to MDD application– 449 responses
• In-depth interviews with MDD practitioners– 22 interviews; 17 different companies– 150,000 words of transcribed data– >360 years of cumulative experience
• On-site ethnographic studies (ongoing)– 2 done (by Steinar Kristoffersen); more planned
![Page 18: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/18.jpg)
What EAMDE is not
• an attempt to quantify the penetration of MDD in industry
• a study on UML– deliberately broad view of MD*
• an attempt to evangelise or promote MDD– interested in failure as much as success
![Page 19: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/19.jpg)
Diversity
![Page 20: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/20.jpg)
Examples of MDD
![Page 21: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/21.jpg)
Examples of MDD
“the broader the domain you try and cover, the less the productivity increase… with DSM, you’re not looking at building a modeling language for embedded applications … you’re not looking at building one for mobile applications… mobile embedded, or even mobile phones or even Brand X mobile phones, but a particular product family of Brand X mobile phones…”
![Page 22: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/22.jpg)
First discovery: a lot of MDD success is hidden
![Page 23: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/23.jpg)
UML BPMN VendorDSL
In-houseDSL
SysML Matlab/Simulink
Which modeling languages do you use? (tick all that apply)
![Page 24: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/24.jpg)
DSLs favored over general-purpose modeling
• mostly, companies write their own code generators for very specific tasks
– In contrast, companies often ditch commercial tools because they cannot modify them the way they want or because they “don’t do everything”
– Multiple references to the fact that off-the-shelf tools could have killed an MDD effort
• Generation of whole systems is not widespread
![Page 25: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/25.jpg)
Second discovery: code generation is a red herring
![Page 26: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/26.jpg)
Code generation
“I guess at the end of the day, this dream of code generation from models doesn’t exist – I mean everything ends up being done by hand because either we don’t trust code generators or they just don’t generate the code we need… it’s actually impossible to get in non-functional requirements into code generators – it’s too difficult”
![Page 27: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/27.jpg)
Offsetting gains without realising it
• “sometimes the code generated makes it necessary to use a larger CPU which costs more money than the efficient code of an experienced programmer”
• 8x more expensive to certify generated code
![Page 28: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/28.jpg)
Don’t obsess about productivity
• 65-100% code generated
• Figures on productivity gains differ– 20-800% gain– 27% loss
![Page 29: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/29.jpg)
Third discovery: the real benefits of MDD are holistic
![Page 30: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/30.jpg)
So if not productivity, then what?
• The real benefits of MDD are quality, architecture, reuse
• “whenever you name any single advantage…you can always achieve the same advantage with another approach…”– “it tends to be that a model-driven approach is more
likely to have a well articulated design and architecture”
![Page 31: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/31.jpg)
Example
• An organisation finds itself developing lots of little (modeling) languages over time:– “we were generating 70% of the system off these little
XML languages… we would try to separate out the pieces that were generateable and the pieces that weren’t… it motivated us to have better separation of concerns”
![Page 32: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/32.jpg)
Fourth discovery: MDD must enable new things, not just speed up old things
![Page 33: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/33.jpg)
Doing things faster and better is not enough
• If the status quo works (or is perceived to work), there will be insufficient buy-in to change
– MDD should be sold not based on how it can do things (slightly) better, but in terms of how it can fix things that are broken
– “software is no longer a bottleneck”
![Page 34: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/34.jpg)
People/Organizations
![Page 35: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/35.jpg)
The Psychology of MDD
![Page 36: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/36.jpg)
Architects love MDD
![Page 37: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/37.jpg)
The code guru hates it
![Page 38: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/38.jpg)
as does the hobbyist developer
![Page 39: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/39.jpg)
It’s bad news for offshoring
![Page 40: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/40.jpg)
Middle-managersare usually the
bottleneck
![Page 41: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/41.jpg)
The MDD guru is likelyto be a developer anddomain expert
![Page 42: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/42.jpg)
MDD works best in companiesthat are not in the software business
![Page 43: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/43.jpg)
Current Business PracticeDoesn’t Support MDD
![Page 44: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/44.jpg)
• “lead architects need to understand that just because their models are simple, they weren’t going to be put out of a job…”
• Developers are defined by their expertise for a technology not a domain; so it is not in their interests to innovate
Business Practice Doesn’tSupport MDD
![Page 45: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/45.jpg)
• domain experts already model– “they already have an established way to design in
Powerpoint”– “I think they are more open than a company that has very
long years of experience in software development”
MDD Works Best in Non-Software Companies
![Page 46: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/46.jpg)
The Good, The Bad, and The Ugly
![Page 47: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/47.jpg)
The Good
![Page 48: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/48.jpg)
• mature domain• non-software context• ground-up effort• real business driver
![Page 49: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/49.jpg)
“we put it directly in the line of the product”
“we are not allowed to fail”
![Page 50: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/50.jpg)
“the benefit was not only because we introduced model-driven design”
“we also started a re-use group”
“if you didn’t introduce model-driven design, the reuse initiative would have failed”
![Page 51: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/51.jpg)
“at this moment, embedded software is not bottleneck in any project”
![Page 52: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/52.jpg)
“56% of all our code is from re-used building blocks, but in the beginning it was only 5 or 10%”
“normally, decisions are made as low in the organisation as possible
![Page 53: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/53.jpg)
The Good
• critical path• non-software context• real business driver• MDD an enabler for reuse
![Page 54: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/54.jpg)
The Bad-Ass
![Page 55: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/55.jpg)
![Page 56: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/56.jpg)
“the same electrical design in a full size truck as in a Cadillac”
![Page 57: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/57.jpg)
“somebody would be writing the spec”
“they were actually outsourcing”
![Page 58: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/58.jpg)
“there was an order of magnitude difference in terms of number of people involved from generation to generation”
![Page 59: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/59.jpg)
“you couldn’t find a computer scientist if you went on a search party”
![Page 60: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/60.jpg)
“vendors try to push out-of-the-box code generation”
“very, very challenging to do… so we wrote our own code generator”
![Page 61: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/61.jpg)
“if we did modeling just for code generation”
“you’ll likely not get the right abstraction”
![Page 62: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/62.jpg)
The Bad-Ass
• mature domain• non-software context• ground-up effort• real business driver
![Page 63: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/63.jpg)
The Ugly
![Page 64: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/64.jpg)
![Page 65: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/65.jpg)
“it was a totally new concept of switching system”
![Page 66: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/66.jpg)
“he made this huge decision ”
“50 developers all using this CASE tool”
![Page 67: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/67.jpg)
“if there is a problem, they just contact the [CASE tool] engineers.. That was kind of their strategy”
![Page 68: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/68.jpg)
“and suddenly the tool doesn’t do something expected”
“they try to contact the vendor but they don’t really know what’s going on”
![Page 69: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/69.jpg)
“they couldn’t optimize the generated code”
“so the way they had to do it was asking the hardware guys to have more hard disc, more memory, because of the tool”
![Page 70: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/70.jpg)
“it was a nightmare to them to add all the features”
![Page 71: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/71.jpg)
The Ugly
• immature domain• top-down effort• no real business driver• lack of control
![Page 72: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/72.jpg)
What would 449 MDD practitioners say?
![Page 73: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/73.jpg)
Disclaimers
![Page 74: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/74.jpg)
Snowball sampling
![Page 75: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/75.jpg)
Not everyone answered every question
![Page 76: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/76.jpg)
We encouraged only those with actual MDE experience to participate…
![Page 77: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/77.jpg)
…and discouraged those with opinion but no experience
![Page 78: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/78.jpg)
Aims of the Survey
![Page 79: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/79.jpg)
Real use of MDE in practice
![Page 80: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/80.jpg)
Unraveling points of contention related to MDE
![Page 81: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/81.jpg)
Technical factors• Code will write itself!• BUT needs to be
integrated with legacy systems
![Page 82: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/82.jpg)
People factors• Easier to train new hires• BUT new hires require
more training
![Page 83: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/83.jpg)
Organisational factors• Encourages organisation-
wide standards• BUT requires heavy-
handed, rigorous management
![Page 84: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/84.jpg)
Key findings
![Page 85: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/85.jpg)
The “Community” of Respondents
![Page 86: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/86.jpg)
Do you consider MDE to be a good thing?
84%
![Page 87: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/87.jpg)
• Significant software engineering experience– Over 1000 years total experience– 70% involved in software development for 5 years or
more
![Page 88: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/88.jpg)
• Employed in a range of different roles– Developer 17%– Modeler 21%– Team leader 19%– Project manager 16%– Domain expert 4%– Researcher 23%– Architect 7%
![Page 89: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/89.jpg)
• Good spread of size of company– Roughly a third each had:
• 1-100 employees• 100-1000• >1000
• A significant number of employees are not engaged in software development
![Page 90: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/90.jpg)
Experience with MDE
• Initial exploration: 10%• Prototyping: 10%• First major project: 18%• ~ 1/3: extensive experience of MDE on many
projects and/or over many years
![Page 91: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/91.jpg)
What are models used for?
“Do not use” percentages for MDE activities
![Page 92: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/92.jpg)
UML BPMN VendorDSL
In-houseDSL
SysML Matlab/Simulink
Which modeling languages do you use?
![Page 93: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/93.jpg)
Use of multiple languages
• 62% of those using custom DSLs also use UML• Almost all users of SysML and BPMN also use
UML• UML is the most popular ‘single use’ language
– 38% of all respondents
• UML used in combination with just about every combination of modeling languages– 14% of UML users combine with vendor DSL– 6% with both custom and vendor DSL
![Page 94: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/94.jpg)
Which diagrams are used?
19 different diagram types are used regularly
![Page 95: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/95.jpg)
Points of contention – paired questions
![Page 96: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/96.jpg)
Effect of MDE on Training Costs
Q: Does using MDE allow you to employ developers with less software engineering experience?
Q: Does using MDE require you to carry out significant extra training in modeling?
46% agree, 34% disagree
74% agree, 9% disagree
![Page 97: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/97.jpg)
Benefits of code generation
Q: Is your use of code generation an important aspect of your MDE productivity gains?
Q: Is integrating generated code into your existing projects a significant problem?
75% agree, 10% disagree
36% agree, 40% disagree
![Page 98: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/98.jpg)
Changes on model or code?
Q: Do you mainly make updates on the model rather than the code?
Q: Do you spend a lot of time synchronizing the model and the code?
70% agree, 15% disagree
35% agree, 45% disagree
![Page 99: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/99.jpg)
MDE and Agility
Q: Does MDE make you faster at implementing new requirements?
Q: Does MDE prevent you from responding to business opportunities?
75% agree, 12% disagree
32% agree, 38% disagree
![Page 100: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/100.jpg)
Complexity of UML
Q: Is UML too complex?
Q: Is UML powerful enough?
44% agree, 32% disagree
52% agree, 31% disagree
![Page 101: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/101.jpg)
Promoting understanding
Q: Does your use of MDE lead to better understanding between stakeholders?
Q: Does your use of MDE result in unexpected confusion and/or misunderstandings between stakeholders?
66% agree, 16% disagree
25% agree, 49% disagree
![Page 102: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/102.jpg)
Tooling
Q: Are MDE tools too expensive?
Q: Do organizations attempt to deploy MDE using inappropriate and/or cheap tools?
45% agree
55% agree
![Page 103: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/103.jpg)
Tools used
ATL, Acceleo, Agile4R, AndroMDA, ANTLR, Apple XCode, ArgoUML, Artisan Studio, ASCET, ASF+SDF, AToM3, Blu Age, Borland Together, BridgePoint, Eclipse (EMF, GMF, M2T), Enterprise Architect, Rhapsody, Rational Technical Developer, Rational Rose, IdealXML, Influx, Intalio, Intelligent Software Factory, iUML, Kermeta, Lisp, LTS, M2Flex, Magic Draw, Matlab/Simulink, Maven, Mendix, MetaEdit+, MetaSketch, MiaGeneration, Microsoft DSL Tools, Microsoft Visual Studio, Visio, Omnigraffle, MicroTool Objectif, MID Innovator Object, ModelBus, ModelPro, MOFScript, NexJ MDE Framework, Obeo, Objecteering, Oliva Nova, OpenArchitectureWare, OpenEmbeDD, OptimalJ, Oracle Case, OWLtoAspectJ, Papyrus, Popkin SA and BPWIN, Poseidon, PowerDesigner, Protégé, QVT-Operational (Eclipse Implementation), Rascal, Rational Software Architect, Scheme, SketchiXML, starUML, Stratego, TAYLOR, Telelogic Tau, Tibco Business Studio, Together Architect, Topcased, T-VEC, Umbrello, UModel, URDAD, Visual Paradigm, VisualState, WEBRATIO, WebSphere Integration Developer, IBM XDE
Over 100 tools
![Page 104: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/104.jpg)
Key findings
• Productivity gains from code generation tend to outweigh losses from integration with existing code
• MDE allows for faster turn-around on new requirements– But there is a significant risk that it may prevent
organizations from responding to new business opportunities
![Page 105: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/105.jpg)
Key findings
• MDE increases overall training costs• UML is not yet universally accepted as the
modeling language of choice– Indeed, DSLs are far more prevalent than anticipated
![Page 106: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/106.jpg)
Education, education, education
![Page 107: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/107.jpg)
• Are we teaching modeling the wrong way?– bottom-up versus top-down– combine teaching modeling
& compilers/code optimizationoptimization
![Page 108: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/108.jpg)
Top 10 Tips for Practitioners
![Page 109: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/109.jpg)
Keep Domains Tight and Narrow
1
![Page 110: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/110.jpg)
Target well-documented, well-understood domains
2
![Page 111: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/111.jpg)
Put MDD on the Critical Path
3
![Page 112: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/112.jpg)
MDD works best when drivenfrom the ground-up
4
![Page 113: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/113.jpg)
Be Careful About Gains Offset Elsewhere
5
![Page 114: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/114.jpg)
Don’t Obsess About Code Generation
6
![Page 115: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/115.jpg)
Not everyone can think abstractly
7
![Page 116: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/116.jpg)
Most projects fail at scale-up
8
![Page 117: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/117.jpg)
Match tools/processes to the way people think; not the
other way around
9
![Page 118: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/118.jpg)
OK, there were only 9…
10
![Page 119: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/119.jpg)
Bedtime reading…
• Model Driven Engineering Practices in Industry, ICSE 2011
• Empirical Assessment of MDE in Industry, ICSE 2011
• Mismatches between Industry Practice and Teaching of Model-Driven Software Development. MODELS 2011 Educators’ Symp.
• A Survey of Practitioners’ Use of MDE (ask me for a copy)
![Page 120: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/120.jpg)
![Page 121: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/121.jpg)
Why should researchers care?
![Page 122: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/122.jpg)
Match tools/processes to the way people think; not the
other way around
![Page 123: Whittle Modeling Wizards 2012](https://reader033.vdocuments.net/reader033/viewer/2022061605/55890899d8b42ab1748b469a/html5/thumbnails/123.jpg)
Dataset
http://www.comp.lancs.ac.uk/~eamde/site/content_qres.php
These Slides
http://www.slideshare.net/jonathw/whittle-modeling-wizards-2012