A Project Report On
A Project Report On
Submitted to
to be awarded by
Session: 2017-2020
Submitted by:
Shalini Borthakur
1|Page
CERTIFICATE
This is to certify that the project work entitled “Handicrafts and Handloom products from
the North-East and their e-trading” by Shalini Borthakur, roll no. 170620014025, for the
degree of Master of Computer Applications (MCA) under Assam Science and Technology
University (ASTU), Guwahati, Assam is accepted by the Department of Computer
Applications, Assam Engineering College, Jalukbari, Guwahati.
2|Page
CERTIFICATE
This is to certify that the project work entitled “ Handicrafts and Handloom products from the
North-East and their e-trading” bonafide work done by Shalini Borthakur, Department of
Computer Applications, Assam Engineering College, bearing roll no. 170620014025, during
the 6th semester of the Master of Computer Applications (MCA) course.
3|Page
CERTIFICATE
This is to certify that the project work entitled “Handicrafts and Handloom products from
the North-East and their e-trading” by Shalini Borthakur, roll no. 170620014025, for the
degree of Master of Computer Applications (MCA) under Assam Science and Technology
University (ASTU), Guwahati, Assam is accepted by the Department of Computer
Applications, Assam Engineering College, Jalukbari, Guwahati.
4|Page
CERTIFICATE
This is to certify that Shalini Borthakur, a 6th semester student, roll no. 170620014025, of
Department of Computer Applications, Assam Engineering College, Guwahati, has
successfully completed her project work entitled “Handicrafts and Handloom products of
North-East and their e-trading”, under my supervision from February, 2020 to June, 2020.
Her work has been prepared as partial fulfillment of the requirement for the degree of Master
of Computer Application, to be awarded by Assam Science and Technology University.
Her performance during work was found to be satisfactory. During her stay at NIELIT she has
displayed very sincere and consensus attitude towards work. I wish her success in all future
endeavors.
Project Guide
Rintu Das
Scientist-C
NIELIT Guwahati
5|Page
ACKOWLEDGEMENT
The satisfaction and euphoria that accompany the successful completion of the project would
be incomplete without mentioning the people who made it possible.
At the very outset, I take the opportunity to express my honest salutation & sincere gratitude to
my external guide, Sri. Rintu Das, Scientist-C, National Institute of Electronics & Information
Technology, Guwahati, Assam, for providing unwavering support, opportunity to work in this
institution and also for the valuable guidance throughout the completion of this project.
I would also like to thank Sri. Rintu Das Sir, Scientist-C, National Institute of Electronics &
Information Technology, Guwahati, Assam, for his guidance and timely suggestion during the
entire project period and so without him the completion of this project would have been barely
possible.
I would like to express my indebtedness towards my respected parents, all the faculty members
of Department of Computer Applications, Assam Engineering College, and the entire staff
of NIELIT, Guwahati for their kind consent, expert guidance, valuable suggestions and
affectionate encouragement.
My further heartiest thanks to all my classmates, friends for their most cordial and helpful role
during the entire work period.
Shalini Borthakur
6|Page
DECLARATION
I, Shalini Borthakur, hereby declare that the project report is an authentic record of my
project, “Handicrafts and Handlooms Products from the Northeast and its e-trading”, carried
out by me at National Institute of Electronics and Information Technology (NIELIT)
GUWAHATI, ASSAM, under the guidance of my external guides, Sri. Rintu Das, Scientist-C
of NIELIT, Guwahati and my internal guide, Mr. Nelson R. Varte, Assistant Professor, Assam
Engineering College.
The project work is my original work and no part of it has been submitted for any other
degree purpose or published in any other form till date.
Shalini Borthakur
7|Page
ABSTRACT
The project entitled “Handicrafts and Handloom products from North-East and its e-
trading” is a web based e-commerce portal.
The main objective of this website is to make it a “one-stop” store where all the traditional
and cultural products of the northeastern states are showcased. It would make searching,
viewing and selection of a product easier.
The seller/local artisans can add their respective products as well as re-stock them based on
their availability. Buyers can view, search and order different products from the website and
track their orders as well.
The search feature provides an easy and convenient way to search for products where a user
can Search for a product and would refine the products available based on the buyer’s
input. The buyer can then view the complete specification of each product.
8|Page
CONTENTS
CHAPTER 4: SYSTEM
4.1 Entity-relationship diagram ..............................21-22
4.2 Use case diagram ..............................................23-27
4.3 Activity diagram ...............................................28-31
4.4 State diagram.....................................................32-36
4.5 Sequence diagram .............................................37-39
9|Page
CHAPTER 5: IMPLEMENTATION
5.1 Tools and Technologies used……………….. 41-46
10 | P a g e
CHAPTER 1
INTRODUCTION
11 | P a g e
1.1 ABOUT THE ORGANIZATION: NIELIT(GUWAHATI):
The National Institute of Electronics & Information Technology (NIELIT)
Guwahati (formerly DOEACC Society Guwahati/ Tezpur Centre) is one of
the centres of NIELIT an autonomous scientific society under the Deptt. of
Electronics & Information Technology, Ministry of Communications and
Information Technology, Govt. of India.
“NIELIT Guwahati” is in operation w.e.f 5th August’1998, in the name and
style of “CEDTI Tezpur” after signing of an MOU between Tezpur
University and erstwhile Dept. of Electronics, Govt. of India. The centre
started its operations from the Tezpur University campus. However, due to
operational difficulties, the location was later shifted to Law College, Tezpur.
As per the decision of the Executive Committee meeting held on 18-7-2002,
the CEDTI, Tezpur has been renamed as “CEDTI, North East (Upper)” with
an area of operation extending to the states of Assam, Arunachal Pradesh,
Meghalaya and Sikkim and to initially function from Guwahati and Tezpur
with administrative set up at Guwahati. After the merger of CEDTI’s ith
DOEACC Society (except CEDTI, Mohali) in December 2002, the centre as
renamed as DOEACC Center Gauhati/Tezpur and later on as the “DOEACC
Society Guwahati/Tezpur Center”. In October 2011, it was renamed as
“National Institute of Electronics and Information Technology (NIELIT)”and
the centre is thus renamed as “NIELIT Guwahati”. Today there are five
extension centres in Assam- Tezpur, Jorhat, Dibrugarh, Kokrajhar and Silchar
under NIELIT Guwahati.
The vision of NIELIT is to be the leader in the development of industry
oriented quality education and training and be the country’s premier
institution for examination and certification in the field of Information,
Electronics and Communications Technology (IECT).
12 | P a g e
1.2 PROJECT OVERVIEW:
The project “Handicrafts and Handloom products from the North-East and
its e-trading” deals with developing an e-commerce portal for online
product sale. It provides the user with a catalog of different northeastern
handicrafts and handloom products available for purchase in the store.
In order to facilitate online purchase a shopping cart is provided to the
user. This is a Django based project with the objective to develop a basic
website where a consumer is provided with a shopping cart application
and also to know about the technologies used to develop such an
application.
1.3 AIM OF THE PROJECT:
The northeastern part of the country is filled with talented handloom
weavers and people who are good at handicrafts. This project will focus on
the handloom and handicraft industry of the northeastern region. With the
help of this project, the local artisans will get an exposure to showcase their
art and crafts.
The repository will have all different kinds and types of handicrafts and
handloom products from different northeastern region. The whole project
will be e-commerce enabled where the local artisans will add their latest
crafts. This project will help the local artisans to have a source of income.
13 | P a g e
CHAPTER-2
BACKGROUND STUDY
14 | P a g e
2.1 THE EXISTING SYSTEM:
The system which we are working at currently does not have any existing
system as there is no “one-stop” e-commerce website for all the
Northeastern Handicrafts and Handloom products showcased together.
All the Northeastern states have their own individual websites for
Handicrafts and Handloom products.
➢ The proposed system has three users: Admin, Seller and Buyer.
➢ In the proposed system the Admin and the Seller needs to register
themselves by providing their personal details.
➢ The Admin can add or delete seller details and products as well as
product details.
➢ The Buyer needs to login/register first, view the products and their
details in the online store, can add the products in the cart and order
them.
➢ The Buyer can also check his/her orders in the ‘My orders” section
15 | P a g e
and can track them.
16 | P a g e
3.0 INTRODUCTION:
Feasibility study is the testing of the proposed system according to its
workability. The purpose of feasibility study is not to solve the problem,
but to determine whether the problem is worth solving. During the study
the problem definition is centralized and aspects of the problem to be
included in the system are to be determined.
The assessment of feasibility study is based on the following factors:
17 | P a g e
and before the requirement analysis and specification phase. The initial
project plans that are made are revised from time to time as the project
progresses and more project data becomes available.
SDLC USED:
The proposed system is being developed using Agile methodologies that are
the best candidates for e-commerce systems that incorporate the innovative
and dynamic nature of the web. This approach is more efficient and
powerful to ensure every piece of functionality is delivered early in the
development stage and improves throughout the life of the web application.
This methodology follows planning, requirements analysis, designing,
coding, testing and documentation in parallel during the stage of production
process. Customer involvement during the development process by getting
their feedback improves the confidence of making changes, error free, and
customer-oriented approach.
18 | P a g e
Customer Interaction is the backbone of this Agile methodology, and open
communication with minimum documentation are the typical features of Agile
development environment. The agile teams work in close collaboration with
each other and are most often located in the same geographical location.
Gantt charts are mainly used to allocate resources to activities. Gantt charts
are useful tools for analysis and planning more complex projects. They help to
plan out the task that needs to be completed.
❖ It gives a basis for scheduling when these tasks will be carried out.
❖ Allows to plan the allocation of resources needed to
complete the project.
19 | P a g e
CHAPTER-4
SYSTEM DESIGN
20 | P a g e
4.0 INTRODUCTION:
21 | P a g e
Fig: ER diagram of the system.
22 | P a g e
4.2 USE-CASE DIAGRAM:
In the Unified Modeling Language (UML), a use case diagram can summarize the
details of your system's users (also known as actors) and their interactions with the
system. To build one, we will use a set of specialized symbols and connectors.
LEVEL 0 DIAGRAM-
23 | P a g e
USE-CASE OF THE ADMIN:
24 | P a g e
USE-CASE OF THE SELLER:
25 | P a g e
USE-CASE DIAGRAM FOR BUYER:
26 | P a g e
4.3 ACTIVITY DIAGRAM:
Activity diagram is basically a flowchart to represent the flow from one activity to
another activity. The activity can be described as an operation of the system. The
basic purpose of activity diagrams is to capture the dynamic behavior of the
system.. It is also called object-oriented flowchart.
27 | P a g e
ACTIVITY DIAGRAM OF THE ADMIN:
28 | P a g e
ACTIVITY DIAGRAM OF THE SELLER:
29 | P a g e
ACTIVITY DIAGRAM FOR BUYER:
30 | P a g e
4.4 STATE DIAGRAM:
A state diagram is a type of diagram used in computer science and related fields to
describe the behavior of systems. State diagrams require that the system described
is composed of a finite number of states; sometimes, this is indeed the case, while
at other times this is a reasonable abstraction.
31 | P a g e
STATE DIAGRAM FOR LOGIN:
32 | P a g e
STATE DIAGRAM FOR THE ADMIN:
33 | P a g e
STATE DIAGRAM FOR THE SELLER:
34 | P a g e
STATE DIAGRAM FOR BUYER:
35 | P a g e
4.5 SEQUENCE DIAGRAM:
A sequence diagram shows object interactions arranged in time sequence. It
depicts the objects and classes involved in the scenario and the sequence of
messages exchanged between the objects needed to carry out the functionality of
the scenario.
36 | P a g e
SEQUENCE DIAGRAM FOR PRODUCT:
37 | P a g e
SEQUENCE DIAGRAM FOR CART:
38 | P a g e
CHAPTER-5
IMPLEMENTATION
39 | P a g e
5.1 TOOLS AND TECHNOLOGIES USED:
❖ HARDWARE-
❖ SOFTWARE-
Framework: Django 3.
IDE: Pycharm.
HYPERTEXT MARKUP LANGUAGE(HTML):
HTML is the standard markup language for creating web pages and applications. Web
browsers receive HTML documents from a web server or from local storage and render
them into multimedia web pages. HTML describes the structure of a web page
semantically and originally included cues for the appearance of the document.
CSS:
Cascading Style Sheets (CSS) is a style sheet language used for describing the presentation
of a document written in a markup language. CSS is a cornerstone technology of the World
Wide Web, alongside HTML and JavaScript. CSS is designed to enable the separation of
presentation and content, including layout, colors, and fonts.
40 | P a g e
This separation can improve content accessibility, provide more flexibility and control
in the specification of presentation characteristics, enable multiple web pages to share
formatting by specifying the relevant CSS in a separate css file, and reduce complexity
and repetition in the structural content.
JAVASCRIPT:
PYTHON:
DJANGO:
Django is a free and open source web application framework written in Python. A
framework is nothing more than a collection of modules that make development easier.
They are grouped together, and allow us to create applications or websites from an
existing source, instead of from scratch.
41 | P a g e
Django MVT
Although Django follows MVC pattern but maintains its own conventions. So, control
is handled by the framework itself. There is no separate controller and a complete
application is based on Model View and Template. That's why it is called the MVT
application. See the following graph that shows the MVT based control flow. Here, a
user requests for a resource to the Django, Django works as a controller and check to
the available resource in URL. If URL maps, a view is called that interact with model
and template, it renders a template. Django responds back to the user and sends a
template as a response.
42 | P a g e
SECURITY ASPECTS OF DJANGO
CROSS-SITE SCRIPTING(XSS) PROTECTION
XSS attacks allow a user to inject client-side scripts into the browsers of other users.
This is usually achieved by storing the malicious scripts in the database where it will be
retrieved and displayed to other users, or by getting users to click a link which will
cause the attacker’s JavaScript to be executed by the user’s browser. However, XSS
attacks can originate from any untrusted source of data, such as cookies or Web
services, whenever the data is not sufficiently sanitized before including in a page.
Using Django templates protects you against the majority of XSS attacks. However, it
is important to understand what protections it provides and its limitations. Django
templates escape specific characters that are particularly dangerous to HTML. While
this protects users from most malicious input, it is not entirely foolproof.
43 | P a g e
SQL INJECTION PROTECTION
SQL injection is a type of attack where a malicious user can execute arbitrary
SQL code on a database. This can result in records being deleted or data
leakage. Django’s query sets are protected from SQL injection since their
queries are constructed using query parameterization. A query’s SQL code is
defined separately from the query’s parameters. Since parameters may be user-
provided and therefore unsafe, they are escaped by the underlying database
driver. Django also gives developers the power to write raw queries or execute
custom SQL. These capabilities should be used sparingly and you should
always be careful to properly escape any parameters that the user can control.
CSRF attacks allow a malicious user to execute actions using the credentials
ofanother user without that user’s knowledge or consent. Django has built-in
protection against most types of CSRF attacks, providing you have enabled and
used it where appropriate. However, as with any mitigation technique, there are
limitations. For example, it is possible to disable the CSRF module globally or
for particular views. You should only do this if you know what you are doing.
There are other limitations if your site has subdomains that are outside of your
control. CSRF protection works by checking for a secret in each POST request.
This ensures that a malicious user cannot “replay” a form POST to your
website and have another logged in user unwittingly submit that form. The
malicious user would have to know the secret, which is user-specific (using a
cookie).
44 | P a g e
SQLite:
PYCHARM:
45 | P a g e
CHAPTER-6
TESTING AND TEST-CASES
46 | P a g e
6.1 WHITE-BOX TESTING:
White-box testing(also known as clear box testing, glass box testing, transparent box
testing, and structural testing) tests internal structures or working of a program, as
opposed to the functionality exposed to the end-user.
In white-box testing an internal perspective of the system, as well as programming
skills, are used to design test cases.
While white-box testing can be applied at the unit, integration and system levels of the
software testing process, it is usually done at unit level.
Black-box testing treats the software as a “black box”, examining functionality without
any knowledge of internal implementation. The tester is only aware of what the
software supposed to do, not how it does it.
Black-box testing methods include: equivalence partitioning, boundary value analysis,
all-pairs testing, state transition tables, decision tables, fuzz testing, model-based
testing.
One advantage of black box testing is that no programming knowledge is required.
47 | P a g e
6.3 TEST CASES:
48 | P a g e
User Login Flow:
Buyer Flow:
49 | P a g e
TC7 Checkout 1. Click the Checkout Checkout Pass
checkout page should page
button. be displayed displayed
2. View the and order and order
order details should be has been
and fill out placed. placed.
the address
details.
3. Click
“place
order”button
TC8 Making 1. Click the Orders Orders Pass
payment “place should be stored in the
order” stored in the database
button. database.
2. Make
the
payment.
TC9 View Orders 1.Click on the Orders should Orders Pass
“My orders”. be viewed. viewed.
50 | P a g e
51 | P a g e
CHAPTER-7
SNAPSHOTS
52 | P a g e
HOMEPAGE
53 | P a g e
ADMIN PAGE
54 | P a g e
ADMIN DASHBOARD
55 | P a g e
SIGN-UP FOR THE SELLER
56 | P a g e
SIGN-IN FOR THE SELLER
57 | P a g e
SELLER PANEL
58 | P a g e
SELLER PANEL (EDIT ITEM FORM)
59 | P a g e
SELLER PANEL (ADD ITEM FORM)
60 | P a g e
SELLER PANEL (AFTER AN ORDER IS PLACED)
61 | P a g e
SHOP PAGE
62 | P a g e
BUYER ACCOUNT SECTION (TOP-RIGHT CORNER)
63 | P a g e
BUYER SIGN-UP PAGE
64 | P a g e
BUYER SIGN-IN PAGE
65 | P a g e
ADDING TO CART
66 | P a g e
PRODUCT DETAILS PAGE
67 | P a g e
STOCK WARNING WHILE ADDING TO CART
68 | P a g e
CHECKOUT
69 | P a g e
PAYMENT PAGE
70 | P a g e
ORDER TRACKING PAGE
71 | P a g e
ORDER TRACKING PAGE WITH DETAILS
72 | P a g e
CONTACT PAGE
73 | P a g e
CHAPTER-8
CONCLUSIONS AND FUTURE WORK
74 | P a g e
CONCLUSION:
75 | P a g e
FUTURE WORK:
76 | P a g e
CHAPTER-9
REFERENCES
77 | P a g e
REFERENCES:
• www.python.org/doc/
• https://docs.djangoproject.com/en/3.0/
• www.geeksforgeeks.org/python-tutorial/
• https://nehhdc.com/
• https://advantageassam.com/handloom-and-textile-and-handicrafts
78 | P a g e