scrum and the enterprise

Post on 18-Nov-2014

1.359 Views

Category:

Documents

1 Downloads

Preview:

Click to see full reader

DESCRIPTION

 

TRANSCRIPT

Scaling ScrumScaling Scrum

Adapted from The Enterprise And Adapted from The Enterprise And Scrum by Ken SchwaberScrum by Ken Schwaber

James PeckhamJames Peckham

In IT since 2003In IT since 2003

Support, Infrastructure, Networking, Support, Infrastructure, Networking, Development, Testing.Development, Testing.

C#, Web services, WCF, WPF, ASP.NET, C#, Web services, WCF, WPF, ASP.NET, C++, Java, LPC, Lua, DirectX, XNAC++, Java, LPC, Lua, DirectX, XNA

Organizational PracticesOrganizational Practices

StrategyStrategy

OperationsOperations

ProjectsProjects

LeanLean

Strategic PlansStrategic Plans

Existing organization product owner voice Existing organization product owner voice only considers 10,000 foot view itemsonly considers 10,000 foot view items

Work items all become priority #1!Work items all become priority #1!

IncrementalIncremental spans quarters instead of spans quarters instead of rapid feedback loops needed for true rapid feedback loops needed for true agility and to expose real roadblocks.agility and to expose real roadblocks.

Operations workOperations work

Operations work is done by development Operations work is done by development departments inside of the project work departments inside of the project work looploop

The meeting madnessThe meeting madness

A meeting to communicate some ideas to A meeting to communicate some ideas to a managera manager

Who meets with the worker to Who meets with the worker to communicate the ideas to workercommunicate the ideas to worker

Who meets with vendor to communicate Who meets with vendor to communicate ideas with vendorideas with vendor

Who meets with…Who meets with…

LeanLean

Cutting back on wasteCutting back on wasteCloser communication with requestor to the worker Closer communication with requestor to the worker creating the product.creating the product.Closer communication with Ops those doing the work.Closer communication with Ops those doing the work.Functional managers see their roles changeFunctional managers see their roles change

Less commandLess command More removing organizational roadblocksMore removing organizational roadblocks Making sure the worker is in contact with the source of work.Making sure the worker is in contact with the source of work.

Some functional managers may find themselves “bored” Some functional managers may find themselves “bored” but given opportunity to monitor and improve their team.but given opportunity to monitor and improve their team.

Operational WorkOperational Work

Driven By network operationsDriven By network operations

Driven by support ticketingDriven by support ticketing

Driven by work ordersDriven by work orders Work orders better communicated to workers Work orders better communicated to workers

who own them.who own them.

Driven by Configuration Management Driven by Configuration Management SystemSystem

Project workProject work

Baseline hours set by scrum team Baseline hours set by scrum team velocities and backlog item sizesvelocities and backlog item sizesEnterprise wide ‘ideal day’ = story pointEnterprise wide ‘ideal day’ = story pointEnterprise wide ‘done’Enterprise wide ‘done’ Unit testUnit test Security scanSecurity scan Code reviewCode review Documentation level/templateDocumentation level/template

Managed by enterprise backlogManaged by enterprise backlog

Enterprise BacklogEnterprise Backlog

Arranging workArranging work EnterpriseEnterprise Line of businessLine of business OperationOperation ProductProduct ActivityActivity SystemSystem ComponentComponent RequirementRequirement

Enterprise Product backlogEnterprise Product backlog

Engineering practicesEngineering practices

Integrating oftenIntegrating oftenIntegrate at least once per sprint (30 days)Integrate at least once per sprint (30 days)

Difficult for engineering organizations especially Difficult for engineering organizations especially those who have long running regression tests.those who have long running regression tests.

Multi layer system work organized by Multi layer system work organized by functionalityfunctionality

Create a local version utilizing existing Create a local version utilizing existing infrastructureinfrastructure

Refactor to use new infrastructure developmentRefactor to use new infrastructure development

Integration of Multiple-layer Integration of Multiple-layer systemssystems

Layer vs tierLayer vs tier

Interface changes need communicated at Interface changes need communicated at scrum meeting(standup) in scrum of scrum meeting(standup) in scrum of scrumsscrums

• A team focused around each area of the system

• Or each tier

• An integration layer team (if not the UI team)

LOB Widgets/UI Controls/

Presentation

LOB Controller Objects

Business Objects/Service

Layer

SOA

Other AppsEnterprise

Data

Integrating with non-scrum workIntegrating with non-scrum work

Stubbed/simulated systemsStubbed/simulated systems

Simulated interfaces act as ongoing Simulated interfaces act as ongoing update to the Statement of work with the update to the Statement of work with the provider.provider.

People practicesPeople practices

Organizing people to do enterprise workOrganizing people to do enterprise workTeam creationTeam creationTeam workTeam workHow people are managedHow people are managedFunctional expertiseFunctional expertiseCompensationCompensationExtra managersExtra managersTeams with distributed membersTeams with distributed membersScarce skills needed by many teamsScarce skills needed by many teams

