Accelerating Scrum Success with Lean Principles

Screen Shot 2018-09-28 at 1.57.58 PM

For organizations that have been on the agile journey, Scrum has been the framework of choice for some time now. The simplicity of the framework and its ability to enable the empirical process are some reasons behind scrum’s success. Having said that, one may question if teams have truly attained agility by doing Scrum.

 

The terms scrum and agile are often used interchangeably which is where the distinction between doing Scrum and becoming agile becomes important. According to me, if Scrum is the means, agility is the end. To put it simply, Scrum is like a driver’s manual. A learning driver uses it till the time he/she is internalizing the rules of driving on the road. Once done consistently over a period of time, the driver is easily able to navigate through the traffic without referencing or following the manual at each step.

From Doing Scrum to Being Agile – Impediments

Every aspect of scrum has a purpose. From the roles, artifacts to the events, there is a value associated with everything. However; it is noticeable that teams that have been doing Scrum for a long time have not always shown behaviors or patterns of a high performing team. This points to the issue of scrum being adopted as a process without the end in mind. It has been validated the time and again during my engagements with organizations that have been doing scrum for years.
Agile is consistently referred to as a mindset based on the values outlined in the agile manifesto combined with the agile principles. However; teams struggle to successfully attain the mindset shift for the reasons mentioned below:
  • Training(s) – Most agile adoption initiatives start with trainings which are intended to familiarize teams with Scrum framework with limited focus on the agile mindset. Yes, the agile manifesto and principles are covered but there is not enough focus on educating the teams on how they can graduate from doing scrum to attain agility. This often leads the team(s) to believe that Scrum is the end state.
  • Scrum as a process – Once a team has been trained, the next step is to ensure adherence to the framework. Generally team will have a Scrum Master whose job is to promote and support Scrum as defined in the scrum guide. Interestingly, while some organizations look at their Scrum Masters as coaches, the scrum guide does not associate the term “continuous improvement” with the Scrum Master role. This also makes the teams assume scrum as a process and end state.
  • Process compliance – Organizations with multiple teams often enforce compliance which is attributed to the need for consistency  of process and the usage of supporting tools like Jira or Rally. This idea of compliance is generally directly in conflict with the attributes of self organizing and self managing teams forcing the teams to live in the scrum box.

Above mentioned are just some of the reasons. You might have your own but the focus is to emphasize the need to go beyond the process.

Applying Lean Principles

Source AK IT-ConsultingThere is knowledge base that connects the roots of Agile to Lean. Lean got its start from manufacturing and applying it to knowledge work required a mindset shift. Lean introduces a customer oriented flexible system for software development. Applying lean principles with scrum teams have shown some encouraging results.

In their book, Lean Software Development: An Agile Toolkit, Mary and Tom Poppendieck outlined how these Lean principles can be applied to software development. In the most simplistic form, these lean principles can be applied on top of scrum the accelerate the move from doing scrum to being agile.

Lean and agile be definition are different things but they are great partners intended to achieve common outcomes. Here is how lean principles can be applied to further mature scrum teams:

Screen Shot 2018-10-03 at 9.22.53 AM

Eliminate Waste – A variety of wastes impact the outcomes of scrum teams. In large organizations, these wastes are commonly attributed to processes, complexity, structures, silos, hierarchies etc..  Organizations and teams that are relentless about continuous improvement can benefit greatly from consciously and incrementally looking for opportunities to eliminate waste. Value stream mapping should be conducted at the business and development process level to expose waste and create urgency to eliminate them.

Build Quality In – One of the common struggles for scrum teams is to deliver the “potentially shippable” artifact. Reasons include quality of requirements, structure of requirements (not vertically sliced), dependencies, unstable environment, team silos, processes, handoffs, metrics and more. However; the most common reason is the number of defects produced in sprint or the lack of tools and/or automation to support end to end testing and the mindset of dealing with defects.

Taiichi Ohno when talking about the Toyota Production System talks about jidoka (self-regulation). The idea came from a loom which would stop automatically when a thread broke. When applied to software development, the idea is to enforce behaviors of urgency, collaboration, swarming etc.. as soon a defect is found.

Additionally, the lean principle of building quality in starts by suggesting that quality if everyone’s job and not just QA’s and it needs to be a disciplined practice. Lack of it also is in conflict with the first principles of eliminating waste.

