dpr306. process and tools individuals and interactions over following a plan responding to change...

39
The Agile Buffet Tweet and win: #dpr306 Joel Semeniuk Executive VP Telerik @joel_semeniuk DPR306 Stephen Forte CSO Telerik @worksonmypc

Upload: delilah-chandler

Post on 03-Jan-2016

215 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: DPR306. Process and tools Individuals and interactions over Following a plan Responding to change over Source:  Comprehensive

The Agile BuffetTweet and win: #dpr306

Joel SemeniukExecutive VPTelerik@joel_semeniuk

DPR306

Stephen ForteCSOTelerik@worksonmypc

Page 2: DPR306. Process and tools Individuals and interactions over Following a plan Responding to change over Source:  Comprehensive

About Joel and Steve

Joel Semeniuk@joel_semeniuk

Microsoft Regional DirectorCertified Scrum MasterMicrosoft MVP, ALMTelerik Executive VP

Steve Forte@worksonmypc

Microsoft Regional DirectorCertified Scrum MasterMicrosoft MVP, SQL AzureTelerik CSO

Page 3: DPR306. Process and tools Individuals and interactions over Following a plan Responding to change over Source:  Comprehensive

Is It Ok…?

Is It Ok To Change Scrum?Can you combine practices and still be Agile?Can you be Agile if you don’t to TDD?

Page 4: DPR306. Process and tools Individuals and interactions over Following a plan Responding to change over Source:  Comprehensive

Agenda

Back to the basics: Agile ManifestoInfluential Agile Methodologies Agile Scenarios –Eating from the Buffet Table

Page 5: DPR306. Process and tools Individuals and interactions over Following a plan Responding to change over Source:  Comprehensive

The Agile Manifesto–a statement of values

Process and toolsProcess and toolsIndividuals and interactions

Individuals and interactions

over

Following a planFollowing a planResponding to changeResponding to change over

Source: www.agilemanifesto.org

Comprehensive documentation

Comprehensive documentationWorking softwareWorking software over

Contract negotiationContract negotiationCustomer collaborationCustomer collaboration over

Page 6: DPR306. Process and tools Individuals and interactions over Following a plan Responding to change over Source:  Comprehensive

Back to the Basics

“Agile” is about “values” not “rules” and rigid adherence to a processAgile is about embracing change

Page 7: DPR306. Process and tools Individuals and interactions over Following a plan Responding to change over Source:  Comprehensive

12 Principles of Agile

Early and continuous delivery of softwareWelcome changing requirementsDeliver working software frequentlyBusiness people and developers must work together daily Build projects around motivated individualsMost effective method of communication is face-to-face Working software is the primary measure of progressAgile processes promote sustainable developmentContinuous attention to technical excellence Simplicity — is essentialSelf-organizing teamsReflect on how to become more effective

Page 8: DPR306. Process and tools Individuals and interactions over Following a plan Responding to change over Source:  Comprehensive

Agenda

Back to the basics: Agile ManifestoInfluential Agile Methodologies Agile Scenarios –Eating from the Buffet Table

Page 9: DPR306. Process and tools Individuals and interactions over Following a plan Responding to change over Source:  Comprehensive

Influential Agile Methodologies

XP (The Past)Scrum (The Present) Kanban (The Future)

Page 10: DPR306. Process and tools Individuals and interactions over Following a plan Responding to change over Source:  Comprehensive

Extreme Programming (aka XP)

Team of 5-10 programmers Single locationOn Site CustomerIterative delivery of releasable software“Requirements” are specified as user storiesPair ProgrammingStrict Code StandardsUnit TestingEmergent Requirements, architecture, and design

Page 11: DPR306. Process and tools Individuals and interactions over Following a plan Responding to change over Source:  Comprehensive

Core Practices of XP

Sit togetherWhole teamInformative workspaceEnergized workPair ProgrammingStoriesWeekly cyclesQuarterly CyclesSlackTen-Minute BuildContinuous IntegrationTest-First ProgrammingIncremental Design

