PM Connect - Agile Workshop

28
Patrick Masson Chief Technology Officer University of Massachusetts Office of the President, UMassOnline p e r f e c t i s t h e e n e m y o f g o o d a g I l e i t e r a t i o n 0 Perfect Is The Enemy of Good by Patrick Masson is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported License.

description

June 2013

Transcript of PM Connect - Agile Workshop

Page 1: PM Connect - Agile Workshop

Patrick MassonChief Technology Officer

University of MassachusettsOffice of the President, UMassOnline

p e r f e c t i s t h e e n e m y o f g o o d

a g I l e i t e r a t i o n 0

Perfect Is The Enemy of Good by Patrick Masson is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported License.

Page 2: PM Connect - Agile Workshop

Why Agile?

...need for an alternativeto documentation driven,heavyweight softwaredevelopment processes...

Mike BeedleMike BeedleArie van BennekumArie van Bennekum

Alistair CockburnAlistair CockburnWard CunninghamWard Cunningham

Martin FowlerMartin FowlerJim HighsmithJim HighsmithAndrew HuntAndrew HuntRon JeffriesRon Jeffries

Jon KernJon KernBrian MarickBrian Marick

Robert C. MartinRobert C. MartinKen SchwaberKen SchwaberJeff SutherlandJeff SutherlandDave ThomasDave Thomas

The Agile Manifesto, 2001The Agile Manifesto, 2001

Page 3: PM Connect - Agile Workshop

WaterfallAgile

Jim Highsmith, Agile Project Management, 2004

Ultimate customer value is delivered at the point-of-sale, not the point-of-plan.

Page 4: PM Connect - Agile Workshop

Agile Manifesto

We are uncovering better ways of developingsoftware by doing it and helping others do it.Through this work we have come to value:

Individuals and interactions over processes and toolsWorking software over comprehensive documentation

Customer collaboration over contract negotiationResponding to change over following a plan

That is, while there is value in the items onthe right, we value the items on the left more.

Page 5: PM Connect - Agile Workshop

Agile Manifesto

Blah blah blabalah blah blah blah bablahblahblahblah blah blah blah blah blah blah blah blah.

Blah blah blah blah blah blah blah blah:

Individuals and interactions over processes and toolsWorking software over comprehensive documentationBlahblah babalhbablablah blah blabalh blablahblah

Blahblahblah blah blah blah blahblah blah blah

Blah blah, blah blah blah blah blah blah blah blahblah blah, blah blah blah blah blah blah blah blah.

I could basically reduce the manifesto to the first 2 values…

Alistair Cockburn, alistair.cockburn.us

Page 6: PM Connect - Agile Workshop

...the ability to both create and respond to change in ...the ability to both create and respond to change in order to profit in a turbulent business environment.order to profit in a turbulent business environment.

Jim Highsmith,Jim Highsmith,Agile Project Management, 2002Agile Project Management, 2002XP Investimentos

A g i l e i s . . .

Page 7: PM Connect - Agile Workshop

...an...an iterative and incrementaliterative and incremental (evolutionary) approach which is (evolutionary) approach which is performed in a performed in a highly collaborativehighly collaborative manner by manner by self-organizing teamsself-organizing teams with with ""just enoughjust enough"" ceremony that produces high quality... ceremony that produces high quality...

Scot W. Amber,Scot W. Amber,Agile Modeling, 2007Agile Modeling, 2007

A g i l e i s . . .

XP Investimentos

Page 8: PM Connect - Agile Workshop

A g i l e i s . . .close collaborationclose collaboration between the programmer team and business between the programmer team and business experts; face-to-face communication (as more efficient than written experts; face-to-face communication (as more efficient than written documentation); documentation); frequent deliveryfrequent delivery of new deployable business value; of new deployable business value; tight, tight, self-organizing teamsself-organizing teams; and ways to craft the code and the team ; and ways to craft the code and the team such that the inevitable requirements churn was not a crisis.such that the inevitable requirements churn was not a crisis.

Agile Alliance, 2001Agile Alliance, 2001XP Investimentos

Page 9: PM Connect - Agile Workshop

It is not possibleto exactly defineAgile Methods.

They They promote practices and principlespromote practices and principles that reflect an that reflect an agile sensibility, lightness, communication, self-directed agile sensibility, lightness, communication, self-directed teams, [actions] over documenting, and more.teams, [actions] over documenting, and more.

Craig Larman,Craig Larman,Agile & Iterative Development, 2004Agile & Iterative Development, 2004

XP Investimentos

Page 10: PM Connect - Agile Workshop

Planning vs. Principles, or, “front-loaded” to meet organizational vision/requirements versus “just-in-time” that recognizes continuous change.

Processes vs. Practices, or, conformity, consistency enables continuity, predictability versus awareness, acumen enables change, adaptation.

www.youtube.com/watch?v=7xMDIcsUMmA

Page 11: PM Connect - Agile Workshop

