262,259 research outputs found
Having Fun in Learning Formal Specifications
There are many benefits in providing formal specifications for our software.
However, teaching students to do this is not always easy as courses on formal
methods are often experienced as dry by students. This paper presents a game
called FormalZ that teachers can use to introduce some variation in their
class. Students can have some fun in playing the game and, while doing so, also
learn the basics of writing formal specifications in the form of pre- and
post-conditions. Unlike existing software engineering themed education games
such as Pex and Code Defenders, FormalZ takes the deep gamification approach
where playing gets a more central role in order to generate more engagement.
This short paper presents our work in progress: the first implementation of
FormalZ along with the result of a preliminary users' evaluation. This
implementation is functionally complete and tested, but the polishing of its
user interface is still future work
Requirements, Formal Verification and Model transformations of an Agent-based System: A CASE STUDY
One of the most challenging tasks in software specifications engineering for a multi-agent system is to ensure correctness. As these systems have high concurrency, often have dynamic environments, the formal specification and verification of these systems along with step-wise refinement from abstract to concrete concepts play major role in system correctness. Our objectives are the formal specification, analysis with respect to functional as well as non-functional properties by step-wise refinement from abstract to concrete specifications and then formal verification of these specifications. A multi-agent system is concurrent system with processes working in parallel with synchronization between them. We have worked on Gaia multi-agent method along with finite state process based finite automata techniques and as a result we have defined the formal specifications of our system, checked the correctness and verified all possible flow of concurrent executions of these specifications. Our contribution consists in transforming requirement specifications based on organizational abstractions into executable formal verification specifications based on finite automata. We have considered a case study of our multi-agent system to exemplify formal specifications and verification. Keywords: Multi-Agent System, Agent Models and Architecture, Gaia multi-agent method, Formal methods, Formal verification, Finite State Process (FSP), Labelled Transition System (LTS), Labelled Transition System Analyzer (LTSA), Safety property, Liveness propert
Requirements, Formal Verification and Model transformations of an Agent-based System: A CASE STUDY
One of the most challenging tasks in software specifications engineering for
a multi-agent system is to ensure correctness. As these systems have high
concurrency, often have dynamic environments, the formal specification and
verification of these systems along with step-wise refinement from abstract to
concrete concepts play major role in system correctness. Our objectives are the
formal specification, analysis with respect to functional as well as
non-functional properties by step-wise refinement from abstract to concrete
specifications and then formal verification of these specifications. A
multi-agent system is concurrent system with processes working in parallel with
synchronization between them. We have worked on Gaia multi-agent method along
with finite state process based finite automata techniques and as a result we
have defined the formal specifications of our system, checked the correctness
and verified all possible flow of concurrent executions of these
specifications. Our contribution consists in transforming requirement
specifications based on organizational abstractions into executable formal
verification specifications based on finite automata. We have considered a case
study of our multi-agent system to exemplify formal specifications and
verification.Comment: 16 pages; Computer Engineering and Intelligent Systems
http://www.iiste.org - ISSN 2222-1719 (Paper) ISSN 2222-2863 (Online) -
Vol.5, No.3, 201
Executable formal specifications of complex distributed systems with CoreASM
Formal specifications play a crucial role in the design of reliable complex software systems. Executable formal specifications allow the designer to attain early validation and verification of design using static analysis techniques and accurate simulation of the runtime behavior of the system-to-be. With increasing complexity of software-intensive computer-based systems and the challenges of validation and verification of abstract software models prior to coding, the need for interactive software tools supporting executable formal specifications is even more evident. In this paper, we discuss how CoreASM, an environment for writing and running executable specifications according to the ASM method, provides flexibility and manages the complexity by using an innovative extensible language architecture
A formal validation approach for holonic control system specifications
The holonic manufacturing paradigm allows a new approach to the emergent requirements faced by the manufacturing world, through the concepts of modularity, decentralisation, autonomy, re-use of control software components. The formal modelling and validation of the structural and behavioural specifications of holonic control systems assumes a critical role. This paper discusses the formal validation of the Petri Net models designed to represent the behaviour and specifications of the holon classes defined at ADACOR architecture
Module documentation based testing using grey-box approach
Testing plays an important role to assure the quality of software. Testing is a process of detecting errors that can be highly effective if performed rigorously. The use of formal specifications provides significant opportunity to develop effective testing techniques. Grey-box testing approach usually based on knowledge obtains from specification and source code while seldom the design specification is concerned. In this paper, we propose an approach for testing a module with internal memory from its formal specification based on grey-box approach. We use formal specifications that are documented using Parnas’s Module Documentation (MD) method. The MD provides us with the information of external and internal view of a module that can be useful in grey-box testing approach
- …