Development of Service-Oriented Architectures using Model-Driven Development: A Mapping Study
David Ameller, Xavier Burgués, Oriol Collell, Dolors Costal, Xavier Franch,
Mike P. Papazoglou
Reference: INFSOF 5574
To appear in: Information and Software Technology
Received Date: 5 September 2014
Revised Date: 17 January 2015
Accepted Date: 10 February 2015
Please cite this article as: D. Ameller, X. Burgués, O. Collell, D. Costal, X. Franch, M.P. Papazoglou, Development of Service-Oriented Architectures using Model-Driven Development: A Mapping Study, Information and Software
Technology (2015), doi: http://dx.doi.org/10.1016/j.infsof.2015.02.006
This is a PDF file of an unedited manuscript that has been accepted for publication. As a service to our customers we are providing this early version of the manuscript. The manuscript will undergo copyediting, typesetting, and review of the resulting proof before it is published in its final form. Please note that during the production process errors may be discovered which could affect the content, and all legal disclaimers that apply to the journal pertain.
Development of Service-Oriented Architectures using
Model-Driven Development: A Mapping Study
David Amellera, Xavier Burgue´sa, Oriol Collella, Dolors Costala, Xavier Francha, Mike P.
Papazogloub aUniversitat Polite`cnica de Catalunya, Barcelona, Spain. bTilburg University, Tilburg, The Netherlands.
Context: Model-Driven Development (MDD) and Service-Oriented Architecture (SOA) are two challenging research areas in software engineering. MDD is about improving software development whilst SOA is a service-based conceptual development style, therefore investigating the available proposals in the literature to use MDD when developing SOA may be insightful. However, no studies have been found with this purpose.
Objective: This work aims at assessing the state of the art in MDD for SOA systems. It mainly focuses on: what are the characteristics of MDD approaches that support SOA; what types of SOA are supported; how do they handle non-functional requirements.
Method: We conducted a mapping study following a rigorous protocol. We identified the representative set of venues that should be included in the study. We applied a search string over the set of selected venues. As result, 129 papers were selected and analysed (both frequency analysis and correlation analysis) with respect to the defined classification criteria derived from the research questions. Threats to validity were identified and mitigated whenever possible.
Results: The analysis allows us to answer the research questions. We highlight: 1) predominance of papers from Europe and written by researchers only; 2) predominance of top-down transformation in software development activities; 3) inexistence of consolidated methods; 4) significant percentage of works without tool support; 5) SOA systems and service compositions more targeted than single services and SOA enterprise systems; 6) limited use of metamodels; 7) very limited use of NFRs; 8) limited application in real cases.
Conclusion: This mapping study does not just provide the state of the art in the topic, but also identifies several issues that deserve investigation in the future, for instance the need of methods for activities other than software development (e.g., migration) or the need of conducting more real case studies.
Keywords: Service-Oriented Architecture, Model-Driven Development, SOA, MDD, State of the Art, Mapping Study, Survey
Email addresses: firstname.lastname@example.org (David Ameller), email@example.com (Xavier Burgue´s), firstname.lastname@example.org (Oriol Collell), email@example.com (Dolors Costal), firstname.lastname@example.org (Xavier Franch), email@example.com (Mike P. Papazoglou)
Preprint submitted to Information and Software Technology January 17, 2015 1. Introduction
In the last decade we have witnessed the emergence of Service-Oriented Computing (SOC).
Papazoglou and Georgakopoulos defined SOC as the computing paradigm that utilizes services as fundamental elements for developing applications . The adoption of SOC impacted over the full application development lifecycle, from requirements engineering to implementation, maintenance and testing. Service-oriented applications are structured using a Service-Oriented Architecture (SOA) whose foundation includes basic services, their descriptions, and basic operations (publication, discovery, selection, and binding) that produce or utilize such descriptions .
The study of SOA has attracted a lot of attention from researchers and practitioners. Principles, metamodels, languages, technologies, methods, patterns, etc., for SOA have been and are being proposed continuously and have yield to an extensive body of knowledge. A particular issue has to do with the relationship of SOA with other orthogonal software engineering streams.
One of such streams is Model-Driven Development (MDD). According to Mellor et al., MDD pushes the vision that we can construct a model of a system and then transform it into the real thing . It is clear that the use of MDD in the context of SOC may deliver powerful software engineering methods. In fact, OMG released in 2012 a standard named SOA Modeling Language (SoaML ) which links SOA and MDD. A question that may arise naturally is: to what extent
MDD is currently used for developing SOA-based applications? The goal of this paper is to answer this question in detail.
For attaining this goal, we search, analyse and discuss the different approaches that have been proposed in the scientific literature related to this question by performing a mapping study. A mapping study (MS) is a form of systematic literature review (SLR) that aims at identifying and categorizing the available research on a broad software engineering topic . MS are intended to provide an overview of a topic area and identify whether there are sub-topics with sufficient primary studies to conduct conventional SLRs and also to identify sub-topics where more primary studies are needed. MS use the same basic methodology as SLRs.