339,815 research outputs found

    Applying a model-based methodology to develop web-based systems of systems

    Get PDF
    Systems of Systems (SoS) are emerging applications composed by subsystems that interacts in a distributed and heterogeneous environment. Web-based technologies are a current trend to achieve SoS user interaction. Model Driven Web Engineering (MDWE) is the application of Model Driven Engineering (MDE) into the Web development domain. This paper presents a MDWE methodology to include Web-based interaction into SoS development. It's composed of ten models and seven model transformations and it's fully implemented in a support tool for its usage in practice. Quality aspects covered through the traceability from the requirements to the nal code are exposed. The feasibility of the approach is validated by its application into a real-world project. A preliminary analysis of potential benets (reduction of eort, time, cost; improve of quality; design vs code ratio, etc) is done by comparison to other project as an initial hypothesis for a future planned experimentation research.Ministerio de Economía, Industria y Competitividad TIN2013-46928-C3- 3-RMinisterio de Economía, Industria y Competitividad TIN2015-71938-RED

    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

    LiquidML: A Web Modeling Language Supporting Fast Metamodel Evolution

    Get PDF
    Model Driven development approaches are being adopted by the software industry due to a core set of benefits such as raising the level of abstraction and reducing coding errors. However, their underlying modelling languages tend to be quite rigid, making their evolution hard, specifically when the corresponding metamodel do not support primitives and/or functionalities required in specific business domains. In this work, we present an approach for fast evolution of the modelling language that is “self reflective”, allowing modellers to abstract new language concepts from the primitives. The main advantage of our approach is that it provides zero application downtime and automatic tool evolution. As a consequence, applications created with our approach are able to adapt quicker to the business needs than those based on traditional Web modelling languages. We compare our approach with existing modelling languages in a case study providing a proof of its ability to adapt faster than to new business needs.Ministerio de Ciencia e Innovación TIN2013-46928-C3-3-

    In Search of Evidence for Model-Driven Development Claims: An Experiment on Quality, Effort, Productivity and Satisfaction

    Full text link
    Context: Model-Driven Development (MDD) is a paradigm that prescribes building conceptual models that abstractly represent the system and generating code from these models through transformation rules. The literature is rife with claims about the benefits of MDD, but they are hardly supported by evidences. Objective: This experimental investigation aims to verify some of the most cited benefits of MDD. Method: We run an experiment on a small set of classes using student subjects to compare the quality, effort, productivity and satisfaction of traditional development and MDD. The experiment participants built two web applications from scratch, one where the developers implement the code by hand and another using an industrial MDD tool that automatically generates the code from a conceptual model. Results: Outcomes show that there are no significant differences between both methods with regard to effort, productivity and satisfaction, although quality in MDD is more robust to small variations in problem complexity. We discuss possible explanations for these results. Conclusions: For small systems and less programming-experienced subjects, MDD does not always yield better results than a traditional method, even regarding effort and productivity. This contradicts some previous statements about MDD advantages. The benefits of developing a system with MDD appear to depend on certain characteristics of the development context. 2015 Elsevier B.V. All rights reserved.This work was developed with the support of the Spanish Ministry of Science and Innovation project SMART ADAPT (TIN2013-42981-P), TIN2011-23216 and was co-financed by ERDF. It also has the support of Generalitat Valenciana-funded IDEO project (PROMETEOII/2014/039) and UV (UV-INV-PRECOMP13-115032).Panach Navarrete, JI.; España Cubillo, S.; Dieste, O.; Pastor López, O.; Juristo Juzgado, N. (2015). In Search of Evidence for Model-Driven Development Claims: An Experiment on Quality, Effort, Productivity and Satisfaction. Information and Software Technology. 62:164-186. https://doi.org/10.1016/j.infsof.2015.02.012S1641866

    Model Driven Development and Maintenance of Business Logic for Information Systems

    Get PDF
    Since information systems become more and more important in today\''s society, business firms, organizations, and individuals rely on these systems to manage their daily business and social activities. The dependency of possibly critical business processes on complex IT systems requires a strategy that supports IT departments in reducing the time needed to implement changed or new domain requirements of functional departments. In this context, software models help to manage system\''s complexity and provide a tool for communication and documentation purposes. Moreover, software engineers tend to use automated software model processing such as code generation to improve development and maintenance processes. Particularly in the context of web-based information systems, a number of model driven approaches were developed. However, we believe that compared to the user interface layer and the persistency layer, there could be a better support of consistent approaches providing a suitable architecture for the consistent model driven development of business logic. To ameliorate this situation, we developed an architectural blueprint consisting of meta models, tools, and a method support for model driven development and maintenance of business logic from analysis until system maintenance. This blueprint, which we call Amabulo infrastructure, consists of five layers and provides concepts and tools to set up and apply concrete infrastructures for model driven development projects. Modeling languages can be applied as needed. In this thesis we focus on business logic layers of J2EE applications. However, concrete code generation rules can be adapted easily for different target platforms. After providing a high-level overview of our Amabulo infrastructure, we describe its layers in detail: The Visual Model Layer is responsible for all visual modeling tasks. For this purpose, we discuss requirements for visual software models for business logic, analyze several visual modeling languages concerning their usefulness, and provide an UML profile for business logic models. The Abstract Model Layer provides an abstract view on the business logic model in the form of a domain specific model, which we call Amabulo model. An Amabulo model is reduced to pure logical information concerning business logic aspects. It focuses on information that is relevant for the code generation. For this purpose, an Amabulo model integrates model elements for process modeling, state modeling, and structural modeling. It is used as a common interface between visual modeling languages and code generators. Visual models of the Visual Model Layer are automatically transformed into an Amabulo model. The Abstract System Layer provides a formal view onto the system in the form of a Coloured Petri Net (CPN). A Coloured Petri Net representation of the modeled business logic is a formal structure and independent of the actual business logic implementation. After an Amabulo model is automatically transformed into a CPN, it can be analyzed and simulated before any line of code is generated. The Code Generation Layer is responsible for code generation. To support the design and implementation of project-specific code generators, we discuss several aspects of code integration issues and provide object-oriented design approaches to tackle the issues. Then, we provide a conceptual mapping of Amabulo model elements into architectural elements of a J2EE infrastructure. This mapping explicitly considers robustness features, which support a later manual integration of generated critical code artifacts and external systems. The Application Layer is the target layer of an Amabulo infrastructure and comprises generated code artifacts. These artifacts are instances of a specific target platform specification, and they can be modified for integration purposes with development tools. Through the contributions in this thesis, we aim to provide an integrated set of solutions to support an efficient model driven development and maintenance process for the business logic of information systems. Therefore, we provide a consistent infrastructure blueprint that considers modeling tasks, model analysis tasks, and code generation tasks. As a result, we see potential for reducing the development and maintenance efforts for changed domain requirements and simultaneously guaranteeing robustness and maintainability even after several changes

    Support for Process Oriented Requirements Engineering

    Get PDF
    Supporting a Process Oriented Requirements Method Process modelling as a way to inform requirements has seen somewhat of a resurgence in recent years, particularly in those methods that utilise a Role Activity Diagram based approach. By using these models within the requirements phase the client needs can be captured effectively in a notation that makes sense to the business user, whilst also providing a rigorous description. However, the move to specification still has pitfalls, notably in ensuring that the understanding gained from process modelling can be transferred effectively to the specification so that alignment of business need and software system is maintained. This talk outlines issues and potential solutions in ensuring such alignment, and incorporates our recent experiences in attempting to provide tool support. In particular, we describe tool support for model driven development (as part of the collaborative EC project VIDE), and the use of process mashups, including work undertaken at SAP research. In both cases our focus has been on providing sets of notations and tools which are accessible to a variety of users, often including those stakeholders who are not IT experts. Mashups are a relatively new approach, and use web 2.0 technologies to combine data from different sources to create valuable information, principally for data aggregation applications. This utilises the potential of the internet and related technologies, to allow users to process tasks collaboratively, and form communities among those with similar interests. We present currently available mashup platforms and demonstrate how situational enterprise applications can be built by combining social software, feeds, widgets, web services, open APIs, and so on. The session does not require any specific technical skills, though experienced process engineers will have the opportunity to share their views. Participants will learn: • How to use simple role based process models • Issues in moving from process model to specification • How to use simple notational devices to ensure alignment • How development tools can help, with a particular focus on the use of mashups • Current process mashup approaches and future directions

    Challenges for the Adoption of Model-Driven Web Engineering Approaches in Industry

    Get PDF
    Model-driven web engineering approaches have become an attractive research and technology solution for Web application development. However, after 20 years of development, they have attracted little attention from the Industry due to the mismatch between technical versus research requirements. In this joint work between academia and industry, the authors present the current problems of using these approaches in scale and provide guidelines to convert them into viable industry solutions.Ministerio de ciencia e Innovación TIN2016-76956-C3-2-RMinisterio de Economía y Competitividad TIN2015-71938-RED

    A Practical Environment to Apply Model-Driven Web Engineering

    Get PDF
    The application of a model-driven paradigm in the development of Web Systems has yielded very good research results. Several research groups are defining metamodels, transformations, and tools which offer a suitable environment, known as model-driven Web engineering (MDWE). However, there are very few practical experiences in real Web system developments using real development teams. This chapter presents a practical environment of MDWE based on the use of NDT (navigational development techniques) and Java Web systems, and it provides a practical evaluation of its application within a real project: specialized Diraya.Ministerio de Educación y Ciencia TIN2007-67843-C06-03Ministerio de Educación y Ciencia TIN2007-30391-

    Ontology-based patterns for the integration of business processes and enterprise application architectures

    Get PDF
    Increasingly, enterprises are using Service-Oriented Architecture (SOA) as an approach to Enterprise Application Integration (EAI). SOA has the potential to bridge the gap between business and technology and to improve the reuse of existing applications and the interoperability with new ones. In addition to service architecture descriptions, architecture abstractions like patterns and styles capture design knowledge and allow the reuse of successfully applied designs, thus improving the quality of software. Knowledge gained from integration projects can be captured to build a repository of semantically enriched, experience-based solutions. Business patterns identify the interaction and structure between users, business processes, and data. Specific integration and composition patterns at a more technical level address enterprise application integration and capture reliable architecture solutions. We use an ontology-based approach to capture architecture and process patterns. Ontology techniques for pattern definition, extension and composition are developed and their applicability in business process-driven application integration is demonstrated
    corecore