You are on page 1of 28

COMSATS University Islamabad (CUI)

Attock Campus

Software Requirement Specification


(SRS DOCUMENT)

for

SmartBuy

Version 1.0

By
Aqsa Shoaib CIIT/FA20-BSE-027/ATK
Maria Hassan CIIT/FA20-BSE-049/ATK

Supervisor
Dr. Muhammad Sardaraz

Bachelor of Science in Computer Science (2020-2024)


Revision History

Name Date Reason for Changes Version


Application Evaluation History

Comments (by committee) Action Taken


*include the ones given at scope time both in doc and
presentation

Supervised by
Supervisor’s Name

Signature______________
Table of Contents

1. Introduction ........................................................................................................................... 1
1.1 Purpose.......................................................................................................................................... 1
1.2 Scope ............................................................................................................................................. 1
1.3 Modules......................................................................................................................................... 1
1.4 Overview ....................................................................................................................................... 2
2. Overall Description ............................................................................................................... 4
2.1 Product Perspective ....................................................................................................................... 4
2.2 User classes and characteristics .................................................................................................... 4
2.3 Operating Environment ................................................................................................................. 5
2.4 Design and Implementation Constraints ....................................................................................... 6
3. Requirement Identifying Technique ................................................................................... 8
3.1 Use case (use case diagram + detail use case) .............................................................................. 8
3.1.2 Detail Use Case ......................................................................................................................... 9
4. Functional Requirements ................................................................................................... 12
4.1 FR-1 Description ......................................................................................................................... 12
4.2 FR-2 Description ......................................................................................................................... 12
4.3 FR-3 Description ......................................................................................................................... 12
4.4 FR-4 Description ......................................................................................................................... 13
4.5 FR-5 Description ......................................................................................................................... 13
5. Non-Functional Requirements ........................................................................................... 15
5.1 Data Accuracy ............................................................................................................................. 15
5.2 System Reliability ....................................................................................................................... 15
5.3 Legal and Ethical Compliance .................................................................................................... 15
5.4 User-Friendly Interface ............................................................................................................... 15
6. External Interface Requirements ...................................................................................... 17
6.1 User Interfaces Requirements ..................................................................................................... 17
6.2 Software interfaces...................................................................................................................... 17
6.3 Hardware interfaces .................................................................................................................... 18
6.4 Communications interfaces ......................................................................................................... 19
7. References ............................................................................................................................ 21
Chapter No 1
Introduction
1. Introduction
The SmartBuy project aims to revolutionize the online shopping experience through an innovative AI-
powered shopping assistant. By providing personalized product recommendations, comprehensive
product comparisons, and price tracking across various e-commerce sites, our vision for SmartBuy is to
offer a seamless, informed, and efficient shopping solution. This vision is rooted in our commitment to
saving customers time and effort while ensuring impartiality and credibility in the platform's operations.
In this document, we outline the SmartBuy project's objectives, scope, requirements, and architectural
design, offering a comprehensive view of this transformative endeavor.

1.1 Purpose

The purpose of the SmartBuy project is to create an innovative AI-powered shopping assistant that
transforms the online shopping experience. SmartBuy aims to provide an enhanced and efficient
shopping journey, saving users time and effort, while ensuring unbiased product recommendations and
comparisons. It addresses the shortcomings of existing platforms and aligns with various course modules
to deliver a sophisticated and secure shopping assistant. The project commits to legal and ethical
compliance, aiming to improve overall customer satisfaction and the online shopping process..

1.2 Scope
The SmartBuy software assists users in making informed purchasing decisions online. It provides
features for product search, comparison, and personalized recommendations.

1.3 Modules
The major modules of SmartBuy include:
 Product Search: Enables users to search for products from various e-commerce websites.
 Product Comparison: Allows users to compare the features and prices of different products.
 Personalized Recommendations: Provides users with tailored product recommendations.
 E-commerce Integration: Integrates with e-commerce platforms for data retrieval and
transactions.
 Data Security: Ensures the security and privacy of user data.
 User Management and Engagement: Manages user accounts and provides engagement
features.

1.4 Overview
The Software Requirements Specification (SRS) for SmartBuy serves as an extensive and fundamental
document that lays the foundation for the development of an innovative AI-powered shopping assistant.
This document functions as a comprehensive point of reference for the development team and all
stakeholders involved in the SmartBuy project. Its primary purpose is to ensure that a shared
understanding of the system's objectives, functionalities, and constraints is established among all parties.
The SRS offers a detailed overview of SmartBuy, including its system description and architecture,
functional and non-functional requirements, user and system interfaces, and various quality
characteristics such as performance, security, and user-friendliness. By elaborating on these critical
elements, the SRS takes on a pivotal role in steering the development process, guaranteeing that
SmartBuy fulfills its mission of delivering a seamless, informed, and efficient online shopping
experience.
Chapter No 2
Overall Description
2. Overall Description
2.1 Product Perspective