Page 12: DPR306. Process and tools Individuals and interactions over Following a plan Responding to change over Source:  Comprehensive

Prince 2

Great for governance Works well w/ Agile Modelshttp://www.prince2.com/

Page 13: DPR306. Process and tools Individuals and interactions over Following a plan Responding to change over Source:  Comprehensive

Scrum

An Agile methodology that stresses communicationTime boxed (sprints) development cyclesBy design is a revolutionary processRigid by natureMost popular methodology today

Page 14: DPR306. Process and tools Individuals and interactions over Following a plan Responding to change over Source:  Comprehensive

Scrum

Page 15: DPR306. Process and tools Individuals and interactions over Following a plan Responding to change over Source:  Comprehensive

Core Practices of Scrum

Cross functional and collocated teams of 8 or lessDevelop in sprints of fixed durationEach sprint delivers incremental, tested functionality to the userWork within the sprint is fixedThe scrum master mentors and manages the self-organizing and self-managing teamsAll work to be done is carried from the Product BacklogThe product owner manages the product backlogA daily 15 min stand-up meeting (Daily scrum) is primary communication methodRequirements, architecture, and design emerge over timeEmpirical Process Control

Page 16: DPR306. Process and tools Individuals and interactions over Following a plan Responding to change over Source:  Comprehensive

Kanban

Japanese for “signal card”From the Toyoda production system (Lean)

Define a work flow and visualize itOrganize a queueLimit work in progress (WIP) for each queue

Allows you to constantly evaluate process improvements

Allow work to flow through the system in a controlled way (not iterative) No sprints!

Evolutionary by designChange is built into the model

Communication is about progress (not merely results)Eliminate Daily Scrum

Page 17: DPR306. Process and tools Individuals and interactions over Following a plan Responding to change over Source:  Comprehensive

Kanban

Page 18: DPR306. Process and tools Individuals and interactions over Following a plan Responding to change over Source:  Comprehensive

Core Practices of Kanban

Define and visualize the workflowLimit Work-in-progressMeasure and Manage FlowMake Process Policies ExplicitUse Models to Suggest Improvement

For more info: http://finance.groups.yahoo.com/group/kanbandev/message/9261

Page 19: DPR306. Process and tools Individuals and interactions over Following a plan Responding to change over Source:  Comprehensive

Agenda

Back to the basics: Agile ManifestoInfluential Agile Methodologies Agile Scenarios –Eating from the Buffet Table

Page 20: DPR306. Process and tools Individuals and interactions over Following a plan Responding to change over Source:  Comprehensive

Agile is Growing

Page 21: DPR306. Process and tools Individuals and interactions over Following a plan Responding to change over Source:  Comprehensive

Mixed Methods are the Norm

Mix of Agile Methods36%

Mix Agile and Non-Agile31%

No Agile At All2%

Adhere to Single

Agile32%

Source: Forrester/Dr. Dobb’s Global Developer Technographics Survey, Q3 2009

Page 22: DPR306. Process and tools Individuals and interactions over Following a plan Responding to change over Source:  Comprehensive

Agile is like a buffet table

It is ok to mix and match from different agile methodologies Just make sure your features are compatible Just make sure you eat healthy ;)

http://www.agileproductdesign.com/blog/2009/kanban_over_simplified.html

Page 23: DPR306. Process and tools Individuals and interactions over Following a plan Responding to change over Source:  Comprehensive

Eating from the buffet table

Designing an agile methodology

Page 24: DPR306. Process and tools Individuals and interactions over Following a plan Responding to change over Source:  Comprehensive

Scenario 1 – New Distributed Project

Characteristics Remote team in different time zoneGreenfield projectContractors

Page 25: DPR306. Process and tools Individuals and interactions over Following a plan Responding to change over Source:  Comprehensive

Core Practices for Scenario 1

From XPUser StoriesPair ProgrammingContinuous Integration

From ScrumUse Sprints of fixed durationDaily (virtual) Scrum meeting

