The only things we can reliably expect in this world are death, taxes, and lots of change. #Change occurs within every aspect of our lives and we humans tend to resist it, which is why there are hundreds of books and at least one course on adapting to change. However, that does not mean we cannot overcome the challenges that are associated with change. We can become more #agile in our practices, processes, and expectations so that we are able to adapt more quickly, respond with minimal delay, and deliver higher quality products to our customers that provide greater value and satisfaction.
We also must understand that the customer does not always know what they want. They may have one problem today but need something slightly different before the solution is complete. By welcoming changing requirements from our customers or stakeholders, even late in the process, we show our customers we are adaptive to their changing needs and an organization that is truly about service and value.
Traditional approaches to product development are often change adverse. Highly detailed and documented plans and designs are made before development begins and are often set in stone regardless of feedback or findings. It may be months before anything of value can be delivered to the customer and may no longer meet the needs of the customer – often the value has become greatly deteriorated. In most cases in today’s highly technological world, the longer we take to deliver a solution, the less valuable it becomes; the less responsive we can be to the changing landscape, the more likely we are to become irrelevant and shuttered.
Agile principles and practices support changing requirements, markets, and customer needs. Agility enables ongoing opportunities and responsiveness to competitive threats. Practicing Agile effectively will improve and speed the delivery of valuable products and services to your customers. The adoption and application of agile principles will be what differentiate successful companies now and long into the future.
Fix Requirements Over Time
When we spend days, weeks, and even months negotiating contracts with our customers we are wasting valuable time. Oftentimes, the requirements and/or problems they need us to solve have already changed by the time development of a solution begins. Instead, fix as little up front as possible and let the solution emerge over time. Agree on a short list of requirements to lock in early and allow variations of the features to be previewed and delivered to our customers and stakeholders for continuous feedback. As more components and features of the solution identify as desirable and valuable by our customers, we then continue to fix further requirements until the solution is complete. Over time, the emergence of the solution will fit far better than one that may have been agreeable up front.
Furthermore, in doing so, as our customers and business needs and priorities change, we will have sunk less effort and money into what could turn out to be the wrong solution. Being adaptive has allowed us to quickly shift and maximize value delivery.
Learn from Incremental Delivery & Fast Feedback
We can and should learn from the process, extracting value from it at every opportunity. Therefore, we should also look to break our solutions down into much smaller units of value. In doing so, we enable our organization to continuously release value to our customers incrementally, and extract value from those things delivered immediately. We gain feedback from them and continuously expand and improve the experiences they are getting from those solutions. While everything is constantly changing, change has now enabled greater value to both our customers and our organizations.
As we continuously gain and provide feedback to our customers, we are learning from each other. Our customers can better understand our limitations, and we can better understand their expectations. Doing so will set the stage for realistic and timely delivery.
If you have ever had a customer with unrealistic expectations or been part of an organization that consistently overcommits and underdelivers, you know it is not a recipe for success. We must change our culture to be one of continuous improvement that is focused on more alignment between commitments and delivery.
Change Happens, but Don’t Make it Daily
Product management is constantly monitoring the market, customer feedback, and other factors which could influence a solutions direction. When actionable insights are uncovered, plans are adjusted to better serve customer and business needs; priorities are changed. As such, product needs to manage the expectations of executive stakeholders appropriately and ensure they understand why the changes are necessary, and the impacts those changes could have to delivery. The more things change, the more potential impacts those changes will have.
So how much change is too much?
Beyond the communication that should occur across the enterprise, strategic themes and roadmaps are reviewed, adjusted, and shared on a regular cadence to reflect any changes in direction. Changes to a portfolio often occur two to four times annually across a value stream, while direction at the team level, on a specific product, could change far more frequently – perhaps iteratively or even more often.
While not all changes will occur on cadence, most can. We want to stay out of the habit of changing the teams work every day, and preferably every iteration. Ideally, product management foresees changes coming, months in advance, allowing for teams and value streams to effectively plan their work without the expectation for constant shifts in direction. Change can be a good thing, but as we all know, moderation is key, and you can have too much of a good thing. If we change something every day, we may get better, but we may also burn ourselves out.
So as a best practice, try to manage change to land on iteration boundaries as much as possible. In doing so, teams will not need to task switch mid iteration, allowing them to focus on their committed delivery of value. Additionally, managing change frequency enables the changes to encompass the feedback of our customers and stakeholders, after our work has been reviewed, and helps us in understanding and coordinating all the changes simultaneously – during refinement and planning.
Refinement is Critical to Managing Change
Understanding the true nature of the work and what is expected must be forefront in everyone’s minds. Unfortunately, too often we accept work into our backlog that is poorly defined and may have so many unknown variables that to begin it is an exercise in rework.
We should never begin building something when we don’t even understand what it is we are trying to build. In that case, if we had, change would be inevitable and far to frequent, resulting in many of the challenges one would expect (scope creep, cost overruns, missed milestones and contractual obligations, etc.).
Product Management must do their part to fully understand, and elaborate customer and business needs so that the work can be clearly understood. It is not expected that product owners and managers tell the teams how to build the solutions, rather they must simply tell them what the expectations of those solutions are, and will be, in the form of acceptance criteria and a well-defined definition of done. Without clarity into the definition of the work the teams may build the wrong things.
Instead, teams need to review the solutions description to ensure it is fully understood, in most cases, before ever beginning the work – after all we are trying to develop something of value. When they review the work, team members must feel comfortable and safe enough to ask questions and get the clarification necessary; communication and collaboration between Product Management and the development teams is critical to success. When they begin developing the solution, change may occur as we gain and incorporate feedback, however, that change will be based on an increased value proposition rather than misinformation or a lack of any clear definition of the product to be developed.
Refinement activities are critical to the success of any great value stream. Team members and Product Management need to come together, regularly, to ensure they have clear understanding and expectations of what is to be developed and how much effort it will take. While changes will certainly occur, and definitions may change with time, the goal should be to define just enough so that those changes can be managed successfully.
Summary
In this technology driven world where change is inevitable, nobody can really predict what every requirement of a product will be. Yet, somehow, businesses do not like surprises and want to control as much as possible to maximize their hypothetical return. Change is avoided, yet somehow is a constant part of the daily grind.
So instead of spending money on something that has become irrelevant we welcome change. We then provide our customers a great product, with a competitive advantage, that satisfies the current and latest needs, not outdated ones. We change with the times and ride the tides of change as they are frequent and necessary.
The fact that the world is constantly changing is an inescapable truth. Instead of trying to stop or slow down progress and live in the past, we must embrace the change and use it to our or our customer’s advantage. Managed effectively, change will become far more welcome.