02 - Software Process

ucla | CS 130 | 2024-10-03 12:47


Table of Contents

Software process Models

  • a SW process is a set of tasks -> software
  • a SW process model, is an abstraction of a process (i.e. a tempalte)
  • includes:
  • Waterfall model - V-model
  • Incremental model - RAD model
  • Iterative model - Spiral model
  • Agile Model - SCRUM

Waterfall model

V-model

Incremental Model

RAD Model - Rapid Application Development

Iterative Model

Spiral Model

Agile Model

  • individual interactions - processes/tools
  • working software - robust docs
  • customer input - contract negotiation
  • responding to change - planned changes

Scrum model

  • scrum roles
  • product owner - represents stakeholders, ROI responsible, accepts/rejects results, manages backlog, prioritizes functionalities (PM)
  • product backlog - fluid, list of prioritized user stories ad the sprints in which they are to be developed
  • user stories - spec reqs from user prespective (first person)
    • describes marginal value of the proposed req,
    • acceptance criteria,
    • must be 1-sprint time,
    • can be aggregated into an epic (lasts multiple sprints),
    • can be decomposed into multiple tasks
  • Epic -> Story -> Task
  • Sprints - multi-week high velocity development cycles - sprint planning - PM/PO prioritizes stories, dev team selects stories for the sprint and splits into tasks, both collectively define spring goal and sprint backlog - handled by scrum master - removes obstacles/interference, keeps focus on sprint goals, manages collaboration of dev team - sprint backlog usually kanban - a burndown chart helps to visualize time and trend for task completion - - daily standup - just that, discuss blockers, scrum master helps mitigate - sprint review - end of sprint results and demo new features, informal - sprint retro - accolades, what worked well, what can be better