A user story is a tool used in Agile software development to capture a description of a software feature from an end-user perspective. It describes the type of user, what they want and why. A user story helps create a simplified requirement description. It should have a short but unique title, follow an As a <user> I want <goal> so that <reason> format, include acceptance criteria in Given/When/Then format, and be sized in story points to fit into one iteration. The goal is to describe a feature from the customer's perspective without losing information.