Use Cases and User Stories – When Should They Be Used?
Before we dive in and talk about the difference between use cases and user stories, let’s look at how they have changed the world of software development.
They are a great example of how the Agile philosophy has improved engagement for consumers and employees alike.
In the olden days, programmers would just dive into a new software project and start coding, convinced they knew what the user needed. The problem was they didn’t know, they only thought they did.
Once the software was launched it bombed because, surprise, surprise, it failed to do what the user wanted.
The Agile philosophy has countered this problem by showing that if you work with users throughout the project, you will understand their needs and so avoid costly mistakes.
That’s great, but in today’s Agile world, we’ve noticed the terms “use case” and “user stories” being used at the same time in Agile projects, which quite frankly, is a waste of time. Granted, both are vehicles used to define process flows, however they have very different applications.
The difference between use case and user story
A “user story” is a high level framework of an activity to which detail is added, as it is needed. That means it forms the starting point of any project.
Written clearly and succinctly, your user story describes what the user wants to be able to do in just a couple of sentences. It usually looks like this:
“As a [role], I want to [perform an activity] so that [a goal is achieved]”.
An example of a real world user story would be Mike is hungry and wants some food to satisfy him.
This forms the basis of your project. It sets the stage by stating the immediate needs of the user and the desired outcome.
A “use case” is a more detailed written description of an interaction. In simple terms, an actor does something – system does something – actor does something else – system does something else.
Going back to Mike, his use case would be that to satisfy his hunger he goes to his nearest McDonalds, orders a burger, pays, waits for it, sits down and eats it.
Use cases are about behaviours that will have to be built into the software. It will contain a lot of detail, clearly describing everything that the developer needs to build to meet the user’s needs – in simple terms, a developer should be able to read a use case and get a good sense of what the software needs to do.
What’s the point of user stories and use cases?
Both techniques put the user at the centre of the development effort making sure your software project delivers an end product that users want and that satisfies their needs.