256 research outputs found

    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

    OpenUP/MDRE: A Model-Driven Requirements Engineering Approach for Health-Care Systems

    Full text link
    The domains and problems for which it would be desirable to introduce information systems are currently very complex and the software development process is thus of the same complexity. One of these domains is health-care. Model-Driven Development (MDD) and Service-Oriented Architecture (SOA) are software development approaches that raise to deal with complexity, to reduce time and cost of development, augmenting flexibility and interoperability. However, many techniques and approaches that have been introduced are of little use when not provided under a formalized and well-documented methodological umbrella. A methodology gives the process a well-defined structure that helps in fast and efficient analysis and design, trouble-free implementation, and finally results in the software product improved quality. While MDD and SOA are gaining their momentum toward the adoption in the software industry, there is one critical issue yet to be addressed before its power is fully realized. It is beyond dispute that requirements engineering (RE) has become a critical task within the software development process. Errors made during this process may have negative effects on subsequent development steps, and on the quality of the resulting software. For this reason, the MDD and SOA development approaches should not only be taken into consideration during design and implementation as usually occurs, but also during the RE process. The contribution of this dissertation aims at improving the development process of health-care applications by proposing OpenUP/MDRE methodology. The main goal of this methodology is to enrich the development process of SOA-based health-care systems by focusing on the requirements engineering processes in the model-driven context. I believe that the integration of those two highly important areas of software engineering, gathered in one consistent process, will provide practitioners with many benets. It is noteworthy that the approach presented here was designed for SOA-based health-care applications, however, it also provides means to adapt it to other architectural paradigms or domains. The OpenUP/MDRE approach is an extension of the lightweight OpenUP methodology for iterative, architecture-oriented and model-driven software development. The motivation for this research comes from the experience I gained as a computer science professional working on the health-care systems. This thesis also presents a comprehensive study about: i) the requirements engineering methods and techniques that are being used in the context of the model-driven development, ii) known generic but flexible and extensible methodologies, as well as approaches for service-oriented systems development, iii) requirements engineering techniques used in the health-care industry. Finally, OpenUP/MDRE was applied to a concrete industrial health-care project in order to show the feasibility and accuracy of this methodological approach.Loniewski, G. (2010). OpenUP/MDRE: A Model-Driven Requirements Engineering Approach for Health-Care Systems. http://hdl.handle.net/10251/11652Archivo delegad

    Development of service-oriented architectures using model-driven development : a mapping study

    Get PDF
    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; and (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.Peer ReviewedPostprint (author's final draft

    MODEL-DRIVEN DEVELOPMENT OF SERVICEORIENTED BUSINESS APPLICATION SYSTEMS

    Get PDF
    The industrial development of real-world business applications that are based on service-oriented architecture (SOA) is subject to technological and organizational requirements. The paper describes an approach that tackles these requirements by ideas from model-driven development (MDD). The approach consists of a metamodel accompanied by modeling guidelines, a governance process ensuring that these guidelines are kept, and a modeling tool to support model creation and governance process. The successful application of the presented approach during the development of SAP’s Business byDesign solution shows that the benefits of MDD in software industry lie beyond code generation and outweigh modeling effort

    MINERVA : Model drIveN and sErvice oRiented framework for the continuous improVement of business process & relAted tools

    Get PDF
    Organizations are facing several challenges nowadays, one of the most important ones being their ability to react quickly to changes either to their business process (BP) models or to the software implementing them. These changes can come from different sources: external requirements from partners or the market, or new internal requirements for the way that things are carried out by the defined BPs; they may also arise from improvement opportunities detected for the BPs defined, based on BPs execution monitoring and execution evaluation that is done by the organization, and/or its partners and customers. The increasing complexity of both BPs models and the software implementing them, requires the changes needed or the improvements to be carefully weighed against the impact their introduction will have; they ought also to be carried out in a systematic way to assure a successful development. Two key elements are to provide these requirements: the separation of BPs definition from their implementation to minimize the impact of changes in one to the other, and a process to introduce the changes or improvements in the existing BPs and/or software implementing them. Business Process Management (BPM) provides the means for guiding and supporting the modeling, implementation, deployment, execution and evaluation of BPs in an organization, based on the BP lifecycle. The realization of BPs by means of services provides the basis for separating their definition from the technologies implementing them and helps provide a better response to changes in either of the layers defined -definition and implementation of business processes- with minimum impact on the other. Modeling of both BP and services is a key aspect to support this vision, helping provide traceability between elements from one area to the other, so easing the analysis of the impact of changes, among other things. Models have proven to play an important role in the software development process, one of its key uses in the context of BP realization by means of services is that of designing services at a more abstract level than with specific technologies, also promoting reuse by separating services logic from its implementation. MINERVA: Model drIveN & sErvice oRiented framework for the continuous business process improVement & relAted tools is the framework that has been defined in this thesis work; it takes into account all the aspects mentioned, in which the SOC and MDD paradigms are applied to BPs focusing on their continuous improvement, extending an existing BP lifecycle with explicit execution measurement and improvement activities and elements. It is made up of three dimensions: i) conceptual, which defines the concepts that are managed throughout the framework. ii) methodological, which defines a methodology for service oriented development from BPs with automatic generation of SoaML service models from BPMN2 models, along with a continuous improvement process based on execution measurement of the occurrences of BPs in the organization to carry out the improvement effort. iii) tools support for the whole proposal based on several existing tools we have integrated, along with new ones we have developed. The proposals in MINERVA have been validated by means of an experiment and two case studies carried out in the context of real projects in two organizations, from which, as the main result of the applications performed, it can be concluded that MINERVA can be a useful and key guide for the continuous improvement of BPs realized by services and for the development of service oriented systems from BPs, with automatic generation of service models from BP models.Las organizaciones se enfrentan en la actualidad a varios retos, siendo uno de los más importantes su capacidad para reaccionar rápidamente a los cambios ya sea en sus modelos de procesos de negocio (PN) o en el software que los implementa. Estos cambios pueden provenir de distintas fuentes: requisitos externos de socios o del mercado, o nuevos requisitos internos para la forma en que las cosas se llevan a cabo por los PNs definidos; también pueden surgir de las oportunidades de mejora detectadas para los PNs definidos, en base al monitoreo y evaluación de la ejecución de los PNs llevada a cabo por la organización, y/o sus socios y clientes. La creciente complejidad de los modelos de PNs y del software que los implementa, requiere que los cambios o las mejoras sean sopesados cuidadosamente contra el impacto que su introducción tendrá; también deben llevarse a cabo de manera sistemática para asegurar un desarrollo exitoso. Dos elementos son clave para proveer estos requisitos: la separación de la definición de los PNs de su implementación, para minimizar el impacto de los cambios de uno en otro, y un proceso para introducir los cambios o mejoras en los PNs y/o en el software que los implementa. La Gestión de Procesos de Negocio (Business Process Management, BPM) proporciona los medios para guiar y apoyar el modelado, implementación, despliegue, ejecución y evaluación de PNs en una organización, basado en el ciclo de vida de PNs. La realización de PNs con servicios proporciona la base para la separación de su definición de las tecnologías para implementarlos, y ayuda a proporcionar una mejor respuesta a los cambios en cualquiera de las capas definidas -definición e implementación de procesos de negocio- con un impacto mínimo sobre la otra. El modelado de PNs y servicios es un aspecto clave para apoyar esta visión, ayudando a proveer trazabilidad entre los elementos de un área a la otra, por lo tanto facilitando el análisis del impacto de los cambios, entre otras cosas. Los modelos han demostrado jugar un papel importante en el proceso de desarrollo de software, uno de sus usos principales en el contexto de la realización de PNs con servicios es el de diseñar servicios a un nivel más abstracto que con tecnologías específicas, promoviendo la reutilización separando la lógica de los servicios de su implementacion. MINERVA: Model drIveN & sErvice oRiented framework for the continuous business process improVement & relAted tools es el marco que se ha definido en este trabajo de tesis, que toma en cuenta todos los aspectos mencionados, en el cual los paradigmas de Computación Orientada a Servicios (Service Oriented Computing, SOC) y Desarrollo Dirigido por Modelos (Model Driven Development, MDD) se aplican a los PNs con foco en su mejora continua, extendiendo un ciclo de vida PN existente con actividades y elementos explícitos para la medición de la ejecución y mejora de PNs. El marco se compone de tres dimensiones: i) conceptual, que define los conceptos que se manejan en todo el marco. ii) metodológica, que define una metodología para el desarrollo orientado a servicios desde PNs, con generación automática de modelos de servicio en SoaML desde modelos en BPMN2, junto con un proceso de mejora continua basado en la medición de la ejecución de las ocurrencias de los PNs en la organización para llevar a cabo el esfuerzo de mejora. iii) soporte de herramientas para la propuesta completa basado en la integracion de varias herramientas existentes, junto con otras nuevas que hemos desarrollado. Las propuestas de MINERVA han sido validadas por medio de un experimento y dos casos de estudio realizados en el marco de proyectos reales en dos organizaciones, de los cuales, como resultado principal de las aplicaciones realizadas, se puede concluir que MINERVA puede ser una guía útil y clave para la mejora continua de PNs realizados por servicios y para el desarrollo de sistemas orientados a servicios desde PNs, con generación automática de modelos de servicio a partir de modelos de PN

    CLPL: Providing software infrastructure for the systematic and effective construction of complex collaborative learning systems

    Get PDF
    Over the last decade, e-Learning and in particular Computer-Supported Collaborative Learning (CSCL) needs have been evolving accordingly with more and more demanding pedagogical and technological requirements. As a result, high customization and flexibility are a must in this context, meaning that collaborative learning practices need to be continuously adapted, adjusted, and personalized to each specific target learning group. These very demanding needs of the CSCL domain represent a great challenge for the research community on software development to satisfy. This contribution presents and evaluates a previous research effort in the form of a generic software infrastructure called Collaborative Learning Purpose Library (CLPL) with the aim of meeting the current and demanding needs found in the CSCL domain. To this end, we experiment with the CLPL in order to offer an advanced reuse-based service-oriented software engineering methodology for developing CSCL applications in an effective and timely fashion. A validation process is provided by reporting on the use of the CLPL platform as the primary resource for the Master's thesis courses at the Open University of Catalonia when developing complex software applications in the CSCL domain. The ultimate aim of the whole research is to yield effective CSCL software systems capable of supporting and enhancing the current on-line collaborative learning practices.Peer ReviewedPostprint (author's final draft

    Agent-based Extensions for the UML Profile for Service-Oriented Architectures (UPMS-A)

    Get PDF
    Service-Oriented Architectures are today’s favorite answer to solve interoperability issues. As various kinds of systems can be used to implement Service-Oriented Architectures, the recent trend is to apply principles of Model-Driven Development by (i) modeling the Service-Oriented Architecture in an abstract manner and (ii) providing model transformations between this abstract specification and the underlying platform specific systems. As such, Multi-Agent Systems (MASs) became very popular as both, Service-Oriented Architectures and Multi-Agent Systems, share several commonalities. In this thesis, we compare the core building blocks of Multi-Agent Systems and a proposal for a standardized UML Profile and Metamodel for Services (UPMS) requested by the Object Management Group. The major objective of this investigation is to identify if SOA-Pro–the current submission under review–offers functionalities to allow modeling of Multi-Agent Systems adequately and if not to identify what kind of functionality is missing and how this functionality can be achieved. Interaction aspect in MASs describes how the interaction between autonomous entities or organizations take place. In our comparison we found that the ability to multicast messages is one feature that is lacking in UML Sequence Diagrams. This is an important feature or characteristic of agent interaction protocols. Here we show that SOA-Pro can easily be extended to support these kinds of functionalities

    INTEROP deliverable DTG 6.2 : Method repository

    Get PDF
    This deliverable presents the INTEROP method chunks repository (MCR), its architecture and provided services. It includes the definition of a reusable method chunk, its structure, illustrated with examples of method chunks stored in the repository and guidelines for method chunks definition and characterisation covering tasks TG6.2 and TG6.3 of the work plan of the task group. The main result is the definition of the structure of the method chunk repository emphasizing the link to interoperability. Interoperability is a first-class concept in the structure of the method chunk repository. It not only characterizes method chunks, i.e. procedures to solve interoperability problems, but also interoperability cases, i.e. the presentation of actual problems involving interoperability issues. TG 6 has produced three MCR prototypes. Two experiments were undertaken using the Metis system and one using ConceptBase. The task group attended a two-day intense workshop on Metis. As a result, two experiments with Metis as platform for the method chunk repository are under way and reported in this deliverable. One is realizing the structure of the MCR as specified in this report. The other is an alternative approach that serves as a benchmark and is reported in the appendix. The ConceptBase prototype utilizes the metamodel presented in this deliverable. We have analysed three cases involving various aspects of interoperability. One case is about establishing a broker platform for insurance agents, the second about linking the information systems in the public utility sector, and the third case is establishing the relation of the ATHENA Model-Driven Interoperability Framework to the goals of the MCR. The results of the TG6 have been published at the ISD conference 2006 and the ER conference 2006. Copies of the papers are included in the appendix. The report of the example session with the method chunk repository has been shifted towards deliverable TG6.3 (Tutorial of the MCR). This is the more logical place. We want to emphasize that TG6 was not only busy in drafting concepts, exploring the state of the art, and analyzing cases. We are actually experimenting with a prototype and consider this a valuable contribution to the network. As soon as the prototype is stable, knowledge about interoperability solutions can be coded in this repository and can guide designers of interoperable systems by experience knowledge

    A service-oriented cloud modeling method and process

    Get PDF
    The transition of software development from web to cloud has been accelerated. The development of cloud services requires a modeling method that reflects the characteristics of cloud including personalized service, resource sharing service, grouped and distributed services, and cross-platform operability. This study aimed to suggest a method of developing UML-based cloud services suitable for the characteristics of cloud services. A cloud service metamodel was defined using cloud applications’ characteristic modeling elements, and after that, how these cloud modeling elements are expressed into UML modeling elements was defined with an integrated metamodel between cloud and UML. By applying this hierarchical cloud metamodel, an MDA and MVC-based service-oriented cloud modeling process was established. By doing so, it will be possible to easily design services (applications) and solutions that are suitable for cloud computing environments, and in particular, to create hierarchical reuse models by the level of the abstraction of model-driven development
    corecore