Catálogo de publicaciones - libros
Formal Methods and Software Engineering: 8th International Conference on Formal Engineering Methods, ICFEM 2006, Macao, China, November 1-3, 2006, Proceedings
Zhiming Liu ; Jifeng He (eds.)
En conferencia: 8º International Conference on Formal Engineering Methods (ICFEM) . Macao, China . November 1, 2006 - November 3, 2006
Resumen/Descripción – provisto por la editorial
No disponible.
Palabras clave – provistas por la editorial
No disponibles.
Disponibilidad
Institución detectada | Año de publicación | Navegá | Descargá | Solicitá |
---|---|---|---|---|
No detectada | 2006 | SpringerLink |
Información
Tipo de recurso:
libros
ISBN impreso
978-3-540-47460-9
ISBN electrónico
978-3-540-47462-3
Editor responsable
Springer Nature
País de edición
Reino Unido
Fecha de publicación
2006
Información sobre derechos de publicación
© Springer-Verlag Berlin Heidelberg 2006
Cobertura temática
Tabla de contenidos
doi: 10.1007/11901433_31
A Tool for a Formal Pattern Modeling Language
Soon-Kyeong Kim; David Carrington
This paper presents a formal but practical approach for defining and using design patterns. Initially we formalize the concepts commonly used in defining design patterns using Object-Z. We also formalize consistency constraints that must be satisfied when a pattern is deployed in a design model. Then we implement the pattern modeling language and its consistency constraints using an existing modeling framework, EMF, and incorporate the implementation as plug-ins to the Eclipse modeling environment. While the language is defined formally in terms of Object-Z definitions, the language is implemented in a practical environment. Using the plug-ins, users can develop precise pattern descriptions without knowing the underlying formalism, and can use the tool to check the validity of the pattern descriptions and pattern usage in design models. In this work, formalism brings precision to the pattern language definition and its implementation brings practicability to our pattern-based modeling approach.
Palabras clave: Design Pattern; Object-Z; Formal Pattern Modeling Language; Model Evolution; Model Transformation; Pattern Tool.
- Tools | Pp. 568-587
doi: 10.1007/11901433_32
An Open Extensible Tool Environment for Event-B
Jean-Raymond Abrial; Michael Butler; Stefan Hallerstede; Laurent Voisin
We consider modelling indispensable for the development of complex systems. Modelling must be carried out in a formal notation to reason and make meaningful conjectures about a model. But formal modelling of complex systems is a difficult task. Even when theorem provers improve further and get more powerful, modelling will remain difficult. The reason for this that modelling is an exploratory activity that requires ingenuity in order to arrive at a meaningful model. We are aware that automated theorem provers can discharge most of the onerous trivial proof obligations that appear when modelling systems. In this article we present a modelling tool that seamlessly integrates modelling and proving similar to what is offered today in modern integrated development environments for programming. The tool is extensible and configurable so that it can be adapted more easily to different application domains and development methods.
Palabras clave: Model Checker; Theorem Prover; Proof Obligation; Proof Tree; Interactive Proof.
- Tools | Pp. 588-605
doi: 10.1007/11901433_33
Tool for Translating Simulink Models into Input Language of a Model Checker
B. Meenakshi; Abhishek Bhatnagar; Sudeepa Roy
Model Based Development (MBD) using Mathworks tools like Simulink, Stateflow etc. is being pursued in Honeywell for the development of safety critical avionics software. Formal verification techniques are well-known to identify design errors of safety critical systems reducing development cost and time. As of now, formal verification of Simulink design models is being carried out manually resulting in excessive time consumption during the design phase. We present a tool that automatically translates certain Simulink models into input language of a suitable model checker. Formal verification of safety critical avionics components becomes faster and less error prone with this tool. Support is also provided for reverse translation of traces violating requirements (as given by the model checker) into Simulink notation for playback.
- Tools | Pp. 606-620
doi: 10.1007/11901433_34
Verifying Abstract Information Flow Properties in Fault Tolerant Security Devices
Tim McComb; Luke Wildman
The verification of information flow properties of security devices is difficult because it involves the analysis of schematic diagrams, artwork, embedded software, etc. In addition, a typical security device has many modes, partial information flow, and needs to be fault tolerant. We propose a new approach to the verification of such devices based upon checking abstract information flow properties expressed as graphs. This approach has been implemented in software, and successfully used to find possible paths of information flow through security devices.
- Fault-Tolerance and Security | Pp. 621-638
doi: 10.1007/11901433_35
A Language for Modeling Network Availability
Luigia Petre; Kaisa Sere; Marina Waldén
Computer networks have become ubiquitous in our society and thus, the various types of resources hosted by them are becoming increasingly important. In this paper we study the resource availability in networks by defining a dedicated middleware language. This language is a conservative extension of the action system formalism, a general state-based approach to modeling and analyzing distributed systems. Our language formally treats aspects such as resource accessibility, replicated and homonym resources, their mobility, as well as node failure and maintenance in networks. The middleware approach motivates the separation of the views and formalisms used by the various roles such as the network user, the application developer, and the network manager.
Palabras clave: Network Manager; Node Failure; Application Developer; Library System; Tuple Space.
- Fault-Tolerance and Security | Pp. 639-659
doi: 10.1007/11901433_36
Multi-process Systems Analysis Using Event B: Application to Group Communication Systems
J. Christian Attiogbé
We introduce a method to elicit and to structure using Event B, processes interacting with ad hoc dynamic architecture. A Group Communication System is used as the investigation support. The method takes account of the evolving structure of the interacting processes; it guides the user to structure the abstract system that models his/her requirements. The method also integrates property verification using both theorem proving and model checking. A B specification of a GCS is built using the proposed approach and its stated properties are verified using a B theorem prover and a B model checker.
Palabras clave: Event B; Group Communication Systems; Dynamic Architecture; Property verification.
- Fault-Tolerance and Security | Pp. 660-677
doi: 10.1007/11901433_37
Issues in Implementing a Model Checker for Z
John Derrick; Siobhán North; Tony Simons
In this paper we discuss some issues in implementing a model checker for the Z specification language. In particular, the language design of Z and its semantics, raises some challenges for efficient model checking, and we discuss some of these issues here. Our approach to model checking Z specifications involves implementing a translation from Z into the SAL input language, upon which the SAL toolset can be applied. In this paper we discuss issues in the implementation of this translation algorithm and illustrate them by looking at how the mathematical toolkit is encoded in SAL and the resultant efficiency of the model checking tools.
Palabras clave: Z; model-checking; SAL.
- Specification and Refinement | Pp. 678-696
doi: 10.1007/11901433_38
Taking Our Own Medicine: Applying the Refinement Calculus to State-Rich Refinement Model Checking
Leo Freitas; Ana Cavalcanti; Jim Woodcock
In this paper, we advocate the use of formal specification and verification in software development for high-integrity and safety-critical systems, where mechanical proof plays a central role. In particular, we emphasise the crucial importance of applying verification in the development of formal verification tools themselves. We believe this approach is very useful to increase the levels of confidence and integrity of tools that are built to find bugs based on formally specified models. This follows the trend set out by a UK grand challenge in computer research for verified software repository. In this direction, we present our experiences on a case study on the development process of a refinement model checking tool for Circus , a concurrent refinement language that combines Z, CSP, guarded commands, and the refinement calculus, with the Unifying Theories of Programming of Hoare and He as the theoretical background.
Palabras clave: model checking; theorem proving; formal verification.
- Specification and Refinement | Pp. 697-716
doi: 10.1007/11901433_39
Discovering Likely Method Specifications
Nikolai Tillmann; Feng Chen; Wolfram Schulte
Software specifications are of great use for more rigorous software development. They are useful for formal verification and automated testing, and they improve program understanding. In practice, specifications often do not exist and developers write software in an ad-hoc fashion. We describe a new way to automatically infer specifications from code. Our approach infers a likely specification for any method such that the method’s behavior, i.e., its effect on the state and possible result values, is summarized and expressed in terms of some other methods. We use symbolic execution to analyze and relate the behaviors of the considered methods. In our experiences, the resulting likely specifications are compact and human-understandable. They can be examined by the user, used as input to program verification systems, or as input for test generation tools for validation. We implemented the technique for .NET programs in a tool called Axiom Meister. It inferred concise specifications for base classes of the .NET platform and found flaws in the design of a new library.
Palabras clave: Model Check; Execution Path; Path Condition; Observer Method; Symbolic Execution.
- Specification and Refinement | Pp. 717-736
doi: 10.1007/11901433_40
Time Aware Modelling and Analysis of Multiclocked VLSI Systems
Tomi Westerlund; Juha Plosila
We introduce a formal, time aware framework for modelling and analysis multiclocked VLSI systems. We define a delay calculus framework for our timed formalism, and, furthermore, constraints with which to confine the correctness of the system under development, not only logically but also with respect to timing characteristics. We give an elaborate definition of the timed formalism, Timed Action Systems, and its delay models. With the timing aware formal development framework it is possible to obtain information of multiclocked VLSI systems already at high abstraction levels as our application, a GALS (globally asynchronous, locally synchronous) system, shows.
Palabras clave: Timed Action Systems; GALS; formal methods; time.
- Specification and Refinement | Pp. 737-756