From KanbanMake Process Policies ExplicitUse Models to Suggest ImprovementLimit work in progress

Page 26: DPR306. Process and tools Individuals and interactions over Following a plan Responding to change over Source:  Comprehensive

Scenario 2 - Maintenance

CharacteristicsReactiveContinual evaluationContinual deliveryMix of New Requirements and Bugs

Page 27: DPR306. Process and tools Individuals and interactions over Following a plan Responding to change over Source:  Comprehensive

Core Practices for Scenario 2

From XPExtensive use of Unit TestingRefactoring and Emergent DesignContinuous IntegrationSit togetherWhole teamInformative workspaceEnergized work

From ScrumDaily StandupSprints for Improvement Cadences and Reviews

From KanbanLimit work in progressContinuous DeliveryExplicit Gates

Page 28: DPR306. Process and tools Individuals and interactions over Following a plan Responding to change over Source:  Comprehensive

Scenario 3 – Managed Outsource

CharacteristicsCustomer / Supplier Cost and Budget CentricSupplier takes responsibility

Page 29: DPR306. Process and tools Individuals and interactions over Following a plan Responding to change over Source:  Comprehensive

Core Practices for Scenario 3

From XPExtensive use of Unit TestingRefactoring and Emergent DesignContinuous IntegrationIncremental DesignSit togetherWhole teamInformative workspace

From ScrumDaily StandupSprint PlanningSprints and Sprint ReviewsCustomer is Product OwnerProduct Owner Reprioritizes against value

From KanbanExplicit Gates

Page 30: DPR306. Process and tools Individuals and interactions over Following a plan Responding to change over Source:  Comprehensive

What about the others?

Can you use TDD and use Scrum?Can you use BDD and use Kanban?

Page 31: DPR306. Process and tools Individuals and interactions over Following a plan Responding to change over Source:  Comprehensive

Certain Practices Apply Often

Unit TestingAutomated BuildsIncremental and Continual ReleasesEmergent Requirements, architecture, and designDaily rhythm and standupsEngaged Product OwnersBacklogs Managed by Product Owners

Page 32: DPR306. Process and tools Individuals and interactions over Following a plan Responding to change over Source:  Comprehensive

Start with ScrumPull in Practices via Retrospectives

Page 33: DPR306. Process and tools Individuals and interactions over Following a plan Responding to change over Source:  Comprehensive

Questions?

Page 34: DPR306. Process and tools Individuals and interactions over Following a plan Responding to change over Source:  Comprehensive

Recommended Resources

Tom DeMarcoPeoplewareSlack

Fred BrooksThe Mythical Man Month

Parkinson's Law

Page 35: DPR306. Process and tools Individuals and interactions over Following a plan Responding to change over Source:  Comprehensive

DPR Track Resources

http://www.microsoft.com/visualstudio http://www.microsoft.com/visualstudio/en-us/lightswitch http://www.microsoft.com/expression/http://blogs.msdn.com/b/somasegar/http://blogs.msdn.com/b/bharry/http://www.microsoft.com/sqlserver/en/us/default.aspxhttp://www.facebook.com/visualstudio

Page 36: DPR306. Process and tools Individuals and interactions over Following a plan Responding to change over Source:  Comprehensive

Resources

www.microsoft.com/teched

Sessions On-Demand & Community Microsoft Certification & Training Resources

Resources for IT Professionals Resources for Developers

www.microsoft.com/learning

http://microsoft.com/technet http://microsoft.com/msdn

Learning

http://northamerica.msteched.com

Connect. Share. Discuss.

Page 37: DPR306. Process and tools Individuals and interactions over Following a plan Responding to change over Source:  Comprehensive

Complete an evaluation on CommNet and enter to win!

Page 38: DPR306. Process and tools Individuals and interactions over Following a plan Responding to change over Source:  Comprehensive

Scan the Tag to evaluate this session now on myTech•Ed Mobile

Page 39: DPR306. Process and tools Individuals and interactions over Following a plan Responding to change over Source:  Comprehensive