Slide 1

Slide 1 text

An Approach for Creating Sentence Patterns for Quality Requirements RePa 2016, Beijing, China September 13, 2016 Jonas Eckhardt1, Andreas Vogelsang2, Henning Femmer1 1 Technische Universität München 2 Technische Universität Berlin @andivogelsang

Slide 2

Slide 2 text

Sentence Patterns / Requirements Templates Sentence patterns provide a way to embody comprehensive and structured knowledge about requirements concerning a specific quality attribute [1] But: • Sentence patterns mostly for functional requirements • Relevant information depends on the context (how reqs are used) 2 Example: „The response time of the system shall be less than 1s.“ [1] S. Withall. Software Requirement Patterns. Microsoft Press, 2007

Slide 3

Slide 3 text

Quality Requirements But: • Definitions of quality attributes are not very precise • No support for specifying quality requirements 3 [ISO 25010] Performance – Time behavior: The degree to which the response and processing times and throughput rates of a product or system, when performing its functions, meet requirements.

Slide 4

Slide 4 text

Our Contribution An approach for creating sentence patterns for quality requirements that 1. provides a precise and explicit definition of the relevant information for a quality attribute 2. allows customization for a specific (usage) context 4

Slide 5

Slide 5 text

1. Extraction of Content Elements 5 Search literature for definitions of quality attribute Extract content elements and arrange them in a content model Performance – Time behavior: The degree to which the response and processing times and throughput rates of a product or system, when performing its functions, meet requirements. System Response time Processing time Throughput rate Function has has has performs

Slide 6

Slide 6 text

2. Definition of Content Elements 6 Provide a definition for each content element informal Content element Definition Throughput rate The number of answered requests per time interval … … formal [2] [2] based on: M. Broy. A logical basis for component-oriented software and systems engineering. The Computer Journal, 53(10), 2010

Slide 7

Slide 7 text

3. Context-dependent Customization Associate development activities with relevant content elements 7 Create Test Case Implement Requirement Measurement Period Prioritize Requirement Plan Test Execution mandatory optional Measurement Location Modality

Slide 8

Slide 8 text

4. Concretization 8 Translate content model parts to sentence fragments … … … Observation Frame “between event [A] and event [B]” Event start end

Slide 9

Slide 9 text

Sentence Patterns for Performance Requirements 9 a) Time Behavior Requirements b) Throughput Requirements c) Capacity Requirements d) Auxiliary Conditions

Slide 10

Slide 10 text

Overview of Our Approach 10

Slide 11

Slide 11 text

So What? • Syntactic analysis of requirements – A quality requirement is strongly complete if all mandatory content elements are explicitly contained in its textual representation. – A quality requirement is weakly complete if all mandatory content elements are explicitly or implicitly contained in its textual representation. – A quality requirement is incomplete if at least one mandatory content element is missing in its textual representation. • Analysis of the content of requirements in practice 11 Spoiler! (50 performance requirements from practice): • 68% incomplete • 32% complete (18% strongly complete) Spoiler! (50 performance requirements from practice): • 34% of reqs only consider a specific function • Only 2% of reqs mention a specific platform

Slide 12

Slide 12 text

Summary Thank you. @andivogelsang [email protected] Existing sentence patterns for QR are too general and lack customization Our Approach The cool stuff: Check reqs for completeness Analysis of used content elements Presentation on performance reqs in practice! Wednesday, 10:30 AM, Meeting Room No.1

Slide 13

Slide 13 text

Backup 13

Slide 14

Slide 14 text

14