Depending on where you look, development success rates are all over the place, but CISQ reports that the average failure rate has been 19 percent for the past decade. Many factors lead to development failures, most notably, a lack of attention to quality.
Fortunately, by doing your due diligence, you can avoid some of the most common and costly missteps people make when getting started with a custom mobile application developer. Let’s look at five mistakes and how to avoid them.
Mistake 1: Conflicting expectations
What happens when you work with a custom mobile application developer whose team doesn’t truly understand your app requirements? Unfortunately, conflicting expectations can lead to significant delays that waste resources and, at worst, result in development failures.
Before you sign a software development contract, it’s helpful to consider questions like, “How will the developer gather information?” and “How will we define our purpose, objectives, and priorities for the team?”
To lessen misunderstandings — and ensure everyone is on the same page — draft a high-quality mobile app brief. In this detailed project plan, you need to outline your app’s purpose, core functionality, design elements, user navigation, budget, and timeline, among other specifications. The more you understand what you are trying to achieve, the better you will be able to convey to the development team you choose what problem you are seeking to solve and how you think you need to solve it.
At Airship, we help prevent conflicting expectations by taking clients through a Discovery phase. We conduct Strategy Workshops to understand the problem to be solved. Then craft a plan that outlines the objectives for the first 12-week development period (divided into two-week sprints).
Without going through an in-depth strategy or discovery phase, you are setting your project up for conflicting expectations which can cost you more money and lengthen the time it takes to get your custom software application out into the world.
When interviewing a custom mobile application developer, ask about their discovery or strategy phase. Do they provide after initial sessions: prioritized key objectives, main user groups and their jobs to be done, prioritized functionality based on the likelihood of achieving objectives, and scope and estimate for the initial development cycle?
Mistake 2: Poor communication
As you pull more people into a project, communication breakdown becomes more likely. Researchers found two factors that often lead to inefficient client communication in software development: 'information hiding’ and a ‘lack of efficient customer relationship.’
As you compare mobile application developers, explore how each team communicates. How collaborative will the process be? And how will you deliver feedback? Your team should also set communication standards, assign key communicators, and outline your preferred communication channels. Does the team use a waterfall development approach or an agile approach? How will you internalize communication within your organization from the development team?
We use agile and each project is assigned a Product Navigator and Lead Builder to minimize poor communication. Working in two-week sprints, the team plans, develops, and then reviews what is completed ensuring the project stays on track. At the end of each sprint, the team shows what they have achieved. During this collaborative process, the client can ask questions, Airship can discuss any issues, and the team can make decisions that direct future work. These check-ins aim to ensure the product is what the client wants and is solving the problem defined during the initial strategy workshops.
Mistake 3: Scope conflict
Scope conflict can be a costly mistake. If you disagree with the developer on scope, you will need to cut features, sacrifice quality, or accept the higher cost. Likewise, if you do not proactively discuss scope creep throughout development, you will experience scope conflict.
Again, this is where a robust discovery process puts everyone on the same page with what outcomes will be achieved. Along the way, there will always be changes based on new information discerned from the development process. Building software is an iterative process. However, if you have a solid base of what problem you are solving with technology and how you are solving it, you and the development team you choose will be working together to ensure the objectives defined during discovery will be crafted according to defined expectations and scope conflict will not exist.
It’s important to outline the scope of work (SOW) in your software development contract. Ultimately, you and the developer share responsibility for creating an accurate scope of work. In this document, you must account for all known project components. The key here is known components. During the development process, as agreed-upon objectives are being built, there will be decisions for you, the product owner, to make that can impact how other objectives are achieved. However, if you have done the work prior to the first line of code being written, you and the team you choose will be on the same page. Thus, those discussions will be handled when planning out the process saving time and money.
Mistake 4: Meeting overload
How time-intensive will your custom software project be? As you compare developers, learn about the kick-off process and meeting frequency. There’s a balance to strike when it comes to meetings. Meetings can help you achieve a shared understanding, but at the same time, you don’t want to experience meeting overload.
At Airship, we use initial Strategy Workshops to get everyone on the same page. Typically, these are completed over two half-day workshops. Because by putting in focused time prior to diving into development, you and the team can be aligned on the objectives of the application. Then, throughout the project, we schedule weekly or bi-weekly meetings where we reserve time to discuss any issues or decisions. After each two-week sprint, Airship shows the client what was achieved during that cycle and discusses what is next.
Depending on the scope of your project and the mobile application developer you choose to work with, your meetings may be at different intervals. Whatever the case, you want to confront problems as early as possible, when they are cheaper to fix.
Mistake 5: Mismatched workstyles
When you choose a mobile application developer, you’re choosing a partner. It’s crucial that your workstyles are compatible. What methodology does the team follow (e.g., agile, waterfall, v-shaped, spiral, etc.), and do you understand what that implies?
For instance, if the developer uses a more traditional method like Waterfall, the linear nature can work when requirements are unlikely to change. Still, the rigidity may cause projects to break down, which can harm the client’s vision and budget.
Our team uses agile methodology and a Scrum framework. The Agile Manifesto prioritizes individuals and interactions over processes and tools, working software over comprehensive documentation, customer collaboration over contract negotiation, and responding to change over following a plan. The Scrum framework is a process of breaking down a problem into bite-size pieces. While we still have strategies, plans, documentation, and agreements to help us understand our expectations of each other at Airship, we believe people are the essential piece.
The Cost of Failed Software Development
In 2020, failed development projects totaled $260 billion. While this may feel intimidating, there are proactive measures you can take to increase the likelihood of your app’s success. After you sign the software development contract, it’s essential to focus on quality. The development team should work to control scope changes, test early and often, and focus on softer skills like teamwork and communication.
As the client, you’re responsible for drafting a detailed mobile app brief that outlines the problem you are trying to solve with technology to avoid conflicting expectations. Collaboratively with the team, you choose you will want to establish communication standards, outline objectives to be achieved with the application, determine a meeting cadence, and understand the developer’s methodologies. If you manage that, you’ll be well on your way to a successful project!
If you have questions as you begin to think about a custom mobile application, let's talk.