Agile Advisor

The Product Owner's Dilemma

Agile Advisor columnist Aaron Bjork talks about why it’s both necessary and dangerous to listen to your customers.

How do you know that your Agile team is building the right product? That the value that your team is producing each sprint (iteration), is actually the correct assessment? If you’ve read Clayton 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 product owners do what seems natural –they listen to their customers.

There’s a common saying that many organizations love to throw around– the customer is always right. Said differently, a company should put customers first. It’s a great statement and one that rings true in many industries. Restaurants, hotels, clothing stores, and other industries go to great lengths to ensure that their customers feel appreciated and loved. This keeps customers coming back, and it’s an easy way to differentiate your company's services from those of your competitors.

How does this relate to software? I often tell others that as a product owner, my job is to first listen to what customers want, and then 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.

Disruptive Technology
You can see why I call this the product owner’s dilemma. Agile teaches developers that they need to be collaborating with customers throughout the software development lifecycle. Engaging customers is critical to your 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 market landscape. As a product owner, you must pay attention to new, disruptive products 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 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 you just improving on existing products? Or are you paying attention to what’s going on outside of your own 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

  • How to Create a Machine Learning Decision Tree Classifier Using C#

    After earlier explaining how to compute disorder and split data in his exploration of machine learning decision tree classifiers, resident data scientist Dr. James McCaffrey of Microsoft Research now shows how to use the splitting and disorder code to create a working decision tree classifier.

  • Microsoft: Move from Traditional ASP.NET to 'Core' Requires 'Heavy Lifting'

    There are plenty of reasons to move traditional ASP.NET web apps -- part of the old .NET Framework -- to the new cross-platform direction, ASP.NET Core, but beware it will require some "heavy lifting," Microsoft says.

  • Purple Blue Nebula Graphic

    How to Compute Disorder for Machine Learning Decision Trees Using C#

    Using a decision tree classifier from a machine learning library is often awkward because it usually must be customized and library decision trees have many complex supporting functions, says resident data scientist Dr. James McCaffrey, so when he needs a decision tree classifier, he always creates one from scratch. Here's how.

  • Blazor's Future: gRPC Is Key

    Blazor guru Steve Sanderson detailed what Microsoft is thinking about the future of the revolutionary project that enables .NET-based web development using C# instead of JavaScript, explaining how gRPC is key, along with a new way of testing and a scheme for installable desktop apps.

  • Don't Do It All Yourself: Exploiting gRPC Well Known Types in .NET Core

    If you're creating business services that send dates and decimal data then you may be concerned that gRPC services don't support the relevant data types. Don't Panic! There are solutions. Here's how to use them.

.NET Insight

Sign up for our newsletter.

Terms and Privacy Policy consent

I agree to this site's Privacy Policy.

Upcoming Events