Team Metrics

“The past cannot be changed, forgotten, edited or erased. It can only be accepted.” – Unknown

Let’s Define some metrics!

I had a conversation with a relatively new scrum master recently who was working to help establish some base level team metrics for their organization. They had made the journey to scrum from the role of a project manager and seemed to really transition the mindset of driving to create an environment of trust and transparency within a team and shunning the ideas of controlling the time/budget/scope and “resources” (word I hate when it comes to talking about people) viewpoint of traditional project management.

So my initial question was “who are these metrics being designed for”? This is something we often do not consider. There is a different need for reporting transparency and one to help teams improve. If oversight is the driving goal then the assistance to the team may become minimized. If the goal is to create metrics that are learning opportunities for the team or generate insight for a conversation then the construction of these may be much different but may provide less insight into what management may be seeking.

All metrics are not created equal …

Except, when it came to metrics it seemed. Most of the metrics they were developing were centered around trailing level metrics (lagging metrics for those who are KPI inclined) for the team. A lot of the focus was on the past as a predictor. So I raised the question; “why are you so concerned with the past” in terms of metrics?  They explained to me that this is how he could help the team improve by knowing where they failed or made bad decisions beforehand. So I asked again “given the dynamic nature of iterative development, how can you ensure that the same cause will generate the same effect”?

We discussed in detail that they were extremely proud of was the tracking of “estimated” versus “actual” hours on tasks. They worked really hard to convince me that learning the difference between the two would help them more accurately estimate the work to be done. I let them go for a while and then I had to call bull%^#$ on this.

In my opinion, the only way an “actual” at a task level will be a predictive metric is if the the same circumstances occur exactly the same way the next time. Estimation is just that. It is not predictive in nature, it is a best guess based on the knowledge known at the time. And before anyone says it, you can make a better estimate by reducing the unknowns but you can never eliminate the unknowns.

If I have a headache,  I had road rage on the drive in,  I had more meetings than normal, I volunteered to help someone, I was tired …  A whole lot of things could impact the differences between my estimation and delivery.  So in my “estimation”, this metric is a “narcotic metric”, it tends to make you feel good but it actually could be very damaging when using it.

And what if we do know this information? The key is to be able to take information learned and make it actionable. How do we do that? Send an email and tell the team to estimate better? Begin to question their estimates? Make them sign off? I cannot see how you “use” this information to help them actionably improve.

Refinement Metrics

One type of metric I always recommended for consideration is one I consider a refinement metric. This type of metric is designed to allow the team to perform self-reflection on a recent event given the context of more knowledge and apply that knowledge to a past decision. Instead of comparing the past to the outcome, it asks “given the things we learned, do we think we made an accurate assessment of the work”? Sounds similar but with a couple of differences. 1) It’s never at a task level. 2) It’s a team level rather than a individual developer level as the goal is that the team learns to become better as a team, not as just an individual member.

So what I suggested is something we would often do as part of a retrospective with a team. We would examine the stories for the sprint just delivered and look at the assigned story points. Then we would have a discussion and asked if given the knowledge today, would we apply the same story points. This typically leads to a discussion of dependencies, issues, etc and the team centers pretty quickly around a “stand/raise/lower”. This does not help them get better in defining the individual number itself but helps them reflect on this type of work and the hidden complexities that can be present to determine questions that they may ask themselves or the product owner to create a better consensus around an item in the future to the potential complexity of the work.

Just in Time Metrics

One metric that I have read about after working as a scrum master that I liked was a daily vote of confidence. If you have ever been in a U.S. hospital and had surgery there is a common tool used by nursing staff to determine the level of pain you are in to report and administer treatment. It is called the “pain assessment tool” often and looks like this:

pain-scale-chart

This allows the patient to quickly indicate the level of pain that they are perceiving and reflect this to the nurse, doctor, etc. The blog post I had read (which I wish I could recall the link) suggested using a similar scale for each team member to allow them to forecast their confidence level to meet the current sprint commitment. This allows each team member to express their confidence on a similar scale from “Yep, we rock!” to “Hey guys, I am really, really worried where we are right now” so conversations can be had to determine what’s going on for the purposes of communication at the first responsible moment or to allow the team to swarm around and issue, etc. A simplified version of this has been used by teams that involved “Roman voting” (thumb up affirmation, thumb down condemnation) as well. This type of metric gives you perception of the current state of work in a very real form and let’s you make it actionable. This is often easier to use than seeing potential patterns within a sprint burndown (which is another post).

So just as I asked this scrum master, I ask all of you. Do you have metrics? Who are they created for? Are they actionable or are they just data? How do you use them? Are they actually helping you and even more important are they bringing value back to your team(s)? How do you know?

I leave you with a quote about the importance of knowing why you are actually measuring something …

“Remember, what gets measured; gets managed” – Peter Drucker

Advertisements

Let me tell you a story …

“It’s like everyone tells a story about themselves inside their own head. Always. All the time. That story makes you what you are. We build ourselves out of that story.” – Patrick Rothfuss, Author

 

