Ecommerceproject
Ecommerceproject
DECLARATION
Signature............................ Signature.............................
APPROVAL
Date........../........./.............
Signature
Supervisor
AKONOWLEDGEMENT
First of all, we sincerely thank the almighty God who protected us and guided
us until we are done with this work, we have taken efforts in this project.
However, it would not have been possible without the kind support and help of
many individuals and organizations. we would like to extend our sincere thanks
to all of them;
We would like to express our gratitude towards our parents for their kind co-
operation and encouragement which help us in completion of this project, also
to express our special gratitude and thanks to industry persons for giving me
such attention and time;
Our thanks and appreciations also go to our colleague in developing the project
and people who have willingly helped us out with their abilities.
iv
ABSTRACT
This project deals with developing an e-commerce website for Online Product
Sale. It provides the user with a catalog of different product available for
purchase in the store. In order to facilitate online purchase a shopping cart is
provided to the user. The system is implemented using a 3-tier approach, with a
backend database, a middle tier of Microsoft Internet Information Services (IIS)
and PHP, and a web browser as the front end client. In order to develop an e-
commerce website, a number of Technologies must be studied and understood;
Contents
CHAPTER I. GENERAL INTRODUCTION .................................................................................... 1
1.1. Background of Study ..................................................................................................... 1
1.1.1. Introduction .............................................................................................................. 1
1.1.2. Problem Statement ................................................................................................. 2
1.1.3. Hypothesis ................................................................................................................. 2
1.2. Objective of the Project ................................................................................................ 4
1.2.1. General Objective .................................................................................................... 4
1.2.2. Specific Objective ................................................................................................... 4
1.3. CHOICE AND INTEREST OF THE STUDY .............................................................. 4
1.3.1. Choice of the study ................................................................................................ 4
1.3.2. Interest of the study .............................................................................................. 5
1.4. Scope of the project ....................................................................................................... 5
1.5. Research Methodology .................................................................................................. 6
1.5.1. Data collection technique.................................................................................... 6
1.5.2. Software development methodology ............................................................... 6
Gant chart .......................................................................................................................................... 7
1.4. Organization of the study ............................................................................................ 8
CHAPTER II LITERATURE REVIEW............................................................................................. 9
2.1 INTRODUCTION ................................................................................................................... 9
2.2 BASIC CONCEPTS ........................................................................................................... 9
2.3 DATABASE CONCEPTS................................................................................................ 10
2.4 DATA MODELING........................................................................................................... 10
2.5 DATABASE IN NETWORK ENVIRONMENT .......................................................... 12
2.6 TOOLS, TECHNIQUES AND PROGRAMMING LANGUAGE ............................. 13
2.7 THE MODILE MONEY PAYMENT SYSTEM .......................................................... 15
2.8 SOME WEB APPLICATION ATACKS ....................................................................... 15
2.8 SOFTWARE DEVELOPMENT PROCESS MODELS ............................................. 16
2.9 SUMMARY ......................................................................................................................... 23
CHAPTER III. SYSTEM ANALYSIS AND DESIGN .................................................................. 24
3.1. INTRODUCTION ............................................................................................................. 24
3.2. DESCRIPTION OF THE EXISTING SYSTEM ........................................................ 24
vi
Conclusion ........................................................................................................................................... 58
RECOMMENDATIONS ...................................................................................................................... 59
viii
LIST OF FIGURES
LIST OF TABLES
LIST OF ABREVIATIONS
DB: Database
Online shopping is the process of buying goods and services from merchants
who sell on the Internet. Since the emergence of the World Wide Web, merchants
have sought to sell their products to people who surf the Internet. Shoppers can
visit web stores from the comfort of their homes and shop as they sit in front of
the computer. Consumers buy a variety of items from online stores. In fact,
people can purchase just about anything from companies that provide their
products online. Books, clothing, household appliances, toys, hardware,
software, and health insurance are just some of the hundreds of products
consumers can buy from an online store.
Say 'goodbye' to the days when you stood in line waiting, and waiting, and
waiting some more for a store clerk to finally check out your items. Online
shopping transactions occur instantly-saving you time to get your other errands
done! Additionally, unlike a store, online shopping has friendly customer service
representatives available 24 hours a day, 7 days a week to assist you with
locating, purchasing and shipping your merchandise.
2
1.1.2.Problem Statement
E-commerce provides an easy way to sell products to a large customer base.
There are large numbers of commercial Online Shopping websites offering large
number of products tailored to meet the shopping interests of large number of
customers. These online marketplaces have thousands of products listed under
various categories.
When users go to the market site, they expect to find what they are
looking for quickly and easily.
Users are not sure about the brands or the actual products they want to
purchase.
Many customers nowadays search for their products on Google rather
than visiting specific e-commerce sites; They believe that Google will take
them to the e-commerce sites that have their product.
The basic problems with the existing systems are the non-interactive
environment they provide to the users;
The use of traditional user interfaces which make continuous post backs
to the server; each post back makes a call to the server, gets the response
and then refreshes the entire web form to display the result. This scenario
adds an extra trade off causing a delay in displaying the results;
A search engine that would display the results without allowing the users
to further filter the results based on various parameters;
Use of traditional and non-user friendly interfaces that are hard to use.
1.1.3.Hypothesis
The hypothesis is a particular proposition does not require a system of
experimentation whose purpose is the truth. In this acceptance, Hypothesis is
an idea director or an attempt to explain the facts formulated at the beginning
of the research. It can be invalidated or confirmed by the results of the research.
(Wikipedia 2007)
3
When looking at this definition, we can tell you that this is the whole answer of
our anticipations to the questions of departure. The following hypothesis is
formulated as a provisional answer to the questions posed in the problematic:
user thus ensuring that the user cannot enter any wrong data which could
cause problem later.
1.2.2.Specific Objective
In order to achieve the main objective, we have the following specific objectives:
This study has the personal interest, academic, scientific and social interests.
a. Personal interest
The study design and implementation of this system will help us to improve the
web development skills and use them for real word problem solving, provide
solution to the practical problems using knowledge gained from the particular
class of web design and system management databases in our level of study and
finally understanding better how computerized system work.
b. Scientific interest
This work will serve as reference for other researchers who will be motivated by
the desire to deepen this area and allow others to open the area of research.
Therefore, in order to meet the scientific requirements, the researcher was able
to make comparison between theoretical concepts of research topic and practical
work by preparing a research work on online commerce in Democratic Republic
of Congo.
c. Social interest
This work will help people to have opportunity to search and order goods they
want at any time because the system will be available anytime; This system will
help seller company to easily manage customers’ demand as the record will be
automatically generated.
Scope in space: boutique Yarazake located in Goma town quarter ‘les volcans’
b. Observation technique
Before the development of this system, the observation method will be used to
carry out information and data.
So, we will go and observe how the current system works and what are the
problems to be solved by the new system.
c. Interview technique
This technique involves exchange of ideas between the interviewer and the
interviewee. The interview has been a suitable technique especially for those
respondents who had limited time because of their rushing hours or managerial
responsibilities. In this regard, the researcher selected a set of the most
important questions to be asked and record at the same time the responses
during the interview. It enabled the researcher to obtain first hand and accurate
information since he could obtain non-verbal expressions.
what is expected of the system and what should be included in it and what
should not. (Synopsys Editorial Team, 2017)
Gant chart
8
The first chapter General introduction: covers the background to the study,
problem statement, research objectives and questions, relevance of the study as
well as the scope and limitation of the study,
The second chapter Literature review: In this chapter we will covers theories
and the literature related to the topic by selecting the appropriate measurement
that will help to solve the problem and this will help to anticipate the most
common problems to avoid repetition of same mistakes which other researchers
did before; It covers theories and the literature related to the topic,
The third chapter System analysis and design: this chapter deals with the
logical conception of the system; this covers the conceptually process of the
solutions proposed to solve problems of the existing system. And we also analyze
the existing environment and search for opportunity to improve the new system,
The last one is Conclusion and recommendation: this chapter will outline the
summary, conclusion and recommendations of the study.
9
2.2.2 Commerce
2.2.3 E-commerce
2.2.4 Shopping
Can be defined as facts and statistics collected together for reference or analysis.
(www.dictionary.com,2008)
2.3.2 Database
2.3.3 Table
A database table is where all the data in a database is stored, and without tables,
there would not be much use for relational databases. (Wenzel, (225-5704-00L),
ETH Zürich, 2014)
Is system software for creating and managing databases. The DBMS provides
users and programmers with a systematic way to create, retrieve, update and
manage data. (Silberschatz, Korth. Sudarshan, 2010)
2.3.5 Records
2.3.6 Field
2.4.1 Attributes
Each row is a data set that applies to a single item. Each column (attribute)
contains describing characteristics of the rows. A database attribute is a column
name and the content of the fields under it in a table in a database. (Chapple,
2018)
2.4.2 Keys
Is a field (or collection of fields) in one table that refers to the primary key in
another table. A foreign key is used to link two tables.(www.w3schools.com,
2009)
Is a database that treats all its data as collection of relations (Robbins, 1995)
2.4.6 Entity
Is any object in the system that we want to model and store information about.
Entities are usually recognizable concepts, either concrete or abstract, such as
person, places, things, or events which have relevance to the database.
(www.sqa.org.uk, 2007)
12
(www.searchdatamanagement.techtarget.com,2015)
2.5.2 Client
Is a computing model in which the server hosts, delivers and manages most of
the resources and devices to be consumed by the client.
(www.searchdatamanagement.techtarget.com,2015)
Source: www.cio-wiki.org
Is a system that delivers content or services to end users over the internet. A web
server consists of a physical server, server operating system (OS) and software
used to facilitate HTTP communication. (www.guru99.com)
Is a free and open source cross-platform web server solution stack package
developed by Apache Friends, consisting mainly of the Apache HTTP Server,
Maria DB database, and interpreters for scripts written in the PHP and Perl
programming language (www.wikipedia.com, 2018)
2.6.b. MySQL
Is the standard markup language for creating web pages and web applications.
With Cascading Style Sheets (CSS) and JavaScript, it forms a triad of cornerstone
technologies for the World Wide Web (www.wikipedia.com, 2018)
Django is a free and open source web application framework, written in Python.
It follows the MVC pattern closely; however, it does use its own logic in the
implementation. Because the “C” is handled by the framework itself and most of
the excitement in Django happens in models, templates and views, Django is
often referred to as an MTV framework. In the MTV development pattern:
M stands for “Model,” the data access layer. This layer contains anything
and everything about the data: how to access it, how to validate it, which
behaviors it has, and the relationships between the data. We will be
looking closely at Django’s models in Chapter 4.
T stands for “Template,” the presentation layer. This layer contains
presentation related decisions: how something should be displayed on a
Web page or other type of document.
V stands for “View,” the business logic layer. This layer contains the logic
that accesses the model and defers to the appropriate template(s). You can
think of it as the bridge between models and templates. (djangobook.com,
2018)
2.6.g. Framework
2.6.i. Bootstrap
Bootstrap is front-end web framework which includes HTML and CSS based
design templates for easier development. (www.getbootstrap.com)
15
2.6.j. MVC
CRLF Injection attacks refer to the special character elements "Carriage Return"
and "Line Feed." Exploits occur when an attacker is able to inject a CRLF
sequence into an HTTP stream. (veracode.com, 2018)
Cross-Site Request Forgery (CSRF) is a malicious attack that tricks the user’s
web browser to perform undesired actions so that they appear as if an authorized
user is performing those actions. (veracode.com, 2018)
XSS vulnerabilities target scripts embedded in a page that are executed on the
client-side (in the user’s web browser) rather than on the server-side.
(veracode.com, 2018)
1. waterfall
2. prototyping model
3. iterative development model
17
(extremeprogramming.org, 1999)
Source: www.synopsys.com
18
Project is divided into sequential phases, with some overlap and splash
back acceptable between phases.
Emphasis is on planning, time schedules, target dates, budgets and
implementation of an entire system at one time.
Tight control is maintained over the life of the project via extensive written
documentation, formal reviews, and approval/signoff by the user and
information technology management occurring at the end of most phases
before beginning the next phase. Written documentation is an explicit
deliverable of each phase.
2.8.2 Prototyping
Source: www.tryqa.com
Figure 3 Prototyping
20
Advantages of Prototyping
Disadvantages
Source: en.wikipedia.org
Although the whole iterative process is quite flexible, iteration phases are
rigid and have to be followed carefully.
Unpredictable changes may occur during the iterative development
because not all the requirements are specified from the very beginning of
the project. (easternpeak.com, 2018)
2.8.4 Time boxing model
Source: rpl-blog.blogspot.com
Advantages
Disadvantages
Source: bmyn.wordpress.com
2.9 SUMMARY
This chapter called literature review is the part in which we reviewed some
theories developed by other researchers in the equivalent topics in order to
improve the user system satisfaction and the system performance. We also
mentioned some tools and techniques to be used in our system to achieve our
goal as said above.
24
The system design phase is the phase in which we and the system users
are consulted to gather and interpret facts and diagnosing the existing
problem and using the found information to propose the improvement on
how the system must work, what are the system futures and what are the
operation that have to appear in the system. So, we will analyze the
organization activities monitoring and come out with solutions to be
accomplished by the system.
In the system design, we will take the ideas found by the system analysis
to form the template of the new system.
Time Consuming
Expensive
Needed an agent
We have to out for that.
Passenger has to go to the shop counter to buy product
25
Daily report
Weekly report
Monthly report.
3.2.2.2. Performance:
Since the existing system is manual, it takes long response time. For example,
when one customer need to buy a product and to pay money he/she must appear
physically in the place and it takes long time
Control over the data is too difficult and it takes long time.
Input data is not adequately edited.
Redundantly stored data is inconsistent/unreliable in different files.
3.2.2.4. Efficiency
In manual operation, most of the activities are prone to wastage of resources like
papers, man power, time etc. to produce the corresponding outputs. This makes
the current system inefficient while utilizing resources. There should be a
mechanism that reduce wastage of resources and that make the system to be
efficient. As a result, the new system will reduce wastage of resources and make
it efficient.
Passenger can product over the Internet, 24 hours a day, 7 days a week,
Ensure data accuracy.
Records are efficiently maintained by DBMS which provides security.
Any person across the country, having Internet can access this service.
Minimum time need for the various processing.
Better Service.
Minimum time required.
This would help the corporation prepare and organize its schedules more
efficiently on the basis of traffic demand.
27
Providing security
Low cost
Basic computer knowledge required
Configurable and extensible application UI design
The proposed system can be used even by the naïve users and it does not require
any educational level, experience, and technical expertise in computer field but
it will be of good use if the user has the good knowledge of how to operate a
computer.
Enter site
Authenticate
User
Customer Admin
View Buy
product product Add, delete,
Add, Add,
delete, Verify
delete,
Check customer
View Check
category product category
s
3.3.2.Methodological approach
Methodology is a formal development process that define a set of activities,
methods, practices, deliverables that are used by the developer and project
manager to implement information systems.
Observation technique
Using this technique, we visited the company to see and conclude what are the
problems and what happens in the existing system in order to come up with
sufficient data.
So that is the model that we will use in the design of the new system.
Functional requirements describe the interaction between the system and its
environment independent of its implementation.
Administrator:
He is provided with the information of users and products and he can update
the system software to meet the requirements.
User:
The user can view the details of products by entering URL of the website.
He should be able to search for a particular product.
He can just view the details but cannot manipulate them.
The system should provide an easy-to-use graphical interface so user can easily
learn how they use the system. So, little knowledge on how Web pages can be
accessed is required for user to use. The system should be user friendly so that
users can use it easily without confusion. The web interface should be intuitive
and easily navigable Users should be able to understand the menu and options
provided by the system.
Reliability:
It can send message, receive message and attach file data or information which
is retrieved from the system is accurate (required) in deserved time.
Availability:
System will be available around the clock except for the time required for the
backup of data.
Performance:
The system will be used by multiple users and may grow as time passes.
Necessary measures need to be taken to make the system as fast as possible.
Performance requirement:
Response time of the System should be minimum. The system should show no
visible deterioration in response time as the number of users or reservation data
increases. The system does not take up too much space in memory to store
system’s data.
Interface:
Our system describes the logical characteristics of each interface between the
system and the users. This may include any graphical user interface(GUI)
standards or product family style guides, screen layout constraints, standard
31
buttons and functions that will appear on every screen, error message display
standards, and so on. So our system does these all functions in easy and efficient
way. In other words, the system is user interactive.
Only system administer has the right to change system parameters, such as time
change, adding new product and others. The system should be secure and Users
need to be authenticated before having access to any personal data.
Error handling:
The system will check user inputs to the system to handle error. It handles and
show error by displaying the error message when the user enters invalid input.
Maintainability:
Security:
This is vital in the design and expectation of any system. It should contain
mechanism to protect the integrity and avoid changes or access by unauthorized
users. Consideration of the security of the system has a great advantage for this
system, because the database should be secured from the unauthorized users.
Only authorized user can get access to the database. To prevent from the
unauthorized user, the user should have their username and password that help
them to login to the system. Additionally, the users should have to take care of
their own username and password. They should have to keep in a secret manner
as Disk, CD-R and CD-RW so it may be used to restore the original data after a
data loss event is performed by our system.
Resources:
The main non-functional resource is: - Server in back end and operating system
in the application of the system. In the other case one of the most and available
resource is internet access.
3.3.6.Description
The system is a web-based application that allows visitors to reserve product,
buy and pay product online or offline. It is developed using PHP Hypertext
Preprocessor (PHP) language that was used for the front- end of the software
while the back end was designed using MySQL
3.3.7.Feasibility study:
A feasibility study is a short, focused study, which aims to answer a number of
questions:
Define the urgency of the problem and the acceptability of any solution; if the
system is developed, will it be used? Includes people-oriented and social issues:
internal issues, such as manpower problems, labour objections, manager
resistance, 13 organizational conflicts and policies; also external issues,
including social acceptability, legal aspects and government regulations.
Dataflow 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 restock how any system is developed can
be determined through a dataflow diagram. The appropriate register saved in
database and maintained by appropriate authorities.
34
DFD LEVEL 0
DFD LEVEL 1
DFD LEVEL 2
DFD LEVEL 2
Key attributes: An entity type usually has an attribute whose values are distinct
for each individual entity in the collection. Such an attribute is called key
attribute. Key attribute symbol is as follows:
: Primary Key
: Link
37
Lastname
First name
loginID
password
email
orNo
info Product ID
customer
request
1,n n,n
order
address picture
quantity
nn
Place
Product
oder
proName category
n,n
proID product
price picture
3.4.4.Data dictionary
A data dictionary is a set of information describing the contents, format, and
structure of a database and the relationship between its elements, used to
control access to and manipulation of the database.
Data dictionary (Cart)
The above page is the home page that provides the menu, different information
about the shop company and allow unknown user to view category of product
before signup.
42
This page is where customers find the products by choosing the category that
relate the needed product.
43
This page is where customers find the products by typing the name of any
product that they want, if the name product typed is in the store, this one will
be shown to the customer and if not the system will tell to the customers that
the typed name isn’t found.
44
At this part, customers can view the most view product of a day.
45
3.5.5.Add to cart
This page is where customers after viewing a product to add it to its cart, means
that it adds it to its preference,
3.5.6.View cart
This part is where customers go seeing product that they saved to their cart
47
Figure 18 cart
When customers enter to their cart, they have place to buy product and increase
or decrease quantity.
48
The login page provides the interface where users can login in order to start their
buy product process and access their accounts, and the admin to manage the
system.
49
3.5.8.Customer registrations
The signup page provides the interface where users can make their registration
in order to but product.
50
3.5.9.Customers profile
When a customer already has an account and logging in, he can find all his
information in the profile page. All his product bought are shown on his profile
to make him aware of all transaction he has made.
The admin has to logging and must have the specifics permissions to perform
the managerial tasks.
51
The booked link brings us to the page that contains all product that have
been bought by the customers.
The booked link brings us to the page that contains all product that have
been already record in the system.
The users’ link brings us to the page where all information about all users
are stored and managed.
The group link which the link is bringing to all category that are in the
system.
52
3.6.2.Management of product
At this page, admin have to manage product in adding a new one, edit the one
which exist or delete a product
53
3.6.3.Management of users
At this page, admin have to manage users in adding a new one, edit the one
which exist or delete a user
54
3.6.4.Management of category
At this page, admin have to manage category in adding a new one, edit the one
which exist or delete any category
55
3.6.5.Sales pages
3.6.6.Transaction details
At this page, admin have to see the transaction details of all sales
57
3.6.7.Admin profile
Admin can find all his information in the profile page, and can change his email,
his password, his name and his picture.
58
Conclusion
The Internet has become a major resource in modern business, thus electronic
shopping has gained significance not only from the entrepreneur’s but also from
the customer’s point of view. For the entrepreneur, electronic shopping generates
new business opportunities and for the customer, it makes comparative
shopping possible.
As per a survey, most consumers of online stores are impulsive and usually make
a decision to stay on a site within the first few seconds. “Website design is like a
shop interior. If the shop looks poor or like hundreds of other shops the customer
is most likely to skip to the other site.
Hence we have designed the project to provide the user with easy navigation,
retrieval of data and necessary feedback as much as possible. In this project, the
user is provided with an e-commerce web site that can be used to buy all types
baby products online.
In this project the ‘add to cart’ functionality made by raw PHP without using any
plugin and bKash payment system is not included properly in this project
because to complete bKash payment system we require a particular payment
gateway.
59
RECOMMENDATIONS
The goal of this research, from the beginning, has been to contribute some
additional knowledge about the use of comments and recommendation systems
in online shopping system to our general body of knowledge about both
intelligent systems and e-commerce (online shopping).
As researchers, we cannot put the last dot to this work without giving some
recommendations for farther improvement of this project. So we recommend the
following to improve this work by making it larger that an online shopping system
by adding other services such as passenger payment process, to allow the users
to create accounts and save products in to wish list.
60
REFERENCES
BIBLIOGRAPHIE
WEBOGRAPHIE
www.investopedia.com
www.merriam-webster.com
www.dictionary.com
www. academic.oup.com
www.w3schools.com
www.searchdatamanagement.techtarget.com
www.cio-wiki.org
www.guru99.com
www.wikipedia.com
www.mysql.com
www.getbootstrap.com
www.thalesesecurity.com
www.veracode.com