127 research outputs found

    Software Architecture Description & UML Workshop

    Get PDF

    A Graph Transformation Approach for Modeling and Verification of UML 2.0 Sequence Diagrams

    Get PDF
    Unified Modeling Language (UML) 2.0 Sequence Diagrams (UML 2.0 SD) are used to describe interactions in software systems. These diagrams must be verified in the early stages of software development process to guarantee the production of a reliable system. However, UML 2.0 SD lack formal semantics as all UML specifications, which makes their verification difficult, especially if we are modeling a critical system where the automation of verification is necessary. Communicating Sequential Processes (CSP) is a formal specification language that is suited for analysis and has many automatic verification tools. Thus, UML and CSP have complementary aspects, which are modeling and analysis. Recently, a formalization of UML 2.0 SD using CSP has been proposed in the literature; however, no automation of that formalization exists. In this paper, we propose an approach on the basis of the above formalization and a visual modeling tool to model and automatically transform UML 2.0 SD to CSP ones; thus, the existing CSP model checker can verify them. This approach aims to use UML 2.0 SD for modeling and CSP and its tools for verification. This approach is based on graph transformation, which uses AToM3 tool and proposes a metamodel of UML 2.0 SD and a graph grammar to perform the mapping of the latter into CSP. Failures-Divergence Refinement (FDR) is the model checking tool used to verify the behavioral properties of the source model transformation such as deadlock, livelock and determinism. The proposed approach and tool are illustrated through a case study

    Non-functional property analysis using UML2.0 and model transformations

    Get PDF
    Real-time embedded architectures consist of software and hardware parts. Meeting non-functional constraints (e.g., real-time constraints) greatly depends on the mappings from the system functionalities to software and hardware components. Thus, there is a strong demand for precise architecture and allocation modeling, amenable to performance analysis. The report proposes a model-driven approach for the assessment of the quality of allocations of the system functionalities to the architecture. We consider two technical domains: the UML domain for the definition of the model elements (for both description and analysis), and an analysis domain, external to UML, used for formal verification. This report defines three meta-models, one for each domain, and provides automated transformations within and between these domains. A special attention is then paid to temporal property analysis, based on a particular analysis model: the Modular and Hierarchical Time Petri Nets

    Modeling, Simulation and Emulation of Intelligent Domotic Environments

    Get PDF
    Intelligent Domotic Environments are a promising approach, based on semantic models and commercially off-the-shelf domotic technologies, to realize new intelligent buildings, but such complexity requires innovative design methodologies and tools for ensuring correctness. Suitable simulation and emulation approaches and tools must be adopted to allow designers to experiment with their ideas and to incrementally verify designed policies in a scenario where the environment is partly emulated and partly composed of real devices. This paper describes a framework, which exploits UML2.0 state diagrams for automatic generation of device simulators from ontology-based descriptions of domotic environments. The DogSim simulator may simulate a complete building automation system in software, or may be integrated in the Dog Gateway, allowing partial simulation of virtual devices alongside with real devices. Experiments on a real home show that the approach is feasible and can easily address both simulation and emulation requirement

    Non-functional property analysis using UML2.0 and model transformations

    Get PDF
    Real-time embedded architectures consist of software and hardware parts. Meeting non-functional constraints (e.g., real-time constraints) greatly depends on the mappings from the system functionalities to software and hardware components. Thus, there is a strong demand for precise architecture and allocation modeling, amenable to performance analysis. The report proposes a model-driven approach for the assessment of the quality of allocations of the system functionalities to the architecture. We consider two technical domains: the UML domain for the definition of the model elements (for both description and analysis), and an analysis domain, external to UML, used for formal verification. This report defines three meta-models, one for each domain, and provides automated transformations within and between these domains. A special attention is then paid to temporal property analysis, based on a particular analysis model: the Modular and Hierarchical Time Petri Nets

    A thread-tag based semantics for sequence diagrams

    Get PDF
    The sequence diagram is one of the most popular behaviour modelling languages which offers an intuitive and visual way of describing expected behaviour of object-oriented software. Much research work has investigated ways of providing a formal semantics for sequence diagrams. However, these proposed semantics may not properly interpret sequence diagrams when lifelines do not correspond to threads of controls. In this paper, we address this problem and propose a thread-tag based sequence diagram as a solution. A formal, partially ordered multiset based semantics for the thread-tag based sequence diagrams is proposed

    Model-Driven Software Development

    Get PDF
    Model-Driven Software Development (MDSD) is an emerging technology approach that has potential to revolutionize the software industry. MDSD has the ability to both increase software delivery velocity, while at the same time reduce complexity and reuse software assets. Experts in the field believe that the MDSD approach helps to abstract away the growing interdependencies of enterprise software development by use of sophisticated tools, models, and automatic code generation. Through the use of Unified Modeling Language (UML/UML2) and other related technologies, the models are intricate enough to fully represent a system domain and then generate system code to represent that system. The case study evaluates the key factors of velocity, modeling complexity, code generation, and code completeness. Using both Model-Driven Software Development and so-called traditional methods of development, both techniques were applied against a real-world system for First United Methodist Church Children\u27s Ministry. The two techniques were measured and critiqued for their effect on the software development. Future direction of MDSD and potential impacts are presented

    An affinity analysis based CIM-to-PIM transformation

    Get PDF
    To tackle the problems such as the imperfection and inconsistency in software requirements in traditional Computation Independent Model (CIM) modelling, the low degree of automation as well as the imperfection in the description of Platform Independent Model (PIM) in CIM-to-PIM transforming, in this article, we propose a Business-Process-based CIM modelling method and a CIM-to-PIM transformation approach. Business Process Model is used to express CIM, and UML‘s Sequence Diagram, State Chart Diagram as well as Class Diagram are used to express PIM. Firstly, the users’ requirements are obtained through business process models. We extract use cases from business processes and create use case specifications. A verification mechanism is also added for the use case specification. Secondly, we transform CIMs into PIMs automatically with use case specifications as the inputs as well as combining with use case based thinking, responsibility based thinking and affinity analysis. Finally, by comparing with the methods in other studies, we conclude that methods proposed in this article can ensure model integrity and increase the degree of model transformation automation
    corecore