30 years in the making30 years in the making

Functional managersFunctional managers

DepartmentalizedDepartmentalized

Matrix organizationsMatrix organizations

Consider this on your own meritConsider this on your own merit

Then consider steps needed to adoptThen consider steps needed to adopt

Organizing people to do the workOrganizing people to do the work

Integration Scrum team

Integration Scrum team

Integration Scrum Team

Scrum team Scrum team Scrum team

Integration Scrum Team

Scrum team Scrum team Scrum team

Organizing the peopleOrganizing the people

The integration team is developing The integration team is developing integration tests to verify all of the integration tests to verify all of the functionality integrates properly.functionality integrates properly.

They’re the final say in whether the They’re the final say in whether the software is Demo-able or not. Generally a software is Demo-able or not. Generally a group of team leads from the different group of team leads from the different functional areas.functional areas.

Team creationTeam creation

Scrum master and product owner firstScrum master and product owner firstPeople who have succesfully worked People who have succesfully worked together previouslytogether previouslyPeople who understand the product or People who understand the product or business domainbusiness domainPeople who know the selected technologyPeople who know the selected technologyPeople who can fulfill the ‘done’ People who can fulfill the ‘done’ requirement. For example a tech writer for requirement. For example a tech writer for documentation.documentation.

Self directedSelf directed

45 crossfunctional ‘developers’ at 45 crossfunctional ‘developers’ at Woodgrove bankWoodgrove bank They were all thrown in a room with no They were all thrown in a room with no

managersmanagers Told follow scrum rules to organize into teamsTold follow scrum rules to organize into teams

Trust from team that management wasn’t Trust from team that management wasn’t ‘selling them down the river’‘selling them down the river’Trust from managementTrust from managementSelf organizing will flourishSelf organizing will flourish

Team WorkTeam Work

FormingForming

StormingStorming

NormingNorming

PerformingPerforming

formingforming

Decide how they’ll get requirementsDecide how they’ll get requirements

Decide how they’ll testDecide how they’ll test

Formed rules of etiquette (Working Formed rules of etiquette (Working agreements/values)agreements/values)

Formed rules on engineering practicesFormed rules on engineering practices

Tentatively formalize sprint process for Tentatively formalize sprint process for turning backlog items into something turning backlog items into something “Done”“Done”

stormingstorming

Team needs trained on resolving conflicts.Team needs trained on resolving conflicts.

Conflicts about how things are doneConflicts about how things are done

Conflicts about who does thingsConflicts about who does things

They also need to be able to identify the They also need to be able to identify the source of their conflicts and not blamesource of their conflicts and not blame No ‘You’ language, try “It” or “we”No ‘You’ language, try “It” or “we” No “But” language, try “and”No “But” language, try “and”

Norming and performingNorming and performing

Performing is not permanent.Performing is not permanent.

Storming will arise from time to time.Storming will arise from time to time.

When it does they will need the skills to When it does they will need the skills to identify the cause and resolve it.identify the cause and resolve it.

How people are managedHow people are managed

The team manages it selfThe team manages it self

The product owner sets goalsThe product owner sets goals

The team commitsThe team commits

The scrum master ensures the ‘framework’ The scrum master ensures the ‘framework’ of scrum is followedof scrum is followed

The rules of the organization cannot be The rules of the organization cannot be ignored. ignored. Enterprise “Done”Enterprise “Done”

The product owner The product owner

Responsible for node one of the tree and setting Responsible for node one of the tree and setting goals. Responsible for ROIgoals. Responsible for ROI

Integration Scrum team

Integration Scrum team

Integration Scrum Team

Scrum team Scrum team Scrum team

Integration Scrum Team

Scrum team Scrum team Scrum team

The scrum masterThe scrum master

At node 1 the scrum master should be At node 1 the scrum master should be educating the product owner on how to educating the product owner on how to maximize ROI utilizing the scrum maximize ROI utilizing the scrum frameworkframework

Scrum master should be making sure all Scrum master should be making sure all scrum masters in below nodes are scrum masters in below nodes are encouraging self direction.encouraging self direction.

Functional expertiseFunctional expertise

How do I keep functional skills sharp now How do I keep functional skills sharp now that functional managers are scrum that functional managers are scrum masters?masters?

You could let ‘the team decide’ or…You could let ‘the team decide’ or…

20% to ‘self research’20% to ‘self research’

Or allow them to dedicate 20% to self Or allow them to dedicate 20% to self research and improving themselves.research and improving themselves. Don’t just say “Seek training”Don’t just say “Seek training” Remember your teacher: “Write me a paper” Remember your teacher: “Write me a paper”

and you said “How long does it have to be?”and you said “How long does it have to be?”

Be surprised like 3m and Google were!Be surprised like 3m and Google were! Gmail… PostIts….Gmail… PostIts….

compensationcompensation

Total incentive amount pooled and sent Total incentive amount pooled and sent down through the teams via the product down through the teams via the product owner.owner.

Meeting commitmentsMeeting commitments

TeamworkTeamwork

