0% found this document useful (0 votes)
18 views11 pages

Online Bookstore System Specification

The document outlines the project specification for an Online Bookstore System, detailing actors, use cases, and various diagrams including use case, activity, class, communication, and state machine diagrams. It describes the purchasing process, software development methodologies, and the rationale for selecting the Agile methodology for development. The document also includes references and a declaration of originality by the student, Ntokozo Mchunu.

Uploaded by

Ntoki Mchunh
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
18 views11 pages

Online Bookstore System Specification

The document outlines the project specification for an Online Bookstore System, detailing actors, use cases, and various diagrams including use case, activity, class, communication, and state machine diagrams. It describes the purchasing process, software development methodologies, and the rationale for selecting the Agile methodology for development. The document also includes references and a declaration of originality by the student, Ntokozo Mchunu.

Uploaded by

Ntoki Mchunh
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd

ITSEA0 – Project Specification

Year: 2025

Project Title: Online Bookstore System

Section A – Question 1 (100 Marks)

Student Name: Ntokozo Mchunu


Student Number:EDUV10926826
Module Name: Software Engineering
Module Code: ITSEA0
Lecturer: Mathapelo Monare

Declaration:
I, Ntokozo Mchunu, declare that this project is my own work and that I have
not copied or used work from another student or source without proper
referencing.

Signature: N.M______________________
Date: 11/6/2026___________________________

Table of Contents
1. Actors...........................................................................................................3
Actors in the Online Bookstore System.........................................................3
2. Use Cases....................................................................................................3
Customer Use Cases.....................................................................................3
System Use Cases........................................................................................3
Administrator Use Case................................................................................4
Seller Use Case.............................................................................................4
3. Scenario for Purchasing a Book & Alternatives............................................4
Main Scenario – Customer Successfully Purchases a Book...........................4
Alternative Scenarios....................................................................................5
4. Use Case Diagram – Payment Process.........................................................5
5. Activity Diagram – Purchasing a Book.........................................................6
6. Class Diagram – Online Bookstore System..................................................7
7. Communication Diagram – Generating Invoice...........................................8
8. State Machine Diagram – Invoice Lifecycle..................................................8
9. Software Development Methodologies........................................................9
10. Motivation for the Selected Methodology..................................................9
Q11 — Documentation for Each Diagram......................................................10
References...................................................................................................11

ANSWERS

1. Actors
Actors in the Online Bookstore System
Customer — searches, browses, orders, pays.
Seller — uploads book listings and receives order notifications.
Administrator — approves accounts, manages database/users.
External Systems:
Payment Gateway — validates and processes payments.
Email Service — sends invoice notifications.
Inventory System — updates and checks stock availability.

2. Use Cases
Customer Use Cases
 Search for Book
 Refine Search / Filter Results
 Browse Categories
 View Book Details
 Add to Cart
 Checkout Order
 Select Payment Method
 Process Payment
 Receive Invoice / Order Confirmation
System Use Cases
 Validate Book Availability / Stock
 Process Payment Request
 Generate Invoice
 Send Invoice via Email
 Update Order Status & Inventory
Administrator Use Case
 Manage User Accounts (approve, reject, and maintain accounts)
Seller Use Case
 Upload Book Listings
 Receive Order Notification

3. Scenario for Purchasing a Book & Alternatives


Main Scenario – Customer Successfully Purchases a Book
Pre-conditions:
 Customer is registered and logged in
 Book is available in stock
 Customer has valid payment method
Steps:
1. Customer searches for a book.
2. Customer selects the desired book and views details.
3. Customer adds the book to the shopping cart.
4. Customer proceeds to checkout.
5. System displays order summary and delivery address.
6. Customer selects payment method and confirms purchase.
7. System sends payment request to the payment gateway.
8. Payment gateway verifies and approves the transaction.
9. System creates the order.
10. System generates an invoice.
11. System emails the invoice and confirmation to the customer.
12. Seller receives order notification to prepare and ship the book.
Post-conditions:
 Order and payment are successfully recorded
 Invoice is issued and emailed to customer
 Seller is notified to fulfill the order
Alternative Scenarios

Condition System Response / Action

Customer is notified and offered option to pre-order or


Book out of stock
receive stock alert

No search results / incorrect System suggests spelling corrections or alternative


spelling titles

Customer is prompted to retry payment or choose


Payment fails
another method

Incorrect registration details System requires corrections before admin approval

Invalid card or insufficient Transaction rejected → customer can update payment


funds details
4. Use Case Diagram – Payment Process

Figure 1: Use Case Diagram showing actors and payment process interactions
Explanation:
The diagram shows the payment process in the online bookstore system.
The Customer initiates checkout and enters payment details.
The Payment Gateway processes and verifies the payment.
Once successful, the system generates and emails an invoice to the customer.
5. Activity Diagram – Purchasing a Book

