10 Steps to Making Your Software Product

You have a great idea for a software.

You want to make it and launch it. But you are not sure how to move forward.

priya confused.png

This is one of the most common situations with first time software entrepreneurs. Things can be very confusing for software products when it’s your first time. Where do you find a good software company that will make the software for you? Do you first figure out how much it’s going to cost? How do explain your product idea well enough so that the software company can get you realistic estimates? How do you ensure that they keep their promise? How do you know if they delivered a good software product? What happens after the software goes live? What happens if it needs a fix or a change? There is a whole list of important questions that needs answers before you can really make up your mind and move forward.

But where do you start?

As a software company helping entrepreneurs like you for the past 16 years we know your pains. We’ve helped many entrepreneurs turn their dreams into reality and launch their products.

We want to share our ideas and experience in this new series of articles called the “Making your software”.

The Steps

Before you do anything, you should have a rough idea about the stages you go through to get your idea into a working software product. So here goes, the life story of a typical software product - from the perspective of the entrepreneur.

Step 1: A rough specification

This is just you (and your co-founders) writing up (or even better drawing up) what you want to build. Doesn’t have to be perfect, or even very detailed but the moment you start asking software professionals questions like how long, how much, etc. they will want this from you. So this is the first step.

We’ll go through some tools you should use to get the specification done and also provide you with a template that works great for a rough spec. Read the post at: Making your software - Step 1 - a rough specification

Step 2: Find and compare software developers

This is the most important step in the story. A good software developer (like us :) ) is the key to getting your product launched. They will guide you through the rest of the stages, giving you advice about where to compromise and where not to. It’s absolutely vital that you research a bunch of vendors and find the one that fits you the best. Remember that the fit needs to be with you - a vendor can be the best skilled, most experienced, etc. but if they don’t communicate at the same wavelength as you nothing will ever get done right.

In the upcoming posts we’ll go over the basics of what you need to look for in a software developer and get you a template form you can use to survey the vendors and then compare them.

Step 3: Getting ballpark estimates

Ballpark numbers are very rough cost estimates based on the specification (from step 1) you give to the developers. This number helps you figure out costs and plan your funds. Always get ball park numbers from developers you short listed from step 2. You’d think it makes sense to ask for a number for from everyone as part of step 2, but in most cases the number will either be too much of a guess or plain wrong. To get a reliable ballpark you’ll need to spend some time with the developer to go through your concept, answer their questions etc. And obviously you can only do that with only a few.

We’ll guide you through a series of questions you should ask and things you should clarify to the developer to get a good ballpark number.

Step 4: Budgets and funds

This is the nitty gritty of how much money you’ll need and when. How you’ll get the funds and pay the developers. We’ll do a post on typical payment strategies, expected costs throughout the lifetime of the product and financial planning.

Step 5: Select the software developer and an NDA

This is where you finalize the software development partner and setup how you will work together. The actual legal contract is important, but at the end secondary - since no legal write up can replace a good working relationship. It’s extremely important to setup an operating process - decide how the project will move forward, how you’ll see the results and give feedback, the timeline, etc. The non-disclosure agreement (NDA) is your protection for the idea about the product as the software company will require you to go over the details of your idea before they can give a final costing they can commit to. There are variations to this plan, but this is typically the path most companies take.

We’ll do a post in this series with a time tested foolproof process along with a typical NDA template that does the job.

Step 6: Brainstorming/wire-frames/mock-ups

Now that you have a software developer on board and a rough specification in hand it’s time to brainstorm the idea and turning that idea into a working piece of software. You start by pinning down the features into a list, setting priorities for the features based on business importance and technical difficulties. The goal would be to target the “lowest hanging fruits” first - do the features that your customers would love the most which are also technically easy. For startups this path is the safest, with the plan of rolling out a product fast and possibility of cash flow along with early feedback from real customers.

