Scrum and the Agile Development Process
AgendaIntroductionEmpirical vs. Defined ProcessAgile DevelopmentScrum 101Scrum OverviewRoles and responsibilitiesNew Operations Team
Defined ProcessRequires every piece of work be well understood. Given a well-defined set of inputs, the same outputs are generated every time.Yummy Donuts!Donut Mix
“Traditional” WaterfallJob Function EJob Function DJob Function CJob Function BJob Function ARequirements GatheringDesignDevelopmentDocumentation, Signoffs, HandoffDocumentation, Signoffs, HandoffDocumentation, Signoffs, HandoffDocumentation, Signoffs, HandoffTestingLaunch & MaintainAdvantage: Highly LogicalDisadvantage: Human Beings are involved
Empirical ProcessProvides and exercises control through frequent inspection and adaptationProcesses are imperfectly definedGenerate unpredictable and unrepeatable outputs.Yummy Donuts!Is it soup yet?Yummy Soup!Soup Fixin’s
Agile Software DevelopmentFeedbackFeedbackFeedbackv 1.0v 1.1v 1.2Short IterationsIncremental Releases
Agile Software DevelopmentFeedbackFeedbackFeedbackPlan
Test
Design
Build
Plan
Test
Design
Build
Plan
Test
Design
Build
Plan
Test
Design
BuildDo a little bit of everything every cycle
Empirical Processes“It is typical to adopt the defined (theoretical) modeling approach when the underlying mechanisms by which a process operates are reasonably well understood.  When the process is too complicated for the defined approach, the empirical approach is the appropriate choice.”Process Dynamics, Modeling, and Control, Ogunnaike and Ray, Oxford University Press, 1992Translation into English: Inspect and Adapt
What are some other examples of processes suited to an empirical approach????
Roots in Lean: The Seven Wastes
Roots in Lean: The Seven Wasteswww.dbo2.com
Roots in Lean: The Seven Wastes
Agile ManifestoThat is, while there is value to the items on the right, we value the items on the left more.
What is Scrum?A flexible framework that is:CollaborativeIterative & IncrementalCommon SenseVery simple but very hardIt causes changeIt takes discipline
Scrum ValuesRespectCommitmentFocusOpennessCourage
Scrum Roles
Product ManagerProduct visionaryMaximizes business valuePrioritizes and clarifies requirements
Product ManagerDoesProvide clear product directionWork with the team closely to clarify requirementsActively manages the product backlogRepresents the business and customer needs
Product ManagerDoes notAssign work to the team membersGive fixed date fixed scope projects without team consentChange priorities during a Sprint
Scrum TeamCross-functionalPossesses all the skills necessary to produce an increment of potentially shippable productTeam takes on tasks based on skills, not just official “role”Self-organizingTeam manages itself to achieve the Sprint commitment
Scrum MasterSimilar to a Project Manager… yet differentA facilitatorRemoves impediments
Scrum MasterThe Scrum Master does everything in their power to help the team achieve successServing the teamProtecting the teamGuiding the team’s use of Scrum
Scrum Process
Product BacklogA prioritized list of requirementsPrioritized by the Product ManagerProduct Backlog
User StoriesOne way to write a requirementDescribes a WHO, WHAT and WHY scenarioDescribes real business valueA “promise for a conversation”Has acceptance criteria to assert its behavior

Scrum and the agile development process

Editor's Notes

  • #13 Partially Done Work (the “inventory” of a development process) Relearning (easy to find in documentation-centric development)Extra Features (develop only what customers want right now)Task Switching (everyone should do one thing at a time)Delays (for instructions, for information) Handoffs (tons of tacit knowledge gets lost) Defects (at least defects that are not quickly caught by a test)
  • #16 Respect – teammates must respect each other, developers must respect QA, product management, etc.Commitment – team decides for itself what to take on, but the trade-off for that is commitmentFocus – Minimize task switching; minimize hand-offsOpenness – Requires team to be willing to share true status of thingsCourage – Courage to demand respect; courage to commit; courage to be open; courage to allow a team to focus
  • #26 Promise for a conversationDifferent from traditional requirements documentation which seeks to ensure all details are present to form a “contract”
  • #38 Delivering the highest quality, best customer service.. Every transaction, every time.