0% found this document useful (0 votes)
14 views

FYP Formatted Final

Uploaded by

muhammad huzaifa
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)
14 views

FYP Formatted Final

Uploaded by

muhammad huzaifa
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
You are on page 1/ 78

A Commodity Search System for Online Shopping

Using Web Scrapping

Huzaifa Jameel
Naqash Ihsan

Supervised By
Dr. Adeel Asghar

Submitted for the partial fulfilment of BS Computer Science degree to the


Faculty of Engineering & CS

DEPARTMENT OF COMPUTER SCIENCE


NATIONAL UNIVERSITY OF MODERN LANGUAGES,
RAWALPINDI
June, 2024
ABSTRACT
This project aims to develop a comprehensive Commodity Search System to address the
growing demand for efficient and user-friendly online shopping platforms. Through an
analysis of existing systems, it became evident that while many platforms offer basic
search functionalities, there is a lack of integration and comprehensive price comparison
features. By leveraging machine learning algorithms and web scraping technologies, the
developed system provides users with a centralized platform for comparing prices and
making informed purchasing decisions across various online retailers. The methodology
involves data acquisition through web scraping, followed by data processing and analysis
to generate meaningful search results. Tools such as Python, BeautifulSoup, and Django
were utilized for system development, ensuring scalability, flexibility, and ease of
maintenance.

The Commodity Search System boasts features such as a robust search engine, real-time
price comparison capabilities, and personalized recommendation algorithms. System
testing, conducted using a combination of functional and performance testing techniques,
demonstrated the system's effectiveness in retrieving accurate pricing information,
presenting search results in a user-friendly manner, and facilitating seamless user
interactions. Despite its successes, the project has certain limitations, including reliance
on web scraping and scalability challenges. Future enhancements could explore
alternative data acquisition methods and focus on optimizing system performance to
better meet the needs of online shoppers and enhance the overall online shopping
experience.
CERTIFICATE

Dated: __________________

Final Approval
It is certified that project report titled ‘A Commodity Search System for Online
Shopping Using Web Scrapping’ submitted by Huzaifa Jameel, Naqash Ihsan for the
partial fulfillment of the requirement of “Bachelor’s/Master’s Degree in Computer
Science” is approved.

COMMITTEE

Dr.Noman Malik
Acting Dean Engineering & CS: Signature: __________________

Dr. Sajjid Saleem


HoD Computer Science: Signature: __________________

Maryam Sajjad
Project Coordinator: Signature: __________________

Dr, Adeel Asghar


Supervisor: Signature: __________________
DECLARATION
We hereby declare that our dissertation is entirely our work and genuine/original. We
understand that in case of discovery of any PLAGIARISM at any stage, our group will be
assigned an F (FAIL) grade and it may result in withdrawal of our Bachelor’s degree.

Group Members:

Name Signatures

Huzaifa Jameel _____________________

Naqash Ihsan _____________________


PLAIGRISM CERTIFICATE
This is to certify that the project entitled “A Commodity Search System for Online
Shopping Using Web Scrapping”, which is being submitted here with for the award of
the “Degree of Bachelor’s in Computer Science”. This is the result of the original work
by Huzaifa Jameel, and Naqash Ihsan under my supervision and guidance. The work
embodied in this project has not been done earlier for the basis of award of any degree or
compatible certificate or similar tile of this for any other diploma/examining body or
university to the best of my knowledge and belief.

Turnitin Originality Report

Processed on: 26-Jun-2024 11:01PM (UTC-0700)

ID: 2409301684

Word Count: 13377

Similarity Index 6%

Similarity by Source Internet Sources: 2%

Publications: 0%

Student Papers: 4%

Date: ________________________
Dr. Adeel Asghar (Supervisor)
TURNITIN ORIGINALITY REPORT
Group-based A Commodity Search System for Online Shopping Using Web
Scrapping [BSCS] by Huzaifa Jameel and Naqash Ihsan

From Dr. Adeel Asghar


TABLE OF CONTENTS

Chapter 1:........................................................................................................................................1
Problem Statement..........................................................................................................................2
1.1. Project Domain....................................................................................................................2
1.2. Problem Identification........................................................................................................3
1.2.1. Proposed Solution........................................................................................................3
1.2.2. Objectives.....................................................................................................................3
1.2.3. Scope of the Project.....................................................................................................4
1.3. Effectiveness / Usefulness of the System............................................................................5
1.4. Resource Requirement........................................................................................................5
1.4.1. Hardware Requirement..............................................................................................5
1.4.2. Software Requirement................................................................................................5
1.4.3. Data Requirement.......................................................................................................5
1.5. Summary..............................................................................................................................6
Chapter 2:........................................................................................................................................7
2.1. Related Literature Review..................................................................................................8
2.2. Related Systems/Applications..........................................................................................10
2.3. Identified Problem from Existing Work..........................................................................11
2.4. Selected Boundary for Proposed Solution.......................................................................12
Chapter 3:......................................................................................................................................13
3.1. System Specification..........................................................................................................14
3.2. System Modules.................................................................................................................15
3.2.1. Search Module...........................................................................................................15
3.2.2. Product Information Module...................................................................................15
3.2.3. User Interaction Module...........................................................................................15
3.2.4. Data Management Module.......................................................................................15
3.2.5. External Integration Module....................................................................................15
3.3. Functional Requirements/Software Features.................................................................16
3.3.1. Product Search..........................................................................................................16
3.3.2. Product Information.................................................................................................16
3.3.3. User Interaction.........................................................................................................16
3.4. Non-Functional Requirements.........................................................................................16
3.4.1. Performance...............................................................................................................17
3.4.2. Usability......................................................................................................................17
3.4.3. Reliability...................................................................................................................17
3.4.4. Security.......................................................................................................................17
3.4.5. Availability.................................................................................................................17
3.4.6. Compliance................................................................................................................17
Chapter 4:......................................................................................................................................18
4.1. System Design and Analysis.............................................................................................21
4.2. Use Case Diagrams............................................................................................................22
4.3. Full Dress Use Case/Detailed Use Case...........................................................................23
4.3.1. Price Comparison – Full Dress Use Case................................................................25
4.3.2. View Recommendations – Full Dress Use Case......................................................27
4.3.3. View Price History – Full Dress Use Case...............................................................29
4.3.4. Filter Search Results – Full Dress Use Case...........................................................31
4.3.5. View Product Details – Full Dress Use Case...........................................................33
4.3.6. Search for Products – Full Dress Use Case.............................................................35
4.3.7. Search Bar – Full Dress Use Case............................................................................36
4.3.8. Purchase Products – Full Dress Use Case...............................................................38
4.4. Activity Diagram...............................................................................................................40
4.5. Data Flow Diagram...........................................................................................................42
4.5.1. Data Flow Diagram – Level 0...................................................................................43
4.5.2. Data Flow Diagram – Level 1...................................................................................43
4.6. System Sequence Diagram................................................................................................43
4.7. Sequence Diagram.............................................................................................................45
4.7.1. Sequence Diagram – Search Products.....................................................................45
4.8. UML Class Diagram..........................................................................................................46
4.9. Architecture Diagram.......................................................................................................46
4.9.1. Interface Design.........................................................................................................46
4.9.2. Component Level Design..........................................................................................46
4.9.3. Deployment................................................................................................................46
Chapter 5:......................................................................................................................................47
5.1 System Testing...................................................................................................................48
5.2 Testing Techniques............................................................................................................48
5.2.1. Black Box Testing......................................................................................................48
5.2.2. White Box Testing......................................................................................................48
5.3 Test Cases...........................................................................................................................49
5.3.1. Test Case1: Checking Redirection Link Towards Amazon...................................49
5.3.2. Test Case2: Redirection Link Towards eBay..........................................................50
5.3.3. Test Case3: Redirection Link Towards Walmart...................................................51
5.3.4. Test Case4: Sorting of Products...............................................................................53
5.3.5. Test Case5: Searching Functionality.......................................................................54
5.3.6. Test Case6: Process Functionality............................................................................55
5.4 Non-functional Requirements..........................................................................................57
Chapter 6:......................................................................................................................................59
6.1 Conclusion..........................................................................................................................60
6.2 Limitations and Future Work..........................................................................................60
APPENDIX – I...............................................................................................................................62
REFERENCES..............................................................................................................................64
LIST OF FIGURES

Figure Caption Page No.


4.1: Main Use Case Diagram………………………………………………....33
4.2: UML Activity Diagram…………………………………………………..51
4.3: DFD Level 1………………………………………………………….….54
4.4: System Sequence Diagram………………………………………………55
4.5: Sequence Diagram………………………………………………………56
4.6: Class Diagram……………………………………………………….….59
LIST OF TABLES

Figure Caption Page No.


2.1: Summary of Reviewed Literature………………………………………....19
2.2: Summary of Existing Systems...…………………………………………..20
4.1: Overview of specific System Design and Analysis Diagrams...……….….29
4.2: Search Products – Full Dress Use Case...…………………………………35
4.3: View Recommendations – Full Dress Use Case..…………………………37
4.4: View Price History – Full Dress Use Case…………………………….….39
4.5: Filter Search Result – Full Dress Use Case…………………………….…41
4.6: View Product Details – Full Dress Use Case………………………….….43
4.7: Search for Products – Full Dress Use Case…………………………….…45
4.8: Search Bar – Full Dress Use Case…………………………….…………..47
4.9: Purchase Products – Full Dress Use Case…………………………….…..49
5.1: Test Case1…………………………………………………………………62
5.2: Test Case2…………………………………………………………………64
5.3: Test Case3…………………………………………………………………65
5.4: Test Case4…………………………………………………………………66
5.5: Test Case5…………………………………………………………………68
5.6: Test Case6…………………………………………………………………69
5.7: List of Common Non-Functional Requirements/…………………………71
Chapter 1:
INTRODUCTION
The internet and online shopping have boomed, making it easier for people to shop
online. With your project focusing on using Machine Learning and Web Scraping to
improve the commodity search system, you're aiming to provide users with a more
efficient way to find products and access historical price information, empowering them
to make informed choices. Your dedication to creating a simple and user-friendly search
system shows your commitment to enhancing the shopping experience for users, aligning
with the changing needs of online shoppers.

Problem Statement
“Develop a machine learning-based commodity search system that tracks consumer
demand and proactively notifies consumers when the price of a desired commodity on
any website falls below their specified price conditions, addressing issues of search result
accuracy and price discrepancies.”

1.1. Project Domain


The project domain is focused on e-commerce and online shopping. E-commerce refers to
the buying and selling of goods and services online, often through a website or mobile
application. This type of commerce has become increasingly popular in recent years due
to its convenience, accessibility, and the wide range of products available.

