Digital Assessment 2: Software Engineering Principles CSI1007
Digital Assessment 2: Software Engineering Principles CSI1007
DIGITAL ASSESSMENT 2
Register No. –
Course Name -
Course Code -
SLOT -
Date of Submission –
Winter 2023-2024
Software Engineering Principles CSI1007
DIGITAL ASSESSMENT 2
Digital Assessment 2.1
2.1 Aim
To perform requirement analysis and create different Requirement Analysis
Models.
2.2.1 Introduction
Requirement Analysis Modelling
▪ It involves analyzing, refining, and scrutinizing the gathered
requirements to make them consistent and unambiguous.
▪ It is the process of creating visual representations of the needs and
expectations for a system or product.
▪ Models help to communicate and understand the requirements,
identify potential problems or conflicts, and ensure that the final
product meets the needs of the stakeholders.
Winter 2023-2024
Software Engineering Principles – CSI1007
Techniques used:
1.1 Use Case
▪ A use case describes a specific sequence of actions that a user (called
an "actor") takes to achieve a particular goal within a system.
▪ It serves as a blueprint for understanding how users will interact with
the system and what they expect to accomplish.
Winter 2023-2024 3
Software Engineering Principles – CSI1007
Key Components
▪ Actor: Anything exhibiting behavior that interacts with a system, such
as a single user, a team, or another piece of software
▪ Goal: This is the specific objective the user wants to achieve through
the use case.
▪ Main Flow: This is the primary sequence of steps the user takes to
achieve the goal.
▪ Alternative Flows: These are potential variations or exceptions to the
main flow, like handling errors or unforeseen situations.
▪ Pre-conditions: These are the requirements that must be met before
the use case can start, such as user authentication or data availability.
▪ Post-conditions: These are the results of the use case, including the
desired state of the system and any outputs generated.
Key Components:
▪ Actors: Actors are external entities that interact with the system. These
can include users, other systems, or hardware devices. In the context
of a Use Case Diagram, actors initiate use cases and receive the
outcomes.
▪ Use Cases: Use cases represent specific things your system can do.
They are represented by ovals. For example, in an online shopping
system, examples of use cases could be “Place Order,” “Track Delivery,”
or “Update Product Information”.
▪ System Boundary: The system boundary is a visual representation of
the scope or limits of the system you are modeling. It defines what is
Winter 2023-2024 4
Software Engineering Principles – CSI1007
inside the system and what is outside. The boundary helps to establish
a clear distinction between the elements that are part of the system and
those that are external to it. The system boundary is typically
represented by a rectangular box that surrounds all the use cases of
the system.
▪ Use Case Diagram Relationships: In a Use Case Diagram,
relationships play a crucial role in depicting the interactions between
actors and use cases. These relationships provide a comprehensive view
of the system’s functionality and its various scenarios.
2.1.3 Procedure
For Creating Use case follow the steps:
1. Identify the Actors: Determine who will be interacting with the system.
These are the users who will be engaging with your system.
2. Define Goals: Write a goal statement for each actor. This should briefly
describe the primary goal of implementing the technology or business
process.
3. Identify Use Cases: For each actor, determine what they want to do
with the product and create a separate use case for each action. Each
action the user does becomes a separate use case.
4. Define the Elements of the Use Case: All of these elements are
required in every use case. Use cases accumulate scenarios.
5. Describe the Normal Course of Events: For each use case, describe
the normal course of events when the user uses the product.
6. Identify Stakeholders: These are the people in the organization who
care about the outcome of the process. They may not be users in the
process described by the use case, but the system acts to satisfy their
interests.
Winter 2023-2024 5
Software Engineering Principles – CSI1007
Winter 2023-2024 6
Software Engineering Principles – CSI1007
Winter 2023-2024 7
Software Engineering Principles – CSI1007
Winter 2023-2024 8
Software Engineering Principles – CSI1007
Winter 2023-2024 9
Software Engineering Principles – CSI1007
Aim: You are asked to develop use cases and use case diagram for Online
shopping on an e-commerce platform.
Solution (Sample)
Use Case 1: Purchase an item as a registered user.
▪ Actor: Registered user on the e-commerce platform
▪ Goal: Successfully purchase an item and have it delivered to their
chosen address.
▪ Basic Flow:
o Browse products: The user searches for the desired item using
keywords or categories.
o View product details: The user selects the item and views its
details, including description, price, reviews, and availability.
o Add to cart: If satisfied, the user adds the item to their shopping
cart.
o Review cart: The user reviews the items in their cart, modifying
quantities or removing unwanted items if needed.
o Proceed to checkout: The user proceeds to checkout and
confirms their chosen shipping address and payment method.
o Place order: The user confirms the order and payment, finalizing
the purchase.
o Order confirmation: The user receives an order confirmation
email with details.
o Track order: The user can track the order's progress through
their account or a tracking link.
o Delivery: The item is delivered to the chosen address within the
estimated timeframe.
o Review and rating: The user can optionally leave a review and
rating for the purchased item.
▪ Alternative Flow
o Item out of stock: If the desired item is out of stock, the user
should be notified and offered alternative options or the ability to
be notified when it's back in stock.
Winter 2023-2024 10
Software Engineering Principles – CSI1007
Note: Similarly write down other use cases for this web application
Hints:
▪ Browse and Search Products
▪ Manage Account and Orders
▪ Guest checkout: Allow users to purchase without creating an account.
▪ Social login: Offer login options through social media accounts for faster
checkout.
▪ Order tracking and notifications: Provide real-time updates on order
status and delivery progress.
▪ Personalized recommendations: Suggest products based on user
browsing history and purchase behavior.
Winter 2023-2024 11
Software Engineering Principles – CSI1007
▪ Live chat and customer support: Aid users with questions or issues
during the shopping journey.
▪ Gift cards and vouchers: Enable users to purchase and redeem gift
cards for others.
▪ Subscription boxes and recurring orders: Allow users to subscribe to
regular deliveries of selected products.
▪ Product returns and exchanges: Facilitate a smooth process for
returning or exchanging unwanted or damaged items.
2.1.5 Conclusion:
Through this laboratory exercise, we have gained a deeper understanding of
the importance and application of use cases and use case diagrams in
software development. We have learned how to identify actors, define their
goals, and outline the interactions they have with the system.
Winter 2023-2024 12