How did it all start?

My journey started with a personal quest to transform the way I work and delivered value. I was deeply embedded inside a V-model culture in which the end result not meeting customer expectations was typically blamed on the customer.

I started my journey by annoying my manager to allow me to create a pilot project (of little significance to appease me) for my organization after reading about the scrum framework. I knew that this was going to be the wave of how organizations began to work and saw a clear path as to how it could benefit the government sector. So I prepared, I studied, I learned, I asked questions and became immersed in how this worked.

I was given a small team of what I will call “the usual suspects” which were made up of long term employees who were pretty adverse or afraid of change, an assigned “product owner” (who they decided a project manager fit the bill) and a stakeholder who had no idea what I was trying to do. My goal had been stated to conduct this pilot and deliver my findings on if it could benefit this public government organization and what type of staff would be needed to sustain it. So here I was, new team, no idea what this crazy person indicating he was a scrum master (with no experience) asking them to work in a new way in which they would drive their own work, a product owner who needed to understand the role and learn to “lead a team without authority”. This seemed like a real challenge. So, I was all in.

How I got started with my first team …

I started by gathering this new team together and explaining very simply the framework, the roles and rituals and how sprint cycles worked. I was met by questions such as:

  1. What do you expect us to be able to deliver in 2-4 weeks?
  2. Where are the requirements?
  3. How will I test an application without requirements?
  4. You want us to sit together and work collaboratively? What about my cubicle?
  5. What do you mean we determine the amount of work we will deliver? Who manages the project?

And many, many more. I addressed each question as best as I could, remained confident and worked to gain their trust. I assured them that I would be right there with them and help them work through any problems as they arose. I assured the product owner that I would work directly with him to become “team ready” so that he could build his product.

Everyone left the meeting unsure of what lie in front of them.

The initial process …

Needless to say, it was tough the first few sprints. I had to guide the team to understand what “potentially releasable” meant. I had to teach a project manager an entirely new set of skills and way of working and how to establish trust in his team to turn his needs into product without use of command and control. I had to reassure stakeholders as they saw partial software being built out along the way. I had to teach a team, how to conduct a daily stand-up, use a task board and burndown hours. I spent countless hours coaching nervous team members who were so far from the way they worked that they were doing this amazing thing that had never been done before.

Although there was a lot of fear over how they were working, through coaching and support they began to move as a team.

The end result and learning

In the end, the product delivered was a success. It was not that it was a highly prized award winning software package that carried the value that we would have liked but it lit a small spark for some people as to a new way to work.

This team had learned to work together, enjoyed the work they were doing and felt in control of delivery once they found their rhythm as a team. The newly anointed product owner saw benefit in the way he worked in this situation and began asking me how he could “be more agile” in what he did. The stakeholders were happy with the end result and the software was delivered in weeks instead of months.

So, I sat down and typed up a summary of the experience, the overall process and how it shifted roles and needs within the organization, an estimation on what type and level of staff would be needed as well as a recommendation to start small and grow over time as opposed to a large scale shift.

The report was presented to the director of the organization who summarily dismissed the approach indicating “we are never going to do this” (firmly believed in the waterfall approach). I think he may have even thrown it in the trash.

Although disheartened, I knew that this was the right thing to do, especially within the government sector to bring more value through focused iterative work. So, I began to plan my exit from the organization in search of somewhere that I could actually make a difference.

The Partnership …

Coming off of this pilot project and more determined than ever to see this way of working take a foothold. Some leadership shifts had begun to occur and I knew of one other individual within my group that seemed to work slightly differently than the standard PMO. His background was in product management and he treated his product in a different manner than the other project managers. So I approached him and told him about the framework and said “I think you should look at this, you are doing about 80% of it now. You just need the discipline of the other 20%”. He read through it and was intrigued but struggled to get through the scrum guide as it felt like it was more engineering focused. I referred him to the agile manifesto upon which it was built and these values had a much more resonating effect. He became curious. He was a marketer and I had a vision for working in a better way. We were the perfect storm brewing.

As we were both ready for the next challenge, we created a skunkworks project with a new assistant director sanction. We created a team room and sat about to deliver the first product of larger business need using scrum. My new product owner new of a 109 page report delivered to the Commissioner that outlined business related projects (both in planning and “in flight”), their timelines, their progress, etc. It was in an effort to support his regular visits with community leaders with a group of organizational leaders so that he could hold conversations about items specific to the area and be aware of current status as he held the conversations. This report, we later found, had never been looked at by him.

My product owner had the idea that we should produce an interactive map application that could be used on a mobile device so that executives could review this status anywhere and use location as a way to get to these items prior to meeting without going through the hoops of asking a cadre of other people to compile and sanitize the data. I believed that domain data should remain where it lives and that this application should be decoupled from these core business systems yet reflect real-time changes to the data. This had been the debate for many years within unsuccessful committee after committee of how you “connect” the information into a  unified view always resulting in “it cannot be done” or using mechanisms to scrape data from one system to make it visible to another. The problems were:

  1. Once scraped, the ownership of the data in question became transferred to the new owner who was unlikely the owner, therefore would not recognize errors within that domain or ensure that it was accurate.
  2. This was something that actually forced a cross organizational work effort within the business and a base level understanding of owners and consumers of data.