Figure 2: Activity diagram showing the steps from customer registration to order
completion
Explanation:
This activity diagram shows the full process of purchasing a book.
The Customer searches for a book, adds it to the cart, and confirms checkout.
The System validates stock, processes payment, generates the invoice, and notifies the
Seller.
Decisions for payment success or failure are shown as diamond nodes in the diagram.
6. Class Diagram – Online Bookstore System

Figure 3: Class diagram showing all main classes, attributes, operations, and
relationships
Explanation:
The class diagram represents the system’s data structure.
It includes all main classes with their attributes and operations.
Relationships such as associations, multiplicities, and inheritance are shown to illustrate
how objects interact and store information.

7. Communication Diagram – Generating Invoice


Figure 4: Communication diagram showing interactions for generating an invoice
Explanation:
The communication diagram shows object interactions during invoice generation.
The Invoice object is created when the customer completes payment, communicates
with the Seller and Book objects, and is destroyed after all steps.
Messages are numbered to show the order of execution.

8. State Machine Diagram – Invoice Lifecycle

Figure 5: State machine diagram showing the lifecycle of an invoice


Explanation:
The state machine diagram illustrates the lifecycle of an invoice in the system.
It starts in the Created state, moves to Pending while awaiting payment, progresses to
Paid, then Sent after emailing the customer, and finally becomes Archived for record-
keeping.
Guard conditions are enclosed in square brackets where appropriate.
9. Software Development Methodologies
Five common ways software projects are developed:
Waterfall
1. Works step by step, one phase at a time. You finish requirements first, then
design, then coding, testing, and finally maintenance.
2. Easy to manage but not flexible if changes are needed.
Agile
1. Works in small cycles called sprints, with continuous feedback.
2. Lets the team adjust quickly if requirements change.
Scrum
1. A type of Agile approach. Work is divided into short sprints (2–4 weeks). Daily
meetings help track progress.
2. Useful for complex projects where things may change often.
Rapid Application Development (RAD)
1. Focuses on building prototypes quickly and improving them based on user
feedback.
2. Speeds up development and helps users see progress early.
Spiral
1. Combines repeated development cycles with risk analysis.
2. Each cycle plans, checks for risks, builds, and evaluates.
3. Good for big projects where mistakes could be costly.

10. Motivation for the Selected Methodology

For this project, the Agile method is the best choice. The system has many parts, like
customer registration, book uploading, payments, and sending invoices. Because of
this, the requirements may change as the system is being developed. Agile allows the
team to work in small steps, test each part, and fix problems early.
Another reason for choosing Agile is that feedback is important. Customers, sellers, and
the admin might want changes or new features as the system grows. With Agile it is
easy to adjust and improve the system without starting over.
Overall, Agile helps the project stay flexible, improves quality, and makes sure the final
system meets user needs.
Q11 — Documentation for Each Diagram

Use Case Diagram – Explanation


This diagram shows the main functions of the online bookstore system and the people
who interact with it. The actors are the Customer, Seller, and Administrator. The diagram
displays what each user can do, such as customers buying books, sellers uploading
books, and the admin approving users. It helps us understand the system requirements
and who does what in the system.

Activity Diagram – Explanation


The activity diagram explains the full process in the system from registration to buying a
book. It shows the flow of actions between the Customer, System, Admin, and Seller
using swimlanes. This diagram helps to visualise the steps a customer takes, the
system responses, and when the admin or seller is involved. It clearly shows decision
points, like when payment succeeds or fails.

Class Diagram – Explanation


The class diagram shows the main classes (Customer, Book, Order, Payment, Invoice,
Seller, and Admin) and the relationships between them. It includes attributes and
methods for each class. This diagram is used to plan the structure of the system and
how data will be stored and connected inside the program.

Communication Diagram – Explanation


This diagram shows how objects (Customer, Invoice, Book, Seller) communicate when
an invoice is created. It includes the order of messages sent between them. The
diagram explains how the invoice object is created during the purchase process, used
to send notifications, and then destroyed afterwards. It helps us understand the
message flow in the system.
State Machine Diagram – Explanation
The state machine diagram shows the different stages an invoice goes through in the
system. These states include Created, Pending, Paid, Sent, and Archived. The diagram
helps to understand how the invoice behaves during the payment and order process
and how it changes from one state to another.

References
1. Eduvos Learning Manual. (2025). Systems Analysis and Design
(ITSEA0) – Project Guide. Eduvos, South Africa.
2. PlantUML. (2025). Online UML Diagram Generator. Available at:
[Link] [Accessed: November 2025].
3. TutorialsPoint. (2025). UML Diagrams – Examples and Explanation.
Available at: [Link] [Accessed: November
2025].
4. Lucidchart. (2025). UML Diagram Types and Examples. Available at:
[Link] [Accessed: November
2025].
5. Eduvos Academic Writing Centre. (2025). Harvard Referencing Style
Guide. Eduvos, South Africa.

You might also like