Another Great Article by Mike Caspar

Many of you have heard that Scrum does not solve problems… it just exposes them!  Mike Caspar has written a great in-depth article about why Scrum exposes problems (and why this is good!) with lots of great examples.  I like his concluding remark:

Scrum does not have answers for not following Scrum.

The Skills Matrix and Performance Evaluation on Agile Teams

For a few years now I have been working with managers and executives to help them do Agile-compatible performance evaluations of their staff.  The method that has been most successful is based on a tool that comes from the book Toyota Talent called the “Skills Matrix”.  The basic approach follows these steps:

  1. Baseline the skills within a team for each team member.
  2. Set development goals and action items.
  3. Regularly review performance in relation to the development goals.

Of course, the details matter.  The OpenAgile Center for Learning has published a brief overview of how to use the Skills Matrix and a convenient A0-size pdf that can be used as a template for a team’s Skills Matrix.  I highly recommend using these to get started.  If you are a manager, ask your ScrumMaster or Process Facilitator to arrange and facilitate a team workshop to do the initial population of the Skills Matrix, rather than doing it yourself.  Once that is done you have a baseline and you should take regular digital photos of the team’s Skills Matrix for record-keeping and as a backup in case of disputes.  You should also let the team know that you will be basing performance reviews on how they improve their skills.

The development goals that team members set then should be made such that every team member understands that they have a responsibility to diversify their own skill set and assist other team members in doing this.  As a manager, you should review each team members’ goals for development and provide mentoring support when needed.  At the end of a fixed period of time (quarterly is a reasonable period), you will review each team member’s development relative to the baseline and the goals set.  Of course, normal guidance around performance (or lack thereof) can be given at these regular reviews.

I strongly recommend reading “Drive” by Daniel Pink as an important adjunct to understanding how to do performance reviews for individuals in an Agile environment.  In particular, individual performance reviews should not be tied to bonuses.  If bonuses are used at all, they should be measured and delivered purely at the team level or organization level without measuring individual contribution.

Using planning poker cards to estimate larger amounts of work (projects)

You have been fighting for the right for your SCRUM or OpenAgile team to do the right thing and allow the TEAM to estimate the work for a project instead of having a PM, senior manager or Committee just make something up for team.  Congratulations…

Then you realize.. Oh, Oh.. Now what ?  How am I going to pull this off ?   You will find all kinds of interesting material on the net with complex formulas and calculations.  There are some well written and recognized books about this topic that can help.  *Agile Estimating and Planning by Mike Cohn is a great place to start.

What is important is that the TEAM should estimate the work required to complete a Sprint (or a Project).  The people doing the work, really know best how long their work will take.

Please remember though, estimation is just that, and should not be cast in stone.  The reality is that at this early stage (or even 1/2 way through a project), there are still many unknowns.

I have used the following approach with as many as approximately 20 team members at the same time.  Maybe it will work for you.

The following procedure assumes you already have a team or teams that are familiar with their velocity and capabilities.

Here’s how it works….

At this early stage, their may be some stories, but likely everything is in Epic or Theme sizes.  Perfect.  You don’t need too much detail.

The Product Owner can give a brief overview of the vision.  You might find it useful to have stakeholders there to listen in and answer questions at this early stage.  This will help them to have an idea already of what obstacles they will need to be removing for the team in the future :->

Then, let the team use what they already know….  Planning Poker Cards.  For an overview of the process, here’s a link for a documented procedure from Mountain Goat Software.

Just change the scale of the cards to be 10 times more.  A 2 would become 20, a 20 would become 200.  The team members already know this system.  It will be easy for them to learn.

So, if your usual numbers are  1,2,3,5,8,13,20,40,100, use the same cards for team voting.  The values would just be 10,20,30,50,80,130,200,400,1000..

You will quickly get an overall estimate for each Epic with numbers from the team.  Just add up the numbers to get an overall number and divide it by the overall velocity and you’ll have some idea of how many sprints of work are left.

More importantly, you will also have started the process of communication among the team members and the Product Owner.  The Product Owner will already know which parts of the project may present challenges to assist them in their overall product planning.

Planning Poker Card Values Image

Card Values Transformed

As estimates really are just that, don’t get excited if the numbers aren’t what you deem to be perfect.  You will have an idea based on existing velocity of the “broad estimate” for the project.

Nothing fancy, works quickly, and gets everybody thinking about the big picture.

NO, it is NOT perfect.  That’s not the idea.  Spending too much time on this won’t necessarily give you more accurate results.  I find that letting everyone know it’s not perfect, removes a lot of pressure and keeps things moving forward.  People will STILL do what’s right and give their opinions on issues that really matter to them. Don’t worry about that ! :->

The hardest part is to keep things moving forward, especially with a larger group.  Be prepared for this or this will take far too long.

You may find that the numbers are Not what you expected and may be higher than you had hoped for.  Think about it this way.  If today, the team is telling you based on what they CURRENTLY know that the project will take 6 months to complete, what is the point of saying, NO, the exact amount of scope will get done in 3 months? As agilists, we know better.  Besides, at this point in time, we really don’t know what the work actually is yet.