Online shopping, on the other hand, refers specifically to the act of purchasing goods or
services through a website or mobile application. This process often involves browsing
products, selecting items, and making payments electronically and digitally. Online
shopping has become a popular way for consumers to shop due to its ease of use, time-
saving convenience, and access to a wide range of products from anywhere in the world.

1.2. Problem Identification


Consumers indeed encounter difficulties in efficiently locating products that match their
specific requirements amidst the vast online information overload. The inadequacies of
current search engines and review systems in delivering precise and tailored results often
result in prolonged searches and less-than-ideal buying choices. The disparity between
what users seek and what search outcomes provide, coupled with the absence of
personalized suggestions based on individual browsing history and purchase patterns,
underscores a notable gap in the current e-commerce realm. Addressing this issue calls for
a solution that harnesses advanced data analysis and machine learning to gain deeper
insights into user behaviour and preferences, ultimately refining the relevance and
precision of product search outcomes and recommendations.

1.2.1. Proposed Solution


Our system’s focus on aiding users in swiftly finding the products they need
through search engines, rankings, and reviews, while tailoring recommendations to
specific areas of interest, is commendable. By leveraging user data like browsing history
and purchase behaviour, the system can offer personalized suggestions and enhance
accuracy progressively.

Our plan to enhance the model by generating log files containing crucial user
interaction data such as search queries, viewed and purchased products, and assigned
scores is a strategic move. Analyzing this data will unveil valuable insights into user
behaviour and preferences, enabling the refinement of machine learning algorithms for
even better performance.

1.2.2. Objectives
The objectives of this project are as mentioned below:

 Assist consumers in their search for commodities by providing


historical price information.
 Track consumer demand to enable informed purchasing decisions.
 Proactively notify consumers when a commodity's price meets their
desired conditions.
 Feature a user-friendly search engine for quick and efficient product
searches.
 Provide relevant search results to enhance user experience.
 Improve the efficiency of the search process to reduce time spent
searching for products.
 Make the overall shopping experience more enjoyable for users.
 Utilize advanced data analysis and machine learning to refine search
accuracy.
 Analyze user data, including browsing history and purchase behaviour,
to create personalized recommendations.
 Continuously improve the recommendation model by creating and
analyzing log files containing user interactions.
 Identify patterns in user behaviour to further enhance machine learning
algorithms.
 Offer a robust ranking and review system to assist consumers in
making informed choices.
 Ensure the system is scalable to handle a large volume of searches and
user data.
 Provide real-time price tracking and updates to keep consumers
informed about the latest deals and price drops.

1.2.3. Scope of the Project


Your project’s scope of developing a web-based search engine integrated with
various e-commerce platforms is ambitious and promising. By employing web scraping
techniques to extract and Analyze data from these sites, the system aims to furnish users
with pertinent search outcomes.

This search engine’s concept of serving as a unified platform for users to


explore products across multiple e-commerce websites mirrors Google’s role in internet
searches, streamlining the shopping experience. Leveraging web scraping for product data
analysis and user behaviour insights to offer personalized recommendations and precise
search results showcases a user-centric approach.

The ability for users to filter search outcomes based on diverse attributes like
price, brand, and features enhances the search engine’s utility in assisting users in finding
products that align with their requirements. The emphasis on a user-friendly interface and
scalability to accommodate additional e-commerce platforms and data management
underscores a thoughtful design approach for optimal user experience and system
expansion.

1.3. Effectiveness / Usefulness of the System


The Commodity Search for Online Shopping System is designed to benefit both online
shoppers and e-commerce websites. For online shoppers, the system will provide a simple
and efficient way to find the products they need. By utilizing and personalized
recommendations, users can find the products that best match their needs and preferences.
The system will also provide a single searching platform to search for products across
multiple e-commerce websites, making the shopping experience more convenient and
efficient.
For e-commerce websites, the system will help to enhance the user experience, improve
search efficiency, and ultimately increase sales. By providing personalized
recommendations and accurate search results, the system will increase user engagement
and satisfaction, leading to increased sales and customer loyalty. The system will also
help e-commerce websites to identify popular products and optimize their inventory
accordingly.

1.4. Resource Requirement


Following are the hardware and software requirements for the development of this
project:

1.4.1. Hardware Requirement


For the development and execution of the system, the following hardware
specifications are required:

 A web server to host the search system


 A computer system for development and testing
 Internet connection.

1.4.2. Software Requirement


The development of the project necessitates the following software tools and
languages:

 Windows 7 or higher
 A web development framework
 Web scrapping tools such as Python libraries (request module, bs4 library)

1.4.3. Data Requirement


 Product data from various e-commerce websites
 User feedback and search logs for system evaluation and improvement
 Scrapper links for the products

1.5. Summary
In a nutshell, the Commodity Search System for online shopping system employing machine
learning aims to tackle the issue of time-consuming and arduous searches for specific products
online. By harnessing machine learning algorithms and web scraping techniques, the system
strives to deliver a personalized and effective search journey for users. The project’s evaluation of
the system’s accuracy and efficiency highlights its commitment to enhancing the online shopping
experience, benefiting both consumers and e-commerce entities alike.

Chapter 2:
BACKGROUND AND EXISTING
SYSTEMS
The e-commerce world has truly transformed how we shop, offering convenience but also
overwhelming us with endless options. Traditional search engines and comparison sites
try to help but often miss the mark in providing tailored results. This chapter delves into
the tech behind e-commerce search systems, revealing their flaws and paving the way for
our machine learning-driven commodity search system.

2.1. Related Literature Review


The literature extensively covers the critical aspects of improving personalized services in
e-commerce, highlighting the integration of recommendation algorithms efficiently and
meeting real-time demands. It introduces innovative recommendation techniques that
underscore the significance of timing and presentation format in delivering results.
Additionally, a comprehensive model for a personalized e-commerce recommendation
system, rooted in data mining techniques, is proposed to ensure operational efficiency and
effectiveness.

Another key focus area is the analysis of sales correlations among products to devise
effective cross-marketing strategies. By utilizing dynamic-model-based methods for
mining time series data, the research identifies sales trends, helping businesses
recommend the right products to the right customers at the right moments, ultimately
boosting profits. The literature also delves into the role of web mining in extracting
commodity prices from online stores, emphasizing the importance of accuracy and utility
for the benefit of online retailers.

Moreover, the exploration extends to the application of machine learning in scrutinizing


customer shopping behaviour data to comprehend customer needs and behaviour patterns
effectively. This analysis aims to target and attract potential customers efficiently. As e-
commerce continues its evolution, personalized recommendation systems emerge as
pivotal tools in aiding users to navigate through the vast array of choices available,
ensuring a more streamlined and personalized shopping experience for consumers.
Table 2.1 Summary of Reviewed Literature

Yea
Author Contribution Technique Limitations/Remarks
r
200 Fan, Proposed a model Data mining for Focused primarily on
8 Yongjian, for e-commerce personalized early-stage models
Yanguang personalized recommendations without advanced real-
Shen, and recommendation time capabilities
Jianying system based on
Mai data mining
202 Li, Hailin,Developed a Time series data Limited application
0 Yenchun dynamic-model- mining using scope, needs extensive
Jim Wu, based approach for dynamic models time-series data
and time series data
Yewang mining to analyze
Chen commodity sales
correlations
201 Zhu, Created a system MVC design Implementation
0 Quanyin, for extracting model, Bottle complexity, system
et al. commodity prices framework, performance may vary
from online shops Python, MySQL with data volume
200 Jiang, Developed an Data mining for Does not address real-
9 Xiaoyan, intelligent e- intelligent time recommendation
and Xianyi shopping guide shopping guidance challenges
Qian system using data
mining
201 Ying, Developed a Ontology and web Limited by the accuracy
4 Ming- commodity search mining for of semantic analysis
Hsiung, system based on commodity search and ontology coverage
and Yeh- ontology and web
Yen Hsu mining
202 Li, Analyzed e- Data mining and Potential privacy
3 Liuqing commerce machine learning concerns with extensive
customers' for behaviour data mining,
shopping analysis computationally
behaviour using intensive
data mining and
machine learning
201 Ju, Proposed a Data mining for Limited evaluation
9 Chunhua, commodity recommendation metrics, focus on a
Jie Wang, recommendation systems specific platform
and method for online (Taobao)
Guanglan shopping using
Zhou data mining
202 Liu, Developed a Machine learning Issues with
2 Liping personalized for personalized personalization depth,
recommendation recommendations potential scalability
system using concerns
machine learning

2.2. Related Systems/Applications


1. Price.com: Your Ultimate Price Comparison Hub

Price.com is like your personal shopping assistant that brings together prices from various
online retailers, making it easy for you to compare and find the best deals. It offers
advanced search and filtering options, detailed product information, and user reviews to
help you make informed decisions when shopping online. By using Price.com, you can
save time and money by quickly identifying the most cost-effective options for your
desired products.

2. Bizrate.com: Your Trusted Source for Product Comparisons and Reviews

Bizrate.com is all about enhancing your online shopping experience by providing


comprehensive product comparisons, detailed reviews, and ratings. It not only allows you
to compare prices across different online stores but also gives you valuable insights into
product quality and seller reliability through user-generated feedback. Bizrate.com's
emphasis on consumer reviews and ratings makes it a reliable resource for making well-
informed purchasing decisions.

3. GetPrice.com.au: Tailored Price Comparison Tool for Australian Shoppers

GetPrice.com.au is specifically designed for the Australian market, helping local shoppers
find the best deals on a wide range of products. It aggregates prices from numerous
Australian retailers, making it convenient for you to compare prices and make informed
buying decisions. By using GetPrice.com.au, you can easily find competitive prices from
local stores and make smart choices when shopping online in Australia.

Table 2.2 Summary of Existing Systems

Tool/
Year System Contribution Limitations Applications
Technologies
2023 Price.com Aggregates Web scraping, May not Finding best
product data aggregation, cover all deals,
listings from advanced search retailers, product
various filters potential research
online delays in
retailers for data
price updates
comparison
2023 Bizrate.co Provides Web scraping, Relies on Informed
m price user reviews, user- purchasing
comparison rating system generated decisions,
along with content, product
detailed potential for comparisons
product biased
reviews and reviews
ratings
2023 GetPrice.c Offers price Web scraping, Limited to Identifying
om.au comparison data aggregation, Australian best local
and special localized search retailers, deals,
deals for the filters may not regional
Australian include all product
market available search
products

2.3. Identified Problem from Existing Work


