• Sonuç bulunamadı

MoDSEL: model-driven software evolution language

N/A
N/A
Protected

Academic year: 2021

Share "MoDSEL: model-driven software evolution language"

Copied!
3
0
0

Yükleniyor.... (view fulltext now)

Tam metin

(1)

572

Copyright © 2013, IGI Global. Copying or distributing in print or electronic forms without written permission of IGI Global is prohibited.

Chapter 20

INTRODUCTION

In traditional, non-model-driven software de-velopment the link between the code and higher level design models is not formal but intentional. Required changes are usually addressed manually

using the given modeling language. Because of the manual adaptation the maintenance effort is not optimal and as such sooner or later the design models become inconsistent with the code since changes are, in practice, defined at the code level. One of the key motivations for introducing

Ersin Er

Hacettepe University, Turkey

Bedir Tekinerdogan

Bilkent University, Turkey

MoDSEL:

Model-Driven Software

Evolution Language

ABSTRACT

Model-Driven Software Development (MDSD) aims to support the development and evolution of soft-ware intensive systems using the basic concepts of model, metamodel, and model transformation. In parallel with the ongoing academic research, MDSD is more and more applied in industrial practices. Like conventional non-MDSD practices, MDSD systems are also subject to changing requirements and have to cope with evolution. In this chapter, the authors provide a scenario-based approach for documenting and analyzing the impact of changes that apply to model-driven development systems. To model the composition and evolution of an MDSD system, they developed the so-called Model-Driven Software Evolution Language (MoDSEL) which is based on a megamodel for MDSD. MoDSEL includes explicit language abstractions to specify both the model elements of an MDSD system and the evolution scenarios that might apply to model elements. Based on MoDSEL specifications, an impact analysis is performed to assess the impact of evolution scenarios and the sensitivity of model elements. A case study is provided to show different kind of evolution scenarios and the required adaptations to model elements.

(2)

573

MoDSEL

model-driven software development (MDSD) is the need to reduce the maintenance effort and as such support evolution. MDSD aims at achiev-ing this goal through definachiev-ing model elements as first class abstractions, and providing automated support using model transformations. For a given change requirement the code is not changed manu-ally but automaticmanu-ally generated or regenerated, thereby substantially reducing maintenance effort. Further, because of the formal links between the models and the code the evolution of artefacts in the model-driven development process is syn-chronized. The link between the code and models is formal. In fact, there are only models, and as such, ‘the documentation is the code’. Research on MDSD is continuing to improve the expres-siveness of the three key abstractions of model, metamodel and transformation (Kleppe, 2008). As such even better and more automated support to cope with changing requirements and as such to provide reuse, portability, interoperability, and maintenance. Because of the promising benefits for development and evolution, MDSD is more and more applied in industrial projects (Häst-backa, 2011; Fieber, 2009; Maurmaier, 2008). Albeit, MDSD provides from one perspective better support for evolution, it also introduces new dimensions and challenges for software evolution (Visser, 2007; Briand, 2003). Like conventional code, models, metamodels and transformations might be subject to changing requirements and as such require to evolve in due time. Moreover, changes to the metamodels and transformations might render the terminal models invalid.

The software evolution problem in MDSD needs to address different challenges. One of the initial and key issues in considering evolution in MDSD is the impact of changes to the existing systems. To understand evolution in MDSD we have provided a megamodel, that consists of both a model for MDSD, the model for adapting model elements, and the model for scenarios that reflect the evolution process. Based on the megamodel we propose a scenario-based approach for analyzing

the impact of changes that apply to model-driven development systems. For modeling the required changes we define the notion of so-called evolution

scenario, which is defined as a description of the

need for changes due to concerns of stakeholders. The concept evolution scenario has been inspired from the method called Scenario-based Analysis of Software Architecture that focuses on a more general use of scenarios (Kazman, 1996). Each evolution scenario will usually have an impact on the MDSD system and require changes to the models, metamodels or transformations.

