Get a 20/20 vision for your product
A good product vision is the cornerstone for being successful at delivering software products1. Having a product vision that is tangible and accepted by your developers is one of the most important things to have, if teams are supposed to work in an empowered and self-organized way. A vision is not just a good advertising tool, but it is the foundation to creating a purpose for everyone’s alignment towards what the product shall be. It is a pathological pattern, that companies that struggle with creating good product or company visions, find it very hard to create alignment and motivation in those employees who are building and delivering their products.
Why you need a good vision
Each feature we deliver should bring us a step closer to the vision. So if we do not have a clear and consistent vision, chances are that we deliver features all over the place and end up with products that have an inconsistent feel to them. When working in an agile manner this becomes even more important, as an essential factor for doing successful agile development is to build a common alignment and foster autonomy. Empowering teams to be autonomous without alignment will have people running off into different directions.
There are lots of articles and studies out there that say that having a purpose is one of the biggest factor to motivate people to do good work. A good vision is a tangible way to give such a purpose form. If the vision is non-existent or not tangible enough, people will find it very hard time to intrinsically motivate themselves to reach a common goal. This common goal is an important basis for unlocking other benefits of agile development such as fast decision making and producing in a value-driven way.
A good vision - John Deere
Good visions are vivid enough to become almost physically tangible. The word “vision” itself comes from the Latin “visere” which means “seeing” and that is a very good description of what is the main aspect of a vision. People should be able to “see” it - at least in a metaphorical way.
As an example, let’s look at John Deere’s excellent video about their product vision. In it we see a farmer who controls his agricultural operation from a futuristic interactive office and when he heads out he does the same from his mobile phone. Gone are the days of guessing the weather and other things an when farming was mainly backbreaking, hard labor. Although we might not agree that this is a vision to pursue, it is a very clear statement on where the company John Deere wants to go. It is no longer going to be just a manufacturer of tractors, but a provider of an end-to-end farming solution.
A first version of the vision might have been: “We want to build a tractor that does is fully automated and connected to the cloud so farming becomes a data-driven operation”. This is essentially saying the same as what is shown in the video but it is not yet good enough. By simply putting that into a narrative such as “With our farming solution the farmer to get up in the morning, checks the weather, irrigation status and other things relevant their smart office and from there direct their tractors to do the work best suited for the days needs.” It becomes a proper (although minimal) vision. Add a few more details and the vision becomes very lively. The fancy video is just a nice way of presenting that.
View it from the other side
What John Deere did with their vision, was to take the focus away from the product and focus it on their users. By doing so they changed the topic from what they wanted to build (a fully automated tractor connected to the cloud) to what problem they wanted to solve: “helping farmers to process the information in their very complex environment better to make better decisions, yielding in better farming output.”
The vision also shifts of what John Deeres defines as their product. It is no longer only a fancy tractor but an end-to-end solution from processing information up to the autonomous tractor and various appliances on the field. A good vision is shaping and defining the product, not the other way around. The vision becomes even more powerful by highlighting what is not obvious but focusing on things behind the immediate horizon. Thinking of “John Deere” as tractors is obvious. Thinking of “John Deere” as a data provider is not. The obvious is often just a fancy way to say “we are here” while the not-so-obvious is a statement of “we want to go there”.
Commit to the vision
The most important point in having an implementable vision is to commit to it. One of the easiest ways to signal that commitment is to make the vision publicly visible. Going public does not necessarily mean to put your vision on youtube and advertise it on TV. Choose whatever is fitting for your product and circumstances. For products not available for the general public, publishing a vision might take an entirely other form. Even if the vision is not made fully public, being prepared to do so is a good sign that a vision is mature and commitable enough. Good signs that this is the case are if visualizing your vision as a drawing or video is easy. If this is easy this means your vision is tangible enough and if many people in your company produce similar drawings there is a consistent communication about what your vision is.
No matter how the communication works, being committed and getting the buy in from the people building this vision is essential. The buy-in also serves as a good measurement about the quality of the vision. If you find it hard to get the people building a product to commit to a vision, it might need some rework. Every feature developed should be tied to the vision, if people find it hard to build towards that, take that as another hint that the vision needs more work.
Having a 20/20 vision
No vision is correct in the first go, so be persistent in improving it. Finding a vision is tough work and needs some serious thinking on it. The people at John Deere probably spent quite some time on their vision and had to refine it multiple times to arrive at such a consistent narrative. Good product visions will have a certain stability at their core, but will also be easy to refine. Adding details and cutting out what is obsolete over time is a sign of the growth of a product.
As a rough checklist for your future vision answer these questions:
- Is it tangible? Does reading/seeing it create a mental image?
- Does it highlight the non-obvious?
- Is it about the problem and the user of the product?
- Can it evolve without falling apart?
- Are you committed to work towards it? Can you work towards it on a day-to-day basis?
Can you answer the questions with a definitive “yes”? good! See where it leads to. If not, don’t worry. Get your vision through another iteration add what’s missing and take away what’s obvious or superfluous.
Actually this is true for any product in development, not just software. ↩