E Commerce Website
E Commerce Website
E-Commerce Website
By
TO THE
Declaration
We hereby declare that the major project work entitled" E- Commerce Website "
& 11719407103 under the guidance of Mr. Pankaj Pandey (Assistant Professor),
Institute of Computer Science & Technology (College Code 117), SHEPA Varanasi,
and this project work is submitted in the partial fulfilment of the requirements for the
this report have not been submitted to any other University or Institute for the award
Chirag Rastogi
11719407074
(Collage Code: 117) Regd. Under Section 2(f) and 12(B) of UGC Act
1956
CERTIFICATE
Student of BCA 6th Semester (Session 2020 – 2021) of our institute was assigned a
____________________________________________________________ “
S/He has completed his/her project successfully to fulfil the requirements of the
curriculum for the award of the Degree of Bachelor of Computer Application (BCA), as
prescribed by Mahatma Gandhi Kashi Vidyapith, Varanasi (U.P. Govt. State University).
___________________ _________________
Vivek Gupta
Signature of Supervisor HoD, ICST
__________________
(Dr. Anupam Shukla)
Principal, ICST
Date –
SHEPA Campus, Mohansarai-Mugalsarai Bypass Road, Nibia, Bachchhaon, Varanasi – 11 www.shepa.org.in
ACKNOWLEDEMENT
Firstly, I would like to acknowledge Prof. M.L. Sadana (Director, SHEPA) who has
provided us enough support and good environment while making the project.
I express heartfelt gratitude to Dr. Anupam Shukla (Principal, ICST) and again
humble thanks to Mr Vivek Gupta (H.O.D) took great pain in going through the entire
process and made valuable comments and suggestions with constant encouragement.
We would like special thanks to our coordinator Mr. Pankaj Pandey (Associate
Professor, ICST) who provided us with sample ideas when we got stuck during the
project. He also helped us to collect all the relevant information. We can’t forget to
thank to sir who were very helpful to us directly or indirectly during development of
this project.
Last but not the least I would like to thank my parents for their moral support and
encouragement and my friends whose valuable co-operation gave me vast knowledge
in computer application.
I am also thankful to all my faculty members, and the people who are directly or
indirectly related to my Project and helped me out for completing my work successful.
Place: VARANSI
ABSTRACT
The examen method used in this inquest is water model of System Development Life
Cycle (SDLC) method with following phases: requirement definition, analysing and
determining the features needed in developing application and making the detail
definition of each features, system and software design, designing the flow of
developing application by using storyboard design, user experience design, Unified
Modelling Language (UML) design, and database structure design, implementation an
unit testing, making database and translating the result of designs to programming
language code then doing unit testing, integration and System testing, integrating unit
program to one unit system then doing system testing, operation and maintenance,
operating the result of system testing and if any changes and reparations needed then
the previous phases could be back.
The result of this examen is an ordering Electronics appliances based on website for
customer electronic shop, and admin user. The conclusion of this inquest is to help
customer in making order easily, to give detail information needed by customer, to
help electronic shop in receiving order, and to help delivery boy while doing delivery.
Table of Contents
Page no.
1) Python
2) HTML
3) Cascading style sheet (CSS)
4) SQLite
1) Introduction
2) Conceptual Design
3) Data Flow Diagram of “E-Commerce Website”
4) E-R Diagram of “E-Commerce Website”
CHAPTER # 1
Introduction
Contents:
• Introduction
• Problem Definition
• Motivation
• Aim
• Objective
• Goal
• Need of System
1|Page
Downloaded by Velocity Vivek (velocityvivek1992@gmail.com)
lOMoARcPSD|29829758
The “E-Commerce Website Project” has been developed to override the problems
prevailing in the practicing manual system. This software is supported to eliminate and,
in some cases, reduce the hardships faced by this existing system. Moreover, this system
is designed for the particular need of the company to carry out operations in a smooth
and effective manner.
This application is reduced as much as possible to avoid errors while entering the data.
It also provides error message while entering invalid data. No formal knowledge is
needed for the user to use this system. Thus, by this all it proves it is user-friendly. E-
Commerce Website Management System, as described above, can lead to error free,
secure, reliable and fast management system. It can assist the user to concentrate on their
other activities rather to concentrate on the record keeping. Thus, it will help
organization in better utilization of resources.
Problem Definition:
Managing your E-Commerce Website system may seem tricky, but this is part of
Customer service system (application support direct contact with customer).
Motivation
The motivation for designing this app came because my family is involved in the
electronic business and I personally do not like waiting for long in the store or to have
to call store to place an order especially during the peak any events and functions every
time. Moreover, I value recent learning about the Java and XML Programming
languages as well as seeing hoe powerful and dynamic they are when it comes to app
designing and apps. The language used to build this apps are XML and Java as client
facing Whereas Firebase database at the back-end because I found them to be extremely
useful while working on the technologies
2|Page
Downloaded by Velocity Vivek (velocityvivek1992@gmail.com)
lOMoARcPSD|29829758
Aim:
“To Manage E-Commerce Website” The software is developed to help computer
science students to learn about the Apps deigning using XML from their basic
capabilities to build a complete apps from scratch. Further, it gives insight about how
GUI interface interact with server-side language, Java, and finally with the Firebase
database
Objective:
This software helps customer to find different products according category, price, and
subcategory. It is designed such a way that one can view all the updates of the products
from any place through online. The software will help in easy maintaining and updating
products in the website for the administrator. Also, quick and easy comparison of
different products for the customers.
Goal:
The project is basically targeted at those people who would like online shopping and
have an Internet access. Finally, buyers curious in comparing the prices for various
products for according our budget.
To make a database that is consistent, reliable and secure.
To provide correct, complete, ongoing information.
To develop a well-organized information storage system.
To make good documentation so as to facilitate possible future enhancements.
Need of the System:
There is always a need of a system that will perform to purchasing grocery products
online according to customer requirement.
This system will reduce the manual operation required to maintain all the records of
booking information. And also generates the various reports for analysis. Main concept
of the project is to enter transaction reports and to maintain customer records. Hence
this software can be used in any grocery shop to maintain their record easily.
3|Page
Downloaded by Velocity Vivek (velocityvivek1992@gmail.com)
lOMoARcPSD|29829758
CHAPTER # 2
Hardware and Software
Requirements
Contents:
Introduction
System environment
Software requirement
Hardware requirements
4|Page
Downloaded by Velocity Vivek (velocityvivek1992@gmail.com)
lOMoARcPSD|29829758
Introduction:
In this chapter we mentioned the software and hardware requirements, which are
necessary for successfully running this system. The major element in building systems
is selecting compatible hardware and software. The system analyst has to determine
what software package is best for the “E-Commerce Website” and, where software
is not an issue, the kind of hardware and peripherals needed for the final conversion.
System Environment:
After analysis, some resources are required to convert the abstract system into the real
one. All the resources, which accomplish a robust
The hardware and software selection begins with requirement analysis, followed by a
request for proposal and vendor evaluation.
Software and real system are identified. According to the provided functional
specification all the technologies and its capacities are identified. Basic functions and
procedures and methodologies are prepared to implement. Some of the Basic
requirements such as hardware and software are described as follows: -
5|Page
Downloaded by Velocity Vivek (velocityvivek1992@gmail.com)
lOMoARcPSD|29829758
Software Requirements:
Hardware Requirements:
6|Page
Downloaded by Velocity Vivek (velocityvivek1992@gmail.com)
lOMoARcPSD|29829758
CHAPTER #3
System Analysis
Contents:
• Purpose
• Project Scope
• Proposed System
• System overview
• Software engineering paradigm applied
• Waterfall Model
7|Page
Downloaded by Velocity Vivek (velocityvivek1992@gmail.com)
lOMoARcPSD|29829758
Purpose:
To manage the online shopping of grocery products. It helps to customer to
search and buy medicines from anywhere. Also make payment on delivery for
it. It helps to people to book desired products at their prefer time.
Project Scope:
Proposed System:
The E-Commerce Website is available in the market that can serve customers to
book/purchase grocery products online.
8|Page
Downloaded by Velocity Vivek (velocityvivek1992@gmail.com)
lOMoARcPSD|29829758
System Overview:
The key features required in the system are as follows:
• Login: This module has a drop-down list box from where we have to select
ADMIN or USER. The ADMIN has all the rights in the software including
updating the status of his site. The other fields in login are username and
password. If the username and password are correct then it is directed to
next page.
• New user: This module is for the users who do not have their account. Here
user is allowed to create an account to login. The account creation is done
by filling the registration form with user details such as name, phone, email
etc.
• Product: This module has information regarding the medicines such as its
name, category, subcategory, image, price information, its features etc. The
ADMIN has the authority to Add, Delete, Update etc. The USER can only
view the products available in the stock etc.
• Search: This module helps the customer to ease his search based on his
budget or interest. The search can be done on different categories and
subcategories like category, subcategory, name, price etc
9|Page
Downloaded by Velocity Vivek (velocityvivek1992@gmail.com)
lOMoARcPSD|29829758
Solve the actual problems the software engineer or a team of engineers must incorporate
a developments strategy that encompasses the process, method and tools and the generic
phases (connection, adoption, enhancement and prevention). This strategy is often
referred to an as process model or software engineering paradigm. A process model for
software engineering is chosen based on the nature of the project and application the
method and tools to be used and the controls and deliverable that are required.
As the development process specifies the major development and quality assurance
activity that need to be performed in the project, the development process really forms
the core of the software process. The management process is decided based on the
development process. Due to the importance of the development process various model
have been proposed e.g.,
In our project we used the Water Fall Model for software development is as follow:
10 | P a g e
Downloaded by Velocity Vivek (velocityvivek1992@gmail.com)
lOMoARcPSD|29829758
WATERFALL MODEL
Waterfall Model is also known as Liner Sequential Life Cycle Model. Waterfall Model
followed in the sequential order and so we move to next step of development or testing
approach for the small projects and if the requirements are very clears.
In Waterfall Model, testing starts at the end when development work is completed. The
mechanism like waterfalls towards down. Waterfall Model is very popular strategy for
SDLC. Once Waterfall Model is followed and if any step completed and next step has
been started in development process, we can’t revert back to the previous step to
redevelop or perform any change. Waterfall Model concept first introduced in 1970 by
Winston W. Royce.
11 | P a g e
Downloaded by Velocity Vivek (velocityvivek1992@gmail.com)
lOMoARcPSD|29829758
• Requirements
• Analysis
• Design
• Coding
• Testing
• Deployment
• Maintenance
Requirement
Analysis
Design
Coding
Testing
Deployment
Maintenance
12 | P a g e
• Testing: Once the development completed, testing phase starts and, in this
phase, we test each unit or component and make sure the developed components
are working as expected. All the testing activities are performed in this phase.
• Deployment: Once testing is completed and make sure there is no bug or
defect or any kind of issue, then project is deployed to production. Once product
is deployed to production the end users start using the product.
• Maintenance: We always keep eye on the product and provide all the
necessary bug or issue fixes if occurs in production or reported by end users.
Also, time to time we keep updated the product with new updates or patches if
developed or available.
13 | P a g e
14 | P a g e
CHAPTER # 4
Implementation issues
Python
HTML
15 | P a g e
Cascading Style Sheets (CSS) are a collection of rules we use to define and modify
web pages. CSS are similar to styles in Word. CSS allow Web designers to have
much more control over their pages look and layout. For instance, you could create
a style that defines the body text to be Verdana, 10 points. Later on, you may easily
change the body text to Times New Roman, 12 points by just changing the rule in the
CSS. Instead of having to change the font on each page of your website, all you need
to do is redefine the style on the style sheet, and it will instantly change on all of the
pages that the style sheet has been applied to. With HTML styles, the font change
would be applied to each instance of that font and have to be changed in each spot.
CSS can control the placement of text and objects on your pages as well as the look
of those objects.
HTML information creates the objects (or gives objects meaning), but styles describe
how the objects should appear. The HTML gives your page structure, while the CSS
creates the “presentation”. An external CSS is really just a text file with a .CSS
extension. These files can be created with Dreamweaver, a CSS editor, or even
Notepad.
The best practice is to design your web page on paper first so you know where you
will want to use styles on your page. Then you can create the styles and apply them
to your page.
16 | P a g e
JavaScript
Microsystems.
processed by the client's web browser rather than on the web server. This means
check a web form before it is submitted to make sure all the required fields have
been filled out. The JavaScript code can produce an error message before any
Like server-side scripting languages, such as PHP and ASP, JavaScript code can be
inserted anywhere within the HTML of a webpage. However, only the output of
server-side code is displayed in the HTML, while JavaScript code remains fully
visible in the source of the webpage. It can also be referenced in a separate .JS file,
17 | P a g e
Django
This framework uses a famous tag line: The web framework for perfectionists
with deadlines.
18 | P a g e
CHAPTER # 5
System Design
Contents:
Use case diagram
Sequence Diagram
Data flow diagram
E-R Diagram
19 | P a g e
Use case diagram consists of use cases and actors and shows the interaction between
them. The key points are:
The main purpose is to show the interaction between the use cases and the actor.
The use cases are the functions that are to be performed in the module.
Manage
Products
Manage
Feedback
•
Manage
Booking
SYSTEM
ADMIN
Manage Users
20 | P a g e
Booking
Cancel
Search
Feedback SYSTEM
USER Fig.5.2
21 | P a g e
: Validate()
:Execute Query()
22 | P a g e
:Validate()
:executeQuery()
Response
Show Result
Success:hide()
Failed:show()
23 | P a g e
Data flow diagrams were proposed by Larry Constantine, the original developers of
structured design, based on Martin and Strain's "Data Flow Graph" model of
computation. Starting in the 1970's, data flow diagrams (DFD) became a popular way
to visualize the major steps and data involved in software system processes. DFDs
were usually used to show data flows in a computer system, although they could in
theory be applied to business process modelling. DFD were useful to document the
major data flows or to explore a new high-level design in terms of data flow.
A data flow diagram (DFD) is a graphical representation of the "flow" of data through
preliminary step to create an overview of the system, which can later be elaborated.
DFD's can also be used for the visualization the data processing (structured design).
A DFD shows what kind of information will be input to and output from the system,
where the data will come from and go to, and where the data will be stored. It does not
show information about the timing of process or information about whether processes
A DFD also known as 'bubble chart’, has the purpose of clarifying system requirements
and identifying major transformations. It shows the flow of data through a system. It
is a graphical tool because it presents a picture. The DFD may be partitioned into levels
24 | P a g e
• DATA FLOW
• PROCESS
• EXTERNAL ENTITY
• DATA STORE
DATA FLOW
The previous three symbols may be interconnected with data flows. These represent
the flow of data to or from a process. The symbol is an arrow and next to it a brief
description of the data that is represented. There are some interconnections, though,
that are not allowed. Again, in practice this must involve a process. Also, it is unusual
with information exchanges between two external entities as they are outside our
system and therefore of less interest to us. The data flow is used to describe the
movement of information from one part of the system to another part. Flows represent
data in motion.
It is a pipe line through which information flows. Data flow is represented by an arrow.
25 | P a g e
PROCESS
Processes are actions that are carried out with the data that flows around the system.
A process accepts input data needed for the process to be carried out and produces
data that it passes on to another part of the DFD. the processes that are identified on
a design DFD will be provided in the final artifact. They may be provided for using
special screens for input and output or by the provision of specific buttons or menu
items. Each identifiable process must have a well-chosen process name that
describes what the process will do with the information it uses and the output it will
produce. Process names may be well chosen to give a precise meaning to the try to
avoid using the verb 'process”, otherwise it is easy to use this for every process. We
already know from the symbol it is a process so this does not help us to understand
Process
26 | P a g e
EXTERNAL ENTITY
External entities are those things that are identified as needing to interact with
the system under consideration. The external entities either input information to
the system, output information from the system or both. Typically, they may
represent job titles or other systems that interact with the system to be built.
Some examples are given below in Figure. Notice that the SSADM symbol is an
eclipse. If the same external entity is shown more than once on a diagram (for
but is not a part of the system. External entities represent any entity that supplies
or receive.
External Entity
27 | P a g e
DATA STORE
Data stores are places where data may be stored. This information may be stored
either temporarily or permanently by the user. In any system you will probably
need to make some assumptions about which relevant data stores to include. How
many data stores you place on a DFD somewhat depends on the case study and
how far you go in being specific about the information stored in them. It is
important to remember that unless we store information coming into our system it
will be lost.
The data store represents a logical file. A logical file can represent either a data
store symbol which can represent either a data structure or a physical file on disk.
Data Store
28 | P a g e
THEORY OF DFD
This context-level DFD is next "exploded", to produce a Level 1 DFD that shows
some of the detail of the system being modelled. The Level 1 DFD shows how the
system is divided into sub-systems (processes), each of which deals with one or
more of the data flows to or form an external agent, and which together provide all
of the functionality of the system as a whole. It also identifies internal data stores
that must be present in order for the system to do its job, and shows the flow of data
Data flow diagrams are one of the three essential perspectives of the structured-
systems analysis and design method SSADM. The sponsor of a project and the end
users will need to be briefed and consulted throughout all stages of a system's
evolution. With a data flow diagram, users are able to visualize how the system will
operate, what the system will accomplish, and how the system will be implemented.
The old system's dataflow diagrams can be drawn up and compared with the new
system. Data flow diagrams can be used to provide the end user with a physical idea
of where the data they input ultimately has an effect upon the structure of the whole
system from order to dispatch to report. How any system is developed can be
In the course of developing a set of levelled data flow diagrams the analyst/designer
is forced to address how the system may be decomposed into component sub-
systems, and to identify the transaction data in the data model. Data flow diagrams
29 | P a g e
PHYSICAL DFD
A physical DFD shows how the system is actually implemented, either at the moment
(Current Physical DFD), or how the designer intends it to be in the future (Required
Physical DFD). Thus, a Physical DFD may be used to describe the set of data items
that appear on each piece of paper that move around an office, and the fact that a
particular set of pieces of paper are stored together in a filing cabinet. It is quite
possible that a Physical DFD will include references to data that are duplicated, or
redundant, and that the data stores, if implemented as a set of database tables, would
Logical DFD attempts to capture the data flow aspects of a system in a form that has
30 | P a g e
A context diagram is a top level (also known as "Level 0") data flow diagram. It only
contains one process node ("Process 0") that generalizes the function of the entire
system in relationship to external entities. A context level DFD is the most basic form
of DFD. It aims to show how the entire system works at a glance. There is only one
process in the system and all the data flows either into or out of this process. Context
level DFD's demonstrates the interactions between the process and external entities.
When drawing Context Level DFD's, we must first identify the process, all the
external entities and all the data flows. We must also state any assumptions we make
about the system. It is advised that we draw the process in the middle of the page.
We then draw our external entities in the corners and finally connect our entities to
31 | P a g e
This DFD provides an overview of the data entering and leaving the system. It
also shows the entities that are providing or receiving that data. These
correspond usually to the people that are using the system we will develop. The
context diagram helps to define our system boundary to show what is included
in, and what is excluded from, our system. One process, numbered 0.
32 | P a g e
Level 0
Response Response
33 | P a g e
LEVEL 1 DFD's
Level 1 DFD's aim to give an overview of the full system. They look at the
system in more detail. Major processes are broken down into sub-processes.
Level DFD. We must break up the single process into its sub-processes. We
must then pick out the data stores from the text we are given and include them
in our DFD. Like the Context Level DFD's, all entities, data stores and
processes must be labelled. We must also state any assumptions made from
the text.
FEATURES
• Every data flow on the context diagram, to or from an external entity, is also
• Each process has a good strong verb describing what the process is doing
required out
34 | P a g e
ADMIN
35 | P a g e
INTRODUCTION
36 | P a g e
This is the highest-level ER model in that it contains the least granular detail but
establishes the overall scope of what is to be included within the model set. The
conceptual ER model normally defines master reference data entities that are
A conceptual ER model may be used as the foundation for one or more logical data
models (see below). The purpose of the conceptual ER model is then to establish
structural metadata commonality for the master data entities between the set of logical
A logical ER model does not require a conceptual ER model, especially if the scope of
the logical ER model includes only the development of a distinct information system.
The logical ER model contains more detail than the conceptual ER model. In addition
to master data entities, operational and transactional data entities are now defined. The
details of each data entity are developed and the relationships between these data
37 | P a g e
One or more physical ER models may be developed from each logical ER model.
database and each physical ER model is technology dependent since each database
indexes such as unique key indexes, and database constraints such as foreign key
design modifications to the relational database objects and to maintain the structural
metadata of the database. The first stage of information system design uses these
models during the requirements analysis to describe information needs or the type
The data modelling technique can be used to describe any ontology (i.e., an
overview and classifications of used terms and their relationships) for a certain area
database, the conceptual data model is, at a later stage (usually called logical
design), mapped to a logical data model, such as the relational model; this in turn is
mapped to a physical model during physical design. Note that sometimes, both of
management system.
38 | P a g e
Attributes
Fig.: Attributes
Key Attributes
Composite Attributes
Multivalued Attributes
39 | P a g e
Relationship
Fig., Relationship
Links
Fig., Links
40 | P a g e
RELATIONSHIP
A1 B1
A2 B2
A3 B3
41 | P a g e
A1 B1
A2 B2
A3 B3
A1 B1
A2 B2
A3 B3
42 | P a g e
A key is an attribute of a table which helps to identify a row. There can be many
It is such an attribute of a table that can uniquely identify a row in a table. Generally,
they contain unique values and can never contain NULL values. There can be more
than one super key or candidate key in a table e.g., within a STUDENT table ROLL
Primary Key
It is one of the candidate keys that are chosen to be the identifying key for the entire
table. E.g., although there are two candidate keys in the STUDENT table, the
college would obviously use Roll as the primary key of the table.
Alternate Key
This is the candidate key which is not chosen as the primary key of the table. They
are named so because although not the primary key, they can still identify
43 | P a g e
Composite Key
Sometimes one key is not enough to uniquely identify a row. E.g., in a single class
Roll is enough to find a student, but in the entire school, merely searching by the
Roll is not enough, because there could be 10 classes in the school and each one of
them may contain a certain roll no 5. To uniquely identify the student, we have to
say something like "class VII, roll no 5". So, a combination of two or more attributes
Foreign Key
Sometimes we may have to work with an attribute that does not have a primary key
of its own. To identity its rows, we have to use the primary attribute of a related
table.
Such a copy of another related table's primary key is called foreign key.
Based on the concept of foreign key, there may arise a situation when we have to
relate an entity having a primary key of its own and an entity not having a primary
key of its own. In such a case, the entity having its own primary key is called a
strong entity and the entity not having its own primary key is called a weak entity.
Whenever we need to relate a strong and a weak entity together, the ERD would
44 | P a g e
Entity-Relationship Modeling
Historical Background
The ER model was developed, and the main differences between the ER model
1.Competing Forces
First, let us look at the competing forces in the computer software area at that
time. What are the competing forces then? What triggered people like the author
to work on this area (data models) and this particular topic (ER modelling)? In
the following, we will discuss the competing forces in the industry and in the
that had been implemented as commercial products in the early 70’s: the file
system model, the hierarchical model (such as IBM’s IMS database system), and
the Network model (such as Honeywell’s IDS database system). The Network
Bachman, who received the ACM Turing Award in 1973. Most organizations at
that time used file systems, and not too many used database systems. Some
people were working on developing better data or index structures for storing
45 | P a g e
Competing Forces in the Academic World. In 1970, the relational model was
is correct to say that in the early 70’s, most people in the academic world worked
on relational model instead of other models. One of the main reasons is that many
professors had a difficult time to understand the long and dry manuals of
was written in a much more concise and scientific style. For his contributions in
the development of the relational model, Codd received ACM Turing Award in
1981. Most People were working on DBMS Prototypes. Many people at that
relational model. Most Academic People were investigating the definitions and
algorithms for the Normal Forms of Relations. A lot of academic people worked
algorithms for well defined normal forms. Or, they could work on new normal
forms. The speed of research moved very fast in the development of normal
forms and can be illustrated by the following scenario. Let us say that several
people were ready to publish their results on normal forms. Assuming that one
person published a paper on 4th normal form and another person who had written
a paper on 4th normal form but had not published it yet, the 2nd person would
have changed the title of the paper from 4th normal form to 5th normal form.
46 | P a g e
Then, the rest would work on the 6th normal form. This became an endless game till
one day somebody wrote a paper claiming that he had an infinity- th normal form
and arguing that it did not make any sense to continue this game. Most practitioners
also said loudly that any relational normal form higher than 3rd or 4th won’t have
practical significance. As a result, the game of pursuing the next normal form finally
that time, there were urgent needs for (1) integration of various file and database
formats and (2) incorporating more “data semantics” into the data models.
The Needs of the User Organizations. . For user organizations such as General
Motors and Citibank, there were urgent needs for (1) a unified methodology for file
and database design for various file and database system available in the commercial
market and (2) incorporation of more data semantics including business rules into the
Here, we will give some personal history of the development of the ER model: where
the author was and what the author did in the early 70’s, particularly on how the
47 | P a g e
Harvard (Sept. ’69 to June ’73). After the author got a B.S. in Electrical
fellowship to study Computer Science (at that time, it was a part of Applied
Mathematics) at Harvard graduate school. The author received the Ph.D. degree in
1973.The thesis was very mathematically oriented – focusing on the file allocation
programming techniques. The knowledge the author learned in EE, CS and applied
Honeywell and Digital (June ’73 to August’74). The author joined Honeywell
distributed system architecture. There were about ten people in the team, and most
of them were at least twenty years senior than the author. The team consisted of
requirements of such a “distributed system” was to make the files and databases in
different nodes of the network compatible with each other. The ER model was
motivated by this requirement. Even though the author started to crystallize the
concepts in his mind when he worked for Honeywell, he did not write or speak to
project, and all the project team members went different ways. The author then
48 | P a g e
Downloaded by Velocity Vivek (velocityvivek1992@gmail.com)
lOMoARcPSD|29829758
joined MIT Sloan School of Management as an Assistant Professor. This was the place
of many organizations to have a unified methodology for file structure and database
result, the first ER paper was first presented at 1st International Conference on Very
4.Fulfillingthe Needs
How did the ER model fulfil the needs of the vendor and user organizations at that
time? We will first start with the graphical representation and theoretical foundations
of the ER model. Then, we will explain the significant differences between the ER
The Future
In the past few years, the author has been involved in the developing the “standards”
for XML. He has participated in two XML Working Groups of the World Wide Web
between XML and the ER model were discovered including the following:
49 | P a g e
Downloaded by Velocity Vivek (velocityvivek1992@gmail.com)
lOMoARcPSD|29829758
RDF and the ER Model. There are several components in the XML family. One of
them is RDF, which stands for Resource definition Framework. This is a technology
that Tim Berners-Lee, the Director of W3C, pushes very hard as a tool for describing
the meta-data in the web. There are some similarities and differences between RDF and
the ER model, and Mr. Berners-Lee has written several articles discussing this issue. In
a joint meeting of the RDF and Schema Working Groups over one year ago, they issued
the Cambridge Communiqué that states: “…RDF can be viewed as a member of the
X Link and the ER model. Most of us are familiar with the hyperlink in HTML. The
for XML. In HTML, the hyperlink is basically a “physical pointer” because it specifies
the exact URL of the target. In XLink, the new link is one step closer to a “logical
pointer.” In the evolution of operating systems, we have been moving from physical
pointers to logical pointers. The XLink Working Group proposed a new structure called,
“extended link.” For example, Fig. 8 is an extended link for five remote resources. The
extended link concept in XML is very similar to the n-ray relationship concept in the
ER model.
One thing that is still missing today is the theory of the App. The ER model could be
one of the foundations for the theory of the App. The author plans to work on that topic
and would encourage the readers to work on the subject, too.
50 | P a g e
Downloaded by Velocity Vivek (velocityvivek1992@gmail.com)
lOMoARcPSD|29829758
Description of ER Diagram
51 | P a g e
52 | P a g e
CHAPTER # 6
Advantages & Limitations
53 | P a g e
54 | P a g e
CHAPTER # 7
Future Scope
FUTURE SCOPE
This web application involves almost all the features of the online shopping. The
future implementation will be online help for the customers and chatting with
website administrator.
CONCLUSION
55 | P a g e
CHAPTER # 8
Screenshot of website
56 | P a g e
57 | P a g e
58 | P a g e
59 | P a g e
60 | P a g e
61 | P a g e
CHAPTER # 9
Coding
{% extends 'navigation.html' %}
{% block body %}
{% load static %}
{% ifequal error "yes" %}
<script> alert('logged in successfully'); window.location=('{%
url 'home' %}');
</script>
{% endifequal %}
{% ifequal error "not" %}
<script>alert('Username & Password are not Matching');
</script>
{% endifequal %}
<div class="container">
<h2 style="margin-top:20px" align="center">User Login
Form</h2><hr>
<div class="container-fluid" style="width:70%;margin-
top:10%">
<form method="post" action="">
{% csrf_token %}
<div class="form-group">
<label for="exampleInputEmail1">Username</label>
62 | P a g e
{% endblock %}
63 | P a g e
{% extends 'navigation.html' %}
{% block body %}
{% load static %}
<div class="container">
<h2 style="margin-top:20px" align="center">Registration Form</h2><hr>
<div class="container-fluid" style="width:70%;margin-top:10%">
<form method="post" action="" enctype="multipart/form-data">
{% csrf_token %}
<div class="form-row">
<div class="form-group col-md-6">
<label for="inputEmail4">First Name</label>
<input type="text" class="form-control" placeholder="Enter
First Name" name="fname" id="inputEmail4">
</div>
<div class="form-group col-md-6">
<label for="inputPassword4">Last Name</label>
<input type="text" class="form-control" name="lname"
placeholder="Enter Last
Name" id="inputPassword4">
</div>
</div>
<div class="form-row">
<div class="form-group col-md-6">
<label for="inputEmail4">User Name</label>
<input type="text" class="form-control" name="uname"
placeholder="Enter User
Name" id="inputEmail4">
</div>
64 | P a g e
65 | P a g e
</div>
</div>
<div class="form-row">
<div class="form-group col-md-6">
<label for="exampleInputPassword1">Full Address</label>
<input type="text" class="form-control"
id="exampleInputPassword1" placeholder="Enter Address Detail"
name="add">
</div>
<div class="form-group col-md-6">
<label for="exampleInputPassword1">Image</label>
<input type="file" class="form-control" id="exampleInputPassword1"
name="img" value="choose file">
</div></div>
<button type="submit" class="btn btn-primary">Submit</button>
</form>
</div>
</div>
{% if error %} <script> alert('Regitered Successfully'); window.location
= "{% url 'login' %}";
</script>
{% endif %}
{% endblock %}
66 | P a g e
{% extends 'navigation.html' %}
{% block body %}
<center><h2 style="color:red;margin-top:2%">View
Cart</h2></center><hr>
{% if not cart %}
<h1 align="center" style="color:blue">{{message}}</h1>
{% else %}
<center><div class="container" style="border:1px solid white">
<div class="row">
<div class="col-md-4" style="height:100px;">
<center><a href="{% url 'view_product' 0 %}"
style="margintop:1%;width:100%" class="btn btn-lg btn-info text-light
text-capitalize"><ion-icon style="margin-right:8px"
name="pricetags"></ion-icon>Continue
Shopping</a></center>
</div>
<div class="col-md-4" style="height:100px;">
<center><a href="{% url 'booking' book %}"
style="margintop:1%;width:50%" class="btn btn-lg btn-info text-light
text-capitalize"><ion-icon style="margin-right:8px" name="cash"></ion-
icon>Buy Now</a></center>
</div>
<div class="col-md-4" style="height:100px;">
<center><a style="margin-top:1%;width:100%;border:1px solid
black" class="btn btn-default btn-lg text-dark text-capitalize">Total :
{{total}}</a></center>
67 | P a g e
</div>
</div>
</div>
</center>
{% for i in cart %}
<center>
<style>
.container{
border:1px solid black; border-radius:6px; margin-
bottom:5%; }.container1 ,.contain{ border:1px solid black;
border-radius:6px; width:70%; border:1px solid black;
}
</style>
<div class="container" style="margin-top:2%;height:150px;width:80%">
<div class="row" style="height:90%">
<div class="col-md-4" style="height:120px">
<img src="{{i.product.image.url}}"
style="width:30%;height:100px;border:1px solid darkgray;margin-
top:5%">
</div>
68 | P a g e
</div>
</div>
</div>
</center>
{% endfor %}
|<div class="container" style="border:1px solid white">
<div class="row">
<div class="col-md-4" style="height:100px;">
<center><a href="{% url 'view_product' 0 %}"
style="margintop:1%;width:100%" class="btn btn-lg btn-info text-light
text-capitalize"><ion-icon style="margin-right:8px"
name="pricetags"></ion-icon>Continue
Shopping</a></center>
</div>
<div class="col-md-4" style="height:100px;">
<center><a href="{% url 'booking' book %}"
style="margintop:1%;width:50%" class="btn btn-lg btn-info text-light
text-capitalize"><ion-icon style="margin-right:8px" name="cash"></ion-
icon>Buy Now</a></center>
</div>
<div class="col-md-4" style="height:100px;">
<center><a style="margin-top:1%;width:100%;border:1px solid
black" class="btn btn-default btn-lg text-dark text-capitalize">Total :
{{total}}</a></center>
</div>
</div>
{% endif %}
</div>
{% endblock %}
69 | P a g e
{% extends 'navigation.html' %}
{% load static %}
{% block body %}
70 | P a g e
<br>
<center>
<div class="container" style="margin-top:10%;height:150px;width:80%">
<div class="row" style="height:90%">
<div class="col-md-4">
<a href="{% url 'view_user' %}"><h1>Total Customer</h1>
<h2 style="color:blue">{{total_customer}}</h2>
<hr class="rounded"></a>
</div>
<div class="col-md-4">
<a href="{% url 'admin_viewBooking' %}"><h1>Total Booking</h1>
<h2 style="color:blue">{{total_book}}</h2>
<hr class="rounded"></a>
</div>
<div class="col-md-4">
<a href="{% url 'admin_view_product' %}">
<h1>Total Product</h1>
<h2 style="color:blue">{{total_pro}}</h2>
<hr class="rounded"></a>
</div>
</div>
</div>
</center>
<footer class="site-footer">
<div class="container">
71 | P a g e
<div class="col-md-12">
<p style = "font-size : 30pt ; color : #FF0000 ; font-weight : bold">
Copyright ©<script>document.write(new
Date().getFullYear());</script> All Rights Reserved <span style = "color :
brown">|</span><span style = "color : #006400">This website is made with
<i class="fas fa-heart icon-heart text-warning" aria-hidden="true"></i> by
</span><a class= "glow" href="#" target="_blank" >Pankaj Panjwani</a>
</p>
</div>
</div>
</div>
</footer>
{% endblock %}
72 | P a g e
{% extends 'navigation.html' %}
{% block body %}
{% for i in product %}
{% if i.id in book %}
<center>
<style> .container{ border:1px solid black; border-
radius:6px; margin-bottom:5%; }.container1 ,.contain{
border:1px solid black; border-radius:6px; width:70%;
border:1px solid black;
}
</style>
<div class="container" style="margin-top:2%;height:150px;width:80%">
<div class="row" style="height:90%">
<div class="col-md-4" style="height:120px">
<img src="{{i.image.url}}" style="width:30%;height:100px;border:1px
solid darkgray;margin-top:5%">
</div>
<div class="col-md-4" style="height:100px">
<h5 style="margin-top:5%">{{i.name}}</h5><hr>
<h6>Price : Rs.{{i.price}}</h6>
<p>{{i.desc}}</p>
</div>
<div class="col-md-4" style="height:100px;">
<h4 style="margin-top:15%;color:blue">Booked Successfully</h4>
73 | P a g e
</div>
</div>
</div></center>
{% endif %}
{% endfor %}
<div class="container" style="border:1px solid white">
<div class="row">
74 | P a g e
{% extends 'navigation.html' %}
{% block body %}
<center><h2 style="color:red;margin-top:2%">View
Product</h2></center><hr>
<div class="container" style="margin-top:4%">
<table class="table table-bordered" id="myTable">
<thead>
<tr>
<th>Product Name</th>
<th>Image</th>
<th> Category</th>
<th>Price</th>
<th> Description</th>
<th>Action</th>
</tr>
</thead>
<tbody>
{% for i in pro %}
<tr>
<td>{{i.name}}</td>
<td><img src="{{i.image.url}}" style="width:50px;height:50px"></td>
<td>{{i.category.name}}</td>
<td>{{i.price}}</td>
<td>{{i.desc}}</td>
<td><a href="{% url 'delete_product' i.id %}" onclick="return
confirm('Are you sure?')"><button class="button
button1">Delete</button></a></td>
</tr>
75 | P a g e
{% endfor %}
</tbody>
{{count}}
</table>
</div>
<script>
{% for i in message %} alert("{{i}}") {% endfor %}
</script>
{% endblock %}
76 | P a g e
{% extends 'navigation.html' %}
{% block body %}
{% load static %}
<div class="container">
<h2 style="margin-top:20px" align="center">Add Product</h2><hr>
77 | P a g e
</select>
</div>
<div class="form-group col-md-6">
<label for="inputEmail4">Product Price</label>
<input type="number" class="form-control" name="price"
placeholder="Enter
User Name" id="inputEmail4">
</div></div>
<div class="form-group">
<label for="exampleFormControlTextarea1">Description</label>
<textarea class="form-control" id="exampleFormControlTextarea1"
name="desc" rows="3"></textarea>
</div>
<button type="submit" class="btn btn-primary">Submit</button>
</form>
</div>
</div>
{% if error %} <script> alert('1 Product Added Successfully');
</script>
{% endif %}
{% endblock %}
78 | P a g e
{% extends 'navigation.html' %}
{% block body %}
{% load static %}
79 | P a g e
{% extends 'navigation.html' %}
{% block body %}
{% load static %}
<div class="container">
<h2 style="margin-top:20px" align="center">Edit Profile</h2><hr>
80 | P a g e
</div>
</div>
<div class="form-row">
<div class="form-group col-md-6">
<label for="exampleInputEmail1">Email</label>
<input type="email" class="form-control" id="exampleInputEmail1"
ariadescribedby="emailHelp" name="email" value="{{pro.user.email}}">
</div>
<div class="form-group col-md-6">
<label for="exampleInputPassword1">Contact</label>
<input type="text" class="form-control" id="exampleInputPassword1"
value="{{pro.contact}}" name="contact">
</div>
</div>
<div class="form-row">
<div class="form-group col-md-12">
<label for="exampleInputPassword1">City</label>
<input type="text" class="form-control" id="exampleInputPassword1"
value="{{pro.city}}" name="city">
</div>
</div>
<div class="form-row">
<div class="form-group col-md-6">
<label for="exampleInputPassword1">Date of Birth</label>
<input type="date" class="form-control" id="exampleInputPassword1"
name="date">
</div>
<div class="form-group col-md-6">
<label for="exampleInputPassword1">Date of Birth</label><input
type="text" class="form-control" id="exampleInputPassword1"
value="{{pro.dob}}" readonly>
81 | P a g e
</div>
</div>
<div class="form-row">
<div class="form-group col-md-12">
<label for="exampleInputPassword1">Full Address</label>
<input type="text" class="form-control" id="exampleInputPassword1"
value="{{pro.address}}" name="add">
</div>
</div>
<div class="form-row">
<div class="form-group col-md-6">
<label for="exampleInputPassword1">Image</label>
<input type="file" class="form-control" id="exampleInputPassword1"
name="img" value="choose file">
</div>
<div class="form-group col-md-6">
<img src="{{pro.image.url}}" style="width:150px;height:150px">
</div>
</div>
<button type="submit" class="btn btn-primary"
style="marginbottom:5%">update</button>
</form>
</div>
</div>
{% if error %} <script>
alert('Update Successfully'); window.location = "{% url 'profile' %}";
</script>
{% endif %}
{% endblock %}
82 | P a g e
CHPATER # 10
Conclusion
The internet has opened so many opportunities for doing business online, and e-
commerce is one of the most popular ones. Not only does it require low investment, it
actually is a type of business that does not require a fulltime commitment, especially if
you are selling a limited number of products. You just make an online presence and
promote the business here and there using both free and paid methods. However, as each
business, it has its positive and negative sides. If you want to achieve success, you will
have to create an organized strategy which is based on realistic goals and comprehensive
analysis of the market.
Website maintenance, processing orders, customer services and website analytics are all
the tasks you will have to handle once the store is live and running, but this is not a 9 to
5 work. You do not have to be there all the time, sitting by your desk, bound by the fixed
working hours.
Instead, e-commerce offers lots of flexibility for the merchants, and this is one of the
main characteristics that bring this profession into the list of top desired ones for people
nowadays. It brings a level of freedom to manage your own time and work flexible
hours, which is a priceless thing to have in life.
83 | P a g e
Even though this is an advantage a lot of work professionals can only dream of, running
an e-commerce business also requires being online and available all the time. You
always have to monitor the notifications and be ready to help customers. Since e-
commerce is not restricted by location or limited work hours, you can accept the orders
from anywhere at any time. For you, this means that keeping an eye on the activity and
customer support emails is going to be a requirement all the time. And this is important
if you want to have a successful business because good customer support is one of the
best ways to attract and keep customers loyal.
Running an e-commerce business requires a lot of consistency and dedication from your
end to create a successful business. You always need to keep it professional and use an
approach that is in accordance with your business goals. The first part is the initial one
where you are focused on planning and setting up the online business. Besides planning,
which will actually be one of the main tasks, you will also have to focus on website
development, product page creation, and optimization, etc. Before you make products
and services available to the customers, you will also have to do a lot of testing of the
website. You should especially focus on testing of the integrations such as checkout
page and payment gateways. It is crucial that everything works fine on your website
because any loading error will probably turn away the potential customers.
The second part of the work is done once the store is published online and these tasks
are focused on website maintenance, product promotion, and customer service.
Consistency in the approach you use is necessary here as well because each social media
post, each newsletter, and each ad represents your company and adds up to the public
image you create for the business you run. If you want to be taken seriously, if you want
to build a respectable online business, you have to be professional and dedicated to
representing your company in the best possible way. After all, every online activity will
be scrutinized by potential customers, and you do not want to give them any reason to
doubt your credibility.
Throughout the eBook, the most important tasks and goals of an ecommerce website
have been highlighted. Online marketing, or one of the segments of online marketing,
is mentioned on several occasions. This is because having an e-commerce business
requires the usage of online marketing techniques and strategies.
84 | P a g e
You will need SEO to optimize your website. You will have to learn about website
analytics to be able to analyse and improve the performance of your website. Promotion
of the e-commerce website cannot be done without search engine marketing, social
media marketing, email marketing and even affiliate marketing.
This means that e-commerce is a part of the system. It is an online business, and as such,
it is dependent on the online marketing strategies that can bring success. To make the
most out of these strategies and to be sure you are doing all that is possible to promote
your e-commerce business, you should explore the topic of online marketing in more
details. The focus of this eBook was to show you different aspects of running an
ecommerce business, and online marketing and its types are mentioned to a limited
extent, which does not mean you should stop there.
For example, if you have learned that email marketing can help you with promoting
your e-commerce, find relevant resources on email marketing and then explore
strategies that can be implemented to your business.
Finally, it is necessary to highlight the influence of mobile devices once again. There is
no doubt that mobile user experience is one of the primary goals you need to think as
the statistics in favour of mobile users are keep growing. This affects the creation of a
sub-sector called m-commerce. It is left to be seen how this trend will affect selling
online, but what is evident now is that mobile users comprise a significant portion of
overall traffic, and as such, they cannot be ignored. You must not neglect the traffic that
could help you increase the number of buyers, because, after all, that is what you are
trying to do with various promotion strategies.
The bottom line is that the internet changed the idea of shopping forever. So many
limitations are now extinct because you can buy goods from anywhere in the world.
Even so, some boundaries are part of this online experience such as inability to touch
and feel the product before it is delivered. All of this changes the way buyers think about
shopping, and this is something you, as a business owner, need to think about.
This industry is all about consumers. Understanding their needs and expectations,
together with defining your business goals and strategies is going to help you with
running a successful e-commerce business. Have in mind that the online world is a very
dynamic environment, and to be on top of your game, you need to make industry
research and website analysis your top priorities
85 | P a g e
CHAPTER #11
Bibliography
Aaker, DA (2001): Strategic market management 6th edition.
New York: Wiley & Sons. Ahlert, D; Kenning, P; Peterman,
F (2001): Die Bedeutung von Vertrauen fur die
Interaktionsbeziehungen zwischenzug Dienstleistungsanbietern und -nachfragern, in:
Bruhn, M; Strauss, B (Eds.):
Dienstleistungs management Jahrbuch 2001, S. 279- 297.
Wiesbaden: Gabler. Alcatel (2007): Technology Whitepaper:
Mobile Network Evolution: From 3G Onwards.
http://www.alcatel-lucent.com/wps/portal last accessed 19.09.2007. Algesheimer, R;
Dholakia, U; Herrmann, A (2005): The Social Influence of Brand Community: Evidence
from European Car Clubs, Journal of Marketing, No. 69, pp 19-34. AlShaali, S;
Varshney, U (2005); On the usability of mobile commerce. International Journal of
Mobile Communications (IJMC), Vol. 3, No. 1. Altman, I; Taylor, D (1973): Social
Penetration: The Development of Interpersonal Relationships. New York: Holt,
Rinehart and Winston. Anderson, JC; Narus, JA (1990): A Model of Distributor Firm
and Manufacturer Firm Working Partnerships. Journal of Marketing, Vol. 54, January,
pp. 42-58. ARC chart Research (2007): Mobile Operating Systems: The New
Generation. http://www.arcchart.com last accessed 24.11.2007.
Ashmont, P (2003): Mobile Services fur das
Beziehungs marketing - Grundlagen - Einsatzpotenziale - Design, Dissertation,
Universität St. Gallen. Bansal, HS; Voyeur, PA (2000): Word-of-Mouth Processes
within a Services Purchase Decision Context, Journal of Service Research, Vol. 3, No.
2, pp. 166-177. Baensch, A (1995): Käuferverhalten, 6.
Auflage, München: Bauer. Bartels, R (1976): The History of
Marketing Thought, Second Edition. USA: Grid Inc. Barth, K; Hartmann, M; Schroder,
H (2002): Betriebswirtschaftslehre des Handles, Wiesbaden: Gabler
86 | P a g e