
By Thomas Cohen, founder of Maestro
Application requirements: a guide, example and free template
A booking example to describe who uses your application, what it should do and how to check the result. Includes a free text template in French to adapt.
Customers call to book appointments, and you would like them to choose an available time online. The requirements document describes that need, the people involved and the expected result. It helps you discuss the project, compare proposals and check what was built, without starting with code.
Download or copy the free requirements template. This French text file opens in a browser or editor and can be copied into Word or Google Docs. It contains sections to complete, a checklist and a fictional example. No email address is required.
Start with the problem, not the screens
Write the need in one sentence: “Customers need to book a slot without calling me.” That is more specific than “I want a modern calendar”. Describe the current situation: who answers calls, where appointments are recorded and which mistakes occur.
Explain how you will recognise an improvement. In our fictional example, customers choose from published availability and the manager finds all bookings in one place. If you set a numerical target, start from your actual situation.
Describe users and their journeys
Name each person and what they can do. The customer views slots and books. The manager opens availability and cancels bookings. A colleague can read the calendar without changing times. Explain whether an account is needed and how access can be recovered.
Describe the whole journey: a customer opens the page, chooses a slot, enters contact details, confirms and receives a summary. What happens if the slot was just taken, the email fails or they want to cancel? Record those questions before delivery.
Write the rules and limits of the first version
In this example, a slot lasts thirty minutes and accepts one booking. Customers can cancel up to twenty-four hours before the appointment; afterwards, they contact the manager. These rules are fictional: replace them with the rules of your work.
List what will wait: online payments, text reminders, subscriptions or a mobile app. A site usable on a phone may meet your first need. Keep extra ideas in a separate list, with a reason for adding them.
Make each request checkable
An acceptance criterion explains how to recognise a correct result. First example: when a customer confirms a free slot, exactly one booking appears in the calendar and that time is no longer offered.
Second example: if two customers confirm the same slot, only one gets the booking. The other receives an explanation and can choose another time. Third example: the colleague allowed to view the calendar cannot change it, including by trying a direct link.
For speed, agree with the person building the application on the page, device and trial conditions. “Fast” is not enough to reach an agreement. For each check, record who will perform it and how the result will be kept.
Remember data and everyday operation
Describe the information to keep, who can see it and when it should be deleted. Record files to transfer and tools the application must connect to. Before replacing Excel with an application, identify the calculations and habits hidden in your workbook.
Specify who controls hosting, the service running the application, as well as the domain and code files. Who receives alerts and fixes incidents? How can data be retrieved, a backup restored or the work handed over? These answers also affect the project cost.
Keep the document useful without complicating it
Date versions and keep open questions visible. Before an important change, ask about its effect on timing, budget and planned checks. Ask the people who will use the application to review their journeys.
Complete the downloadable template as answers emerge. With a provider or in Maestro’s workflow, you will have a basis for discussion and approval. Technical choices can then be explained in terms of that need.

Read the complete guide: build an application without coding