Our theory was through the building of this application we could do several things:

  1. Eliminate a 109 page report that people rarely looked at.
  2. Create a locational context to the data making it more meaningful
  3. Solve a long standing business issue into connecting multiple domain sets of data and giving them visibility.
  4. Create a lightweight tool that since it did not create data but use the data at rest, would allow for quality control in terms of how the data was actually reflected.

So my experience of all of a few months and my colleague of zero months sat about to do the impossible at the time. Create a product (which was not the term used, it was always project in our world coupled with plans, committees, governance, etc) built using the agile framework of scrum with a small but motivated rag tag bunch of team members wanting to do something different and believing they could bring value to the organization. Sounds like a tall order. It probably was. But why was it a good choice?

  1. The product we chose had immediate business value and visibility to the highest level of leadership. It could be a product they would actually use.
  2. It solved organizational problems by connecting disparate data sets and visualizing them in a geospatial context.
  3. It rallied a team. Teams were being demoralized each and every time they worked so hard on a product for many many months just to be told “this is not what we wanted”.
  4. It was focused on value, transparency and visibility. We welcomes anyone to observe how we worked, what we were doing and communicated openly and often. We littered our area with BVCs (big visible charts) indicating who we were building the product for, what the features were and the current progress.

So after putting some solid time into product planning (understanding the need, identifying personas, creating a vision and decomposing high level needs into features) we started with a cross functional team of developers and I played a dual role of scrum master and tester (which I do not recommend of possible). Being cautious, we selected a horizon of 30 days for our first sprint (which probably ran slightly longer as we were learning).

At the end of this cycle, we had a releasable product. Did it do everything wanted? No. Was that the point? Yes.

We demoed the product for the director (who as you recall said we would never do this) who was looking for a win with management. As my PO reviewed the features, the director asked several times “and you built this in a month”? He had no idea that this level of work could be accomplished like this, without the tomes of documentation, the endless committees and death-march approach of a 9 month waterfall effort.

Excited by what he saw and eager to show his leadership value to the executives, he arranged a demo with us and the COO and CFO (even though I am unsure of he understood what had been done or why). Although the first iteration was primitive, they saw the value of this product and method of solution delivery. A rapid innovative solution meeting a business need by people who wanted to respond to change. They immediately scheduled a meeting for us to demo to our commissioner.

Demo day with the Leadership Team

We arrived and setup our demo for the room. We had gone through how we would demo the features and planned to show how it worked across multiple devices so that it could be accessed anywhere. We, perhaps naively, assumed this would be IT, the COO and CFO and Commissioner. The room filled to the seams. Apparently we had stepped on a lot of toes of people who had been promising a solution to this issue for years. They all stopped in to see and, in my opinion, find that one gaping flaw that proved they were right in the impossibility to solve this. Our top leader entered with his staff and off we went.

I produced the 109 page report that this replaced and was immediately struck by the confusion on the commissioner’s face. He had never seen it or if he received it, never read it as it was like a car manual that was designed for the people doing the work, not to help people understand. We continued our demo and I handed him an iPad with the application displayed so he could play with the application and replicate what we were doing on screen. He became more engaged. We were excited and wrapped up the demo for the room.

With a brief pause the commissioner asked “who told you to build this”? We replied “no one, we knew it was an open question that the business had and we wanted to provide value”.

He then proceeded to do what I would call “beat the application with a proverbial baseball bat” telling us all the things it did not do or he wanted it to do. The PO and myself hung on his critique and I scribbled notes so we could process them later. The director looked like we had just shot him in the middle of the room. His perceived “win” seemed to be going south and here were the two guys to blame.

Once the review finished, the commissioner rose and said “I’ve got another meeting but you guys are 100% on track” and left and all of the spectators (many of whom probably felt we got what we deserved) filed out leaving the COO, CFO and IT staff behind. The C level executives apologized for the reaction and the IT director seemed to be disappointed we showed “incomplete software”. But we responded in a way that shocked the room …  “This was great! We now know what he did not like and we can pivot and begin adjusting those features”. We explained that this how this worked. We review regularly with stakeholders, receive their feedback and adjust course as needed. They may have though we were a little nuts. I know a lot of the IT leadership did but with the excitement of the executives, we were given a reprieve to continue.

Within one more 30 day sprint, we had a version that met the needs and it was being used in the field. It was the fastest delivery ever done from a team of 3-4 as opposed to 5-12 over a 9 month period after 9 months of requirements gathering beforehand. We held conversations surrounding value and need, not features.

My PO was made CIO following the success of the product and asked me to stay on and transform the organization to work like this on every product. 4 years later and we have 4 scrum teams, 5 product owners and other pockets of agility. Even our own HR for the organization has become trained in kanban and uses it for their HR projects. The business extrapolated the idea of the scrum team to create “business studios” made up of all of the team members needed to complete a business function for a core business line.

