Friday, February 12, 2016

SAFe Train Engineers: Metrics - Activity Accounting


Copyright: cthoman - 123RF Stock Photo
As a Scaled Agile Framework RTE (Release Train Engineer), one of your primary goals/responsibilities is to measure and track the improvement of the teams and the train.  One of the ways to do this is through Activity Accounting.  Essentially, this is an assessment from product developers stating the percentage of time they spend on each measurable activity (the important ones).  We then want to help the teams turn these numbers from many of the non-value add activities towards the direct value add, like innovation and planning


First, to measure these things.  Work with the teams to figure out what makes sense, but an example to maybe start with is:

  • Defect fixing
  • Code Integration
  • Planning
  • Branching/Merging
  • Manual Testing
  • Creating/maintaining automated tests
  • Innovation
  • Other?


Copyright: 123RF Stock Photo
Have your teams determine how to measure their selected items from a % of total time spent, for example, Integration might be 10%, manual testing 30% and automated test creation might be 15%, etc.  Don’t worry about actual hours, just percentages.  Then, assess that data in the I&A workshops in your planning events.  Which ones stick out as issues?  Which ones would add the most benefit if improved upon (usually reduced)?  How can we shift from non-value add (branching, defect fixing, etc) to value add (planning, innovation, etc)?  Share these numbers, goals, and plans with your leadership to show them where you are now (transparency), and what your targets are and your plan to get there.  Incorporate these improvement efforts into your planning event as objectives and help the business owners understand the business value of these items.


One other thing, be fairly aggressive on these goals.  For example, improving automated testing by 1% is pretty weak, try for a higher number that seems challenging but still reachable.  If you don’t make that number, that’s ok, you will learn much more about what is keeping you from those targets, and these newly discovered impediments can be addressed as new objectives in the next planning event.

If this sounds like a lot of work, it is.  But it’s well worth it.  If you say that you don’t have time to add this to your plate, look closely at what’s on your plate.  This measurement practice is the protein and vegetables you need, a lot of the other stuff is just empty carbs and should be prioritized out or delegated to someone else.  Your true value as an RTE is in helping the train improve, using Activity Accounting is one significant way to do so.

(Much credit for these concepts go to Humble, Molesky and O’Reilly in their excellent book “Lean Enterprise”.  I recommend every train engineer have a well-read copy at hand)



Wednesday, February 10, 2016

Just what is an Agile coach?

Having labeled myself as a coach for the last 10+ years, and having trained other coaches, I’m often asked about just what is an Agile Coach?  Just like in many other industries that have no true certification or accreditation, we see people claiming the title that maybe should not, and others that are coaches without even knowing it.  I thought I’d share my thoughts on what I believe the attributes of a true coach is, and why it’s important to understand these attributes.

Definition

Merriam-Webster defines a coach like this:
  
Merriam-Webster aside, the Lean Agile movement is all about self-organizing teams, de-emphasizing meritocracy and Taylorist style management, and teams and organizations learning and adapting as they go.  So how does a traditional term like Coach, that implies some level of direction and decision making, apply to how we help teams and orgs succeed?  It’s simple, really, we do both.  A true coach will create an environment of self-learning and growth, combined with the safety of just enough guardrails to enhance the chance for success. 
However, there are times that a coach needs to provide strong guidance and direction to help avoid as many of the potential mistakes as possible.  This doesn’t mean shielding the group from experimenting or trying new things, but it does mean to start the group on the best footing possible.  I heard from one of my favorite agile champions several times “we didn’t bring you in here to tell us what we are doing right, we want you to tell us what we are doing wrong”.  There are many occurrences when a coach has to establish guidelines, guardrails, or guide posts to help direct the groups.  If your family is running along a mountain top and are heading towards a cliff you might say “are you sure you want to run that direction?” but there comes a time where you will physically stand in front of them to prevent them from going off the cliff.  The same is true for a coach; we want to help the groups learn, oftentimes from their own mistakes, but there can come a time where you have to stand up and say “no, don’t do that” and help them understand both the dangers they face as well as some alternatives they could try.
Over the years I have developed a set of attributes that I think are critical to have as a coach.  Some have to be there from the start, others can be developed along the journey.

Empathy

Your clients are typically coming from a different perspective than you, and it is critical that you can   When I coach a mid-level manager on standing up to a tyrannical manager that is blocking progress, or a command and control HR department that wants control and stability, I have to remember to view the situation from the eyes of the manager I am working with.  Often times my first reaction is to say “What’s the worst that can happen, they could fire you?”  But then I remind myself that the manager may have built a career in a difficult environment, has just bought a house near the office, or any other number of reasons that they may have the self-preservation instinct kicking in to block them from doing what they know they should do.  Working alongside them, observing (without being observed) in as many of their interactions with the problem situation, and trying to really understand the problem from their perspective is a critical aspect of a good coach, and one I continue to work on myself. 
put yourself in their shoes (to a point) to understand how best to help them.

Courage

My definition of courage is not being fearless, but rather facing a situation in the presence of fear.  As a consultant you are often walking a thin line between continuing on with the client and going to that next engagement, but that should have limited impact on how you face a difficult situations.  As an internal coach you may feel that you have job security and a home for the foreseeable future, but you have to set this aside in favor of what’s right for the company.  Courage is about knowing what’s right and fighting for it, despite the consequences. 

Passion

