ASANSOL ENGINEERING COLLEGE
Presentation on
"USE CASE MODELLING AND RELATIONSHIP"
Submitted by-
Name : Pampa Malakar
Roll No. :10831122030
Dept.: Computer Science and
Business System
Year: 3rd Sem : 6th
Subject Name :
Software Design Using UML
Subject Code :PEC-CSBS 602D
INTRODUCTION
Use Case Modelling is a technique in software engineering used
to define how users, known as actors, interact with a system to
achieve specific goals. It provides a clear and structured way to
represent system functionality from an external user's
perspective. By visualizing these interactions, use case modelling
helps in understanding system requirements, improving
communication between stakeholders, and ensuring better
system design and documentation. It plays a crucial role in
defining system behavior, making it an essential tool for
software development and analysis.
DEFINITION OF USE CASE
A Use Case describes how a user (actor) interacts with a
system to achieve a specific goal.
Represents a functional requirement of the system.
Outlines the steps of interaction, including inputs, processes,
and outcomes.
Defines system behavior from an external user’s perspective.
Helps in clarifying system requirements and improving design.
ELEMENTS OF USE CASE
Actors – Users or external systems that interact with the system.
Use Case – A specific function or process the system performs for an actor.
System Boundary – Defines the scope of the system and its interactions.
Relationships – Connections between use cases and actors, including:
Association (basic interaction)
Include (mandatory use case inclusion)
Extend (optional behavior addition)
Generalization (inheritance among actors or use cases)
Preconditions – Conditions that must be met before a use case starts.
Postconditions – Expected outcomes or state changes after execution.
Flow of Events – The sequence of steps describing interaction within the use
case.
Main Flow (primary path of execution)
Alternative Flow (variations in execution)
Exception Flow (error handling scenarios)
ACTORS IN USE CASE MODELLING
An Actor in Use Case Modelling represents an entity that interacts with
the system to achieve a goal. Actors can be users, external systems, or
devices that initiate or receive information from a use case.
Types of Actors:
Primary Actor – Initiates interaction with the system to achieve a goal.
Example: A Customer placing an order in an e-commerce system.
Secondary Actor – Supports or assists in the use case but does not
initiate it.
Example: A Payment Gateway that processes transactions.
Internal Actor – A system component that acts like an actor within the
system.
Example: A Database retrieving stored user information.
External Actor – An entity outside the system that interacts with it.
Example: A Third-party API fetching weather data.
PURPOSE OF USE CASE MODELLING
• Captures Functional Requirements – Clearly defines what the
system should do from a user’s perspective.
• Enhances Communication – Helps stakeholders, developers,
and designers understand system interactions.
• Improves System Design – Provides a structured approach to
defining system behavior.
• Ensures Requirement Validation – Helps verify completeness
and correctness of system functionality.
• Aids in Testing and Development – Serves as a reference for
designing test cases and system implementation.
• Simplifies Documentation – Creates a visual representation of
system processes for easy understanding.
RELATIONSHIPS IN USE CASE MODELLING
• Association – A direct interaction between an actor and a use
case, representing communication.
• Include – A use case mandatorily includes the functionality of
another use case to avoid repetition.
Example: "Process Payment" includes "Validate Card Details."
• Extend – A use case optionally extends another use case
based on conditions.
Example: "Place Order" extends "Apply Discount" if a promo
code is available.
• Generalization – Represents an inheritance relationship
between actors or use cases.
Example: "Admin" is a generalization of "User" since it has
additional privileges.
USE CASE DIAGRAM EXAMPLE(ONLINE
SHOPPING SYSTEM)
• Actors:
• Customer
• Admin
• Use Cases:
• Browse Products
• Add to Cart
• Checkout
• Manage Inventory (Admin)
• Relations:
• The Customer can browse
products, add to the cart, and
complete the checkout.
• The Admin can manage the
inventory.
BENEFITS OF USE CASE MODELLING
• Clarifies System Requirements – Clearly defines what the
system should do from a user’s perspective.
• Enhances Communication – Provides a common
understanding between stakeholders, developers, and
designers.
• Identifies Actors and Interactions – Defines how different
users interact with the system.
• Validates Functional Requirements – Ensures completeness
and correctness of system functionality.
• Aids in Test Case Development – Helps create test scenarios
based on user interactions.
TOOLS FOR CREATING USE CASE DIAGRAMS
• Microsoft Visio – A widely used diagramming tool with built-in
UML templates.
• Lucidchart – A cloud-based tool for creating UML diagrams
with collaboration features.
• [Link] ([Link]) – A free, web-based tool for creating
UML diagrams easily.
• StarUML – A lightweight and open-source tool for creating
UML diagrams.
• PlantUML – A text-based UML tool that allows diagram
generation using simple text commands.
USE CASE MODELLING IN SOFTWARE DEVELOPMENT
• Requirement Analysis – Captures functional requirements
clearly and concisely.
• System Design & Architecture – Helps in structuring the
system and defining interactions.
• Stakeholder Communication – Provides a visual
representation of system behavior for better collaboration.
• Test Case Development – Assists in creating test scenarios
based on user interactions.
• Project Documentation – Serves as a reference for developers,
testers, and business analysts.
• Change Management – Helps assess the impact of
requirement changes on the system.
CONCLUSION
Use Case Modelling and Relationships play a vital role in
software development by providing a structured approach to
defining system interactions. It helps in capturing functional
requirements, improving stakeholder communication, and
ensuring a clear system design. The use of relationships such as
Association, Include, Extend, and Generalization enhances the
model’s flexibility, making it easier to represent complex
interactions. By simplifying system behavior from a user's
perspective, use case modelling aids in requirement validation,
testing, and documentation, ultimately leading to a well-
structured and user-centric software system.
THANK YOU