Analysis paralysis is the great blocker to getting software products out the door. Most of the time we consider blocker to be external forces which prevent us from making progress. However, over analyzing and over planning are self-imposed blocker. There are two main reasons why we let analysis prevent us from building software products:
- Unknown solution
- Unknown budget
Not knowing the solution is a problem of ‘expertise’. The people in the discussion don’t know ‘what’ or ‘how’ to create a solution. You can identify this problem by listening. You will hear a lot of business jargon but never see a wireframe for a screen. There may even be documentation, however, they tend to be more focused on market analysis than product requirements.
The solution for this is to hire an experienced product development lead. This lead needs both business and technical experience. They must be able to listen to the business and translate conversations, emails, slides, and documents into rough wireframes to drive how the software behaves.
Software development cost is hard to predict. Software is never 100% done. It’s always a work in progress with changing requirements. It’s more effective to have a weekly or monthly budget. Then, set a cap at which you need to have different milestones; Alpha, Beta, MVP, Version 1, Version 2, etc.
Setting a weekly/monthly budget allows you to determine what type of staffing you need. Coupling that with what’s required in each milestone helps the team visualize what’s required at each iteration.
Once you have a good technical lead and a rough weekly budget you should just start building. You’ll need to course correct the product and process on a weekly basis. Use your weekly retrospective as the time to do this. You should be doing a lot of everything while the team is building.
Sales and Marketing
Sales and marketing should be building interest and getting feedback from future users from day one. Build a marketing site and try to get people to sign up for notifications of the beta. This will let you know quickly if you have a product customers might be interested in purchasing. Meet with prospective clients over coffee and show them wireframes. Talk to them about their problems and how you are proposing to solve it. Talk about pricing. Sales and marketing is a key component of building a good software product that customers want. There’s no need to wait on software development to build a complete product released to market. Just start.