820 research outputs found

    Formalization and Verification of Hierarchical Use of Interaction Overview Diagrams Using Timing Diagrams

    Full text link
    Thanks to its graphical notation and simplicity, Unified Modeling Language (UML) is a de facto standard and a widespread language used in both industry and academia, despite the fact that its semantics is still informal. The Interaction Overview Diagram (IOD) is introduced in UML2; it allows the specification of the behavior in the hierarchical way. This paper is a contribution towards a formal dynamic semantics of UML2. We start by formalizing the Hierarchical use of IOD. Afterward, we complete the mapping of IOD, Sequence Diagrams and Timing Diagrams into Hierarchical Colored Petri Nets (HCPNs) using the Timed colored Petri Nets (timed CP-net). Our approach helps designers to get benefits from abstraction as well as refinement at more than two levels of hierarchy which reduces verification complexity.Comment: 8 pages, 6 figure

    A Feature Computation Tree Model to Specify Requirements and Reuse

    Get PDF
    A large subset of requirements for complex systems, services and product lines is traditionally specified by hierarchical structures of features. Features are usually gathered and represented in the form of a feature tree. The feature tree is a structural model. It represents mainly composition and specialization relations between features and does not provide the possibility to specify requirements in the form of ordering relations defined on functional features. Use case scenarios are usually employed for specification of the ordering relations. However, use case scenarios comprise isolated sequences of features, and therefore they may be inconsistent and even may contradict each other and the feature tree. Moreover, some use case scenarios defining relations on features may be incomplete. In order to support consistent specification of requirements, we suggest using a pair of related models: a feature tree model and a feature computation tree model. The pair of such related feature tree models provides the basis for the method of consistency checks of requirements. It introduces a united view on the system’s behavior at the stage of requirement specification and facilitates specification of forbidden sequences and construction complete sequences from incomplete ones. It allows designers to precisely specify the desired reuse and to find that a certain sort of reuse is not possible. Understanding already at the stage of requirements engineering that a subsystem cannot be reused without modification saves effort and money spent on development. The proposed method and models are explained using a case study of design of a system for electronic cards production

    On formalizing UML2 activities using TPNets: case studies

    Get PDF
    ABSTRACT: Transactional Petri Nets (TPNets) are a new class of high-level Zero-Safe Nets (ZSNs), defined as a more suitable semantic framework for UML2 activity diagrams. Indeed, they ensure reactivity and synchronization of concurrent flows triggering with their junction. Reactivity is guaranteed due to the real time massive cancellation semantics based on the definition of new dynamic enabling rules and the imposed priority among executions. Global synchronization in turn is assured thanks to non-locality principle, an outcome of exploiting atomic stable transactions. Rewriting logic is defined as the operational semantics framework of TPNets

    Petri Nets as Semantic Domain for Diagram Notations

    Get PDF
    AbstractThis paper summarizes the work carried out by the authors during the last years. It proposes an approach for defining extensible and flexible formal interpreters for diagram notations based on high-level timed Petri nets.The approach defines interpreters by means of two sets of rules. The first set specifies the correspondences between the elements of the diagram notation and those of the semantic domain (Petri nets); the second set transforms events and states of the semantic domain into visual annotations on the elements of the diagram notation. The feasibility of the approach is demonstrated through MetaEnv, a prototype tool that allows users to implement special-purpose interpreters

    Integrated Modeling and Verification of Real-Time Systems through Multiple Paradigms

    Get PDF
    Complex systems typically have many different parts and facets, with different characteristics. In a multi-paradigm approach to modeling, formalisms with different natures are used in combination to describe complementary parts and aspects of the system. This can have a beneficial impact on the modeling activity, as different paradigms an be better suited to describe different aspects of the system. While each paradigm provides a different view on the many facets of the system, it is of paramount importance that a coherent comprehensive model emerges from the combination of the various partial descriptions. In this paper we present a technique to model different aspects of the same system with different formalisms, while keeping the various models tightly integrated with one another. In addition, our approach leverages the flexibility provided by a bounded satisfiability checker to encode the verification problem of the integrated model in the propositional satisfiability (SAT) problem; this allows users to carry out formal verification activities both on the whole model and on parts thereof. The effectiveness of the approach is illustrated through the example of a monitoring system.Comment: 27 page

    Designing tool support for translating use cases and UML 2.0 Sequence Diagrams into a Coloured Petri Net

    Get PDF
    Using a case study on the specification of an elevator controller, this paper presents an approach that can translate given UML descriptions into a Coloured Petri Net (CPN) model. The UML descriptions must be specified in the form of Use Cases and UML 2.0 Sequence Diagrams. The CPN model constitutes one single, coherent and executable representation of all possible behaviours that are specified by the given UML artefacts. CPNs consitute a formal modelling language that enables construction and analysis of scalable, executable models of behaviour. A combined use of UML and CPN can be useful in several projects. CPN is well supported by CPN Tools and the work we present here is aimed at building a CPN Tools front-end engine that implements the proposed translation.Fundação para a Ciência e a Tecnologia (FCT) - SFRH/BSAB/607/200

    Formal Object Interaction Language: Modeling and Verification of Sequential and Concurrent Object-Oriented Software

    Get PDF
    As software systems become larger and more complex, developers require the ability to model abstract concepts while ensuring consistency across the entire project. The internet has changed the nature of software by increasing the desire for software deployment across multiple distributed platforms. Finally, increased dependence on technology requires assurance that designed software will perform its intended function. This thesis introduces the Formal Object Interaction Language (FOIL). FOIL is a new object-oriented modeling language specifically designed to address the cumulative shortcomings of existing modeling techniques. FOIL graphically displays software structure, sequential and concurrent behavior, process, and interaction in a simple unified notation, and has an algebraic representation based on a derivative of the π-calculus. The thesis documents the technique in which FOIL software models can be mathematically verified to anticipate deadlocks, ensure consistency, and determine object state reachability. Scalability is offered through the concept of behavioral inheritance; and, FOIL’s inherent support for modeling concurrent behavior and all known workflow patterns is demonstrated. The concepts of process achievability, process complete achievability, and process determinism are introduced with an algorithm for simulating the execution of a FOIL object model using a FOIL process model. Finally, a technique for using a FOIL process model as a constraint on FOIL object system execution is offered as a method to ensure that object-oriented systems modeled in FOIL will complete their processes based activities. FOIL’s capabilities are compared and contrasted with an extensive array of current software modeling techniques. FOIL is ideally suited for data-aware, behavior based systems such as interactive or process management software

    Transforming nested structures of flowchart into hierarchical coloured Petri Nets

    Get PDF
    Flowchart is commonly used diagram to represent the processes in design phase of a software system. However, the flowchart of a complex software system inevitably contains the nested structures of branching and looping of the processes. The verification of these nested structure of the flowchart in advance is still difficult to conduct even using simulation techniques. In this paper, we intend to consider the complex flowchart with nested structures, so called nested-if and nested-loop, as our input design model. A set of mapping rules is proposed to transform the input complex flowchart with nested structures into the hierarchical coloured Petri nets to avoid the drawing of a single huge net of complicate model. The hierarchical coloured Petri nets also provides us to manage level of abstraction of the formal model and helps us concentrate on only an appropriate detail at a time. In our transforming approach, both data flow and control flow of the processes in flowchart are concerned as well so that all changing states of the observable variables in the flowchart would be represented and simulated in our resulting hierarchical coloured Petri nets. The CPN simulation tool is used to test and ensure the correctness of our resulting hierarchical coloured Petri nets
    • …
    corecore