Use Case Modeling & Information System Diagrams
Use Case Modeling: Base Use Case and Conditional Flows
This section introduces Use Case Modeling, specifically focusing on its foundational aspects, which include base use cases and conditional flows. It sets the stage for understanding how systems are modeled from a user's perspective.
Information System (IS) Modeling
Information System Modeling is a crucial step in system development, involving the creation of various diagrams to represent different aspects of a system. The course will cover several key types of IS diagrams:
Use Case Diagram: Illustrates the functionality of a system from the user's perspective, showing actors and the use cases they perform.
Class Diagram: Describes the structure of a system by showing the system's classes, their attributes, operations (or methods), and the relationships among objects.
Sequence Diagram: Depicts the interactions between objects in a sequential order, focusing on the order of messages passed between objects.
Behavioral State Machine Diagram (BSM): Shows the dynamic behavior of an individual object over its lifetime in response to events.
IS Development Process
IS Modeling bridges the gap between business users and developers. It typically involves:
User Stories/Use Case Modeling: Initially capturing the requirements and functionalities from the business user's viewpoint.
Class Diagram: Translating those requirements into a structural design.
Sequence Diagram and other diagrams: Detailing the interactions and behaviors necessary for developers to implement the system.
This iterative process ensures that the developed system aligns with user needs and business objectives.
Group Exercise 1: Amazon Go
Objective: To apply use case modeling principles to a real-world scenario by creating a Use Case Diagram for Amazon Go. The exercise leverages a video demonstration of Amazon Go's "Just Walk Out Shopping" concept.
Guidance on Creating the Use Case Diagram for Amazon Go
To effectively create a Use Case Diagram for Amazon Go, follow these steps:
Identify Potential Actors: Determine all entities external to the Amazon Go system that interact with it. This includes human users (like shoppers) and any external systems (e.g., payment gateways, inventory management systems). Paying attention to external systems is crucial for a comprehensive model.
Understand Goals of Primary Actors: For each primary actor, identify their main objectives or what they intend to achieve by interacting with the system. Map these goals directly to specific use cases that represent the system's functions fulfilling those goals.
Draw the Use Case Diagram: Construct the diagram by:
Connecting actors to the use cases in which they participate.
Clearly defining the system boundary (a rectangle) that encloses all the use cases.
Labeling the entire system with the system name (e.g., "Amazon Go System").
Next Week's Topics: Elaborated Use Case
Future sessions will delve deeper into use case modeling with a focus on Elaborated Use Case concepts, including:
Extending Use Case: Describes how an extension point in a base use case can be conditionally executed by an extension use case.
Included Use Case: Details how a common functionality across multiple use cases can be factored out into a separate, reusable use case that is explicitly invoked by other use cases.