Requirements Definition (K Level 4/5) Flashcards
Requirements definition (4.1)
“A feature which business
staff need a system
(business or IT) to provide.
Rationale for requirements engineering (4.1)
RE Frameowork ensures full elicitation/analysis/validation/documentation & management of requirements
Framework helps improve quality and produces well-defined requirements (unambiguous, well-structures, correct & relevant)
How would the RE framework be viewed?
Iterative not sequential - it can be flexible
Stages of RE Framework
Elicitation
Analysis
Validation
Documentation
Management
What is the relationship between Elicitation/Analysis/Validation
Elicitation - Information about requirements
Analysis - Improves the quality: generates gaps and questions and determines if more elicitation needs to take place. Analysis produces defined requirements
Validation - Are we willing to accept these requirements/benchmark them? Any issues identified during validation pushes them back into analysis
Why do Requirements Arise?
Business changes (operational/business process change) i.e. growth
Strategic change
New business, products, business rules or regulations
Opportunities for improvement
Competition
What should be considered when planning the requirement approach?
Requirement work must always be conducted pragmatically & RE framework is intended to be as flexible as the situation demands
Organisational standards (r.e. documentation and modelling)
Project approach
Types of Requirement (i.e. is NFR needed?
Nature of the solution (COTS vs Bespoke)
How does requirement approach differ for Linear and Agile projects
Linear: complete set of requirements needed before development
Agile: RE approach to establish an initial set of outline requirements. A selected subset elaborated at each iteration
How does the requirement approach differ depending on nature of solution
Bespoke - detailed requirements
COTS - exhaustive detail not needed due to functionality constraints
What elements of POPIT are in scope e.g. big change to organisational processes/role/management?
Key activities in Requirements Elicitation
‘Drawing out’ requirements from stakeholders
Key activities in Requirements Analysis
Improve the quality of requirements
Review and analyse requirements: remove duplication, identity gaps (back to elicitation), negotiate conflict, evaluate feasibility and allocate priority
Key activities in Requirements Validation
Review requirements - assure they’re at the required level of quality
Key activities in Requirements Documentation
Producing narrative and diagrammatic definitions of requirements
Key activities in Requirements Management
Managing changes to the defined requirements & ensuring traceability
What is often over looked in a project plan?
Elicitation & analysis - this is vital so sufficient time should be allocated
How are requirements linked?
Requirements do not stand alone - lined via hierarchy
The hierarchy of requirements
Objectives link to Requirements
Business (G/T) constrain Solution (F/NF) requirements
What should all requirements be driven by?
An organisations objectives/strategy
Business (general/technical) requirements should be elaborated to generate what
F/NFR
Why is the hierarchy of requirement useful?
- Can trace original business drivers of requirement
- Ensures alignment to objective/strategy
General to FR/NFR example
General: comply with data protection legislation
FR: Record customer details
NFR: restrict access to customer details
What can techniques help with?
Requirements Elicitation
Technique used to elicit requirements
Interviews / Workshops / Observation / DA / SA / Surveys & Questionnaires
Interviews within Linear Project
Conduct structured interviews with stakeholders to elicit detailed requirements.
Sequentially interview relevant individuals to ensure a comprehensive understanding.
Interviews within Agile Project
Iterative interviews aligning with the iterative nature.
Interviews focus on specific user stories
Workshops within Linear Project
To agree the direction and scope of a project.
To discuss alternative, and sometimes conflicting, perspectives.
To elicit and agree business and/or system requirements.
To examine possible solutions to the requirements.
Workshops within Agile
Provide collaborative environment for cross functional teams
Workshops conducted iteratively in line with sprint planning (e.g. to select use stories from the back log)
Observation within Linear Project
Gather detailed insights into current workflows and identify potential areas for improvement
Uncover tacit knowledge / good understanding of people/process/politics
Observation within Agile Project
Integrate observation as a constant element throughout the agile development cycle e.g. use as needed to refine requirements
Document Analysis within Linear Project
Review and analyse source documentation (e.g. forms/reports) to elicit requirements (may be used to compliment other techniques)
Document Analysis within Agile Project
Relevant documentation analysed iteratively as requirements evolve
Surveys and Questionnaires within Linear Project
Surveys/Questionnaire designed, distributed and analysed to feed into detailed requirement specification
Surveys and Questionnaires within Agile Project
Short targeted questionnaires based on current iteration
Scenario Analysis within Linear Project
Deeper dive into process mapping - tells the story of the task
Pre-conditions/post-conditions
Scenario Analysis within Agile Project
Iterative development
a solution evolves through a series of iterations each of which adds features, functionality or performance
to what has been developed before.
Incremental delivery ?
Document analysis to elicit data requirements
Each identified data item can be expanded to elicit requirements e.g. who needs access to it / retention period (archiving requirement)
Scenario Analysis is particularly good for extracting what knowledge type
Tacit knowledge
Process for developing a scenario
- Identify task
- Identify steps/sequence
- Define control conditions
- Identify exception situations and responses e.g. for ‘confirm booking’ exception condition ‘payment declined’ response ‘advise customer to try another payment method’
Knowledge Types
Explicit Knowledge (known knowns & known unknowns)
Tacit Knowledge (unknown unknowns & unknown knowns)
Tacit knowledge
Information that an individual does not articulate or explain
May be due to: failure to recognise the information is required / assumption the information is already known
How do we move from Tacit to Explicit Knowledge?
ORE
Observe (shadowing)
Recount (story telling / scenario analysis)
Enact (prototype/scenario role play)
Report & record
Distribute
What is the difference between Storytelling & Scenario Analysis?
Storytelling - enterprise level
Scenario Analysis - task level