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.

 

 

 

 

Questions to ask to Kick Start Agile Adoption – Part I of II

Screen Shot 2018-03-06 at 12.30.29 PM

As a consultant coach, each client engagement is a learning experience and a great opportunity to gather these learnings and come up with an improved and effective way of providing enhanced value. While each client is unique in many ways, there are questions that need to be asked at the front end of an engagement to help the client in better decision making.

This checklist is based purely on my personal experience and the application of these suggestions should be done on a case by case basis. For me personally, this checklist should be looked at very early, in some cases before signing a contract to helps build trust and sets the stage for a more engaging partnership. So, here you go:

Establish Vision and Create Alignment – Is there a clear vision for the impact we are trying to create with the move to agile? Alignment is a term mentioned in almost all of the posts that I have written so far and it continues to be the single most important aspect of any successful initiative. One of the most important questions for me to ask the client as I walk in is “Why agile? What problem are we trying to solve with agile?”. It is important that the expectation is clearly understood. In some cases, a facilitated conversation can help the client come up with an answer. Geese-iStock-small

The timing of this discussion is important too. If a consulting engagement starts without the objectives or intent, the partnership can turn sour pretty fast. A shared understanding of the vision can go a long way in building trust and lead to meaningful conversations and articulating of a roadmap to get there.

Inspire change, top-down How will leadership INSPIRE and ENABLE agility? Almost every single time during my first few interactions with the client (someone who is going to pay for my services), there is a feeling about the manager highlighting the need for agility for a certain part of the organization. At no point have I heard a client start with asking a question “How can I partner in enabling agility?”. It comes across as agility being something that is expected but not practiced.

Inspire-LogopngPeter Block in his book titled Flawless Consulting talks extensively about contracts. I treat it more as “terms of agreement” where I like to encourage the client to have some skin in the game in order to become catalysts and enablers of agility. This agreement is extremely important to arrive as early as possible.

A symptom where the leaders/managers check themselves out from training or workshops or are not involved in the earlier adoption activities is an early warning sign that the leader is looking at agility to be limited to the team or it may also be a sigh of resistance towards change.

The fact that leadership is enabling and driving agility and is creating an environment where the teams can afford to experiment and fail, helps creates an ideal environment for change.

Let Business Drive Agility Does the business understand agility and what this change will mean for them?  Business agility drives success or failure of every agile adoption effort. The ability of a Product Owner to think strategically and support through collaborative tactical activities makes the role indispensable.

6a0133f5884316970b019b0006ad3e970dThe biggest beneficiary of every agile adoption is business and its customers. An agile setup that works for a business that lacks vision, strategy and a roadmap to achieve the end goal is a meaningless setup. It is critical for a business to drive agility by creating business alignment and ensuring all interested parties understand what is achievable in the short and long term. A business that is able to create an interest in a problem and a passion to develop a solution and, ensures value delivery in changing market conditions through the right engagement of all stakeholders (business and engineering) becomes an enabler for organizational agility. The absence of business agility will lead to frustrated customers, value deprived outcomes and, non-motivated team members.

Structural ChangesAre we open to structural changes (feature teams, roles, management, business etc..)? A common pattern that eliminates the impact of the agile way of working or specifically using Scrum is the resistance to make any structural changes. This results in organizations trying to force fit the new process into existing structures resulting in the process losing its impact.

round_hole_square_peg_6617There is a reason why agile produces best results for organizations that are less complicated, have self-organizing and cross-functional feature teams that can own and deliver incremental business capabilities. By not committing to making the needed structural changes, it is pretty much like trying to fit a square peg into a round hole. Having a clear understanding of structural changes are possible or not, will help organizations avoid the effort of making agility work on a nonagile setup.

Partial Agility is no AgilityHow are we planning to provide the supporting structures that encourage and enable agility? A common impediment in the way of teams that are trying to adapt to agile methods are the surrounding nonagile aspects of the organization. These include (but are not limited to) project planning and funding methods, hiring and sourcing practices, progress tracking, management and leadership styles and more. Trying to exist in such nonagile environment, a team will end up getting distracted leading to frustration and ultimately getting into the “this will not work for us” mindset.

Special attention needs to be paid to certain critical organizational aspects that will act as a support system to implement the change and show an incremental success. This may lead to some parts to support two distinct working models but this is generally a temporary state with handsome payback in the long run.

In the next part, we will look at some more powerful questions that should be asked at the front end of any agile adoption. Until then, be agile….