Powered by
Conference Publishing Consulting

2014 IEEE 1st International Workshop on Requirements Engineering and Testing (RET), August 26, 2014, Karlskrona, Sweden

RET 2014 – Proceedings

Contents - Abstracts - Authors

2014 IEEE 1st International Workshop on Requirements Engineering and Testing (RET)


Title Page

Welcome to the 1st International Workshop on Requirements Engineering and Testing (RET'14), co-located with RE 2014, in Karlskrona (SE). The objective of RET is to explore the interaction of Requirements Engineering (RE) and Testing in research and industry, and the challenges that result from this interaction. While much work has been done in the respective fields of requirements engineering and testing, there exists much more than can be done to understand the connection between RE and Testing processes. We hope RET will provide a much needed forum for exchanging ideas and best practices for aligning RE and Testing, and in particular can help foster industry-academia collaboration on this topic, and thereby connect the communities of RE and Testing.

RET Challenges and Practices

On the Delicate Balance between RE and Testing: Experiences from a Large Company
Krzysztof Wnuk, Linus Ahlberg, and Johannes Persson
(Lund University, Sweden)
Requirements Engineering and Testing are considered inseparable and together enable successful projects. One could make a statement that serious negligence of any of the two will bring catastrophic consequences for the project, delays, failures and unhappy customers. Thus, alignment and cooperation between the two are not only recommended but highly required for contemporary complex software and system development. In this paper, we share some experiences from a large company that significantly downplayed requirements engineering activities while shifting the focus to testing and QA activities. Despite that, the company’s products are well received by its customers and the company remains profitable and significantly growing. We share our experiences and discuss how this unbalance may actually be a recipe for success and what contextual factors enable using this approach.
Article Search
Revisiting the Challenges in Aligning RE and V&V: Experiences from the Public Sector
Jacob Larsson and Markus Borg
(Capgemini, Sweden; Lund University, Sweden)
Successful coordination of Requirements Engineering and Testing (RET) is crucial in large-scale software engineering. If the activities involved in RET are not aligned, effort is inevitably wasted, and the probability of delivering high quality software products in time decreases. Previous work has identified sixteen challenges in aligning RET in a case study of six companies. However, all six case companies selected for the study are active in proprietary software engineering. In this experience report, we discuss to what extent the identified RET alignment challenges apply to the development of a large information system for managing grants from the European Union. We confirm that most of the findings from previous work also apply to the public sector, including the challenges of aligning goals within an organization, specifying high-quality requirements, and verifying quality aspects. Furthermore, we emphasize that the public sector might be impacted by shifting political power, and that several RET alignment challenges are amplified in multi-project environments.
Article Search
Testers Learning Requirements
Hans Hartmann
(OBJENTIS Software Integration, Austria)
When software testers talk about their job, they generally state that their task is to find defects as well as to ensure that no (major) defects exist in the main paths of business processes. They often add the comment they are doing this by checking the software (application under test) against existing requirements. Its common sense that testers should be familiar with understanding and interpreting requirements. But when it comes to creation and review of requirements testers are usually not involved. Now, taking into consideration that many errors in software development are due to improperly defined requirements, one might wonder if integrating testers directly into the phase of requirements creation would be a promising option.
Article Search
A/B Testing: A Promising Tool for Customer Value Evaluation
Peitsa Hynninen and Marjo Kauppinen
(Aalto University, Finland)
This paper aims to describe the use of A/B testing, a method used in web-development and position it in the context of the requirements engineering process and customer value evaluation. We propose that A/B testing can complement qualitative user research and offer a potential way to validate the value which system improvements bring to customers. Finally, we discuss our research plan for investigating the use of A/B testing in company contexts.
Article Search

Quality Requirements

Verifying Security Requirements using Model Checking Technique for UML-Based Requirements Specification
Yoshitaka Aoki and Saeko Matsuura
(Shibaura Institute of Technology, Japan)
Use case analysis is known to be an effective method to clarify functional requirements. Security requirements such as access or information control tend to increase the complexity of functional requirements, and therefore, need to be correctly implemented to minimize risks. However, general developers find it difficult to correctly specify adequate security requirements during the initial phases of the software development process. We propose a method to verify security requirements whose specifications are based on Unified Modeling Language (UML) using the model checking technique and Common Criteria security knowledge. Common Criteria assists in defining adequate security requirements in the form of a table. This helps developers verify whether UML-based requirements analysis models meet those requirements in the early stages of software development. The UML model and the table are transformed into a finite automaton in the UPPAAL model checking tool.
Article Search
Using Automated Tests for Communicating and Verifying Non-functional Requirements
Robert Lagerstedt
(Sony Mobile Communications, Sweden)
In software development the code often must comply to a number of non-functional requirements, like architectural requirements. These requirements are often communicated and verified by writing guidelines and creating reports of the non-compliance. This way of communicating and verifying non-functional requirements is very costly since all developers needs to understand all requirements. It is also very hard for a developer to remember all requirements and it is easy to make mistakes. In software development much of the work is done in a tool-chain. The tool-chain contains tools like text editors, compilers, linkers, static analysis tools, automatic test frameworks etc. An alternative way to communicate and verify non-functional requirements is to add them to the tool-chain as automated tests and checkers, so the developers get fast automated feedback when they do mistakes. I have worked many years as a software architect defining and writing architectural requirements and my observations and experiences shows that the productivity is increased and number of non-compliant non-functional requirements is lower using the tool-chain feedback instead of using guidelines and reports.
Article Search
Position on Metrics for Security in Requirements Engineering
Mahwish Kundi and Ruzanna Chitchyan
(University of Leicester, UK)
A number of well-established software quality metrics are in use in code testing. It is our position that for many code-testing metrics for security equivalent requirements level metrics should be defined. Such requirements-level security metrics should be used in evaluating the quality of software security early on, in order to ensure that the resultant software system possesses the required security characteristics and quality.
Article Search

Formal Languages and Models

C&L: Generating Model Based Test Cases from Natural Language Requirements Descriptions
Edgar Sarmiento, Julio Cesar Sampaio do Prado Leite, and Eduardo Almentero
(PUC-Rio, Brazil; Federal Rural University of Rio de Janeiro, Brazil)
Software testing tasks are usually time-consuming, especially if one considers complex projects. Requirements engineering artifacts are a valuable starting point for the development of software products, and most of software requirements specifications are written in natural language. This paper presents a tool that implements an approach for generating test cases based on Natural Language (NL) requirements specifications. The C&L tool translates automatically NL requirements descriptions into behavioral models to support automated testing. Our approach is easy to use and at the same time it decreases the time and the effort with respect to test case generation. Demonstration of the feasibility of the proposed approach is based on a example of use that describes the operation of the C&L tool.
Article Search
Towards the Automated Generation of Abstract Test Cases from Requirements Models
Maria Fernanda Granda, Nelly Condori-Fernández, Tanja E. J. Vos, and Oscar Pastor
(University of Cuenca, Ecuador; VU University Amsterdam, Netherlands; Universidad Politécnica de Valencia, Spain)
In a testing process, the design, selection, creation and execution of test cases is a very time-consuming and error-prone task when done manually, since suitable and effective test cases must be obtained from the requirements. This paper presents a model-driven testing approach for conceptual schemas that automatically generates a set of abstract test cases, from requirements models. In this way, tests and requirements are linked together to find defects as soon as possible, which can considerably reduce the risk of defects and project reworking. The authors propose a generation strategy which consists of: two meta-models, a set of transformations rules which are used to generate a Test Model, and the Abstract Test Cases from an existing approach to communication-oriented Requirements Engineering; and an algorithm based on Breadth-First Search. A practical application of our approach is included.
Article Search
The Observer-Based Technique for Requirements Validation in Embedded Real-Time Systems
Jiale Zhou, Yue Lu, and Kristina Lundqvist
(Mälardalen University, Sweden)
Model-based requirements validation is an increasingly attractive approach to discovering hidden flaws in requirements in the early phases of systems development life cycle. The application of using traditional methods such as model checking for the validation purpose is limited by the growing complexity of embedded real-time systems (ERTS). The observer-based technique is a lightweight validation technique, which has shown its potential as a means of validating the correctness of model behaviors. In this paper, the novelty of our contributions is three-fold: 1) we formally define the observer constructs for our formal specification language namely the Timed Abstract State Machine (TASM) language and, 2) we propose the Events Monitoring Logic (EvML) to facilitate the observer specification and, 3) we show how to execute observers to validate the requirements describing the functional behaviors and non-functional properties (such as timing) of ERTS. We also illustrate the applicability of the extended TASM language through an industrial application of a Vehicle Locking-Unlocking system.
Article Search

proc time: 0.12