4. User Stories Flashcards
Requirement Risk
- lack of understanding of the business or social context
- uncertainty on what the system should do
- cultural differences between
- ambiguous or vague requirements specifications
- ambiguities over domain elements
Managing requirement risks
User stories
prototyping
Requirement gathering
an iterative process of elicitation, specification, and validation.
Evolving requirements
- problem domain changes
- customer’s own understanding of the problem increases
- progress on system design and implementation uncovers new risks and opportunities
Elicitation
- identify - project stakeholders
- elaborate - full user requirement
- draw - system boundary
- understand - organisational context and culture
- make - hidden assumptions explicit
- define - other goals
How to approach elicitation
avoid early commitments to particular design solutions
requirement gathering is an ongoing process
System boundary
what a system should and should not do
elicitation techniques
questionnaires
observations
interviews
how to conduct interviews
- prepare user stories from initial problem
- structure questions to identify new user stories and resolve uncertainties
- coordinate the questions selected with other interview teams
- be prepared to vary the discussion if unexpected, but important, topics emerge
- practice the interview to avoid running over time. Make sure everyone know their roles
type of Questionnaires
closed question
open questions
Observations
- documented workflows of an organisation are often very different from how tasks are actually carried out.
- work practice continues to evolve over time
- stakeholders, users and beneficiaries revealed after observing real work practices
- observations reveal assumptions that prospective users have about the features of the proposed system
Actors/ roles/ personas
- describe categories of users
- avoid actors that are too general or too specific - include actor specific motivation
- goals
- frustrations - essential for justifying the existence of features
- help identify one of the types of system stakeholders to negotiate.
Requirement scope
in theory every action on a system should be a user story
- scope would be unbounded
- many duplicated stories across multiple systems
- effort wasted on acceptance testing
focus on business logic
treat framework features as assumptions
Refining user stories
- adding more details
- refined into implementation tasks (stories may share tasks)
- story prioritisation (MOSCOW)
- must have
- should have
- could have
- would be nice to have
Scenarios are useful for
- describing workflow
- specifying acceptance test