EASST-LOGO





European Association of Software Science and Technology (EASST)



Award Abstracts

 

"To Store or Not To Store" Reloaded: Reclaiming Memory on Demand .
FMICS 2006, August 25 -  27, 2006. Bonn (Germany).
Michael Weber and Moritz Hammer.

Model checking of industrial-scale models is usually restricted by memory size. The research addressing this issue can be divided into two groups: Automatically making models smaller by abstraction, and getting more out of the memory available. While the former direction has seen signicant improvements with the advent of CEGAR model checking [3], large-scale model checking still remains an important area of research. In explicit-state model checking, memory size is mostly restricted by the hash table used to detect state revisits. Among the many solutions to this problem, disk-based model checking and lossy hash tables have been proposed. Disk-based model checking basically tries to get a bigger hash table by swapping states to disk. As disk space is much cheaper than RAM, larger state spaces can be checked on normal systems. Disk storage is of course much slower, especially in random-access mode, which establishes the need for adapted algorithms. Lossy hashing makes use of the observation that the hash table is used for avoiding revisits of parts of the state space that have been visited before. While revisiting is costly with respect to runtime, it does not void the correctness of the search result, as long as the hash table is sufcient to ensure termination. Therefore, it can be attempted to remove states from the lossy hash table in order to reclaim their memory and make room for further, hopefully newly discovered states. Behrmann et al. [1] claim that only 10% of the state space needs to be stored, allowing for much larger search spaces; however this will lead to extensive revisits in our experience. Both directions have been given much research, but they have not yet been combined. Disk-based model checking usually does not make attempts to check a model in RAM only, should it turn out to be small enough. Lossy hashing, on the other hand, does not attempt to avoid revisits. By combining both strategies, we obtain an algorithm that avoids extensive revisits by doing disk lookups, but runs in RAM only as long as this is sufcient. This leads to a smoothly degrading algorithm, which adaptively changes its use of memory: For smaller models, it is little different from a RAM-only model checker, and it gradually becomes a disk-based model checker if memory becomes scarce.

GPSL: A Programming Language for Service Implementation.
ETAPS 2006, March 25 -  April 2, 2006. Vienna (Austria).
Dominic Cooney, Marlon Dumas, and Paul Roe.

At present, there is a dichotomy of approaches to supporting web service implementation: extending mainstream programming languages with libraries and metadata notations vs. designing new languages. While the former approach has proven suitable for interconnecting services on a simple point-to-point fashion, it turns to be unsuitable for coding concurrent, multi-party, and interrelated interactions requiring extensive XML manipulation. As a result, various web service programming languages have been proposed, most notably (WS-)BPEL. However, these languages still do not meet the needs of highly concurrent and dynamic interactions due to their bias towards statically-bounded concurrency. In this paper we introduce a new web service programming language with a set of features designed to address this gap. We describe the implementations in this language of non-trivial scenarios of service interaction and contrast them to the corresponding BPEL implementations. We also define a formal semantics for the language by translation to the join calculus. A compiler for the language has been implemented based on this semantics.

Observational Purity and Encapsulation.
ETAPS 2005, April 2 - 10, 2005. Edinburgh (Scotland).
David A. Naumann.

Practical specification languages for imperative and object-oriented programs, such as JML, Eiffel, and Spec#, allow the use of program expressions including method calls in specification formulas. For coherent semantics of specifications, and to avoid anomalies with runtime assertion checking, expressions in specifications and assertions are typically required to be strongly pure in the sense that their evaluation has no effect on the state of preexisting objects. For specification of large systems using standard libraries this restriction is impractical: it disallows many standard methods that mutate state for purposes such as caching or lazy initialization. Calls of such methods can sensibly be used for specifications and annotations in contexts where their effects cannot be observed. This paper formalizes and extends a recently proposed notion of observational purity, reducing the proof obligation to a familiar one for equivalence of two class implementations.

Checking Absence of Illicit Applet Interactions: A Case Study.
ETAPS 2004, March 27 - April 4, 2004. Barcelona (Spain).
Marieke Huisman, Dilian Gurov, Christoph Sprenger and Gennady Chugunov.

We present the use of a method – and its corresponding tool set – for compositional
verification of applet interactions on an industrial smart card case study. The case study, an electronic purse, is provided by smart card producer Gemplus as a test case for formal methods for smart cards. The verification method focuses on the possible interactions between different applets, co–existing on the same card, and provides a technique to specify and detect illicit interactions between these applets. The method is compositional,
thus supporting post–issuance loading of applets.

