SE Unit 5 Notes
SE Unit 5 Notes
Unit – V
Risks and Configuration Management
This PDF is watermarked and traceable. Unauthorized sharing will result in
permanent access ban and legal action.
Su
1. Risk Management
dh
an
Risk Management is the process of identifying, assessing, and controlling potential problems
(risks) that might affect the success of a software project. It helps project teams to prepare for
sh
Software risks are potential problems that could negatively impact the success of a software
64
project. These risks can lead to project delays, increased costs, reduced quality, or even
project failure if not identified and managed early.
1. Project Risks:
2|Page © Haris Chaus | ALL RIGHTS ARE RESERVED as per copyright act.
2. Technical Risks:
3. Business Risks:
an
Example: Product may not meet customer needs or may become obsolete.
sh
4. Operational Risks:
u
De
5. External Risks:
m
uk
Risk identification is the process of recognizing potential threats that could impact the software
project. It is usually carried out by the project manager using two main approaches:
90
The project manager identifies known and predictable components to form a checklist of
potential risks:
Category Description
Product Size Risks based on the overall size and complexity of the
Su
software product.
dh
handling.
u
Process Definition Risks arising from flaws or changes in the software process
De
being followed.
Development Environment Risks linked to tools, platforms, and technology being used.
sh
m
Staff Size & Experience Risks related to the availability of skilled and experienced
personnel.
uk
Once the checklist is prepared, a questionnaire is created. The answers to these questions help
91
The U.S. Air Force defines four key risk components for software projects:
1. Performance Risk: Uncertainty that the software will meet all required specifications
and perform as expected.
4|Page © Haris Chaus | ALL RIGHTS ARE RESERVED as per copyright act.
2. Cost Risk: Risk that the project will exceed its budget due to poor estimation or
unexpected changes.
3. Support Risk: Risk that the software will be hard to maintain, correct, or adapt after
delivery.
4. Schedule Risk: Uncertainty that the project will be completed on time, possibly due to
Su
Risk Assessment
an
Risk assessment is the process of analyzing and evaluating the identified risks to understand
their potential impact on a software project.
sh
This helps in deciding which risks need mitigation plans and which ones can be monitored or
accepted.
75
1. Risk probability – How likely the risk is to occur (e.g., high, medium, low).
2. Risk impact – How severe the consequences will be (e.g., minor, moderate, major).
5|Page © Haris Chaus | ALL RIGHTS ARE RESERVED as per copyright act.
Using risk projection, project managers decide which risks need immediate attention and plan
mitigation strategies accordingly.
A Risk Table is used to organize and analyze identified risks based on their likelihood and
Su
impact.
dh
Impact (I): Numerical value based on how much damage the risk could cause.
m
uk
High exposure risks are given more attention and handled early with mitigation, monitoring,
h
or contingency plans.
-+
Risk refinement is the process of breaking down high-level or general risks into more specific,
90
detailed, and manageable sub-risks. It helps in better understanding the cause, effect, and
75
Example:
After refinement:
64
Risk Planning in project development involves preparing for potential risks by identifying,
assessing, and creating strategies to address them. It is the foundational step for effective risk
an
1. Risk Identification: Identify potential risks that could affect the project.
u
6. Risk Monitoring: Set up continuous monitoring and review to track risks throughout
h
the project.
-+
Risk planning helps ensure the project team is prepared to handle any challenges that may arise,
91
Risk mitigation refers to the strategies and actions taken to reduce the probability or impact
75
It is part of the risk management process and helps ensure smoother project progress.
62
2. Reduction: Implement actions to reduce the likelihood or impact of a risk. For instance,
breaking down a large project into smaller, manageable phases to reduce schedule risks.
7|Page © Haris Chaus | ALL RIGHTS ARE RESERVED as per copyright act.
3. Transfer: Shift the risk to a third party, such as outsourcing part of the development or
purchasing insurance to cover potential financial losses.
4. Acceptance: Acknowledge the risk and prepare contingency plans in case it occurs. For
example, setting aside extra resources or time to deal with unexpected issues.
5. Contingency Planning: Prepare specific responses for high-priority risks in case they
Su
materialize. This ensures that the team is ready to act quickly and effectively.
dh
Importance:
an
Risk monitoring is the continuous process of tracking identified risks, checking for new risks,
and evaluating the effectiveness of risk mitigation strategies throughout the software
m
development lifecycle.
uk
Key Activities:
h
2. Detect New Risks: Identify new risks arising from changes in the project.
91
3. Assess Risk Status: Reevaluate existing risks and their current impact.
90
5. Document and Report: Keep records and report the risk status to stakeholders.
61
Importance:
62
Improves Control: Ensures the project stays on schedule, within budget, and in scope.
Supports Decision Making: Provides valuable data for better project decisions.
8|Page © Haris Chaus | ALL RIGHTS ARE RESERVED as per copyright act.
Key Steps:
Su
5. Risk Control: Implement plans and take corrective actions when needed.
De
Informed Decision Making: Provides insight into potential challenges and supports
-+
Risk Identification:
75
Risk Assessment:
64
Risk Mitigation:
Risk Monitoring:
dh
Monitor API progress, track project timeline, and review security regularly.
an
The RMMM Plan is a strategy used in software projects to address potential risks by outlining
sh
ways to mitigate, monitor, and manage risks throughout the project lifecycle.
u
Typical template for RMMM plan or Risk information sheet can be:
De
sh
m
uk
h
-+
91
90
75
61
62
64
Risk: Delays in website launch due to technical issues (payment gateway integration).
Mitigation Actions:
Mitigation Actions:
an
Monitoring Actions:
sh
Define clear project scope and track with project management tools (e.g., Jira).
m
uk
Monitoring Actions:
91
Stay updated with security patches and use secure coding practices.
75
Management Actions:
62
Management Actions:
11 | P a g e © Haris Chaus | ALL RIGHTS ARE RESERVED as per copyright act.
PERT (Program Evaluation and Review Technique) is used to evaluate risks by estimating
task durations with uncertainty. It helps identify how risks can affect the project timeline.
Su
Key Steps:
dh
𝑂 + 4𝑀 + 𝑃
m
𝑇𝐸 =
6
uk
3. Risk Impact:
-+
4. Critical Path:
61
o Identify the critical path, the longest sequence of tasks. Delays in critical path
tasks will affect the project end date.
62
Example:
64
For Task A:
Optimistic (O): 2 weeks, Most Likely (M): 3 weeks, Pessimistic (P): 5 weeks.
( )
Expected Time (TE) = = 3.3 weeks
12 | P a g e © Haris Chaus | ALL RIGHTS ARE RESERVED as per copyright act.
After risk adjustment (due to technical challenges), Task A's new estimates are:
Optimistic (O): 3 weeks, Most Likely (M): 3 weeks, Pessimistic (P): 6 weeks.
( )
New Expected Time (TE) = = 4.5 weeks
Software Configuration Management (SCM) is the discipline of managing the evolution and
dh
changes in software systems over time. It involves the processes, tools, and techniques used to
an
control and track changes to the software, ensuring that it remains consistent and reliable
throughout its lifecycle.
sh
1. Version Control: Keeps track of different versions of software components (e.g., code,
documentation) to avoid confusion and ensure that the correct version is always used.
sh
3. Configuration Identification: Defines the configuration items (CIs) in the software, such
h
as source code, libraries, configuration files, and documentation, and tracks their status
-+
and version.
91
4. Configuration Auditing: Verifies and ensures that the software meets its required
configuration and that no discrepancies or errors have been introduced.
90
Benefits of SCM:
62
Traceability: Tracks the history of changes, making it easier to debug, maintain, or roll
back to previous versions if needed.
13 | P a g e © Haris Chaus | ALL RIGHTS ARE RESERVED as per copyright act.
Quality Control: Enhances software quality by ensuring that changes are tested and
validated before being integrated into the main system.
The SCM Repository is a centralized data storage used to manage and store all configuration
items and related information throughout the software development lifecycle.
Su
1. Source Code Files: All versions of source code modules with version history.
an
4. Test Data & Results: Data sets, test plans, and outcomes of tests.
De
finalization).
uk
1. Version Control: Maintains a history of changes made to each configuration item. It allows
-+
developers to access previous versions, compare differences, and roll back if needed.
91
2. Access Control: Controls who can view or modify items in the repository. It ensures only
authorized users make changes, helping maintain integrity and security of the software.
90
3. Audit Trails: Records all activities performed on configuration items—who changed what,
75
when, and why. This provides full traceability and helps during project reviews or
61
debugging.
4. Backup and Recovery: Stores copies of important configuration items, allowing recovery
62
in case of data loss or system failure. It acts as a safeguard for project assets.
64
5. Support for Parallel Development: Enables multiple team members to work on different
modules or features simultaneously without overwriting each other's changes. This
improves development speed and collaboration.
1. Configuration Identification: Identify the items that define the software configuration.
4. Configuration Audit: To ensure that the quality of the software is maintained as the
configuration evolves over the time.
sh
Types of Objects:
90
Aggregate Objects: Groups of basic or other aggregate objects (e.g., SRS, design docs).
61
2. Description:
3. List of Resources:
Purpose:
dh
2. Change Control
u
De
system’s capabilities.
m
Why is it important?
uk
automated tools.
90
2. Submit Change Request: A formal request is submitted detailing the needed modification.
62
3. Developer Evaluation: Technical team evaluates feasibility, side effects, system impact,
and cost.
64
5. Change Control Authority (CCA) Decision: A group/person reviews the report and
approves or rejects the change.
16 | P a g e © Haris Chaus | ALL RIGHTS ARE RESERVED as per copyright act.
o Description of change
o Constraints
o Review/audit criteria
Su
7. Check-out the Object: The item to be changed is retrieved from the configuration
database.
dh
8. Make the Change & Apply SQA: Modification is made and Software Quality Assurance
an
9. Check-in & Version Control: The updated object is stored back in the database with a new
u
version.
De
3. Version Control
sh
Version Control is a key activity in SCM that helps manage multiple versions of software
components as they evolve during the development lifecycle.
m
uk
Purpose:
h
To keep track of every change made to software artifacts (code, documents, etc.)
-+
To coordinate team collaboration, especially when multiple people are modifying the
same files.
75
Key Concepts:
61
reference point.
64
2. Version: A specific state or revision of a software artifact after a change has been made.
4. Repository: A central place where all versions of components are stored and managed.
17 | P a g e © Haris Chaus | ALL RIGHTS ARE RESERVED as per copyright act.
5. Check-in / Check-out
o Check-in: After changes, the component is saved back to the repository, often
with a new version ID.
4. Configura on Audit
De
Configuration Audit is a process used to verify that software configuration items (SCIs)
sh
To confirm that all approved changes have been properly applied and documented.
-+
1. Functional Audit
75
2. Physical Audit
64
o Verifies that all configuration items are present in the software system.
o Confirms documentation (design, code, test results, manuals) is complete and up to date.
Benefits:
5. Status Repor ng
Status Reporting is the process of tracking and communicating the current state of software
Su
configuration items (SCIs) and their changes throughout the software development lifecycle.
To provide visibility into the progress and health of the software configuration
an
management process.
sh
stakeholders.
sh
2. Change Request Status: Tracks the status of any change requests (whether they are
under review, approved, or rejected).
-+
3. Version Control Status: Tracks which versions of configuration items are checked in,
91
approved, or in progress.
90
4. Issue Tracking: Identifies any problems or defects with configuration items and the
75
Periodic Status Reports: Regular updates on the status of configurations and changes
(e.g., weekly).
64
changes to software configuration items (CIs) and ensuring the software system functions as
dh
intended despite these changes. Here's how CM works in a mobile application development
project.
an
1. Configuration Identification
u
De
Documentation.
m
2. Version Control
uk
o Example: Git is used to manage source code versions, branches, and merges.
-+
3. Change Control
91
o Ensures that all changes to CIs are evaluated and authorized before being
90
implemented.
75
o Example: Change requests are reviewed, and the Change Control Authority
61
o Example: Tools like Jenkins automatically build the app after each change and
release it to test or production environments.
5. Configuration Audits
o Ensures that CIs meet the required standards and are implemented correctly.
20 | P a g e © Haris Chaus | ALL RIGHTS ARE RESERVED as per copyright act.
o Example: After building the app, a configuration audit checks the code, assets,
and dependencies for correctness.
6. Status Reporting
o Provides ongoing reports on the status of CIs and the project's progress.
Example: Regular reports track current app versions, feature progress, and
Su
o Ensures that all CIs are backed up and can be recovered if needed.
sh
o Example: Regular backups are created, and a disaster recovery plan is in place.
u
o Example: JIRA tracks change requests and their impact on the project.
m
simultaneously.
91
Quality Control: Maintains software quality through change control, audits, and
90
reporting.
Traceability: Tracks every change for easy debugging and future reference.
75
Risk Reduction: Reduces risk through proper change management and backup
61
strategies.
62
64