1 management :. 2 requirements management requirements elicit requirements model requirements...
TRANSCRIPT
1
Management :Management :
2
Requirements Management
Requirements
Elicit requirements
Model requirements
validate requirements
Manage evolution
implement traceability
3
Configuration Management
• Change Control
• Version Control
• Access to different configurations
4
Definitions• Component (artifact) version
– component + modifications
– Temporal axis
– Initial component (1a. Version)
• Software Version (release)– Set of components taken at a specific point in time
• Configuration– Selection of components that are part of a determined
set (Ex: components of release 3.1)
5
Configuration Management• Advantages
– Avoid potentially destructive or frivol changes on requirements
– Keep/maintain updated revisions of requirements documentation
– Facilitate the recovery and reconstruction of previous versions
– Offer support to a configuration strategy for new versions
– Prevent simultaneous changes
6
Version Control
• Coordinate and manage objects in evolution
• Successive Refinements– requirements– models– code
• Keep intermediary versions
• Log of changes
7
Management
• Escope
• Changes
• Risc
• Traceability
• Prioritization
8
Requirement Management
• Manage Requirements is to ensure all clients requests are being examined during the SDLC
• For this it is essential that such requests are related to software products (requirements allocation)
9
Requirement Management
• It is orthogonal to the process of requirements definition (elicitation, modelling and analysis)
• Supervene the whole process of software development and evolution
10
What is Scope?
• Combination of functionality, resources and time
ESCOPE
Time
RESOURCES
Due Date
11
Scope
• Problems:– NFR: May consume a big portion of time and
resources– Not all resources are available or are known at
the beginning– Typical culture that software is always LATE– (time) – save time is an illusion !!!
• “Add people to a late project will only get this project worst” Brooks
12
Controlling the scope
• “Since” Syndrome – keep adding requirements
• Caper Jones reports that requirements that “crawl under the scope” represent– risk of 80% to information system projects– risk of 70% to military projects
13
Controlling the scope
• Crawling Requirements – New functionality– modifications
• requirements
• bigger scope
SAY NO !!!
14
What means to Prioritize? [Wiegers]
• Trade off between:– scope– time– resources
• Assure that the Essential is done
15
Why prioritize?
• High Expectations
• Short Time
• Limited Resources
• Saying:
“We do what we can not what we want”
16
Prioritization techniques
• Formal– QFD
• Informal– CAN 100– Categorize
17
QFD (quality function deployment)
• Participants:– Manager– Key figures – developers
[Cohen95/Wiegers]
18
QFD• Steps of the process:
1. List in a spreadsheet the requirements, functionality or use cases that you want to prioritize
2. Estimate the relative benefit of each one using a 1-9 scale, where 1 means a neglectable one and 9 a grate value requirement
19
QFD
3. Estimate the penalty the client or the business will suffer if the requirements is not included. 1 means a minimum penalty while 9 means a huge loss
4. Create a column - total value – which represents the sum of the benefit and penalty
5. Use a spreadsheet to calculate the percentage of the total value that each item represents (value%)
20
QFD
6. Estimate the implementation cost for each item also using a 1(low) to 9 (High) scale
7. Use the spreadsheet to calculate the percentage of the total cost each item represents (cost%)
8. Estimate the risk each item represents using a 1 to 9 scale
9. Use the spreadsheet to calculate the percentage of the total risk that each item represents (risk%)
21
QFD
• Once we have all the estimative:
• Organize the item using a descending order in priority
Priority = value%____________ (cost%*cost)+(risk%*risk)
22
QFD
Critics:• Semi-quantitative method
• Not very precise
• Depends on personal skills. How well one can estimate benefits, cost and risk
23
Informal Techniques [Leffingwell]
$ 100– Carried out during a meeting
– Each participant is given $ 100 to spend buying requirements
– Write in a piece of paper how much money you would spend in each requirement
– Tabulate results
– Requirements ranking
24
Informal TechniquesCategorization
– off line– Each interested part gets a list of requirements– Classify according to the following criteria
• Critical – indispensable
• Important – represents loss of functionality or loss off market share
• Useful – makes life easier
– Set values 1,2 or 3 (where 1 is critical) – Make a ranking with the results
25
Risk Management
• Occurrences that may impact the project
• Combination of probability and type of consequence
• processes:– identification– Weighing – planning– control
26
Identifying Risks• Conditions, activities, decisions that may affect
the success of the project• Types of risk
– scope (larger/smaller)– evolution– resources– Personal (outsourced, partners, employees)– New technologies– NFR (very tight (rigid) constraints)
27
Identifying risks
• Risk Levels– intolerable– Acceptable if reduction is out of question– Acceptable– negotiable
28
Weighing risks
• Probability– low– Very low– high– Very high
• Risk list sorted by probability
• Risk list sorted by level of risk, type and probability
29
Risk List
Risk level Type of Risk
probability Risk description
30
Planning
• Detecting the sooner the possible from top of the list (level, probability)
• alternatives for correction
• alternatives to live with
31
Control
• Verification points between the global plan and the risk list
• Responsibilities
• Action (following alternatives)
32
Link Requirements to software components
• Also called Traceability, because it must allow one to browse through software products, including the requirements, regarding clients demands.
33
Exemple:User occupies room - Version 1 Goal: establish the procedure for occupied room
Context: 4th floor of building 32 , motion detector in order, user entered roomResource: value T1 Default light scene for this room, Chosen light scene valueActors: user, Control system Episodes: 1. user enters room2. user chooses light scene3. IF room is reoccupied wihtin T1 minutes THEN activate last Chosen light scene 4.IF room is reoccupied after T1 minutes THEN activate Default light scene
Lel entry: Room / RoomsNotion:Part of a hallway section . A room can be a computer lab , an office , a hardware lab , a meeting room, and or a peripheral room .
Behavioral responses:All rooms in a hallway section can be accessed via a connected hallway section For each room , the chosen light scene can be set by using the room control panel For each room , the default light scene can be set by using the room control panel . For each room , the value of T1 can be set by using the room control panel .
34
Requirements traceability
• Definition:– Ability to follow the life of a requirements
• Pre e pos traceability
• Implicit and explicit
• Internal (to the artifact) and external
35
Pre e pos traceability
36
Pre e pos traceability
• Pre traceability:– Before adding to the requirements document
• Where it comes from?• Who suggested?• Why?
• pos traceability:– After something is added to the requirements
document
37
a
bc
d
e
f
g
h
UofD
i
j
REQUIREMENTS
definition
design
implementation
maintenance
problem
software
Req. DocumentReq. DocVersion 3
Req. Doc Version 1
Req. Doc. Version 2
PreTraceability
Postraceability
38
Implicit and explicit• Explicit
– Shows the relationship among artifacts– Develop/create relationships from external
considerations given by team members– implemented (link or explicit indicator)
• Implicit– artifacts show indicative– The relationship among artifacts is manually done
by whom is interested
39
Example
OO Model
40
Why trace???
• Changes in requirements during the development process are natural;
• motives: requirements not identified before; changes in the context; errors fixing; new perspectives from the stakeholders;
• Changes in requirements may implicate changes in design, code, use case tests etc.
Managing Changes
41
Why Trace???
• Aspects related to quality: CMM, CMMI, ISO 9001, SPICE
• CMMI: continued modes in levels (staged): staged is similar to CMM, but includes KPAs (Key Process Areas) as well as some changes
• KPAs level 2 in CMM are strongly related to ISO 9001
Quality Assurance
42
Internal X External
• Internal– Relationship between artifacts of the same type
• For example: scenarios– Other scenarios
– Other versions of the same scenario
• External– Relationship between different artifacts
• Example: scenarios and class diagram
• Example: requirement and Java code
43
traceability (vertical)
Solicitations:
Design:
Requirements:
Especification:
Level 1
Level 2
Level 3
Level 4
44
Changes
• The world is always changing– independent– unexpected
• Lack of planning
• unpredictable
• The requirements process implies in changes– All interested parts get to know the UofD better
45
Changes
TIME
UofD
UofDUofD
46
Changes
Real • New demands• Incomplete
requirements• Inconsistent
requirements
Desired• Fixed requirements• Complete
Requirements• Consistent
Requirements• Clients speaking the
same language
47
Evolution
• Incomplete, inconsistent Requirements– Latency– Decision
• Late binding• Early binding
• Unexpected requirements• Non-planned requirements
Be Prepared for changing !!!
48
References• [Karsenty96] – Karsenty, L. – An Empirical Evaluation of Design Rationale Documents - Proceedings of
the Conference on Human Factors in Computing Systems – CHI’96 – Vancouver, Canada, 1996. pp150 – 156.
• Jirotka95] – Jirotka, M. et al. – Ethnography by Video for Requirements Capture – mini tutorial presented at the in the Second IEEE International Symposium on Requirements Engineering (RE’95) – York, March 27 to 29 - 1995.
• [Carroll94] – Carroll, J.; Alpert, S.; Karat, J.; Van Deusen, M.; Rosson, M. – Raison d’etre: capturing design history and rationale in multimedia narratives. Proceedings of Human Factors in Computing Systems (CHI94) – ACM Press - Boston, USA, 1994. pp. 192-197
• [Conklin96] – Conklin, J.; Burgess-Yakemovic, KC – A process-oriented approach to design rationale - in Design Rationale: Concepts, Techniques and Use, edited by T. Moran and J. Carroll, Lawrence Erlbaum Associates, Publishers – 1996. pp.393-428.
• [Wood94] - Wood, D.P., Christel, M.G. and Stevens, S.M., A Multimedia Approach to Requirements Capture and Modeling, in Proceedings of the First International Conference on Requirements Engineering IEEE Computer Society Press – Colorado Springs, April 18 to 22 - 1994, pp.53-58.
• [Gotel95] – Gotel, O. and Finkelstein, A. – Contribution Structures – in the Proceedings of the Second IEEE International Symposium on Requirements Engineering (RE’95) – York, March 27 to 29 – IEEE Computer Society Press, 1995, pp. 100-107.