Professional Documents
Culture Documents
Introduction - Contd
Introduction - Contd
LECTURE 2016/2017
Introduction
© Fraunhofer IESE
The ReqMan Framework (2013)
© Fraunhofer IESE
Motivation & Overview
ROLE OF COMMUNICATION
© Fraunhofer IESE
Requirements Engineering can Avoid Typical Problems
Non-consideration of stakeholders
Unclear or missing requirements
Insufficient documentation and (change) management of requirements
Insufficient negotiation
Missing distinction of requirements and design decisions
Insufficient relationship with testing activities
© Fraunhofer IESE
But Why is Requirements Engineering Still So
Problematic?
© Fraunhofer IESE
The Importance of Communication...
© Fraunhofer IESE
The Role of Communication
10
© Fraunhofer IESE
Communication Model
11
© Fraunhofer IESE
Characteristics of a Good Requirements Engineer
Analytic thinking
Empathy
Communication skills
Conflict resolution skills
Moderation skills
Self-confidence
Persuasiveness
Domain knowledge
Technical knowledge (inkl. SE Knowledge)
12
© Fraunhofer IESE
Motivation & Overview
REQUIREMENTS TYPES
13
© Fraunhofer IESE
Requirements Types
Functional Requirements
A requirement concerning a result of behavior that shall be provided by
a function of a system (or a component or service).
Quality Requirements
A requirement that pertains to a quality concern that is not covered by
functional requirements.
Constraints
A requirement that limits the solution space beyond what is necessary
for meeting the given functional requirements and quality
requirements.
Non-functional Requirements
Quality Requirements + Constraints
14
© Fraunhofer IESE
Types of Quality Requirements (ISO 9126)
16
© Fraunhofer IESE
Types of Quality Requirements (ISO 25010)
17
© Fraunhofer IESE
In any Case…
Bad examples
The system shall be highly reliable.
The system shall be secure.
Better examples
The system shall have an availability of 99,5% on average a year with a
maximum downtime of 4 hours. (Quantification)
The system shall allow only authenticated and authorized users an access.
Authentication shall be made with an user name and a password of at least
8 characters. (Operationalization)
18
© Fraunhofer IESE
Reference Objects for Requirements
© Fraunhofer IESE
Reference Objects
support completeness
decisions regarding reference objects must always be made in a project
the only questions is whether this is done implicitly or explicitly
support focusing
it is neither meaningful nor possible to address all aspects at the same
time
define requirements classes
e.g., user interface requirements, business process requirements, data
requirements, …
20
© Fraunhofer IESE
Task-Oriented Requirements Engineering (TORE)
Idea:
System development should be driven and motivated by (business) tasks
to be supported
Each system capability / property can be traced back to them
not more or less functionality than actually needed
Goal achievement can be assured constructively
Facilitates communication between stakeholders and developers
21
© Fraunhofer IESE
The TORE Framework
Requirements Decisions
Domain
System
Level As-is Activities To-be Activities
Responsibilities
Domain Data
Interaction
Level System Functions Interactions Interaction-Data UI-Structure
System
Level GUI Navigation/
Dialog UI-Data Screen-Structure
Supported Functions
Application Core
Internal Actions Architecture Internal Data
22
© Fraunhofer IESE
Motivation & Overview
REQUIREMENTS ENGINEERING
IN DEVELOPMENT APPROACHES
23
© Fraunhofer IESE
Development Approaches
24
© Fraunhofer IESE
Unified Process
25
© Fraunhofer IESE
INCOSE Systems Engineering Handbook
26
© Fraunhofer IESE
NASA Systems Engineering Handbook
27
© Fraunhofer IESE
Scrum
28
Common
Acceptance Ownership
Test
Unit Test
Pair Programming
Metaphor
Programming
Short Increments Standards
40 hour week
Continuous Integration
29
© Fraunhofer IESE
Questions
30
© Fraunhofer IESE