Productivity Evaluation of Self-Adaptive Software Model Driven Architecture

Basel Magableh, Stephen Barrett
2011 International Journal of Information Technology and Web Engineering  
Anticipating context changes using a model-based approach requires a formal procedure for analysing and modelling their context-dependent functionality, and a stable description of the architecture which supports dynamic decisionmaking and architecture evolution. This article demonstrates the capabilities of the context-oriented component-based application-model-driven architecture (COCA-MDA) to support the development of self-adaptive applications; we describe a state-of-the-art case study and
more » ... evaluate the development effort involved in adopting the COCA-MDA in constructing the application. An intensive analysis of the application requirements simplified the process of modelling the application's behavioural model; therefore, instead of modelling several variation models, the developers modelled an extrafunctionality model. COCA-MDA reduces the development effort because it maintains a clear separation of concerns and employs a decomposition mechanism to produce a context-oriented component model which decouples the applications' core functionality from the context-dependent functionality. Estimating the MDA approach's productivity can help the software developers to select the best MDA-based methodology from the available solutions proposed in the literature. Thus, counting the source line of code is not adequate for evaluating the development effort of the MDA-based methodology. Quantifying the maintenance adjustment factor of the new, adapted, and reused code is a better estimate of the development effort of the MDA approaches. Mobile computing environments are heterogeneous and dynamic. Everything from the devices used and resources available to network bandwidths and user context can change drastically at runtime (Belaramani, Wang, & Lau, 2003) . This presents the software developers with the challenge of tailoring behavioural variations both to each specific user need and to the context information. Context-dependent behavioural variations can be seen as a collaboration of individual features expressed in requirements, design, and implementa-SELF-ADAPTIVE SOFTWARE MDA PRODUCTIVITY EVALUATION
doi:10.4018/jitwe.2011100101 fatcat:ksdcf4tx5jbgnhxzp5ciirpk3i