Se Unit 5 Notes 10 Mar 2024
Se Unit 5 Notes 10 Mar 2024
Se Unit 5 Notes 10 Mar 2024
UNIT-5
RISK MANAGEMENT
This involves devising plans to protect critical assets via educating the
business about the who, what, where, why and how threats can be
potentially expose their valuable, sensitive assets.
“If you don’t attack the risks, they will attack you”
2. Software Risks :
A ‘Reactive Risk Strategy’ is a response based approach, which is solely
a) Uncertainty : the risk may or may not happen; that is there are no 100%
probable risks.
1
b) Loss : If the risk becomes a reality, unwanted consequences or losses
will occur.
a) Project Risks :
Project Risks threaten the project plan. That is, if project risks
become real, it is likely that project schedule will slip and that costs
will increase.
b) Technical Risks :
Technical Risks threaten the quality and timeliness of the software
to be produced.
If a technical risk becomes a reality, implementation may become
difficult or impossible.
c) Business Risks :
Business Risks threaten the viability of the software to be built.
Business Risks often jeopardize the project or the product.
Candidates for the top five business risks are :
i) building an excellent product or system that no one really wants
ii) building a product that no longer fits into the overall business
strategy for the company.
iii) building a product that the sales force does not under stand
how to sell.
iv) losing the support of senior management due to a change in
focus or change in people.
v) losing budgetary or personnel commitment.
Predictable Risks : are extrapolated from past project experience.
Unpredictable Risks : risks are the joker in the deck. They can and
do occur, but they are extremely difficult to identify in advance.
2
3. a) Risk Identification :
3
iv) Have customers been involved fully in the definition of
requirements.
v) Do end-users have realistic expectations.
vi) Is project scope stable.
vii) Does the software engineering tem have the right mix of skills.
viii) Are project requirements stable.
ix) Does the project team have experience with the technology to
be implemented.
x) Is the number of people on the project team adequate to do the
job.
xi) Do all customer/user constituencies agree on the importance
of the project and on the requirements for the system /
product to be built.
If any one of the questions is answered negatively, mitigation,
monitoring, and management steps should be instituted without
fail.
c) Risk Components and Drivers :
The Risk components are :
i) Performance Risk : the degree of uncertainty that the product
will meet its requirements and be fit for its intended use.
ii) Cost Risk : the degree of uncertainty that the product budget
will be maintained.
iii) Support Risk : the degree of uncertainty that the resultant
software will be easy to correct, adapt and enhance.
iv) Schedule Risk : the degree of uncertainty that the project
schedule will be maintained and that the product will be
delivered on time.
The impact of Risk Driver on the risk component is divided into
one of four impact categories :
negligible marginal critical catastrophic
4
4. a) Risk Projection :
The Project planner, along with other managers and technical staff,
performs the following four risk projection steps :
a) Establish a scale that reflects the perceived likelihood of a risk.
c) Estimate the impact of the risk on the project and the product.
d) Note the overall accuracy of the risk projection so that there will be
no mis-understandings.
The intent of these steps is to consider risks in a manner that leads to
prioritization.
By prioritizing the risks, the team can allocate resources where they will
have the most impact.
b) Developing a Risk Table :
A risk table provides a project manager with a simple technique for ‘risk
projection’.
A project team begins by listing all risks in the first column of the table.
Each risk is categorized in the second column of the table.
The probability of occurrence of the risk is entered in the next column.
The probability value for each risk can be estimated by team members
individually.
Nest, the impact of each risk is assessed.
Each risk component is assessed using the characterization presented.
1. Catastrophic 2. Critical 3. Marginal 4. Negligible
5
Sample Risk Table prior to Sorting :
Once the first four columns of the risk table have been completed, the
table is sorted by probability and by impact.
High probability, high-impact risks percolate to the top of the table, and
low-probability risks drop to the bottom.
This accomplishes ‘first-order risk prioritization’.
The project manager studies the resultant sorted table and defines a
cutoff line.
The ‘cutoff line’ (drawn horizontally at some point in the table) implies
that only risks above line will be given further attention.
Risks that fall below the line are reevaluated to accomplish second-order
prioritization.
In the following figure, risk impact and probability have a distinct
influence on management concern :
All risks that lie above the cutoff line must be managed.
The column labeled RMMM contains a pointer to
- Risk Mitigation
- Monitoring
- Management Plan
6
Risk and Management Concern :
7
The overall ‘risk exposure’, RE, is determined using the following :
RE = P X C
Here, P : the probability of occurrence for a risk
C : the cost to the project should the risk occur
Risk Identification :
Only 70 % of the software components scheduled for reuse well, be
integrated into the application.
The remaining functionality will have to be custom developed.
Risk Probability :
80 % likely.
Risk Impact :
60 reusable software components were planned.
If only 70 % can be used, 18 components would have to be developed
from scratch.
The average component is 100 LOC.
Local data indicate that the software engineering cost for each LOC
is Rs. 14.
The overall cost to develop the components would be :
Risk Exposure : RE = 0.80 X 25,200 = 20,200
Risk exposure can be computed for each risk in the risk table, once the
estimate of the cost of the risk is made.
The total risk exposure for all risks can provide a means for adjusting the
final cost estimate for a project.
This can also be used to predict the probable increase in staff resources
required at various points during the project schedule.
Note : Compare RE for all risks to the cost estimation for the project.
If RE is greater than 50 % of the project cost, the viability of the
project must be reevaluated.
8
5. Risk Refinement :
9
6. Risk Mitigation, Monitoring and Management :
The goal of all of the risk analysis activities is ‘To assist the project team
in developing a strategy for dealing with risk’.
An effective strategy must consider the following three issues :
a) Risk Avoidance
b) Risk Monitoring
c) Risk Management and Contingency Planning
To mitigate the risk, project management must develop a strategy for
reducing turnover.
Among the possible steps to be taken are :
a) Meet with current staff to determine causes for turnover.
b) Mitigate those causes that are under control before the project
starts.
10
‘Software Safety and Hazard Analysis’ are software quality assurance
activities that focus on the identification and assessment of potential
hazards that may affect software negatively and cause an entire system
to fail.
11
In most cases, RIS is maintained using DBMS system, so that creation
and information entry, priority ordering, searches and other analysis
may be accomplished easily.
Once the RMMM has been documented and the project has begun, then
the risk mitigation and monitoring steps commence.
‘Risk Mitigation’ is a problem avoidance activity.
‘Risk Monitoring’ is a project tracking activity with three primary
objectives :
a) To assess whether predicted risks do, in fact, occur.
b) To ensure that aversion steps defined for the risk are being
properly applied.
12
9. Quality Management :
The problem of quality management is not what people do not know
about it. The problem is what they think they do know.
Quality Management encompasses :
a) Software Quality Assurance process. (SQA)
b) Specific Quality Assurance and quality control tasks.
c) Effective software engineering practice. (methods and tools)
d) Control of all software work products and the changes made to them.
e) A procedure to ensure compliance with software development
standards.
f) Measurement and reporting mechanisms.
13
Quality Control :
‘Variation Control’ is may be equated with quality control.
A key concept of ‘quality control’ is that
- all work products have defined
Cost of Quality :
The ‘cost of quality’ includes all costs incurred in the pursuit of quality or
in performing quality-related activities.
Cost of quality studies are conducted
- provide a base line for the current cost of quality
- identify opportunities for reducing the cost of quality
- provide a normalized basis of comparison.
14
Failure costs are subdivided into the following :
i) Internal Failure Costs : are incurred when we detect a defect in
our product prior to shipment.
Internal Failure costs include rework, repair, and failures.
ii) External Failure Costs : are associated with defects found after
the product has been shipped to the customer.
External Failure costs include complaint resolution, product
return, replacement and warranty work.
“It takes less time to do a thing right than to explain why you did
It wrong”
11. Software Quality Assurance (SQA) :
Software Quality : is defined as
“Conformance to
- explicitly stated functional and performance requirements
- explicitly documented development
- implicit characteristics that are expected of all professionally
developed software.”
Software Quality Assurance :
“Planned and systematic pattern of actions”
that are required to ensure high quality in software.
‘Software Quality Assurance is composed of a variety of tasks
associated with two different constituencies :
- The software engineers who do technical work
- SQA group that has responsibility for quality assurance planning,
oversight, record keeping, analysis and reporting.
SQA group includes software engineers, project managers, customers,
sales people, and the individuals, if any.
The goal of SQA is to remove quality problems in the software.
15
SQA Activities :
a) Prepares an SQA plan for a project.
16
13. Defect Amplification and Removal :
This model can be used to illustrate the generation and detection of
errors during the preliminary design, detail design and coding steps of a
software engineering process.
Defect Amplification Model :
17
Defect Amplification – No Reviews :
In the following figure, the same conditions except that design and code
reviews are conducted as part of the each development step.
In this case, 10 initial preliminary design errors are amplified to 24 errors
before testing. And only three latest defects exist.
Defect Amplification – Reviews Conducted :
18
14. Formal Technical Reviews :
A ‘formal technical review’ is a software quality control activity
performed by software engineers.
The objectives of FTR are :
a) To uncover errors in function, logic, or implementation for any
representation of the software.
19
Review Reporting and Record Keeping :
During the FTR, a reviewer (the recorder) actively records all issues that
have been raised.
These are summarized at the end of the review.
The summary report of FTR answers the following three questions :
a) What was reviewed.
20
Sample-Driven Reviews :
In an ideal setting, every software engineering work product would
undergo a FTR.
In the real world of software projects, resources are limited and time is
short.
As a consequence, reviews are often skipped, even though their value as
a quality control mechanism is recognized.
Inspections (FTRs) are only viewed efficient, if many faults are found
during the fault searching part.
To be effective, the ‘sample driven review’ process must attempt to
quantify those work products that are primary targets for FTR.
To accomplish this, the following steps are suggested :
a) Inspect a fraction Pi of each software work product, i.
Record the number of faults, Fi found within Pi.
21
15. Software Reliability :
‘Software Reliability’ is “the probability of failure-free operation of a
computer program in a specified environment for a specified time”.
“The unavoidable price of reliability is simplicity”
Failure : ‘Failure’ is nonconformance to software requirements.
22
16. The ISO 9000 Quality Standards :
- management responsibility
- quality system
- contract review
- design control
- document and data control
- product identification and traceability
- process control
- inspection and testing
- corrective and preventive action
- control of quality records
- internal quality audits
- training
- servicing
- statistical techniques
23
The ISO 9001:2000 Standard :
Establish the elements of a quality management system.
Develop, implement, and improve the system.
Define a policy that emphasizes the importance of the system.
Document the Quality System
Describe the process
Produce an operational manual
Develop methods for controlling (updating) documents
Establish methods for record keeping
Support Quality Control and Assurance
Promote the importance of quality among all stakeholders
Focus on customer satisfaction
Define a quality plan that addresses objectives, responsibilities,
and authority
Define communication mechanisms among stakeholders
Establish Review Mechanisms for the Quality Management System
Identify review methods and feedback mechanisms
Define follow-up procedures
Identify Quality Resources including Personal, Training, Infrastructure
Elements
Establish Control Mechanisms
For planning
For customer requirements
For technical activities (eg. analysis, design, testing)
For project monitoring and management
Define Methods for Remediation
Access quality data and metrics
Define approach for continuous process and quality improvement
* * * * *
24