The key to a successful application is determined right from the start. Apart from understanding what you want, you need to know how to get the message across to your development team. If the mobile app specification is unclear and fuzzy then your development team will certainly come across some roadblocks during the development process.
Here at Eastern Peak we have created a mobile application specification template which begins with the first phase of our collaboration with our customers. This helps us avoid confusion and turns the long development journey into an enjoyable and streamlined process. Below you will find an application development specification template that is often used by our project managers. It consists of 4 sections:
- Introduction to a mobile application specification
- Main User Stories
- Main Screens
- High-level design
Feel free to use this template and keep its structure while negotiating with developers regarding your future app.
To begin, briefly describe the purpose of the mobile app requirements document and specify the person who is responsible for updating the specs.
You should then provide general information about the product. Specify the app’s goal, its’ target audience and the platforms that it is supposed to run on. Mention similar products that have been completed by your competitors. List the desired technologies that you wish to use for the creation of your application.
And finally, specify the terms that you are going to use throughout the mobile app requirements document, as shown in the example below.
|User||A person registered as a user in the system|
|Administrator||A staff member who administers the process|
|Delivered order||Order is considered to be delivered once the worker sends a confirmation request through the mobile app that the order has been delivered|
List all the different types of users who are going to use your application. Some applications have only one role, while others have two or more of them. Describe the user stories for each role. This will help both you and your developers better understand the required functionality from a user’s point of view.
As an example, let’s consider an app that has only 2 roles – an administrator and a regular user. In this case, the user stories will look like as follows.
As a user…
- [US01] I want to sign in/up either by email and password or by Facebook.
- [US02] I want to be able to make orders quickly.
- [US03] I want to get a notification when my order has been delivered.
As an administrator…
- [US04] I want to be able to see and manage the list of users.
- [US05] I want to be able to see real time statistics on the orders which have been delivered.
Describe which screen should be accessed by each role. See an example below.
In this section of the mobile app development requirements document you need to describe each and every screen of your mobile app.
Start with a wireframe or a ready design and then describe all the details of the screen:
- Which fields are mandatory in the form;
- What are the default positions of the switchers;
- What will happen when the specific button or link is clicked, etc.
Make sure to represent the data in a convenient way for your readers. Use tables when and where appropriate.
|User action||System does|
|click on the thumbnail||Thumbnail is selected. On the thumbnail we show the following icons: edit, delete and display.|
|click on the edit icon||Displays the order details screen.|
Every screen is important. As a reminder, don’t forget about the screens that your administrator has access to.
- Define the technology stack that will be used, including the backend, the frontend as well as mobile technologies.
- Create the database schema. It may seem to not be important at this stage. but, the fact is, that it is one of the most efficient ways to understand all the components of the system. Define the tables and their relationships, and make sure that the data supports the processes that were defined in the app specification.
- Decide on the the data structures. You need to decide what data should be saved (if any), and what will be lost when users close the application. Also, specify where the data should be stored, whether that is going to be on the user’s device, cloud or a server.
- Specify all the languages and script writing systems (e.g., RTL) to be supported by your mobile application.
- You also need to define the required third party integrations, decide on how to deal with performance and security issues and describe the supporting infrastructure of the application.
After specifying all the information mentioned above, feel free to write any other comments, concerns, questions or special requests related to the project such as ways to communicate.
Properly developed and detailed app specification enables software development companies to provide an accurate time and cost estimation for the entire project. However, as you can see, proper mobile application specification lays the groundwork for the future of the product. It requires deep expertise in technology and has to be created by an experienced product manager. That’s why we advise our clients to start a collaboration process with a software development company and define the proper product requirements.
Ready to discuss your product? Contact us to schedule a kick off meeting to discuss how our team can help you translate your business idea into a professional mobile application specification.