A functional requirement states what a system must do and for whom. In an ML project, it identifies the classification, recommendation, labeling, or prediction that creates value. A practical way to state one is to name the inputs, the required output, and the process the team must build to connect them. section 2.3.2 section 3.1 section 5.3
Book recommendations
Inputs: a user profile, budget, and date. Required output: a set of book recommendations. The requirement specifies the capability; separate nonfunctional requirements can constrain its cost to less than $0.0001 and its response time to less than 200 ms. section 3.1
Turn the proposed capability into a deliverable requirement:
- Clarify the customer’s objective and who will use or be affected by the result. Check feasibility against the available data, project setup, and security findings rather than accepting an initial request unchanged. section 2.3.2 section 3.1
- Keep the capability distinct from constraints on speed or cost and from system questions such as integration, maintenance, and how results will be consumed. section 2.3.2 section 3.1
- Develop user stories into story cards that record the intended business impact, model capability, data rationale, constraints, and point in the business process where the output can be used. A valuable prediction has little effect if no one can act on it. section 5.3





