800px-Scrum_process.svg

Scrum development

Scrum

A key principle of Scrum is its recognition that during a project the customers can change their minds about what they want and need (often called “requirements churn”), and that unpredicted challenges cannot be easily addressed in a traditional predictive or planned manner. As such, Scrum adopts an empirical approach—accepting that the problem cannot be fully understood or defined, focusing instead on maximizing the team’s ability to deliver quickly and respond to emerging requirements.

Delivery every iteration something usable “releasable” to customer.

Roles

Product owner

  • final authority on requirements
  • prioritize backlog and provide clear requirements

Scrum master

  • facilitator, negotiator, responsible for guiding team
  • removes impediments or finds someone that can

Team members

  • cross functional
  • autonomous, self organizing
  • project manager, developer, tester

Daily scrum (stand-up)

800px-Daily_sprint_meeting

  • moderated by scrum master
  • 15 min, time boxed
  • everyone attendee
    • what did you do yesterday?
    • what will you do today?
    • is there any obstacle on your way?
  • Scrum master helps remove obstacles

Burndown chart = graphical representation of work pending vs time left

Velocity

  • amount of work per sprint
  • helpful in planning upcomming sprints
  • dynamic (forming -> storming -> performing)

 Retrospective

  • start doing
  • stop doing
  • continue doing

Sprint review

  • hold meeting to present the outcome of iteration
  • typically demo