[quoted with permission:]
Think of "user stories" as having two parts– users and stories.
Think then about who your users are and make a list of them. For a travel site this may be "Frequent Flyers" and "Vacation Planners" and so on. For each user role (e.g., Frequent Flyer) then think about the "epics" or big stories or goals that the role has (book a flight, check my mileage, upgrade a flight, etc.) Just think of 3-7 or so per user role. Then for the most important epics (those you're likely to do soonest) work to split those into smaller stories--perhaps "book a flight with a credit card" and 'book a flight with frequent flyer miles" etc.
Use this template for stories:
As a <user role>, I want to <goal> so that <reason>.
For example,
As a frequent flyer, I want to check my mileage account so that I know I got
credit for my most recent flight.
Strive for stories that are:
Independent (of each other)
Negotiable (have some "wiggle room")
Valuable (to users or customers, not technologists)
Estimatable (not very precisely but generally)
Small (Not all stories but the ones you'll do soon)
Testable
Remember this through the acronym INVEST.
A lot more could be said but that's enough to hopefully get you started.
Regards,
Mike Cohn
Author:
Agile Estimating and Planning
User Stories Applied for Agile Software Development
www.mountaingoatsoftware.com