manantialmanantial/pss

Requirements gathering

Manantial Team · July 16, 2026

Requirements gathering is one of the most important stages in software development, as it turns a general idea from the client into a clear, detailed definition of what the system must do. During this phase, the development team works directly with the client to understand their needs, goals, current processes, and expectations for the final product.

The main goal of this stage is to collect all the necessary information before design and programming begin. A mistake in identifying requirements can cause delays, higher costs, and a final product that doesn't meet the client's real needs.

During requirements gathering we conduct interviews and meetings, analyze existing documents, and observe the business's current processes. The team seeks to understand how the company works today, what problems it faces, and how the software can help improve its operations.

At this stage we mainly identify:

▰ Features the system must have.

▰ Types of users who will use the application.

▰ Permissions and access for each user.

▰ Processes that should be automated.

▰ Information the system must store.

▰ Integrations with other systems or external services.

▰ Business rules the application must follow.

In addition to functional requirements, we also define non-functional requirements, which determine the quality of the system. These can include aspects such as security, response speed, availability, device compatibility, and ease of use.

All the information collected is documented in files such as requirement specifications, user stories, or use cases. These documents serve as a guide for designers and developers, ensuring that everyone involved shares the same vision of the project.

By the end of this stage, the client and the development team should be clear on what will be built, how the system will work, and what the criteria will be to determine whether the project was done correctly.