The realm of e-commerce is evolving rapidly, yet persistent issues plague existing search
and price comparison tools. These platforms often fall short in understanding user intent,
resulting in search outcomes that miss the mark and prolong the shopping process.
Moreover, the absence of personalized recommendations based on individual preferences
further hampers the effectiveness of these systems in guiding consumers to suitable
products. This disconnect between user needs and search results underscores a notable
gap in the current e-commerce landscape, calling for more sophisticated approaches to
enhance user experience.

Furthermore, the prevalence of price discrepancies and outdated information in current


systems adds to the challenges faced by online shoppers. Users encounter frustration
when presented with inconsistent prices and product details, eroding trust in the reliability
of these platforms. The lack of real-time updates and comprehensive data integration
exacerbates these issues, making it arduous for consumers to make well-informed
purchasing decisions. Addressing these shortcomings necessitates the adoption of
advanced technologies like machine learning and web scraping to provide accurate and
up-to-date information to users.

To address these shortcomings and elevate the online shopping experience, a more refined
approach leveraging cutting-edge technologies is imperative. By integrating machine
learning algorithms and web scraping techniques, e-commerce platforms can enhance
search accuracy, provide personalized recommendations, and ensure real-time updates on
product information and pricing. Embracing these advancements will not only bridge the
existing gap between user expectations and system capabilities but also revolutionize the
way consumers interact with online shopping platforms, fostering a more seamless and
satisfying shopping journey for users.

2.4. Selected Boundary for Proposed Solution


It’s impressive to see the detailed approach outlined for the machine learning-based
commodity search system to address the deficiencies in existing e-commerce search
systems. By focusing on improving search accuracy, providing personalized
recommendations, and enabling real-time price tracking, the proposed solution seems
well-equipped to enhance the overall online shopping experience for users. The emphasis
on leveraging advanced data analysis techniques and web scraping showcases a
commitment to ensuring the system’s effectiveness and relevance in the dynamic e-
commerce landscape.

The defined boundaries set for the proposed solution, such as integrating with select
popular e-commerce websites for comprehensive product data, training machine learning
algorithms using user behavior and historical price data, and implementing real-time
monitoring features for price notifications, are key pillars that underpin the system’s
functionality and user benefits. This structured approach not only ensures manageable
data volumes and diverse product inclusion but also aims to deliver personalized
recommendations that align closely with user preferences and needs. The real-time price
tracking feature further enhances user satisfaction by keeping them informed of price
fluctuations on desired items.

By combining sophisticated technologies like machine learning and web scraping with a
user-centric design approach, the proposed commodity search system holds the potential
to revolutionize the online shopping experience. The focus on enhancing search accuracy,
providing personalized recommendations, and offering real-time price tracking reflects a
deep understanding of user needs and challenges in the e-commerce domain. With a
robust and scalable platform in the works, this solution is poised to not only bridge the
existing gaps in e-commerce search systems but also set a new standard for user-friendly
and efficient online shopping platforms.
Chapter 3:
SYSTEM REQUIREMENTS AND
SPECIFICATIONS
In the detailed chapter discussing the functional and non-functional requirements for the
machine learning-based commodity search system, a comprehensive framework is
established to ensure the system’s efficiency and user satisfaction. By delineating
hardware and software prerequisites, data acquisition strategies, and system architecture,
the chapter sets a solid foundation for the system’s development and deployment.
Functional requirements like user authentication and personalized recommendation
algorithms aim to streamline user interactions, while non-functional aspects such as
performance, scalability, and security underscore the system’s robustness and reliability in
handling diverse user demands and ensuring data protection.

The chapter's focus on outlining both functional and non-functional requirements


underscores the holistic approach taken toward building a successful machine learning-
driven commodity search system. By addressing user needs through features like search
functionality and personalized recommendations, and emphasizing system performance,
scalability, and security, the proposed solution aims to deliver a seamless online shopping
experience. The detailed specifications provided for hardware, software tools, and system
architecture lay the groundwork for a well-rounded system that not only meets user
expectations but also ensures operational efficiency and data security throughout its
lifecycle.

1.6. System Specification


The system specifications lay out the nitty-gritty technical aspects and functionalities
crucial for the successful rollout of the machine learning-based commodity search system.
From programming languages like Python for backend tasks to frameworks such as Flask
for web interactions and scikit-learn for machine learning magic, every detail is
meticulously planned. Not to forget the database management system, data storage
methods, and security measures to safeguard user information. The user interface design
principles, search algorithms, and notification features are also covered to ensure a
smooth and user-friendly experience. With these specifications in place, the system is set
to provide precise search outcomes, tailored recommendations, and real-time price
tracking, ultimately enriching the online shopping journey for users.
1.7. System Modules
These modules work collaboratively to ensure a seamless experience for users, offering
comprehensive product information and various purchase options from multiple retailers.

1.7.1. Search Module


 Responsible for handling user queries entered into the search bar.
 Retrieves relevant product information based on user input.
 Manages the search results display, showcasing various products available
from different retailers.

1.7.2. Product Information Module


 Gathers and presents comprehensive details of each product fetched from
different retailers.
 Collects product descriptions, images, specifications, and prices from
various stores.
 Generates comparative pricing information for the same product across
multiple retailers.

1.7.3. User Interaction Module


 Manages user accounts, preferences, and interaction history.
 Allows users to select preferred retailers for purchase.
 Handles redirection to the selected retailer's website for finalizing the
purchase.

1.7.4. Data Management Module


 Ensures the accuracy and consistency of the data fetch ⁷ed from various
retailers.
 Handles the storage, retrieval, and processing of product information and
prices.
 Implements mechanisms to maintain updated and reliable data.

1.7.5. External Integration Module


 Establishes connections and integrates with external retailer websites' APIs
for price retrieval and redirection purposes.
 Manages the communication between the website and different online
stores.
 Facilitates the transfer of users from the website to the selected retailer's
site for purchase completion.

1.8. Functional Requirements/Software Features


The functional requirements serve as the backbone of the machine learning-based
commodity search system, outlining essential features crucial for its seamless operation.
These requirements encompass user authentication for security, a user-friendly search
function, and personalized recommendations tailored to individual preferences. The
system also boasts real-time price tracking capabilities, alerting users of price drops, and
a feedback mechanism to enhance user satisfaction and refine recommendations
continuously. By fulfilling these functional requirements, the system aims to offer users a
comprehensive and efficient online shopping experience, simplifying the process of
finding and purchasing commodities.

Incorporating these functional requirements ensures that the machine learning-based


commodity search system is equipped to meet user needs effectively. From ensuring
secure access through user authentication to providing personalized recommendations
based on user behavior, the system aims to enhance the overall online shopping journey.
Real-time price tracking and user feedback mechanisms further contribute to a dynamic
and user-centric platform, offering users a convenient and tailored experience while
shopping for commodities online.

1.8.1. Product Search


 Implement a search bar for users to input product names or keywords.
 Display search results showing various products available from different
stores.

1.8.2. Product Information


 Present comprehensive details for each product, including descriptions,
images, and specifications.
 Show comparative prices for the same product across multiple stores.
 Provide direct links to the respective store pages for user purchases.

1.8.3. User Interaction


 Allow users to select preferred stores for product purchase.
 Enable user account creation for saved preferences and past search history.
 Incorporate user-generated reviews and ratings for products and stores.

Non-Functional Requirements

Non-functional requirements (NFRs) are like the big picture rules that set the tone for
how the software should behave and perform in different situations. They cover a wide
range of aspects like performance, security, reliability, and usability, going beyond just
the specific features. In the case of our mental health support system, these NFRs are
super important to make sure the system works well, is easy to use, reliable, and
responsive. By sticking to these non-functional requirements, we’re aiming to create a
strong and trustworthy platform that effectively meets the needs of people looking for
mental health support.

1.8.4. Performance
 Ensure rapid loading times for search results and product information.
 Design the system for scalability to handle an increasing database without
performance issues.

1.8.5. Usability
 Create an intuitive and user-friendly interface for easy navigation.
 Guarantee compatibility across different devices and browsers.

1.8.6. Reliability
 Maintain accuracy in product data, prices, and store information.
 Implement error-checking mechanisms to handle data retrieval issues.

1.8.7. Security
 Protect user information and transaction details during store redirection.
 Use secure protocols (HTTPS) to ensure user data protection.

1.8.8. Availability
 Ensure the website is consistently accessible to users without significant
downtime.

1.8.9. Compliance
 Adhere to data privacy laws and ethical considerations while handling user
data and interactions.
 Ensure compliance with legal regulations governing online transactions
and data handling.
Chapter 4:
SYSTEM MODELLING AND DESIGN
In software development, system modeling and design are very important. These
processes involve creating detailed representations of the system's architecture and
interactions to make sure it meets its requirements. By analyzing and designing
thoroughly, developers can find problems early on, make smart design choices, and create
reliable solutions.

The Commodity Search System for Online Shopping uses web scraping to help
consumers find the best prices for products online. This system uses advanced
technologies like web scraping, data mining, and machine learning to track prices in real-
time, give personalized recommendations, and send alerts.

To implement the Commodity Search System successfully, thorough system design and
analysis are necessary. Development teams use modeling and design diagrams to
visualize the system's structure, behaviour, and functionality. These diagrams help
identify areas to improve and guide the implementation process effectively.

During the design and analysis phase of the Commodity Search System, a variety of
diagrams are developed to showcase various elements of the system's functionality and
structure. These diagrams include:

Table 4.1 Overview of specific System Design and Analysis Diagrams

1. Use Case Diagram This diagram offers a helpful visual


representation of how actors and use cases are
connected, giving users a broader view of how
the system works. It demonstrates the different
ways in which actors engage with the system
to carry out tasks like browsing products,
checking out product details, and completing
purchases
2. Activity Diagram An activity diagram is a helpful tool for
showing how processes or activities flow
through the system and the order in which
actions are taken in response to various
stimuli. It offers a visual guide to the
workflow within the Commodity Search
System, outlining the steps in processes such
as web scraping, data processing, and user
interaction.
3. Diagram of Data Flow (DFD)  Level 0: This diagram provides a big
picture view of how external entities
connect with the Commodity Search
System. It shows how data moves in
and out of the system, focusing on
interactions with users and online
platforms.
 Level 1: These diagrams dive deeper