Once you have that list of features thought out the next step would be to create storyboards - pictures of the software and how particular features would work. The software company’s designers and product analysts usually walk you through this. They do these first without worrying too much about the exact colors by drawing them up on rough sketches - pen and paper works but a software tool is better. This is wire-framing. And then they start putting colors and logos on them to create mock-ups - the pictures of the exact look of the software. How much detail you do depends on your time-line, budgeting etc. But you absolutely need to do at least some basic ones to get an understanding about the features. At Kaz we do the preliminary part of this process free. Some companies charge for this too. So this is something you have check with your vendor to decide beforehand.

In this series I’ll go over some tools we use and give you templates for the features, specifications and wire-frames.

Step 7: Final estimate and a contract

Now that the software requirements are well understood on both sides (remember, your original idea and the exact reality of the software may have changed a lot during the brainstorming!) it’s possible for the software company to commit to a price. Usually the price is close to the ballpark number (our typical error margin is +/- 30%), so it shouldn’t come as a big surprise. But it’s always possible that the idea has evolved far from the rough spec you had (which was the basis for the ballpark). This is where both sides can sit and decide how to align things. One way is to break up the product in phases, and do the deliveries in phases to fit with your budgeting. Or you could be compromising on certain features (e.g. “let’s do the facebook integration later since it will save 2 weeks of dev time”) to reduce the costs. Once you have reached a decision on the pricing you do the contract. Again the actual contract is much less important than the relationship and the understanding of the project features and priorities, but obviously you need the legal paperwork. The goal in the contract is to try achieve something that’s a win-win for the ever changing world of a software product.

We’ll share a template that has been time tested on startup projects and discuss the important things to go over during this step on finalizing the price.

Step 8: Development

This is where the actual product gets built. The part we love the most! This also the most important, time consuming and expensive part of the full activity. So you absolutely have to get things right to optimize it and make sure the project moves along at the right pace, risks are managed and a process is in place that ensures that things are done over and over.

We are super experts in this space, and after a thousands of times on the merry-go-round of software dev cycles we have very specific ideas about how it should be done right. We’ll share them along with some reporting ideas in this series.

Step 9: Marketing Plans

Without your marketing plans you software launch will never work. This is something you’ll need to do in parallel to the development work so that you are all ready to go when the software is ready. You’ll need a lot of technical help in this regard - since a lot of the marketing will be digital marketing. User tracking, social media integrations, interfacing for customer support, SEO, etc. all need the software company to help you out in this process.

We’ll share a list and a spreadsheet to track these. You should use this to coordinate with the software company and also clarify the need for help in this front with them.

Step 10: Launch

priya wohoo.png

Wohoooo! This is the most exciting part. But this part needs very good planning to get right. There are all sorts of things like hosting, domain pointing, social media assets, launch activity planning, advertising assets and a million other things to worry about. Make sure you plan this before hand with the software company.

We’ll do our typical launch activity run down with you in this series and provide you a spreadsheet and a “cheat sheet” for launching your first product.

Life after the launch

Launching of a product is really just the beginning of your long journey as a software entrepreneur! What you launch first is just the version 1.0. You have to then see what the market actually wants, what you got right and what you got wrong and then roll out newer versions of the product with additions, subtractions and most importantly modifications. At the same time the marketing and sales part of the story should take center stage - since if you can’t sell the product you will soon run out of money! Along this same path is the need for maintaining the software - fixing bugs, patching the hosting server or updating a mobile app for newer versions of operation systems (e.g. “Oh no iOS 14 has changed everything and we need to fix our app for it!”).

We’ll lump up all the million things that you are supposed to do as part of your life after launch into a post and give you some templates and plans to guide you through this life!

That’s it folks! It may look super complicated but I can tell you it’s not once you learn the basics. When you have a good software partner (ahem, like us :) ) it’s even easier as most of this they will guide you through anyway. Also watch this space as we do the posts over the next few weeks. We are always here to answer any questions you might have. Just drop us a line to ask using the button below. Our startup project experts are always happy to discuss your projects!

At the end it is an exciting and intensely creative activity that I know you’ll love. Remember, if you don’t do it now, someone else will soon enough, so now is the time!

If you liked this, try out the founder’s power pack that we are putting together to help all founders in their journey through the software development process. Click on the image below to know the details.