Interaction Use Case Model
An Interaction Use Case Model is an interaction model between a system user and a designed system.
- AKA: Usage Scenario.
- Context:
- It can (typically) be used to capture functional requirements of a system.
- It can (typically) involve interactions between one or more actors and the system.
- It can (often) involve integration with existing systems and workflows, highlighting the importance of strategic planning and expertise.
- It typically defines the interactions between an actor and a system. An actor can be a human or an external system.
- It can represent higher-level missions or stakeholder goals.
- It can (often) help define situations where software can be useful.
- It can be captured in Systems Modeling Language (SysML) or as contractual statements.
- It can be created by Use Case Modeling, a system analysis technique that describes a set of actions, executed by a system, which yields a visible result of value to an actor.
- It can help in identifying and clarifying system requirements.
- It can aid in the understanding of the system's functionality from the user's perspective.
- It can serve as a basis for creating test cases in the software development process.
- It can range from being a Brief Use Case to being a Detailed Use Case.
- ...
- Example(s):
- One of users interacting with the system to check their bank account balance.
- One of the process a customer goes through to search for a product, add it to their cart, and complete the purchase (e.g. using an online shopping service).
- an Online Shopping Interaction Use Case, for online shopping.
- a Contract Review System Interaction Use Case, for contract review tools.
- an AI Use Case, such as: legal AI use case or a conversational agent use case.
- …
- Counter-Example(s):
- a Case Study.
- A System Requirement that specifies technical details, such as hardware specifications or software architectures, does not qualify as a use case.
- A User Story, which is a short, simple description of a feature told from the perspective of the user who desires the new capability.
- See: Software Design, Systems Engineering, Systems Modeling Language.
References
2023
- (Wikipedia, 2023) ⇒ https://en.wikipedia.org/wiki/Use_case Retrieved:2023-6-9.
- In software and systems engineering, the phrase use case is a polyseme with two senses:
- A usage scenario for a piece of software; often used in the plural to suggest situations where a piece of software may be useful.
- A potential scenario in which a system receives an external request (such as user input) and responds to it.
- This article discusses the latter sense.
A use case is a list of actions or event steps typically defining the interactions between a role (known in the Unified Modeling Language (UML) as an actor) and a system to achieve a goal. The actor can be a human or another external system. In systems engineering, use cases are used at a higher level than within software engineering, often representing missions or stakeholder goals. The detailed requirements may then be captured in the Systems Modeling Language (SysML) or as contractual statements.
- In software and systems engineering, the phrase use case is a polyseme with two senses:
2014
- (Wikipedia, 2014) ⇒ http://en.wikipedia.org/wiki/Use_case Retrieved:2014-7-13.
- In software and systems engineering, a use case is a list of steps, typically defining interactions between a role (known in Unified Modeling Language (UML) as an “actor") and a system, to achieve a goal. The actor can be a human or an external system.
In systems engineering, use cases are used at a higher level than within software engineering, often representing missions or stakeholder goals. The detailed requirements may then be captured in Systems Modeling Language (SysML) or as contractual statements.
As an important requirement technique, use cases have been widely used in modern software engineering over the last two decades. Use case driven development is a key characteristic of process models and frameworks like Unified Process (UP), Rational Unified Process (RUP), Oracle Unified Method (OUM), etc. With its iterative and evolutionary nature, use case is also a good fit for agile development.
- In software and systems engineering, a use case is a list of steps, typically defining interactions between a role (known in Unified Modeling Language (UML) as an “actor") and a system, to achieve a goal. The actor can be a human or an external system.
2016
- (Jacobson et al., 2016) ⇒ Ivar Jacobson, Ian Spence, and Brian Kerr. (2016). “Use-Case 2.0.” In: Communications of the ACM, 59(5), 61-69.
- NOTE: It discusses the evolution of use case practices, introducing Use-Case 2.0 which incorporates new ideas to enhance flexibility and effectiveness in software development.
2015
- (Tiwari & Gupta, 2015) ⇒ Saurabh Tiwari, and Atul Gupta. (2015). “A Systematic Literature Review of Use Case Specifications Research.” In: Information and Software Technology, 67, 128-158.
- NOTE: It presents a systematic review aimed at consolidating knowledge on use case specifications to aid developers in improving the effectiveness of their use case documents.
2009
- (Gemino & Parker, 2009) ⇒ Andrew Gemino, and Drew Parker. (2009). “Use Case Diagrams in Support of Use Case Modeling: Deriving Understanding from the Picture.” In: Journal of Database Management (JDM), 20(1), 1-24.
- NOTE: It examines the impact of including use case diagrams in the modeling process, suggesting that visual representations can significantly improve the effectiveness of use case modeling.
2003
- (Bittner & Spence, 2003) ⇒ Kurt Bittner, and Ian Spence. (2003). “Use Case Modeling.” In: Addison-Wesley Professional.
- NOTE: It provides comprehensive guidance on the use case modeling process, detailing the creation and documentation of use cases for software development projects.