into specific system activities,
illustrating the flow of data and
interactions between different
components. They give detailed
insights into processes such as web
scraping, data processing, and user
notifications.
4. UML Class Diagram Class diagrams are a useful tool for
visualizing the structure of a system. They
show how classes, properties, methods, and
interactions between objects come together. In
the case of the Commodity Search System, the
class diagram helps highlight how classes like
product, user, and search engine are
connected, giving a clear blueprint for how the
system can be built.
5. Layered Architecture This diagram beautifully depicts the layered
Diagram architecture of the Commodity Search System,
showcasing how different layers and
components collaborate to deliver the system's
functionality. It highlights the importance of
separating concerns and organizing
components into specific layers like
presentation, application logic, and data access
to promote modularity and scalability.

By utilizing these modelling techniques, the development team is able to gain a thorough
understanding of the system's requirements and design, which ultimately results in the
development of a reliable and easy-to-use commodity search system. This methodical
approach to system modelling and design is crucial in delivering a top-notch solution that
effectively meets the needs of users.
1.1. System Design and Analysis
Our project focuses on creating an innovative online platform to enhance the shopping
experience for consumers. By using our website, users can easily compare prices of
products from different retailers, helping them make more informed decisions when
making purchases. Upon visiting our site, users can simply use the search bar to look for
specific products. The search results will show product details and prices from various
stores. When users are ready to buy, they will be smoothly directed to the retailer's page
of their choice.

Various analysis and design models have been utilized in the development of the
commodity search system to effectively capture and illustrate its requirements, structure,
and behavior. These models are fundamental for guiding system design, implementation,
and evaluation, offering critical insights into the system's architecture and functionality.

1. Use Case Model: The use case model is important for capturing functional
requirements and illustrating how users interact with the system. It helps outline
key features like product searches, price comparisons, and user notifications,
showcasing the specific tasks users can perform

2. Activity Model: The use case model is important for capturing functional
requirements and illustrating how users interact with the system. It helps outline
key features like product searches, price comparisons, and user notifications,
showcasing the specific tasks users can perform

3. Data Flow Model: This model visually represents the data flow in the system
through Data Flow Diagrams (DFDs). It outlines how data moves between
different system components or processes, highlighting inputs, outputs, and data
transformations. DFDs help identify sources of data, processing stages, and how
information flows, providing a comprehensive understanding of data flow and
processing logic.
4. Class Model (UML Class Diagram): Depicted through UML Class Diagrams,
this model visually represents the static structure of the commodity search system.
It displays classes, attributes, methods, and how objects interact with each other.
This model is helpful in defining the main entities and their characteristics within
the system, which in turn supports the creation and implementation of object-
oriented software. By using class diagrams, developers can easily pinpoint classes
that group together related behavior and data, providing a clear representation of
the system's domain model.

5. Layered Architecture Model: This model shows how the commodity search
system is organized hierarchically, with different layers and components working
together to make the system function. It helps in structuring the design of the
system, making it easier to scale, maintain, and expand. These diagrams offer a
clear view of which parts of the system are responsible for what tasks and how
they depend on each other, which helps in designing and building the system.

In the upcoming sections, we will explore these models in depth, discussing their
structure, purpose, and significance in the creation and assessment of the commodity
search system. These diagrams are important resources for developers, offering a
thorough insight into the system's framework and aiding in making informed decisions to
guarantee the system's effectiveness and success.

1.2. Use Case Diagrams

The use case diagram for the commodity search system offers a helpful visual
representation of how the system works and how different users and functions interact.
The diagram includes simple stick figure actors to represent users and oval shapes to
represent use cases, connected by lines to show how they are related.

This use case diagram serves multiple purposes for developers, designers, and
stakeholders:

1. Visualize Core Functionality: This visual representation showcases the key


functions of the system, such as searching for products, comparing prices, setting
price alerts, and receiving notifications. It helps users better understand how the
system works.
2. Identify User Roles: The diagram clearly defines the different roles within the
system by using actors like the shopper and the system administrator. It illustrates
who can perform specific actions, which is useful for designing roles within the
system.
3. Define System Boundaries: By mapping out the interactions and functions
supported by the system, the use case diagram outlines the system's scope. It
shows the limits and connections with external systems or users.
4. Highlight Key Features: Important functions such as product search, price
tracking, historical price analysis, and personalized recommendations are
highlighted in the diagram. These use cases emphasize the crucial capabilities that
the system needs to have, guiding its design and development.

By thoroughly examining the use case diagram, stakeholders gain valuable insights into
the system's structure and operational flow, ensuring a well-defined and user-centric
design for the commodity search system.

Figure 4.1 Main Use Case Diagram

1.3. Full Dress Use Case/Detailed Use Case


In-depth use cases provide a comprehensive understanding of the behavior, functionality,
and requirements of a system by offering detailed descriptions of interactions between
users and the system. These use cases serve as valuable references for developers,
designers, and stakeholders, enabling them to:
 Clarify System Functionality: These use cases outline precise actions and
behaviours required to execute system operations, guiding user engagement and
expected outcomes.
 Communicate Requirements: They ensure alignment among stakeholders and
clarify functional requirements by providing detailed descriptions of events,
inputs, and outcomes.
 Guide System Design: By translating high-level requirements into practical
design specifications, they assist in making decisions regarding system
architecture, user interface design, and software development.
 Assist with Testing and Validation: Detailed descriptions facilitate the creation
of test cases, ensuring that the system functions as intended across various
scenarios and interactions.
The following use cases have been chosen for comprehensive detailing in the Commodity
Search System project:
1. Price Comparison: This use case involves customers comparing prices of
commodities across different sources. Understanding the user interaction flow and
underlying algorithms for price comparison is crucial for the core functionality of
the system.
2. Product Recommendations: Providing personalized recommendations based on
customer preferences and browsing history is essential for enhancing the user
experience. A thorough description of this use case is necessary to comprehend the
recommendation algorithms and integration into the system.
3. Price History Viewing: Customers may want to track the historical prices of
commodities to make informed purchasing decisions. A detailed explanation of
this use case is required to define how price history data is accessed and presented
to users.
4. Search Results Filtering: Allowing customers to refine their search results based
on various criteria enhances usability. To explain the user interaction flow and
filtering algorithms, a comprehensive description of this use case is necessary.
5. Product Details Viewing: Customers need access to detailed information about
commodities to make informed choices. A thorough description of this use case is
essential to outline how product details are displayed and accessed by users.
6. Product Search: Enabling customers to search for specific commodities
efficiently is fundamental to the system. A detailed description of the search
functionality, including the search bar and search algorithms, is necessary.
7. Purchasing Products: Facilitating the purchase process seamlessly is critical for
customer satisfaction. A thorough explanation of this use case is necessary to
define the steps involved in purchasing commodities through the system.
The sole actor in this system is the Customer, who interacts with all the aforementioned
use cases.
1.3.1. Price Comparison – Full Dress Use Case
The Price comparison feature is an essential part of the Commodity Search System. It
allows users to easily compare prices of different commodities from various sources. This
helpful tool assists users in making smart purchasing decisions by providing them with
detailed pricing information.

The main actions and interactions involved in this use case include:

1. Initiation: Begin your price comparison journey by typing the name or


description of the item you're looking for into the search bar.
2. Data Retrieval: Our system collects pricing information from various
sources, such as online stores, marketplaces, and more.
3. Comparison Analysis: Through sophisticated algorithms, we compare prices
from different sources, taking into account factors like shipping fees,
discounts, and special offers.
4. Presentation: You'll see the comparison results in a user-friendly format,
highlighting the top choices based on price and other important considerations.
5. User Interaction: Feel free to interact with the results, filtering them based on
your preferences like brand, price range, or seller reputation.
6. Decision Making: With the comparison results and your personal preferences
in mind, you can confidently choose the best option for purchasing your
desired item.

Table 4.2 Search Products - Full Dress Use Case

Use Case Selection Comment

Use Case Name Price Comparison

The system enables users to compare prices of


Scope
commodities across different sources.

Level High-level user goal.

User (consumers seeking to purchase commodities at


Primary Actor
the best available prices).

Stakeholders and Interests Users are interested in obtaining the best deals on
commodities. Retailers and sellers may benefit from
increased visibility and competition.

- Access to internet connectivity


Pre-conditions
- Availability of pricing data from multiple sources

- The user finds the best available price for the desired
commodity.
Success Guarantee
- The comparison results accurately reflect the prices
and relevant factors.

- The user initiates a price comparison.


- Prices from various sources are retrieved and

Main Success Scenario analysed.


- The comparison results are presented to the user.
- The user selects the preferred option based on the
comparison.
- If pricing data is unavailable for a particular
commodity, the system informs the user and suggests
alternative search strategies.
Extensions
- If the user encounters technical issues during the
comparison process, the system provides
troubleshooting assistance.

- Real-time data updates to ensure accuracy.

- Algorithmic analysis to consider various factors


Special Requirements influencing price comparison.

- Intuitive user interface for easy navigation and


interaction.
1.3.2. View Recommendations – Full Dress Use Case
View Recommendations is a critical feature of the Commodity Search System, providing
users with personalized suggestions based on their preferences and browsing history. This
use case enhances the user experience by offering tailored recommendations for
commodities, thereby aiding users in discovering relevant products of interest.

1. Initiation: Users trigger the view recommendations feature by accessing the


designated section within the system.
2. User Preferences Analysis: The system analyzes the user's preferences, browsing
history, and past interactions to generate personalized recommendations.
3. Recommendation Generation: Using advanced algorithms, the system generates
a list of recommended products that align with the user's interests and preferences.
4. Presentation: The system presents the personalized recommendations to the user
in a visually appealing and user-friendly format.
5. User Interaction: Users can interact with the recommendations, exploring
additional details, refining preferences, or dismissing irrelevant suggestions.
6. Feedback Incorporation: The system adapts its recommendations based on user
feedback, continuously refining and improving the relevance of suggested
products.

Table 4.3 View Recommendations – Full Dress Use Case

Use Case Selection Comment

Use Case Name View Recommendations

The system provides users with personalized


Scope recommendations for commodities based on their
preferences and browsing history.

Level High-level user goal

User (consumers seeking personalized


Primary Actor
recommendations for commodities).

Stakeholders and Interests Users are interested in discovering relevant products


based on their preferences. Retailers and sellers may
benefit from increased sales through targeted
recommendations.

Pre-conditions - User preferences and browsing history are available.

- The user receives relevant and personalized


recommendations.
Success Guarantee
- The recommendations align with the user's interests
and preferences.

- The system analyzes the user's preferences and


browsing history.

Main Success Scenario - Personalized recommendations are generated based


on the analysis.
- The user views and interacts with the
recommendations.
- If user preferences or browsing history are
unavailable, the system prompts the user to provide
additional information.
Extensions
- If the user encounters irrelevant recommendations,
the system allows for refinement or adjustment of
preferences.

