Monday, October 28, 2013

Review Constraints before Projecting Desires


A fractal flower pattern
I find Scrum practices to be very self-similar at various scales of granularity. For example the Sprint appears to start with a planning sessions. Yet within the flow of a sprinting team the planning sessions actually starts with a Sprint Review and Process Retrospective and only then do we look into the future. So in the big picture, planning starts with review. Just like in the Scrum Standup meeting - the 3 questions - it starts with a review. What did you get done (past tense)? Next, what will you do (future tense)? And last, what impedes your progress (current tense)?

The Scrum Standup meeting has a flow of past, future, now. When laid out end to end sprints have a similar pattern: Review & Retro (past), followed by Planning (future), followed by sprinting or doing the work (every day, the now). This self similar pattern can be found in many of the Scrum practices. Practices that mature agile teams use to deliver working tested product increments in a few weeks. For example: the Release planning that many teams use to plan multiple sprints at a larger scale than the sprints, ideally starts with a review of the current project state and the path that lead to now. Scrum doesn't state prescriptively that a team must do release planning within the Scrum framework - yet many mature teams do this. And fewer teams do Release Retrospectives - yet the fractal nature of the pattern is very obviously missing, once you have started to see the self replicating patterns of simple rules that lead to complex behaviors.

So if the rule is to review before planning - what is another instance of this pattern?

In sprint planning, a common process flow is to review the velocity from last sprint and to project a future velocity to target for this sprint. The XPers called this the "Yesterday's Weather" pattern.

Woody - Toy StoryI call this capacity planning. And I've just learned that I'm confusing people by using this term. They are typically use to doing individual level capacity planning based upon some type of work hour commitment. Since we pay you for 8 hours, we expect 8 hours of work - myth. I realized today when Woody helped me to see my mistake. This organization has a known process called capacity planning. I suggest they do capacity planning in a team meeting called Sprint Planning. I assume it's understood that we plan at the level of a team, not at the granularity of an individual. This underlying misunderstood assumption is leading to confusion.

Team Capacity planning is much simpler than individual capacity planning. At the appropriate level of granularity it doesn't lead to dysfunctional behaviors. Behaviors like individual members trying to game the system of tracking performance to make themselves look better than another member that they are in competition with for a raise, position, bonus, etc.

So team level capacity planning is a review activity that should take place before the team forecasts a target velocity for Sprint Planning Part A (the What). This is a logical abstraction of reviewing constraints before projecting desires. When teams invert this practice they create a desire bias that will typically lead them to over commit. We all have lots of desire, regardless of our knowledge of constraints, hence the effectiveness of Christmas advertising.

So, please, start a practice of planning with the essential activity of a review.

Monday, October 21, 2013

Retrospectives trump Planning

I was in a CMMI adoption process meeting today and I might have argued that the Scrum Retrospective activity (process step) is more important than the Scrum Planning activity.  Yet, know-one took the bait.  What would be a better piece of bait?

We were discussing what process steps we should define to meet CMMI something something... and the list on the board look like:
  • Sprint planning
  • backlog grooming
  • release planning
  • project planning
  • risk mitigation planning
[note - only one is a Scrum activity]
I was trying to point out that as a subset of Scrum practices this list is interesting, yet not sufficient.

I believe that planning is way less important that the activity of reflection (learning).  I could refer you to some wonderful quotes by US Army Generals about the uselessness of plans.  But let me skip that meme and jump to the assertion that Retrospectives are more important that planning activities.

WHY?

Because with just that one practice, Retrospectives, a team that was doing no planning could derive a practice of planning using the practice of reflection and adaptions (learning).  Therefore Retrospectives trump Planning every time.

I find it interesting that we were focused on the secondary practice.  Does CMMI have a learning practice defined?


Sunday, October 20, 2013

The Usability of James Bond's Gadgets

Ever wonder about the usability testing that all those inventions of Q in the 007 movies must go through?

Well, so did Ben Judy and he presented his finding at the Big(D)esign conference this year.  

Watch the video:  http://www.bondusability.com


Learn Scrum - a video series

How do you want to learn about Agile/Scrum?  This question is a 21st century problem.  Only a few years ago (last century) there was practically one way to learn a new skill or domain of knowledge - study via the printed page, e.g. buy a book.  But today we have alternative ways.  And yes they very well may be better at teaching than books.  Heck, I know a woman that learned English by watching cartoon network in Poland.

So when people want to learn about Scrum (or Agile - they are not the same thing) I typically ask how they would like to learn.  Do you want a book, or a google search term, or perhaps a video?  Most people are responding to the question with a request for a video.

Scrum Training Series (dot-com)
Here's my best resource:  http://scrumtrainingseries.com.  The Scrum Training Series is 6 video cartoons that follow a new team into the daily activities and learning of a newly forming team with a Scrum Trainer (facilitator or coach) by the name of Michael James of CollabNet.  And yes, he wears a cowboy hat in real life also.  The videos are in 6 modules:  Introduction to Scrum; Backlog Refinement Meeting; Sprint Planning Meeting; Daily Scrum Meeting; Sprint Review Meeting; Sprint Retrospective Meeting. There are also quizzes to be taken along the way.  I suggest you watch these with a group and then discuss the topic, compare and contrast what you are currently doing or have done in the past with what the team in the video does to succeed.

Since I've been doing the Agile Coaching gig, I've never seen a successful team that didn't have an engaged and dedicated Product Owner.  This is the first role to get functioning in an Agile transition (adoptions or transformation), and sadly the most overlooked (see: 5 keys to Scrum Adoption).  Why is it often overlooked?  Because it is a leadership role, and most leaders are not willing to change how they approach doing work.  Rather they wish the teams (individual contributors) to change while the leaders are allowed to stay in status quo.  (See Also:  We Don't Hire Product Owners Here  by Rich Mironov).

A great video overview of the Product Owner role in Scrum is by Henrik Kniberg of Crisp's Blog: Agile Product Ownership in a Nutshell.

video
http://blog.crisp.se/2012/10/25/henrikkniberg/agile-product-ownership-in-a-nutshell
Here is Kniberg's explanation of what your manager is doing when they optimize resource utilization rates on your team.  Is this what you really wanted?
The resource utilization trap


And another of Kniberg's videos on Spotify culture and how they have mutated Scrum.




Mike Cohn has entered this space of educational videos with a new (Apr. 2014) offering called Front Row Agile,  a pay for access site.  Currently most courses are labeled "coming soon".

Alan Dayley of Big Visible has a nice example of Release Planning:





Rally Dev has some videos on their Agile Chalk Talk series:

Iteration Planning


User Stories

Story Points

Sizing and Estimation

Agile Teams

Agile Manifesto

Retrospecting Your Iterations

Lean and Agile

Kanban and Scrum


If you find other videos on the web that are useful - please add them in the comments below.  Thanks.