Try and avoid having only developers, or only a certain group, and please don’t exclude testers or BA’s.  The idea here is that since you are working cross-functionally, you should be getting a cross-functional vote. Depending on your group size, you may have a hard time getting your WHOLE team involved.  Just resist the temptation to only have a few people.  You’re really missing the benefit.

This process has also worked for me half way through a very large project for a new team (it was not possible to do this at the beginning).   I was fortunate to be in a company that had a great attitude towards the results and used the information obtained to re-align their corporate objectives based on the teams’ input about how long epics would take.  That was a great experience and allowed for a very successful project delivery!

Listen to what the team is telling you!  They have all given their input this way.  There is no reason to think they are wrong about the their capabilities or the capabilities of the company to keep up with them.  The team will also automatically factor in the environment they work in and the corporate development culture.

I’ve successfully used this technique with a group as large as approximately 20 people from a variety of teams working on the same project in the same room with a Product Owner and 2 Stakeholders.

That same team also estimated approximately 6 months worth of epics in just under 2 hours. Longer than that would not likely have produced better results.

The goal isn’t to create procedures here, but to find a way to allow the team to estimate work instead of schedules being handed down to them.  More importantly, it will start the goal of communication between the Team and the Product Owner.

Maybe this approach will work for your team.  If you try this, please let me know how it worked out for you either way.

Mike Caspar

References:

Mike Caspar – Mike Caspar’s Blog

OpenAgile – http://www.openagile.com

Scrum – http://www.scrumalliance.org

Agile Estimating and Planning by Mike Cohn

*Agile Estimating and Planning by Mike Cohn


The Pursuit of True Agility and Jazz Music

A manager I am working with recently sent me this link. I have seen this topic discussed before, but never so nicely worded. Thanks Charles.

It is a discussion about how Jazz music is different than Classical music and how that knowledge could help to understand Agility.

Great post. I think we’ll hang this on the wall somewhere in the team room.

Read more

Scrum Master, Process Facilitator, Growth Facilitator. Managers or Leaders or Neither?

“I now can see why Corporations have such a hard time identifying the Scrum Master in their organizations. Scrum Masters basically don’t fit either category, yet most corporate hiring is done based on hiring of “leaders” and “managers”.”

For the complete text click here

Good Explanation of INVEST for User Stories

Mike Caspar, a fellow agile coach,  just forwarded me this YouTube video to Bill Wake talking about INVEST for User Stories.  I worked briefly with Bill back in 2004/2005 at Capital One where he did some excellent coaching.  I strongly recommend checking out the video!

Agile Jobs in Beautiful Saskatoon!

From time to time I am happy to list positions that are available in organizations that are becoming agile or already are agile. For what it’s worth, this position was described verbally to me as being much like a Scrum Product Owner. Here is the position information:

Project Manager at zu
Closing date: Monday, May 30, 2011

Our new Agile PM will manage full life cycle website/application development projects using the Agile methodology, work closely with our strategists, designers and development team and other stakeholders to manage requirements, scope, milestones, timelines and budget.

As an Agile Project Manager at zu, you enjoy working with other talented people and succeed when we deliver a project worthy of being called “zu-made” to a client. You live to under promise and over deliver.

You have a passion for Agile Software Development. You are eager to work with and share your experiences with a team transitioning to Agile. The thought of finding new ways to adapt Agile to an existing team excites you.

As a team leader, you inject enthusiasm into the combined zu-client team, adding transparency and candidness to communication in all directions. Using your natural ability to develop rapport with all types of people, you liaise regularly with the client and team, keeping progress on track and delivering on expectations.

You are excited by the idea of creating things that have never existed before, that learning and teaching are everyday occurrences, you don’t mind dressing funny from time to time, or bringing a dish to the potluck.

If you have the required experience, pride yourself on being extremely well organized, have a magnetic personality, sense of humor and are eager to be a part of an evolving company, then what are you waiting for? Drop us a line!

Background

Post secondary education in business or technical field
Minimum three years related work experience
Knowledge and experience with Agile software development, processes and methodology
Ability to work effectively on concurrent, multiple tasks and projects
Ability to effectively manage priorities in an ever-changing environment
Outstanding leadership and teamwork skills
Clear and concise documentation skills; you can write mean user story
Strong verbal and written communication skills

Responsibilities

Document, learn and support all aspects of projects: scope, risk, schedule, budget, quality and communication
Manage client expectations and co-ordinate and deliver progress updates to ensure the successful delivery of projects on time and on budget
Manage all project related requests with the client
Ability to guide and direct production teams to keep them on budget and schedule while continually inspiring them to innovate and provide the best solutions for our clients
Work with development teams on a daily basis to clarify requirements and to provide feedback
Facilitate developing user stories based on requirements
Prioritize and prepare product backlog and facilitate estimation meetings for strategists, designers and developers
Communicate project status with stakeholders and gather feedback for review and implementation

For more information about zu, head to our website: www.zu.com/live/careers.

Excellent Selection of Agile Requirements and Testing Practices

I am currently a reviewer of proposals in the “Agile Boot Camp” stage of the Agile 2011 conference.  In doing these reviews, I have come across the work of Jennitta Andrea.  She has a page with links to a bunch of articles that she has written about Agile Requirements and Testing.  At this time, I’ve only read one of them “Brushing Up On Functional Test Effectiveness” – and I thought it was great.  So I thought I would point people  to the rest of the articles as well!