By Topic

Theoretical Aspects of Software Engineering (TASE), 2012 Sixth International Symposium on

Date 4-6 July 2012

Filter Results

Displaying Results 1 - 25 of 52
  • [Cover art]

    Page(s): C4
    Save to Project icon | Request Permissions | PDF file iconPDF (463 KB)  
    Freely Available from IEEE
  • [Title page i]

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

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

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

    Page(s): v - viii
    Save to Project icon | Request Permissions | PDF file iconPDF (174 KB)  
    Freely Available from IEEE
  • Preface

    Page(s): ix
    Save to Project icon | Request Permissions | PDF file iconPDF (133 KB)  
    Freely Available from IEEE
  • Committee Lists

    Page(s): x - xi
    Save to Project icon | Request Permissions | PDF file iconPDF (146 KB)  
    Freely Available from IEEE
  • Additional reviewers

    Page(s): xii
    Save to Project icon | Request Permissions | PDF file iconPDF (67 KB)  
    Freely Available from IEEE
  • Overview of TASE 2012 Talk on Search Based Software Engineering

    Page(s): 3 - 4
    Save to Project icon | Request Permissions | Click to expandQuick Abstract | PDF file iconPDF (212 KB) |  | HTML iconHTML  

    This is an overview of the keynote presentation on SBSE at the Sixth IEEE International Symposium on Theoretical Aspects of Software Engineering (TASE 2012), held on the 4th-6th July 2012 in Beijing, China. View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • From Verification to Specification Inference

    Page(s): 5 - 6
    Save to Project icon | Request Permissions | Click to expandQuick Abstract | PDF file iconPDF (195 KB) |  | HTML iconHTML  

    Traditionally, the focus of specification mechanism has been on improving its ability to cover a wider range of problems more accurately, while the effectiveness of verification is left to the underlying theorem provers. Our work attempts a novel approach, where the focus is on designing good specification mechanisms to achieve better expressivity (the specification should capture more accurately and concisely the functionality of the corresponding code) and better verifiability (the verification process should succeed in more scenarios than the corresponding verification without the specification enhancements, with better or similar performance). Moreover, we are also interested in providing the necessary tools to assist the user with the important but tedious task of constructing desired specifications. Existing approaches to specification construction tend to be either fully manual or fully automatic. We propose a new framework for specification construction that can be done selectively and incrementally. This framework allows preconditions and postconditions to be selectively inferred via a set of specified variables, that included synthesis for unknown functions and relations. View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Symbolic Model Checking for Propositional Projection Temporal Logic

    Page(s): 9 - 16
    Save to Project icon | Request Permissions | Click to expandQuick Abstract | PDF file iconPDF (283 KB) |  | HTML iconHTML  

    This paper presents a symbolic model checking algorithm for Propositional Projection Temporal Logic (PPTL). Within this method, the model of a system is specified by a Kripke structure M, and the desired property is specified in a PPTL formula P. First, M is symbolically represented with boolean functions while -P is transformed into its normal form. Then the set of states in M that satisfies -P, namely Sat(-P), is computed recursively with respect to the transition relations. Thus, whether the system satisfies the property can be equivalently checked by determining the emptiness of Sat(-P). All the operations above can be implemented by a graph algorithm operated on ROBDDs. View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Formal Specification and Probabilistic Verification of SysML Activity Diagrams

    Page(s): 17 - 24
    Save to Project icon | Request Permissions | Click to expandQuick Abstract | PDF file iconPDF (445 KB) |  | HTML iconHTML  

    Model-driven engineering refers to a range of engineering approaches that uses models throughout systems and software development life cycle. Towards sustaining the success in practice of model-driven engineering, we present a probabilistic verification framework supporting the analysis of SysML activity diagrams against a set of quantitative and qualitative requirements. To this end, we propose an algorithm that maps SysML activity diagrams into probabilistic models, specifically Markov decision processes, expressed in the probabilistic symbolic model-checker (PRISM) language. The generated model can be verified against a set of properties expressed in the probabilistic computation tree logic. In order to automate our approach, we developed a prototype tool that interfaces both a modeling environment and the model-checker PRISM. In order to illustrate the usability and benefit of our approach, we investigate its scalability and present a case study. View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Modelling and Analysis of Smart Grid: A Stochastic Model Checking Case Study

    Page(s): 25 - 32
    Save to Project icon | Request Permissions | Click to expandQuick Abstract | PDF file iconPDF (573 KB) |  | HTML iconHTML  

    Cyber-physical systems integrate information and communication technology functions to the physical elements of a system for monitoring and controlling purposes. The conversion of traditional power grid into a smart grid, a fundamental example of a cyber-physical system, raises a number of issues that require novel methods and applications. In this context, an important issue is the verification of certain quantitative properties of the system. In this paper, we consider a specific Chinese Smart Grid implementation as a case study and address the verification problem for performance and energy consumption. We employ stochastic model checking approach and present our modelling and analysis study using PRISM model checker. View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Strong Preservation by Model Deformation

    Page(s): 33 - 40
    Save to Project icon | Request Permissions | Click to expandQuick Abstract | PDF file iconPDF (344 KB) |  | HTML iconHTML  

    Reliable and secure system design requires an increasing number of methods, algorithms, and tools for automatic program manipulation. Any program change corresponds to a transformation that affects the semantics at some given level of abstraction. We call these techniques model deformations. In this paper we propose a mathematical foundation for completeness-driven deformations of transition systems w.r.t. a given abstraction, and we introduce an algorithm for systematic deformation of Kripke structures for inducing strong preservation in abstract model checking. We prove that our model deformations are deeply related with must and may transitions in modal transition systems. View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Formal Verification of Netlog Protocols

    Page(s): 43 - 50
    Save to Project icon | Request Permissions | Click to expandQuick Abstract | PDF file iconPDF (266 KB)  

    Data centric languages, such as recursive rule based languages, have been proposed to program distributed applications over networks. They greatly simplify the code, while still admitting efficient distributed execution, including on sensor networks. From previous work [1], we know that they also provide a promising approach to another tough issue about distributed protocols: their formal verification. Indeed, we can take advantage of their data centric orientation, which allows us to explicitly handle global structures such as the topology of the network. We illustrate here our approach on two non-trivial protocols and discuss its Coq implementation. View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Automated Verification of the FreeRTOS Scheduler in HIP/SLEEK

    Page(s): 51 - 58
    Save to Project icon | Request Permissions | Click to expandQuick Abstract | PDF file iconPDF (261 KB) |  | HTML iconHTML  

    Automated verification of operating system kernels is a challenging problem, partly due to the use of shared mutable data structures. In this paper, we show how we can automatically verify memory safety and functional correctness of the task scheduler component of the FreeRTOS kernel using the verification system HIP/SLEEK. We show how some of HIP/SLEEK features like user-defined predicates and lemmas make the specifications highly expressive and the verification process viable. To the best of our knowledge, this is the first code-level verification of memory safety and functional correctness properties of the FreeRTOS scheduler. The outcome of our experiment confirms that HIP/SLEEK can indeed be used to verify code that is used in production. Moreover, since the properties that we verify are quite general, we envisage that the same approach can be adopted to verify the scheduler of other operating systems. View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Formal Specification of Hybrid MARTE Statecharts

    Page(s): 59 - 66
    Save to Project icon | Request Permissions | Click to expandQuick Abstract | PDF file iconPDF (317 KB) |  | HTML iconHTML  

    The specification of Modeling and Analysis of Real-time and Embedded Systems (MARTE) is an extension of UML in the domain of real-time and embedded Systems. However, unified modeling of continuous and discrete variables in MARTE is still an unsolved problem for hybrid real-time system development. In this paper we propose an extended statechart, Hybrid MARTE statechart, for modeling and analyzing of hybrid real-time and embedded systems. In Hybrid MARTE Statecharts, we unify the logical time and the chronometric time variables. The improvement of MARTE statechart is based on hybrid automata. Formal syntax and semantics of Hybrid MARTE statecharts are given based on labeled transition systems. At the end of this paper, a case study is given to show how to model the behavior of a Train Control System with Hybrid MARTE statecharts. View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Incorporating Constraints to Software System Survivability Specification and Proof

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

    In component-based and model-driven approaches for software engineering, any software components or subsystems acquired from external sources must meet a user's criteria to ascertain that they will not compromise the survivability properties of the existing systems. In this paper, we study survivability compliance specification and verification in a proof-carrying scenario: a user defines survivability requirements for a software system to be acquired or linked to the existing systems. The system provider compiles a proof, which is sent to the user who simply needs to check it. We present a new formalism, i.e., a constraint annotated logic in which arbitrary user requirements and constraints for system survivability features can be represented and reasoned. We provide a formal design of a constraint domain and extend a proof-carrying survivability logic so that user-defined constraints can be enforced by prohibiting logical inferences that would violate these constraints. In our model, the interplay between a constraint domain and the logical reasoning process is directly supported by the logic rules. Experiments and analysis show that the proposed model is a powerful formalism in reasoning hybrid domains between users' constrained requirements and system survivability properties. View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • A Logic for Accumulated-Weight Reasoning on Multiweighted Modal Automata

    Page(s): 77 - 84
    Save to Project icon | Request Permissions | Click to expandQuick Abstract | PDF file iconPDF (248 KB) |  | HTML iconHTML  

    Multiweighted modal automata provide a specification theory for multiweighted transition systems that have recently attracted interest in the context of energy games. We propose a simple fragment of CTL that is able to express properties about accumulated weights along maximal runs of multiweighted modal automata. Our logic is equipped with a game-based semantics and guarantees both soundness (formula satisfaction is propagated to the modal refinements) as well as completeness (formula non-satisfaction is propagated to at least one of its implementations). We augment our theory with a summary of decidability and complexity results of the generalized model checking problem, asking whether a specification-abstracting the whole set of its implementations-satisfies a given formula. View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Frequency Linear-time Temporal Logic

    Page(s): 85 - 92
    Save to Project icon | Request Permissions | Click to expandQuick Abstract | PDF file iconPDF (264 KB) |  | HTML iconHTML  

    We propose fLTL, an extension to linear-time temporal logic (LTL) that allows for expressing relative frequencies by a generalization of temporal operators. This facilitates the specification of requirements such as the deadlines in a realtime system must be met in at least 95% of all cases. For our novel logic, we establish an undecidability result regarding the satisfiability problem but identify a decidable fragment which strictly increases the expressiveness of LTL by allowing, e.g., to express non-context-free properties. View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • A Calculus of Higher Order Safe Ambients and Its Bisimulations

    Page(s): 93 - 100
    Save to Project icon | Request Permissions | Click to expandQuick Abstract | PDF file iconPDF (344 KB) |  | HTML iconHTML  

    In this paper, we present a higher order ambient calculus HSAP, which is a higher order extension of SAP calculus. In HSAP, we extend higher order communication capability and administrator interaction capability. Higher order communication capability means that an ambients can be send to another ambients. Administrator interaction capability means that an ambients can interact with any ambients if the password is matched. Then, we give a LTS based operational semantics for HSAP and two labelled bisimulations, called early bisimulation and late bisimulation. Early bisimulation is proved to coincide with reduction barbed congruence. Furthermore, we present late bisimulation, quasi late bisimulation, concise quasi late bisimulation and quasi normal bisimulation for HSAP and study the relation between these bisimulations. Finally, we study the expressiveness of HSAP. View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • An Improved Full Abstraction Approach to Analyzing Locality Semantics

    Page(s): 101 - 108
    Save to Project icon | Request Permissions | Click to expandQuick Abstract | PDF file iconPDF (233 KB) |  | HTML iconHTML  

    Concurrency semantics plays an important role in both concurrency theory and software engineering. Although many results on various concurrency semantics have been proposed, there is still room for improvement. This paper focuses on the locality semantics, an important non-interleaving semantics, based on studying the relationship between the located CCS and the π-calculus. We present a practical full abstraction result for the locality semantics, and reduce the location bisimulation of the located CCS to the observation bisimulation of the π-calculus. The full abstraction result respects process finiteness, i.e., finite processes of the located CCS are mapped onto finite π-processes. As a result, the location bisimulation on finite processes of the located CCS can be proved by an existing proof system on finite π-processes, which is not achieved in [31]. View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Model-Based Test Generation Using Evolutional Symbolic Grammar

    Page(s): 111 - 118
    Save to Project icon | Request Permissions | Click to expandQuick Abstract | PDF file iconPDF (364 KB) |  | HTML iconHTML  

    We present a new model-based test generation approach using an extended symbolic grammar, which is used as a formal notation for enumerating test cases for communication and reactive systems. Our model-based test generation approach takes inputs a reactive system model, in Live Sequence Charts (LSCs), and a general symbolic grammar serving as preliminary test coverage criteria, performs an automatic simulation for consistency testing on the LSC model specification, and eventually generates an evolved symbolic grammar with relined test coverage criteria. The evolved symbolic grammar can either be used to generate practical test cases for software testing, or be further relined by applying our model-based test generation approach again with additional test coverage criteria. View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Integrating Model-Based Testing and Analysis Tools via Test Case Exchange

    Page(s): 119 - 126
    Save to Project icon | Request Permissions | Click to expandQuick Abstract | PDF file iconPDF (439 KB) |  | HTML iconHTML  

    Europe's industry in embedded system design is currently aiming for a better integration of tools that support their development, validation and verification processes. The idea is to combine model-driven development with model-based testing and model-based analysis. The interoperability of tools shall be achieved with the help of meta-models that facilitate the mapping between different modelling notations. However, the syntactic and semantic integration of tools is a complex and costly task. A common problem is that different tools support different subsets of a language. Furthermore, semantic differences are a major obstacle to sound integration efforts. In this paper we advocate an alternative, more pragmatic approach. We propose the exchange of test cases generated from the models instead of exchanging the models themselves. The advantage is that test cases have a much simpler syntax and semantics, and hence, the mapping between different tools is easier to implement and to maintain. With a formal testing approach with adequate testing criteria a set of test cases can be viewed as partial models that can be formally analysed. We demonstrate an integration of our test case generator Ulysses with the CADP toolbox by means of test case exchange. We generate test cases in Ulysses and verify properties in CADP. We also generate test cases in CADP and perform a mutation analysis in Ulysses. View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Regression Test Cases Generation Based on Automatic Model Revision

    Page(s): 127 - 134
    Save to Project icon | Request Permissions | Click to expandQuick Abstract | PDF file iconPDF (864 KB) |  | HTML iconHTML  

    Regression testing is a widely used way to assure the quality of modified software. It requires executing a suite of test cases to ensure that modifications do not introduce any negative impact to software behavior. To collect test cases in the suite that can reveal modifications, different versions of software must be compared carefully. Existing approaches, relying on manual examination on programs or models to identify differences, are expensive. In the paper, we present a fully automatic approach to generating regression test cases based on activity diagram revision. By collecting execution traces and revising old activity diagrams, the approach firstly constructs new activity diagrams that can reveal software behavior changes. Then, both affected paths and new paths in activity diagrams are identified. Finally, an execution-based approach is applied to generate regression test cases whose execution can cover these paths. Experiments show the effectiveness of our approach. View full abstract»

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