• Keine Ergebnisse gefunden

to 58 performance requirements taken from 11 industrial specifications and analyzed (i) the applicability and (ii) the ability to uncover incompleteness. We were able to rephrase 86% of the performance requirements. Moreover, we found that the resulting sentence patterns can be used to detect incompleteness in performance requirements, revealing that 68% of the analyzed performance requirements were incomplete.

This contribution supports (the second part of) our hypothesis, i.e., it provides an instantiation and assessment of the approach.

Delimitation: Focus on Product-related Requirements

We focus on product-related requirements, i.e., requirements that describe properties of the product or system under development, and explicitly exclude process-related requirements, i.e., requirements that describe properties concerning the development process2. We further categorize product-related requirements intofunctional requirements, quality requirements, andconstraints. Moreover, in contrast to e.g. Pohl [2010], we do not understand “non-functional” requirements as underspecified requirements. We do consider functional requirements and quality requirements without considering the level of underspecification of the requirement. Thus, for the remainder of this dissertation, the terms product-related non-functional requirementandquality requirementonly differ with respect to one point: quality requirements additionally provide the quality property to which they refer, while non-functional requirements do not.

1.5. Outline

This dissertation consists of ten chapters. Chapter 2 (Fundamentals) introduces the fun-damentals of this dissertation: the requirements engineering discipline and its important concepts, the Focus theory and its probabilistic extension, and Broy’s requirements categorization (which is based on theFocus system model). Chapter 3 (Related Work) describes the current state of the art regarding the contents of this dissertation in general.

In particular, we report on related work regarding requirements categorizations and their implications in practice. Chapter 4 (An Investigation of How Practitioners Handle Requirements) investigates how practitioners categorize and handle requirements. In Chapter 5 (An Analysis of the Adequacy of a Categorization based on a System Model with Respect to Requirements found in Practice), we empirically investigate whether a requirements categorization that is based on a system model is adequate1 for indus-trial requirements. Chapter 6 (An Analysis of Requirements Categorizations and their Consequences in Practice) analyzes the state of the practice and derives problems with requirements categorizations sketches possible solutions to overcome the deficiencies

2Sometimes, the distinction between product and related requirements is not made and process-related requirements are subsumed as constraints. In this dissertation, we want to make explicit that we focus on product-related requirements.

1. Introduction

associated with QR in practice. In Chapter 7 (An Approach for Defining, Specifying, and Integrating Quality Requirements based on a System Model), we introduce our approach for defining, specifying, and integrating quality requirements and exemplarily show how to apply it for performance and availability requirements. Chapter 8 (Validation of the Approach on the Example of Performance Requirements) evaluates our approach with respect to its applicability and ability to detect incompleteness in industrial performance requirements. In Chapter 9 (Reflection on the Expressiveness of our Approach), we dis-cuss the limitations of our approach and, finally, in Chapter 10 (Conclusions & Outlook), we conclude the dissertation and formulate future research directions.

Previously Published Material

Parts of this dissertation have been previously published in the following publications:

• Eckhardt, J., Méndez Fernández, D., and Vogelsang, A. (2015). How to specify Non-functional Requirements to support seamless modeling? A Study Design and Preliminary Results. InProceedings of the 9th International Symposium on Empirical Software Engineering and Measurement (ESEM), pages 164–167 (short paper, research track, 4 pages)

• Eckhardt, J., Vogelsang, A., and Méndez Fernández, D. (2016c). Are Non-functional Requirements Really Non-functional? An Investigation of Non-functional Require-ments in Practice. InProceedings of the 38th International Conference on Software Engineering (ICSE), pages 832–842 (full paper, research track, 10 pages)

• Eckhardt, J., Vogelsang, A., Femmer, H., and Mager, P. (2016b). Challenging Incompleteness of Performance Requirements by Sentence Patterns. InProceedings of the 24th International Requirements Engineering Conference (RE), pages 46–55 (full paper, research track, 10 pages)

• Eckhardt, J., Vogelsang, A., and Mendéz Fernández, D. (2016d). On the Distinc-tion of FuncDistinc-tional and Quality Requirements in Practice. In Proceedings of the 17th International Conference on Product-Focused Software Process Improvement (PROFES), pages 31–47 (full paper, research track, 16 pages)

• Eckhardt, J., Vogelsang, A., and Femmer, H. (2016a). An Approach for Creating Sentence Patterns for Quality Requirements. InProceedings of the 6th International Workshop on Requirements Patterns (RePa), pages 308–315 (full paper, 8 pages)

12

“We are like dwarfs on the shoulders of giants, so that we can see more than they, and things at a greater distance, not by virtue of any sharpness of sight on our part, or any physical distinction, but because we are carried high and raised up by their giant size.”

Bernard De Chartres, 12th century

2 Chapter

Fundamentals

T

he goal of this chapter is to provide the fundamentals for this dissertation. First, to set the scope of this dissertation, in Section 2.1, we introduce fundamentals on requirements engineering in general, including its major goals, its core concepts and definitions. As this thesis discusses a categorization based on a system model, we provide an overview of a particular system modeling theory, namely the Focustheory and its probabilistic extension in Section 2.2. Finally, in Section 2.3, we introduce Broy’s requirements categorization that is based the system model of theFocus theory.

2.1. Fundamentals: Requirements Engineering

The IEEE standard committee defines software engineering as a systematic and cost-effective approach to software development projects [IEEE Std 610.12-1990, 1990], which can be divided into different phases, such as requirements engineering, design, implemen-tation or testing. In this disserimplemen-tation, we are in particular interested in requirements engineering (RE). To this end, we subsequently introduce the foundations in the area of requirements engineering.

2.1.1. Goals of Requirements Engineering

RE aims to discover the purpose of software systems, identify stakeholders and their needs, anddocument these in a form that is amenable to analysis, communication, and subsequent implementation [Nuseibeh and Easterbrook, 2000]. According to Zave [1997], RE has the following goals: