MultiUni - IT150 Intro to Scrum and Agile

33
“Three laws of Prediction 1.When a distinguished but elderly scientist states that something is possible, he is almost certainly right. When he states that something is impossible, he is very probably wrong. The only way of discovering the limits of the possible is to venture a little way past them into the impossible. Any sufficiently advanced technology is indistinguishable from magic” Arthur C. Clarke
  • date post

    17-Oct-2014
  • Category

    Technology

  • view

    5.674
  • download

    0

description

MultiUni guest lecture by Eric K. Hosick introducing Scrum and Agile software management processes

Transcript of MultiUni - IT150 Intro to Scrum and Agile

Page 1: MultiUni - IT150 Intro to Scrum and Agile

“Three laws of Prediction1.When a distinguished but elderly

scientist states that something is possible, he is almost certainly right. When he states that something is impossible, he is very probably wrong.

• The only way of discovering the limits of the possible is to venture a little way past them into the impossible.

• Any sufficiently advanced technology is indistinguishable from magic”

Arthur C. Clarke

Page 2: MultiUni - IT150 Intro to Scrum and Agile

ScrumAn Agile Approach to managementEric K. Hosick

Image: http://www.plasticscm.com/media/19361/scrum.png

Page 3: MultiUni - IT150 Intro to Scrum and Agile

 Agile and the Agile Manifesto

Page 4: MultiUni - IT150 Intro to Scrum and Agile

 Agile What is agile.

• Definition*o quick and well-coordinated in movement o marked by an ability to think quickly; mentally acute or

aware• Applied to Software Engineering

o means, methods, and tools that have agile characteristics.

• Let's look at the Agile Manifesto

*http://dictionary.reference.com/browse/Agile

Page 5: MultiUni - IT150 Intro to Scrum and Agile

The Agile ManifestoManifesto for Agile Software DevelopmentFebruary 11-13, 2001

The Manifesto Some of the 17 Players

• Individuals and interactionso over processes and tools

• Working softwareo over comprehensive

documentation • Customer

collaborationo over contract negotiation 

• Responding to changeo over following a plan

• Kent Beck• Jeff Sutherland• Robert C. Martin• Alistair Cockburn• Ken Schwaber• Martin Fowler• Ward Cunningham• James Grenning• Andrew Hunt• Ron Jeffries

*http://agilemanifesto.org/

Page 6: MultiUni - IT150 Intro to Scrum and Agile

Agile Principals* The 13 principals behind the agile manifesto

• Our highest priority is to satisfy the customerthrough early and continuous deliveryof valuable software.

• Welcome changing requirements, even late in development. Agile processes harness change for the customer's competitive advantage.

• Deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter timescale.

• Business people and developers must work together daily throughout the project.

• Build projects around motivated individuals. • Give them the environment and support they need, and

trust them to get the job done.

*http://agilemanifesto.org/principles.html

Page 7: MultiUni - IT150 Intro to Scrum and Agile

Agile Principals* The 13 principals behind the agile manifesto (continued)

• The most efficient and effective method of conveying information to and within a development team is face-to-face conversation.

• Working software is the primary measure of progress. Agile processes promote sustainable development.

• The sponsors, developers, and users should be able to maintain a constant pace indefinitely.

• Continuous attention to technical excellence and good design enhances agility.

• Simplicity --the art of maximizing the amount of work not done-- is essential.

• The best architectures, requirements, and designs emerge from self-organizing teams.

• At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly.

Page 8: MultiUni - IT150 Intro to Scrum and Agile

AgileAgile tools that have been around

• Pair programming• Stand-up meetings• Burn down charts• Lean development/manufacturing• User stories• Regression testing• Test driven development (TDD)• Shortened delivery cycles• Osmotic communication• Team driven, Reflection• Onsite usage experts

Agile Software Development - The Cooperative Game p. 260 - p. 261

Page 9: MultiUni - IT150 Intro to Scrum and Agile

AgileAgile is new, it's improved, it's old fashioned.

• "Every idea in the agile canon has been traced as far back as the 1960s and even the 1950s."

• "A better way to think of the agile manifesto is that the manifesto authors 'cherry picked' a very small set of values to pay close attention to out of hundreds of possibly important things."

• "It is natural that the items we chose had been around for a long time. hat was new was that we bothered to name a particular and critical combination."

Agile Software Development - The Cooperative Game p. 260 - p. 261

Page 10: MultiUni - IT150 Intro to Scrum and Agile

Questions on Agile

• Before we move forward with Scrum...

Page 11: MultiUni - IT150 Intro to Scrum and Agile

ScrumAn agile approach to management.

Page 12: MultiUni - IT150 Intro to Scrum and Agile

Agile CultureAgile requires a new culture

• Adventure Works - American Management Implemented Scrum

• The product began to emerge in high-quality, regular increments.Joris (owner) adopted a sustainable pace of work - everyone worked eight-hour days.

• Company was owned by a Japanese company and eight-hour workdays was unacceptable to Japanese management.

