Process of Innovation
Innovation is about managing uncertainty through experimentation. Management theory is about managing large company problems of high…
Innovation is about managing uncertainty through experimentation. Management theory is about managing large company problems of high certainty.
The process of product development is messy. It’s art just as it is science, which is even more true in the software industry. As industries become popular and gain more market share, people try to formalize a process to remove the uncertainty. The macro product development process encompasses various micro processes such as idea generation, problem validation and requirements, prototyping, business model generation and refinement, product implementation, marketing, sales, distribution, maintenance, and support. Most or all have to work in harmony in order to be successful.
Experiment and fail
Through my experiences, rigid processes in a knowledge based industry are detrimental to creativity which in turn negatively affects success. Product development uncertainty should be resolved through rapid experimentation. This process is achieved through numerous trials and failures, but many of us see failures as evil. Our viscerally delusional fear of errors are the biggest shortcoming to progress. We must embrace failures of those that are passionately trying to improve the product and be careful not to attribute failures to incompetence. Some of the best success stories have come after numerous failures.
Steve Jobs famously quoted that innovation is about saying no to 1000 things before saying yes to one. “No” is a difficult thing to say, in business and in life. We want to please and we want to progress. Doing “something” feels like progress, but our feelings aren't always reality. Product design is hard. The hardest but the most worthwhile thing in that process is saying no.
Software development process, which is just a part of the full product development cycle, has historically adapted numerous methodologies for commoditizing creativity. It makes sense. People aren't generally comfortable with uncertainty. We must know when it will be ready, how it will turn out, and how we get there, before we even start. But we have to embrace the discomfort of uncertainty, as without it we can't progress far beyond the status quo.
Don't listen to customers/Listen to customers
This paradox is sometimes hard to understand. Customers is what product development is all about. They buy and/or use your product. They make things worthwhile. They matter.
I've been in many situations where on the surface it makes sense to fulfill a customer request. They pay money, they want a feature, we owe it to them to help. But what we're really doing is quite the contrary. Without truly understanding job their are trying to do, we can't possibly agree that the solution is the most effective in fulfilling that need. People are creatures of habit. We like to do things, the way we're used to, until we get used to a different way that makes us happier. This different way isn't always apparent. The switch is hard. As product developers, we see lots of patterns of how people accomplish a job, by looking at product usage and wearing the customer’s shoes for a while. It’s up to us to extract the most effective way to do it. It’s OK to be opinionated, as long as opinions are empirical. People have needs, but sometimes the way they go about fulfilling these needs is habitual and involves superfluous features. Needs are real, solutions are perceived.
One of the biggest way to kill a product is to cater to every possible itch and on top of that to allow multiple ways to scratch it. The biggest reason why companies add excessive features to products is their lack of truly understanding the problem. In software businesses, many companies that follow that methodology divert from the product and become custom software development shops, basically customizing software for every client vs. providing a product to do a job. This is a sure way to possibly increase revenue in the short term, but to eventually kill the product.
Understand you customer and the job they are trying to do. Embrace uncertainty. Experiment. Fail. Try again.