Create Knowledge – This is referred to as “Amplifying Learning” in Mary and Tom’s book where the best way of learning something is by doing it or in other words by actually creating value. Lean is also about learning through experiments. These behaviors and/or mindsets are not often observed with scrum teams.

Some common anti patterns that impede the principle of creating knowledge with scrum teams include team structures, where teams are build up of many specialized skills thus creating silo success criteria and outcomes. Additionally, scrum teams can also been seen doing “foundational” work with an excuse to build a sense of predictability. This is precisely why agile relates the term “evolving” to all dynamic aspects of software development including requirements, architecture, design etc..

Defer Commitment – While scrum revolves around the idea of short feedback loops, teams are often challenged with timelines or scope or sometimes both for a variety of reasons. This is commonly observed with organizations that limit agility to the teams but still have maybe a PMO that engages in yearly planning activities thus leading to assumed commitments.

Similarly, at the team level, the inability of the team to meet it’s sprint commitment (even though the term “commitment” has been taken out of the scrum guide), can go against the team leading to compromise in other areas, more often quality.

The lean principle of defer commitments does not mean that the teams do not plan or make uninformed decisions. It encourages that decisions be made at the last responsible moment. Last responsible moment can vary from companies to industries to teams but the basic idea revolves around acknowledging and conducting experiments to enable informed decision making.

“In preparing for battles, I have always found that plans are useless, but planning is indispensable” –  Dwight Eisenhower

Deliver Fast“Ability to deliver fast” is the most common reason why most companies adopt agile methods. Fast can be interpreted differently in different context. One example is Etsy that delivers code into production multiple times each hour. But not all businesses are the same.

The term “fast” was originally intended to enable fast feedback loops to allow teams to inspect and adapt in their pursuit to cause customer delight.

Every team wants to deliver fast and get value in the hands of the customers as quickly as possible, but most scrum teams are unable to do so for a variety of reasons. Some examples:

  • Organizational and team structures leading to increased complexity
  • Lack of supporting practices and tools
  • Big increments; looking too much into the future
  • Lacking urgency to remove impediments
  • Intent of building a perfect solution

Going back to the principles mentioned earlier, deliver fast can be the outcome of eliminating waste, building quality-in and creating knowledge. A focused effort to apply these principles leads to the lagging outcome of faster delivery

One of the concepts you’ll hear referred to a lot in Lean is “concept to cash”. It refers to the lead time from the time the idea was conceived to when the customers start purchasing it, or it can start adding value by saving us costs, reducing costs, etc.. as fast as possible.

Respect People – The 5 values of scrum (commitment, courage, focus, openness and respect) help build trust within the team and the scrum team members are expected to learn and explore these values as they work with the scrum roles, events and artifacts. However, a common observation is about how most important decisions are taken outside the team that have a direct impact on the team. Simply put, decisions are taken away from the where the work happens.

Another challenge for teams is the issue of psychological safety. In the lean world, respect is all about developing and empowering the people and trusting them to do the right thing. Lean talks about this idea of a “Gemba”, which refers to the process of leaders going and observing where then works happens, conducting enquiries and identifying counter measures for problem solving along with the team.

Lean also encourages respect for people by communicating proactively and effectively, encouraging healthy conflict, surfacing any work-related issues as a team, and empowering each other to do their best work.

Optimize the Whole – Sub-optimization is a serious issue in software development. Mary and Tom point to 2 critical reasons behind the sub-optimization. First is where developers release sloppy code for the sake of speed and second is the long cycle time that is created between developers and testers as a result of handoffs.

Leans suggests use of value stream mapping to design, produce, and deliver a product or service to customer. After identifying how value flows through their teams, many organizations decide to organize their software development teams to be complete, multi-disciplined, co-located product teams, which enables them to have everything they need to deliver a request from start to finish, without reference to other teams.

***

Scrum is a framework which means it is an essential supporting structure or the basic structure underlying a system. Teams that are comfortable with scrum and achieve the expected outcomes can apply the mentioned principles are various levels to quickly transform themselves into a high performing team.

Regardless of which framework the team chooses to adopt, it’s important to understand the principles behind the method in order to ensure a sustainable, disciplined practice. If your team is doing Scrum but is not consciously implementing agile and/or lean principles, the outcomes can be slow and the journey long.

 

 

 

 

My podcast interview about Agile, Scrum and the Scrum Master role

podcast-istock

Image courtesy: cbc.ca

