Agile Software Developmentwith ScrumJeff SutherlandGabrielle Benefield
AgendaIntroduction Overview of Methodologies Exercise; empirical learning Agile Manifesto Agile Values History of ScrumExercise: The offsite customerScrum 101 Scrum Overview Roles and responsibilities Scrum teamProduct Owner ScrumMaster
AgendaScrum In-depth The Sprint Sprint Planning Exercise: Sprint Planning Tracking Progress Daily Scrum Exercise: Running a Daily meeting Sprint Review Sprint Retrospective The ScrumMaster role: Exercise: Great ScrumMaster scenarios Exercise: Velocity gameOptional modules: Scaling Scrum Distributed Scrum
A Defined ProcessDonut MixYummy Donuts!
The WaterfallJob Function AJob Function BJob Function CJob Function DJob Function , HandoffDevelopmentDocumentation,Signoffs, HandoffTestingDocumentation,Signoffs, HandoffLaunch &MaintainDocumentation,Signoffs, HandoffAdvantage: Highly LogicalDisadvantage: High failure rate, low process efficiency
Agile DevelopmentFeedbackFeedbackv1.0 Feedbackv1.1Short Iterations of 1-4 weeksIncremental releasesv1.2
Agile DevelopmentFeedbackFeedback Plan Test Design Build Plan Test Design BuildFeedback Plan Test Design Build Plan Test Design Build Do a little bit of everything every cycle
“Agile” is a greatbuzzword. Whodoesn’t want to beAgile?No one says,“Thanks, I’d rather beinflexible and slow torespond.”
The Agile Manifesto – 2001We are uncovering better ways of developing software by doing it andhelping others do it. Through this work we have come to value:Individuals and interactions over processes and toolsWorking software over comprehensive documentationCustomer collaboration over contract negotiationResponding to change over following a planThat is, while there is value in the items on the right,we value the items on the left more.Kent Beck, Mike Beedle, Arie van Bennekum, Alistair Cockburn, Ward Cunningham, MartinFowler, James Grenning, Jim Highsmith, Andrew Hunt, Ron Jeffries, Jon Kern, Brian Marick,Robert C. Martin, Steve Mellor, Ken Schwaber, Jeff Sutherland, Dave Thomas
Agile Myths No designNo planningPoor quality“Cowboy” CodingOnly works on small projects
What is Scrum?A flexible framework that is: Collaborative Iterative & Incremental Commonsense Very simple but very hard; it causeschange.
Scrum Values RespectCommitmentFocusOpennessCourage
A silver bullet?
Scrum Disadvantages Makes all dysfunction visible Bad products will be delivered sooner, anddoomed projects will fail faster People follow the mechanics but not thevalues.
Scrum FocusStrategyPortfolioProduct VisionRelease PlanIteration PlanDaily Plan
Scrum 101Daily Stand-upSprint ReviewSprint PlanningSprintProduct Backlog1 12 23 34 45678910111213CommitmentPotentially ShippableProduct IncrementTeam RetrospectiveNo Changes(in Duration or Deliverable)Challenges Testing Build breaksImprovement
Scrum RolesProduct OwnerThe TeamScrumMasterDetermines what should beproduced, to maximize ROI forthe businessCross-functional and selforganizing team of 7 people /- 2Protects and serves the Team,and supports their practice ofScrum
Product Backlog A prioritized list ofrequirements Prioritized by theproduct ownerThis is theProduct Backlog12345678910111213
Sprint Planning Planning at the start of aSprint by the whole teamand Product Owner Team creates tasks,estimates, and volunteersfor themThis is the SprintPlanning Meeting
Sprints1 month timebox of workDuring the Sprint:4 WeekSprint Analysis Design Code TestThis is thesprintA little bit of everything
Daily Stand-Up A daily team meeting Keep up to date Help each other toresolve problemsThis is theDaily Meeting(Stand-Up)
Sprint ReviewA demo by the team of:Review Complete Fully tested Potentially shippablefeaturesAnyone can attendThis is theSprint Review
Sprint Retrospective A meeting at the end ofeach Sprint so the teamcan Inspect and Adaptthe process.RetrospectiveThis is theSprint RetrospectiveChallenges Testing Build breaksImprovement
Two week Sprint Cycle ExampleMTFirst SprintWThF 9:00 – 12:00Sprint PlanningDaily ScrumDaily ScrumDaily ScrumDaily ScrumDaily ScrumDaily ScrumDaily ScrumDaily Scrum2-3pm Sprint Review3.30– 4.30pmSprint RetrospectiveSecond Sprint 9:00 – 12:00Sprint PlanningDaily ScrumEtc
Are you doing Scrum?1. Do you deliver working software at the end of eachSprint (less than 4 weeks) that is tested at the featurelevel?2. Do you do just enough specification before starting aSprint and are their near-term Product Backlog itemssmall and clearly understood to be completed within asprint?3. Do you have a Product Owner and a Product Backlogwith prioritized items estimated by the team?4. Does the team have a release burndown chart anddoes the team know their velocity?
You know when you are not doingiterative development when: Iterations are longer than 2-4 weeks Team tries to complete specification beforeprogramming An iteration does not include testing Iteration does not produce workable code Detailed (task level) plans are accurateestimates and expected at the beginning of aproject The sprint plan doesn’t reflect what the team isdoing.
You know when you are not doing agiledevelopment when: There is little co-operation within the team Design and code is produced by individual effort Progress is measures by hours spend ordocuments created instead of working code Builds are done once every three weeks.
Product Owner Product visionary Maximizes businessvalue Prioritizes and clarifies requirements.
Product Owner ResponsibilitiesDoes Provide clear product direction Work with the team closely to clarify requirements Actively manages the product backlog Represents the business and customer needs.Does not Assign work to team members Give fixed date fixed scope projects without teamconsent Change priorities during an iteration.
Exercise: Choosing a Product Owner In your team come up with a list of attributes foryour Product Owner Discuss who would make a good Product Ownerin your organization
The Scrum MasterSimilar to a Project Manager, yet differentA facilitatorRemoves impediments
The Role of the ScrumMaster The ScrumMaster does everything in theirpower to help the team achieve success This includes: Serving the team Protecting the team Guiding the team’s use of Scrum
What does a ScrumMaster do? Setup meetings Facilitate meetingsM 9:00 – 12:00Sprint PlanningDaily ScrumTDaily ScrumDaily ScrumWDaily ScrumDaily ScrumThDaily ScrumDaily ScrumaFDaily Scrum2-3pm SprintReview3.30– 4pmSprintRetrospective
What do they 29/06 Coach team in Scrum valuesand practices Protect from disruption Remove impediments Listen and help Track progress
Exercise: FacilitationWork with your table to describe the differencebetween “directing” and “facilitating”Directive: “Do this task now”Facilitative: “What support do you need to get around thisproblem”?Working with your table, come up with 2 “directive”and 2 “facilitative” statements.
Exercise: Choosing a ScrumMaster In your team come up with a list of attributes fora good ScrumMaster Discuss who could be a ScrumMaster in yourorganization.
The Scrum TeamCross-functionalSelf-OrganizingShared Commitment.
Team 7 people, or – 2 Has worked with as high as 15, as few as 3Can be shared with other teams (but better when not)Can change between Sprints (but better when they don’t)Can be distributed (but better when colocated) Cross-functional Possesses all the skills necessary to produce an increment ofpotentially shippable product Team takes on tasks based on skills, not just official “role” Self-managing Team manages itself to achieve the Sprint commitment
Basic truths about team motivation People are most productive when they managethemselves;People take their commitment more seriouslythan other people’s commitment for themPeople do their best work when they aren’tinterruptedTeams improve most when they solve their ownproblems.
Ideal Environment Everyone in same location Open space without barriers Resources available; phone,whiteboards, meeting space etc
Collaborative workspace INSERT PHOTOS
What happens to the manager in Scrum?
Manager 2.0 Cross off the list everything that: Conflicts with Scrum Is unnecessary in Scrum Would undermine the team's self-organizationand self-management
Decide task assignments among the teammembers and assign themProvide coaching and mentorship to teammembersKeep track of whether team-members havedone the tasks I’ve assigned to themSurface issues to the team that they mightoverlook – scaling, performance, security, etc.Make commitments on behalf of the teamabout how much they can get done by X dateProvide input on features, functionality, andother aspects of what’s being producedGive direction to the team on how to do thework, so they can meet the commitment ImadeDo performance evaluations and providefeedback to team-membersConvince team that the commitments madeon their behalf are attainableProvide advice and input to the team ondifficult technical issues that come upMonitor the team's progress, to make surethey stay on schedule, and aren't havingproblemsPlan training for team, and do careerdevelopment and planning with teammembersConduct weekly update and 1:1 meetings withteam, to surface issues, and provide directionStay abreast of latest developments in thetechnology their team uses, industry news,etc.Recruit, interview and hire new members ofthe teamPlan and oversee budgets and financials, andthink about tools, skills and other future needsFire team-members who are consistently notable to performHelp remove impediments that the team is notable or well-placed to resolve themselves
Agile Software Development with Scrum Jeff Sutherland Gabrielle Benefield. Agenda Introduction Overview of Methodologies Exercise; empirical learning Agile Manifesto Agile Values History of Scrum Exercise: The offsite customer Scrum 101 Scrum Overview Roles and responsibilities Scrum team Product Owner ScrumMaster. Agenda Scrum In-depth The Sprint Sprint Planning Exercise: Sprint Planning .
Jeff Branch WOODWORKING Publisher: Jeff Branch Editor: Jeff Branch Art Direction: Jeff Branch Contributing Editor: Jeff Branch Illustration: Jeff Branch Marketing: Jeff Branch Basically, I created this document all by myself. ***** On the cover: The design for this cupboard started as a traditional, sort of primitive form,
BEC, Camp Scrum, DotWay AB, Ultimate Software, Scrum Training Institute, AtTask, Intronix, Loyalty Lab, Version One, OpenView Labs, Central Desktop, Open-E, Zmags Jeff Sutherland, Ph.D. Co-Creator of Scrum firstname.lastname@example.org Chairman, Scrum Training
Gabrielle Zadra, Senior Managing Director, Head of Private Assets Research. Gabrielle is a Senior Managing Director of Cliffwater LLC and leads our private assets research team. Prior to joining Cliffwater in 2004, Gabrielle was with Pathway Capital Management, LLC where she led due diligence on private equity investments.
Rolling out Agile in a Large Enterprise Gabrielle Benefield Yahoo! email@example.com Abstract Yahoo! is a large enterprise with a 32 billion market cap and has one of the largest Agile implementations in the world. The adoption of Scrum and Agile practices h
North & West Sutherland LHP – Minutes 1/3/07 1 NORTH & WEST SUTHERLAND LOCAL HEALTH CARE PARTNERSHIP Minutes of the meeting held on Thursday 1st March 2007 at 12:00 noon in the Ben Loyal Hotel, Tongue PRESENT: Dr Andreas Herfurt Lead Clinician Dr Alan Belbin GP Durness Dr Cameron Stark Public Health Consultant Dr Moray Fraser CHP Medical Director Mrs Georgia Haire CHP Assistant General .
McDonald’s Caringbah Melanie Ingram Art and Design Ohana Ocean Athletics Peak Health Position Partners Ritchies IGA Riley Balsawood Surfboards Roads and Maritime Services Servcorp Administration Soilco Sutherland District Trade Union Club (The Tradies) Sutherland Mazda Sutherland Shire Council Toll Group Total Water Westfield Miranda, Centre .
Jeff French firstname.lastname@example.org jiAKK v n'iE,'A;TV, % Fwd: Rice Lake Area School District Nature Center 1 message Steve Olson email@example.com Man, Nov 1, 2021 at 11:53 AM To: Jeff French firstname.lastname@example.org Here it is Forwarded message From: Pat Blackaller email@example.com
1 HarperCollins Publishers 2017 Section A: Principles of Chemistry A1 States of Matter No. Answers Further explanations 1 C 2 DNH 3 (g) HCl(g) NH 4 Cl(s)