Managing Large Lean Software Projects

This post based on my reading of Henrik Kniberg’s book Lean from the Trenches. I am not going to write a detailed review on the book but rather I provide my own interpretations.

Maturity in using the tool

Either Scrum, Kanban or XP we should avoid getting obsessed by any one. Instead use them according to the situation. They can be helpful in providing guidelines but they can be tweaked wisely to the environment. Our approach for managing development or project should be composite rather biased to specific method or technique. Continue reading

Addressing the needs of people and business

Process improvement has been doomed to be a waste function by many organizations. From my background, many who work in process improvement are treated as compliance workers instead of being contributors to the bottom-line. For me process improvement is the business. Every day we take decisions to get certain benefits. Continue reading

Flow visualization game

Link to this game is here.

Overview

I work with many teams who want to reap the benefits of applying the  Agile principles without feeling the compelling need to change themselves in order to follow specific methodology. Those teams are committed to quality, however, they want to do things their own way, specifically those teams want the following:

  1. Avoid organizational changes
  2. Maintain the current structure, title and role.
  3. A way to bridge to the new development paradigm.
  4. Learn and grow.

This game helps to visualize the team’s interactions for the purpose of enhancing these  interactions for implementing the Agile principles. Continue reading

Visual board stand-up

The daily stand-up is when the team, product managers, managers and other groups meet to learn the story and share findings. This is best accomplished on front of the visual board.

Aspects of a good stand-up, apart from number of people attending can be summarized as follows.

Coloring of various project areas, for example risks, defects, urgent tasks, delays, class of service and others can help in knowing what happening and to take appropriate actions. It reminds everyone on the previous areas and therefore coloring helps the team to focus on mitigating their impact. For example, once I see red dot on a  card I know it should  implement certain policies to facilitate flow of value.

Keep the visual board manual allows face-to-face communication among team members and other related stakeholders. The manual board doesn’t require tool evaluation, purchase, training of staffs, and others. For me a big benefit is avoiding shifting the staff mind-set from being tool driven to more process oriented. Any tool has its own philosophies and ideas that should be grasped in order to use it. This takes time and can distract team from implementing Lean/ Kanban methods.

Should be less than 15 minutes covering mainly the situation of various cards and examining the flow. Having coloring system in place helps to notice the various areas which require actions and follow-up.

Should avoid problem solving as the meeting can highlight many concerns which can be followed-up after the meeting.

Attendees should no feel as if they are being interrogated. Instead they should focus on having flow of value and accordingly contribute.

Questioning of our understanding is a key benefit from my view when visualizing the flow during the stand-up. For example, the complain in one project was that we didn’t have enough developers to address the backlog. After visualizing the Value Stream and doing stand-ups for a month or so we found that the problem turned to become we don’t have enough work to give to the developers. Many of the cards represent requirements which needed more elaboration by the product owner and should not really be part of the team current activities.

Having people identity on their cards promotes ownership and should not be associated with personal attribution. Team members would report issues related to their work and once there is delay they can accept other work. The flow is enabled by avoiding having them waiting, meanwhile we pro-actively escalate to resolve the issue.

Facilitate apart from seniority from who is attending the stand-up. This originates collaborative problem solving among the cross functional team members with minimal level of escalation.

Invite other groups to attend the stand-up although they are not part of the project.  I asked our quality director to attend, his feedback was that he learned about the team which improved collaboration  and increased the alignment with the organization.

Agile agnostic, implementation steps

First, I state that I can’t improve the process; instead they should improve their work. I found this statement helpful by allowing the team to assume responsibility on their work and to position me as coach for building trustful relationship. The last thing they should worry about is that I am going to expose their weaknesses. This step is foundation for successfully working together. Trust shouldn’t be declared instead it’s judged by the team. Continue reading