By Topic

Theoretical Aspects of Software Engineering (TASE), 2010 4th IEEE International Symposium on

Date 25-27 Aug. 2010

Filter Results

Displaying Results 1 - 25 of 34
  • [Front cover]

    Publication Year: 2010 , Page(s): C1
    Save to Project icon | Request Permissions | PDF file iconPDF (2369 KB)  
    Freely Available from IEEE
  • [Title page i]

    Publication Year: 2010 , Page(s): i
    Save to Project icon | Request Permissions | PDF file iconPDF (30 KB)  
    Freely Available from IEEE
  • [Title page iii]

    Publication Year: 2010 , Page(s): iii
    Save to Project icon | Request Permissions | PDF file iconPDF (147 KB)  
    Freely Available from IEEE
  • [Copyright notice]

    Publication Year: 2010 , Page(s): iv
    Save to Project icon | Request Permissions | PDF file iconPDF (168 KB)  
    Freely Available from IEEE
  • Table of contents

    Publication Year: 2010 , Page(s): v - vii
    Save to Project icon | Request Permissions | PDF file iconPDF (162 KB)  
    Freely Available from IEEE
  • Foreword

    Publication Year: 2010 , Page(s): viii
    Save to Project icon | Request Permissions | PDF file iconPDF (163 KB) |  | HTML iconHTML  
    Freely Available from IEEE
  • Organizing and Program Committees

    Publication Year: 2010 , Page(s): ix
    Save to Project icon | Request Permissions | PDF file iconPDF (137 KB)  
    Freely Available from IEEE
  • list-reviewer

    Publication Year: 2010 , Page(s): x
    Save to Project icon | Request Permissions | PDF file iconPDF (103 KB)  
    Freely Available from IEEE
  • Automated Test Case Generation of Self-Managing Policies for NASA Prototype Missions Developed with ASSL

    Publication Year: 2010 , Page(s): 3 - 8
    Save to Project icon | Request Permissions | Click to expandQuick Abstract | PDF file iconPDF (421 KB) |  | HTML iconHTML  

    Self-managing policies provide a self-management behavior for autonomic systems developed with ASSL (Autonomic System Specification Language). With ASSL we have successfully developed special autonomic prototypes of both the NASA ANTS (Autonomous Nano-Technology Swarm) concept mission and NASAs Voyager Mission. In these prototypes, we applied ASSL self-managing policies to drive the missions in critical situations in response to environmental or system changes. Therefore, the logical correctness of the ASSL specification of such policies appears to be of major importance. Experience has shown, however, that ASSL specifications may contain logical faults causing improper behavior. To handle such behavior, self-managing policies are often tested with manually injected inputs triggering events and satisfying constraints to allow for the activation, execution, and deactivation of these policies. The logical correctness of an ASSL self managing policy currently depends solely upon the relation between inputs and conclusion. In this paper, we present our initial work on a novel tool, part of the ASSL framework, that generates test cases based on change-impact analysis. Our main goal is to reduce testing costs and effort and improve the quality of testing, thus eventually assuring the logical correctness of the self-managing policies developed with ASSL. View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • The Art of Developing Autonomic Systems - The ASSL Approach

    Publication Year: 2010 , Page(s): 9 - 12
    Save to Project icon | Request Permissions | Click to expandQuick Abstract | PDF file iconPDF (313 KB) |  | HTML iconHTML  

    Autonomic Computing is a rapidly growing IT field that promises a new approach to developing largescale complex computing systems. The AC paradigm aims at handling complexity through self-management by transforming computing systems into autonomic systems. There are many kinds of knowledge that need to be considered for the development of autonomic systems. These are domain knowledge, control knowledge, explanatory knowledge, and system knowledge. Autonomic System Specification Language, or ASSL, is an AC-dedicated framework providing a powerful formal notation and computational tools that help developers with problem formation, system design, system analysis and evaluation, and system implementation. The ASSL framework provides a powerful formal notation and suitable mature tool support that allow ASSL specifications to be edited and validated and Java code to be generated from any valid formal specification. View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • A Formal Model for Service Choreography with Exception Handling and Finalization

    Publication Year: 2010 , Page(s): 15 - 24
    Save to Project icon | Request Permissions | Click to expandQuick Abstract | PDF file iconPDF (486 KB) |  | HTML iconHTML  

    The service choreography gives a global view on the collaboration among a collection of services involving multiple different organizations or independent processes. In this paper, a formal model for service choreography based on WS-CDL language is proposed. This model explores the key concepts related to choreography, such as passing channel, fault handling and finalization mechanisms. This study brings us the insights for the analysis, synthesis and verification of service choreography. For instance, the choreography synthesis is discussed based on our trace semantics achieved. View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • A Guarded Workflow Language and Its Formal Semantics

    Publication Year: 2010 , Page(s): 25 - 34
    Cited by:  Papers (3)
    Save to Project icon | Request Permissions | Click to expandQuick Abstract | PDF file iconPDF (421 KB) |  | HTML iconHTML  

    Many information systems hold data of considerable value, and are subject to complex constraints and business rules. In these systems, update operations are often carefully described, to the extent that it is possible to derive a formal specification of their applicability and effect. Where an update is performed by means of a workflow, as a combination of operations, then it may be advantageous to calculate properties of that workflow from the specifications of the operations involved. This paper introduces a formal notation for the description and analysis of workflows, similar to the well-known languages of guarded commands or generalised substitutions. This notation is given a behavioural semantics corresponding to a sequential, transformational view of the information system. This semantics can then be used to determine the suitability of proposed guards-constraints upon the enactment of workflows-and to establish whether one workflow will interfere with the progress of another. View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Proving Model Transformations

    Publication Year: 2010 , Page(s): 35 - 44
    Cited by:  Papers (4)
    Save to Project icon | Request Permissions | Click to expandQuick Abstract | PDF file iconPDF (373 KB) |  | HTML iconHTML  

    Within the MDA context, model transformations (MT) play an important role as they ensure consistency and significant time savings. Several MT frameworks have been deployed and successfully used in practice. Like for any software, the development of MT programs is error prone. However there is limited support for verification and validation in current MDA technologies. This paper presents an approach to prove model transformations. Model transformations are firstly formalized in B. Then the B provers will be used to analyze and prove the correctness of transformation rules w.r.t. met models and transformation invariants. We also analyze and prove the consistency of transformation rules w.r.t. each other. View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • A Certifying Compiler for Clike Subset of C Language

    Publication Year: 2010 , Page(s): 47 - 56
    Cited by:  Papers (1)
    Save to Project icon | Request Permissions | Click to expandQuick Abstract | PDF file iconPDF (566 KB) |  | HTML iconHTML  

    Proof-carrying code (PCC) is a technique that allows code consumers to check whether the code is safe to execute or not through a formal safety proof provided by the code producer. And a certifying compiler makes PCC practical by compiling annotated source code into low-level code and proofs. In this paper we present a certifying compiler for a subset of the C programming language, named Clike, with built-in automated theorem provers. Clike programs can be compiled by ANSI C compiler without any modification. Our compiler is intended to deal with data structures such as singly-linked lists, doubly-linked lists and trees. At the source level, we have designed a program logic combining a constrained first-order logic and a fragment of separation logic. We use a verification-condition-based method, and the generated verification conditions are sent to the built-in automated theorem prover. Our prover will generate proof terms when the input formula is valid. The low-level verification framework follows Hoare-style verification methods. The assembly code, its specification and proofs are generated automatically based on a variant of Stack-based Certifying Assembly Programming (SCAP). We implement our certifying compiler prototype in SML/NJ and build our prover libraries using the meta logic provided by Coq. We have used our prototype to successfully certify a considerable number of programs manipulating linked-lists and binary trees. View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Stack Bound Inference for Abstract Java Bytecode

    Publication Year: 2010 , Page(s): 57 - 66
    Save to Project icon | Request Permissions | Click to expandQuick Abstract | PDF file iconPDF (267 KB) |  | HTML iconHTML  

    Ubiquitous embedded systems are often resource-constrained. Developing software for these systems should take into account resources such as memory space. In this paper, we develop and implement an analysis framework to infer statically stack usage bounds for assembly-level programs in abstract Java Byte code. Our stack bound inference process, extended from a theoretical framework proposed earlier by some of the authors, is composed of deductive inference rules in multiple passes. Based on these rules, a usable tool has been developed for processing programs to capture the stack memory needs of each procedure in terms of the symbolic values of its parameters. The final result contains path-sensitive information to achieve better precision. The tool invokes a Presburger solver to perform fixed point analysis for loops and recursive procedures. Our initial experiments have confirmed the viability and power of the approach. View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • An Improved Algorithm for Building the Characterizing Set

    Publication Year: 2010 , Page(s): 67 - 74
    Save to Project icon | Request Permissions | Click to expandQuick Abstract | PDF file iconPDF (524 KB) |  | HTML iconHTML  

    FSM-based testing can obviously reduce the cost of test generation. So many FSM-based test generation methods have been presented to generate effective test sequences. Most of them need to construct the characterizing set of the FSM. However, there are two disadvantages in the existing algorithm for building the characterizing set. One is that time efficiency of the algorithm is hard access to our satisfaction. Another is that the obtained characterizing set may contain some redundancies. To overcome these two disadvantages, we propose the RTMD algorithm to obtain the characterizing set from the FSM, and give four theorems to ensure the correctness and effectiveness of the RTMD algorithm. Then we perform a case study to compare the existing algorithm with the RTMD algorithm. The results show that the RTMD algorithm has shorter time-consuming than the traditional algorithm as well as obtains more effective characterizing set. View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Runtime Verification with Multi-valued Formula Rewriting

    Publication Year: 2010 , Page(s): 77 - 86
    Cited by:  Papers (2)
    Save to Project icon | Request Permissions | Click to expandQuick Abstract | PDF file iconPDF (385 KB) |  | HTML iconHTML  

    Runtime verification is a promising method that tries to bridge the gap between formal methods and traditional testing. In this paper, we present an improved runtime verification method via multi-valued formula rewriting. A 3-valued executable semantics for finite trace LTL is formally defined, and an algorithm based on this new semantics is proposed and implemented in Maude, which is a high performance rewriting system. To improve the efficiency of our algorithm, we introduce a novel approximation technique, which reduces rewriting steps by sacrificing some abilities of detecting the satisfactions of LTL properties. Moreover, this technique provides a quick procedure for distinguishing non-monitor able properties from those can be monitored. Finally, experiments are conducted to show the strength and weakness of the presented method. View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Axiomatic Temporal Logic Programs Verification

    Publication Year: 2010 , Page(s): 87 - 94
    Save to Project icon | Request Permissions | Click to expandQuick Abstract | PDF file iconPDF (373 KB) |  | HTML iconHTML  

    In this paper, we investigate the axiomatic system of Modeling Simulation and Verification Language (MSVL). To this end, a set of state axioms and state inference rules is given. They are useful to deduce a program into its normal form. Further, a propositional projection temporal logic is used as assertion language to describe the required property of a program. Moreover, to deduce a program over an interval, a set of rules in terms of triple like Hoare logic is formalized. These rules enable us to deduce a program in its normal form at the current state to the next one and to verify safety, liveness properties over an interval. View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • On the Theoretical Foundation of Meta-Modelling in Graphically Extended BNF and First Order Logic

    Publication Year: 2010 , Page(s): 95 - 104
    Save to Project icon | Request Permissions | Click to expandQuick Abstract | PDF file iconPDF (535 KB) |  | HTML iconHTML  

    Meta-modeling plays an important role in model driven software development methodology. In our previous work, a graphic extension of BNF (GEBNF) was proposed to define the abstract syntax of graphic modeling languages. From a GEBNF syntax definition, a first order predicate logic language can be induced so that meta-modeling can be performed formally by specifying a predicate on the domain of syntactically valid models. In this paper, we investigate the theoretical foundation of this meta-modeling approach. We first formally define the semantics of GEBNF syntax definitions as algebras that contain no junk and satisfy constraints derived from GEBNF syntax rules. The semantics of the induced logic is then formally defined by regarding such algebras as models. We then formally prove that well-formed syntax definitions together with syntax morphisms form a category, where syntax morphisms represent the translations between modeling languages. The models (i.e. algebras) in a modeling language and the homomorphisms between them also form a category. Finally, we prove that the functors from GEBNF syntax definitions to the categories of models and to sentences in the induced first order logic form an institution. Therefore, GEBNF and its induced logics form a valid formal specification language for models. View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Modeling and Analysis of Reconfigurable Systems Using Flexible Petri Nets

    Publication Year: 2010 , Page(s): 107 - 116
    Save to Project icon | Request Permissions | Click to expandQuick Abstract | PDF file iconPDF (398 KB) |  | HTML iconHTML  

    Using Petri nets to model reconfigurable systems, where structure changes during runtime, have been one of the research axes in high level Petri nets domain. Numerous formalisms with different particularities have been proposed. These formalisms try to deal with some aspects of these systems. In the present paper, we propose a new PNets-based formalism “Flexible Nets” that we consider more general and more adequate to model reconfigurable systems. The current formalism allows to the net to be flexible and its structure can be changed with few constraints. Places, transitions, and arcs can be added and deleted from the net during its execution. These qualities will offer to the developer a sophisticated tool to model easily his system. We present the formal definition of the formalism, a case study on a real and complex system, and then we will discuss some analysis and verification issues. View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Property Checking for 1-Place-Unbounded Petri Nets

    Publication Year: 2010 , Page(s): 117 - 125
    Save to Project icon | Request Permissions | Click to expandQuick Abstract | PDF file iconPDF (432 KB) |  | HTML iconHTML  

    The reachability tree for an unbounded net system is infinite. By using ω symbol to represent infinitely many markings, coverability tree can provide a finite form. However, with too much information lost, it can not check properties such as reachability, deadlock freedom, liveness, etc. In this paper, an improved reachability tree (IRT for short) is constructed to enrich the ω representation for 1-place-unbounded nets. Based on the tree containing exactly all the reachable markings, an algorithm is proposed to check liveness of the system. View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Model Checking Rectangular Hybrid Systems with Timed Computation Tree Logic

    Publication Year: 2010 , Page(s): 126 - 131
    Cited by:  Papers (1)
    Save to Project icon | Request Permissions | Click to expandQuick Abstract | PDF file iconPDF (333 KB) |  | HTML iconHTML  

    To deal with the model checking issue of rectangular hybrid systems, a constraint system called hybrid zone is introduced for the representation and manipulation of rectangular hybrid automata state-spaces. Model checking procedures for rectangular hybrid systems based on timed computation tree logic are given. The hybrid zone is proved to be closed to the operations required in these model checking procedures, which enables it to be used as the basis for the infinite state-space exploring of rectangular hybrid automata. To represent hybrid zones, a data structure difference constraint matrix is introduced. View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Bisimulations for Open Processes in Higher Order p-Calculus

    Publication Year: 2010 , Page(s): 135 - 144
    Save to Project icon | Request Permissions | Click to expandQuick Abstract | PDF file iconPDF (425 KB) |  | HTML iconHTML  

    In this paper, we propose open bisimulations for open processes in higher order π-calculus. The equivalence of open bisimulations and other bisimulations for open processes is proved. Furthermore, we present a symbolic operational semantics of higher order open processes, and give some symbolic bisimulations for higher order processes. The relation between symbolic bisimulations and other bisimulations is also studied. At last, we introduce a higher order π-calculus with sum and conditional operators, then we study open bisimulations and symbolic bisimulations for this calculus. View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Specification, Verification and Implementation of Business Processes Using CSP

    Publication Year: 2010 , Page(s): 145 - 154
    Save to Project icon | Request Permissions | Click to expandQuick Abstract | PDF file iconPDF (435 KB) |  | HTML iconHTML  

    Nowadays, the problem in business process management (BPM) is that BPM systems should both be easy to use for business process developers and be based on a sound formal method. Business process management systems are often based on semiformal modeling techniques such as event-driven process chains (EPC) or UML. Unlike semiformal modeling techniques, the process calculus CSP comes with mature verification support. Surprisingly little work has been done on using CSP for business process modeling and management. In this paper, we present our approach to business process management, which is based on the observation that CSP is well suited not only for specifying business processes and verifying workflows but also for executing workflows using our CSP4J framework. We report on a workflow server, which is specified in CSP and implemented using our CSP4J framework. The server accepts workflows that are modeled in CSP and also implemented using CSP4J. This allows us to integrate the mature verification support of CSP into both the management system itself and the development process of the end users' business process definitions. View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Incremental Invariant Generation for Compositional Design

    Publication Year: 2010 , Page(s): 157 - 167
    Cited by:  Papers (6)
    Save to Project icon | Request Permissions | Click to expandQuick Abstract | PDF file iconPDF (458 KB) |  | HTML iconHTML  

    We consider a compositional method for the verification of component-based systems described in a subset of the BIP language encompassing multi-party interactions. The method is based on the use of two kinds of invariants. Component invariants are over-approximations of components' reach ability sets. Interaction invariants are constraints on the states of components involved in interactions. In this paper we propose fixed point characterization for computing interaction invariants. We also propose a new technique that takes the incremental design of the system into account. In many situations, the technique will help to avoid redoing all the verification process each time an interaction is added in the design. Our two techniques have been implemented as extension of the D-Finder toolset. The result has been applied to check deadlock-freedom on several case studies. Our experiments show that our new methodology is generally much faster than existing ones. View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.