One of Murphy’s Law appendices says, “If you can be misunderstood, you will be misunderstood!” It applies not only in interpersonal communication, but also in software development. The customer wanted a second “Shazam” and was given a completely different one. The developer did not understand the Customer’s wishes and dreams and wasted his time.
To avoid such an outcome, we, IT Brick, synchronize with the Customer before launching the project: carrying out Pre-design Preparation and prepare the terms of reference for software development.
The preparation stage is comparable to the work of an architect who designs a building from scratch, develops a master plan and calculates the cost of materials. Before we start the development, we need to clearly understand what we want to get as a result, what kind of “building” is going to be built, how long it will take and how much money we need.

It is a common practice when a Customer comes to a developer with a specific problem or request but does not yet have an understanding how to solve it. The developer’s task is to study the problem and offer a solution with a clear description of what and how it will be done, how much time and resources it will take.
Let us consider an example. There is a request from the customer to automate the operation of the furniture manufacturer. Now new requests are loaded into Excel, employees are confused in them or forget to call back customers; drawing up standard documents (offer, contract, invoice) takes a lot of time. This request needs to be transferred to the production department later and to be monitored and analyzed through its entire life cycle.
There is a problem and a request for a certain functions of the software. We need to evaluate its terms and cost. Even if the task is clear, it is not specific enough. We need to think about the number and functionality of pages, the interaction between data and calculations to understand the scale and cost of work. It is important to consider the specifics of furniture manufacturing and delve into business processes and learn from the experience of competitors.
The feature is probably that the production department specialists hardly sit in front of a computer, and the request should be transferred not in the web application but to a mobile device. Or the request price depends on a dozen different factors, which generates the same number of possible offers. Replacing the complicated CRM functionality with reminders for employees, e-mail requests to the production department and one report for the director at the end of the month may solve the tasks set.
Pre-design preparation makes it possible to foresee all ins and outs of the conceived product, reduce development time and save on mistakes. Our team does much work:
- We define with you the goals and objectives of the software;
- The market researcher studies your competitors and your industry;
- The analyst finds the optimal way to achieve the objective;
- We adapt the idea to software requirements, work through software algorithms;
- We develop the project architecture;
- The designer thinks over the appearance and prepares layouts;
- We reveal vulnerabilities and find ways to eliminate them.
Following preparation, you receive detailed terms of reference for software development, an estimate with project cost and terms, options for splitting work and payments into stages. The document is the guarantee that the final result will meet your expectations.
Once you have the ToR, you can:
- Understand what you are paying money for, see the structure of the future product and adjust it even before the start of development.
- Assess the expertise of the contractor. The way the document is drawn up reflects the performer’s understanding of the task and its logic.
- Get the product you ordered because it is checked against the ToR. If something doesn’t match, the performer must correct it.
- Know the full development cost, how many stages are planned and how long it will take.
- Save your money by reducing the risk of errors.
- Just change the performer if there is something wrong with the team during the Pre-design Preparation. And the ready ToR can be given to other developers to help them get in gear faster.
With the ToR, the performer:
- Understands what you want. He has already asked you dozens of questions, discussed all possible options for the project and agreed on all items. Misunderstanding is excluded.
Do you have to pay for the ToR?
Good ToR for software development are the result of comprehensive efforts of the team and the foundation of the future product. Drafting ToR takes weeks of work of specialists, which should be paid for. The cost of Pre-design Preparation is calculated on the case-by-case basis and is up to 10% of the estimated project cost.
What if you don’t pay for the ToR? Performers will not be able to spend enough time on analytics, and the document will be unfinished. When a team takes up development, it is interested to lay a solid foundation for their product. If you want to save on development, there are more humane ways.