COLAFORM 2016 Abstracts


Short Papers
Paper Nr: 2
Title:

Formal Behavioural Models to Facilitate Distributed Development and Commissioning in Industrial Automation

Authors:

James Harland, Jan Olaf Blech, Ian Peake and Luke Trodd

Abstract: We aim to facilitate semi-automated collaborative distributed development, commissioning, operation and maintenance using formal behavioural models. We are interested in a whole-of-system context, where properties of the physical systems increasingly depend explicitly on software configuration, thus requiring validation. Our models are cyber-physical, comprising not only the control software itself but also mechatronic elements under control involving sensing/actuators, such as pneumatics, hydraulics, and motor drives. We discuss various issues relevant to the problems of collaboration, and we provide requirements for collaboration in a specific experimental context involving elements of a small-scale food packaging plant.
Download

Paper Nr: 3
Title:

Teaching of Formal Methods for Software Engineering

Authors:

Maria Spichkova and Anna Zamansky

Abstract: The use of Formal Methods (FMs) offers rigour and precision, while reducing ambiguity and inconsistency. The major barriers hindering the adoption of FMs in industry are the problems of understandability, comprehensibility, and scalability. To solve the understandability problem, from one side, the readability of the method have to be increased, but from another side, an appropriate teaching and learning approach have to be introduced. This paper presents an overview of existing approaches on teaching of FMs and Logic, also discusses the common issues in teaching of this subjects.
Download

Paper Nr: 4
Title:

Reasoning about Inconsistency in RE - Separating the Wheat from the Chaff

Authors:

Anna Zamansky, Irit Hadar and Daniel M. Berry

Abstract: Inconsistency is a major challenge in requirements engineering. Traditionally, software requirements specifica-tions (SRSs) are expected to be consistent, with the underlying assumption that this consistency is always achievable. However, with the growing complexity of software systems it has become clear that this assump-tion is not always realistic. This has led to new paradigms for inconsistency management, acknowledging that it is not only inevitable, but also even desirable at times, to tolerate inconsistency, even temporarily. However, for these paradigms to be widely accepted in industry, practicing software engineers must thoroughly under-stand the nature of inconsistency in SRSs and the strategies for its handling. This paper proposes a research agenda for preparing practicing software engineers to accept and successfully implement inconsistency man-agement paradigms. As a first step in this direction, the paper describes an ongoing study in which we design an intervention into the perceptions of inconsistency for practicing software engineers. The intervention builds on teaching to them the Zave–Jackson requirements validation formula as an aid for analyzing the types of in-consistency they face, and conducting an empirical study of the effect of this intervention on their inconsisten-cy management.
Download

Paper Nr: 5
Title:

Collaborative Model-based Development of a Remote Train Monitoring System

Authors:

Peter Herrmann, Alexander Svae, Henrik Heggelund Svendsen and Jan Olaf Blech

Abstract: The model-based engineering technique Reactive Blocks supports the development of reactive systems by UML-based graphic modeling of control and data flows, model checker supported analysis, and automated code generation. Moreover, it facilitates the cooperation of teams of engineers by enabling the definition of formally precise behavioral interfaces that make the separation of the modelling process into various work packages easy. In this paper, we illustrate the use of Reactive Blocks for a joint student project that realized the monitoring and control of Lego Mindstorms-based trains in Norway through a control center in Australia. In particular, we explain how the Reactive Blocks interfaces and the applied communication protocols were used to split the project into work packages separately handled by the students involved.
Download

Paper Nr: 7
Title:

Let`s Make it Fun: Gamifying and Formalizing Code Review

Authors:

Naomi Unkelos-Shpigel and Irit Hadar

Abstract: Code review is a highly important task in the software development lifecycle. However, some of the characteristics of code review hinder practitioners’ performance of this task. Code review is considered to be tedious and uninteresting, and includes challenging human aspects, such as collaboration among stakeholders. Despite the many concerns that need to be taken into consideration when performing code review, a comprehensive, formal definition thereof is yet to be determined. In a previous research, a set of formal guidelines for code review was presented, in the context of performing this task in a gamified environment. In this ongoing research, we explore whether the field of software engineering provides a formal definition for code review, and whether a formal definition is needed. The preliminary findings of this research indicate that while the field does provide several definitions for code review, in all that concerns the human aspect of this task, a formal definition is in order. As a response for this need, we present a framework of the task of code review toward its formalization, embedding gamification for motivation enhancement.
Download

Paper Nr: 8
Title:

Formal Methods in Collaborative Projects

Authors:

Anna Zamansky, Guillermo Rodriguez-Navas, Mark Adams and Maria Spichkova

Abstract: In this paper we address particular aspects of integration of formal methods in large-scale industrial projects, namely collaborative aspects. We review recent works addressing such aspects, identify some current trends and discuss directions for further research.
Download