302,322 research outputs found

    A Framework for Evaluating Model-Driven Self-adaptive Software Systems

    Get PDF
    In the last few years, Model Driven Development (MDD), Component-based Software Development (CBSD), and context-oriented software have become interesting alternatives for the design and construction of self-adaptive software systems. In general, the ultimate goal of these technologies is to be able to reduce development costs and effort, while improving the modularity, flexibility, adaptability, and reliability of software systems. An analysis of these technologies shows them all to include the principle of the separation of concerns, and their further integration is a key factor to obtaining high-quality and self-adaptable software systems. Each technology identifies different concerns and deals with them separately in order to specify the design of the self-adaptive applications, and, at the same time, support software with adaptability and context-awareness. This research studies the development methodologies that employ the principles of model-driven development in building self-adaptive software systems. To this aim, this article proposes an evaluation framework for analysing and evaluating the features of model-driven approaches and their ability to support software with self-adaptability and dependability in highly dynamic contextual environment. Such evaluation framework can facilitate the software developers on selecting a development methodology that suits their software requirements and reduces the development effort of building self-adaptive software systems. This study highlights the major drawbacks of the propped model-driven approaches in the related works, and emphasise on considering the volatile aspects of self-adaptive software in the analysis, design and implementation phases of the development methodologies. In addition, we argue that the development methodologies should leave the selection of modelling languages and modelling tools to the software developers.Comment: model-driven architecture, COP, AOP, component composition, self-adaptive application, context oriented software developmen

    Data driven approaches for smart city planning and design: a case scenario on urban data management

    Get PDF
    Purpose Because of the use of digital technologies in smart cities, municipalities are increasingly facing issues related to urban data management and are seeking ways to exploit these huge amounts of data for the actualization of data driven services. However, only few studies discuss challenges related to data driven strategies in smart cities. Accordingly, the purpose of this study is to present data driven approaches (architecture and model), for urban data management needed to improve smart city planning and design. The developed approaches depict how data can underpin sustainable urban development. Design/methodology/approach Design science research is adopted following a qualitative method to evaluate the architecture developed based on top-level design using a case data from workshops and interviews with experts involved in a smart city project. Findings The findings of this study from the evaluations indicate that the identified enablers are useful to support data driven services in smart cities and the developed architecture can be used to promote urban data management. More importantly, findings from this study provide guidelines to municipalities to improve data driven services for smart city planning and design. Research limitations/implications Feedback as qualitative data from practitioners provided evidence on how data driven strategies can be achieved in smart cities. However, the model is not validated. Hence, quantitative data is needed to further validate the enablers that influence data driven services in smart city planning and design. Practical implications Findings from this study offer practical insights and real-life evidence to define data driven enablers in smart cities and suggest research propositions for future studies. Additionally, this study develops a real conceptualization of data driven method for municipalities to foster open data and digital service innovation for smart city development. Social implications The main findings of this study suggest that data governance, interoperability, data security and risk assessment influence data driven services in smart cities. This study derives propositions based on the developed model that identifies enablers for actualization of data driven services for smart cities planning and design. Originality/value This study explores the enablers of data driven strategies in smart city and further developed an architecture and model that can be adopted by municipalities to structure their urban data initiatives for improving data driven services to make cities smarter. The developed model supports municipalities to manage data used from different sources to support the design of data driven services provided by different enterprises that collaborate in urban environment.acceptedVersio

    Model-Driven Methodology for Rapid Deployment of Smart Spaces based on Resource-Oriented Architectures

    Get PDF
    Advances in electronics nowadays facilitate the design of smart spaces based on physical mash-ups of sensor and actuator devices. At the same time, software paradigms such as Internet of Things (IoT) and Web of Things (WoT) are motivating the creation of technology to support the development and deployment of web-enabled embedded sensor and actuator devices with two major objectives: (i) to integrate sensing and actuating functionalities into everyday objects, and (ii) to easily allow a diversity of devices to plug into the Internet. Currently, developers who are applying this Internet-oriented approach need to have solid understanding about specific platforms and web technologies. In order to alleviate this development process, this research proposes a Resource-Oriented and Ontology-Driven Development (ROOD) methodology based on the Model Driven Architecture (MDA). This methodology aims at enabling the development of smart spaces through a set of modeling tools and semantic technologies that support the definition of the smart space and the automatic generation of code at hardware level. ROOD feasibility is demonstrated by building an adaptive health monitoring service for a Smart Gym

    Model-Driven Productivity Evaluation for Self-Adaptive Context-Oriented Software Development

    Get PDF
    Anticipating context changes using a model-based approach requires a formal procedure for analysing and mod- elling their context-dependent functionality, and a stable descrip- tion of the architecture which supports dynamic decision-making and architecture evolution. This article demonstrates the capabil- ities 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 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 extra-functionality model. COCA-MDA reduces the development effort because it maintains a clear separation of concerns and em- ploys a decomposition mechanism to produce a context-oriented component model which decouples the applications’ core func- tionality 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

    Productivity Evaluation of Self-Adaptive Software Model Driven Architecture

    Get PDF
    Anticipating context changes using a model-based approach requires a formal procedure for analysing and modelling context-dependent functionality and stable description of the architecture which supports dynamic decision-making 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; the authors describe a state-of-the-art case study and evaluate the development effort involved in adopting the COCA-MDA in constructing the application. An intensive analysis of the applica- tion requirements simplified the process of modelling the application’s behavioural model; therefore, instead of modelling several variation models, the developers modelled an extra-functionality model. COCA-MDA reduces the development effort because it maintains a clear separation of concerns and employs a decom- position 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 select the best MDA-based methodology from the available solutions. 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

    A Model Driven Architecture Framework for Robot Design and Automatic Code Generation

    Get PDF
    International audienceThis work presents a research and development experiment in software engineering at the IMT Mines Ales, France. The goal is to define a framework allowing a system controller to be graphically designed and its java code to be automatically generated. This framework is expected to be a support for students following the system engineering curriculum, and who have to program LEGO Mindstorms EV3 robots although they have not already been trained to concurrent Java programming. The experimental methodology focuses on learning and implementing the following paradigms: model driven design, software architecture for event driven systems and reactive system programming using JAVA threads. We present the design framework defined during this experiment, and the feedback of students who have been involved in setting up the state of the art and developing the framework

    Behaviour modelling and transformations for context-aware mobile applications

    Get PDF
    Today‟s panorama of service offerings is characterised by the widespread diffusion of the Internet and Web-based technologies everywhere in society. We are surrounded by devices that can support us in several tasks of our every-day life, like, for example, e-readers to access books and magazines, or mobile phones with extremely intuitive user interfaces for browsing, checking emails, keeping in touch with colleagues and friends through social networks, finding maps and locations, and so on. Moreover, this daily experience would not be possible without ultra-fast networks and wireless technologies that allow us to exchange any kind of data, anywhere, in real time and at low-cost. In this panorama, it becomes of vital importance for service providers to offer services that are innovative and distinctive. On one hand, service providers have to preserve current customers and attract new ones in order to survive in an ever growing arena of competitors. On the other hand, service users become more and more aware of the opportunities offered by the evolving technologies and, consequently, more demanding and with stronger expectations than in the past. Therefore, users expect a profusion of services wherever they are, to support whatever they are doing, and according to their personal preferences and needs, while providers have to create a wide range of enriched services in a rapid, low-cost and user-centric way.\ud This thesis proposes a layered methodology based on behaviour modelling and transformations for the development of context-aware mobile applications, which are distributed applications that can provide advanced and personalised services to their users. Currently available approaches, such as Service-Oriented Architecture (SOA) and Model-Driven Architecture (MDA), are used in this thesis to support such a methodology. The main objective is to progress the state-of-the-art in model-driven development of context-aware mobile applications by taking into account the behaviour of these applications already in early stages of the development process. In order to achieve this, we refine the application behaviour in several steps, from abstract specifications to final implementations, and develop automated model transformations throughout these refinement steps to generate executable models and reason about their behavioural correctness

    E-MDAV: A Framework for Developing Data-Intensive Web Applications

    Get PDF
    The ever-increasing adoption of innovative technologies, such as big data and cloud computing, provides significant opportunities for organizations operating in the IT domain, but also introduces considerable challenges. Such innovations call for development processes that better align with stakeholders needs and expectations. In this respect, this paper introduces a development framework based on the OMG's Model Driven Architecture (MDA) that aims to support the development lifecycle of data-intensive web applications. The proposed framework, named E-MDAV (Extended MDA-VIEW), defines a methodology that exploits a chain of model transformations to effectively cope with both forward- and reverse-engineering aspects. In addition, E-MDAV includes the specification of a reference architecture for driving the implementation of a tool that supports the various professional roles involved in the development and maintenance of data-intensive web applications. In order to evaluate the effectiveness of the proposed E-MDAV framework, a tool prototype has been developed. E-MDAV has then been applied to two different application scenarios and the obtained results have been compared with historical data related to the implementation of similar development projects, in order to measure and discuss the benefits of the proposed approach

    Semantic model-driven development of web service architectures.

    Get PDF
    Building service-based architectures has become a major area of interest since the advent of Web services. Modelling these architectures is a central activity. Model-driven development is a recent approach to developing software systems based on the idea of making models the central artefacts for design representation, analysis, and code generation. We propose an ontology-based engineering methodology for semantic model-driven composition and transformation of Web service architectures. Ontology technology as a logic-based knowledge representation and reasoning framework can provide answers to the needs of sharable and reusable semantic models and descriptions needed for service engineering. Based on modelling, composition and code generation techniques for service architectures, our approach provides a methodological framework for ontology-based semantic service architecture

    Incorporating Agile with MDA Case Study: Online Polling System

    Full text link
    Nowadays agile software development is used in greater extend but for small organizations only, whereas MDA is suitable for large organizations but yet not standardized. In this paper the pros and cons of Model Driven Architecture (MDA) and Extreme programming have been discussed. As both of them have some limitations and cannot be used in both large scale and small scale organizations a new architecture has been proposed. In this model it is tried to opt the advantages and important values to overcome the limitations of both the software development procedures. In support to the proposed architecture the implementation of it on Online Polling System has been discussed and all the phases of software development have been explained.Comment: 14 pages,1 Figure,1 Tabl
    corecore