Project Management Process(I'm not picking on anyone)

● PMI's five process groups:

● Initiating

● Planning

● Executing

● Monitoring & Controlling

● Closing

● PMI's nine knowledge areas:

● Project Integration Management

● Project Scope Management

● Project Time Management

● Project Cost Management

● Project Quality Management

● Project Human Resources Management

● Project Communication Management

● Project Risk Management

● Project Procurement Management

Page 12: PM Connect - Agile Workshop

AgilePrinciplesPractices

Our highest priority is to satisfy the customer through early and continuous delivery of valuable software: minimal viable product.

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

Deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter timescale: incremental and iterative development.

Business people and developers must work together daily throughout the project: frequent testing.

Build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done: bottom-up.

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

Page 13: PM Connect - Agile Workshop

AgilePrinciplesPractices

Working software is the primary measure of progress:evidence based.

Agile processes promote sustainable development. The sponsors, developers, and users should be able to maintain a constant pace indefinitely: no heroes.

Continuous attention to excellence and good design enhances agility: honesty and maturity.

Simplicity--the art of maximizing the amount of work not done--is essential: just enough.

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

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

Page 14: PM Connect - Agile Workshop

a f e w c o n c e p t u a l e x a m p l e s...

Page 15: PM Connect - Agile Workshop

Minimally Viable Product

As you can see, my young apprentice, your friends have failed.

Now witness the firepower of this fully ARMED and OPERATIONAL battle station!

A A Minimum Viable ProductMinimum Viable Product has just those features has just those features that allow the product to be deployed, and no more.that allow the product to be deployed, and no more.

Supreme Chancellor Palpatine,a.k.a. Darth Sidious

Page 16: PM Connect - Agile Workshop

vsJustEnough

JustIn CaseOffice v Wikipedia

Once an artifact fulfills its intended purpose then any more investment in it is simply busy work. The secret is to learn how to detect when you've reached the point of something being just barely good enough and then to stop working on it.

Scott Ambler, Agile Modeling, 2007

Page 17: PM Connect - Agile Workshop

Agile designs are emergent, they’re not defined up front. Your overall system design will emerge over time, evolving to fulfill new requirements and take advantage of new technologies as appropriate.

Although you will often do some initial architectural modeling at the very beginning of a project during 'iteration 0' this will be just enough to get your team going.

Scott Ambler, Agile Modeling, 2007

EMERGENCE

Page 18: PM Connect - Agile Workshop

At the University of California at Irvine,

when they first built its campus, they just planted grass.

Page 19: PM Connect - Agile Workshop

Then they waited a year and looked at where people had made paths in the grass...

Page 20: PM Connect - Agile Workshop

...and built the side walks there.

Larry Wall, Creator of Perl

Page 21: PM Connect - Agile Workshop
Page 22: PM Connect - Agile Workshop

&Incremental Iterative Development

“The Increment [i.e. “sprint” in Scrum] adds completely new features, based on user stories, hence expanding the scope of the functionality offered – that makes it Incremental.

But each Increment is also likely to refine existing functionality – that makes it iterative.

Steven Thomas,Revisiting the Iterative Incremental Mona Lisa, 2012

Page 23: PM Connect - Agile Workshop

There is hardly any one settling on the prairies who could notproduce lumber sufficient to build a small “shanty,” but is deterred

from doing so, for, he says, “I will be able in a few years”--rememberthe corn-growing and pork-producing farmer of the West accumulates

fast when once started--”to build me a good, respectable house,and I hate to waste material that will be nearly useless then.”

[Shown] is a simple cottage of only one room, which can be erected at a trifling expense, even on the prairies where lumber is

high and scarce, and must be hauled a long distance.

Incremental

IterativeOur Homes and Their Adornments, 1883

Page 24: PM Connect - Agile Workshop

Now we will suppose our humble farmer, at the end of one or twoyears, has acquired means to enlarge his humble domicile. This hecan do, which consists of his first erection with a lean-to of one bedroom, a pantry and a wood-shed. [This] will make a very convenient

house for a small family.

Again we will suppose that, “the lapse of years has brought roundthe time” when our friend wants to again enlarge his house. If he has

followed our former plans, he can do so as shown. This consists of an upright part added to his former erections.

Incremental

IterativeOur Homes and Their Adornments, 1883

Page 25: PM Connect - Agile Workshop

Incremental: in which the various parts of the system are developed at different times or rates and integrated as they are completed.

Iterative: in which time is set aside to revise and improve parts of the system Allistair Cockburn, Incremental versus Iterative Development, 2007

Page 26: PM Connect - Agile Workshop

Incremental: in which the various parts of the system are developed at different times or rates and integrated as they are completed.

Iterative: in which time is set aside to revise and improve parts of the system Allistair Cockburn, Incremental versus Iterative Development, 2007

Page 27: PM Connect - Agile Workshop

Self-organization

Self-organized: groups form through professional or personal affinity;

Self-organizing: roles within groups are determined by the members;

Self Directed: activities undertaken are defined by the participants.

Jurgen Appelo, Management 3.0, 2011

Page 28: PM Connect - Agile Workshop

Recommended Resources(In Order of Appearance)

Thank YouPatrick Masson

[email protected]

Agile Project ManagementJames A. Highsmith, Addison Wesley Professional, 2010

Agile ModelingBy Scott Ambler, John Wiley & Sons. 2002

Agile and Iterative DevelopmentBy Craig Larman. Addison-Wesley Professional, 2003

Management 3.0By Jurgen Appelo, Addison-Wesley Professional 2011