Previously published in Starting from Zero (http://bit.ly/18VQrFM).
I get a lot of calls from non-technical entrepreneurs who are developing apps for their businesses. They all want to know the same thing. “How do I start?” Here are the first 5 steps you need to take once you decide to build an app so you don't get lost in the weeds or sucked into the quicksand of endless development costs.
Step 1 Product Requirements Document
The PRD defines what your app will look like when it's completed. Think of it in three stages:
The Minimum Viable Product
The MVP is the quickest, dirtiest, cheapest version of the application that you can build and get to market. The point is to Get It Launched and then start collecting data from your users about what they like, don't like, and wish it had. The reason you don't want to spend too much time or money before the first launch, is because until you start getting feedback from your customers, you only have assumptions about what they want and will use.
Those required features that were left off so you could launch fast
Because you threw something together fast and furiously, you had to leave a lot of features off. This second list are those features. Whatever is part of the core competency of the application, but for one reason or another didn't make it into the MVP, this is your second list.
Your blue-sky list of features
Your third feature set is everything you can at this moment imagine your application doing. It's blue-sky, because you shouldn't hold back at this point. Even if you know these features can't be added in for months, maybe even years, add them to this list. So you know what you're shooting for.
Now you have a Requirements Document for your application. Now you can get bids. You'll see what it will cost to get the MVP launched. How much each feature will cost you to add in (so you can do a cost-benefits analysis) and have some idea of what the full-blown application will look like and cost several years down the road. These are your benchmarks.
Step 2 Request for Proposal
Take your PRD to at least three development shops and have them price all three lists: the Minimum Viable Product, the second list of required features, and the blue-sky list. Until you get three proposals, you really have no idea what this application will cost. The more proposals you get, the better sense you'll have. If you have five proposals, most of them will come in at about the same price range, and a couple will be wildly different–too high or too low.
Don't go with the cheapest bid. They're low-balling you to get the project, then they'll find ways to get more either by dragging out the project, running into unexpected problems (that you have to pay for) or padding hours and costs. Or worse, they just don't know what they're doing, so they don't realize how much effort your product will take to get to market. So there's a risk they'll disappear in the middle of it.
Step 3 Hire a Product Manager
Especially if you're not a technology person, you need a product manager to handle the development process. This person could be your information architect (the gal that's designing the software for you) or an engineering manager, someone who is also a coder. The point here is to have somebody separate from the company you're hiring, that can work on your behalf to make sure costs stay low and the product that is created is the one you wanted.
If you're not tech savvy, and you rely entirely on an outside firm to do the development for you, there is no way for you to audit their work or make sure that the product you paid for is the one that is built. So find someone you trust to be your product manager. That's your liaison with the engineers.
Step 4 Design the Application
Just because you have a list of features you need in the app, doesn't mean the software is ready to be built. Think of building a house. Just because you know it will need 4 bedrooms, a fireplace in the living room and a kitchen, doesn't mean you have a house design. You could just take that list to the construction workers and ask them to build you a house, but you won't end up with a house you really love that way.
So hire your application designer. That is a user experience designer who creates the information architecture, the user interface, the interaction design and the visual design of the application.
Step 5 Set a Deadline: Development Road Map
Now that you've designed the application, you know what your MVP will be, and what will be added to the app next, and how much it will cost for each stage of the process, you're ready to start building.
Make a development schedule. Target your launch date — no later than two months from when you start. After that, try to iterate every 2 weeks. That means, every two weeks you've taken the user feedback you've received, made the changes to the application design, handed those changes off to the programmers who have reworked the code, and launched the updated app. Every two weeks you'll be improving your app, adding in the features from your second and third list, and tracking how well your customers like what you've built so you can change what they don't like and keep doing what they do like.
That in a nutshell is what every technology company does when they start a new application. It's really not that complicated, and it's the way you should start, too.