122,751 research outputs found
Study of Tools Interoperability
Interoperability of tools usually refers to a combination of methods and techniques that address the problem of making a collection of tools to work together. In this study we survey different notions that are used in this context: interoperability, interaction and integration. We point out relation between these notions, and how it maps to the interoperability problem.
We narrow the problem area to the tools development in academia. Tools developed in such environment have a small basis for development, documentation and maintenance. We scrutinise some of the problems and potential solutions related with tools interoperability in such environment. Moreover, we look at two tools developed in the Formal Methods and Tools group1, and analyse the use of different integration techniques
Dealing with Fuzzy Information in Software Design Methods
Software design methods incorporate a large set of heuristic rules that should result in stable software architecture of high quality. In general, clearly defined inputs are required to deliver the desired results. Unfortunately, especially in the early phases of software development, it is very difficult or even impossible to provide precisely defined information. Since methods cannot deal with imprecision, the designers need to make approximations which are generally not justifiable. In this paper, we will advocate an approach where the inputs for software design methods are modeled by using fuzzy sets. This approach renders the need for introduction of extra information for removal of inexactness obsolete
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
Model checking learning agent systems using Promela with embedded C code and abstraction
As autonomous systems become more prevalent, methods for their verification will become more
widely used. Model checking is a formal verification technique that can help ensure the safety of autonomous
systems, but in most cases it cannot be applied by novices, or in its straight \off-the-shelf" form. In order
to be more widely applicable it is crucial that more sophisticated techniques are used, and are presented
in a way that is reproducible by engineers and verifiers alike. In this paper we demonstrate in detail two
techniques that are used to increase the power of model checking using the model checker SPIN. The first
of these is the use of embedded C code within Promela specifications, in order to accurately re
ect robot
movement. The second is to use abstraction together with a simulation relation to allow us to verify multiple
environments simultaneously. We apply these techniques to a fairly simple system in which a robot moves
about a fixed circular environment and learns to avoid obstacles. The learning algorithm is inspired by the
way that insects learn to avoid obstacles in response to pain signals received from their antennae. Crucially,
we prove that our abstraction is sound for our example system { a step that is often omitted but is vital if
formal verification is to be widely accepted as a useful and meaningful approach
Specifying Logic Programs in Controlled Natural Language
Writing specifications for computer programs is not easy since one has to
take into account the disparate conceptual worlds of the application domain and
of software development. To bridge this conceptual gap we propose controlled
natural language as a declarative and application-specific specification
language. Controlled natural language is a subset of natural language that can
be accurately and efficiently processed by a computer, but is expressive enough
to allow natural usage by non-specialists. Specifications in controlled natural
language are automatically translated into Prolog clauses, hence become formal
and executable. The translation uses a definite clause grammar (DCG) enhanced
by feature structures. Inter-text references of the specification, e.g.
anaphora, are resolved with the help of discourse representation theory (DRT).
The generated Prolog clauses are added to a knowledge base. We have implemented
a prototypical specification system that successfully processes the
specification of a simple automated teller machine.Comment: 16 pages, compressed, uuencoded Postscript, published in Proceedings
CLNLP 95, COMPULOGNET/ELSNET/EAGLES Workshop on Computational Logic for
Natural Language Processing, Edinburgh, April 3-5, 199
Animating complex concepts
Techniques in computer-aided learning offer significant benefits for explaining difficult concepts in a way that is both stimulating and efficient. In the context of the STORM system, we have employed computer-based animation as a means of elucidating complex concepts in the educational domain of Internet and communications technology. Our experience reveals two important lessons for the application of computer animated instruction. Firstly, there is an essential requirement in the design process to ensure that the ontology and manner of presentation accurately conveys the intended message, whilst avoiding ambiguity and false or 'hidden' information. This focuses upon concise and disambiguated animations. Secondly, this requirement is best achieved through an iterative group-based development cycle of specification, testing and implementation
A characteristics framework for Semantic Information Systems Standards
Semantic Information Systems (IS) Standards play a critical role in the development of the networked economy. While their importance is undoubted by all stakeholdersâsuch as businesses, policy makers, researchers, developersâthe current state of research leaves a number of questions unaddressed. Terminological confusion exists around the notions of âbusiness semanticsâ, âbusiness-to-business interoperabilityâ, and âinteroperability standardsâ amongst others. And, moreover, a comprehensive understanding about the characteristics of Semantic IS Standards is missing. The paper addresses this gap in literature by developing a characteristics framework for Semantic IS Standards. Two case studies are used to check the applicability of the framework in a âreal-lifeâ context. The framework lays the foundation for future research in an important field of the IS discipline and supports practitioners in their efforts to analyze, compare, and evaluate Semantic IS Standard
- âŚ