A use case is a methodology used in system analysis to identify, clarify and organize system requirements. The use case is made up of a set of possible sequences of interactions between systems and users in a particular environment and related to a particular goal. The method creates a document that describes all the steps taken by a user to complete an activity. Show
Use cases are typically written by business analysts and can be employed during several stages of software development, such as planning system requirements, validating design, testing software and creating an outline for online help and user manuals. A use case document can help the development team identify and understand where errors may occur during a transaction so they can resolve them. Every use case contains three essential elements:
Characteristics of use caseUse cases describe the functional requirements of a system from the end user's perspective, creating a goal-focused sequence of events that is easy for users and developers to follow. A complete use case will include one main or basic flow and various alternate flows. The alternate flow, also known as an extending use case, describes normal variations to the basic flow as well as unusual situations. A use case should display the following characteristics:
How to write a use caseThere are two different types of use cases: business use cases and system use cases. A business use case is a more abstract description that's written in a technology-agnostic way, referring only to the business process being described and the actors that are involved in the activity. A business use case identifies the sequence of actions that need to be performed by the business to provide a meaningful, observable result to the end user. On the other hand, a system use case is written with more detail than a business use case, referring to the specific processes that must happen in various parts of the system to reach the final user goal. A system use case diagram will detail functional specifications, including dependencies, necessary internal supporting features and optional internal features. When writing a use case, the design scope should be considered to identify all elements that lie within and outside the boundaries of the processes. Anything essential to the use case that lies outside its boundaries should be indicated with a supporting actor or by another use case. The design scope can be a specific system, a subsystem or the entire enterprise. Use cases that describe business processes are typically of the enterprise scope. As mentioned, the three basic elements that make up a use case are actors, the system and the goal. Other additional elements to consider when writing a use case include:
The use case is written using narrative language, describing the functional requirements of a system from the end user's perspective. A use case diagram is created using a unified modeling language, with each step represented by its name in an oval; each actor represented by a stick figure with their name written below; each action indicated by a line between the actor and step; and the system boundaries indicated by a rectangle around the use case. The writing process includes:
When writing a use case, developers may use a sequence diagram -- which shows how objects react along a timeline -- to model the interactions between objects in a single use case. Sequence diagrams allow developers to see how each part of the system interacts with others to perform a specific function as well as the order in which these interactions occur to complete a use case. Benefits of use caseA single use case can benefit developers by revealing how a system should behave while also helping identify any errors that could arise in the process. Other benefits of use case development include:
In addition, use cases can be easily transformed into test cases by mapping the common course and alternate courses and gathering test data for each of the scenarios. These functional test cases will help the development team ensure all functional requirements of the system are included in the test plan. Furthermore, use cases can be used in various other areas of software development, including project planning, user documentation and test case definitions. Use cases can also be used as a planning tool for iterative development. Use case vs. user storyWhile both a use case and a user story are used to identify system users and describe their goals, the two terms are not interchangeable; they serve different purposes. While a use case is more specific and looks directly at how a system will act, a user story is an Agile development technique that focuses on the result of the activities and the benefit of the process being described. More specifically, the use case -- often written as a document -- describes a set of interactions that occur between a system and an actor to reach a goal. The user story will describe what the user will do when they interact with the system, focusing on the benefit derived from performing a specific activity. In addition, user stories are often less documented than use cases and deliberately neglect important details. User stories are primarily used to create conversations by asking questions during scrum meetings, whereas use cases are used by developers and testers to understand all the steps a system must take to satisfy a user's request. Examples of use caseOutside of software and systems development, an example that can be used to explain uses cases is driving directions. A driver is looking to get from Boston to New York City. In this scenario, the actor is the driver, the goal is getting to New York and the system is the network of roads and highways they will take to get there. There is likely one route that is the most commonly taken by drivers between Boston and New York -- this is the common course use case. However, there are various detours that can be taken off this route that will still eventually lead the driver to New York City. These detours and different routes are the extending use cases. The goal of the driving directions is to identify each turn and highway exit the driver must take to reach their final destination. More specifically related to software and system development, a use case can be used to identify how a customer completes an order through an online retailer. First, the use case must be named, and the actors must be identified. In this scenario, the use case will be called "complete purchase" and the actors are:
Next, the triggers, preconditions and post-conditions are defined. In this case, the trigger is the customer indicating that they would like to purchase their selected products. The precondition for the use case is the customer selecting the items they eventually want to buy. The post-conditions include the order being placed; the customer receiving a tracking ID for their order; and the customer receiving an estimated delivery date for their order. Once the title, actors, triggers, preconditions and post-conditions are identified, the basic flow -- or common course use case -- can be outlined, starting with the customer indicating they want to make a purchase and ending with the customer exiting the system after receiving confirmation that their order has been placed. After the normal flow is written, all extending use cases should be detailed, recorded and included in the document. This was last updated in February 2020 Continue Reading About use case
Dig Deeper on Agile, DevOps and software development methodologies
What is a set of elements or components that interact to accomplish goals?Simply put, a system is an organized collection of parts (or subsystems) that are highly integrated to accomplish an overall goal. The system has various inputs, which go through certain processes to produce certain outputs, which together, accomplish the overall desired goal for the system.
Is a collection of elements people hardware software and data and procedures that interact to generate?This is Expert Verified Answer
It can be describe as the collection of elements and procedures to interact and generate information. The answer in the blank is an information system.
What is system types of system?Types of System : Physical or Abstract : Physical system is tangible entities that may be static or dynamic in nature. Abstract system is conceptual or non-physical. The abstract is conceptualization of physical situations. Open and Closed : An open system continually interacts with its environment.
What is the process of gathering storing accessing and analyzing data about a company in order to make better business decisions?Data management is the practice of collecting, organizing, protecting, and storing an organization's data so it can be analyzed for business decisions.
|