agile in style ganesh c 12-26-12 ct buddies

69
Agile in Style Course Material for CSM by Ganesh Chandrasekaran, BE, SCJP, CWD, PMP,CGBL, CSM Certified ScrumMaster December 31, 2012

Upload: tcganesh

Post on 11-May-2015

551 views

Category:

Business


2 download

DESCRIPTION

Please find the slide deck used in the 12-31-12 presentation at Chandramohan home. Thanks for the feedback and happy reading.

TRANSCRIPT

Page 1: Agile in style   ganesh c 12-26-12 ct buddies

Agile in StyleAgile in StyleCourse Material for CSM

byGanesh Chandrasekaran, BE, SCJP, CWD, PMP,CGBL,

CSMCertified ScrumMasterDecember 31, 2012

Course Material for CSMby

Ganesh Chandrasekaran, BE, SCJP, CWD, PMP,CGBL, CSM

Certified ScrumMasterDecember 31, 2012

Page 2: Agile in style   ganesh c 12-26-12 ct buddies

How I started this?

இழபதற்குஎதுவும்இல்லை நமதுலை�யி�லே

பெபறுவதற்குஉ �ம்உண்டுதுணி�யும்பெப�ழுத�லே

� ங்�� ந�ன்றுநடந்தபெதன்னஒன்றும்இல்லை லேயி