I am excited to share my latest podcast interview with Vasco Duarte where we discuss about agile and Scrum and get into details about the Scrum Master role all through this week. This podcast was recorded for the site http://scrum-master-toolbox.com/ to discuss various topics around challenges related to the Scrum Master role, some anti patterns to Scrum, change leadership, measurements of success for Scrum Masters and agile culture and mindset.

First 2 episodes are live now. Don’t forget to watch the upcoming 3 episodes (Wednesday through Friday) this week.

Please provide your feedback on the podcast, leave comments and like. Also reach out for any questions or if you would like to record a podcast for your site.

1463196442815

Scrum, the solution to all problems

improving_scrum

If you are someone who has had limited or no success with Scrum and the title of this post forced you this way, well, I have met my first objective.

Last couple of years I have had an opportunity to connect with multiple teams that have been doing Scrum but have had very limited or no success with it. What I hear most frequently is “this does not work for us”. Further analyzing the data talking to these teams, some very specific reasons surfaced and I am listing them below:

1. Too much focus on Scrum “process” – The biggest reason why teams are unable to derive any benefits from Scrum is because they look at it strictly as a process. Scrum is a methodology but every single aspect of Scrum has very specific objectives. However; most teams are seen going through the motions without necessarily fully understanding the objectives and benefits of all Scrum artifacts and ceremonies.

2. Not doing Scrum right – Scrum is intended to be done in a specific way. Talking about the “Shu-ha-ri” approach to Scrum, the teams are initially expected to follow the rules of Scrum, however; teams start to make changes to it to often to suit their environments and projects which for obvious reasons reduces the effectiveness. Changing the frequency of ceremonies, micromanaging the team, forcing teams to deliver defined velocity and to dates instead of value etc.. are most common anti patterns that have been observed.

titel

3. Fear of being exposed – Scrum is not designed to solve any problems, however; Scrum is designed to expose problems as early as possible with the belief that teams will be able to address them. Inability to produce incremental value for business, inability to measure business value, not having a well defined backlog, carrying work over from sprint to sprint, and many more of these data points expose teams ability to plan, execute and deviating their focus from the three pillars of Scrum (transparency, inspection and adaptation).

4. No slack time – There have been very specific areas where teams enjoyed huge slack periods due to the phased approach to software development. Teams would develop code and then sit back for defects to be identified or environments to be refreshed thus giving teams slack periods. In enforcing the need to deliver value continuously, Scrum and other agile methods have forced the team to be on their toes all the time. This obviously makes people uncomfortable and increases the risk of them getting exposed.

5. Resistance to change – Analyzing the previous points, it all boils down to the fact that the failure of Scrum can be attributed to the resistance to change. Companies, teams and individuals are not willing to change even if their current processes are not working. The possibility of getting exposed or the pressure to get out of their comfort zone brings the resistance to agile and Scrum.

The mindset

As you might have heard before, agile/scrum is not a process but a mindset and needs a completely fresh approach to how problems are identified and solutions are arrived.

I read an interesting analogy about Scrum and the impact of not doing right. Trying to make your grandmother’s recipe of Carrot cake, if you make your own decisions instead of following the exact recipe, you cannot expect your cake to taste like your grandmother’s. In the same way, Scrum needs to be done as prescribed before teams can start experimenting with it.

Having spoken to hundreds of team and maybe thousands of individuals, the observation is that companies are not doing Scrum. At best they were doing waterfall with iterations. The idea of continuous improvement does not seem to exist and this is a serious problem.

I love how Philip Grove, CEO at Confluex puts it:

  • Scrum is like whitewater rafting. The rafting team members each have a job, they know how to perform it, and they know the team’s short term goals very well – “get beyond the first rapids.” They vaguely understand the approximate long term goal – “Get to the end of the river.” And, they know they have to work together, and help each other succeed. Finally, they know that everything else is pretty much going to change. The rocks aren’t always in the same plae, the rapids are moving faster, a log is floating alongside the boat. The team has to pull their strengths to get through, and make collective changes along the way.
  • Waterfall project teams are military ships with a crew, a captain, a detailed set of orders, and an admiral relaying changes from command.
  • Scrummerfall is taking that rafting team, with a captain, the orders, and the admiral relaying changes. This is a recipe for failure.

Post Script

Companies need to create a culture where failures are not necessarily looked as a sin but what you learn from your failures if of paramount importance. This will help create an environment where the three pillars of Scrum (transparency, inspection and adaptation) will help create a very strong foundation for continuous success.