- Advanced recommendation algorithms for accurate


and relevant suggestions.
Special Requirements
- User-friendly interface for easy exploration and
interaction with recommendations.

1.3.3. View Price History – Full Dress Use Case


Tracking Price History is an important feature in the Commodity Search System that
helps users keep track of how prices of commodities have changed over time. This feature
helps users make more informed decisions when purchasing by showing trends and
fluctuations in prices.

1. Initiation: The process begins when users access the system and select the desired
commodity to view its price history feature.
2. Data Retrieval: The system retrieves historical pricing data from its database or
external sources for the selected commodity.
3. Data Presentation: Users are presented with the price history data in a graphical
or tabular format, showcasing price trends and fluctuations over a specified
period.
4. User Interaction: Users have the ability to interact with the price history data,
such as zooming in/out, selecting specific time frames, or comparing prices across
different periods.
5. Analysis Support: The system may offer additional tools or features to assist
users in analyzing the price history data, including trend analysis, statistical
summaries, or price prediction models.
6. Decision Making: By leveraging the insights gained from the price history data,
users can make informed decisions regarding the timing of their purchases,
capitalizing on favorable pricing trends or avoiding periods of price inflation.

Table 4.4 View Price History – Full Dress Use Case

Use Case Selection Comment

Use Case Name View Price History

The system allows users to track the historical prices


Scope
of commodities over time.

Level High-level user goal

User (consumers seeking insights into price trends


Primary Actor
and fluctuations).

Stakeholders and Interests Users are interested in understanding price trends to


make informed purchasing decisions. Retailers and
sellers may benefit from insights into market demand
and pricing dynamics.

- Availability of historical pricing data for the selected


Pre-conditions
commodity.

- The user gains insights into price trends and


fluctuations.
Success Guarantee
- The price history data accurately reflects past
pricing information.

- The user selects the desired commodity and accesses


the price history section.

Main Success Scenario - Historical pricing data is retrieved and presented to


the user.
- The user interacts with the price history data,
gaining insights into price trends and fluctuations.
- If historical pricing data is unavailable for the
selected commodity, the system informs the user and
suggests alternative sources for price information.
Extensions
- If the user encounters technical issues accessing or
analyzing the price history data, the system provides
troubleshooting assistance.

- Reliable access to historical pricing data for various


commodities.
Special Requirements
- User-friendly interface for easy navigation and
interaction with price history data.

1.3.4. Filter Search Results – Full Dress Use Case


The Filter Search Results feature is pivotal within the Commodity Search System,
empowering users to refine and narrow down search results based on specific criteria.
This use case enhances the user experience by allowing for personalized and targeted
searches, thereby assisting users in finding commodities that best meet their requirements.

1. Initiation: Users initiate the filter search results feature by conducting a search
query within the system.
2. Filter Selection: The system presents users with various filter options, such as
price range, brand, category, ratings, and availability.
3. User Selection: Users select and apply their desired filters to the search results,
refining them according to their preferences.
4. Search Result Update: The system updates the search results in real-time based
on the applied filters, displaying only the commodities that meet the selected
criteria.
5. User Interaction: Users can interact with the filtered search results, further
refining or adjusting the filters as needed.
6. Result Exploration: Users explore the filtered search results, reviewing product
details, comparing options, and making purchasing decisions based on the refined
selection.

Table 4.5 Filter Search Results – Full Dress Use Case

Use Case Selection Comment

Use Case Name Filter Search Results

The system enables users to refine and narrow down


Scope
search results based on specific criteria.

Level High-level user goal

User (consumers seeking personalized and targeted


Primary Actor
search results).

Customers seek to gain insights on price trends in


order to make well-informed purchasing choices.
Stakeholders and Interests
Retailers and sellers can leverage this information to
better understand market demand and pricing trends.

Pre-conditions - Availability of search results for the user's query.


- The user finds relevant commodities that meet their
specified criteria.
Success Guarantee
- The filtered search results accurately reflect the
user's preferences.

- The user conducts a search query within the system.


- Filter options are presented to the user.
- The user selects and applies desired filters to the

Main Success Scenario search results.


- The system updates the search results based on the
applied filters.
- The user interacts with the filtered search results,
exploring options and making decisions.
- If the user encounters technical issues applying or
adjusting filters, the system provides troubleshooting
assistance.
Extensions
- If no search results match the specified criteria, the
system informs the user and suggests alternative
search strategies.

- Real-time updating of search results based on


applied filters.
Special Requirements
- Intuitive user interface for easy selection and
application of filters.

1.3.5. View Product Details – Full Dress Use Case


View Product Details is a fundamental feature within the Commodity Search System,
allowing users to access comprehensive information about specific commodities. This use
case facilitates users in making informed purchasing decisions by providing detailed
insights into the features, specifications, and attributes of individual products.
1. Initiation: Users initiate the view product details feature by selecting a specific
commodity from the search results or product listings within the system.
2. Data Retrieval: The system retrieves detailed product information from its
database or external sources, including specifications, descriptions, images, and
user reviews.
3. Presentation: The system presents the product details to the user in a structured
and organized format, displaying key attributes and features prominently.
4. User Interaction: Users can interact with the product details, zooming in on
images, reading descriptions, comparing specifications, and exploring user
reviews.
5. Additional Information: The system may provide additional information or
related products to enhance the user's understanding and decision-making process.
6. Purchase Options: Users may have the option to proceed with purchasing the
product directly from the product details page, leading to the purchase process.

Table 4.6 View Product Details – Full Dress Use Case

Use Case Selection Comment

Use Case Name View Product Details

The system allows users to access comprehensive


Scope
information about specific commodities.

Level High-level user goal

User (consumers seeking detailed insights into


Primary Actor
individual products).

Users are interested in making informed purchasing


decisions based on detailed product information.
Stakeholders and Interests
Retailers and sellers may benefit from increased
visibility and sales through detailed product listings.

Pre-conditions - Availability of product listings or search results.

Success Guarantee - The user gains comprehensive insights into the


features and specifications of the selected product.
- The product details accurately reflect the attributes
and characteristics of the product.

- The user selects a specific commodity from the


search results or product listings.

Main Success Scenario - Detailed product information is retrieved and


presented to the user.
- The user interacts with the product details, exploring
features, specifications, and user reviews.
- If detailed product information is unavailable for the
selected commodity, the system informs the user and
suggests alternative products or sources for
information.
Extensions

- If the user encounters technical issues accessing or


navigating the product details, the system provides
troubleshooting assistance.

- Comprehensive database of product information for


various commodities.
Special Requirements
- User-friendly interface for easy navigation and
exploration of product details.

1.3.6. Search for Products – Full Dress Use Case


The Search for Products feature is a fundamental aspect of the Commodity Search
System, allowing users to conduct searches for specific commodities based on keywords
or criteria. This use case facilitates users in finding relevant products efficiently and
effectively within the system.
1. Initiation: Users initiate a product search by entering keywords, descriptions, or
specific criteria into the search bar within the system.
2. Search Execution: The system executes the search query, scanning its database
or external sources for commodities that match the user's input.
3. Search Result Presentation: The system presents the search results to the user,
displaying relevant commodities along with brief descriptions or thumbnails.
4. User Interaction: Users can interact with the search results, refining the search
query, exploring individual products, or adjusting search filters.
5. Refinement and Iteration: Users may refine their search queries based on initial
results, iterating the search process to find the most relevant products.
6. Selection and Exploration: Users select specific products from the search results
for further exploration, viewing detailed information, comparing options, and
making purchasing decisions.

Table 4.7 Search for Products – Full Dress Use Case

Use Case Selection Comment

Use Case Name Search for Products

The system allows users to conduct searches for


Scope
specific commodities based on keywords or criteria.

Level High-level user goal

User (consumers seeking to find relevant products


Primary Actor
within the system).

Users are interested in efficiently finding


commodities that meet their requirements. Retailers
Stakeholders and Interests
and sellers may benefit from increased visibility and
sales through improved search functionality.

- Availability of search functionality within the


Pre-conditions
system.

- The user finds relevant commodities based on the


search query.
Success Guarantee
- The search results accurately reflect the user's input
and preferences.

Main Success Scenario - The user enters keywords or criteria into the search
bar.
- The system executes the search query and retrieves
relevant commodities.
- Search results are presented to the user, who
interacts with them to find desired products.
- If no search results match the user's query, the
system informs the user and suggests alternative
search strategies.
Extensions
- If the user encounters technical issues executing or
refining the search query, the system provides
troubleshooting assistance.

- Efficient search algorithms for quick and accurate


results.
Special Requirements
- Intuitive user interface with predictive search
suggestions and auto-completion features.

1.3.7. Search Bar – Full Dress Use Case


The Search Bar functionality is a core component of the Commodity Search System,
providing users with a convenient and accessible means to initiate product searches. This
use case facilitates users in quickly finding desired commodities by allowing them to
enter search queries directly into the search bar.
1. Initiation: Users initiate product searches by entering keywords, descriptions, or
specific criteria into the search bar located prominently within the system
interface.
2. Real-time Suggestions: As users type their search queries, the system provides
real-time suggestions or auto-completion options to assist users in refining their
searches.
3. Search Execution: Upon entering the search query, the system executes the
search and retrieves relevant commodities from its database or external sources.
4. Presentation: The system presents the search results to the user, displaying
relevant commodities along with brief descriptions or thumbnails directly below
the search bar.
5. User Interaction: Users can interact with the search results, exploring individual
products, adjusting search filters, or refining the search query.
6. Efficiency and Convenience: The search bar functionality enhances user
experience by providing a seamless and efficient means to find desired products
within the system.

Table 4.8 Search Bar – Full Dress Use Case

Use Case Selection Comment

Use Case Name Search Bar

The system provides users with a search bar for


Scope initiating product searches within the system
interface.

Level High-level user goal

User (consumers seeking to initiate product searches


Primary Actor
within the system).

Users are interested in efficiently finding


commodities using a convenient search interface.
Stakeholders and Interests Retailers and sellers may benefit from increased
visibility and sales through improved search
functionality.

- Availability of the search bar within the system


Pre-conditions
interface.

Success Guarantee - The user can initiate product searches efficiently


using the search bar.

- The search results accurately reflect the user's input


and preferences.

- The user enters keywords or criteria into the search


bar.

Main Success Scenario - The system executes the search query and retrieves
relevant commodities.
- Search results are presented to the user, who
interacts with them to find desired products.
- If the user encounters technical issues using the
search bar or executing search queries, the system
provides troubleshooting assistance.
Extensions
- If the user input does not generate relevant search
results, the system suggests alternative search
strategies.