Figure 2.1. 1 Context Digram

2.2 User classes and characteristics

User class Description


Customer Customers are individuals or entities using the SmartBuy platform to make
informed and efficient online purchases. They represent a diverse group of online
shoppers, each with varying shopping habits, product interests, and purchasing
behaviors. Customers may include regular online shoppers, occasional buyers, or
those seeking specific products or deals. The SmartBuy platform caters to a wide
range of customers, providing them with personalized product recommendations,
comprehensive product comparisons, and price tracking across different e-
commerce sites. Customers have the flexibility to register, personalize their
profiles, and engage with the system, such as leaving reviews, ratings, and feedback
on products and recommendations.
Seller Sellers are businesses or individuals who offer products for sale through the
SmartBuy platform. They use SmartBuy as a platform to showcase their products
and interact with potential customers. Sellers can manage their product listings,
monitor sales, and respond to customer inquiries and reviews. SmartBuy provides
an interface for sellers to efficiently list, update, and manage their products,
enhancing their visibility and reach to a broad customer base.
System The System Administrator is responsible for managing and maintaining the
Admin SmartBuy system. They ensure the system's availability, security, and overall
performance. System Administrators have the authority to configure system
settings, monitor system health, and troubleshoot technical issues. They play a
crucial role in data security, system reliability, and compliance with relevant
regulations. This user class works behind the scenes to ensure the smooth operation
of the SmartBuy platform
Table 2.2. 1 User Classes and Characteristics

2.3 Operating Environment

SmartBuy operates in an online environment accessible through web browsers. It is compatible with
various web browsers and platforms, making it widely accessible to users. Users need an internet
connection to access the platform and benefit from its features. The system interacts with external e-
commerce sites through APIs to gather product data, and it relies on a secure and scalable hosting
environment to ensure its availability and responsiveness.

 Web Browsers: The system is expected to operate correctly with the following web browsers:
 Windows Internet Explorer versions 7, 8, and 9
 Firefox versions 12 through 26
 Google Chrome (all versions)
 Apple Safari versions 4.0 through 8.0
 Geographical Locations: The system should function across geographical locations as long as
users have access to the compatible web browsers mentioned above.
 Server and Database: The system's operation depends on servers and databases, which should
meet standard web hosting requirements, ensuring server-side functionality and data storage.
 Internet Connectivity: Users must have internet connectivity to access and use the web-based
application.
2.4 Design and Implementation Constraints

SmartBuy faces several design and implementation constraints:

 Data Availability: The system's ability to analyze and compare products depends on the
availability and quality of data from e-commerce sites. Incomplete or inaccurate data may limit
the system's analysis and recommendations.

 Data Privacy and Legal Compliance: SmartBuy must adhere to data privacy regulations and legal
standards. The system needs to protect user data, respect privacy, and ensure compliance with
laws and regulations related to data collection and usage.

 Technical Integration: The system must effectively integrate with various e-commerce sites and
APIs, ensuring compatibility, data access, and accurate data exchange.

 Competition: SmartBuy operates in a competitive market with other product comparison


platforms. It must establish a strong value proposition and user experience to attract and retain
users.
Chapter No 3
Requirement Identifying Technique
3. Requirement Identifying Technique
This section describes the requirements identifying technique(s) which further help to derive functional
requirements specification. The selection of the technique(s) will depend on the type of project. For
instance:

3.1 Use case (use case diagram + detail use case)


3.1.1 Usecase Diagram

Figure 3.1. 1 Use Case Diagram


