Agile Advisor

How Should Agile Respond to Customers?

Why it's both necessary -- and dangerous -- to listen to your customers.

How do you know you're building the right product? That is, how do you know that the value  your team is producing each sprint (iteration) is actually the correct bit of value? If you've read Clayton's Christensen's book The Innovator's Dilemma, you probably know where I'm going with this article. If you haven't, I'd highly recommend the book. Why? Because Christensen outlines a trap many organizations fall into when they do what seems very natural; that is, they listen to their customers.

There's a common saying most of us love to throw around: "The customer is always right". Said differently, a company should put customers first. When they do, they'll be successful. It's a great statement and one that rings true in many industries. Restaurants, hotels, clothing stores, and other similar industries go out of their way to ensure that their customers feel appreciated and feel loved. It keeps customers coming back, and it's an easy way to differentiate from competitors.

How does this relate to software? Well, it relates in the way we engage with the customers of our own products. I often tell others that as a product owner, my job is to first listen to what customers want; and ultimately build them what they need. It's a fine line to walk, but it's an important one.

My existing customers will no doubt lead me to making my product incrementally better. They'll tell me about the rough edges I can smooth over and they'll push me to discover new scenarios I can support. But my existing customers will rarely help me recognize something new or disruptive in the market.

You can see why I call this the product owner's dilemma. Agile teaches us that we need to be collaborating with customers throughout the software development lifecycle. Engaging customers is critical to our ability to deliver value that meets their needs. This is all true and something I fundamentally believe in. The dilemma lies in the fact that while listening to and engaging with customers, a product owner must also carefully watch and analyze the landscape of the market. He or she must pay attention to new and disruptive products and/or technologies that present threats, and be prepared to make hard decisions about items on the backlog.

I often tell people that a good portion of my job is apologizing to and empathizing with customers about things we're not building. It's often difficult, but it's absolutely necessary: A decision to not do something is just as important as a decision to build something new. It's a bit of a backwards approach to thinking about value, but it's true.

If you're a product owner, you might ask yourself: Are just improving your existing products?  Or are you paying attention to what's going outside your product, and looking for that next disruptive technology that could turn your industry or market upside down?  It's the product owner's dilemma.

About the Author

Aaron Bjork is a Principal Program Manager at Microsoft working on Agile experiences and tooling within Team Foundation Server (TFS). Prior to joining TFS in 2008, Bjork worked as a software engineer and development lead in Visual Studio. He is passionate about Application Lifecycle Management solutions and has a strong desire to see teams improve their software engineering practices. Follow Bjork on his blog at blogs.msdn.com/aaronbjork.

comments powered by Disqus

Featured

  • Hands On: New VS Code Insiders Build Creates Web Page from Image in Seconds

    New Vision support with GitHub Copilot in the latest Visual Studio Code Insiders build takes a user-supplied mockup image and creates a web page from it in seconds, handling all the HTML and CSS.

  • Naive Bayes Regression Using C#

    Dr. James McCaffrey from Microsoft Research presents a complete end-to-end demonstration of the naive Bayes regression technique, where the goal is to predict a single numeric value. Compared to other machine learning regression techniques, naive Bayes regression is usually less accurate, but is simple, easy to implement and customize, works on both large and small datasets, is highly interpretable, and doesn't require tuning any hyperparameters.

  • VS Code Copilot Previews New GPT-4o AI Code Completion Model

    The 4o upgrade includes additional training on more than 275,000 high-quality public repositories in over 30 popular programming languages, said Microsoft-owned GitHub, which created the original "AI pair programmer" years ago.

  • Microsoft's Rust Embrace Continues with Azure SDK Beta

    "Rust's strong type system and ownership model help prevent common programming errors such as null pointer dereferencing and buffer overflows, leading to more secure and stable code."

  • Xcode IDE from Microsoft Archrival Apple Gets Copilot AI

    Just after expanding the reach of its Copilot AI coding assistant to the open-source Eclipse IDE, Microsoft showcased how it's going even further, providing details about a preview version for the Xcode IDE from archrival Apple.

Subscribe on YouTube

Upcoming Training Events