- Responsive search functionality with real-time


suggestions and auto-completion features.
Special Requirements
- Intuitive user interface design for seamless
navigation and interaction with the search bar.

1.3.8. Purchase Products – Full Dress Use Case


The Purchase Products feature is a critical component of the Commodity Search System,
enabling users to complete transactions and purchase desired commodities directly within
the system interface. This use case facilitates seamless and convenient purchasing
experiences for users, enhancing overall satisfaction and engagement.
1. Product Selection: Users select specific commodities they wish to purchase from
the search results, product listings, or product details pages within the system.
2. Add to Cart: Users add selected commodities to their virtual shopping cart,
indicating their intent to purchase.
3. Checkout Process: Users proceed to the checkout process, where they review
their selected items, enter shipping and payment information, and confirm the
purchase.
4. Transaction Processing: The system processes the transaction securely, handling
payment authorization, order confirmation, and inventory management.
5. Confirmation and Receipt: Users receive confirmation of their purchase along
with a digital receipt, providing details of the transaction for their records.
6. Post-Purchase Support: Users may have access to post-purchase support
services, such as order tracking, returns, and customer assistance.

Table 4.9 Purchase Products – Full Dress Use Case

Use Case Selection Comment

Use Case Name Purchase Products

Scope The system enables users to complete transactions


and purchase desired commodities directly within the
system interface.

Level High-level user goal

Primary Actor User (consumers seeking to purchase commodities


within the system).

Stakeholders and Interests Users are interested in seamless and convenient


purchasing experiences. Retailers and sellers benefit
from increased sales and streamlined transaction
processes.

Pre-conditions - Availability of commodities for purchase within the


system.

- User authentication and access to payment methods.

Success Guarantee - The user successfully completes the purchase


transaction for desired commodities.
- The transaction is securely processed, and users
receive confirmation and receipts for their purchases.

Main Success Scenario - The user selects commodities for purchase and adds
them to the shopping cart.
- The user proceeds to checkout, enters shipping and
payment information, and confirms the purchase.
- The system processes the transaction securely and
provides confirmation and receipts to the user.
Extensions - If the user encounters technical issues during the
checkout process, the system provides
troubleshooting assistance.

- If payment authorization fails or inventory


availability changes, the system informs the user and
suggests alternative actions.

Special Requirements - Secure payment processing capabilities with


encryption and fraud detection measures.

- Seamless integration with payment gateways and


shipping providers for efficient order fulfillment.

1.4. Activity Diagram


The activity diagram illustrates the flow of activities within the Commodity Search
System, focusing on guiding users through the process of searching for and purchasing
products.
1. Modelling Workflow: The diagram visually represents the sequential steps
involved in navigating the system's functionalities, from product search to
purchase.
2. High-Level Understanding of System Functionalities: By outlining the main
activities and their sequence, the diagram offers insight into the core
functionalities of the Commodity Search System.
Activity Diagram Explanation:
1. Start: The diagram begins with the start point, indicating the initiation of user
interaction with the Commodity Search System.
2. Search for Products: Users initiate a product search by entering keywords or
criteria into the search bar.
3. Decision: Product Found:
 No: If no matching products are found, the process ends.
 Yes: If products are found, the process continues to view product details.
4. View Product Details: Users select a specific product from the search results to
view detailed information.
5. Compare Prices: Users may choose to compare prices of the selected product
across different sources.
6. Decision: Ready to Purchase:
 No: If the user is not ready to purchase, the process ends.
 Yes: If the user is ready to purchase, the process continues to click on
purchase.
7. Click on Purchase: Users proceed to initiate the purchase process by clicking on
the purchase option.
8. Redirect to Website: The system redirects the user to the respective website or
platform for completing the
purchase transaction.
9. End: The activity diagram
concludes with the completion of the
system's workflow.
This activity diagram provides a clear visual
representation of the sequential steps
involved in searching for and purchasing
products within the Commodity Search
System, catering to both workflow
modeling and high- level understanding of
system functionalities.
1.5. Data Flow Diagram
The significance of this diagram lies in its representation of the interconnections between
various components within the "Commodity Search System" package. It shows how
different modules or components, such as the Consumer, Search Interface, Commodity
Search Engine, Database of Commodity Information, and Notification System, are linked
and interact within the system. The diagram demonstrates the flow of information or
interactions between these elements, providing a visual overview of their relationships
and dependencies in the Commodity Search System.

1.5.1. Data Flow Diagram – Level 1


DFD Level 1 provides a more detailed perspective of the processes and data flows
within a system compared to DFD Level 0. In DFD Level 1, each process from
the context diagram (DFD Level 0) is deconstructed into subprocesses, offering a
more granular understanding of the system's operation.
The provided DFD Level 1 diagram outlines the relationships, data storage, and
procedures inside the price comparison and recommendation system. The parts
and their interactions are broken down as follows:
Procedures:
1. Search for Commodity:
 The user initiates a search for a commodity using a keyword.
 This keyword is passed to the SearchEngine.
2. Process Raw Data:
 The WebScraper gathers raw data from various sources.
 This raw data is then processed by the DataProcessor to generate
structured SearchResults.
3. Compare Prices:
 The user compares prices using the search results obtained.
 This process utilizes the search results to provide a price comparison
across different retailers.
4. Generate Recommendations:
 Based on the search results and price comparisons, the system
generates personalized recommendations for the user.
Data Stores:
1. Scraped Data:
 Stores raw data collected by the WebScraper from various sources.
2. Raw Data:
 Holds the raw data before it is processed by the DataProcessor.
3. Search Results:
 Contains the structured search results after processing raw data.
4. User Data:
 Maintains user-specific information, including search history and
preferences.
External Entities:
1. User:
 Initiates searches, compares prices, and receives recommendations.
2. Search Engine:
 Handles the search functionality based on user-provided keywords.
3. Web Scraper:
 Scrapes data from external sources for processing.
4. Data Processor:
 Converts raw data into structured search results.

Data Flow:
1. Search for Commodity Process:
 The user inputs a keyword, which is sent to the SearchEngine.
2. Search Engine Process:
 The SearchEngine retrieves search results based on the keyword and
passes them to the User.
3. Web Scraper Process:
 Scrapes data from various sources and sends it to the DataProcessor.
4. Data Processor Process:
 Processes the scraped raw data and generates structured search results,
which are stored in the Search Results data store.
5. Compare Prices Process:
 The user compares prices using the search results.
6. Generate Recommendations Process:
 Based on the price comparisons and user preferences, personalized
recommendations are generated for the user.

Figure 4.3 DFD Level 1


1.6. System Sequence Diagram
In a Commodity Search System, System Sequence Diagrams (SSDs) play a crucial role in
depicting the flow of interactions between external actors, such as users, and the system
to accomplish specific tasks or fulfill use cases. These diagrams illustrate the
chronological sequence of communications exchanged between the actors and the system.

Creating SSDs holds significance for a Commodity Search System for several reasons:

 Clarification of User-System Interactions: SSDs provide a clear visual


representation of how users interact with the system, aiding in understanding the
system's behavior.
 Need Elicitation and Validation: By documenting essential user-system
interactions, SSDs help ensure alignment with user expectations and business
requirements, facilitating the elicitation and validation of system requirements.
 Identification of System Boundaries: SSDs define the system's scope and its
dependencies on external entities by outlining interactions between external
players and the system.
 Scenario-Based Analysis: SSDs streamline scenario-based analysis by focusing
on specific use cases or scenarios, each representing a unique interaction wherein
users perform activities or achieve objectives within the system.
These SSDs serve as invaluable tools for comprehending user-system interactions,
validating system requirements, defining system boundaries, and conducting scenario-
based analyses, all of which contribute to the effective design and functionality of a
Commodity Search System.

Figure 4.4 System Sequence Diagram

1.7. Sequence Diagram


The sequence diagram depicts the user initiating a product search. If data is available, the
search engine analyzes it and displays results. If data is unavailable, the engine requests it
from an e-commerce site, scrapes additional data, and then analyzes and displays the
results to the user.
1.7.1. Sequence Diagram – Search Products
The Sequence Diagram for searching products in a Commodity Search System illustrates
the sequential flow of interactions between the user and the system to execute the product
search use case. It begins with the user initiating a search request through the system's
search interface. The system, upon receiving the search query, retrieves relevant
information from the Commodity Database. Subsequently, the system processes the
search query and filters the retrieved data to display relevant search results to the user.
Once the search results are presented, the user can interact with the system to view
product details, compare prices, or proceed with the purchase. Throughout this
interaction, the Sequence Diagram provides a detailed depiction of the message
exchanges between the user and the system, facilitating a comprehensive understanding
of the search product functionality within the Commodity Search System.

Figure 4.5 Sequence Diagram

1.8. UML
Class Diagram
A class diagram visually represents the structure and relationships of classes within a
system, showcasing their attributes and methods, as well as their associations,
aggregations, and dependencies. In this context, the provided class diagram illustrates
how different components interact and collaborate to facilitate a price comparison and
recommendation system.

Creating a class diagram is crucial for a clear understanding of the system's architecture
and design. It helps visualize the various components and their interactions, promoting
effective communication among team members and stakeholders. By detailing the classes
and their relationships, potential design flaws can be identified, system performance can
be optimized, and all requirements can be thoroughly addressed.

1. User Class

o Attributes and Methods:

 searchForCommodity(keyword: string): SearchResult[]: Allows the


user to search for a commodity based on a keyword and returns an
array of search results.

 comparePrices(searchResult: SearchResult[]): PriceComparison[]:


Compares prices from the search results and returns an array of
price comparisons.

 getPersonalizedRecommendations(): Recommendation[]: Provides


personalized recommendations for the user.

2. SearchResult Class

o Attributes and Methods:

 title: string: The title of the search result.

 url: string: The URL of the search result.

 price: float: The price of the commodity.

 retailer: string: The retailer offering the commodity.

 extractDetails(): string: A method to extract details from the search


result.

3. SearchEngine Class

o Attributes and Methods:


 search(keyword: string): SearchResult[]: Searches for a commodity
based on a keyword and returns an array of search results.

4. PriceComparison Class

o Attributes:

 retailer: string: The retailer name.

 lowestPrice: float: The lowest price of the commodity.

 highestPrice: float: The highest price of the commodity.

 averagePrice: float: The average price of the commodity.

5. Recommendation Class

o Attributes:

 recommendationText: string: The text of the recommendation.

 reason: string: The reason for the recommendation.

6. DataProcessor Class

