SOFTWARE REQUIREMENT SPECIFICATION
(SRS) FOR
Quick Cart
Submitted By:
Swastika Das
Roll: 20CSE050
Exam roll:
CSE042
Date: February 16, 2025
Submitted To:
Md. Erfan,
Chairman
Department of Computer Science and Engineering,
University of Barisal
i
QuickCart
1 INTRODUCTION
1.1 Purpose
The purpose of this document is to define the requirements for the "QuickCart" shopping
application. QuickCart aims to provide a seamless online shopping experience where
users can browse, search, and purchase products efficiently.
1.2 Scope
QuickCart will be a multi-functional shopping application allowing users to:
1. Register/Login into the platform.
2. Add products to the Cart
3. Browse and search for products.
4. Add products to the cart and make secure payments.
5. View order history and track shipments.
6. Leave product reviews and ratings.
1.3 Problem Definition
Many online shopping platforms are slow, difficult to navigate, and lack personalized
recommendations, making it hard for users to find relevant products. Additionally,
security concerns prevent users from sharing personal and payment details, and inefficient
order management makes tracking and returns complicated.
QuickCart solves these issues by providing a fast, secure, and user-friendly shopping
experience. It offers smooth navigation, personalized product suggestions, secure
transactions, and real-time order tracking, making online shopping easier and more
enjoyable for users.
1.4 Audience
People interested in buying and selling their products without the involvement of any
middleman and free of charges are the targeted audience of this platform.
1.5 Software Requirements
Frontend: Flutter (Dart)
1
Database: Firebase
Platform: Android, iOS
2.SYSTEM MODEL
2.6 State Transition Diagram
Figure 1: State Transition Diagram
State transition diagrams are used to give an abstract description of the behavior of a
system. This behavior is analyzed and represented by a series of events that can occur in
one or more possible states. Here the system is started with an initial state which is black
dot as shown in the above figure. Logged in registered users have privilege to more states
than normal users.
2
1.6 Sequence Diagram
Figure 2: Sequence Diagram
A sequence diagram simply depicts interaction between objects in a sequential order i.e.
the order in which these interactions take place. The above figure shows the interaction of
the user with various objects of the system acted in sequence to carry out several tasks by
user.
3
1.7 Use Case Diagram
Figure 3: Use Case Diagram
A use case is a representation of a user’s interaction with the system that shows the
relationship between the user and the different use cases in which the user is involved.
The above figure shows the use cases of the user in the system. The user must be logged
in to perform use cases like add products, view profile, view products dashboard.
4
1.8 Data Flow Diagram
Figure 4: Level 0 DFD (Context Flow Diagram)
A data flow diagram (DFD) is a way of representing a flow of data of a process or a
system. DFD describes the processes that are involved in a system to transfer data from
the input to the file storage and reports generation. The above figure shows the data flow
of various processes in QuickCart.
5
1.9 ER Diagram
Figure 5: ER Diagram
An Entity Relationship model (ER model) describes the structure of a database with the
help of ER diagram. An ER diagram shows the relationship among entity sets and can be
later implemented in database. An entity set is a group of similar entities and these
entities can have attributes. Above figure shows the entities along with their attributes and
relationship among them.
6
1.10 Product Function
There are mainly two types of users:
1.10.1 Normal users: Users without signing in to the system.
Users can search the products.
Users can view the company profile.
Users can view product profile.
Users can access the user manual.
1.10.2 Authorized users: Users with verified username and password.
They will have all the privilege of the normal users.
They can add products.
They have their own profile.
They have their own dashboard containing products detail.
Quality Function Deployment (QFD)
1. Normal Requirements (Basic/Functional)
These are the core features that users expect in a shopping app.
✔ User Authentication & Profile
Sign up, login (email, phone, Google, Facebook)
User profile management
✔ Product Catalog & Categories
Display of product categories
Product search & filters
✔ Product Details
Description, price, images, ratings & reviews
✔ Shopping Cart
Add/remove items, adjust quantity
7
✔ Checkout & Payment
Multiple payment options (Card, Mobile Wallets, COD)
Order summary
✔ Order Management
Order tracking & history
Wishlist
Save products for later
✔ Customer Support
Contact support, FAQs
2. Expected Requirements (Performance/Enhanced Features)
These improve the user experience and efficiency.
✔ Personalized Recommendations
AI-based product suggestions
✔ Discounts & Offers
Coupons, deals, seasonal sales
✔ Push Notifications
Alerts for offers, cart reminders, order updates
✔ Multiple Payment Integrations
PayPal, Stripe, Apple Pay, Google Pay
✔ Multi-language & Multi-currency Support
Localized shopping experience
✔ Delivery Tracking with Maps
Real-time delivery status
✔ User Reviews & Rating
8
Verified customer feedback
✔ Dark Mode & Custom Themes
UI customization for better usability
3. Excited Requirements (Delighters/Innovations)
These features create a "wow" effect and exceed user expectations.
✔ Augmented Reality (AR) Shopping
Try products (e.g., clothes, furniture) in AR
✔ Voice Search & AI Chatbot
Smart assistant for product discovery
✔ Virtual Try-On for Clothing & Accessories
AI-based fitting room experience
✔ Subscription-Based Shopping
Auto-replenish essentials (e.g., groceries)
✔ One-Click Checkout
Faster order placement
✔ Social Shopping & Influencer Integration
Follow favorite influencers, see their recommended products
✔ Gamification & Loyalty Rewards
Points, badges, spin-the-wheel offers