Here, in this article we will discuss about how and when to use the Use case and User story. We will learn how to apply the techniques as well as tools in proper ways.
The two are not the same as mentioned in softteco.com/blog/user-stories-versus-use-cases. User case is different from User story even though both are used in gathering requirements from customers in the development of software. Both identify users and goals of the users as well. However, both serve different purposes.
User stories are a small definition of what a visitor to your website will do or while using your software. Natural language is used but the whole story is not told. It is written in below format:
As an [actor] I want [action] so that [achievement].
“As a traveler I want to check in for a flight, so I can fly to my destination”.
“As a small business owner, I want to create an invoice so that I can bill a customer”. Or “As a customer, I want to update my customer profile so that future purchases are billed to a new credit card number”.
Usually product development is separated into several iterations called sprints, usually between 2-4 weeks long. Hence, a User story is implemented in a single iteration.
Use case on the other hand is split across multiple iterations and during a sprint each story goes through several stages like not started, started, in testing, finished, delivered and accepted.
The team would need to rewrite if User story fails to meet one of the criteria in the acronym INVEST.
The INVEST acronym is as below:
- Independent (of all others),
- Negotiable (not specific contract for futures),
- Valuable (Not a good story if value of customer is not described),
- Estimable (to good approximation),
- Small (fit within an iteration) and
- Testable (in principle)
Use case is in fact more detailed description and created as a document that includes:
- Short goal-oriented description,
- The trigger,
- Specify the actors,
- Normal flow, alternative flow, exceptions and
- Post conditions
Use case is set of interactions between system and actors (either one or more). The actor here could be a user or another system. It is more about behavior and based on it the team builds a software.
Use case contains lot of details and defines everything that a developing team requires in building a software. Developer better understand with it what the software needs to do.
There’s lot of story mapping agile tools required by a developing team to visualize bigger picture while keeping all user stories and perspective of use case elements.
With the process stakeholders also stay updated about the progress of the project and few to name here includes Lucidchart, Jira Agile, Team Foundation Serve, Stories on board, BoartThing, FeatureMap and more.
Lucidchart is a free trial and easy too. It comes with tons of examples and templates. It features Mind map, Flowcharts, ERD, and Hundreds of shapes with easy drag and drop. Further, it can be exported to JPG, PNG, PDF and Microsoft Visio.
Wireframes made on Lucid Charts are interactive and comes with features like different screen states and pop-ups. However, for those who want to upgrade account, more integration can be found like Slack, JIRA, Office365, BitBucket, Excel, AWS and Quip.
There are several ways through which the team can share diagrams with clients and viewer can add comments as well as edit the chart easily.
Meanwhile, it is important to know that the software has revision history feature to help keep track of the updation on the diagram.
User stories are based on the results and benefits customer is describing. Use case is more in details. It describes how the software will work.