Abstract
Almost a decade has passed since the OMG has issued the Model Driven Architecture (MDA) initiative. It soon became obvious that raising the level of abstraction in development and reasoning at the model level would help in asking the right questions at the right time. Based on a concrete problem, we discuss four alternative solutions to a multi-language system design problem. These solutions use a traditional approach, a technique based on modeling, a domain-specific approach, and a mix of modeling and domain-specific techniques, respectively. The solutions depend on the problem, but they are representative for the situations we encounter in practice, therefore giving us a good basis for a larger discussion on the appropriateness of using modeling techniques and on the place of MDA in current software engineering practice and design.
Similar content being viewed by others
Explore related subjects
Discover the latest articles, news and stories from top researchers in related subjects.References
Domaines et processus méthodologique (2009) http://www.domino-rntl.org/
Aho AV, Sethi R, Ullman JD (1986) Compilers: principles, techniques, and tools. Addison-Wesley, Reading
Bézivin J (2003) MDA: from hype to hope, and reality. In:Invited talk at 6th international conference on UML, San Francisco, CA, USA, October 20–24
Bézivin J, Gerbé O (2001) Towards a precise definition of the OMG/MDA framework. In: ASE. IEEE Computer Society, pp 273–280
Camacho DO, Mens K (2008) Appareil: a tool for building automated program translators using annotated grammars. In: ASE. IEEE, pp 489–490
Camacho DO, Mens K (2007) Using annotated grammars for the automated generation of programs transformers. In: Ingénierie Dirigée par les Modeles
CCITT (1988) Specification and description language. Recommendation Z.100, Blue Book
Chaudhri G, Cater J, Kizzort B (2006) A model for a spacecraft operations language. In: SpaceOps 2006. American Institute of Aeronautics and Astronautics. AIAA 2006–5708
Cleenewerck T, D’Hondt T (2005) Disentangling the implementation of local-to-global transformations in a rewrite rule transformation system. In: Haddad H, Liebrock LM, Omicini A, Wainwright RL (eds) Symposium on applied computing. ACM, New York, pp 1398–1403
DSouza D (2001) OMG’s MDA, An Architecture for Modeling. Technical report, OMG
European Space Agency (2008) ESA. ECSS-E-ST-70-32C—Test and operations procedure language Standard Document
Goguen JA, Burstall RM (1992) Institutions: abstract model theory for specification and programming. J ACM 39(1): 95–146
Göktürk E, Naci Akkøk M (2004) Paradigm and software engineering. In: Turkey Ege University, Izmir. Impact of Software Process on Quality (IMPROQ) Workshop, May 2004
Harel D (1987) Statecharts: a visual formulation for complex systems. Sci Comput Program 8(3): 231–274
Haugen Ø, Møller-Pedersen B, Oldevik J, Olsen GK, Svendsen A (2008) Adding standardized variability to domain specific languages. In: SPLC. IEEE Computer Society, pp 139–148
Hössler J, Born M, Saito S (2006) Significant productivity enhancement through model driven techniques: a success story. In: EDOC. IEEE Computer Society, pp 367–373
Kang K, Cohen S, Hess J, Nowak W, Peterson S (1990) Feature-Oriented Domain Analysis (FODA) Feasibility Study
McDonald J, Anton J (2001) SPECWARE—Producing Software Correct by Construction. Kestrel Institute Technical Report KES.U.01.3
Klint P (1993) A meta-environment for generating programming environments. ACM Trans Softw Eng Methodol 2(2): 176–201
Lim WC (1998) Managing software reuse: a comprehensive guide to strategically reengineering the organization for reusable components. Prentice-Hall, Inc., Upper Saddle River
Miller J, Mukerji J (2003) MDA guide version 1.0.1. omg/2003-06-01. Technical report, OMG
Ober I, Dib AA, Féraud L, Percebois C (2008) Towards interoperability in component based development with a family of DSLs. In: Morrison R, Balasubramaniam D, Falkner KE (eds) ECSA. LNCS, vol 5292. Springer, Berlin, pp 148–163
Oldevik J, Haugen Ø, Møller-Pedersen B (2009) Confluence in domain-independent product line transformations. In: Chechik M, Wirsing M (eds) FASE. Lecture notes in computer science, vol 5503. Springer, Berlin, pp 34–48
OMG (2005) RFP Spacecraft Operations Language Metamodel. Technical report, OMG
OMG (2009) Draft RFP Common Variability Language. Technical report, OMG. ad/2009-08-07
Soley R (2001) Model-Driven Architecture. Technical report, OMG
Svendsen A, Olsen GK, Endresen J, Moen T, Carlson E, Alme K-J, Haugen Ø (2008) The future of train signaling. In: Czarnecki K, Ober I, Bruel J-M, Uhl A, Völter M (eds) MoDELS. Lecture notes in computer science, vol 5301. Springer, Berlin, pp 128–142
Uhl A, Ambler SW (2003) Point/counterpoint: model driven architecture is ready for prime time/agile model driven development is good enough. IEEE Softw 20(5): 70–73
Van Wyk E, de Moor O, Backhouse K, Kwiatkowski P (2002) Forwarding in attribute grammars for modular language design. In: Nigel Horspool R (ed) Compiler construction. Lecture notes in computer science, vol 2304. Springer, Berlin, pp 128–142
Wile DS (1991) Producer of parsers and related tools system builders’ manual 1994 edition draft. Technical report, USC Information Sciences Institute
Yourdon E, Constantine LL (1979) Structured design: fundamentals of a discipline of computer program and systems design. Prentice-Hall, Inc., Upper Saddle River
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Ober, I., Féraud, L. & Percebois, C. Dealing with variability within a family of domain-specific languages: comparative analysis of different techniques. Innovations Syst Softw Eng 6, 21–28 (2010). https://doi.org/10.1007/s11334-009-0117-0
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11334-009-0117-0