3.1.2 Detail Use Case
Use Case ID: UC-1
Use Case Name: Order a Product
Actors: [An actor is a person or other entity external to the software system being specified
who interacts with the system and performs use cases to accomplish tasks.] e.g.
Primary Actor: Patron Secondary Actors: Smart Buy System
Description: The "Order Products" use case involves a Patron accessing the SmartBuy system,
browsing available products, adding products to their cart, and completing the
purchase process. This use case enables Patrons to interact with the SmartBuy
platform to make informed purchasing decisions
Trigger: The Patron expresses an intent to purchase products through the SmartBuy platform.
Preconditions: [List any activities that must take place, or any conditions that must be true, before
the use case can be started.
PRE-1. Patron is logged into COS.
PRE-2. Patron is registered for meal payments by payroll deduction.
Postconditions: POST-1. The Patron is logged into the SmartBuy system.
POST-2 The Patron has accessed the product catalog and added items to their cart.
Normal Flow:  Browse and Select Products:
The Patron logs into the SmartBuy system.
SmartBuy displays a user-friendly product catalog with available products and
categories.
The Patron selects products by adding them to the cart.
The Patron reviews the cart and proceeds to the checkout.

 Checkout and Payment:

SmartBuy calculates the total order amount, which includes taxes and any
applicable shipping charges.
The Patron confirms the order and proceeds to the payment step.
The Patron selects a payment method and provides the necessary payment
information.
The SmartBuy system processes the payment transaction.

 Order Confirmation:

SmartBuy confirms the order and sends an email confirmation to the Patron,
detailing the order and payment information.
The order details are stored in the SmartBuy database.
Inventory records are updated to reflect the products included in the order.
The payment transaction is successfully processed and recorded.
Alternative Insufficient Inventory :
Flows: If any product selected by the Patron is out of stock or unavailable, the SmartBuy
system notifies the Patron.
The Patron can choose to remove the out-of-stock product and continue with the
checkout process.2. Return to step 1 of normal flow.
Note: Insert a new row for each distinctive alternative flow. ]
Exceptions: Payment Error (1.0 E1):
If the SmartBuy system detects a payment processing error, the Patron is informed
of the issue.
The Patron can attempt to retry the payment or select an alternative payment method
to complete the purchase.
Business Rules Orders can only be confirmed when the Patron is logged into the SmartBuy system.
All payment transactions must be processed successfully before confirming the
order.
Assumptions:  Product availability information is updated in real-time.
 Patron payment information is accurate and up-to-date.
Table 3.1.2. 1 Use case details
Chapter No 4
Functional Requirements
4. Functional Requirements
4.1 FR-1 Description
Identifier FR-1
Title Product Search and Comparison
Requirement Users can search for products and compare them based on various attributes.
Source User Perspective
Rationale Facilitate informed decisions
Business Rule none
(if required)
Dependencies none
Priority high
Table 4.1.1. 1 Description of FR-1

4.2 FR-2 Description


Identifier FR-2
Title Personalized Recommendations
Requirement The system provides personalized product recommendations based on user
behavior and preferences.
Source User Perspective
Rationale Enhance user experience
Business Rule none
(if required)
Dependencies FR-1
Priority high
Table 4.1.1. 2 Description of FR-2

4.3 FR-3 Description


Identifier FR-3
Title E-commerce Integration
Requirement SmartBuy integrates with various e-commerce sites to gather product data
and price information.
Source Buisness Requirement Document
Rationale Ensure comprehensive data
Business Rule none
(if required)
Dependencies none
Priority high
Table 4.1.1. 3 Description of FR-3

4.4 FR-4 Description


Identifier FR-4
Title Price Tracking
Requirement The system shall track and notify users of price changes for selected
products across various e-commerce platforms.
Source Development Team
Rationale Empowers users to make cost-effective decisions and capitalize on
discounts or promotions.
Business Rule Users must opt-in for notifications.
(if required)
Dependencies External APIs
Priority Medium
Table 4.1.1. 4 Description of FR-4

4.5 FR-5 Description


Identifier FR-5
Title User Management and Engagement
Requirement Users can create accounts, manage their profiles, and engage with the
system through reviews and ratings.
Source Admin
Rationale Enhance user engagement
Business Rule none
(if required)
Dependencies none
Priority medium
Table 4.1.1. 5 Description of FR-5
Chapter No 5
Non Functional Requirements
5. Non-Functional Requirements

5.1 Data Accuracy


The system must ensure that product information is accurate and up-to-date. Inaccurate or outdated data
may erode user trust and satisfaction.

5.2 System Reliability


SmartBuy should be reliable, operating smoothly without erratic behavior or frequent crashes. Reliable
performance is essential for maintaining a dependable service.

5.3 Legal and Ethical Compliance


The platform must adhere to legal and ethical constraints regarding data collection and competition.
Complying with these standards is crucial for maintaining the legality and ethical standing of the
platform.

5.4 User-Friendly Interface


The user interface should be designed to be intuitive and easy to navigate. A user-friendly interface
reduces the learning curve and enhances the overall user experience.
Chapter No 6
External Interface Requirements
6. External Interface Requirements
This section provides information to ensure that the system will communicate properly with users and
with external hardware or software elements. A complex system with multiple subcomponents should
create a separate interface specification or system architecture specification. The interface
documentation could incorporate material from other documents by reference. For instance, it could
point to a hardware device manual that lists the error codes that the device could send to the software.