How I planned to Build Something New Here …

When the PO moved into the CIO role he asked me to stay and help him build something new. I agreed under 2 conditions:

  1. I needed to be able to always call BS when I sensed it.
  2. I needed to be trusted and left to build it right.

He agreed (although he may have thought I was a bit nuts, and still may).

First, I knew I could not do this alone. Although I had a significant technical background in all aspects of software delivery, I had to follow the advice of “getting the right people on the bus”. So the initial team for this organization was hand picked and recruited. They were either excited to do something new or brought in superior technical skills and strategy to build out a solid technical architecture. I remained personally involved as a scrum master and tester (as we did not have much depth) and we stayed strictly adherent to the framework (look at the Shu-Ha-Ri principle).

Once I was able to move into more of a leadership role, I set about doing a few things that I think, although small, made a big difference.

  1. This new organization would be align as flat as possible to encourage self-management and self-organization. Everyone reported directly to me to support the people doing the work determining how the work would be done. This did not change until the group had significantly grown and it became necessary to add a layer.
  2. Continuous learning for the group would be core to the values of the new culture. We identified a great online technical education resource which we procured for every staff member and the idea of a “lab day” in which they built upon their own skills following each sprint became standard practice.
  3. The idea of team protection and focus from distraction was also a core principle. We minimized disruptive impact to the focus the teams and encouraged, coached and empowered them to take commitments seriously by ensuring that the people doing the work indicated the commitment of work that could be done.
  4. I hired a couple of eager team oriented scrum masters to be servant leaders to the teams and help them mature.
  5. Ensuring space was available for the team members to innovate and exercise personal creativity. Outside of the standard lab day within the cycle, I self-funded and piloted a hackathon which is growing into a larger and wider event for the broader organization.
  6. Hiring became focused and central to our growth. We broke out of the typical mold of the state process in which an applicant performed a 1 hour interview in which they regurgitated their resume and convinced you to hire them. We implemented 3 hours interviews that combined not only behavioral based questions to gauge how they had responded in the past to situation or might do so as well as a 2 hour technical interview in which the expectation was that they demonstrate the skills needed to do the role for which we were hiring. This has been something we have maintained focus on changed over time as opposed to making it a standard approach. I strictly adhered to the rule of “hiring the right person” and if they did not show up, I hired no one (much to the dismay of my leadership as the public sector hiring process can be cumbersome). I truly believe that this helped us create sustainability by making good hiring decisions.
  7. I placed equal focus and attention to the cultural and technical growth aspects of the group. I hired people that were “culturally additive” in terms of value and with the help of strong technical leaders we defined and adhered to an architecture complete with design patterns, branching and merging strategies and promotional process. Defining this initially but leaving it to the technical people to grow has done well. I tried to be very intentional to create some growth paths by not hiring for every position so that people felt they had to leave to get ahead.
  8. Instead of overloading a lot of processes (outside of the rules that were outside my control in the public sector) I imposed a litmus test for decision making composed of (2) key elements of consideration. Is what we are seeking to do “reasonable and responsible” to ourselves, our team, the citizens, our organization? If it met this litmus test and we understood and accepted the personal responsibility of the risk, remained transparent to those involved or impacted, the people doing the work had the complete freedom and support to make good choices without committees, work groups, management hierarchical approval, etc.
  9. I established the idea of creating tribes within the organization composed of people with a passion to solve a problem that they created themselves and managed. This applied to everything from how we celebrated birthdays to our recurrent staff meeting to process improvements.
  10. Everyone had a voice. Starting with everyone reporting to a single point it was easy to establish that anyone had the right to speak out. I reinforced this to staff by being an advocate for meritocracy, not democracy. “Good ideas come from where they come from” was the guiding idea.

In doing all of these things, I learned a lot. I challenged a lot of preconceived ideas of how people operations worked and how work got done. I have to say, although there is always room to improve and grow, I am very proud of the teams that are here today. I have had a few people move to new opportunities (always in a positive way) and seed groups of their own or seek to take aspects of the culture and apply it to new organizations.

While I have always hated to see people leave, I treated this as a good thing that they were growing and not dwelled on any gaps it left behind, which I think has been encouraging to them and not created undue organizational stress. So many public sectors operate in fear of “that one guy” leaving as they carry so much legacy knowledge. They do not stop to realize the problems is in the silo of knowledge as allowed by the organization, not the person themselves.

So why did I share this journey?

Some might think it is for the purpose of braggadocio. Nope. While I am proud of where I am and where this organization has grown, I see miles of potential unrealized before us. I think we are where we need to be today and hope we continuously inspect and adapt to get us where we need to go to become truly high performing.

I have heard many stories that amaze me on how people shaped their work world and I take personal pride in what I do and am impressed by the strides of many others. I have tried experiments that have succeeded and some that have failed miserably. I am very fortunate to be in an environment that has allowed me to do this as they know that I am aware of risk without sacrificing the need to experimentation. I truly am grateful for this opportunity.