இலைடவ�ட�தமுயிற்சி( என்றும்பெப�ய்தத�ல்லை லேயி

- Movie: Saatai / Lyrics: Yugabharathi

Giving a person one fish and you feed him for a day.

Teaching a person how to fish, then you feed him for a lifetime.

- Chinese Proverb

Page 3: Agile in style   ganesh c 12-26-12 ct buddies

Topics to be coveredOverview of Scrum

Sprints

Product Backlog

The Team

Tracking Progress

Meetings

Release PlanningSource: Ganesh Chandrasekaran

Page 4: Agile in style   ganesh c 12-26-12 ct buddies

Overview of ScrumOverview of Scrum

Page 5: Agile in style   ganesh c 12-26-12 ct buddies

Source: Online Sources

Page 6: Agile in style   ganesh c 12-26-12 ct buddies

Agile where it started“ The... ‘relay race’ approach to product development...may conflict with the goals of maximum speed and flexibility. Instead a holistic or ‘rugby’ approach - where a team tries to go the distance as a unit, passing the ball back and forth-may better serve today’s competitive requirements.”

Source: Hirotaka Takeuchi and Ikujiro Nonaka, “The New New Product Development Game,” Harvard Business Review, January 1986.

Page 7: Agile in style   ganesh c 12-26-12 ct buddies

SCRUM PROCESS• Dr. Jeff Sutherland and Ken Schwaber

Inventors

• Scrum as a formal process at OOPSLA'95.

• OOPSLA (Object-Oriented Programming, Systems, Languages & Applications) is an annual ACM research conference

Source: Wikipedia

Page 8: Agile in style   ganesh c 12-26-12 ct buddies

Rugby GameRugby GameSource: Online Sources

Page 9: Agile in style   ganesh c 12-26-12 ct buddies

What is Agile/SCRUM?Scrum is an agile framework for completing complex projects. Scrum originally was formalized for software development projects, but works well for any complex, innovative scope of work. The possibilities are endless. The Scrum framework is deceptively simple.

Source: http://www.scrumalliance.org/learn_about_scrum

Page 10: Agile in style   ganesh c 12-26-12 ct buddies

What is Agile/SCRUM?

Source: http://www.scrumalliance.org/learn_about_scrum

1. A product owner creates/updates product backlog.Sprint planning, the team picks top priority stories.

2. Team creates a sprint backlog.The team works on a sprint, usually two to four weeks.

3. Team meets every day to assess its progress.The ScrumMaster keeps the team focused on its goal.Sprint review to showcase the product.The sprint ends with a retrospective.Next sprint begins, with Step 1.

Page 11: Agile in style   ganesh c 12-26-12 ct buddies

What is Agile/SCRUM?

Source: http://www.mitchlacey.com/resources/scrum-framework-flow-diagram

Page 12: Agile in style   ganesh c 12-26-12 ct buddies

What is Agile/SCRUM?

Source: Unknown

Page 13: Agile in style   ganesh c 12-26-12 ct buddies

SprintSprint

Page 14: Agile in style   ganesh c 12-26-12 ct buddies

A Sample SprintMonMon TueTue WedWed ThuThu FriFri MonMon TueTue WedWed ThuThu FriFri

9am9am

10am10am

11am11am

12pm12pm

1pm1pm

2pm2pm

3pm3pm

4pm4pm

5pm5pm

Spri n

t Sprin

t R

evi e

wR

evi e

w

Retro

-R

etro

-sp

ectiv

spectivee

Sp

r int

Sp

rint

Pla

nn

ing

Pla

nn

ing

Back

log

B

ack

log

g

room

ing

gro

om

ing

Source: Mountain Goat Software

Daily Sync MeetingDaily Sync Meeting

Page 15: Agile in style   ganesh c 12-26-12 ct buddies

Sprint DonenessPotentially shippable product

High Quality

Tested

Complete

Team decides the Doneness

What it does, it does very well

Show sample Doneness document

Source: Mountain Goat Software

Page 16: Agile in style   ganesh c 12-26-12 ct buddies

Doneness DocumentDate Task

FALSE

31-Dec-12 All code is checked in SVN

TRUE 30-Dec-12 Performed code level checks as per code review checklist

TRUE 30-Dec-12 Tested the component using multiple browsers

TRUE 30-Dec-12 All known issues updated in the Product backlog

TRUE 30-Dec-12 Test Caching of all components

FALSE

31-Dec-12 All error messages/warning appearing in the log file resolved

FALSE

31-Dec-12 All log instances are pointing to the correct logger with the appropriate log level

FALSE

31-Dec-12 Tested components with real data

TRUE 30-Dec-12 Performed boundary condition checks – null values, very long strings, empty values, negative values etc

FALSE

31-Dec-12 Code should be properly commented

FALSE

31-Dec-12 Design doc should be updated as per implementation changes

FALSE

31-Dec-12 Change history in the code should be updated

TRUE 30-Dec-12 Presentation (HTML) code should be well-commented and indented as per Company standards

FALSE

31-Dec-12 Designed & coded as per established standards

FALSE

31-Dec-12 Functional testing - all applicable use cases should be documented and tested

TRUE 30-Dec-12 Automated testing - unit tests should be written, run and passing for all features - unit test coverage for a component should exceed 80% code coverage - only in rare cases where unit testing is no possible will exceptions be made

FALSE

31-Dec-12 Code reviewed by development lead

FALSE

31-Dec-12 Documented as needed for the components

Page 17: Agile in style   ganesh c 12-26-12 ct buddies

Architecture in AgileArchitecture is built over time

More time on Architecture initially

Gradual decrease following sprints

User valued stories less initially

Gradual increase following sprints

Source: Mountain Goat Software

Page 18: Agile in style   ganesh c 12-26-12 ct buddies

Sprint CommitmentThe team commits to stories.

The business commits to leave priorities alone during the sprint.

Sprint ends on same day every time.

Drop scope if needed, but don’t extend.

Source: Mountain Goat Software

Page 19: Agile in style   ganesh c 12-26-12 ct buddies

Product BacklogProduct Backlog

Page 20: Agile in style   ganesh c 12-26-12 ct buddies

Story WritingAs a <user type>, I <want/need/can/etc.> some goal, [so that <reason>].

As a boy, I would like to grow up faster, so that I can drive a fast car.

Stories are written by anyone.

Stories can be added anytime.

Source: Mountain Goat Software

Page 21: Agile in style   ganesh c 12-26-12 ct buddies

Acceptance CriteriaAdding test conditions for the story.

Can drive in all roads.

Can have music during ride.

Can go 0-60mph in 3secs.

Helps developer to code for needs.

Helps tester to create test scripts.

Test Driven Development to be followed.

Source: Mountain Goat Software

Page 22: Agile in style   ganesh c 12-26-12 ct buddies

Backlog GroomingReview the stories in backlog

Re-prioritize due to changes in current demands

Remove unwanted stories

Split epics to stories

Product backlog healthy & up to date

Source: Mountain Goat Software

Page 23: Agile in style   ganesh c 12-26-12 ct buddies

Product BacklogProduct BacklogSource: Online Sources

Page 24: Agile in style   ganesh c 12-26-12 ct buddies

Product BacklogProduct BacklogSource: Online Sources

Page 25: Agile in style   ganesh c 12-26-12 ct buddies

The TeamThe Team

Page 26: Agile in style   ganesh c 12-26-12 ct buddies

Product Owner RARDefines the features of the product

Prioritizes the product backlog

Makes scope/schedule tradeoff decisions

Responsible for the profitability of the product

Adjusts priorities as more is learned

Accepts or rejects work results

Source: Mountain Goat Software

Page 27: Agile in style   ganesh c 12-26-12 ct buddies

ScrumMaster RARHelps functional and productive team

Close co-operation with cross-functional teams

An expert in Scrum helps the team use it

A leader - self-aware, listens, flattens hierarchy, helps colleagues improve, coaches doesn’t control, unleashes energy and intelligence of others.

Source: Mountain Goat Software

Page 28: Agile in style   ganesh c 12-26-12 ct buddies

ScrumMaster RARValues & practices of process & team

Removes impediments from the team

Change agent for the organization

Improves productivity as possible

If it’s legal and moral, do it

Source: Mountain Goat Software

Page 29: Agile in style   ganesh c 12-26-12 ct buddies

Scrum MasterScrum MasterSource: Online Sources

Page 30: Agile in style   ganesh c 12-26-12 ct buddies

The TeamMembers should be full-time

Teams are self-organizing

Typically 5-9 people

Egos & attitudes are put aside

Common goal is Sprint GOAL

Source: Mountain Goat Software

Page 31: Agile in style   ganesh c 12-26-12 ct buddies

The TeamRather all of one thing at a time

Does a little of everything all the time

Decide doneness as a team

Late to daily meetings have a rule

Respond emails before leaving home

Source: Mountain Goat Software

Page 32: Agile in style   ganesh c 12-26-12 ct buddies

The TeamSoftware Developers (UI/UX, Mid Tier, Back End)

Technical Architect(s)

QA Engineer(s)

Business Analyst(s)

ScrumMaster

Product Owner

Technical Writer

Project Manager

Source: Ganesh Chandrasekaran

Page 33: Agile in style   ganesh c 12-26-12 ct buddies

THE TEAMTHE TEAM

Page 34: Agile in style   ganesh c 12-26-12 ct buddies

Real Life Incident

Tae Kwon Do and Scrum are both about doing the right thing in a situation rather than mastering a list of rules

Source: Ganesh Chandrasekaran

Page 35: Agile in style   ganesh c 12-26-12 ct buddies

5 tenets -Tae Kwon DoCourtesy - to help team members

Integrity - Team being whole & undivided

Perseverance - Sprint Goal

Self-Control - Team is self-organized

Indomitable Spirit - Keep the team motivated for Sprint Success / Team Success / Department Success

Source: Ganesh Chandrasekaran

Page 36: Agile in style   ganesh c 12-26-12 ct buddies

Sample ProjectsSample Projects

Page 37: Agile in style   ganesh c 12-26-12 ct buddies

Vacation Planning SiteShow creating a backlog

Show how backlog is prioritized

Exercise the Poker game for top 10 stories

Exercise commitment with story cards

Exercise the Daily Scrum Meeting

Show the artifacts displayed in demo

Source: Ganesh Chandrasekaran

Page 38: Agile in style   ganesh c 12-26-12 ct buddies

Education WebSiteSite Login

Students admission

Courses with videos and text

Questionnaire end of each 30 minutes session

Exercise compare and size the above 4

Exercise what is more critical to work first

Source: Ganesh Chandrasekaran

Page 39: Agile in style   ganesh c 12-26-12 ct buddies

Online Mobile App SiteIntegrating Mobile Apps

Apps Ratings from users

Top 20 Apps

Exercise elaborating Epics

Exercise Acceptance Criteria needed for stories

Source: Ganesh Chandrasekaran

Page 40: Agile in style   ganesh c 12-26-12 ct buddies

MeetingsMeetings

Page 41: Agile in style   ganesh c 12-26-12 ct buddies

Sprint PlanningWho:

Team, ScrumMaster & Product Owner

Agenda:

Discuss top priority product backlog items

Team selects which items to do

Why:

Know what will be worked upon

Discuss backlog items enough to do them

Source: Mountain Goat Software

Page 42: Agile in style   ganesh c 12-26-12 ct buddies

Sprint Planning contd.How full should a sprint be?

Unplanned time

Plannable time

Corporate overhead

Estimate & Analyze

Tasks estimated 1-16 hours

High-level design is considered

Time boxed to 4 hours meeting timeSource: Mountain Goat Software

Page 43: Agile in style   ganesh c 12-26-12 ct buddies

Sprint PlanningSprint PlanningSource: Online Sources

Page 44: Agile in style   ganesh c 12-26-12 ct buddies

Sprint PlanningSprint PlanningSource: Online Sources

Page 45: Agile in style   ganesh c 12-26-12 ct buddies

Commitment DrivenPick high-priority story in backlog

Decompose it into tasks

Estimate each task

Team members ask themselves: “Can we commit to this?”

If yes repeat with next story

Source: Mountain Goat Software

Page 46: Agile in style   ganesh c 12-26-12 ct buddies

Velocity DrivenNeeds 4-5 sprints velocity chart

Use average or previous sprint velocity

Grab user stories equal to that velocity

Possibly stop there, but some team:

Identify tasks for selected stories

Some then estimate those tasks

Source: Mountain Goat Software

Page 47: Agile in style   ganesh c 12-26-12 ct buddies

Story PointsA measure of relative size of feature

Based on the total effort involved

Key is the relative size of numbers

Team does best sizing in 2-3 sprints

1,2,3,5,8,13,20,40,100

Planning Poker once a month

Source: Mountain Goat Software

Page 48: Agile in style   ganesh c 12-26-12 ct buddies

Daily Scrum/Sync UpDaily sync choose a time & stick to it

15-minutes and that’s the maximum

Not for problem solving

Whole world is invited, only team talk

To reduce other meetings

Source: Mountain Goat Software

Page 49: Agile in style   ganesh c 12-26-12 ct buddies

Daily Scrum/Sync UpWhat did you do yesterday?

What will you do today?

What, if anything, is in your way?

Each team member max 1-2 mins

Prepare 5 mins previous day - 3Qs.

Source: Mountain Goat Software

Page 50: Agile in style   ganesh c 12-26-12 ct buddies

Daily Scrum/Sync Standup

Daily Scrum/Sync StandupSource: Online Sources

Page 51: Agile in style   ganesh c 12-26-12 ct buddies

Scrum Task BoardScrum Task BoardSource: Online Sources

Page 52: Agile in style   ganesh c 12-26-12 ct buddies

Scrum Task BoardScrum Task BoardSource: Online Sources

Page 53: Agile in style   ganesh c 12-26-12 ct buddies

Sprint ReviewTeam presents the product

Demo of new features or architecture

2 hours prep guideline

Whole team participates

Invite the world

Source: Mountain Goat Software

Page 54: Agile in style   ganesh c 12-26-12 ct buddies

Sprint ReviewSprint ReviewSource: Online Sources

Page 55: Agile in style   ganesh c 12-26-12 ct buddies

Sprint ReviewSprint ReviewSource: Online Sources

Page 56: Agile in style   ganesh c 12-26-12 ct buddies

Sprint RetrospectiveWhat worked very well?

What went wrong?

How can we improve?

Did we improve from last Sprint?

30-60 minutes maximum

Done after every sprint

ScrumMaster, Product Owner & TeamSource: Ganesh Chandrasekaran

Page 57: Agile in style   ganesh c 12-26-12 ct buddies

Sprint RetrospectiveSprint RetrospectiveSource: Online Sources

Page 58: Agile in style   ganesh c 12-26-12 ct buddies

Sprint RetrospectiveSprint RetrospectiveSource: Online Sources

Page 59: Agile in style   ganesh c 12-26-12 ct buddies

Tracking ProgressTracking Progress

Page 60: Agile in style   ganesh c 12-26-12 ct buddies

Tracking ProgressTask Boards with task current view

Burndown Charts

Release burndown chart

Sprint burndown chart

Velocity chart

Show net progress

Promote transparency

Bad News is Good News (fail early than late)

Source: Mountain Goat Software

Page 61: Agile in style   ganesh c 12-26-12 ct buddies

Sample Charts

Page 62: Agile in style   ganesh c 12-26-12 ct buddies

Release PlanningRelease Planning

Page 63: Agile in style   ganesh c 12-26-12 ct buddies

Release PlanningSprints to complete the total backlog

Use team velocity and total story points

Hardening Sprint as needed

Release Sprint as needed

Mean Time Between Failure(MTBF) test

Stress, performance or usability testing

Compliance testing, documentation touchups

Source: Mountain Goat Software

Page 64: Agile in style   ganesh c 12-26-12 ct buddies

Sample Release PlanPhase 1 ReleasePhase 1 Release

Regula

r Sprin

tR

egula

r Sprin

t

Regula

r Sprin

tR

egula

r Sprin

t

Regula

r Sprin

tR

egula

r Sprin

t

Hard

enin

g S

prin

tH

ard

enin

g S

prin

t

Regula

r Sprin

tR

egula

r Sprin

t

Regula

r Sprin

tR

egula

r Sprin

t

Regula

r Sprin

tR

egula

r Sprin

t

Hard

enin

g S

prin

tH

ard

enin

g S

prin

t

Regula

r Sprin

tR

egula

r Sprin

t

Regula

r Sprin

tR

egula

r Sprin

t

IT S

prin

tIT

Sprin

t

UA

T S

prin

tU

AT S

prin

t

Rele

ase

Sprin

tR

ele

ase

Sprin

t

Page 65: Agile in style   ganesh c 12-26-12 ct buddies

Each of you can fly high

Page 66: Agile in style   ganesh c 12-26-12 ct buddies

Succeeding with Agile

-Mike Cohn

Succeeding with Agile

-Mike Cohn

Page 67: Agile in style   ganesh c 12-26-12 ct buddies

Succeeding with AgileChange is not top-down or bottom-up.

The end state is unpredictable.

Scrum is pervasive.

Scrum is dramatically different.

Change is coming more quickly.

Best practices are dangerous.Cohn, Mike (2009-10-20). Succeeding with Agile: Software Development Using Scrum (p. 5). Pearson Education (USA). Kindle

Edition.

Source: Mountain Goat Software

Page 68: Agile in style   ganesh c 12-26-12 ct buddies

Q&AQ&A

Page 69: Agile in style   ganesh c 12-26-12 ct buddies

Thank YouThank YouHope this has given an intuitive and informational

sessionBest Regards

Ganesh ChandrasekaranScrumMaster at Apple Inc.

Hope this has given an intuitive and informational session

Best Regards

Ganesh ChandrasekaranScrumMaster at Apple Inc.