In agile, a user story is a tool used in Agile software development that represents a small piece of business value that a team can deliver in a sprint. It creates a simplified description of a user’s requirements. A user story is defined incrementally in three stages:
Who are we building it for, who the user is? — As a <type of user>
What are we building, what is the intention? — I want <some goal or objective >
Why are we building it, what value it brings for the user.? — So that <benefit, value>
A good user story should be Independent (I), Negotiable (N), Valuable (V), Estimable (E), Small (S), Testable (T). In short – INVEST.