Slide 1

Slide 1 text

Holger Schauer 2013-05-15

Slide 2

Slide 2 text

Traditional project management  Phase-based model  Plan (scope, time and costs)  Implement  Finalize (tests, deploy)  You can never swim up the waterfall again  JLLT model is often more or less waterfall (“just like last time” © Judith Andreesen)

Slide 3

Slide 3 text

Problems with traditional PM Golden triangle (scope, time and costs) is never met … because of external reasons Scope changes over the project … because of need to adapt Implemented plan doesn‘t fit needs … because the world moved on Requires lots of artifacts … which do not add value Command and control approach … is hindering positive collaboration

Slide 4

Slide 4 text

Project noise level Simple Complex Anarchy Technology Requirements Far from Agreement Close to Agreement Close to Certainty Far from Certainty Source: Strategic Management and Organizational Dynamics by Ralph Stacey in Agile Software Development with Scrum by Ken Schwaber and Mike Beedle, Taken from “Redistributable Intro to Scrum”, Mountain Goat Software

Slide 5

Slide 5 text

Hob and Nob: a reference problem Geach’s puzzle: “Hob thinks a witch has blighted Bob's mare, and Nob wonders whether she killed Cob's sow.” Hob and Nob may not even recognize that there is a problem. Wait … there are no witches, they are mythical creatures. Take away: resolving the reference problem requires communication in order to come to a common understanding.

Slide 6

Slide 6 text

No content

Slide 7

Slide 7 text

Lean principles 2. Map the value stream 3. Create flow 4. Establish pull 5. Seek perfection 1. Identify value http://www.lean.org/WhatsLean/Principles.cfm … for customers … and eliminate waste … create value in tight sequence … (not only) for customers … continuously

Slide 8

Slide 8 text

Lean software development  Optimize the whole  Focus on customers  Energize workers  Eliminate waste  Learn first  Deliver fast  Build quality in  Keep getting better  Defer commitment by Mary and Tom Poppendieck cf. http://www.poppendieck.com/

Slide 9

Slide 9 text

Kanban: six core practices  Visualize  Limit WIP  Manage flow  Make policies explicit  Implement feedback loops  Improve collaboratively, evolve experimentally by David J. Anderson, taken from Wikipedia

Slide 10

Slide 10 text

Summary  Lean development addresses problems of traditional PM problems by  focusing on customer needs  visualizing current state of affairs  avoiding waste  continuous learning

Slide 11

Slide 11 text

Agile manifesto Process and tools Individuals and interactions over Following a plan Responding to change over Comprehensive documentation Working software over Contract negotiation Customer collaboration over cf. http://www.agilemanifesto.org/

Slide 12

Slide 12 text

Agile principles  Satisfy the customer  Welcome changing requirements  Deliver working software frequently  Business and developers work together daily  Build projects around motivated individuals  Convey information via face-to-face conversation  Working software is the primary measure of progress  Promote sustainable development  Continuous attention to technical excellence  Simplicity is essential  Emergent design and architecture from self-organizing teams  Team reflects on how to become more effective, tunes and adjusts Condensed from http://www.agilemanifesto.org/principles.html

Slide 13

Slide 13 text

Sequential vs. overlapping development Source: “The New New Product Development Game” by Takeuchi and Nonaka. Harvard Business Review, January 1986, taken from MountainGoat Software ‘Redistributable Intro to Scrum’, http://www.mountaingoatsoftware.com/uploads/presentations/English-Redistributable-Intro-Scrum.ppt Rather than doing all of one thing at a time... … agile teams do a little of everything all the time Requirements Design Code Test

Slide 14

Slide 14 text

Scrum framework •Product owner •Scrum Master •Team Roles •Sprint planning •Sprint review •Sprint retrospective •Daily scrum meeting Ceremonies •Product backlog •Sprint backlog •Burndown charts Artifacts

Slide 15

Slide 15 text

Scrum process

Slide 16

Slide 16 text

Continuous feedback cycle  Team communicates in daily meetings about current sprint issues  Product owner and team work on the plan / backlog for next iteration(s)  Review of the built results at the end of a sprint provides feedback about quality and velocity and influences future plan  Development team reflects after each sprint to improve

Slide 17

Slide 17 text

Big bang vs. incremental results Plan Design Implement Verify

Slide 18

Slide 18 text

Accounting for the cone of uncertainty time uncertainty and required level of detail Current and next iteration

Slide 19

Slide 19 text

Definitions of …  Done (for current / last iteration)  User level acceptance tests pass  Development quality goals are met  Design requirements are met  …  Ready (for next / current iteration)  “INVEST” in “SMART” requirements / specifications  Required architecture is understood  Required technology is mastered  Design is ready  ….

Slide 20

Slide 20 text

INVEST in SMART  I – Independent  N – Negotiable  V – Valuable  E – Estimable  S – Small  T – Testable  S – Specific  M – Measurable  A – Achievable  R – Relevant  T – Time-boxed

Slide 21

Slide 21 text

Governance: Scaled agile framework • Business epics, architectural epics, investment themes, … Portfolio • Roadmap, product management, agile release train, features, … Program • Scrum, product owners, development teams, iterations, stories, … Team cf. Scaled Agile Framework, D. Leffingwell http://scaledagileframework.com/

Slide 22

Slide 22 text

The agile release train from SAFe  incremental releases of value in a value stream  Potentially shippable increments (PSI) vs. Releases  Development occurs with a standard cadence  Dates are fixed – quality is fixed – scope is variable  Release Planning Meeting to align to a common, committed set of objectives for next PSI timebox. cf. Scaled Agile Framework, D. Leffingwell http://scaledagileframework.com/agile-release-train/

Slide 23

Slide 23 text

Summary  Agile methods build on top of lean principles  Agile addresses problems of traditional PM problems by  focusing on customer needs  continuous learning  embracing changes  time boxing in iterations  minimizing overhead

Slide 24

Slide 24 text

Picture sources  https://en.wikipedia.org/wiki/File:Triangle_instrument.png (public domain)  https://en.wikipedia.org/wiki/File:Goodwood2007-121_The_Blue_Flame.jpg (by Troxx, license Public domain)  http://the-flick.com/wordpress/2012/12/a-definitive-guide-to-christmas-pressies/ (Creative Commons from Hades2k’s Flickr photostream, original URL missing)  https://de.wikipedia.org/wiki/Datei:Makulatur.jpg (by Monster 4711, license CC0 1.0)  https://en.wikipedia.org/wiki/File:Danny_O%27Connor_fighting_House_of_Blues.jpg (by Tirrnanogirl license CC-SA 3.0)  https://de.wikipedia.org/wiki/Datei:Mannequin_with_jeans.jpg (by Lion Hirth, GFDL 1.2)  http://coliandre.deviantart.com/art/Two-Witches-141014676 (by Xavier Collette, CC NC-3.0)  http://ecx.images-amazon.com/images/I/41d0WXfsICL._SS500_.jpg Poppendiecks ‘LLSD-book cover, certainly non- free  http://www.mountaingoatsoftware.com/scrum/a-reusable-scrum-presentation (acknowledge source, but use presentation widely)  https://en.wikipedia.org/wiki/File:Simple-kanban-board-.jpg (Jeff.lasovski, license CC-SA 3.0)  http://www.mountaingoatsoftware.com/uploads/blog/ScrumSmallLabelled.png https://secure.flickr.com/photos/yeowatzup/149186300/ Railyway, cc by 2.0 , yeowatzup  https://upload.wikimedia.org/wikibooks/en/5/53/Yellowstickies.JPG