196,013 research outputs found

    Pattern Reification as the Basis for Description-Driven Systems

    Full text link
    One of the main factors driving object-oriented software development for information systems is the requirement for systems to be tolerant to change. To address this issue in designing systems, this paper proposes a pattern-based, object-oriented, description-driven system (DDS) architecture as an extension to the standard UML four-layer meta-model. A DDS architecture is proposed in which aspects of both static and dynamic systems behavior can be captured via descriptive models and meta-models. The proposed architecture embodies four main elements - firstly, the adoption of a multi-layered meta-modeling architecture and reflective meta-level architecture, secondly the identification of four data modeling relationships that can be made explicit such that they can be modified dynamically, thirdly the identification of five design patterns which have emerged from practice and have proved essential in providing reusable building blocks for data management, and fourthly the encoding of the structural properties of the five design patterns by means of one fundamental pattern, the Graph pattern. A practical example of this philosophy, the CRISTAL project, is used to demonstrate the use of description-driven data objects to handle system evolution.Comment: 20 pages, 10 figure

    Reliability prediction in model driven development

    Get PDF
    Evaluating the implications of an architecture design early in the software development lifecycle is important in order to reduce costs of development. Reliability is an important concern with regard to the correct delivery of software system service. Recently, the UML Profile for Modeling Quality of Service has defined a set of UML extensions to represent dependability concerns (including reliability) and other non-functional requirements in early stages of the software development lifecycle. Our research has shown that these extensions are not comprehensive enough to support reliability analysis for model-driven software engineering, because the description of reliability characteristics in this profile lacks support for certain dynamic aspects that are essential in modeling reliability. In this work, we define a profile for reliability analysis by extending the UML 2.0 specification to support reliability prediction based on scenario specifications. A UML model specified using the profile is translated to a labelled transition system (LTS), which is used for automated reliability prediction and identification of implied scenarios; the results of this analysis are then fed back to the UML model. The result is a comprehensive framework for addressing software reliability modeling, including analysis and evolution of reliability predictions. We exemplify our approach using the Boiler System used in previous work and demonstrate how reliability analysis results can be integrated into UML models

    GRAI-ICE Model Driven Interoperability Architecture for Developing Interoperable ESA

    Get PDF
    International audienceThis paper presents GRAI-ICE Model Driven Interoperability Architecture (MDI) which is developed based on MDA (Model Driven Architecture) of OMG and some initial works performed in INTEROP NoE. This MDI architecture aims at supporting the development of changeable on-demand and interoperable ESA (Enterprise Software Application). The architecture defined five modelling levels, i.e., Top CIM, Bottom CIM, Object oriented PIM, Pattern oriented PSM, and Component and configuration oriented CODE. This paper presents in detail core concepts and rational of each modeling level. An application example in nuclear equipment industry is outlined

    Evaluating pedagogical practices supporting collaborative learning for model-based system development courses

    Get PDF
    Model-based software development (MBSD) has been widely used in industry for its effectiveness of code generation, code reuse and system evolution. At different stages of the software lifecycle, models -- as opposed to actual code -- are used as abstractions to present software development artifacts. In a university software engineering curriculum, compared to other concrete and tangible courses, e.g., game and app development, these levels of abstraction are often difficult for students to understand, and further, to see models' usefulness in practice. This paper presents an evaluation of pedagogical practices supporting collaborative learning for MBSD courses from experiences of teaching them at University of Oslo. The focus is to answer two research questions: 1) What are the challenges and possibilities when using a collaborative learning approach for teaching modelling and architecture? 2) What are the challenges and benefits of having a holistic approach to MBSD courses in light of the requirements of academia and the needs of industry? The term “holistic” is understood 1) as an approach that involves human factors (users), technology and processes, 2) as an approach to teaching MBSD courses where modelling for Enterprise Architecture is taught together with System Architecture and Model-Driven Language Engineering. Empirical data was collected through interviews, questionnaires, and document analysis. The paper’s research results show that three different course perspectives (Modeling for Enterprise Architecture with Business Architecture, System Architecture and Model Driven Language Engineering) are essential parts of teaching modeling courses, and an industry field study shows that industry sees the potential of having junior architects to provide support to a team and solving basic architectural problems

    Flexible Views for View-Based Model-Driven Development

    Get PDF
    ABSTRACT Model-driven development processes suffer from growing complexity, which leads to information spread across heterogeneous metamodels as well as drift and erosion between architecture and implementation. In this paper, we present a view-based modeling approach based on Orthographic Software Modeling (OSM), and introduce flexible views as a concept for the creation of custom, user-specific views. The envisioned benefit of the approach is to improve software quality, to increase consistency between the various modeling artifacts in model-driven software development, and to reduce the complexity for software developers

    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

    An Architecture Description Language for Embedded Hardware Platforms

    Get PDF
    Embedded software development relies on various tools - compilers, simulators, execution time estimators - that encapsulate a more-or-less detailed knowledge of the target hardware platform. These tools can be costly to develop and maintain:significant benefits could be expected if they were automatically generated from models expressed in a dedicated modeling language.In contrast with Hardware Description Languages (HDLs), that focus on the internal structure and behavior of an electronic board of chip, Hardware Architecture Description Languages consider hardware as a platform for software execution. Such a platform will be described in terms of low-level programming interface (processor instruction set),resources (processing elements, memory and peripheral devices) and elementary services (arithmetic and logic operations, bus transactions).This paper gives an overview of HARMLESS (Hardware ARchitecture Modeling Language for Embedded Software Simulation), a new domain-specific language for modeling embedded hardware platforms. HARMLESS and its associated tools follow the Model-Driven Engineering philosophy: metamodeling and model transformations have been successfully applied to the automatic generation of processor simulators

    An Architecture Description Language for Embedded Hardware Platforms

    Get PDF
    Embedded software development relies on various tools - compilers, simulators, execution time estimators - that encapsulate a more-or-less detailed knowledge of the target hardware platform. These tools can be costly to develop and maintain:significant benefits could be expected if they were automatically generated from models expressed in a dedicated modeling language.In contrast with Hardware Description Languages (HDLs), that focus on the internal structure and behavior of an electronic board of chip, Hardware Architecture Description Languages consider hardware as a platform for software execution. Such a platform will be described in terms of low-level programming interface (processor instruction set),resources (processing elements, memory and peripheral devices) and elementary services (arithmetic and logic operations, bus transactions).This paper gives an overview of HARMLESS (Hardware ARchitecture Modeling Language for Embedded Software Simulation), a new domain-specific language for modeling embedded hardware platforms. HARMLESS and its associated tools follow the Model-Driven Engineering philosophy: metamodeling and model transformations have been successfully applied to the automatic generation of processor simulators
    corecore