Agile has been around for nearly two decades now, and just like most things in life that we come to accept, it is starting to be taken for granted. It seems that somewhere along the way, the Agile approach has lost its mojo.
“A lot of teams have been going through the motions and keeping the rituals because ‘that’s what we’ve always done.’ Instead of looking at why they started doing something or how it adds value to keep using a practice or framework, the team has gone on auto-pilot,” said Dominic Price, head of R&D for software development company Atlassian.
The problem is that Agile should not just be something you do. It should be the driving force behind your business and why you exist, according to Zubin Irani, CEO of Agile consulting company cPrime. “When Agile becomes a goal, it becomes disconnected with the goals of the business, and that’s where it can start to feel stale,” he said.
What tends to happen when you have a lack of purpose is the things that you once implemented to help you move faster and deliver better start to become a roadblock to progress and success, according to Price. For example, “the Kanban boards have become a tool of the micromanager, or the daily standup has become a place to vent frustrations instead of sharing and removing blockers,” he explained.
Agile by definition means the ability to move quickly and easily, but it should mean more than that to a business. Agile involves removing delays and bottlenecks, being more efficient, getting customer feedback fast, adapting to change, and constantly improving. If you are only focused on the velocity part of it, things will start to fall apart, according to Shannon Mason, vice president and product manager for CA Agile Central, a Agile software provider.
“I am using the term Agile less and less in my conversations and I am having more conversations with organizations around evaluating the way they work, and how they are trying to change those ways of working to be more modern, responsive and adaptive,” she said.
But how can you tell if things are falling apart and Agile is becoming stale of stagnant within your business? Stop and ask yourself what are your objectives and how are you tracking the results of those objectives, according to Atlassian’s Price. “Do people frequently no-show to your weekly meetings? Do projects languish in your ticketing system? Are you delivering reports that nobody reads? Are you going through all the rituals, but not feeling any better or faster?,” he asked.
Price experienced Agile going stale in one of his own teams when they became too busy to fill out reports on objectives and key results. “Months later, nobody asked what objectives we’d set, how we were tracking on our key results,” he explained. “So the next quarter, we just didn’t do them, and again, nobody noticed. It turns out that at that time, this initiative had become stale, and people were just going through the motions. If you take a look at your boards and meetings and project status updates, what insights are you gaining that lead to actions? If you’re just sharing words every week but never changing your behavior, you’re stagnating.”
The four values of the Agile Manifesto
David DeWolf, founder and CEO of 3Pillar Global, a software development company, explained that businesses find themselves stuck because they have lost sight of have lost sight of the true meaning of Agile and why the movement started in the first place.
When we become too focused on just doing Agile for the sake of doing Agile, we become too focused on executing on practices that are defined as Agile practices without remembering why they are good Agile practices in the first place, 3Pillars’ DeWolf explained. “Without understanding the values of Agile, you won’t be able to deliver on the promise of flexibility and react to change as you hoped for,” he said.
To get back to its core meaning, he suggested revisiting the Agile Manifesto. While the four principles have been around since 2001 and are widely known, they are often overlooked.
“If we go back and look at the manifesto, it was supposed to be something that was at the center of everything we do, but it hasn’t been,” said Shannon Mason, vice president of product management for CA Agile Central, an Agile software provider. “What does it look like to truly have the user or different types of personas we serve at the center of our decisions when we are making product application decisions and choices versus just doing everything on a whim or using out gut to make decisions.”
As a reminder, the Agile Manifesto states:
“We are uncovering better ways of developing software by doing it and helping others do it. Through this work we have come to value:
- Individuals and interactions over processes and tools
- Working software over comprehensive documentation
- Customer collaboration over contract negotiation
- Responding to change over following a plan
That is, while there is value in the items on the right, we value the items on the left more.”
How to avoid stale Agile
As the software industry constantly evolves, so must the approaches we use to build software. With Agile still as the underlying motivator, businesses have come up with a number of new and modern ways to approach delivering software:
Back to the basics: It is not a new concept, but it is good to go back to the basics to make sure you understand the values and tenets of Agile. For instance, Agile isn’t just about moving faster, it is about putting the customer at the center of all your decisions, choices and thinking, CA’s Mason explained.
Remember to start small, get it right and leverage that small team as an example for the rest of the organization, according to DeWolf. “Be nimble. Start small. Instead of trying to turn the crew ship, turn the little boat,” he said. Get a team up and running that truly understands the values, buys into the principles, and then put the practices into play, he explained.
In addition, establish clear objectives, according to Andrey Mihailenko, co-founder and co-CEO of Targetprocess, a project management software provider. “Put team members together in the same room, at the same time and actually have an open conversation regularly about how well the business is doing,” he said.
Outcomes versus outputs: Measure the results or business values, not just the amount or speed of software you produced, according to Mason. To do this, focus on metrics and understand what those metrics mean in terms of the business. If you are truly looking at people over process, what does your customer satisfaction look like, how much feedback are you receiving, and are you building the right things, according to cPrime’s Irani.
Focus more on the leading indicators rather than the lagging indicators, Mason explained. Focus on the flow of value to customers, not the projects delivered and deadlines. Leading indicators can sometimes lead you to predict lagging, long-term indicators, she added.
Business agility: Business agility or product agility also relates to outcomes versus outputs. In product agility, you are not focusing so much on the velocity, you are focusing more on what you are building, Irani explained. “If you build the right thing, you are more likely to be a successful business,” he said. “People are very focused on velocity and output, and they are not focused on the quality of that ot the business impact. We are not doing Agile to do Agile. We are doing Agile to solve a business problem or take advantage of business opportunities,” he said.
Value Stream Management: In order to achieve business agility, you need everyone from the business stakeholders all the way down to the task owners, developers, and testers to have a clear understanding of what they are working on and why. In order to successfully achieve that clear understanding, you need to have value stream management in place. Value stream management includes all the potential bottlenecks, ability to identify them, and the ability to reduce any potential delays, according to Targetprocess’ Mihailenko. “It is about the ability to integrate everyone and provide visibility into how the value flows form an organization, from an requirement all the way to the customer,” he said. “The more flexible the system of tracking bottlenecks and visualizing values and dependencies between teams and businesses, the more you can see things better and manage things better. Turn your workflow into one well organized system.”
Continuous delivery: Mark Curphey, vice president of strategy at CA Veracode, a software security company sees organizations focusing more on continuous delivery than Agile, which is being able to focus on delivering software in small executable chunks quickly. “The reality is it is just small batches, and trying to move as much from left to right as possible in a way that is consistent and predictable, and all the things Agile gave us, but it is really taking it to the extreme. Small batch may be a couple hours worth of work or it could be a day’s worth of work,” he said.
Artificial intelligence: AI is the perfect technology to be applied to things like Agile and DevOps, according to Michael Wolf, managing director for modern delivery at KPMG, a professional advisory company. Today, you are building something that is highly data driven and needs to be able to evolve, change and roll out in a systematic way quickly. This can be very daunting to do at human scale when you add in code reviews and testing, he explained. “Much like mobile was the industry motivator for web services and what we use to call SOA, I would say AI is the perfect storm motivator for DevOps, microservices, cloud and Agile,” Wolf said. “If you are going to respond to change faster enough, you have to be able to keep up.”
The Four L’s: Instead of doing formal retrospectives, Atlassian’s Price suggests taking note of what is loved, loathed, long for and learned. “At the end of each quarter, I go through my schedule and projects and think about each of these items. From there, it’s clear what you should keep doing and what you should stop doing. The key is not letting the lists get out of hand. For example, I don’t get to pursue a ‘longed for’ until I’ve removed a ‘loathe,’” he said.
Agile is not a transformation program, but a constant evolution, Price explained. “Change and adopting is the norm. Don’t make it a project. Make it a way of working,” he said.
<SIDEBAR>The DevOps connection
Another reason the Agile movement can dry out within a business is because it is treated as a separate entity from a number of different approaches the business is implementing. In a modern delivery world, things like Agile, DevOps, microservices, cloud, product management divine thinking, and lean finance are all connected, according to Michael Wolf, managing director for modern delivery at KPMG. “People get frustrated with Agile because they are not seeing the big picture,” he said. “If these things are disconnected, then you end up becoming disenfranchised.”
According to cPrime’s Irani, DevOps is the missing piece to most Agile initiatives. “A lot of Agile is around organization how you move Agile, but to actually have the tools and automation to take advantage of these great cloud technologies, you really have to rebuild and rethink how you get code from a developer’s computer intro a production environment, and how you support that code. That is where DevOps comes in,” he said.
DevOps also really enables the cross-functional teams Agile builds success off of. Within Agile, you bring the developer and tester together through roles like the Scrum Master and product owner, but then when you add DevOps into the equation you add the operations person to the team as well, Irani explained.
The problem, however, is DevOps is often misunderstood because it’s a movement or concept, meaning there is less prescription around it than Agile and that causes a lot of people to interpret it a lot of different ways, according to Mark Curphey, vice president of strategy at CA Veracode, a software security company. Whereas with Agile, the manifesto provided clear guidelines and ideas on what the principles and values of Agile were, and how to get started, Curphey explained.
A recent report from CA Technologies found 75 percent of respondents believe Agile and DevOps approaches drive business success when implemented together, however only a small proportion have been able to reach true DevOps agility. This is because of culture, skills, investment and leadership. In order to improve effectiveness, CA explained the culture of the organization need to be improved to encourage and reward collaboration, more support from management at all levels need to be added, and additional training and resources need to be provided to help improve Agile and DevOps together.
“The pressure is on to make all parts of an organization as flexible as possible when responding to changing customer demands, user expectations, regulatory changes and – most important of all – market opportunities,” said Ayman Sayed, president and chief product officer, CA Technologies. “Business leaders need to be aggressive and intentional about driving adoption of agile and DevOps within their organizations. The success of their business depends on it.”
Think before you scale
Agile at the team level is pretty widely understood by now. One of the main issues Agile is facing is when business find success within teams and then tries to scale it before they are ready. Then, you just have stale Agile at scale. Agile at the team level and Agile at scale are very different beasts, explained Mihailenko of Targetprocess.
Many of the problems Mihailenko sees is businesses scale before their culture is ready or before program management has been figured out, so they then have to descale and restart, which wastes time and money. “A lot of the time it is just the poor lack of visibility and communication for the business goals, and the lack of constant collaboration with business stakeholders,” said Mihailenko. “There is still a lot of work to be done around a clear understanding of what business agility is, and how to make companies more Agile and adopt the culture not just on a team level, but company wide. How do you break down the silos and really have open collaboration, feedback and focus on constant delivery of value to the customer.”
Some ways to address this is to have good value stream or program management in place, Mihailenko explained. Without clear alignment, teams tend to operate as separate units, and make the mistake of pulling from the wrong backlog. With clearly defined program management in place, program managers can coordinate work across multiple times, have reguarily time boxes for planning events and integration events across teams, and provide a regular cadence so everyone is working together around a common immediate value.
In addition, Mihailenko said there needs to be all hands-on meetings where businesses present their own vision to developers and teams and have an open discussion of what is preventing them from meeting those objectives. “Are we clear on the vision? What are we actually trying to do? Do we have the culture of actually working together and collaborating across all aspects? Can we commit? Do we have a place where we can really visualize what we are working on and react when we things are wrong? Have we really embraced this lean system thinking for the entire company? Does everyone really understand what that means for us?” Mihailenko asked.
“A deep understanding of what it means to be Agile as a company, and a focus on constant feedback and collaboration needs to be within the business’ DNA,” he said
The latest version of the Scaled Agile Framework (SAFe) was recently released and aims to address some of the scaling difficulties facing the enterprise. SAFe 4.6 includes five core competencies of the Lean Enterprise. “They are now the primary lens for understanding and implementing SAFe. Mastery of these five competencies enables enterprises to successfully navigate digital disruption and to effectively respond to volatile market conditions, changing customer needs, and emerging technologies,” Scaled Agile, provider of SAFe, wrote.
The five core competencies are:
- Lean-Agile leadership, which describes how leaders and drive and sustain organization change.
- Team and technical agility, which describes the skills, principles and practices needed to create and support high-performing teams.
- DevOps and Release on Demand, which describes the principles and practices of DevOps within the enterprise.
- Business solutions and lean systems, which explains how enterprises can develop large and complex software using a lean, Agile and flow-based model.
- Lean portfolio management, which explains how an enterprise can implement lean approaches to its strategy and investment funding.
from SD Times https://ift.tt/2QtFFCa