Chances are if you're looking for a development team to bring your app idea to life, you probably aren't technical or at least technical enough to build it yourself. That's alright - not everyone wants to code, that's why you hire an app developer. You don't need to be technical to create the next great app. Your design and development team can guide you through the process without any need to know code, design, or UI/UX strategies.
One way projects fail, is through communication disconnects, and it primarily happens when a customer can't explain or doesn't know technical details enough to articulate specifications. Sometimes it just boils down to translating laymen's terms to technical jargon, and it's one of the most difficult aspects of an app project.
If you're ready to sit down with a development team, here are some things every developer and designer wishes the customer knew. You can use this list to prepare yourself for the next step in designing your app.
1. You Don't Need to Provide Code
Some clients feel that they need to "speak code" when working with a developer. When you approach a software development team, you should communicate your idea but not the steps to engineer it. You can require certain technology should you need a specific environment. For instance, if you plan to pass the project off to internal developers, you might ask them what language they prefer. This requirement can then be passed to your outside development team.
You might also want the application to run on a specific operating system such as iOS versus Android. You can specify this as well.
Some customers feel that they shouldn't speak to developers unless they speak their "language." It's better to articulate your ideas rather than engineer them. Let the development team engineer the technology to ensure the app is efficient and well designed.
One aspect of a good design team is understanding the customer and translating their ideas to code.
2. Developers Are Only as Good as the Specifications
One common mistake during the initial discussion phase is giving a vague overview to the developer and expecting perfect results. You have the app idea designed in your mind, but the developer is approaching it blindly. Developers must be able to understand and visualize your idea before they are effective, so it's important that you detail your project to the best of your abilities.
The process falls back to communication and articulation. You must be able to discuss your app idea in detail. Don't assume a developer knows what you want from a few basic details. Be as specific as possible. If you can't articulate any ideas, draw them on a sheet of paper and show the developer when you sit down with him.
Your design team will sit down and help you create specifications, but you can also sit down during your own time and draw out your ideas. Draw the screen, a basic interface and describe the screen in detail including what each component can do. You don't need to be artistic, but basic wireframe drawings can help the developer visualize your app idea, which is important for effective coding.
3. Development Takes Time - Sometimes a Lot of Time
Development is a long process when it's done right. Some companies might promise results in weeks, but most app projects take months. It's up to your design team to give you an estimated time frame, and it's usually several weeks from commencement.
Customers assume that a one-page app should take no time at all, but several factors determine the time it takes for completion. The quality of the specifications, the complexity of the logic and design, security, testing, and third-party integrations all play a part in your deadline expectation.
Although you probably don't know the engineering that goes into your app, developers would love for customers to understand that good development takes time, especially in complex apps. Even if an app is only a few pages, there could be high complexity behind the scenes that make it a long project to code between finding the right solution, coding the solution and then testing it.
4. Yes, You Always Need Thorough Testing
It's exciting to see a new app progress during the development stages. It's easy to immediately want to skip a thorough testing and go straight to production. This is one very dangerous way to complete the project. The first problem is that thorough testing eliminates many of the bugs that would otherwise be released to the public. The second problem is that bugs harm your app's reputation. If your app is released with bugs, your ratings are poor and then your app is buried along with other poorly rated apps.
When your app is done with the development stages, allow the developers and the QA (quality assurance) team flesh out any bugs. It takes more time, but it also ensures that your app is clean from critical errors that turn off users and reduce the number of installs from the marketplace.
5. Scalability Is Important for Your Future Growth
Do you want a cheap app that works now but won't support your future goals? Or do you want an app that scales with your business? There is an important distinction between poorly written apps that are just thrown together quickly to look good on the outside but the backend code is horrendous. This might not mean much to you, but horrendous coding is not scalable.
Scalability in the coding world means your app can support 1 user or 1 million users. It means that adding features for future phases takes less time than a poorly written app that requires an overhaul for any additions. Clients don't see scalability as important until a year passes, and their app no longer supports growth.
Scalability ties into development time. It usually takes more time to build a scalable app than throw a sloppy one together. You want developers to be concerned with scalability and take a little more time to do it. In the long run, your app will cost you much less in development time when you decide to add onto it.
Even though developers wish that clients knew the challenges of building an app, they still enjoy building new products and working with creative ways to build technology. Developers are engineers - they love to build things and provide customers with creative apps that make their customers happy.
You don't have to be a coding guru to get your own app created. It's a collaborative effort that requires your ideas and communication and the developer's experience. With the right team, you can have your ideas go from just an idea to a tangible product in the app store.
Keith Shields is the CEO of Designli, a mobile app development firm specializing in bringing certainty to the world of custom software development. Designli guarantees fixed price points, fixed scope of work 'deliverables,' and fixed timeframes for its clients as they build iPhone and Android apps for startups and small businesses.