Personally, I am grateful for everyone I work with from the most agile person within the organization to the person that is struggling just to figure out how they fit in the agile space. The former because they focus on value as a driver in the way they work and the latter because they want to learn, adapt and grow most likely or find the way they can connect with something different.

I take pride each and every day knowing my teams are in control of the work they do, take their commitments seriously and work to deliver quality products to the best of their ability. I take pride in seeing the depth of people we have and how those differences make them a more solid team as a whole. I am humbled by the fact that a great deal of people took a chance to try something different and trusted that we were building something great. I take pride in building an organization in which and every person has a voice in their work no matter their role and that teams are protected when they fail from being vilified and  are asked to use these as learning opportunities. I am proud that my teams know the value of the “first responsible moment” when encountering problems and raise the flag to draw the attention when it happens so that risk is managed in real-time as opposed to being based on a risk register outlining risks that may or may not ever occur.

I spoke at an agile leadership summit about 6 months ago and one of the other speakers said “you should tell stories more, you have a knack for it” (unsure I agreed but appreciated the compliment). I actually did tell the organizer that if they had a rocking chair available, that is was best not to place it where I could sit when giving my talk or I might keep folks for a while. Yes, I love to share things with others. Perhaps it is in my nature and wired within my regional DNA in general.

The reason I share  and this story is that I want people who may be struggling with a transformation or even just getting started to have hope.

Hope that you personally can do something different and affect change. I helped drive the implementation of agility in the most unlikely of places at a time when “death marches” of project failure were accepted in the culture as the standard practice of work and the value add by IT in general was viewed as very low by the business. From this small product, we transformed an organization and a culture and started a broader conversation that continues today. I often tell people when I started this conversation, I was the only person in the room (which meant a lot of talking to myself). I recently attended a meeting where 10 people engaged in a conversation of how to apply agile conversations more broadly and have coached, mentored and shared this story with a lot of folks over the years.

I alway recall a quote that inspired me early on from Mike Cohn.

“Agility is not something you become. It is something you become more of …”

If you’re stuck now or things are less than optimal. Stop. Take a breath. Figure out where you can pivot and where you can persevere. If you are unsure where to start, find that thing that you can make valuable and start “starting”. Be as agile as you are able to be given constraints and then push to become more agile. Learn from failure, embrace feedback, push yourself and do not compromise or collapse in the face of adversity. Show people a new way to work and build a culture that drives to empower and trust those doing the work, not operating under command and control.

I am going to end this quote with a passage from Apple’s “crazy ones” ad campaign created by Rob Siltanen and hope you all stay agile!

“Here’s to the crazy ones. The misfits. The rebels. The troublemakers. The round pegs in the square holes. The ones who see things differently.

They’re not fond of rules. And they have no respect for the status quo. You can quote them, disagree with them, glorify or vilify them. About the only thing you can’t do is ignore them. Because they change things.

They push the human race forward. And while some may see them as the crazy ones, we see genius. Because the people who are crazy enough to think they can change the world, are the ones who do.”

 

Team Icebreakers

I am a big fan of using small team exercises to just people out of their “head space” for a moment before refocusing back to the area of work. Sometimes it can be a physical (just stand and stretch, take a team stroll) or be just a small thing to let people begin talking about non work focus items to just relax for a moment. I also appreciate, as does my team culture, the value that humor affords in work.

A great way to start teams talking before a daily stand-up or retrospective is with an icebreaker. I have come across a few simple ones (some I have used in the past) that I think is a great way to just stimulate spontaneous response and to allow the teams to loosen up and get ready  to communicate.

One Second Trivia

Prep Time: 5 minutes or less dependent on how quickly a scrum master thinks on their feet. Questions can be prepared on index cards or scrum master can make them up on the spot.

Run Time: 1-2 turns per team member

Goal: To just relax people with potential humor and “prime the communication pipeline”.

Rules: Only 2.

  1. You must provide an answer within one second.
  2. There is no wrong answer in this game.

Play:

As each team member a question and allow them to give an immediate response (much harder within one second than you think),

Examples:

  • “What can you not grow in a garden”?
  • “Why did you borrow $20.00”?
  • (Fill in the blank) “You superpower is …”
  • “What is a vegetable that should not exist”?
  • “What is Beyonce’s middle name”?
  • (Fill in the blank) “The code word for this product is …”
  • “Where are you keeping that candy bar”?

The objective is just to get the team relaxed and ready to connect. Often time hilarity will ensue as coming up with answers for these in one second typically results in whatever pops into your mind.

You can change things up by allowing team members to run the game and prepare their own questions. It does not take very long and it engages them.

Yes. And …

Prep Time: No real prep time needed, just the ability to seed a conversation.

Run Time: 1-2 turns per team member

Goal: To help team members develop engagement and listening skills with one another as well as reinforce being value additive.

Rules: The objective is to listen to the statement made by the previous team member and continue the story by adding “Yes, and …”

Play:

Seed the conversation to start with a topic or lead-in. Examples:

  • “Yesterday, we went to the zoo …”
  • “When I was preparing for my career as an astronaut I went to Walmart”
  • “Today began as the worst day ever”
  • “I came home last night and decided to bake a cake”
  • “I met my evil twin yesterday in a coffee shop.”

Power Animals

Prep Time: 5 minutes or less. Requires either drawing animals on index cards or finding small pictures to tape on cards, etc so that they can be placed into something to draw from by each team member.

Run Time: 1 turn per team pic member

Goal: To just relax people with potential humor and “prime the communication pipeline”.

Rules:

  1. Respond as quickly as possible.
  2. There is no wrong answer in this game.

Play:

Set the stage – “This is the power animal game. In this (bowl/box/hat) are many types of exotic and amazing animals (make a lot of them really odd or very mundane animals). This animal has specifically selected you to be able to channel some of their special abilities in any time of need.

The goal of this game is for you to relay to the team why this animal picked you specifically to be your power animal and what power(s) did they grant you.

  • Have each team member reach into a shoebox or bowl and draw out a picture of an animal and respond. It’s often not only humorous but can often be insightful into gifts that a team member has or wishes they possessed. Good information for strengthening team member connections with one another and with the scrum master.

Capacity and Performance

“Your capacity to say no determines your capacity to say yes to greater things”        – E. Stanley Jones

This is something in business we all struggle with in my assessment. How to sequence “just the right amount of work” to deliver value and still all the desired ability of an organization to remain responsive to shifting value needs. My organization has struggled with it as I feel confident many of you have as well.

There are a lot of techniques, both agile and not, to determine capacity and we’ll look at a few and I will express my own opinions here and what effects poor capacity planning can have on teams and organizations.

Somebody call 911!

A lot of us live in a world of “firefighting” as an organization. Not literally, but what I mean is that we become reactionary as an organization as opposed to responsive.  Organizations often confuse responsiveness as the ability to handle each fire as it occurs when it reality this is chaos at its core. Often, these organizations are so busy fighting the blaze that they never take the time once the situation has passed to ask why the fire actually started in the first place or they confuse every flare up on the same level as the entire city in flames. This is not responsive, it’s reactionary and although you may be defined as the “hero of the day” in the moment, it eventually raises much deeper problems that can become exposed and have to be addressed.

Being a reactionary environment is inefficient. It means that there is a significant amount of waste happening waiting for the disastrous event or worse yet it is a sign that work is improperly sequenced to allow a balance of responsiveness and performance. Signs of this are often team member turnover, sick time increases, increased deep policy to attempt to be preventive (the “ban all matches” approach) or just a general negative outlook to solving a problem. Be vigilant in observation for these types of issues as one you define yourself as this type of an organization, it is often very painful to change.

Capacity, Performance and the myth of being busy

One of the things that I have always believed is “do less better”. Ensure that you are meeting the highest value items for an organization but in the face of emergent needs you have to deliberately create slack within your work capacity for numerous reasons. Things like actually being responsive to the emergent pet project that comes up, capacity to nurture your teams and team members to allow them to grow and give back to the organization in doing so and generally to improve performance throughput

Basically capacity boils down to “how much something will hold” from a true math reference bt in our terms it means how much time and work can we consider and remain effective in our performance. Finding area and volume of a given shape to determine capacity is a relatively simple formula but when it comes to people and time, it often gets tougher (although I know many PMP folks who would explain to me formulas of resource management, resource being a word I strongly detest when referring to “people”).

A general rule of thumb is that you will never receive the maximum capacity of a given person or team. Accept this. If a person works an 10 hour day, the best you can hope for us 70%-80% which is roughly 7-8 hours at the high ends. The reason for this is that people are social creatures and have needs like going to the restroom, checking emails, diverting their attention after prolonged focus, casual conversation, meetings, etc.

If there are CIOs/CFOs/COOs/CEOs reading this in awe and shock, welcome to the reality of people. And it is even possible that 10% of your overall workforce is performing suboptimal based on lack of skills, poor work ethic, sickness, burnout or whatever reason. So how do you handle this and still maintain a level of performance without remaining in a constant hiring frenzy of cycling burnout workers?

First, accept your reasonable capacity levels and plan strategically. If you do, you will find that you optimize the flow of delivery within that capacity and you often see higher percentages executed (which can be a different topic to watch for … “dark work” that has no visibility and creates strain but as things are delivered on time no one questions).

If you think more bodies are the answer. You’re wrong. Read the Mythical Man Month. As you increase complexity to any systems you fragment pathways making performance degrade. Think of a small intimate dinner gathering and how conversation can flow well between 2 couples (as they can keep up with topics or break into smaller sub groups and still reflect to the group). Now introduce 2 more, and 2 more, and 2 more. Make it a large dinner party and afterward come home to discuss the topics of conversation. The pathways are too complex. You cannot keep everyone in the loop on all of the conversation occurring.

The same thing occurs with software development. As you introduce more and more staff you increase the complexity in the forms or handoffs, communication pipelines, individual or small group decisions that get made, etc which make it slower as rediscussion, rework and deeper changes are often a result. This is often why I prefer product feature teams as opposed to component teams whenever possible.