• Demanded return to the 12-hour work days that were normal prior to Scrum were restored.

• Defects rose 60 percent so Joris restored Scrum's eight-hour workdays.

• Japanese managers saw empty parking lots and darkened offices, reported that employees were lazy and recommended selling the company. - Sold Adventure Works to its American management.

• Two months later, company sold product for twice the price of the buyout. The Enterprise and Scrum - Ken Schwaber

Page 13: MultiUni - IT150 Intro to Scrum and Agile

 ScrumIntroduction

• Only  those committed should have influence on a project.o We will see how the scrum master plays a role in

assuring this happens.

Page 14: MultiUni - IT150 Intro to Scrum and Agile

ScrumKey players, artifacts and activities

Key Roles Key Activities

• Scrum Master (Pig)• Product Owner (Pig)• Team (Pig)• Stakeholders (Chickens)• Others (Chickens)

• Sprint Planning Meeting

• Daily Scrum Meeting• Sprint• Sprint Review

Meeting• Sprint Retrospective

Meeting• Scrum Poker• Osmotic

Communication

Key Artifacts

• Product Backlog• Sprint Backlog• Burn-down Chart• Information Radiator

Page 15: MultiUni - IT150 Intro to Scrum and Agile

ScrumThe rules of scrum.

• Scrum Master - Introducedo different players in scrum, but Scrum Master makes

sure everyone is on the same page - they are following the rules of scrum - both chickens and pigs.

• Rules Can be Changedo Disputing rules waste time but they can changeo Changes originate solely from the Team and are

discussed during the Sprint Retrospective Meeting (discussed later).

o Rules can change when the Scrum Master determines that everyone involved understands Scrum enough to "skillfully and mindfully make such changes".

Agile Project Management With Scrum - Ken Schwaber Appendix A

Page 16: MultiUni - IT150 Intro to Scrum and Agile

Scrum - RolesPlayers in scrum. Group work.

• Scrum Mastero Page 4 of scrum guide.

• Product Ownero Page 5 of scrum guide.

• The Teamo Page 5 of scrum guide.

• Stakeholders• Other

o Management, Chickens

Agile Project Management With Scrum - Ken Schwaber Appendix A

Page 17: MultiUni - IT150 Intro to Scrum and Agile

Scrum - RolesPlayers in scrum. Group work.

• Scrum Mastero Page 4 of scrum guide.

• Product Ownero Page 5 of scrum guide.

• The Teamo Page 5 of scrum guide.

• Stakeholders• Other

o Management, Chickens

Agile Project Management With Scrum - Ken Schwaber Appendix A

Page 18: MultiUni - IT150 Intro to Scrum and Agile

Agile Concept - Time-BoxingKeeping things agile by limiting the time of an event.

• Meetings and events that occur in Scrum are time-boxed.o Can be hours, days, weeks months.o Keeps people focused on the meeting/event at

hand.• In Scrum:

o Sprint Planning Meeting, Sprint, Daily Scrum, Release Planning Meeting, Sprint Review, Sprint Retrospective.

• We will get into groups and cover these 6 time-boxed events in scrum.

Agile Project Management With Scrum - Ken Schwaber Appendix A

Page 19: MultiUni - IT150 Intro to Scrum and Agile

Agile Concept - Time-BoxingKeeping things agile by limiting the time of an event.

• Meetings and events that occur in Scrum are time-boxed.o Can be hours, days, weeks months.o Keeps people focused on the meeting/event at

hand.• In Scrum:

o Sprint Planning Meeting, Sprint, Daily Scrum, Release Planning Meeting, Sprint Review, Sprint Retrospective.

Agile Project Management With Scrum - Ken Schwaber Appendix A

Page 20: MultiUni - IT150 Intro to Scrum and Agile

Scrum - The Complete ProcessMade up of time-boxed meetings and events.

Image: http://www.plasticscm.com/media/19361/scrum.png

Page 21: MultiUni - IT150 Intro to Scrum and Agile

Scrum - Sprint Planning Meeting 

• Time-boxed - 8 hours• What (4 hours)

o Select Product Backlogo Sprint Goal

• How (4 hours)o Turn What into potentially shippable

product.o Create Sprint Backlogo Planning

• Let's look at artifacts in next slides.

Agile Project Management With Scrum - Ken Schwaber Appendix A

Page 22: MultiUni - IT150 Intro to Scrum and Agile

Scrum Tool - Product BacklogList of functional and non-functional requirements and issues.

• Created and updated by product owner.• Ordered by importance (to product owner).• Generally, user stories are description. Also non-functional

+ issues.

Image: http://media.agile42.com/content/Poker_Cards.png

Page 23: MultiUni - IT150 Intro to Scrum and Agile

Scrum Tool - Sprint BacklogList of functional and non-functional requirements for sprint.

• Created and updated by team.• Generally, detailed user stories. Testing, etc.

Image: http://media.agile42.com/content/Poker_Cards.png

