Introduction to Software Project Management
1.1 Project Definition
1.2 Project versus Flow type work
1.3 Project Lifecycle
1.4 Processes and Knowledge Areas in Project Management (PM)
1.5 Build or Buy decision,
1.6 Work Breakdown Structure (WBS) and its types
1.7 Introduction to PMBOK,
1.8 Program and Portfolio Management
Notes…..
Introduction to Software Project Management
1.1 Project Definition
A project is a temporary endeavor undertaken to create a unique product, service, or result. It
has specific objectives, a defined scope, resources, and a fixed timeline. Key characteristics
include:
Temporary: Projects have a clear start and end date.
Unique Deliverables: Each project produces distinct outputs.
Progressive Elaboration: Projects evolve in steps and continue by increments.
Examples:
Developing a software application.
Upgrading an IT infrastructure.
1.2 Project versus Flow-Type Work
Project Work:
Unique tasks.
Temporary with a defined timeline.
Requires specific objectives and deliverables.
Example: Building a website.
Flow-Type Work:
Repetitive and ongoing tasks.
Focused on processes and consistency.
No defined start or end dates.
Example: Daily IT support services.
Key Differences:
Aspect Project Work Flow-Type Work
Nature Unique Repetitive
Timeline Temporary Ongoing
Deliverables Specific and defined Process outputs
Objective Achieving a goal Maintaining operations
1.3 Project Lifecycle
A Project Lifecycle represents the phases a project undergoes from initiation to closure.
Common phases include:
1. Initiation: Define the project goals, scope, and feasibility.
2. Planning: Develop a detailed roadmap, including resources, timelines, and budgets.
3. Execution: Carry out the project tasks to create deliverables.
4. Monitoring and Controlling: Track performance and implement changes as needed.
5. Closure: Finalize the project, deliver outputs, and review outcomes.
Example: Software Development Lifecycle
Requirement Gathering → Design → Development → Testing → Deployment →
Maintenance
1.4 Processes and Knowledge Areas in Project Management (PM)
Project Management involves applying processes and knowledge areas to meet project
objectives.
Processes in PM:
1. Initiating: Define the project.
2. Planning: Set the scope, objectives, and procedures.
3. Executing: Coordinate people and resources to implement the plan.
4. Monitoring and Controlling: Track progress and ensure alignment with goals.
5. Closing: Complete all project activities.
Knowledge Areas in PM:
1. Integration Management
2. Scope Management
3. Time Management
4. Cost Management
5. Quality Management
6. Resource Management
7. Communication Management
8. Risk Management
9. Procurement Management
[Link] Management
1.5 Build or Buy Decision
The Build or Buy Decision determines whether to develop a solution in-house (build) or
purchase it externally (buy).
Considerations:
1. Cost: Compare development costs vs. purchase costs.
2. Time: Assess how quickly a solution is needed.
3. Expertise: Evaluate internal team skills and capabilities.
4. Customization: Determine the level of customization required.
5. Maintenance: Account for ongoing support and updates.
Example:
Build: Custom CRM software for unique business needs.
Buy: Off-the-shelf accounting software like QuickBooks.
1.6 Work Breakdown Structure (WBS) and its Types
A Work Breakdown Structure (WBS) is a hierarchical decomposition of the project scope
into smaller, manageable components.
Purpose:
Helps organize tasks and responsibilities.
Ensures all deliverables are accounted for.
Types of WBS:
1. Deliverable-Based WBS: Focuses on project outputs.
2. Phase-Based WBS: Divides tasks according to project phases.
Example WBS for Website Development:
1. Planning
o Requirement Gathering
o Budget Approval
2. Design
o Wireframes
o Mockups
3. Development
o Backend Coding
o Frontend Coding
4. Testing and Deployment
1.7 Introduction to PMBOK
The Project Management Body of Knowledge (PMBOK) is a set of standard terminology
and guidelines for project management, developed by the Project Management Institute
(PMI).
Key Features:
Framework for managing projects across industries.
Covers five process groups and ten knowledge areas.
Updated regularly to reflect best practices.
1.8 Program and Portfolio Management
Program Management:
Involves managing multiple related projects to achieve broader objectives.
Focuses on interdependencies and resource optimization.
Example: Overseeing a set of projects for a software suite.
Portfolio Management:
Involves managing a collection of programs and projects to align with organizational
strategy.
Focuses on prioritization, investment decisions, and value delivery.
Example: Managing IT projects, R&D initiatives, and marketing campaigns.