To provide automated support for both docu-menting and analysis of evolution scenarios on MDSD projects we have developed the so-called domain-specific Model-Driven Software Evolu-tion Language (MoDSEL). MoDSEL includes explicit language abstractions to specify model elements and evolution scenarios that apply to model elements. Based on MoDSEL specifica-tions an impact analysis is provided to measure the impact of evolution scenarios and the sensi-tivity of model elements to the given evolution scenarios. We have supported the analysis process with a set of metrics (Fenton, 1997) that measure the impact of the defined scenarios as well as the sensitivity of each model element with respect to these scenarios. Once the system and the scenarios are modeled the metric values are automatically generated. The result of the measurement based on these metrics can support the decision in the design and refactoring of the system.

A case study for web-based conference man-agement is used to show different kind of evolu-tion scenarios and the required adaptaevolu-tions to model elements. The scope of our study includes the evolution in forward engineering that aims to derive concrete implementation from higher level abstractions. We do not consider evolution in reverse engineering projects.

The remainder of the chapter is organized as follows: In the second section we describe the ex-ample case of web-based conference management system. The third section defines the megamodel

(3)

21 more pages are available in the full version of this document, which may

be purchased using the "Add to Cart" button on the publisher's webpage:

www.igi-global.com/chapter/modsel-model-driven-software-evolution/71833

Related Content

Handling of Software Quality Defects in Agile Software Development

Jörg Rech (2009). Software Applications: Concepts, Methodologies, Tools, and Applications (pp. 242-265).

www.irma-international.org/chapter/handling-software-quality-defects-agile/29392/

The Multi-Agents Architecture for Emotion Recognition: Case of Information Retrieval System Mohamed Néji, Ali Wali and Adel M. Alimi (2014). International Journal of Software Innovation (pp. 73-85).

www.irma-international.org/article/the-multi-agents-architecture-for-emotion-recognition/111451/

Computer Assisted Methods for Retinal Image Classification

S. R. Nirmala and Purabi Sharma (2015). Intelligent Applications for Heterogeneous System Modeling and

Design (pp. 232-255).

www.irma-international.org/chapter/computer-assisted-methods-for-retinal-image-classification/135888/

Estimation of Factor Scores of Impressions of Question and Answer Statements

Yuya Yokoyama, Teruhisa Hochin and Hiroki Nomiya (2013). International Journal of Software Innovation

(pp. 53-66).

www.irma-international.org/article/estimation-of-factor-scores-of-impressions-of-question-and-answer-statements/89775/

Preference Coalition Formation Scheme for Buyer Coalition Services with Bundles of Items Laor Boongasame and Dickson K. W. Chiu (2012). International Journal of Systems and Service-Oriented

Engineering (pp. 67-84).

www.irma-international.org/article/preference-coalition-formation-scheme-for-buyer-coalition-services-with-bundles-of-items/78918/

Referanslar

Benzer Belgeler

The comparison of droplet monodispersity, using syringe pump (SP) and pressure pump (PP), was performed for three cases: numerical results with inlet condition fluctuations (pressure

The macroeconomic factors include the currency in circulation a fraction of M1 as a measure of economic liquidity, foreign exchange rates of the US dollar both as a

In this paper, an asymmetric stochastic volatility model of the foreignexchange rate inTurkey is estimated for the oating period.. It is shownthat there is a

properly in shopping malls, that both society and the shopping mall want parking to be free, and furthermore that society generally wants to require minimum parking lot sizes..

In a P2P context, a free rid- er is a peer that uses P2P network services but doesn’t contribute to the network or other peers at an acceptable level.. Eytan Adar and

modulator,” Appl. Mitchell, “Polymer long-period raised rib waveguide gratings using nano- imprint lithography,” IEEE Photon. Pun, “Polymeric waveguide wavelength filter

Andırın merkezde 1975’te dünyaya gözlerini açan Özgür PEKŞEN, doğumundan iki gün sonra sebepsiz bir şekilde hayata gözlerini yumar Yeğeninin ölümüne

Araştırmanın birinci alt problemi olan “uygulanan sanat eğitimi programının ders sürecinde araştırmacı tarafından önerilen konular nasıl işlenmiştir?”