CollaborationCollaboration

CommunicationCommunication

Extra managersExtra managers

Some managers left over after all were Some managers left over after all were assigned as scrum mastersassigned as scrum masters

Idle hands are the devil’s workshopIdle hands are the devil’s workshop

Managers attending sprint planningManagers attending sprint planning Committing for team membersCommitting for team members

Managers assigning workManagers assigning work

Managers making sure there was no slack Managers making sure there was no slack timetime

Teams with distributed membersTeams with distributed members

We can’t collocate our team We can’t collocate our team Can you simulate it? Yes!Can you simulate it? Yes!

Intercom/immediate chatIntercom/immediate chat TeamspeakTeamspeak VentriloVentrilo Voip systemsVoip systems

Sync up with representatives from each office.Sync up with representatives from each office. Let the team brainstorm!Let the team brainstorm!

Scarce skills needed by many Scarce skills needed by many teamsteams

Cross-trainingCross-training

Share timeShare time

Let the team decideLet the team decide

Don’t let the shared resource work in Don’t let the shared resource work in isolation.isolation. Their knowledge won’t get sharedTheir knowledge won’t get shared No accountability to a teamNo accountability to a team

Relationship between Product Relationship between Product manager and the dev teammanager and the dev team

Shortening the time to release through Shortening the time to release through managing valuemanaging value

Just do itJust do it

The infrastructureThe infrastructure

Accelerators to recoveryAccelerators to recovery

The mother of all problemsThe mother of all problems

Delivering valueDelivering value

Backlog items can be measured in ROIBacklog items can be measured in ROI

Product owners can determine what value Product owners can determine what value they are delivering and deliver highest they are delivering and deliver highest value firstvalue first

Projects ending before the unused Projects ending before the unused features even get delivered… move on to features even get delivered… move on to other projects.other projects.

Relative valuationRelative valuation

1000 ping pong balls1000 ping pong balls

Place them into all the backlog items of Place them into all the backlog items of the project.the project. backlog value effort

item 1 80 13

item 2 75 34

item 3 75 21

item 4 74 13

item 5 70 34

item 6 70 13

item 7 65 20

item 8 60 22

item 9 60 13

… … …

item 32 50 12

item 33 32 21

Earned business valueEarned business value

Just do itJust do it

Time honored traditionTime honored tradition

Tells managers, devs aren’t on board!Tells managers, devs aren’t on board!

Devs cut quality!Devs cut quality!

Speed is improved up to 3x!Speed is improved up to 3x!

Maintenance cost can go upwards of 4x Maintenance cost can go upwards of 4x more.more.

Decrease value of enterprise assetDecrease value of enterprise asset

The coreThe core

The core constraintThe core constraint

How did this happen?How did this happen?

The product owner meeting!The product owner meeting! All the core engineers and product owners in All the core engineers and product owners in

the roomthe room

AcceleratorsAccelerators

How do I move this beast faster!How do I move this beast faster!Remediate the coreRemediate the core

Develop automationDevelop automation Form teams and refactor it aggressivelyForm teams and refactor it aggressively

Strangle the coreStrangle the core As bugs are fixed refactor, clean, and heavily comment codeAs bugs are fixed refactor, clean, and heavily comment code

Rewrite the coreRewrite the core Wee!Wee!

Prop up the coreProp up the core Live with it longer but put automation around it to tell when it Live with it longer but put automation around it to tell when it

breaks.breaks.

Drain the pondDrain the pond Rebuild with new tech and good design with test harnesses.Rebuild with new tech and good design with test harnesses.

How did this happen?How did this happen?

““just do it”just do it”

Bad engineering practicesBad engineering practices

Choice to hit market fastChoice to hit market fast

How can we see when this is How can we see when this is happening?happening?

Trending of slower velocities over time.Trending of slower velocities over time.

googlegoogle

http://steve-yegge.blogspot.com/2006/09/ghttp://steve-yegge.blogspot.com/2006/09/good-agile-bad-agile_27.htmlood-agile-bad-agile_27.html

I don’t know steve but let’s talk about what I don’t know steve but let’s talk about what he points out as ‘signs’ of good agility.he points out as ‘signs’ of good agility.

Signs of good agility in playSigns of good agility in play

No true managers, just team leadsNo true managers, just team leadsPeer reviews influence the teamPeer reviews influence the teamGoals are communicated through an incentive system (I Goals are communicated through an incentive system (I would imagine an enterprise product backlog with would imagine an enterprise product backlog with highest value giving highest incentive for completing)highest value giving highest incentive for completing)Meetings are reduced to 1-3/weekMeetings are reduced to 1-3/weekMeetings only happen in the middle of the day so people Meetings only happen in the middle of the day so people can do what they need to do early or late.can do what they need to do early or late.

It also ensures that late or early comers always get ‘meetings’ It also ensures that late or early comers always get ‘meetings’ that are neededthat are needed

Note they have free meals for everyone so that would help the Note they have free meals for everyone so that would help the meeting during mid-day situations.meeting during mid-day situations.

top related