Secondly, if you want to be responsive; be deliberate in building in slack to your approach. Let’s take 3 examples; road networks, servers and teams.

Road Networks:

You are driving to work. There are 30%-50% of other cars on the road. You make your commute in a reasonable amount of time. But we are not utilizing all of the capacity of the road! So let’s crank it up to 100% and make that same commute. What is the expected result? Traffic jams, delays due to accidents, road rage. We actually decreased our performance by trying to fill all of our capacity.

Servers:

This is a little tougher as in the day of invisible scalability of cloud networks it may seem a poor example, however, if a server capacity is maximized to 100%, performance degrades; it is a given. It results in unneeded swapping just to meet all requests. It may seem negligible but if you have ever been frustrated waiting for a web page to load, you may have been experiencing exceeded capacity.

Teams: 

Filling a team capacity to the brim can result in whiplash when trying to meet those emergent needs With that allowed focus, you have teams that maximum their throughput through selection, self-organization and a regular cadence. If they have other responsibilities (support, meetings, etc) not building in that capacity that is aware of these things will result in feelings of being high performing but in fact often degrade performance and hide a lot of work being done on an employee’s own time (which can result in a whole host of issues).

But we have to keep people busy

Do we? Did we hire the individual with a specialized set of skills to ensure they remained “busy” or did we hire them to ensure that we had the necessary skills to realize the end result of value?

If a manager pops into a team room and a team is relaxed, having a conversation about Dr. Who or some world event is that ok? Sure it is. If they are personally making their commitments and failing to deliver value, then you might sense a problem which could be everything from they are sandbagging to they are being disrupted externally for other work to the guidance they are receiving is creating deep and counter productive conversations at the time of delivery from a lack of understanding. It could be lots of things.

The point is not to keep people busy. In trying to do this based on observations of social interaction as a sign of low productivity, you toss the idea of capacity out the window. For me, I want a highly motivated team that wants to come to work and deliver because they know they have a direct voice in setting and communicating reasonable expectations for feature delivery. Does this not mean that occasionally the team may not be forced to ramp up commitments to meet a deadline? Absolutely not. But if you trust the people doing the work to be reasonable and responsible in communication, transparency and of the delivery of that work; often times I find teams will rally to address the hard need.

Otherwise they are back in firefighting mode.

Seeking to ensure teams and team members are “all busy” is a false goal. It equates people with server throughput. People should be cultivated and grown if you want to create longevity of any sort in your company with employees. They will become your greatest champions and advocates if you embrace this. They will tell others of the great company they work for and they will work hard to deliver of their commitments.

I write this post today not out of any personal or professional frustration but from an observation that many organizations focus on “busy” as opposed to intentionally creating space to be responsive to emergent needs. Just like a home’s unused space get filled, professional people fill the unused space (through skill acquisition, environment improvement, idea sharing, etc). But just like a home; should you inherit your grandmother’s giant steamer trunk if you have filled all of your capacity of space it gets placed in an odd location or you “make room in the attic”.

Be honest and kind to yourself as an organization, your people and reflect a true understanding of capacity by considering more than just “delivering more” or “being busy”. Understand what other impacts that people have that impinge on capacity and to become truly responsive, be intentional in creating slack within your overall capacity.

As I always say and I will say once again … “Do less better”.

 

Just one thing …

Curly: Do you know what the secret of life is? [holds up one finger] This.

Mitch: Your finger? Curly: One thing. Just one thing. You stick to that and the rest don’t mean s***.

Mitch: But, what is the “one thing?”

Curly: That’s what you have to find out.

Jack Palance and Billy Crystal  from the movie “City Slickers”

I always found this scene amusing when I was a kid. The old ranch hand trying to teach a city guy the value of focus for clarity. Of course at the time I just thought it was funny. After all these years, I realize that Curly was teaching a true agile value. Focus.

Focus is that thing that often gives us clarity. It gives us the ability to think deep thoughts and really unravel an idea. It allows us to extrapolate from a big thing into discrete pieces upon which we can undertake. It applies to things in life as much as it does in software development. I have started to really appreciate this as I prepare for an upcoming house declutter and move.

Do I allow myself to always embrace this seemingly simple approach. Nope. I, like others, allow myself to get too “focused” (and I use this term loosely here as it really not focused at all) on too many things. Like those performers that are spinning plates on a skinny stick, I find myself focusing on keeping them all spinning sometimes. But, as I am want to do, which often results in a blog post, I find myself stopping, breathing, thinking, assessing and questioning my current chartered course. So here we are.

Focus is a core value in agility as it allows us to actually be more productive by allowing ourselves to work to accomplish “that one thing” as Curly put it.

Under scrum, we demonstrate this through the user story, the task decomposition in terms of work effort. We use focus in terms of daily risk mitigation through a focus meeting called the  stand-up. We focus on the features committed within the review and the team within the retrospective. If you look closely, focus is woven throughout