Monotone just doesn’t cut it.  Lethargy is a buzz kill.  Indifference is the enemy.  Passion in helping others see success, in displaying excitement for the potential, in giving others a kick start from your energy level, all of these are vital to a coach.  This does not mean you carry pom pom’s around and try to get the crowd to do ‘the wave’, but it does mean that you carry yourself with a certain level of energy that others can see.  It means showing your excitement for what they are doing.  It also sometimes (many times) means bringing the energy level up by your example and sometimes by being a part-time cheerleader.
But, passion is more than that.  It is that deep seated desire to see others succeed, in knowing that what you are doing will help them achieve great things, and taking pride in their accomplishments.  It is displaying that level of caring that goes way beyond a billable rate or bi-weekly paycheck.  It truly is demonstrating in everything you do that your true desire is for their success.

Resiliency

Coaching teams is not all fun and games, and can be quite frustrating at times.  When you see the level they could achieve, and yet all the times that they continue to stumble, it can take a lot of wind out of your sails.  A true coach must have a dogged sense of determination and the ability to look past the short term struggles.   A continued outlook of “well, that didn’t work.  What did we learn and what are we trying next?” is vital, and must be clearly visible to the groups you work with.  You must have the ability to always try to draw the positives out of a situation and use what was learned to apply to the next effort.  Yes, some situations can be impossible, there are teams and groups that just don’t want to move forward, but up until that point is reached you need to have the “Never give up” attitude.

Knowing When to Back Away

As I just said, there are times when you need to cut your losses and move on, at least for the interim.  Whether you are a consultant or an internal FTE coach, you will face situations where your customer is not ready to change, not ready to transform.  When to back away is never an easy decision; many clients I have worked with that I initially thought were a lost cause have turned out to be some of the most successful.  But often times an organization needs to struggle more before they can find that sense of urgency that is so critical, and the commitment to change how they think and act.
When working with larger organizations this can open up opportunities to work with other groups that are ready to commit, and then use those groups as ‘bright spots’ for the more reluctant group.  There does come a time when you need to say to a team, organization, or group “I’ll be back when you are ready”.   Good coaches are hard to find, and as such we need to help make sure we are working on the most valuable effort that we can, the one that will produce the most value for the business overall.  

Humility

My favorite phrase about how a good coach will act is “Be the Guide on the Side, and not the Sage on the Stage”.   A good coach will use every viable opportunity to create a learning opportunity and a chance for growth, rather than be seen as the ‘Expert’ or the puppet master pulling the strings.  A true sense of humility and encouraging the teams to take the credit for their success is critical.  I have been called many terms of endearment or ap   A real coach will step back from the limelight and let the group revel in their success and achievements (and then help them realize that they still have a long way to go).  There are many times that at the end of a very successful workshop, training, or other event where the group has made a major breakthrough, I will sit to the side or in a corner and let the team celebrate.  After all, it’s their victory, not mine!  We have to learn how to take our metrics, growth opportunities, and career satisfaction directly from the success of others.
preciation by teams and orgs that I have helped, and that always makes me uncomfortable because I know without the hard work and commitment of the team I would not have accomplished anything.

Quick Wit

Sometimes defined as ‘smart ass’.  There are many times that you can diffuse a tough situation, calm nerves, or just take the edge off a room with a well-placed one liner, joke, or funny comment that can get a chuckle and bring everyone back to reality.   It’s called a ‘sense’ of humor though because we have to have the right timing and content to make it work.  The easy ones are the self-deprecating ones, “if only you guys had a decent coach, you would have seen that issue much earlier” or the like.  Obviously, stay away from anything viewed as a personal attack, but I don’t avoid the cultural or gender issues that many times crop up or are under the surface.  Throwing in a quick quip around the problem can help everyone relax and realize that they need to discuss this openly, especially when it’s a sensitive subject.   We are trying to create an environment of transparency, honesty, and collaboration, we can’t do that without addressing the tough challenges, and very often a little humor can help us get to a place where we can effectively address the issue.

Transparency and Honesty

I put these together because they are hard to separate; how can you be honest without being transparent?  And true transparency is based on honesty as we expose ourselves to the realities of our thoughts, goals, ambitions, etc.   Above all, a coach needs to exemplify the character attributes we are trying to build in our clients, otherwise we just appear as a phony.  We have to be willing to expose our mistakes and not try to appear as perfect.

Hunger to Learn

As in many other things in life, product development is really about knowledge gained.  Acknowledging that we don’t know everything (if we did, we wouldn’t need small batch sizes), and having a never-ending thirst to learn more is critical to be a successful coach.  There is a wealth of knowledge out there in books, blogs, websites, etc. from people that are on the same learning journey but perhaps are farther along.  We need to take advantage of these pieces of knowledge already out there, and add to them with our own experiences and nuggets of wisdom gained.  By making this thirst for knowledge very apparent we can instill the same thirst in our clients, letting them know that it’s ok to admit that you don’t know everything.  

All of these attributes that (I hope) we agree are vitally important to a good lean/agile coach, but does that still sound like the Merriam-Webster definition?  I think it still does in many ways, but the most important difference to me is the approach of “take a back seat as soon as you can”.  Yes, we are really trying to coach ourselves out of a job, since our true success is only when our clients no longer need us.  To me, using, exposing and growing the above attributes is one critical part to attaining this end goal.