Agile Software Development

Scrum

Definition of Scrum

Scrum (n): A framework within which people can address complex adaptive problems, while productively and creatively delivering products of the highest possible value.

Scrum Guide

Glossary of Scrum Terms

Scrum process

Scrum process

The Scrum Team

  • Product Owner
  • Scrum Master
  • Development Team

Scrum Events

  • The Sprint
  • Sprint Planning
  • Daily Scrum
  • Sprint Review
  • Sprint Retrospective

Scrum Artifacts

  • Product Backlog
  • Sprint Backlog
  • Increment

Product Owner

  • the voice of the customer
  • writes customer-centric user stories
  • adds user stories to the product backlog
  • priorizes user stories

ScrumMaster

  • is not the team leader
  • acts as a buffer between the team and any distracting influences
  • accountable for removing impediments to the ability of the team to deliver the sprint goal / deliverables
  • ensures that the Scrum process is used as intended
  • is the enforcer of rules

A key part of the ScrumMaster’s role is to protect the team and keep them focused on the tasks in hand

Development Team

  • responsible for delivering / developing the product
  • typically 5–9 people with cross-functional skills who do the actual work (analyse, design, develop, test, technical communication, document, etc.)
  • recommended to be self-organizing

Kanban

“If your software team is doing XP, Scrum, Crystal, Waterfall, RUP, DSDM, FDD, etc, then you can layer Kanban on top of it to help find bottlenecks and waste. Also, for all of those teams out there that don’t use a software development process … layering Kanban on top of crap will still yield crap.”

Charles Bradley on scrumcrazy.wordpress.com

3 most important rules of kanban

  1. Visualize your work
  2. Limit work in progress
  3. Maximize throughput (or measure lead time/cycle time)

Robert Nasiadek on blog.elpassion.com

Simple Kanban board

Kanban board for team with QA

Kanban board for scrum team

Tips and tricks

  • Visualize which person is assigned to which task
  • Overflow a column only when absolutely needed
  • Clearly define scope of every task
  • Keep experimenting
  • Don’t ask for permission
  • Start with physical board

Conclusion

  • extremly flexible
  • visual project overview
  • recognize wastes and bottlenecks
  • rule based issue pulling

define rules by your own, e.g.

no bug policy you are not allowed to pull a feature while there is a bug on the board

From Waterfall to Scrum to Kanban in one big project

by Sacha Storz from TechDevision presented at TYPO3Conference 2012

Starting at 20:50 min with how Scrum helped them and how they contracted a Scrum project with the customer.

Thx.