As a business or an individual, you may have a great idea for a native application or web application… but you don’t develop software. With such an idea, where do you start? What is your minimal viable product (MVP)? How long will it take? How much money should you budget?
Unfortunately, far too often, people think their idea is the next big thing – it might be, but it also might not.
However, some ideas are worth pursuing. These are important questions to answer, because a great application or software idea doesn’t equate to instant money, even for an independent software developer. Planning the process can make a real difference.
Where to Start?
Whether it’s a coffee maker or a smart watch, we’re surrounded by software. Apps are no exception. In 2014, Apple paid over $10 billion dollars to iOS developers, exceeding ticket sales for Hollywood movies.
So, how do you ensure success in such a saturated environment?
It’s time to create a detailed scope of work because planning is essential. Without a plan, the dreaded ‘scope creep’ will rear its ugly head. And establishing a solid MVP is an imperative part of the scope. Even with an unlimited budget, initial software development should be paired down to an MVP, because the MVP acts as both a goal and a road map.
Once a plan has been created, it is far easier to stick to the plan by only making changes that are either critical to the MVP or to the business.
How Long Will it Take?
This is the golden question and it rarely can be answered with accuracy at the beginning of a project. Key stakeholders and those who control the budget will usually want to know, though. However, the financier or decision-maker often has a very different concept of software development than the actual developer. Scope creep and poor planning can draw out a development process indefinitely. Good planning can ensure deadlines are met and progress is made.
Remember that a poorly developed app is a poor app. It is likely that the process will take significantly longer than you anticipate. Be prepared for that. And launch the app when it’s ready, not when you want it to be done.
How Much Will it Cost?
The budget is always a touchy subject. Software engineers and developers are not cheap and they continue to become more expensive. A common mistake is to think that a company only needs to hire a developer to create an app. Developers are typically logical thinkers and problem solvers; they’re not necessarily creative visionaries. Even if you have a logical plan that includes an MVP, a timeline and a healthy budget, you will need more than a developer to get your product to the finish line. Let me say this again. And in bold.
Every successful software development project requires a team of people to ensure it becomes a useable product. The best teams include decision makers, developers, user experience (UX) designers, user interface (UI) designers, graphic designers, project managers, product owners and customers.
App creators might think they can save money by eliminating such roles as the product owner or project manager, but such a decision only puts further responsibility on the development team, which in turn, uses more of their time, slows communication and ends up costing significantly more money.
To start, the idea needs to be documented in a clear and concise scope of work. Software engineers are great at coding but they may not be good at managing a project. Project managers are good at this, so let them be good at it. Play to everyone’s strengths. You can do this by making sure there is a scoping process and the entire team is involved.
The scoping process should include several rapid prototyping sessions in order to define the MVP. In addition to customers, creative people, such as graphic designers, user experience designers and user interface designers, are key to the rapid prototyping process. As each mock-up is refined, the software starts to take shape, even if it’s only on paper.
One of the most important pieces to this process is the UI/UX experience. Without a focus on ‘experience’, the likelihood of users actually using the application decreases.
As software development progresses, it is key to track the progress and changes so that decisions can be made along the way – these tracking and monitoring roles are often left to traditional project managers, business analysts and product owners. These roles may seem tertiary but are key to keeping the entire team on track with the MVP and scope.
Before embarking on actual development, you have one more decision to make. There are essentially two ways of handling the software development process: the Waterfall Methodology and Agile Scrum Methodology. The main difference is Agile is iterative and Waterfall is linear. Using Agile Scrum for periodic process evaluation, product review and consistent customer involvement. The danger of using Waterfall is that no review occurs until the product is complete.
This is might sound like a lot of … stuff. It is. Software and app development is an undertaking and a process. It can be fun, enlightening, frustrating, scary, overwhelming and absolutely fulfilling.
Just make sure you have some time, money and an open mind.