Software is all around us, some of it successful, some not working well. As we pointed out recently, most software is broken.
Ben & Jerry’s ice cream headquarters in Vermont has a graveyard for flavors that didn’t work out. Some were just wrong combinations (peanut butter and jelly is better on bread), while others created production problems (the price of Kahlua skyrocketed after that flavor debuted). App stores don’t have graveyards, but if they did, they’d be massive.
You don’t often hear about the failed software programs or apps; the success stories are far more fun, of course. But behind the scenes, dozens of apps appear every day and receive no attention, no downloads. Now regarding how to develop a software project, it is a step by step process — building great software takes not just work — plenty of people work hard without results — but many other factors as discussed in this article below.
“Great” is an awful word, vaguely offering some inkling that the result is better than good. “Great” software might mean different things depending on the application. For example, a program you intend to use internally needs to function well, provide benefit to users, and have a user interface that your team members can figure out.
“Great” software you’re selling must be those things, but also marketable. Fantastic ideas for programs might sound worthy in a meeting, but fall flat in the app store. While there are many causes for lackluster sales, the formula for “great” software needs always to be mindful of the goal: to sell. With that in mind, here are seven secrets to making software that is useful and sells.
- Create (or find) a phenomenal team. Whether your project is in-house or you’re working with a third party, put the proper team in place. Of course, this team needs to have the skill set to write the code and develop the program, but the best teams are more than that. Teams that can work together to create amazing things have learned to find a balance between the passion for code and the need to make money. These teams also work within timeframes and can keep a project moving. While that sounds like a simple thing, anyone who’s ever worked on a massive project can tell you how easy it is to get off track. (See No. 5.)
- Gather data and stay objective. You may think you have a phenomenal idea, but will it work? Research the industry and the users. Get some surveys out there to potential users. Ask questions. Analyze the information. Worry less about the details of interface now; focus instead on the overall idea and whether it’s valid. You’re passionate about your idea, but that doesn’t mean others will love it, too. Remain objective as you go and willing to listen to input.
- Set a specific goal. Avoid ending up at the end of the app store search by setting a particular target for your app’s features. Outline your KPIs now; it’ll help you prioritize as you go. Those KPIs might relate to number of downloads or users, but you might have other indicators, too.
- Plan. Once you have a goal, how will you achieve it? Your team must create a plan for all aspects of the app/program from start to finish.
- Stay on track. “What if the app also did this?” Scope creep is all too easy. Ask yourself if that new idea needs to be part of this launch. If it will make the app better and easier to sell, that’s one thing. If it’s a “nice to have,” you can add it later. Or, if it’s worthy, it might deserve its own app. After all, time is money, and losing track means losing money. The more features you add now, the longer it takes to get your app out there and earning.
- Be flexible. While staying on track is critical, your impressive team must be ready to shift gears or make adjustments as they go. That’s one of many reasons we like the Agile approach to building software; it gives you room to add or adjust every two weeks as needed.
- Communicate. Communication is the essential ingredient, one often overlooked. Without it, teams are lost. People veer off track, miss deadlines, and the end product is not what you envisioned. Choose a team that can communicate well, as we outlined at the start, but also be sure to explain clearly to them. You want to make sure your concept is understood and convey your desires during every step of the process.
Are you ready to build a “great” app? Talk to our team about whether we’re a good fit for your vision.