8 a] Differentiate between project management life cycle and software development life cycle and its phases.
Project Management Life Cycle (PMLC)
- Definition: The PMLC encompasses the overall management of a software project from its inception to closure. It involves planning, organizing, and controlling resources to achieve project objectives within defined scope, time, and budget constraints.
- Phases:
- Initiation: Project charter is developed, stakeholders are identified, project scope is defined, and feasibility is assessed.
- Planning: Detailed project plan is created, including work breakdown structure, resource allocation, risk assessment, and communication plan.
- Execution: Project activities are carried out as per the plan, with regular monitoring and control to ensure progress and address any deviations.
- Closing: Project deliverables are finalized, lessons learned are documented, and project is formally closed.
Software Development Life Cycle (SDLC)
- Definition: The SDLC outlines the systematic process of developing software, from conceptualization to deployment and maintenance. It focuses on the technical aspects of building the software product.
- Phases:
- Requirements Analysis: Gathering and documenting user needs and system requirements.
- Design: Creating the software architecture, system design, and detailed design specifications.
- Development: Writing the code, building the software, and conducting unit testing.
- Testing: Verifying and validating the software to ensure it meets requirements and quality standards.
- Deployment: Releasing the software to the end-users and making it operational.
- Maintenance: Providing ongoing support, bug fixes, and updates to the software.
Key Differences:
- Scope: PMLC covers the entire project, while SDLC focuses specifically on the software development aspect.
- Roles: Project managers are responsible for the PMLC, while software developers and engineers are primarily involved in the SDLC.
- Activities: PMLC includes planning, organizing, controlling, and monitoring, while SDLC involves requirements gathering, design, development, testing, and deployment.
- Timeline: PMLC typically starts before the SDLC and continues throughout the project, as shown in the image (Figure 1.7).