0118 SDS
0118 SDS
Software Design
Specification
AI SHOPPING SYSTEM
Revision 1.0
AI SHOPPING SYSTEM
Development Revision 1.0 Page i VIT, Vellore
Table of Contents
Table of Contents .......................................................................................................................... ii
Revision History ........................................................................................................................... iii
Approved By ................................................................................................................................. iii
1. Introduction..............................................................................................................................1
1.1 Purpose .............................................................................................................................. 1
1.2 System Overview ............................................................................................................... 1
1.3 Design Map........................................................................................................................ 1
1.4 Definitions and Acronyms................................................................................................... 2
2. Design Considerations .............................................................................................................2
2.1 Assumptions ...................................................................................................................... 2
2.2 Constraints ......................................................................................................................... 2
2.3 System Environment ........................................................................................................... 3
2.4 Design Methodology........................................................................................................... 4
3. Architecture..............................................................................................................................5
3.1 Overview ........................................................................................................................... 5
3.2 Subsystem, Component, or Module 1 …N............................................................................ 6
3.3 Strategy 1…N .................................................................................................................... 7
4. Database Schema......................................................................................................................7
4.1 Tables, Fields and Relationships .......................................................................................... 7
4.1.1 Databases ....................................................................................................................... 8
5. Low Level Design ...................................................................................................................10
5 View / Model Element 1…N ............................................................................................. 10
6. User Interface Design.............................................................................................................17
6.1 Application Controls......................................................................................................... 17
6.2 Screen 1… N.................................................................................................................... 18
Appendix A: Project Timeline ....................................................................................................21
AI SHOPPING SYSTEM
Development Revision 1.0 Page ii VIT, Vellore
Revision History
Version Name Reason For Changes Date
1.0 Sanjana Malhotra Initial Revision 8/3/2024
(22MIC0128)
Vaibhav Dutt
Trivedi
(22MIC0118)
Approved By
Approvals should be obtained for project manager, and all developers working on the project.
AI SHOPPING SYSTEM
Development Revision 1.0 Page iii VIT, Vellore
1. Introduction
1.1 Purpose
The scope of this Software Design Specification (SDS) document encompasses the design and
implementation details of the AI Shopping System, as outlined in the Software Requirements Specification
(SRS). It provides a comprehensive overview of the system architecture, component design, user interface
design, security design, error handling, performance considerations, testing strategies, deployment plans, and
maintenance procedures. The SDS serves as a guide for developers and stakeholders involved in the
implementation and maintenance of the AI Shopping System.
AI SHOPPING SYSTEM
Development Revision 1.0 Page 1 VIT, Vellore
-TESTING DESIGN: Describes the testing approach, including test plans, test cases, and methodologies to
validate system functionality
-DEPLOYMENT DESIGN: Details the deployment strategy and environment setup for deploying the AI
Shopping System into production
2. Design Considerations
All design considerations were handled in AI Shopping System.
2.1 Assumptions
The Assumptions section outlines the underlying assumptions made during the design and
development of the AI Shopping System. These assumptions serve as foundational principles guiding
various aspects of the project. Below are the key assumptions:
-USER AVAILABILITY
-DATA INTEGRITY
-SECURITY MEASURES
-SYSTEM COMPATIBILITY
-USER UNDERSTANDING
-PRODUCT AVAILABILITY
-LEGAL COMPLIANCE
-SCALABILITY
2.2 Constraints
Constraints refer to limitations or restrictions that may impact the design and development of the AI
Shopping System. Identifying constraints helps ensure that the design process considers and accommodates
these factors appropriately. Below are the constraints relevant to the system:
AI SHOPPING SYSTEM
Development Revision 1.0 Page 2 VIT, Vellore
-TECHNOLOGICAL CONSTRAINTS:
Compatibility
Technology Stack
Integration
-RESOURCE CONSTRAINTS:
Budget
Time
-REGULATORY AND COMPLIANCE CONSTRAINTS:
Legal Requirements
Compliance
-OPERATIONAL CONSTRAINTS:
Scalability
Performance
Accessibility
-ORGANIZATIONAL CONSTRAINTS
Stakeholder Requirements
Organization Policies
HARDWARE REQUIREMENTS
- Server Infrastructure: The system will require servers to host the web application, databases, and other
backend services. The hardware specifications of these servers, including CPU, memory, storage, and
network resources, must meet the performance and scalability requirements of the system
- Client Devices: The system should support a variety of client devices, including desktop computers,
laptops, tablets, and smartphones. The hardware capabilities and specifications of these devices may impact
the design of the user interface and overall user experience
SOFTWARE REQUIREMENTS
- Operating System: The servers hosting the AI Shopping System may run on operating systems such as
Linux, Windows Server, or macOS, depending on organizational preferences and compatibility requirements
- Web Server: A web server software, such as Apache HTTP Server, Nginx, or Microsoft Internet
Information Services (IIS), will be used to host and serve the web application to users
- Database Management System (DBMS): The system will utilize a relational database management system
(e.g., MySQL, PostgreSQL, or Microsoft SQL Server) to store and manage product information, user data,
and transaction records
NETWORKING INFRASTRUCTURE
- Internet Connectivity: The system will require reliable internet connectivity to enable users to access the
web application from various locations
- Domain Name System (DNS): Domain names will be registered and configured to point to the servers
hosting the AI Shopping System, allowing users to access the system using a human -readable domain name
AI SHOPPING SYSTEM
Development Revision 1.0 Page 3 VIT, Vellore
- Firewalls and Security Appliances: Network security appliances, including firewalls, intrusion
detection/prevention systems (IDS/IPS), and antivirus software, will be implemented to protect the system
from external threats and unauthorized access
-Integrated Development Environment (IDE): Developers will use IDEs such as Visual Studio Code, IntelliJ
IDEA, or Eclipse for writing, debugging, and testing code
- Version Control System (VCS): A VCS like Git will be used for managing source code, enabling
collaborative development, and tracking changes across multiple developers
- Testing Tools: Testing frameworks and tools (e.g., Jest, Selenium, Postman) will be employed for unit
testing, integration testing, and end-to-end testing of the system
DEPLOYMENT ENVIRONMENT
- Deployment Platforms: The system will be deployed to cloud platforms such as Amazon Web Services
(AWS), Microsoft Azure, Google Cloud Platform (GCP), or on-premises servers, depending on
organizational requirements and infrastructure preferences
- Containerization and Orchestration: Containerization technologies such as Docker and container
orchestration platforms like Kubernetes may be utilized for deploying and managing containerized
applications in a scalable and efficient manner
AI SHOPPING SYSTEM
Development Revision 1.0 Page 4 VIT, Vellore
Design work will undergo rigorous quality assurance and testing procedures to identify and rectify any
defects or issues. Testing will be conducted at various stages of the design process to ensure compliance with
requirements and adherence to design standards
3. Architecture
3.1 Overview
The structural and functional decomposition of the AI shopping system has been meticulously designed to
ensure scalability, modularity, and maintainability while fulfilling the core objectives of providing an
intuitive and personalized shopping experience for users. The decomposition strategy revolves around
breaking down the system into cohesive components that encapsulate specific responsibilities and
functionalities, promoting easier development, testing, and maintenance. This section outlines the ration ale
behind the decomposition and highlights the major roles and responsibilities of the system components.
STRUCTURAL DECOMPOSITION
AI SHOPPING SYSTEM
Development Revision 1.0 Page 5 VIT, Vellore
FUNCTIONAL DECOMPOSITION
-Product Management
-User Profile Management
-Recommendation
-Shopping Cart and Checkout
RATIONALE
-Modularity
-Reusability
-Scalability
-Maintainability
-Easy Testing
-Flexibility
-Adaptability
- Responsible for collecting and preprocessing user data from various sources, including user profiles,
browsing history, and transaction logs
- Utilizes data pipelines and ETL (Extract, Transform, Load) processes to clean, transform, and aggregate
raw data into suitable formats for analysis
- Extracts relevant features from the preprocessed data to represent user behavior and product attributes
- Performs feature engineering techniques such as normalization, scaling, and dimensionality reduction to
enhance model performance and interpretability
- Consists of various machine learning algorithms and models tailored for recommendation tasks, such as
collaborative filtering, content-based filtering, and hybrid approaches
- Models are trained using historical user interactions and product attributes to learn patterns and correlations
in the data
- Incorporates user feedback and interactions to continuously refine and improve the recommendation models
- Implements mechanisms for model updating and retraining based on new data and evolving user
preferences
AI SHOPPING SYSTEM
Development Revision 1.0 Page 6 VIT, Vellore
3.3 Strategy 1…N
ALTERNATIVES CONSIDERED
-Collaborative Filtering
-Content-Based Filtering
-Hybrid Approaches
-Comprehensive Recommendations:
By combining collaborative filtering and content-based filtering, the system can leverage both user
interactions and product attributes to generate more diverse and accurate recommendations. This approach
ensures that users receive recommendations that align with their preferences, even for new or niche products
-Flexibility and Adaptability:
A hybrid recommendation system offers flexibility in adjusting the weighting or combination of different
recommendation techniques based on performance metrics and user feedback. This adaptability enables
continuous optimization and improvement of the recommendation engine over time
-Robustness:
By diversifying the recommendation strategy, the system becomes more robust to changes in user behavior,
data quality, and market dynamics. This mitigates the risk of over-reliance on a single technique and
enhances the overall reliability and effectiveness of the recommendation engine
4. Database Schema
USER TABLE
-Fields:
User Id (PK)
Username
Email
Password
Name
Address
Phone Number
-Relationships:
One-to-Many relationship with the Order table (One user can have multiple orders)
PRODUCT TABLE
AI SHOPPING SYSTEM
Development Revision 1.0 Page 7 VIT, Vellore
-Fields:
Product ID (PK)
Name
Description
Price
Category Id (FK referencing Category table)
Image URL
-Relationships:
Many-to-One relationship with the Category table (Many products belong to one category)
One-to-Many relationship with the OrderItem table (One product can be part of multiple
orders)
ORDER TABLE
-Fields:
Order ID (PK)
User ID (FK referencing User table)
Order Date
Total Amount
-Relationships:
Many-to-One relationship with the User table (Many orders belong to one user)
One-to-Many relationship with the OrderItem table (One order can have multiple order items)
CATEGORY TABLE
-Fields:
Category ID (PK)
Name
Description
-Relationships:
One-to-Many relationship with the Product table (One category can have multiple products)
-Fields:
Order Item Id (PK)
Order Id (FK referencing Order table)
Product Id (FK referencing Product table)
Quantity
Unit Price
-Relationships:
Many-to-One relationship with the Order table (Many order items belong to one order)
Many-to-One relationship with the Product table (Many order items correspond to one product)
4.1.1 Databases
AI SHOPPING SYSTEM
Development Revision 1.0 Page 8 VIT, Vellore
It stores information such as user profiles, product catalogs, orders, and other relevant data required for the
system's operation
The BPData database is optimized for performance, reliability, and scalability to ensure smooth operation
and efficient handling of user interactions and transactions
AI SHOPPING SYSTEM
Development Revision 1.0 Page 9 VIT, Vellore
5. Low Level Design
AI SHOPPING SYSTEM
Development Revision 1.0 Page 10 VIT, Vellore
2. Class Diagram-
AI SHOPPING SYSTEM
Development Revision 1.0 Page 11 VIT, Vellore
3. State Diagram-
AI SHOPPING SYSTEM
Development Revision 1.0 Page 12 VIT, Vellore
4. Activity Diagram-
AI SHOPPING SYSTEM
Development Revision 1.0 Page 13 VIT, Vellore
5. Sequence Model-
AI SHOPPING SYSTEM
Development Revision 1.0 Page 14 VIT, Vellore
6. Collaboration Model-
AI SHOPPING SYSTEM
Development Revision 1.0 Page 15 VIT, Vellore
7. Deployment Model-
Notations Used-
AI SHOPPING SYSTEM
Development Revision 1.0 Page 16 VIT, Vellore
6. User Interface Design
The user interface (UI) of the AI shopping system aims to provide an intuitive, seamless, and efficient
experience for users while navigating through the application. The design principles emphasize ease of use,
accessibility, and visual appeal to enhance user engagement. Below are the descriptions of the key aspects of
the user interface design:
-HOME SCREEN
Upon launching the application, users are greeted with a visually appealing home screen that showcases
featured products, promotions, and personalized recommendations based on user preferences and browsing
history. The layout is designed to be clean and organized, allowing users to quickly find relevant information
-NAVIGATION BAR
A prominent navigation bar is located at the top or bottom of the screen, providing easy access to essential
sections of the application such as Home, Categories, Search, Cart, and User Profile. The navigation bar
remains consistent across all screens for seamless navigation
-PRODUCT LISTINGS
When users browse through product categories or search for specific items, product listings are displayed in a
grid or list view. Each product card includes essential information such as product name, image, price,
ratings, and a brief description. Users can easily filter and sort products based on various criteria like price
range, brand, or popularity
-SHOPPING CART
The shopping cart functionality allows users to review and manage items they have added for purchase. It
displays a summary of all items in the cart, along with their quantities and total prices. Users can easily
adjust quantities, remove items, or proceed to checkout with a single tap
-CHECKOUT PROCESS
The checkout process is streamlined to minimize friction and simplify the purchase journey. Users are guided
through a series of steps, including shipping address input, payment method selection, and order review.
Clear progress indicators and prompts help users navigate through each step efficiently
-USER PROFILE
Users have access to a dedicated profile section where they can manage their account information, view
order history, track shipments, manage payment methods, and adjust notification preferences. Settings
options allow users to customize their experience according to their preferences
-FEEDBACK
The user interface includes options for users to provide feedback, report issues, or seek assistance from
customer support. This can be through in-app messaging, email, or integrated chat support
6.2 Screen 1… N
AI SHOPPING SYSTEM
Development Revision 1.0 Page 18 VIT, Vellore
2-SIGN UP PAGE
AI SHOPPING SYSTEM
Development Revision 1.0 Page 19 VIT, Vellore
3-SHOPPING CART PAGE
AI SHOPPING SYSTEM
Development Revision 1.0 Page 20 VIT, Vellore
Appendix A: Project Timeline
-PHASE 1: PLANNING AND REQUIREMENT GATHERING
-PHASE 2: DESIGN AND PROTOTYPING
-PHASE 3: DEVELOPMENT
-PHASE 4: TESTING AND QUALITY ASSURANCE
-PHASE 5: DEPLOYMENT AND LAUNCH
-PHASE 6: MAINTAENANCE
AI SHOPPING SYSTEM
Development Revision 1.0 Page 21 VIT, Vellore