o Attributes and Methods:

 processData(rawData: string): SearchResult[]: Processes raw data


into an array of search results.

7. WebScraper Class

o Attributes and Methods:

 scrapeData(url: string): string: Scrapes data from a given URL and


returns it as a string.

Relationships:

 User and SearchResult: The User class interacts with the SearchResult class
through methods that perform searches and comparisons.

 SearchEngine and SearchResult: The SearchEngine class generates


SearchResult objects by performing searches based on user input.
 DataProcessor and SearchResult: The DataProcessor class converts raw data
into SearchResult objects.

 WebScraper and DataProcessor: The WebScraper class retrieves raw data,


which is then processed by the DataProcessor class.

Figure 4.6 Class Diagram


Chapter 5:
SYSTEM TESTING AND VALIDATION
System testing plays a crucial role in ensuring the functionality, reliability, and usability
of the Commodity Search System. This chapter focuses on the various aspects of system
testing, including testing techniques, test cases, and their execution.

5.1 System Testing


The diagram basically shows how someone searches for things online. First, they type in
what they're looking for, then the system finds that item in its database and shows the
results. If the person decides to buy something, the system checks if there's a better price
somewhere else. If there is, it lets the person know before sending them to the store to
make the purchase. It's like having a personal shopping online website!

5.2 Testing Techniques


So, the diagram shows how a person uses a system to find things they want to buy. They
start by searching for an item, then the system finds that item in its database and shows
the results. If the person picks something to buy, the system checks if there's a better price
elsewhere. If there is, it tells the person before sending them to the store to make the
purchase.

5.2.1 Black Box Testing


In simpler terms, black box testing is like testing a system without knowing all the nitty-
gritty details inside. Testers focus on checking if the system does what it’s supposed to do
when you give it certain information and what it gives back. For the Commodity Search
System, testers tried out the system like regular users, searching for items, picking
products, and buying stuff. They then checked if everything worked as it should by
comparing the actual results with what was expected. It’s all about making sure the
system behaves correctly for users.

5.2.2. White Box Testing


White box testing, also called structural or glass box testing, is about checking the insides
of a system, like its code and how it works. For the Commodity Search System, testers
looked at the backend processes by examining the system’s source code, finding
important paths and decision points, and running tests to make sure everything was done
right. White box testing helped find issues, improve efficiency, and spot errors in the
system’s logic that might not be obvious with just black box testing. It’s like looking
under the hood to ensure everything is running smoothly.
5.3 Test Cases
Test cases are like little experiments to check if different parts of the system work
correctly. By running these tests on the Commodity Search System, it helps make sure the
system is dependable and does what it’s supposed to do.

5.3.1. Test Case1: Checking Redirection Link Towards Amazon


The test case focused on checking if the redirection link from the Commodity Search
System to Amazon functions smoothly. Its main goal was to ensure that users are directed
to Amazon without any interruptions when they click the designated link or button. By
successfully verifying the redirection functionality, the test case confirmed that users
experience a seamless transition to the Amazon platform from the Commodity Search
System. This validation ensures that users can explore products on Amazon without
encountering any errors during the redirection process.

The test case's objective was to validate the proper implementation of the redirection
feature towards Amazon based on user actions within the Commodity Search System. It
aimed to guarantee that users are promptly redirected to the intended destination, the
Amazon website, without any disruptions. The successful verification of the redirection
functionality indicates that users can smoothly navigate from the Commodity Search
System to Amazon, enhancing their browsing experience and facilitating further product
exploration or purchases on the Amazon platform.

Overall, the test case’s positive outcome confirms that the redirection link to Amazon
within the Commodity Search System operates as intended. Users can click the Amazon
link or button within the system and seamlessly transition to the Amazon website without
encountering any issues. This successful validation ensures the reliability and
effectiveness of the redirection feature, providing users with a hassle-free experience
when navigating between the Commodity Search System and Amazon for their product
needs.

Table 5.2 Test Case1

GENERAL INFORMATION

Test Stage: Functional Test


Test Date: 22-04-2024 System Date 22-04-2024
Tester: Naqash Ihsan Test Case Number: TC-01
Test Case Test redirection functionality to Amazon website.
Description:
Results: Yes Incident Number:
INTRODUCTION
Requirement to be Redirection to Amazon website upon user action.
tested:
Roles and Testers responsible for ensuring proper redirection.
Responsibilities:
Set Up Ensure internet connectivity.
Procedures:
Stop Procedures: Close the browser window
ENVIRONMENTAL NEEDS

Hardware: Device with internet connectivity.


Software: Web browser.
Procedural N/A
Requirements:
TEST

Test Items and Redirection link to Amazon.


Features:
Input User action triggering redirection.
Specifications:
Procedural Steps:1. Click on the Amazon link/button.
2. Observe redirection behaviour.

Expected Results User is redirected to the Amazon website.


of Case:
ACTUAL RESULTS

Output User successfully redirected to Amazon.


Specifications:

5.3.2. Test Case2: Redirection Link Towards eBay


The test case focused on ensuring that users could smoothly move from the Commodity
Search System to eBay without any issues. It aimed to confirm that when users clicked on
the eBay link or button, they were promptly redirected to the eBay platform without
facing any disruptions. The main goal was to validate that this redirection feature worked
flawlessly, allowing users to seamlessly explore products or make purchases on eBay.

After conducting the test, it was found that the redirection to eBay functioned as intended.
Users were able to transition to the eBay website seamlessly, indicating that the feature
operated effectively within the Commodity Search System. This successful verification
ensures that users can access eBay without encountering delays or errors, enhancing their
browsing experience and facilitating their interaction with the platform for further product
exploration or shopping.
The positive outcome of the test case confirms that users can easily navigate from the
Commodity Search System to eBay without any hitches. This smooth redirection process
is vital for providing users with a hassle-free experience, enabling them to effortlessly
access the eBay platform for their shopping needs.

Table 5.3 Test Case2

GENERAL INFORMATION

Test Stage: Functional Test


Test Date: 22-04-2024 System Date 22-04-2024
Tester: Naqash Ihsan Test Case Number: TC-02
Test Case Test redirection functionality to eBay website.
Description:
Results: Yes Incident Number:
INTRODUCTION

Requirement to be Redirection to eBay website upon user action.


tested:
Roles and Testers responsible for ensuring proper redirection.
Responsibilities:
Set Up Ensure internet connectivity.
Procedures:
Stop Procedures: Close the browser window/tab.
ENVIRONMENTAL NEEDS

Hardware: Device with internet connectivity.


Software: Web browser
Procedural N/A
Requirements:
TEST

Test Items and Redirection link to eBay.


Features:
Input User action triggering redirection.
Specifications:
Procedural Steps:1. Click on the eBay link/button.
2. Observe redirection behaviour.

Expected Results User is redirected to the eBay website


of Case:
ACTUAL RESULTS

Output User successfully redirected to eBay.


Specifications:

5.3.3. Test Case3: Redirection Link Towards Walmart


The test case you provided focuses on validating the functionality of the redirection
link to Walmart within the Commodity Search System. It aims to ensure that users
can smoothly transition to Walmart by clicking the designated link or button without
any interruptions. The primary objective is to confirm that users are directed to the
Walmart platform seamlessly, enabling them to explore products or make purchases
without facing any errors or disruptions during the process.
Upon conducting the test, it was observed that the redirection feature to Walmart
operated as expected. Users were able to transition to the Walmart platform
seamlessly, indicating that the feature functions effectively within the Commodity
Search System. This successful verification ensures that users can access Walmart
promptly and without any hindrances, enhancing their overall browsing experience
and facilitating their interaction with the platform for further product exploration or
shopping.
The positive outcome of the test case confirms that users can effortlessly navigate
from the Commodity Search System to Walmart without encountering any obstacles.
This smooth redirection process is essential for providing users with a seamless
experience, allowing them to access the Walmart platform without delays or errors.

Table 5.3 Test Case3

GENERAL INFORMATION

Test Stage: Functional Test


Test Date: 22-04-2024 System Date 22-04-2024
Tester: Naqash Ihsan Test Case Number: TC-03
Test Case Test redirection functionality to Walmart website.
Description:
Results: Yes Incident Number:
INTRODUCTION

Requirement to be Redirection to Walmart website upon user action.


tested:
Roles and Testers responsible for ensuring proper redirection.
Responsibilities:
Set Up Ensure internet connectivity.
Procedures:
Stop Procedures: Close the browser window/tab.
ENVIRONMENTAL NEEDS

Hardware: Device with internet connectivity.


Software: Web browser.
Procedural N/A
Requirements:
TEST

Test Items and Redirection link to Walmart.


Features:
Input User action triggering redirection.
Specifications:
Procedural Steps:1. Click on the Walmart link/button.
2. Observe redirection behaviour.

Expected Results User is redirected to the Walmart website.


of Case:
ACTUAL RESULTS

Output User successfully redirected to Walmart.


Specifications:

5.3.4. Test Case4: Sorting of Products


So, this test case is all about making sure that when users pick a way to sort
products in the Commodity Search System, like by price or popularity, everything
works smoothly without any hiccups. The main goal is to check that users can
choose how they want products displayed and that the system arranges them just
right based on what they selected. It's like making sure the system listens to what
users want and shows them products in the order they prefer.
After running the test, it was cool to see that the sorting feature in the Commodity
Search System did its job well. Users could select how they wanted products sorted,
and the system arranged everything correctly, following the chosen criteria. This
smooth operation ensures that users can easily find what they're looking for and have
a pleasant browsing experience while exploring different products within the system.
By testing and confirming that the product sorting functionality works as intended
within the Commodity Search System, users can now confidently select their
preferred sorting criteria, like sorting by price from low to high, and see the products
displayed in that exact order. This successful verification ensures that users can
navigate the system efficiently and find products based on their specific preferences,
ultimately enhancing their overall search experience.

Table 5.4 Test Case4

GENERAL INFORMATION

Test Stage: Functional Test


Test Date: 22-04-2024 System Date 22-04-2024
Tester: Naqash Ihsan Test Case Number: TC-04
Test Case Test sorting functionality of product listings.
Description:
Results: Yes Incident Number:
INTRODUCTION

Requirement to be Sorting functionality of product listings.


tested:
Roles and Testers responsible for verifying proper sorting.
Responsibilities:
Set Up Ensure product listings are available.
Procedures:
Stop Procedures: Close the sorting options.
ENVIRONMENTAL NEEDS

Hardware: Device with internet connectivity.


Software: Web browser.
Procedural N/A
Requirements:
TEST

Test Items and Sorting options (e.g., price, relevance, popularity).


