Course Name: Software
Project Management
Course Code: CSET324
Program: [Link] (VI SEM)
Module-3
Project Risk Management planning, Common sources of risk, Risk
identification techniques, Qualitative risk analysis, Expert judgement,
Decision trees, Expected monetary value, Simulation, sensitivity analysis, Risk
response planning, Risk monitoring & control, Project Procurement
management plans, Contract statement of work. Planning contracts,
Requesting seller responses, Selecting sellers, Administrating the contract,
Closing the contract, Software Configuration Management, Retaining
versions, Software Configuration elements (SCI's), Change Control and
Management.
Procurement &
Configuration Management
Managing external vendor relationships and internal project assets
through formal processes and proven methodologies.
Part 1:Project Procurement
Management
Why Procurement Matters
Done Right
• No software project exists in
Saves time, reduces
isolation.
costs, accelerates
• You'll acquire cloud infrastructure
delivery
from AWS, license databases from
Oracle, or outsource specialized
modules to contracting firms.
Done Wrong
• Procurement management is the
formal framework for these critical Project failure, legal
external relationships. disputes, massive
overruns
The Contract Statement of Work (SOW)
Your Legal Foundation
"If it's not in the SOW, i t doesn't exist."
1 2 3
Scope of Work Deliverables & Milestones Requirements & Acceptance
Detailed description of what the Specific outputs with concrete
Criteria
seller will do. Define boundaries deadlines. Each deliverable must Technical specifications and the
clearly—what's included and have measurable completion objective standards you'll use to
explicitly what's excluded. criteria. verify and accept their work.
Critical Rule: Never sign a contract with a vague SOW. Ambiguity breeds disputes, scope creep, and project failure.
Contract Types: A Risk Management
Decision
Fixed-Price Cost-Reimbursable
Best for: Clear, well-defined scope Best for: R&D, uncertain requirements
Example: "Build our website for $10,000" Example: Pay all costs + 15% fee
Risk: Seller bears efficiency risk Risk: Buyer bears all cost overruns
Time & Materials
Best for: Staff augmentation, flexible needs
Example: "$90/hour for developers"
Risk: Shared—requires active oversight
The Procurement Management Process
2. Request
1. Plan 3. Select 4. Administer 5. Close
Issue RFP (Request
Create SOW, define for Proposal) or RFQ Evaluate proposals, Manage relationship, Verify work, finalize
contract type, make (Request for negotiate, and award monitor performance, payments, formally
procurement plan. Quotation). the contract. make payments. close contract.
This is a formal, end-to-end lifecycle. Each phase has specific deliverables and requires diligent project management to ensure success.
Selecting Sellers: Never Choose on Price Alone
Weighted Scoring Matrix Example
Criteria Weight Vendor A Vendor B Vendor C Max
Technical Skill 35% 32 18 28 35
Team Experience 25% 23 10 20 25
SOW Understanding 20% 18 14 16 20
Cost 20% 14 20 16 20
Total Score 100% 87 62 80 100
Winner: Vendor A — Despite being more expensive, Vendor A delivers the strongest technical capability and experience.
Vendor B's low cost masks significant risk in execution quality.
Contract Administration & Closeout
Active Administration Formal Closeout Process
Phase
• Written Acceptance: Verify work
• Monitor Performance: Track meets SOW acceptance criteria
deliverables against SOW • Financial Settlement: Reconcile all
milestones and quality standards invoices and process final payment
• Manage Changes: Use formal • Legal Protection: Obtain sign-off to
change control for scope prevent future claims
modifications
• Lessons Learned: Document
• Resolve Disputes: Address issues vendor performance for future
promptly through escalation projects
procedures
• Document Everything: Maintain
detailed records of
communications and decisions
Part 2: Software Configuration
Management
Controlling Your Project's DNA
From External to Internal
SCM Scope
Procurement manages
Version control, change
relationships with outside vendors.
tracking, release management,
Configuration Management
and audit trails
controls the assets you create
internally—source code,
documentation, test plans, and
build configurations.
SCM is the formal process that ensures your team can reliably reproduce
any version of your software, track every change, and maintain control as
complexity grows.
What is SCM?
SCM is a set of practices to manage, organize, and control
changes to software project assets.
It is the single source of truth.
• It answers:
○ What is our "current" build?
○ Who changed this file, and why?
○ What's the difference between v1.1 and v1.2?
Without SCM, you have chaos.
Introduction to Software Configuration
Management (SCM)
Definition: A discipline for systematically controlling the changes that occur in a software system
throughout its lifecycle.
Traceability Consistency Integrity Accountability
Know who, what, when, Ensure all team members Maintain the correct Establish a clear audit
and why a change was are using the correct components of the trail for all changes.
made. version. system.
Examples of SCIs:
• Requirement documents
• Design documents and diagrams
• Source code files and modules
• Test cases and test data
• Executable programs
• User manuals and help guides
• Libraries and configuration files
Key Purpose of SCIs:
• To manage and track changes made during
development.
• To ensure consistency across all related project
artifacts.
• To support version control and allow rollback to
earlier versions if needed.
• To maintain traceability between requirements, design,
code, and testing.
Retaining Versions and
Baselines
Version: Configuration Item (CI):
A distinct, identified change to a software artifact (e.g., v1.1). Any artifact placed under SCM control (e.g., source code, test
script).
Baseline:
A formally accepted snapshot of a software configuration at a specific point in time. Once baselined, it only changes via formal
process.
Example Baseline Progression
Functional Baseline Allocated Baseline Product Baseline
(After Requirements) (After Design) (Final Product)
Software Configuration Elements (SCI's)
SCI: Any artifact required for software development and maintenance that is placed under
configuration control.
Code Documentation Data Tools
Source code files, build Requirements, design Databases, setup files, Compilers, libraries, COTS
scripts, libraries. specs, test plans, user configuration files. software.
manuals.
The Four Pillars: S C M Core Activities
Configuration Configuration Configuration Configuration
Identification Control Status Audits
Accounting
Naming, storing, and Managing changes to Verifying that a released
identifying SCI's and their baselined SCI's (the Recording and reporting configuration matches
versions. Change Control process). the status of all SCI's the documented baseline.
(who, what, when).
The S C M Toolkit: Automating the Process
Version Control (VCS) Change/Issue Tracking Build Automation
Essential for code and documents. Manages the Change Request (CR) Ensures consistent, reproducible
Manages versions and history. workflow and SCM reporting. builds from baselined code.
(e.g., Git, Subversion) (e.g., Jira, Azure DevOps) (e.g., Jenkins, GitLab CI/CD)
Importance of SCM in Software Development
1. Maintains Consistency: SCM ensures that all team members work with the correct and
updated versions of code and documents, avoiding confusion and conflicts.
2. Supports Change Control: Any change to software (bug fixes, enhancements, updates)
is reviewed, approved, and documented, preventing unauthorized or accidental
modifications.
3. Reduces Errors and Rework: By managing versions and tracking modifications, SCM
minimizes integration issues and rework caused by outdated or conflicting files.
4. Improves Team Collaboration: Multiple developers can work on the same project
without interfering with each other’s work through version control tools like Git.
5. Maintains Project History: SCM keeps a complete history of changes, which is useful
for debugging, maintenance, and future upgrades.
Tools Used for SCM & Version Retention
• Git / GitHub
• GitLab
• Bitbucket
• Subversion (SVN)
• Jenkins (build + version control integration)
• Azure DevOps
• IBM Rational ClearCase
Software Configuration Items (SCIs)
Software Configuration Items (SCIs) are the individual elements of a software project
placed under configuration management control.
Examples of SCIs
1. Requirements Documents: SRS, BRD
2. Design Documents: UML diagrams, architecture design
3. Source Code Files: Java classes, Python scripts
4. Test Artifacts: Test cases, test reports
5. Database scripts: SQL files
6. Configuration Files: .env files, XML/JSON configs
7. User Manuals and Help Files
8. Build scripts, deployment scripts
Why SCIs Are Important
• Define exactly what needs to be tracked.
• Improve organization and control.
• Ensure that all important items follow the change control
process.
Change Control and Management
Change Control is a structured process for evaluating, approving, implementing, and tracking
changes to software artifacts.
Change Request (CR): The formal document or ticket requesting a change. This is the starting point
for all modifications to a baseline.
Change Control Board (CCB): A dedicated, authorized group (managers, engineers, clients) that
reviews, evaluates, and approves/rejects all CRs.
Impact Analysis: The process of assessing the technical, cost, and schedule consequences of a
proposed change. This is the primary job of the CCB.
The Process: A formal workflow for requesting, evaluating, approving, implementing, and verifying
changes to baselined SCI's.
Why Change Control Matters
• Prevents uncontrolled modifications.
• Ensures changes are planned and reviewed.
• Protects system stability and integrity.
• Maintains an audit trail of what was changed and by
whom.
Summary and Key Takeaways
Procurement: Requires a robust plan, a clear SOW, and formal processes for selection, administration,
and closure.
Contracts: Selection of the right type (FP, T&M, CR) is critical and depends on scope certainty.
SCM: Essential for managing product integrity and traceability. It saves you from the chaos of uncontrolled changes.
Baseline: A stable, controlled product configuration that requires formal CCB approval to modify.
Remember: If you can't control it, you can't manage it.