Elicitation Techniques Flashcards
Stakeholder Classification
Stakeholders can be classified according to their:
* Relevance and significance for the project success
→ Primary and secondary stakeholders (Clarkson 1995)
* Participation in the project
→ Active and passive stakeholders (Mahoney 1994)
* Ability to formulate requirements
→ If development happens for a market instead of a dedicated customer, there is no client with a user role!
* Role within the project
→ Decision-making and instruction powers
→ Type of interest
Stakeholder Model in AMDiRE
In artifact-oriented engineering models, a model
of the stakeholder is the basis to identify
Objectives & Goals, which then influence the
System Vision
Stakeholder Model: Advantages
Make knowledge about stakeholders explicit:
- Supertypes and subtypes
- Relation to other stakeholders
Optional:
- Function of a stakeholder (e.g. annotation)
- Priority (e.g. color, transparency, footnote)
- Availability (e.g. color, transparency, footnote)
- Possibly conflicting interests or support
what is requirement candidate?
The result of the elicitation
challenges from stakeholders to requirements
Challenges:
- Finding the stakeholders
- Some stakeholders are not available for discussions (e.g. legislation, competing suppliers)
- Stakeholders are not able to express their expectation:
„Well, I don‘t know what I imagined, but certainly not that!“
- Stakeholders might know what they want, but not what they need:
„I want a Ferrari to go on safaris in the jungle.”
- Hardly any separation of problem and solution:
„There should by a green button with a disk icon to save my progress, and a red X to dismiss
my changes.“
why The requirement candidates are not suitable for development without further processing?
because
they are formulated from a very specific stakeholder viewpoint.
Morphological Box (Zwicky Box)
List all possible configurations for every attribute of the system in a brainstorming-like manner.
Then, find combinations that are promising and feasible within the project.
IDEO Method Cards
LEARN | Error Analysis:
List all things that could possibly go wrong when
using the product and determine their causes
LOOK | Fly on the Wall:
Observe and record users in their context without
interfering, to see what people actually do within the
real contexts instead of relying on their statements.
ASK | Five Whys:
Ask „Why?“ in response to five consecutive
answers.
TRY | Paper prototyping:
Sketch, layout, print / build a concept as early as
possible using paper or cardboard.
Why use creativity techniques?
adv:
Foster thinking outside usual patterns:
Finding solutions that you would not otherwise
come up with
Easier identification of underlying problem and
easier separation of problem/solution
disadv:
* Learning curve
* Time consuming
Requires willingness to open up
attributes of persona
A persona consists of two aspects: personal characteristics and usage scenario
motivation, hobbies, job, relationship status…
offline behavior (how user achieves the goal)
online behavior (loves to share things on social media)
Persona: Usage Scenario
The scenario is a detailed narrative how the persona would use the
system. Being as concrete as possible often opens new viewpoints.
personas: adv and disadv
adv:
Does not need access to actual users
disadv: Difficult to separate from your own desires
and ideas
Personas do not deliver requirements, only candidates, which then have to be consolidated!!
Types of goals
Functional goals
* e.g, 98% of users should have a scooter within walking-distance.
* Can be divided into satisfaction and information goals. One agent satisfies the requirement as such, while
a second agent is responsible to inform the user
Non-functional goals
− Non-functional goals can be iteratively refined into actionable requirements
* Accuracy goals ensure that the state of the software corresponds to the object in the environment (e.g., if the
scooter app indicates a scooter is at some place, the scooter is actually there), Performance goals, Security
goals (CIA triad).
* Soft goals (no clear-cut measure) vs. hard goals (can be verified)
GORE: Goal-oriented Requirements Engineering
ORE focuses on activities that precede the formulation of system-level requirements.
It aims to answer the question why a system is needed in the first place
In GORE, agents are responsible for achieving goals. Examples: humans, devices, software
A requirement is a ‘sub-goal’ that a single software agent has to fulfill.
An assumption is a goal delegated to a single agent in the environment.
Assumptions cannot be enforced by the system-to-be!
goal refinement tree
provides traceability links from high-level
strategic objectives to low-level technical requirements. These trees
are the core idea behind GORE.