Features:
Input User selection of sorting criteria.
Specifications:
Procedural Steps: 1. Open the product listings page.
2. Select a sorting criterion (e.g., price low to high).
3. Verify the order of displayed products.

Expected Results Products are displayed in the specified order according to the selected
of Case: sorting criterion.
ACTUAL RESULTS

Output
Specifications: Products displayed in the expected order based on the
selected sorting criterion.

5.3.5. Test Case5: Searching Functionality


In this test case, the focus is on validating the search functionality within the
Commodity Search System. Users heavily rely on the search feature to efficiently
locate specific products, expecting accurate search results based on their input. The
primary aim is to ensure that users can input a search query, submit it, and receive
relevant search results without encountering any glitches, ultimately confirming that
the searching feature operates as intended within the system.

After conducting the test, it was evident that the search function in the Commodity
Search System performed admirably. Users were able to input their search queries,
submit them, and receive search results that aligned with their entered terms,
indicating a successful and effective search experience. This positive outcome
demonstrates that the search feature functions as expected, delivering users the
relevant results they seek, thus enhancing their overall product search journey within
the system.
By verifying the functionality of the search feature in the Commodity Search
System, users can trust in the system's ability to provide accurate and pertinent
search results. The successful validation of the search function ensures that users can
easily find the products they are looking for, contributing to a seamless and efficient
search process within the system. This confirmation solidifies the reliability of the
search feature, offering users a dependable tool to navigate and explore products
effectively.

Table 5.5 Test Case5

GENERAL INFORMATION

Test Stage: Functional Test


Test Date: 22-04-2024 System Date 22-04-2024
Tester: Naqash Ihsan Test Case Number: TC-05
Test Case Test searching functionality within the platform.
Description:
Results: Yes Incident Number: N/A
INTRODUCTION

Requirement to be Searching functionality within the platform.


tested:
Roles and Testers responsible for verifying proper search behaviour.
Responsibilities:
Set Up Ensure the search bar is accessible.
Procedures:
Stop Procedures: Clear the search query and close the search results.
ENVIRONMENTAL NEEDS

Hardware: Device with internet connectivity.


Software: Web browser.
Procedural N/A
Requirements:
TEST

Test Items and Search bar and search results.


Features:
Input User-entered search query.
Specifications:
Procedural Steps: 1. Enter a search query in the search bar.
2. Submit the search query.
3. Verify the displayed search results.

Expected Results
of Case:
ACTUAL RESULTS
Output Search results relevant to the entered query are displayed.
Specifications:

5.3.6. Test Case6: Process Functionality


The test case you outlined focuses on verifying the effectiveness of the checkout process
in the Commodity Search System. It's crucial for users to have a seamless experience
when finalizing their purchases, ensuring they can smoothly add items to their cart, input
shipping and payment details, and successfully complete their transactions securely. The
primary objective is to confirm that users can navigate through the checkout steps without
encountering any glitches or disruptions, guaranteeing that the system functions as
intended, providing a hassle-free purchasing journey for users.

The test's main aim is to ensure that the checkout process in the Commodity Search
System operates smoothly, allowing users to progress through each stage without any
issues, ultimately validating that the system functions as expected, offering users an
efficient and secure way to complete their purchases. After conducting the test, it was
reassuring to observe that users could seamlessly navigate through the checkout process,
finalize their transactions, and receive order confirmations, indicating a successful and
trouble-free purchasing experience within the system.

The positive outcome of the test confirms that the checkout process in the Commodity
Search System functions effectively, providing users with a reliable and secure method to
complete their purchases. Users can trust that they will encounter no obstacles during the
checkout process, allowing them to confidently add items to their cart, input their details,
and finalize their transactions with ease. This validation ensures that users can rely on the
system to deliver a streamlined and successful purchasing experience.

Table 5.6 Test Case6

GENERAL INFORMATION

Test Stage: Functional Test


Test Date: 22-04-2024 System Date 22-04-2024
Tester: Naqash Ihsan Test Case Number: TC-06
Test Case Test the checkout process functionality.
Description:
Results: Yes Incident Number:
INTRODUCTION

Requirement to be Checkout process functionality.


tested:
Roles and Testers responsible for verifying the smooth completion
Responsibilities: of the checkout process.
Set Up Ensure items are added to the cart.
Procedures:
Stop Procedures: Complete or abort the checkout process.
ENVIRONMENTAL NEEDS

Hardware: Device with internet connectivity.


Software: Web browser.
Procedural N/A
Requirements:
TEST

Test Items and Checkout process steps (e.g., adding address, payment method).
Features:
Input User-entered information during checkout.
Specifications:
Procedural Steps: 1. Add items to the shopping cart.
2. Proceed to checkout.
3. Enter shipping address and select shipping method.
4. Select payment method and enter payment details.
5. Complete the checkout process.

Expected Results User successfully completes the checkout process and receives
of Case: confirmation of the order.
ACTUAL RESULTS

Output User receives confirmation of the order upon successful completion of


Specifications: the checkout process.

5.4. Non-functional Requirements


Non-functional requirements play a vital role in ensuring a system operates effectively,
focusing on aspects like speed, reliability, usability, security, and scalability. While
functional requirements dictate what a system should do, non-functional requirements
outline how it should perform, emphasizing overall quality and user experience.

1. Speed: Speed refers to how quickly a system can respond to user inputs and execute
operations. It is essential for ensuring a smooth user experience and efficient system
performance by measuring the system's responsiveness.
2. Size: Size in the context of non-functional requirements relates to the amount of
resources, such as memory and disk space, that a system requires to operate.
Minimizing size helps in efficient resource utilization and reduces unnecessary
overhead.
3. Ease of use: Ease of use focuses on how user-friendly and intuitive the system's
interface is for users. It evaluates how easily users can interact with the system and
perform tasks efficiently, enhancing the overall usability of the system.
4. Reliability: Reliability refers to the system's ability to consistently perform as
expected under various conditions. It ensures that the system functions reliably and
delivers expected performance levels over time, making it dependable for users and
stakeholders.

Table 5.7 List of Common Non-Functional Requirements

Property Measure

Speed Fast response time, quick processing

Size Compact, minimal memory/storage footprint

Ease of use An intuitive user interface, user-friendly

Reliability Consistent performance, minimal downtime

Robustness Resilient to errors, handles edge cases

Portability Resilient to errors, handles edge cases


Chapter 6:
CONCLUSION
This section wraps up our project, the Commodity Search for Online Shopping System,
by summarizing our achievements and looking ahead. We highlight how our system, with
its tech advancements and user-focused design, improves online shopping by offering
insights and helping users make informed decisions. Moving forward, we acknowledge
areas for improvement like reducing reliance on web scraping, enhancing scalability,
refining recommendations, improving user experience, and ensuring regulatory
compliance. Tackling these challenges will enhance our system, meeting user needs and
enhancing the online shopping experience

5.5. Conclusion
In short, our project, the Commodity Search for Online Shopping System, is a significant
step forward in improving efficient and informed online shopping experiences. By using
machine learning and web scraping technologies, we’ve created a user-friendly search
system that offers historical price data and helps users make informed purchasing
decisions. The system includes a powerful search engine, personalized recommendations,
and seamless integration with various e-commerce sites. Through thorough development
and testing, we’ve seen enhanced search efficiency, improved user experience, and
increased consumer satisfaction. Moving forward, we need to address issues like reliance
on web scraping and scalability to further refine and optimize the system. By staying
innovative and adaptable, our goal is to meet the changing needs of online shoppers and
enhance the overall online shopping experience.

5.6. Limitations and Future Work

• Reliance on Web Scraping:


Relying solely on web scraping for data collection can be limiting due to website
changes and legal issues. To address this, future work could explore using APIs or
forming partnerships with e-commerce platforms for more reliable data
acquisition.

• Scalability and Performance Optimization:


As the system grows, optimizing scalability and performance becomes crucial.
Future efforts should focus on refining the system architecture, implementing
caching, and optimizing database queries to enhance response time and efficiency.

• Personalized Recommendation Refinement:


While the system provides personalized recommendations, there’s room to
improve accuracy. Future work could involve advanced machine learning
techniques like collaborative filtering and user feedback integration to enhance
recommendation quality.

• User Interface and Experience Enhancement:


Enhancing the user interface and experience is key for user satisfaction. Future
plans should include usability testing, gathering feedback, and refining the UI
design to create a more intuitive and enjoyable shopping experience.

• Regulatory Compliance and Data Privacy:


Ensuring compliance with regulations and addressing data privacy concerns are
essential. Future work should focus on implementing measures to safeguard user
data and comply with relevant laws to maintain trust and security..

By tackling these challenges and focusing on future enhancements in these areas, the
project can transform into a more resilient, adaptable, and user-focused solution for online
shopping. These suggestions aim to effectively address the insights from the report,
fostering ongoing progress and alignment with user requirements and preferences.
REFERENCES
1. Fan, Yongjian, Yanguang Shen, and Jianying Mai. "Study of the model of e-
commerce personalized recommendation system based on data mining." 2008
International Symposium on Electronic Commerce and Security. IEEE, 2008.
2. Li, Hailin, Yenchun Jim Wu, and Yewang Chen. "Time is money: Dynamic-
model-based time series data-mining for correlation analysis of commodity sales."
Journal of Computational and Applied Mathematics 370 (2020): 112659.
3. Zhu, Quanyin, et al. "The commodities price extracting for shop online." 2010
International Conference on Future Information Technology and Management
Engineering. Vol. 2. IEEE, 2010.
4. Jiang, Xiaoyan, and Xianyi Qian. "Study on intelligent e-shopping system based
on data mining." 2009 International Conference on E-Business and Information
System Security. IEEE, 2009.
5. Ying, Ming-Hsiung, and Yeh-Yen Hsu. "A commodity search system for online
shopping based on ontology and web mining." (2014): 6-11.
6. Li, Liuqing. "Analysis of e-commerce customers' shopping behaviour based on
data mining and machine learning." Soft Computing (2023): 1-10.
7. Ju, Chunhua, Jie Wang, and Guanglan Zhou. "The commodity recommendation
method for online shopping based on data mining." Multimedia Tools and
Applications 78 (2019): 30097-30110.
8. Liu, Liping. "e-commerce personalized recommendation based on machine
learning technology." Mobile Information Systems 2022 (2022).
9. Lei, Yong, Chun Peng Li, and Nan Lin. "Development of E-Commerce Platform
Commodity Precise Search Engine Technology." Applied Mechanics and
Materials 687 (2014): 2132-2135.

You might also like