11

I've taken a class on software testing best practices and test design. In the content, they have a model that basically shows that the three items are derived in this way:

Requirements > Use case > scenarios > test case > test script

I'm fine with the last two but what are the differences between the first three? Use cases seem to take on the same definition as both requirements and scenarios or at least bounce back and forth. I have not been able to find a clear example that shows:

this is a requirement statement
this is a use case of the requirement
this is a scenario of the use case

Could someone clear this up and give an example?

  • can you give me an example for the process Requirements > Use case > scenarios > test case > test script – reem Mar 8 '18 at 20:31
13

A requirement is typically a general statement, whereas a use case is typically a specific statement implied or derived from the requirement. A requirement may map to multiple use cases. A scenario might be a set of background assumptions that put a use case in context, or it might be grouping of use cases.

Here is a contrived example. The requirement is to provide an API that converts a CSV file into a tab-separated file. A scenario might be, "John is a Java developer who deals with potentially large CSV files that are sometimes empty." A use case might be "If the input file is empty, the output file will also be empty" or "The API does not run out of memory while processing a 500Gb file".

Finally, SQA gets a lot of "What is the different between these terms" kinds of questions. If you hear someone utter some ambiguous phrases, and it's important to understand what they mean (e.g. because a co-worker or your boss used them), ask them what they mean. Among reasonable people, it is always OK to say, "Different people use that phrase to mean different things, so can you be more specific about what you meant?" If you've never heard the phrases before, or you lack confidence, you can do a Google search first, come up with a first approximation of what they mean, and then ask that person to clarify what they meant.

  • 3
    Yep, and it may be useful to come up with a common, agreed upon, published definition somewhere so that when you're talking amongst teammates you know that you're all on the same page. – Sam Woods May 22 '13 at 18:56
  • 1
    Good answer. I would emphasize the "ask them what they mean" point. Often SQA adds significant value to a project by trying to ensure everyone means the same thing. When we can get the Product Manager, Project Manager, Business Analysts, Developers and QAers all meaning the same thing - then we have a better chance to avoid some bugs before they are committed to code. That's always a good thing. – Joe Strazzere May 23 '13 at 11:42
3

Considering your description, the clarifications can be given as :

Requirement : It is the changing need of the stakeholders which is tried to fulfill by the development team at the time of developing the product

Use case : After the requirements are clear, then the use cases can be designed/decided which will clear the overall flow of the system to developers first and then they can design the system accordingly. Once the flow is clear to them, then it becomes somehow simple to test the system by QA.

Scenario : It is the real life situation in which the end-user/customer uses/interacts with the system and came across various failures(if there are any). Hence we generally used to say Real world scenario.

Example: For a particular project the requirements are first being made clear by the Business Analyst. In the documentation and SRS part the Use cases can be found out and the development tasks can be alloted to various developers according to that. When user uses the system, then it becomes a scenario.

0

A scenario is a particular instance or set of steps for one path through the use case. A use case is a goal oriented process done by the system.

0

In software industry Requirement defines what our end goal is that customers exactly need and what will make our company to increase its business.It could be a product or service company which makes software products or offers services in various software fields, the most important thing is the requirement and how well the requirements are met.

Under Waterfall model, the Requirement documents are huge docs as the whole product is implemented in one phase. But this is not the case with Agile/SCRUM because in these methodologies the requirements are given for small functionalities or features as the product is prepared in a step by step manner.

User Story: A user story is a requirement for any functionality or feature which is written down in one or two lines and max up to 5 lines. A user story is usually the simplest possible requirement and is about one and only one functionality (or one feature).

It will be developed by Business Analyst based on the requirement specification. It is a detailed description of the Specification in a simplified version with realtime scenarios. The most commonly used standard format for a User Story creation is stated below:

As a (user role/customer), I want to (goal to be accomplished) so that I can (reason of the goal).

Scenario: While writing a test case for a module, you write different tests for that module say, Creating a user.There may be several ways to create a user like, creating a user through wizard or through uploading set of users. These are all the things we can call as a scenarios.

Based on Use case and scenarios, test cases will be written by the testers in software testing company.

One more thing, user stories aren't just single sentence affairs. The product owner also writes acceptance criteria, which define the boundaries of a user story, and are used to confirm when a story is completed and working as intended.

An acceptance criterion is a set of accepted conditions or business rules which the functionality or feature should satisfy and meet, in order to be accepted by the Product Owner/Stakeholders.

As a QA it is very important to understand the user story and its acceptance criteria profoundly with not even a single doubt remaining at the ‘start of testing’.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.