Kanban has WIP and the innate concept of “pulled work” which itself a way to focus and measures this through the idea of how effective our focus on delivery is through things such as cycle time.

But there is one dimension in which I often see less focus. In the process of delivery. What I mean by this is often I see scrum development teams use a “divide and conquer” approach in which teams members use their specialized skills to scatter and seek to deliver. They are in no way being less agile in this approach but I have always wondered what would happen if they allowed themselves to focus and iterate just like the larger product. There are examples of this. Just take a look at Woody Zuill’s mob programming or pair programming as outlined in Exteme Programming by Kent Beck.

My latest read, “Joy, Inc” talks about the use of pair programming as the standard way of how they hire and how they work. They see it as not only a way to create shared knowledge by this but also to ultimately be more productive.

So, I have posed this question many times to developers and often get the same response “well, development doesn’t quite work that way” to which I often reply “are you willing to try an experiment and either fail or be wrong”? *smiles*

My logic has always been that if a sprint backlog is supposedly composed of a top to bottom prioritized list of the highest business value, wouldn’t we want to work through the items (given we identify any dependencies and work to minimize those with the product owner) and focus to deliver each story in that manner during a sprint? Or even look at the absolute most complex item and focus on completion of that story and then work on the lower hanging less dense fruit?

I see 4 potentially significant benefits that could result from this:

  1. We get items in front of our team members specialized in quality quickly so they can assess features for compliance to acceptance, note any software issues or quality enhancements and they can become productive more quickly. They are reviewing and testing completed features, even if there are mocks behind some dependent needs of other stories. They also are able to learn a portion of the system under construction and build automation against it for regression more quickly if needed.
  2. If we for some unforeseen reason we are impacted to effectively deliver on all stories for our commitment, we can at the first responsible moment, assess remaining team bandwidth, current deliverable dependencies and make decisions so that we can have that conversation immediately with our product owner so we can remain transparent on the impediment and impact but emphasize our focus on the highest priorities or largest complexity first.
  3. We reinforce iterative development at the lowest level of development (by using refactoring and integration as part of the way we work) and can focus on ensuring that we meet our agreed definitions of done at each story level.
  4. We “should” end up with a set of features tested early which should allow us to as a team to swarm baking in quality for our product and preparing for our review at sprint’s end (given we did not over commit …)

So in my view this approach makes sense to me and I have worked on teams that worked this way and we remained productive and felt like we were accomplishing more towards our product goals. We effectively delivered features regularly for review for the stakeholders.

A lot of folks may be reading this and joining the chorus of previous conversations saying “yeah, sounds good but you don’t really understand” …

So I reply to you all … “are you willing to try an experiment and either fail or be wrong”?

 

Recommended Read

“If you’re comfortable with the amount of freedom you have given your employees, you probably have not gone far enough”. – Lazlo Bock (Work Rules!)

I recently completed the audiobook of “Work Rules!” by Laszlo Bock (I went back a read passages I really wanted to dig into in the paperback as well). For those of you who are unfamiliar, Laszlo Bock is the Senior Vice President of People Operations for Google. He shares a very interesting insight into how they apply programs, policy and practices that impact employees and surprisingly how much data they collect to understand if they are actually making any real impact to the employees or the culture at large.

Some of the mystery about what/how and why Google does some of the things they do were outlined in the book. A few of them were:

  • Many of the services (like the haircut bus) provided to Googlers are at no cost to the company. It is often a brokerage between people operations and businesses for them to generate business buzz and customers. Many of things are often out of pocket for employees but adds a convenience factor for them to not have to schedule time to go and do these things.
  • The “micro kitchens” famously known at Google that allow googlers to grab a snack, a coffee, water, etc are actually spaced throughout the campus with intention to stimulate “unplanned interactions” where people from groups that might not directly work together might interact or spark and idea in one another.
  • Google has a performance management process and it gets scrutinized for effectiveness and adapted to bring the most value.

There are some really interesting ideas in this book. Not all of them are applicable to every organization but the underlying message is. If we have people focused on the operations of people and people are our greatest company investment, where is the downside?

The spirit of this book will hopefully inspire you to just think differently about how you can impact your culture in small ways and use data to determine if the “perks” you are providing are doing what you intended. I was so inspired by this book that I bought an extra copy so I could share some of this with our human resources, who are progressive thinkers as well.

I would highly recommend this book if you are leading a team, transforming an organization or maybe are part of people operations in your own company.  It will definitely inspire you to think about what things that you might be able to do to enhance the work environment and how you determine if it is working.

Stay Agile! 😀

 

 

 

 

 

 

Draw How to make Toast

Just a quick redirect to something I have stumbled across and found fascinating and wanted to share. This approach is an introduction to systems thinking and what they call “Wicked Problem Solving”. This is another approach from Tom Wujec who outlined another team approach to iterative innovation in the Marshmallow Challenge Website.

I just found this a very interesting way to get to core problems to solve for a group. Check it out:  Draw How to Make Toast Website .

Hope this gives you another tool in your agile toolbox to do great things!