Page 24: MultiUni - IT150 Intro to Scrum and Agile

Scrum Tool - Burn-down chart(s)Burn-down chart for sprint backlog.

• Graph of amount of work remaining in a sprint.• Drawing a line can be used to "see" if the team will

complete the work committed to. Also the "velocity" of the team.

Image: http://media.agile42.com/content/Poker_Cards.png

Page 25: MultiUni - IT150 Intro to Scrum and Agile

Scrum Tool - Planning PokerPlanning Meeting - Estimation

• Given a deck of cards reading ?, 0, 1, 2, 3, 5, 8, 13, 20, 40, 100, Infinity.

• Moderator reads a user story• Brief time is spent on questions

(answered by the Product Owner) 2-4 minutes.

• Each estimator then makes a choice.• All simultaneously turn them over to be

seen.• If estimates vary widely? Good because

debate follows.• Agreement generally by the third round

of voting.• Online, iPhone App., etc. 

o http://scrumpoker.codeplex.com/

http://www.mountaingoatsoftware.com/products/planning-poker

Image: http://media.agile42.com/content/Poker_Cards.png

Page 26: MultiUni - IT150 Intro to Scrum and Agile

Scrum - Daily Scrum MeetingDaily meeting. Sometimes called stand-up meeting.

• Time-boxed - 15 Minutes (Any team size).• Takes place at the SAME TIME every day.• Scrum Master asks (start with person on

the left):o What have you done since the last meeting regarding

this project?o What will you do between now and next meeting

regarding this project?o What impedes you from performing your work as

effectively as possible?• Scrum master notes what is impeding

team. Fixes it ASAP!• Team reports to each other. NOT scrum

master. Agile Project Management With Scrum - Ken Schwaber Appendix A

Page 27: MultiUni - IT150 Intro to Scrum and Agile

Scrum - SprintThe period of time where work gets done.

• Time-boxed - 2 weeks to 1 month.• Team is self managed. Can ask for outside

help but NO ONE from outside may offer any advice.

• Pull items from sprint backlog.• Over committed?

o Work with Product Owner to remove sprint backlog items.

• Team members admin. responsibilitieso Attend daily scrumo Update sprint backlog.

Agile Project Management With Scrum - Ken Schwaber Appendix A

Page 28: MultiUni - IT150 Intro to Scrum and Agile

Scrum - Sprint Review MeetingDemonstration to Product Owner and Stakeholders of potential product.

• Time-boxed - 4 hours.o Team Presents goals.o Members present only what is DONE.

• Theno Stakeholders are pooled for comment.

Can recommend changes, additions, etc.o Request changes are discussed and

Product Backlog updated.o Scrum master announces time of next

Sprint Review Meeting.

Agile Project Management With Scrum - Ken Schwaber Appendix A

Page 29: MultiUni - IT150 Intro to Scrum and Agile

Scrum - Sprint Retrospective MeetingHere is the chance for the team to make changes.

• Time-boxed - 3 hours.• Team members discuss...

o What went well during the last sprint?o What could be potentially improved on the next

sprint?• Scrum master facilitates on ways to improve.• Action items added to Product Backlog.

Considered high-priority.• Product Owner - Optional attendance.

Agile Project Management With Scrum - Ken Schwaber Appendix A

Page 30: MultiUni - IT150 Intro to Scrum and Agile

Scrum - Release Planning MeetingEstablish a plan and goals that the Scrum Teams and organization can understand.

• Time-boxed - Quarterly• Plan on how to release the product.• Remember, Product Owner needs to come to

Sprint Planning Meeting with work to do.• Bit complex. Need to sell it to the

stakeholders.• Remember - A sprint produces a potentially

shippable unit of product functionality. That is different from a release.

Agile Project Management With Scrum - Ken Schwaber Appendix A

Page 31: MultiUni - IT150 Intro to Scrum and Agile

Scrum Tool - Information RadiatorProvide Information to the Team - Stay positive!

http://www.xpday.net/html/Xpday2007/SCRUM%20Board%20with%20comments.JPG

Page 32: MultiUni - IT150 Intro to Scrum and Agile

Richness of CommunicationEffectiveness of different communications channels.

• Osmosis*o a subtle or gradual absorption or mingling

Image: http://www.agilemodeling.com/essays/communication.htm

• Strive for:o most effective

communication.• but!

o be prepared to vary approach.

• Factorso Physical Proximityo Temporal Proximityo Willingness to listen

*http://dictionary.reference.com/browse/osmosis

Page 33: MultiUni - IT150 Intro to Scrum and Agile

ResourcesMiscellaneous resources on scrum and agile.

• ImplementingScrum.com Funnies - http://www.implementingscrum.com/2006/09/11/the-classic-story-of-the-pig-and-chicken/

• Scrum Alliance - http://www.scrumalliance.org/• Planning Poker - http://www.crisp.se/planningpoker/

Agile Project Management With Scrum - Ken Schwaber Appendix A