Results 11 - 20
of
50
Usability Assessment of a UML-based Formal Modelling Method
, 2007
"... Conceptual models communicate the important aspects of a problem domain to stakeholders. The models therefore should be accessible to users who need to interpret them. On the other hand, the quality of the produced models is highly dependent on the usability of the modelling method used. This pape ..."
Abstract
-
Cited by 5 (1 self)
- Add to MetaCart
Conceptual models communicate the important aspects of a problem domain to stakeholders. The models therefore should be accessible to users who need to interpret them. On the other hand, the quality of the produced models is highly dependent on the usability of the modelling method used. This paper presents a series of usability assessments conducted on a method that integrates the use of a semi-formal notation, namely the Unified Modelling Language (UML) and a formal notation, namely B. The assessments included a controlled experiment that evaluated the comprehensibility of the produced model and a survey that assessed the modelling process. The results suggest that the method is able to produce a comprehensible model. The method is accessible to users when the principles and roles of each notation are obvious and well understood, and when there is strong support from the environment.
A benchmark for evaluating software engineering techniques for improving medical processes
- in SEHC ’10: Proceedings of the 2010 ICSE Workshop on Software Engineering in Health
, 2010
"... The software engineering and medical informatics communi-ties have been developing a range of approaches for reason-ing about medical processes. To facilitate the comparison of such approaches, it would be desirable to have a set of medical examples, or benchmarks, that are easily available, describ ..."
Abstract
-
Cited by 5 (1 self)
- Add to MetaCart
(Show Context)
The software engineering and medical informatics communi-ties have been developing a range of approaches for reason-ing about medical processes. To facilitate the comparison of such approaches, it would be desirable to have a set of medical examples, or benchmarks, that are easily available, described in considerable detail, and characterized in terms of the real-world complexities they capture. This paper presents one such benchmark and discusses a list of desider-ata that medical benchmarks can be evaluated against.
MOCHA: Modelling Organisational Change using Agents
, 2006
"... We present the MOdel of Organisational Change using Agents (MOCHA) as a means to formally specify, check and simulate organisations and their changes using agents. We define the structure of the organisation without making any assumptions about the internal characteristics of the agents who will pop ..."
Abstract
-
Cited by 4 (1 self)
- Add to MetaCart
We present the MOdel of Organisational Change using Agents (MOCHA) as a means to formally specify, check and simulate organisations and their changes using agents. We define the structure of the organisation without making any assumptions about the internal characteristics of the agents who will populate it. We adopt a normative view of organisations, and capture a notion of social influence through relationships between roles. Ours is a flexible and expressive approach that contemplates agents taking part in multiple organisations with distinct roles and disparate (possibly conflicting) obligations. We make a distinction between the structure of an organisation and the population instantiating the organisation, and our framework allows the consequences of change in both the organisational structure and the population to be investigated. We also describe a machine-processable representation of our model and show how it can be used to support engineering activities. 1
Architectural Abstraction as Transformation of Poset Labelled Graphs
- Journal of Universal Computer Science
, 2004
"... Abstract: The design of large, complex computer based systems, based on their architecture, will benefit from a formal system that is intuitive, scalable and accessible to practitioners. The work herein is based in graphs which are an efficient and intuitive way of encoding structure, the essence of ..."
Abstract
-
Cited by 2 (0 self)
- Add to MetaCart
Abstract: The design of large, complex computer based systems, based on their architecture, will benefit from a formal system that is intuitive, scalable and accessible to practitioners. The work herein is based in graphs which are an efficient and intuitive way of encoding structure, the essence of architecture. A model of system architectures and architectural abstraction is proposed, using poset labelled graphs and their transformations. The poset labelled graph formalism closely models several important aspects of architectures, namely topology, type and levels of abstraction. The technical merits of the formalism are discussed in terms of the ability to express and use domain knowledge to ensure sensible refinements. An abstraction / refinement calculus is introduced and illustrated with a detailed usage scenario. The paper concludes with an evaluation of the formalism in terms of its rigour, expressiveness, simplicity
Certifiable Specification and Verification of C Programs
"... Abstract. A novel approach to the specification and verification of C programs through an annotation language that is a mixture between JML and the language of Isabelle/HOL is proposed. This yields three benefits: specifications are concise and close to the underlying mathematical model; existing Is ..."
Abstract
-
Cited by 2 (1 self)
- Add to MetaCart
(Show Context)
Abstract. A novel approach to the specification and verification of C programs through an annotation language that is a mixture between JML and the language of Isabelle/HOL is proposed. This yields three benefits: specifications are concise and close to the underlying mathematical model; existing Isabelle theories can be reused; and the leap of faith from specification language to encoding in a logic is small. This is of particular relevance for software certification, and verification in application areas such as robotics. 1
Teaching How to Derive Correct Concurrent Programs from State-Based Specifications and Code Patterns ⋆
"... Abstract. The fun of teaching and learning concurrent programming is sometimes darkened by the difficulty in getting concurrent programs to work right. In line with other programming subjects in our department, we advocate the use of formal specifications to state clearly how a concurrent program mu ..."
Abstract
-
Cited by 1 (1 self)
- Add to MetaCart
(Show Context)
Abstract. The fun of teaching and learning concurrent programming is sometimes darkened by the difficulty in getting concurrent programs to work right. In line with other programming subjects in our department, we advocate the use of formal specifications to state clearly how a concurrent program must behave, to reason about this behavior, and to be able to produce code from specifications in a semi-automatic fashion. We argue that a mild form of specification not only makes it possible to get programs running easier, but it also introduces students to a quite systematic way of approaching programming: reading and understanding specifications is seen as an unavoidable step in the programming process, as they are really the only place where the expected conduct of the system is described. By using formal techniques in these cases, where they are undoubtedly appropriate, we introduce formality without the need to resort to justifications with artificial or overly complicated examples.
travelled
"... School of Computing, UNISA, Pretoria, South Africa An integration of traditional verification techniques and formal specifications in software engineering is presented. Advocates of such techniques claim that mathematical formalisms allow them to produce quality, verifiably correct, or at least high ..."
Abstract
- Add to MetaCart
(Show Context)
School of Computing, UNISA, Pretoria, South Africa An integration of traditional verification techniques and formal specifications in software engineering is presented. Advocates of such techniques claim that mathematical formalisms allow them to produce quality, verifiably correct, or at least highly dependable software and that the testing and maintenance phases are shortened. Critics on the other hand maintain that software formalisms are hard to master, tedious to use and not well suited for the fast turnaround times demanded by industry. In this paper some popular formalisms and the advantages of using these during the early phases of the software development life cycle are presented. Employing the Floyd-Hoare verification principles during the formal specification phase facilitates reasoning about the properties of a specification. Some observations that may help to alleviate the formal-methods controversy are established and a number of formal methods successes is presented. Possible conditions for an increased acceptance of formalisms in software development are discussed.
1The Oracle Problem in Software Testing: A Survey
"... Abstract—Testing involves examining the behaviour of a system in order to discover potential faults. Given an input for a system, the challenge of distinguishing the corresponding desired, correct behaviour from potentially incorrect behavior is called the “test oracle problem”. Test oracle automati ..."
Abstract
- Add to MetaCart
(Show Context)
Abstract—Testing involves examining the behaviour of a system in order to discover potential faults. Given an input for a system, the challenge of distinguishing the corresponding desired, correct behaviour from potentially incorrect behavior is called the “test oracle problem”. Test oracle automation is important to remove a current bottleneck that inhibits greater overall test automation. Without test oracle automation, the human has to determine whether observed behaviour is correct. The literature on test oracles has introduced techniques for oracle automation, including modelling, specifications, contract-driven development and metamorphic testing. When none of these is completely adequate, the final source of test oracle information remains the human, who may be aware of informal specifications, expectations, norms and domain specific information that provide informal oracle guidance. All forms of test oracles, even the humble human, involve challenges of reducing cost and increasing benefit. This paper provides a comprehensive survey of current approaches to the test oracle problem and an analysis of trends in this important area of software testing research and practice. Index Terms—Test oracle; Automatic testing; Testing formalism. F
T e c h n i c a l R e p o r t N o 2 0 0 8 / 0 1 Problem Oriented Formal Requirements Modelling & Analysis Problem Oriented Formal Requirements Modelling & Analysis
"... Abstract. Safety is a factor of a system operating in a particular environment. Therefore the requirements engineering method used must adequately distinguish between the desired behaviour of the requirements and the extant properties of the environment that are relied upon. This paper will show th ..."
Abstract
- Add to MetaCart
(Show Context)
Abstract. Safety is a factor of a system operating in a particular environment. Therefore the requirements engineering method used must adequately distinguish between the desired behaviour of the requirements and the extant properties of the environment that are relied upon. This paper will show that Problem Oriented Software Engineering (POSE) has these capabilities, and can be used in conjunction with the Alloy formal method to achieve a number of related goals. That is, POSE and Alloy allow the formalisation of the requirements transformation process to assist in (a) the derivation of implementable requirements, (b) the production of a formal requirements specification model and (c) the task of performing a preliminary hazard analysis.