6.1 User Interfaces Requirements


Describe the logical characteristics of each user interface that the system needs. Some possible items to
include are
 References to GUI standards or product family style guides that are to be followed.
 Standards for fonts, icons, button labels, images, color schemes, field tabbing sequences,
commonly used controls, and the like.
 Screen layout or resolution constraints.
 Standard buttons, functions, or navigation links that will appear on every screen, such as a help
button.
 Shortcut keys.
 Message display conventions.
 Layout standards to facilitate software localization.

6.2 Software interfaces

 SI-1.1: The SmartBuy system shall connect to external e-commerce websites to retrieve product
data and prices for real-time comparison.

 SI-1.2: SmartBuy shall employ machine learning libraries to implement recommendation


algorithms for personalized product recommendations.

 SI-1.3: The SmartBuy system shall interact with user databases to securely store and manage
user profiles and preferences.
 SI-1.4: SmartBuy shall utilize web scraping and data gathering tools to collect product
information from e-commerce sites that do not offer APIs.

 SI-1.5: The system will integrate with payment gateways to facilitate secure transactions when
users make purchases through the platform.

 SI-1.6: SmartBuy shall utilize web frameworks and technologies for developing its user interface
and ensuring responsiveness across various devices.

 SI-1.7: The system shall access privacy and security libraries to implement encryption and data
protection measures in compliance with privacy regulations.

 SI-1.8: SmartBuy will connect to social media platforms to enable users to share their shopping
experiences and engage with the system through social media integration.

 SI-1.9: The SmartBuy system shall integrate with email delivery services for sending email
notifications and updates to users.

6.3 Hardware interfaces

1. Smartphones: The user interface of SmartBuy is designed to be responsive and accessible on


various smartphones, including iOS and Android devices.

2. Tablets: SmartBuy's user interface is optimized for tablets, ensuring a consistent and user-
friendly experience on these devices.

3. Desktop Computers: Users can access SmartBuy via web browsers on desktop computers,
making the platform versatile for different computing environments.

4. Touchscreen Interactions: Users on smartphones and tablets interact with the SmartBuy system
through touchscreen controls, including tapping, swiping, and pinching for zooming and
navigation.

5. Mouse and Keyboard Inputs: Users on desktop computers interact with the system using mouse
clicks and keyboard inputs.

6. HTTPS: SmartBuy employs the HTTPS (Hypertext Transfer Protocol Secure) protocol for secure
data transmission between the user's device and the system server. This ensures data privacy and
protection during interactions.
7. RESTful APIs: SmartBuy communicates with external e-commerce websites and services using
RESTful APIs (Representational State Transfer). This standard communication protocol enables
data retrieval, updates, and transactions with external sources.

6.4 Communications interfaces

CI-1: SmartBuy shall send email notifications to registered users for important account updates, such as
order confirmations, personalized product recommendations, and changes in privacy settings.

CI-2: SmartBuy shall utilize web browsers as the primary user interface for accessing the system. The
system shall be compatible with commonly used web browsers, including Google Chrome, Mozilla
Firefox, Apple Safari, and Microsoft Edge.

CI-3: SmartBuy shall use network protocols, including HTTPS (Hypertext Transfer Protocol Secure), to
secure data transmission between the user's device and the system server. All data transfers shall be
encrypted to ensure user data privacy and security.

CI-4: SmartBuy shall employ electronic forms for user registration, login, and profile management.
These forms will capture and validate user information, preferences, and feedback, ensuring a smooth
and secure user experience.
Chapter No 7
References
7. References
 Chen, Y., Pavlov, P. A., & Zhang, X. (2020). Personalized product recommendation: A neural
attention-based approach. Information Systems Research, 31(4), 1149-1167. 2.
 Zhou, T., Ye, Q., & Wang, D. (2019). How do online product reviews affect purchasing
behavior? A meta-analysis. Journal of Retailing, 95(2), 205-217.
 Blockchain Technology Explained (2021). Retrieved from
https://www.investopedia.com/terms/b/blockchain.asp
 General Data Protection Regulation (GDPR) (2021). Retrieved from https://gdpr-info.eu/
 Price Tracking Tools (2021). Retrieved from https://www.techradar.com/news/the-best-
pricetracking-tools-to-help-you-save-money-when-you-shop-online
 How AI is Transforming the Future of Online Shopping (2021). Retrieved from
https://emerj.com/ai-sector-overviews/ai-transforming-future-online-shoppin
Story Boarding

 Homepage

 User Login
 Authentication through next/auth

 Navigate through categories

You might also like