CSIT Student Project Report
CSIT Student Project Report
Submitted To:
Department of Computer Science and Information Technology
Orchid International College
Submitted By:
Anisha Khadka (10682/073)
Lalit Bohara (10692/073)
Renuka Bhatt (10712/073)
Santosh Bajgain (10716/073)
August, 2020
SUPERVISOR’S RECOMMENDATION
I hereby recommend that the report prepared under my supervision by Anisha Khadka (TU
Exam Roll No. 10682/073), Lalit Bohora (TU Exam Roll No. 10692/073), Renuka Bhatt
(TU Exam Roll No. 10712/073), and Santosh Bajgain (TU Exam Roll No. 10716/073)
entitled “HAMRO SHOP – A PRODUCT RECOMMENDER SYSTEM” in partial
fulfillment of the requirements for the degree of B.Sc. in Computer Science and
Information Technology be processed for evaluation.
…………………..…….
Er. Dhiraj Kumar Jha
Project Coordinator, Department of CSIT
Orchid International College
Bijayachowk, Gaushala
i
CERTIFICATE OF APPROVAL
This is to certify that this project prepared by Anisha Khadka (TU Exam Roll No.
10682/072), Lalit Bohora (TU Exam Roll No. 10692/072), Renuka Bhatt (TU Exam Roll
No. 10712/072), and Santosh Bajgain (TU Exam Roll No. 10716/072) entitled “HAMRO
SHOP – A PRODUCT RECOMMENDER SYSTEM” in partial fulfillment of the
requirements for the degree of B.Sc. in Computer Science and Information Technology has
been well studied. In our opinion, it is satisfactory in the scope and quality as a project for
the required degree.
----------------------------- -----------------
Er. Dhiraj Kumar Jha Bijay Mishra
Project Coordinator, Program Coordinator,
Department of Computer Science and IT Department of Computer Science and IT
Orchid International College Orchid International College
Bijayachowk, Gaushala Bijayachowk, Gaushala
-------------------------
External Examiner
Central Department of Computer Science and IT
Tribhuvan University
Kirtipur, Nepal
ii
ACKNOWLEDGEMENT
It is a great pleasure to have the opportunity to extend our heartfelt gratitude to everyone
who helped us throughout the course of this project. We are profoundly grateful to our
project coordinator Er. Dhiraj Kumar Jha, for his expert guidance, continuous
encouragement and ever willingness to spare time from his otherwise busy schedule for the
project’s progress reviews. His continuous inspiration has made us complete this project
and achieve its target.
We would also like to express our deepest appreciation to Mr. Bijay Mishra, program
coordinator, Orchid International College, Department of Computer Science and
Information Technology, for his constant motivation, support and for providing us with a
suitable working environment. We would also like to extend our sincere regards to all the
faculty members for their support and encouragement.
iii
ABSTRACT
Ecommerce website is a system that focuses on buy and sell of products online.
The system aimed to design a webpage that enhance marketing through online
advertising and selling. Ecommerce is a paradigm shift influencing both marketers
and consumers. Moreover, this project is about the C2C (consumer to consumer)
concept where consumer can be both buyer or seller. The products will be sold
and bought between two consumers trusting on the details given about the
product. . In this system, the main approach is to recommend product as it can
help people to find interesting things and is capable of predicting the future
preference of a set of items for a user, and recommend the top items. To make
good product recommendation system, this system is using collaborative filtering
algorithm which combines the opinions of other users to make a prediction for a
target user through ratings and purchase history.
Keywords: C2C Ecommerce, Product Recommendation, Collaborative
Filtering Algorithm
iv
TABLE OF CONTENTS
vii
LIST OF TABLES
viii
ABBREVIATIONS
ix
CHAPTER 1: INTRODUCTION
1.1. Background
E-commerce is the buying and selling of goods and services, or the transmitting of funds
or data, over an electronic network, primarily the internet. These business transactions
occur either as business-to-business, business-to-consumer, consumer-to-consumer or
consumer-to-business.This project is about the C2C (consumer to consumer) concept
where consumer can be both buyer or seller. The products will be sold and bought
between two consumers trusting on the details given about the product. C2C e-
commerce differs from a business-to-business model or business-to-consumer model
because consumers interact directly with each other. However, a business does operate
the online platform on which C2C transaction takes place. Buyer can shop for free, but
sellers sometimes have to pay a fee to list their products. Consumers often play an active
role in monitoring e-commerce sites for scam and other inappropriate content In most
cases, C2C e-commerce is helped along by a third party who officiate the transaction to
make sure goods are received and payments are made. This offers some protection for
consumers taking part in C2C e-commerce, allowing the chance to take advantage of
the prices offered by motivated seller. Generally, an intermediary/third party maybe
involved, but the purpose of the intermediary is only to facilitate the transaction and
provide a platform for the people to connect to each other. The intermediary would
receive a fee or commission, but is not responsible for the product exchange. C2C
normally takes the form of an auction where the bidding is done online.
Recommendation systems are used by enormous sites to help the customers regarding
to the products to purchase. It helps to predict items, example: movies, music, books,
that a user may be interested in. Recommendation system help people find information
that will interest them, by facilitating social/conceptual connections or other means.
This system estimates a utility function to predict how a user will like an item. It
compares user’s profile to some reference characteristics to predict whether the user
would be interested in an unseen item. It helps user’s deals with the information
overload. Recommendation system uses mostly two approaches. First one is the
Collaborative filtering which recommend items based only on the users past behavior.
Its either user based: Find similar users to me and recommend what they liked or Item
based: Find similar items to those that I have previously liked.
1
Recommendation system may have various advantages. Visitors to a Web site often
look over the site without ever purchasing anything. Recommendation systems can help
customers find products they wish to purchase. Recommendation systems improve
cross-sell by suggesting additional products for the customer to purchase. If the
recommendations are good, the average order size should increase. For instance, a site
might recommend additional products in the checkout process, based on those products
already in the shopping cart. In a world where a site’s competitors are only a click or
two away, gaining customer loyalty is an essential business strategy.
2
1.2. Problem Statement
Though the e-commerce websites are well equipped and technically fit, the ecommerce
websites fail to run so sometimes customer prefers to go visit market rather than using
websites. If customers are not satisfied with our product and payment process, customer
have to visit many other websites. Every shop should aim to get online way of business
so that customer can stay at home and order the product they like through e-commerce
site. However, the current system of walking in to the shop is more time consuming and
difficult. Even customer satisfaction has been a greater issue as customers have to
browse many sites to buy a single product. Proper recommendation of product is very
difficult to find in different sites.
1.3. Objectives
3
1.4. Scope and Limitations
4
CHAPTER 2: REQUIREMENT ANALYSIS AND FEASIBILITY
ANALYSIS
Badrul Sarwar, George Karypis, Joseph Koustan, and John Riedl, Department of
Computer Science and Engineering, University of Minnesota have discussed about Item
Based Collaborative Filtering Recommendation Algorithms [1]. In this paper, they have
analysed different item based recommendation generation algorithms with different
techniques for computing item-item similarities such as correlation, cosine similarities
and so on, and different techniques for obtaining recommendation from them i.e.
weighted sum and regression model. According to them user based may face bottleneck
problem due to large user population which can be solved by item based algorithm by
exploring the relationship between item first, rather than relationships between users.
Ankush Saklecha, Jagdish Raikwal, Institute of Engineering and Technology, Devi
Ahilya University have implemented Dynamic Recommendation System Using
Enhanced K-means Clustering Algorithm for ecommerce [2]. According to them, the
goal of this paper is to study recommendation engines and recognize the problems of
traditional recommendation engine and algorithms used in developing a
recommendation engine and to develop a web based recommendation engine. In this
paper, the architecture proposed describes user interacting with website and
recommendations provided to user while browsing the pages through website. The
important thing about this project is to provide recommendation to registered user i.e.
clusters vary time to time depending upon number of users registered and according to
their age. This paper concludes that increasing efficiency of K-means clustering
algorithm users find better results.
Eui-Hong (Sam) Han and George Karypis implemented Feature-Based
Recommendation System in which they have discussed the challenges of providing
recommendation in the domains where no sufficient historical data exist for measuring
similarity between products or users [3]. It presents feature-based recommendation
algorithms that overcome the limitations of the existing top-N recommendation
algorithms. Furthermore, they have discussed about the user based collaborative
filtering and also discussed about its problem when number of user is very large and
complexity it gains using user based recommendation system. This paper is mainly
5
focused on feature-based recommendation system in which recommendation is done on
the basis of features of the products but not on the basis of particular products.
YH Cho, JK Kim, SH Kim suggested a personalized recommendation methodology,
which able to get further effectiveness and quality of recommendation [4]. The
methodology presented in this paper is based on different types of data-mining
approaches such as web usage mining, decision tree, association rule mining and the
product taxonomy etc. In this paper, the customer preference and the product
association are automatically learned from click-stream, which is also known as web
log. It considers both purchase behavior as well as visiting patterns for product
recommendations. It avoids the poor recommendations by applying decision tree
concepts. With the use of explicit knowledge form the marketers, the product
recommendations are updated. Finally this approach is well defined for the accurate
Recommendation system.
6
2.2. Requirement Analysis
The following Use Case Diagram describes the major actions of the system and
interaction between actors and the system.
7
Figure 2. 1 Use Case Diagram For Admin
8
Table 2. 1 UC Register
Secondary Actor
Table 2. 2 UC Login
9
Table 2. 3 UC Manage Category and Subcategory
10
Figure 2. 2 Use Case Diagram for Customer
11
Table 2. 5 UC View Product
Secondary Actor
12
13
Table 2. 7 UC View Recommended Products
Secondary
Actor
Description Customer can view recommended products which is based on their own
rating and views.
Secondary
Actor
Description Customer can add and update products to cart and delete from carts.
Failure
Scenario Login is required to add product to cart.
14
2.2.2. Non Functional Requirements
The non-functional requirements describe how the system works or that specifies
criteria that can be used to judge the operation of a system. It also describes system
attributes security, performance, maintainability, scalability and usability.
15
2.3. Feasibility Analysis
Feasibility studies aim to objectively and rationally uncover the strengths and
weaknesses of an existing business or proposed venture, opportunities and threats as
presented by the environment, the resources required to carry through, and ultimately
the prospects for success. The feasibility analysis is divided into three parts as described
below:
Technical Feasibility:
Technical analysis is concerned with determining how possible a system is from a
technical perspective. The project is developed for general use. In order to access this
website, the user needs an internet connection. The main requirement of the system
from a developer's view is a web server capable of handling the content, Internet
connection and manpower to handle the store.
Economic Feasibility:
The system is economically feasible as the only cost required will be the cost to host
and run the website in a server and maintain the system.
Operational Feasibility:
It is concerned with the operating capabilities of the system. Since it is a web-based
application, it is quite easy to handle the system with a normal web surfing skill. For
the efficient operation, only a general-purpose computer is required. And the user
interface is friendly. Hence, the system is feasible operationally.
16
CHAPTER 3: SYSTEM ANALYSIS
System analysis is the process of defining the elements of a system such as the
architecture, modules, and components, the different interfaces of those components
and the data that goes through that system. In this project, we have used Microsoft
Visio as designing tool for the UML diagrams of our system. Some of the diagrams are
as shown below:
17
CHAPTER 4: SYSTEM DESIGN
Systems design is the process of defining the architecture, modules, interfaces, and data
for a system to satisfy specified requirements. Systems design could be seen as the
application of systems theory to product development:
If the user’s email is verified then user are allowed to add products. User choose category and
add product with details and photos and then send request to admin for approval. If the product
is approved then product is displayed on home page and if the product is unapproved then user
is notified about unapproval of his product and user can edit and send request again.
18
Figure 4. 2 Activity Diagram For Buyer
Users can view products based on categories. User search products and view whole
description of products and seller.Then user can make order online or contact seller to
know further details.For online order, user add product to cart and make an order. The
bill can be paid through online and offline. For online payment, user can pay through
payment method like esewa.
19
4.2. Sequence Diagram
A sequence diagram represents the object collaboration and is used to define event
sequences between objects for a certain outcome. The sequence diagram of this system
is drawn as shown below:
After login User navigates to homepage .In homepage products are displayed according
to Featured products, Latest products and Top rated products. User can also select
product according to category. After selecting any one product its detail is displayed.
Registered user can add item to cart, rate those items. Similarly, users with verified
email can add product and edit and delete it and send request to admin for approval.
20
4.3. Relational Model
The following database schema of our system is the structure of the database used in the
system in a formal language.
21
CHAPTER 5: IMPLEMENTING AND TESTING DESIGN
Following are the tools and framework used for the accomplishment of this project:
HTML
CSS
Bootstrap
JQuery
Ajax
PHP
Laravel
MYSQL(database)
PHP Storm
5.2. Methodology
Recommender systems are personalized information filtering technology used to either
predict whether a particular user will like a particular item. Recommendation systems
apply knowledge discovery techniques to the problem of making personalized
recommendations for information, products or services during a live interaction. In our
project, we are using item-based collaborative filtering for recommendation.
Item-based collaborative filtering is a model based algorithm for making
recommendations. In the algorithm, the similarities between different items are calculated
by using one of a number of similarity measures. The similarity values between items are
measured by observing all the users who have rated both the items.
As shown in the diagram below, the similarity between two items is dependent upon the
ratings given to the items by users who have rated both of them:
22
Figure 5. 1 Collaborative Filtering
23
There are a number of different mathematical formulations that can be used to calculate
the similarity between two items. We are using centered cosine similarity.
In this way items are recommended using item based collaborative filtering.
24
5.3. Testing
System testing is actually a series of different tests whose primary purpose is to fully
exercise the computer-based system. Although each test has a different purpose, all
work to verify that all the system elements have been properly integrated and performed
allocated functions. The testing process is actually carried out to make sure that the
product exactly does the same thing what is supposed to do. Testing is the final
verification and validation activity within the organization itself. In the testing stage
following goals are to achieve: -
Unit testing is a software testing method by which individual units of source code, sets
of one or more computer modules together with associated control data, usage
procedures, and operating procedures, are tested to determine whether they are fit for
use. In this news portal system, the individual units are individually tested by providing
one or few inputs and expected for the single output.
25
Table 5.3.1 Unit Test Case Register
Expected Actual
ID Description Input Data Pass/fail
result Result
1. User User should Registrati fail
Name:Anisha
Registration Khadka be able to on failed
register in
Email:aneesha@g
the system
mail.com
Password:anisha
Passwordconfirm
ation: ani
Password:renuka
Passwordconfirm
ation: renuka
26
Table 5.3.2 Unit Test Case Login
27
Table 5.3.3 Unit Test Case Algorithm
register in
the
2.Woolrich 2.[0.549] Pass
system
Jacket(Category-
Women’s
Clothing)
Product
2. User
Title:
must
contain “Dell xps
0.999
data in 13” 3.Samsung 3.[0.445] Pass
S8(Category-
view and
Mobiles)
purchase
table.
4. Lenovo
4.[ 0.178] Pass
A269i(Category-
Mobiles)
5.Iphone
7(Category- 5.[0.115]
Pass
Mobiles)
28
Table 5.3.4 Unit Test Case Algorithm
4. RollerWheel
PushUp Bars 4.[0.244] Pass
(Catogory-
Gym Sets
29
Table 5.3.5 Integration Testing
Expected
S.N. Case Input Status
Output
1. User enters the sign Email: Display homepage Homepage with
in page Password: with User logged in User logged in
status. status is displayed.
30
CHAPTER 6: CONCLUSION AND RECOMMENDATION
6.1. Conclusion
Recommendation system has been widely applicable to E-commerce. The system aims to
bring drastic revolution in the field of user experience while using E-commerce pages.
The system designed uses collaborative filtering to recommend better and quality product
from the user’s interaction. With the use of this system, E-commerce platforms can be a
superior system than traditional shopping patterns and bring drastic changes on user
lifestyle.
The scope of the project is to provide a web-platform where consumers can sell products
or services to each other and enable buyers and sellers to find each other easily. It
implement recommendation where customer can find new products based on rating and
purchase history provided by them. It will be available for access 24*7. Only the
constraints is that internet should be available for using the system. The main target of
the project is to make easy for the general user to use the system effectively and provide
with the better services.Since, this is the era of Information and Technology, this project
can be more useful in future. Nowadays people are using internet for most of their work,
so creating product recommendation system will be helpful for them.
31
REFERENCES
[1] Narayan V. , Mehta R.K., Rai M., Gupta A. , Singh M., Verma S., Patel A., Yadav
S. ,” E-commerce recommendation method based on collaborative filtering
technology”.
32
APPENDICES
Output
33
Fig: Product Details page
34
Fig: Product Recommendation
35