Spatial Security Policies for Mobile Agents in a Sentient Computing Environment.
ETAPS 2003, April 5 - 13, 2003. Warsaw (Poland).

David Scott, Alastair Beresford and Alan Mycroft.

A Sentient Computing environment is one in which the system is able to perceive the state of the physical world and use this information to customise its behaviour. Mobile agents are a promising new programming methodology for building distributed applications with many advantages over traditional client-server designs. We believe that properly controlled mobile agents provide a good foundation on which to build Sentient applications.

The aims of this work are threefold: (i) to provide a simple location-based mechanism for the creation of security policies to control mobile agents; (ii) to simplify the task of producing applications for a pervasive computing environment through the constrained use of mobile agents; and (iii) to demonstrate the applicability of recent theoretical work using ambients to model mobility.

Synthesizing Monitors for Safety Properties.
ETAPS 2002, April 6 - 14, 2002. Grenoble (France).

K. Havelund and G. Rosu.

The problem of testing a linear temporal logic (LTL) formula on a finite execution trace of events, generated by an executing program, occurs naturally in runtime analysis of software. An algorithm which takes a past time LTL formula and generates an efficient dynamic programming algorithm is presented. The generated algorithm tests whether the formula is satisfied by a finite trace of events given as input and runs in linear time, its constant depending on the size of the LTL formula. The memory needed is constant, also depending on the size of the formula. Further optimizations of the algorithm are suggested. Past time operators suitable for writing succinct specifications are introduced and shown definitionally equivalent to the standard operators. This work is part of the PathExplorer project, the objective of which it is to construct a flexible framework for monitoring and analyzing program executions.

Compositional Message Sequence Diagrams.
ETAPS 2001, April 2 - 6, 2001. Genova (Italy).

E. Gunter, Am Muscholl and D. Peled.

Message sequence charts (MSCs) is a standard notation for describing the interaction between communicating objects. It is popular among the designers of communication protocols. MSCs enjoy both a visual and a textual representation. High level MSCs (HMSCs) allow specifying infinite scenarios and different choices. Specifically, an HMSC consists of a graph, where each node is a finite MSC with matched send and receive events, and vice versa. In this paper we demonstrate a weakness of HMSCs, which disallows one to model certain interactions. We will show, by means of an example, that some simple finite state and simple communication protocol cannot be represented using HMSCs. We then propose an extension to the MSC standard, which allows HMSC nodes to include unmatched messages. The corresponding graph notation will be called HCMSC, which stands for High level Compositional Message Sequence Charts. With the extended framework, we provide an algorithm for automatically constructing an MSC representation for finite state asynchronous message passing protocols.

Molecular Analysis of Metabolic Pathway with Graph Transformation.
ICGT 2006, September 17 - September 23, 2006. Natal, Rio Grande do Norte (Brazil).

K. Ehrig, R. Heckel, and G. Lajios.

Metabolic pathway analysis is one of the tools used in biology and medicine in order to understand reaction cycles in living cells. A shortcoming of the approach, however, is that reactions are analysed only at a level corresponding to what is known as the ’collective token view’ in Petri nets, i.e., summarising the number of atoms of certain types in a compound, but not keeping track of their identity.
In this paper we propose a refinement of pathway analysis based on hypergraph grammars, modelling reactions at a molecular level. We consider as an example the citric acid cycle, a classical, but non-trivial reaction for energy utilisation in living cells. Our approach allows the molecular analysis of the cycle, tracing the flow of individual carbon atoms based on a simulation using the graph transformation tool AGG.

Rule Execution in Graph-Based Incremental Interactive Integration Tools.
ICGT 2004, September 28 - October 2, 2004. Roma (Italy).

S.M. Becker, S. Lohmann, and B. Westfechtel.

Development processes in engineering disciplines are inherently complex. Throughout the development process, different kinds of inter-dependent design documents are created which have to be kept consistent with each other. Graph transformations are well suited for modeling the operations provided for maintaining inter-document consistency. In this paper, we describe a novel approach to rule execution for graph-based integration tools operating interactively and incrementally. Rather than executing a rule in atomic way, we break rule execution up into multiple phases. In this way, the user of an integration tool may be informed about all potential rule applications and their mutual conflicts so that he may take a judicious decision how to proceed.

