Programming pearls: little languages
Communications of the ACM
Communications of the ACM - Two decades of the language-action perspective
MBD-MOMPES '06 Proceedings of the Fourth Workshop on Model-Based Development of Computer-Based Systems and Third International Workshop on Model-Based Methodologies for Pervasive and Embedded Software
Experiences from introducing UML-based development in a large safety-critical project
Empirical Software Engineering
Proceedings of the 2008 international workshop on Models in software engineering
Where Is the Proof? - A Review of Experiences from Applying MDE in Industry
ECMDA-FA '08 Proceedings of the 4th European conference on Model Driven Architecture: Foundations and Applications
Empirical assessment of MDE in industry
Proceedings of the 33rd International Conference on Software Engineering
Model-driven engineering practices in industry
Proceedings of the 33rd International Conference on Software Engineering
Using grounded theory to study the experience of software development
Empirical Software Engineering
Transition to model-driven engineering: what is revolutionary, what remains the same?
MODELS'12 Proceedings of the 15th international conference on Model Driven Engineering Languages and Systems
Transition to model-driven engineering: what is revolutionary, what remains the same?
MODELS'12 Proceedings of the 15th international conference on Model Driven Engineering Languages and Systems
Lessons learned from evaluating MDE abstractions in an industry field study
Proceedings of the Second Edition of the International Workshop on Experiences and Empirical Studies in Software Modelling
Hi-index | 0.00 |
In this paper, we investigate model-driven engineering, reporting on an exploratory case-study conducted at a large automotive company. The study consisted of interviews with 20 engineers and managers working in different roles. We found that, in the context of a large organization, contextual forces dominate the cognitive issues of using model-driven technology. The four forces we identified that are likely independent of the particular abstractions chosen as the basis of software development are the need for diffing in software product lines, the needs for problem-specific languages and types, the need for live modeling in exploratory activities, and the need for point-to-point traceability between artifacts. We also identified triggers of accidental complexity, which we refer to as points of friction introduced by languages and tools. Examples of the friction points identified are insufficient support for model diffing, point-to-point traceability, and model changes at runtime.