Summary of IS Strategy, Planning, and Project Management

IS Strategy, Planning, and Project Management Guide

Introduction

The Software Development Life Cycle (SDLC) is the structured process used to design, develop, test, and maintain software systems. It defines stages, roles, deliverables, and decision points that help teams deliver reliable software predictably and efficiently.

Definition: The Software Development Life Cycle (SDLC) is a set of ordered phases and practices that guide the planning, creation, testing, deployment, and maintenance of software products.

Core SDLC Advantages and Disadvantages

Advantages

  • Structured and organized: Clear phases and responsibilities reduce ambiguity.
  • Suitable for medium to large projects: Formal processes help coordinate many team members.
  • Clear documentation and planning: Helps onboarding, maintenance, and compliance.

Disadvantages

  • Can be slow and costly: Heavy upfront planning and documentation increase time and expense.
  • Requires extensive documentation: Documentation overhead can be burdensome.
  • Rigid to change: Late changes are difficult if requirements are fixed early.
  • Assumes stable requirements: If requirements shift, many life-cycle models struggle.

Major Life-cycle Approaches

Below are common SDLC approaches, their characteristics, and typical use cases.

1) Waterfall (Cascading) Approach

  • Overview: A strictly sequential model where each phase follows the previous one and no phase is skipped.
  • When it works best: Requirements are clear and unlikely to change; the project is well defined from the start.
  • Drawbacks: Difficult to accommodate changes after early phases are complete.

Definition: The Waterfall model is a linear and sequential SDLC model where each phase must be completed before the next begins.

2) Spiral Life-cycle Approach

  • Overview: Iterative model that allows revisiting earlier phases to refine requirements and designs; risk-driven.
  • Strengths: Increased flexibility to make design and requirement changes throughout development.
  • Typical use: Projects with significant risk or uncertainty that require repeated refinement.

Definition: The Spiral model is an iterative SDLC approach that emphasises risk analysis and allows repeated cycles of development and refinement.

3) Agile Methodologies

  • Overview: A family of iterative, incremental approaches that embrace changing requirements and close collaboration with stakeholders.
  • Examples: Prototyping, Scrum, Kanban, and general agile development practices.
  • Key principles: Evolving requirements, frequent delivery of working software, interdisciplinary teams, and continuous client feedback.

Definition: Agile development is an approach that delivers software in small increments, adapts to changing requirements, and relies on ongoing stakeholder collaboration.

How Agile Works (Scrum example)

  1. Initial brief phase: High-level goals and constraints are defined.
  2. Sprints: Work is divided into short development cycles called sprints (typically 2–4 weeks).
  3. Sprint deliverables: Each sprint produces working increments and assigned hours for tasks.
  4. Review & feedback: End-of-sprint demos allow stakeholders to evaluate progress and provide feedback.
  5. Continuous improvement: Teams refine priorities and plans for the next sprint.

Definition: A Sprint is a fixed-length iteration (commonly 2–4 weeks) during which a cross-functional team builds and delivers a small, usable product increment.

Team Composition in Agile

  • Interdisciplinary teams combining business and technical profiles collaborate and share decision-making.
  • Continuous client involvement ensures the product evolves toward real needs.

Comparison Table

CharacteristicWaterfallSpiralAgile (Scrum)
Flexibility to changeLowMedium–HighHigh
Documentation emphasisHighMediumMedium–Low
Iterat
Zaregistruj se pro celé shrnutí
FlashcardsKnowledge testSummaryPodcastMindmap
Start for free

Already have an account? Sign in

SDLC Approaches

Klíčové pojmy: SDLC defines ordered phases for planning, building, testing, deploying, and maintaining software, Waterfall is linear and best when requirements are stable and well-defined, Waterfall has high documentation needs and low flexibility to change, Spiral is iterative and risk-driven, allowing repeated refinement, Agile supports evolving requirements and delivers software incrementally, Scrum uses Sprints of typically 2–4 weeks with demos and client feedback, Interdisciplinary teams (business + technical) are central to Agile decision-making, Choose Waterfall for regulated/stable projects, Agile for evolving requirements, Spiral for high-risk projects, Many organizations use hybrid models to balance robustness and agility, Frequent demos and client contact in Agile improve alignment and reduce rework

## Introduction The Software Development Life Cycle (SDLC) is the structured process used to design, develop, test, and maintain software systems. It defines stages, roles, deliverables, and decision points that help teams deliver reliable software predictably and efficiently. > **Definition:** The Software Development Life Cycle (SDLC) is a set of ordered phases and practices that guide the planning, creation, testing, deployment, and maintenance of software products. ## Core SDLC Advantages and Disadvantages ### Advantages - **Structured and organized:** Clear phases and responsibilities reduce ambiguity. - **Suitable for medium to large projects:** Formal processes help coordinate many team members. - **Clear documentation and planning:** Helps onboarding, maintenance, and compliance. ### Disadvantages - **Can be slow and costly:** Heavy upfront planning and documentation increase time and expense. - **Requires extensive documentation:** Documentation overhead can be burdensome. - **Rigid to change:** Late changes are difficult if requirements are fixed early. - **Assumes stable requirements:** If requirements shift, many life-cycle models struggle. ## Major Life-cycle Approaches Below are common SDLC approaches, their characteristics, and typical use cases. ### 1) Waterfall (Cascading) Approach - **Overview:** A strictly sequential model where each phase follows the previous one and no phase is skipped. - **When it works best:** Requirements are clear and unlikely to change; the project is well defined from the start. - **Drawbacks:** Difficult to accommodate changes after early phases are complete. > **Definition:** The Waterfall model is a linear and sequential SDLC model where each phase must be completed before the next begins. ### 2) Spiral Life-cycle Approach - **Overview:** Iterative model that allows revisiting earlier phases to refine requirements and designs; risk-driven. - **Strengths:** Increased flexibility to make design and requirement changes throughout development. - **Typical use:** Projects with significant risk or uncertainty that require repeated refinement. > **Definition:** The Spiral model is an iterative SDLC approach that emphasises risk analysis and allows repeated cycles of development and refinement. ### 3) Agile Methodologies - **Overview:** A family of iterative, incremental approaches that embrace changing requirements and close collaboration with stakeholders. - **Examples:** Prototyping, Scrum, Kanban, and general agile development practices. - **Key principles:** Evolving requirements, frequent delivery of working software, interdisciplinary teams, and continuous client feedback. > **Definition:** Agile development is an approach that delivers software in small increments, adapts to changing requirements, and relies on ongoing stakeholder collaboration. #### How Agile Works (Scrum example) 1. **Initial brief phase:** High-level goals and constraints are defined. 2. **Sprints:** Work is divided into short development cycles called sprints (typically 2–4 weeks). 3. **Sprint deliverables:** Each sprint produces working increments and assigned hours for tasks. 4. **Review & feedback:** End-of-sprint demos allow stakeholders to evaluate progress and provide feedback. 5. **Continuous improvement:** Teams refine priorities and plans for the next sprint. > **Definition:** A Sprint is a fixed-length iteration (commonly 2–4 weeks) during which a cross-functional team builds and delivers a small, usable product increment. ## Team Composition in Agile - Interdisciplinary teams combining business and technical profiles collaborate and share decision-making. - Continuous client involvement ensures the product evolves toward real needs. ## Comparison Table | Characteristic | Waterfall | Spiral | Agile (Scrum) | |---|---:|---:|---:| | Flexibility to change | Low | Medium–High | High | | Documentation emphasis | High | Medium | Medium–Low | | Iterat