Patrick Reany
27 March 2024
Introduction:
Thought: In academia, the job is half finished when you have the correct definitions available and mastered.
There is often a fuzzy connection between the words and phrases we use and the meanings that go with them. This is often true even for technical words or phrases. I can think of three ways how that such a disconnect can occur:
I sought out Copilot to help me understand the term 'use case', and in particular to explain how the word 'case' fits into it. For example, if the word 'case' does not fit into its definition in the sense that I expect that it should (in the sense of 'going to cases'), then perhaps #1) above is the issue here. In the end, I cannot say if the decision Copilot and I arrived at is the correct one. All I can say is that I have tried hard to figure out what the phrase 'use case' means by analyzing many vague descriptions of it by YouTube presenters. As a general rule, if you are going to explain the meaning of a phrase, you should include justifying the existence of each word in it.
Patrick:
What is the origin of 'case' in use case?
Copilot:
The term "use case" has an interesting origin. Let's delve into its history:
In 1987, Ivar Jacobson, a Swedish computer scientist, introduced the concept of use cases at the OOPSLA '87 conference. He aimed to capture and specify system requirements using a combination of textual, structural, and visual modeling techniques for object-oriented analysis and design [1].
Originally, Jacobson used the terms "usage scenarios" and "usage case" (a direct translation of the Swedish term "användningsfall"). However, he found that neither of these terms sounded natural in English. After some contemplation, he settled on the more straightforward and widely accepted term: "use case" [1].
So, in essence, the term "case" in "use case"refers to a specific scenario or situation in which a system interacts with its actors (such as users or external systems) to achieve a goal. It represents a set of behaviors that the system performs when responding to external requests or events [1].
In summary, the origin of "case" in "use case" lies in Ivar Jacobson's efforts to describe and model system interactions and requirements in a clear and concise manner.
Source: Conversation with Bing, 3/27/2024
(1) Use case - Wikipedia. https://en.wikipedia.org/wiki/Use_case.
(2) Origin of Use Cases[Ivar Jacobson] - CPlus. https://www.cplusoop.com/uml/module3/use-case-origin.php.
(3) How To Use “Case By Case” In A Sentence: How and When to Use. https://thecontentauthority.com/blog/how-to-use-case-by-case-in-a-sentence.
(4) Use Cases | Usability.gov. https://www.usability.gov/how-to-and-tools/methods/use-cases.html.
Patrick:
Let me suggest a guess at 'case': The point of a 'use case' is to specify how some entity will communicate with a user through an interface, such as a keypad at an entranceway. The interface may provide either one way to use the interface, or it may provide many ways, each way being a 'case'. On case 1: keypad, the user can enter a secret code to enter; on case 2: 'use the intercom', the user can query someone else for permission to enter. And so forth.
Copilot:
Your interpretation of the term "use case" is quite insightful! Indeed, the concept of use cases revolves around understanding how a system interacts with its users or external entities. Let's break it down further:
1. Scenario Variety: A use case represents a specific interaction scenario between an actor (user or external system) and the system. Each use case captures a distinct way in which the system responds to external requests or events.
2. Multiple Paths: Just as you mentioned, a use case can have multiple paths or "cases." These paths correspond to different ways the system can handle a particular situation. For instance:
- Case 1 (Keypad): The user enters a secret code on the keypad to gain access.
- Case 2 (Intercom): The user uses the intercom to request permission from someone else.
- And so forth, as you rightly pointed out!
3. Clear Specification: By defining use cases, we create a clear and structured way to describe system behavior. It helps developers, designers, and stakeholders understand how the system should function in various scenarios.
In summary, use cases serve as valuable tools for specifying system behavior, ensuring that all possible interactions are considered and well-documented. Your analogy with entranceway scenarios beautifully captures the essence of use cases!
Conclusion:
The above pesentation seems fairly clear, except for one item. When Copilot said in 2.,
Just as you mentioned, a use case can have multiple paths or "cases."
it seems to be using the phrase 'use case' as both singular and plural. I suggest a rewrite to the form:
Just as you mentioned, a use-case analysis will reveal (or describe) multiple paths or "cases."