Chapter 3 · Software Development Lifecycle

Learn the stages and methods of the SDLC to effectively manage software projects.

In a professional setting, software development includes certain steps and processes. It requires collaboration with others. Upcoming changes need to be planned months ahead and the execution is perfected with iterations. Such elements define the software development life cycle. In this chapter, we explain those elements such as setting goals with OKRs and KPIs, remaining flexible with agile methodologies, estimating time and effort required, prioritizing tasks, and balancing options and risks.

Chapter Contents

  • 3.1 Requirements
  • 3.2 OKRs
  • 3.3 KPIs
  • 3.4 Agile Development
  • 3.5 Estimation
  • 3.6 Opportunity vs Risk Analysis
  • 3.7 Prioritization
    • 3.7.1 Priority Factors
    • 3.7.2 Priority Levels
  • 3.8 Planning
    • 3.8.1 Top-down Planning
    • 3.8.2 Bottom-up Planning
    • 3.8.3 Stakeholder Management
    • 3.8.4 Strategic Data Collection
    • 3.8.5 Choosing the Right Projects
    • 3.8.6 Communication and Presentation
  • 3.9 Software Craftsmanship
  • 3.10 DevOps
    • 3.10.1 Systems Engineering
    • 3.10.2 Database Engineering
    • 3.10.3 Release Engineering
    • 3.10.4 Pipeline Engineering
  • 3.11 Maintenance
    • 3.11.1 Maintenance History
    • 3.11.2 Maintenance Types
    • 3.11.3 Maintenance Tips
  • 3.12 Deprecation