Transforming Specification Architectures by GenGED.
ICGT 2002, October 7 - 12, 2002. Barcelona (Spain).

Bardohl, R., Ermel, C. and Padberg, J.

This contribution concerns transformations of specification architectures which are diagrams of sub-specifications.
The graph of a diagram presents the architecture: the nodes correspond to the sub-specifications and the edges to specification morphisms. We do not fix a specific visual specification technique, so this approach is in the tradition of high-level replacement systems. We discuss how to transform such specification architectures and    distinguish local and global changes.
The main emphasis of this contribution is the specification and transformation of specification architectures using \GenGEDp.
In GenGED, a visual language (VL) is defined by a visual alphabet and a visual syntax grammar. We define a VL for specification architectures by composing VLs for graphs and for P/T nets enhanced by Petri net morphisms. From this VL definition a syntax-directed editor is generated supporting the editing of consistent specification architectures. Local and global changes of a specific specification architecture then can easily be defined as transformation rules in our VL and visualized in the GenGED environment.

Proof engines for bounded model checking of hybrid systems.
FMICS 2004, September 20 - 21, 2004. Linz (Austria)

Martin Fränzle, and Christian Herde.

In this paper we present HySat, a new bounded model term checker for linear hybrid systems, incorporating a tight integration of a DPLL–based pseudo–Boolean SAT solver and a linear programming routine as core engine. In contrast to related tools like MathSAT, ICS, or CVC, our tool exploits all of the various optimizations that arise naturally in the bounded model checking context, e.g. isomorphic replication of learned conflict clauses or tailored decision strategies, and extends them to the hybrid domain. We demonstrate that those optimizations are crucial to the performance of the tool.

Distributed State Space Minimization.
FMICS 2003, June 5 - 7, 2003. Trondheim (Norway).

Stefan Blom and Simona Orzan.

It is a known problem that state spaces can grow very big, which makes operating with them (including reducing them) difficult because of memory shortage. In the attempt to extend the size of the state spaces that can be dealt with, we designed and implemented a bisimulation reduction algorithm for distributed memory settings using message passing communication. By using message passing, the same implementation can be used on both large SMP machines and clusters of workstations. The algorithm performs reduction of large labeled transition systems modulo strong bisimulation. We justify its correctness and termination. We provide an evaluation of the worst-case time and message complexity and some performance data from a prototype implementation. Both theory and practice show that the algorithm scales up with the number of workers.

Validating OCL Specifications with the USE Tool—An Example Based on the BART Case Study.
FMICS 2003, June 5 - 7, 2003. Trondheim (Norway).

Paul Ziemann and Martin Gogolla.

The Object Constraint Language (OCL) is part of the Unified Modeling Language (UML). Within software engineering, UML is regarded today as an important step towards development of high-quality object-oriented systems. OCL allows to sharpen UML diagrams through invariants as well as pre- and postconditions. This paper explains the functionality of the UML Specification Environment USE which allows to validate UML and OCL descriptions.
The paper shows that central safety properties of the train system described in the well-known BART case study can be expressed with OCL. Test cases embodying central aspects of this train system can be formulated within the USE system. It can be shown that the safety properties are satisfied by the test cases examined.

Specification of Network Embedded Software Components.
IDPT 2002, June 23 - 28, 2002. Pasadena (California/USA)

Asuman Sünbül.

In the last years, generative component based techniques have already successfully been used within a large number of software development projects. They have shown to be especially useful in applications where certain patterns of system architecture and/or implementation structures can be identified and used as possible starting points for automatically generating system parts from more abstract descriptions. Standard component "developing" techniques being used were CORBA (including real-time CORBA), DCOM or JavaBeans. But there is huge amount of platforms, not necessarily exotic ones, where neither the traditional middleware techniques (e.g CORBA) nor component techniques can be applied. A particular example for those kind of systems, are given by network embedded, real-time, wireless systems. The size of NEST configurations, their tight integration with dynamic, non-stationary physical processes and limitations in component reliability make the use of self-assembly, self-configuration, self-repair and other forms of adaptation mandatory. These requirements push the demand for new tools and methodologies for designing communication protocols and services for distributed systems supporting a third generation of ultra-high performance middleware and light-weighted components. We're presenting our framework for developing light-weighted, formally correct software which is well suiting for the needs of NEST demands.

Abstracts
     
   
© 2006 - EASST e.V.
Mail office@easst.org