Automated Billing and Customer Feedback System For Boutique Operations (Case Study of Grandlix Boutique Umuahia)
Automated Billing and Customer Feedback System For Boutique Operations (Case Study of Grandlix Boutique Umuahia)
INTRODUCTION
The term “system” means a combination of related parts organize into a complex
whole. It is also scheme of idea or principle in which something is organized. It has
two important meaning in almost any discussion of system (Watson et al., 2007).
Firstly, is the motion of system as an entity or thing which has a particular part?
Secondly, is the motion of system as plan, method, device or procedure for
accomplishing specific task, it is also simply a rationed and logical approach for
accomplishing a specific purpose. The information processing system has a
functional sub-system such as the hardware and software system, operating system
and database system (Watson et al., 2007). It also has application and subsystems
such as order entry, billing, payroll and personnel. Financial information system
Refers as set of procedures, process, facilities and methods designed to provide
financial information required by management for effective and efficient operation
of the organization. This information required involves the collection, analysis and
reporting of past and present and project information outside the system. It is
important to note that good billing system will help the financial controller to plan,
direct, control, organize and understand the effectiveness as well as departmental
objectives (Abdul-Razak, 2005). A good billing system is the life wire of any
establishment and it comprises the pricing of material, payment for the work done
or service rendered. Also, it differs from company to company depending on the
type and nature of the work done and the amount of billing of that company under
discussion, (Harte, 2011).
Recently, there has been removable growth in the business organization. Due to the
over increasing number of customers, brought about the need to review the mode
of operation and problem encountered during the transactions and the use of highly
sufficient system in terms of speed and accuracy (Shiqun et al., 2008).
Considering the fact that it is natural for human being to always be in need even in
the midst of plenty, human responded to such urges in order to derive a way of
such urges in a faster way providing not very distant mini-markets at the count of
probably a street or two or even a count of 2-3 houses. Thinking on how to
modernize the market and bring it to a level that can actually fit into the street and
can still provide the function of a large market. This brought about the word
“BOUTIQUE” which implies a very large organization were customers can choose
from difference varieties of fashionable clothing and other stuffs (Barreto et al.,
2005).
From the above introduction, human noticed that there is need for an automated
billing system for easy boutique operation.
Hence, the need to automated billing system for boutique operation. Automated
means replacing manual method of carrying out operation with the artificial
intelligent machine called Computer system for the effective, accurate and efficient
operation. Billing means the act of preparing and sending bills of purchase to
billing system as a system used in processing sales information in the boutique.
The manual method of sales and record is a very boring and stressful error prone
mode of operation; this is because humans are highly inefficient. As time grows,
the productivity decreases and as such is error prone in his or her various
operations, it could cause the boutique to start folding up. The problems of
boutique operation are stated below.
The aim of this study is to develop a billing system for a boutique. which is
capable of keeping tracks and records on customers report of performance hence,
increasing efficiency of the system which will provide adequate security measure
to restrict unauthorized persons from interfering the record and billings.
The project is designed to look into some problems in the current system of
operation in the boutique and objectives of this project are highlighted below;
i. Complete listings of the products and their information on the cart display.
ii. Automatic billing and when the products are dropped in the cart.
iii. Update inventory in the central system upon each purchase of a product.
iv. Product finding system.
v. Eliminating the queue system in billing.
vi. Take feedbacks from customers
I had to make sure that the existing system is properly analysed. However, it
should be said that despite all these, the boutique operation programming
application has been able to achieve its aims as a computerized way of processing
boutique operation. Below are some of the encountered problems:
Automated billing System: This is an action in which the invoicing for goods and
services occurs without the need to prepare the invoice by hand.
Bill cycle system: the period for which a consumer receives an invoice.
Bill: Bills are document that serves as an evidence of sales of goods and services.
Ledger: The ledger is a book which contains condensed and classified record of all
the pecuniary transactions of the business generally brought, transferred or posted
from the books of original entry.
LITERATURE REVIEW
Bill is a written note of goods sold, services rendered, or work done, with the price
or charge, or an invoice (Shiqun et al., 2008).
Paper bills are now the primary channel of communication between companies and
their customers. However, their potential for personalization is limited, and they
are not interactive (Levi & Cetin, 2005). If a customer wants to react to something
in his paper bill – for example, to make a customer service inquiry or to order a
new service – he must make a telephone call. Internet Billing promises far more
than a new and inexpensive way to deliver billing information. Industry experts
predict that Internet Billing will fundamentally change the way companies interact
with their customers. Eventually, the Internet Bill will be an interactive entry to a
host of additional services including customer self-care, automated sales one-toone
marketing. The Internet Bill will become the gateway through which customers
and companies have electronic one to one dialogs (Cimiano et al., 2005).
Businesses and consumers are banking on the Internet in more than one sense.
Despite the early proliferation of electronic banking applications on private
networks through dial-up services, most electronic banking applications have
migrated to the Internet. Consumers will not be tied to one particular bank and its
software, nor to a single terminal where the bank's own software must be installed.
Banking on the Internet provides the flexibility of banking from any Internet
access terminal using the now ubiquitous Web browser. Banking on the Internet
can reduce the number of staff banks must maintain without having to make the
investment in establishing private networks. The World Wide Web, or the Web,
and its user-friendly, graphically rich browsers have made the Internet both
friendly and accessible to the common desktop user at home and in the office
(Cherfi et al., 2008).
Banking services offered to consumers over the Internet will allow consumers to
generate bank statements, check balances, transfer money between accounts, and
authorize fund transfers to deposit money, to pay monthly bills, and to write
personal checks. The Internet will provide a very competitive medium for banks to
woo consumers. Consumers will be able to quickly and easily scan savings and
loan rates and banking fees without having to interact with bank personnel.
Beyond home banking, consumers will be able to write electronic checks to online
merchants that draw value directly from the consumer's own bank account rather
than use a line of credit. The Internet will make banking a much more competitive
environment in another critical aspect. Local banks will now be competing with
national and international banks whose Internet presence removes barriers of
physical distance. In addition, a number of "virtual" banks have now entered the
market to compete with traditional banks for clients. The environment created by
Internet banking will present the vast array of services currently offered by banks
in a form that is very convenient to consumers Commerce (Gamon, 2004).
2.1.1 Types of Billing
There are two types of billing which are postpaid billing and prepaid billing. (Jain
et al., 2010)
Postpaid billing
In postpaid billing the customer may pay an insurance payment in advance, and he
may pay the installation or setup fees, and in each billing cycle he will be invoiced
(receive a bill) to pay for his usage of the service.
Prepaid billing
In prepaid billing the customer buys a given amount of credits (duration, volume,
number of events) and is then allowed to use the corresponding network resources
as long as their account is in credit. Billing system receives customer usage records
from the network elements and adjusts the customer credits. When their credit has
been used up, network usage will be restricted. Prepaid corresponds to a real-time
process, because transactions are only allowed if the user account is in credit, and
this has to be checked in real-time.
Bigne (2009) classified Bill into eight (8) common classifications as follows:
Initiation bill: Normally only requested as the first bill on an account. Includes
product charges and adjustments, but not event.
Periodic bill: Produced at regular intervals Includes all periodic charges, e vents,
and adjustments.
Interim bill: An extra bill that contains charges due to events processed for the
account since the last bill. Includes all events and adjustments, but no periodic
charges.
Suspension bill: Sent when an account has been suspended. Includes all
Final bill: Sent when an account has been terminated to bill all outstanding
charges that are due. Includes all periodic charges, events, and adjustments, along
with any refunds; for example, the returnof a deposit.
Post-final bill: Sent when a terminated account has receivables outstanding after
the production of a final bill. Includes any post-termination events and
adjustments, but no periodic charges.
Credit note: An extra bill that contains all adjustments in the customer's favor
generated since the last bill.
2.2 E-Commerce
Deep penetration and spread of Internet, lead to more electronic applications are
becoming available. Electronic commerce (E-commerce) is one such enabling
technology, which has wide spread utility touching almost everybody in society. It
helps buyers and sellers, individuals and business, retail and bulk suppliers. In fact,
e-commerce has very attractive features like anywhere, anytime shopping /
banking (24 hours x 365 days) and no holidays, zero inventory, no middlemen, and
so forth.
It helps customers to compare various products in the range and class, study their
features/performance and make an informed decision about the emergence of e-
commerce has created new financial needs that in many cases cannot be effectively
fulfilled by the traditional payment systems. Recognizing this, virtually all
interested parties are exploring various types of electronic payment (E-payment)
system and issues surrounding e- payment system and digital currency (Lopresti,
2008).
If organizations are going to take advantage of new Internet technologies, then they
must take a strategic perspective. That is, care must be taken to make a close link
between corporate strategy and e-commerce strategy. Ecommerce, in a broad
sense, is the use of computer networks to improve organizational performance.
Increasing profitability, gaining market share, improving customer service, and
delivering products faster are some of the organizational performance gains
possible with e-commerce. E-commerce is more than ordering goods from an on-
line catalog. It involves all aspects of an organization's electronic interactions with
its stakeholders, the people who determine the future of the organization (Walker,
2007).
There are different types of e-commerce from perspective of the buyer and seller
relationship, according to this relationship, e-commerce applications can be
divided into the following four categories:
A. Business-to-Consumer ( B2C )
In this case, the seller is business organization, whereas the buyer is consumer.
This emulates the situation of physical retailing and so it is commonly called
electronic retailing or consumer-oriented e-commerce. It frequently involves a
temporary relationship and has relatively low volume of transactions and small
payments.
B. Business-to-Business ( B2B )
In this case, the vendor and the buyer of the goods or services involved in a
transaction are both organizations rather than individual customers.
In contrast to B2C e-commerce, B2B is characterized by a number of features and
these include high volumes of goods trade, prior agreements or contracts between
the partners involved requiring a much higher level of authorization, taxation, and
documentation and information exchange.
C. Consumer-to-Consumer ( C2C )
This refers to situations where both the seller and the buyer are consumers. On line
auctions provide an effective means for supporting C2C e-commerce.
D. Consumer-to-Business (C2B)
This has perhaps been the area in which there has been the biggest growth in e-
commerce. In this type of applications, a customer specifies his requirements in
relation to the product or services he wants to the business represented by an
ecommerce site which does a search over the Internet to explore the web sites that
match these requirements and return the result to the customer .
Electronic billing is one of the fastest growing technologies for corporate law
departments. Recent surveys indicate that roughly 15 percent of corporate legal
departments require electronic bills from their law firms, and another 15 percent
are considering it. If the person is a law firm with corporate clients, the person
have probably seen acceleration in the number of requests from clients who want
their bills submitted electronically. Choosing electronic billing and matter
management systems are among the most important technology decisions that a
law department can make, with significant potential consequences both positive
and negative (Shi et al., 2008).
The concept of electronic billing is not new. Since the advent of the Internet, a
small number of consumers have been using this electronic medium to pay bills
online after receiving standard paper invoices via regular Postal Service. What is
new in the electronic billing arena is the concept of electronic bill presentment.
With electronic bill presentment, companies that send bills (billers) post
consumers' statements to the Internet, enabling consumers to view the statements
and make e-payments (Sumanjeet, 2009).
With ever increasing spread of Internet, Bill presentment and payment is becoming
a new type of service area for periodic billers like Telephone Companies,
Electricity etc. Internet based bill presentment and payment system converts billing
centers from cost centers to revenue centers and for customers (payer) the system
is a personalized service. Internet based bill presentment and payment system
provides direct personalized communication channel between Billers and Payers,
opens a new revenue channel by cross-selling advertisements. Drastic reduction of
costs that are associated with paper based billing system. For customers or payers,
receiving bills to payment of bills at one window through a Personal Computer,
figure1 show on-line billing system.
Figure 2 Depicts overall workflow of the system step by step:
2. Customer sends registration request for online billing through biller’s World
Wide Web site.
Despite the fact that there are a lot of various tools and platforms to support
customer feedback (suggestions, ideas, etc.) gathering exist nowadays, there are
still a lot of challenges and bottlenecks with respect to this process (Gamon, 2004).
The most significant of them are: customer engagement into a process of feedback
provisioning; simplification of this process for him/her (feedback provider) via
making it more personalized, more intuitive and unobtrusive; minimization of
human/expert involvement into a process of feedback analysis by feedback
consumer via automation of feedback computation.
To attract customers and make them willing to provide a feedback, companies try
to apply different approaches. Some companies maximize amount of possible
feedback provisioning channels to keep a close contact with a customer, no matter
what kind of communication device, location or further actions customer has.
However, all this multi-channel strategies and obtrusive behavior do not guaranty
willingness of customers to provide a feedback. Another strategy to attract
customers to provide a feedback is to offer customers monetized compensation and
discount coupons, or participation in a lottery. Taking into account psychology of
people and possibility to get something valuable for little time spent, this strategy
seems to be more successful. But, again, nobody can guaranty that people honestly
answer all the questions of surveys and do not chose answer randomly. “One click
feedback” strategy does not require more than few seconds to share own opinion
by clicking “like” or “dislike” button or clicking a “star” to rank an associated
content. But this strategy brings a benefit only in some specific cases, because,
generally, simple “like/dislike” or “rank” based strategies are not sufficient for
companies who require more comprehensive and specific feedback (Jain et al.,
2010).
While collecting feedbacks after product purchase (service use), not much
customers are really willing to spend extra time after (especially if really
interesting for the customer aspects might constitute only a little part from the
scope of whole feedback form). Therefore, assuming that customer is interested in
further extension/update of his/her personal customer profile, feedback collection
mechanism must support proactiveness of a customer in the feedback provision
process and provide a possibility to initiate provisioning of a feedback at the
moment considered by customer as a right and suitable one. It means ability of a
customer through pointing at any part of visual representation of a product,
highlighting certain concept (meaningful word) or piece of a text to access
feedback provisioning tool with respect to associated feature/functionality of the
product/service.
Let us consider some examples. Many websites, internet shops and aggregators use
automatic localization of a customer and change not only the language of
product/service description, but also change a currency, associated price
conversion, transportation options, etc. Sure, such intelligent personalization
avoids extra location definition by user. But, in context of globalization and
international mobility, such automated localization adds inconvenience for non-
local users. Therefore, instead of having corresponding issue among many others
in a separate customer feedback form, it would be more logical to allow user to
provide a corresponding feedback exactly at the moment he/she manually change
localization. Another example might be beneficial for product developers. Let us
imagine a person who is looking for a kettle of particular color and with unheated
surface feature. In case, the person cannot find appropriate product, he/she should
be able to specify concrete needs and preferences directly from the current product
page via appropriate access points: by pointing to the colored part of the product
image, be able to find and specify a color property among a list of the
properties/features associated with selected part of the product; by selecting
corresponding piece of a text that describes some features of the product surface,
be able to specify “unheatedness” as a desired feature of the kettle’s surface. One
more example might be taking from on-line e-Learning domain. It is a normal
practice to ask students to provide a feedback at the end of the online-course by
filling certain form. This form might not always concern exact issues that are
important for students. Student might not remember all the problems related to the
content or the study process of the course at its end. It would be reasonable to
allow student to stress the problem immediately when it appears, does not matter
whether it is unclear explanation of certain topic or task definition, a gap of the
student’s knowledge in certain topic/subject, or a schedule for the tasks
performance, etc. So, by getting contextual access to appropriate/associated part of
the feedback directly from the course materials, student can dynamically provide
valuable input for the course instructor. As we can see, such approach does not
only engage customers into feedback provision process, allowing them proactively
behave to specify personal needs, preferences and desires via more intuitive and
context-aware interface, but also uses human intelligence for natural extension of a
feedback model in dynamic and co-creative way.
2.5.1 Advantages of Customer Feedback to Businesses
All businesses strive to achieve customer satisfaction, but some look for customer
delight. It is necessary for such businesses to learn about customers’ feedback as it
helps them to grow. As a business owner, you would want to satisfy your
customers with the best experience and keep them committed to your company.
But if you do not try to find out your customer’s response to using your product,
you will never be able to provide them with an ideal experience. Product
promotions and advertisements can be an excellent way to generate brand
awareness, but without addressing customer feedback, you will never be able to
provide better customer satisfaction.
The first thing which comes to your mind when told about Customer Feedback
Software is “What’s wrong with a normal customer survey done through pen and
paper?” Well, there are a lot of complications that come up while doing a survey
through pen and paper. The most common ones are that they are time-consuming,
reach only a handful number of people, can be misplaced, and the response and
analysis takes time. A digital retail feedback system can make things a lot easier.
Several Retail Feedback Apps can help collect raw data, analyze the information
and turn them into pie charts, tables, graphs and all kinds of useful information that
will help you assess all the feedback and responses given by the users.
4. Ranking Reports
An automated retail feedback system can rank employees, locations, and districts
based on the feedback given by customers. This report helps in identifying the
needs and areas on which the product needs to be improved based on different
regions. Analyzing an employee’s Sales count marks room for praise or
betterment.
5. Inexpensive
A digital feedback system is very cost-effective and very easy to carry out. For the
primary part, it prevents the cost of printing, buying pen and paper, and misplacing
them. It costs little to nothing to run a digital feedback system which is very user-
friendly.
6. Improves Credibility
In the current age, having a manual feedback system instead of a digital one may
be a red light in the eyes of many of your customers. The first thing that a
consumer expects about a good brand is that they have a segment of their company
digitized. One should opt for a digital retail feedback system for the branding of
your company. Such a system also helps to compare your business with other
similar businesses.
Currently, the market is flooded with Customer Feedback Software’s and each of
them is filled with a lot of features that are of great assistance to receive and
analyze feedback. Retail Feedback System help to improve the quality and service
of business and provides you with a powerful insight to your customer which
forms the backbone of a successful business. With so many advantages and all of it
available with very little investment, customer feedback software is the right path
to take.
CHAPTER THREE
DESIGN METHODOLOGY
This chapter gives an insight of the methods of data collection used for the
research, the system requirements, the functional and the non-functional
requirements. The system requirements include the hardware requirements and the
software requirements.
analysis and application design that uses a formal methodical approach to the
analysis and design of information systems because the methods support the use of
the proposed system side by side with the existing system in order to test for the
system efficiency; it is based on the waterfall model of the SDLC. It is divided into
six modules.
1. Feasibility Study: This is a short assessment of a proposed information system
Here the analyst considers possible problems and various options to resolve the
issues.
and business models are built in the investigation of current environment stage.
data requirements of the BSO (Business System option). Here you define
required system processing, develop required data model, determine system for
objectives.
4. Technical System Options: This stage allows user and analyst consider
organization is determined.
5. Logical Design: This Stage involves specifying the new system through
specify the physical data and process design, use of language and features of
chosen environment and incorporates installation standards. It focuses on
The current system for billing customers at Grandix boutique Umuahia is to visit
the shop manually and from the available products, choose the item the customer
wants, then payment of the price of the item is made in cash or bank transfer.
To reduce the shortcomings of the existing system that operates on manual sales
and billing management, an automated system that operates on the web would be
implemented to carryout the billing of customers for goods bought as well as
providing a platform where they can give feedback to the shop owner or system
manager. The new system would be concerned with offering the requirements of
the customer and the workers, the system would be reliable, easier, fast, and more
informative.
3.3.2 Functional Requirements
USER
USER LOGIN
Description of feature
This feature used by the user to login into system. A user must login with his user
name and password to the system after registration. If they are invalid, the user will
not be allowed to access the system.
Description of feature
A new user will have to register in the system by providing essential details in
order to purchase the products in the system. The admin must accept a new user by
verifying him.
- The system must encrypt the password of the customer to provide security.
PURCHASING AN ITEM/BILLING
Description of feature
The user can add the desired product into his cart by clicking ‘Add to cart’ option
on the product. He can view his cart by clicking on the cart button. All products
added by cart can be viewed in the cart. User can remove an item from the cart by
clicking remove. After confirming the items in the cart the user can submit the cart
by providing a delivery address. On successful submitting the cart will become
empty.
- System ensure that, appropriate billing is carried out for purchased items.
CUSTOMER FEEDBACK
Description of feature
The user can through this handle give feedback of his/her experience to the system
administrator for review and necessary adjustments if need be.
ADMIN
MANAGE USER
Description of feature
The administrator can add user, delete user, view user and block user.
MANAGE MODERATOR
Description of feature
The administrator can add moderator, delete moderator, and block moderator and
search for a moderator.
MANAGE PRODUCTS
Description of feature
The administrator can add product, delete product and view product.
MANAGE ORDERS
Description of feature
The Automated billing and customer feedback system will be implemented using
three major components which are a database server for information storage, a
middleware application and a client side application. The client side will be
designed using HTML (Hypertext Markup Language), CSS (Cascading Style
Sheet) and Js (JavaScript) which will be viewed with a web browser. The records
and information about the product will be stored using the MySQL online database
server while the middleware application will be implemented using PHP
programming language.
In the preceding sections, the design of the new System will be the main focus.
3.4.1 Usecase Diagram
Client Register
Registered
Customer
Identity
Make Purchase Provider
Web Customer
Credit
Checkout payment
New Customer service
PayPal
3.4.2 Database Design
In this section, the basic structure of the tables composing the database for the
project are shown along with information about primary and foreign keys.
User
4 Address Char
5 City Char
6 State
7 Date of purchase Date
Shipping Type:
The System Architecture shows the overall view of the components of the system
to be developed.
Payment:
Online shoppers commonly use credit card or debit card to make payments, Here
we are using PayPal Payment Security For Customers.
Features of PayPal:
Pay pal is an incredibly popular way of sending and receiving money over the
Internet. Thousands of people use the service to pay for items bought on shopping
site and for a variety of other goods over the Internet, making it one of the most
convenient as well as the most popular ways to send and receive money online.
Product delivery:
Once a payment has been accepted the goods or services can be delivered in the
following ways.
A type of program that represents a virtual shopping cart, similar to a real shopping
cart. Shopping carts are an important component of e-commerce sites such as
online shops or merchant storefronts. The visitor adds items to their cart for
purchase until they are ready to “check out” and pay for those items. Here we can
Add the item, delete the item and also change the quantity of the item in cart.
A Process Model tells us about how the data is processed and how the data flows
from one table to another to gather the required information. This model consists
of the Functional Decomposition Diagram and Data Flow Diagram.
Confirmation
Transaction
Acknowledgment
Administrative services
Add/Edit inventory
SYSTEM IMPLEMENTATION
Before implementing the actual design of the project, a few user interface designs
were constructed to visualize the user interaction with the system as they browse
for products, create a shopping cart and purchase products.
The researcher will be talking about the system platform used, IDE (integrated
development environment) used and programming language used.
The system platform used is windows 10. Also the IDE (integrated development
environment) used is Sublime text 3 the latest version and the programming
language used is PHP previously known as personal home page. PHP was created
by RasmusLerdorf in 1994 and publicly released in June 8, 1995and was known as
Hypertext Preprocessor. PHP is a server-side interpreted scripting language
designed for creating dynamic web pages and web pages that effectively work with
databases.
Several reasons ride the choice of using PHP for this system, one of which is its
extensive portability and use over several web host servers on the internet. Also
PHP possesses several inbuilt functions which allow it to integrate well with the
widely used and accepted database storage management system for the web-
MySQL. Due to its wide use, several documentations are available online which
will guarantee that materials about any aspect of its use will be easily found.
The PHP Engine then gets the requested file, and if necessary, contacts the
database through MySQL for the required file and then the information is sent back
to the Client’s browser.
In a static Web page, content is determined at the time when the page is created.
As users access a static page, the page always displays the same information.
Example of a static Web page is the page displaying company information. In a
dynamic Web page, content varies based on user input and data received from
external sources. We use the term “data-based Web pages” to refer to dynamic
Web pages deriving some or all of their content from data files or databases.
A data-based Web page is requested when a user clicks a hyperlink or the submit
button on a Web page form. If the request comes from clicking a hyperlink, the
link specifies either a Web server program or a Web page that calls a Web server
program. In some cases, the program performs a static query, such as “Display all
items from the Inventory”. Although this query requires no user input, the results
vary depending on when the query is made. If the request is generated when the
user clicks a form’s submit button, instead of a hyperlink, the Web server program
typically uses the form inputs to create a query. For example, the user might select
five products to be purchased and then submit the input to the Web server program.
The Web server program then services the order, generating a dynamic Web page
response to confirm the transaction. In either case, the Web server is responsible
for formatting the query results by adding HTML tags. The Web server program
then sends the program’s output back to the client’s browser as a Web page.
The Figure above outlines commonly used server-side, client- side, and hybrid
Web and data processing technologies; client-side scripts are in dashed lines to
indicate they are unable to interact directly with a database or file but are used to
validate user input on the client, and then send the validated inputs to the server for
further processing.
4.3.2 Server-side processing
Generally dynamic or data-driven Web pages use HTML forms to collect user
inputs, submitting them to a Web server. A program running on the server
processes the form inputs, dynamically composing a Web page reply. This
program, which is called, servicing program, can be either a compiled executable
program or a script interpreted into machine language each time it is run.Compiled
server programs. When a user submits HTML- form data for processing by a
compiled server program, the Web Server invokes the servicing program. The
servicing program is not part of the Web server but it is an independent executable
program running on the Web server; it processes the user input, determines the
action which must be taken, interacts with any external sources (E.g.database) and
finally produces an HTML document and terminates. The Web server then sends
the HTML document back to the user’s browser where it is displayed. Figure 17
shows the flow of HTTP request from the client to the Web server, which is sent to
the servicing program. The program creates an HTML document to be sent to the
client browser.
PHP Engine
Popular languages for creating compiled server programs are Java, Visual Basic,
and C++, but almost any language that can create executable programs can be
used, provided that it supports commands used by one of the protocols that
establish guidelines for communication between Web servers and servicing
programs. The first such protocol, introduced in 1993, for use with HTML forms
was the Common Gateway Interface (CGI); many servicing programs on Web sites
still use CGI programs. However, a disadvantage of using CGI-based servicing
programs is that each form submitted to a Web server starts its own copy of the
servicing program on the Web server.
A busy Web server is likely to run out of memory when it services many forms
simultaneously; thus, as interactive Web sites have gained popularity, Web server
vendors have developed new technologies to process form inputs without starting a
new copy of the servicing program for each browser input. Examples of these
technologies for communicating with Web servers include PHP and Apache. They
allow a single copy of the servicing program to service multiple users without
starting multiple instances of the program.
Many times, the user is asked to install certain ActiveX components to view some
animations or play games. This new component plugs in into the existing system,
thus extending the functionality of the system.
Although basic client- side scripts cannot be used by a Web page to interact with a
remote database, they are often used to validate user inputs entered on HTML
forms submitted for processing by a server- side program; for example, a script
running on a client workstation might check the inputs users submit to a Web page
to make sure they entered all required data and appropriate data values. This
approach avoids transmitting inputs to the Web server that are incomplete or
include errors, while offloading error checking and handling from the Web server
program to the client workstation.
Client-side scripts can also be used to create advanced Web page features,
including: animations, calculations, playing sound and video, and image maps
allowing users to move their cursors over an image and click to access different
Web page links.
JavaScript is the most commonly used client-side scripting language and is
supported by most browsers.
Servers:
Hardware requirements:
Number Description
1 PC with 2 GB hard-disk
Software requirements:
Number Description
1 Windows 2000/ XP/ or Higher
with MS-office
2. Xampp or wampp server
3. Ms-Internet Explorer, Mozilla
Firefox, Google Chrome, Safari.
Atomic: All operations in the transaction are executed properly. In other words,
they make up a single unit of work. For example, if a customer moves and a
transaction is used to reflect that change in the database, all parts of the address
(street, city, state, etc) must be changed as an atomic action, rather than changing
street, then city, then state, and so on.
Durability: Changes the transaction has performed persist in the database. Once a
change is made, it is permanent. If a system error or power failure occurs before a
set of commands is complete, those commands are undone and the data is restored
to its original state once the system begins running again.
Transaction processing is particularly important for Web applications that use data
access, since Web applications are distributed among many different clients. In a
Web application, databases are a shared resource, and having many different
clients distributed over a wide area can present these key problems:
Contention for resources. Several clients might try to change the same
record at the same time. This problem gets worse the more clients you have.
Unexpected failures. The Internet is not the most reliable network, even if
your Web application and Web server are 100 percent reliable. Clients can
be unexpectedly disconnected by their service providers, by their modems,
or by power failures.
Web application life cycle. Web applications do not follow the same life
cycle as Windows applications —Web forms live for only an instant, and a
client can leave your application at any point by simply typing a new
address in their browser.
1. Begin a transaction.
4. If errors occurred, restore the database to its state at the beginning of the
transaction. If no errors occurred, commit the transaction to the database.
Suppose two users try to add the same product to the shopping cart and try to place
an order at the exact same time. An update should be done to the Products table
after the order is placed, but if only the latest transaction is noted down, the
product quantity will differ in the real world. This situation has to be handled as in
a “Transaction”. As detailed earlier, a transaction is an operation or set of
operations that succeeds or fails as a logical unit. That is, either both the updates
are not done, or both the updates are done consecutively.
4.6 Documentation
Installation Procedure
Some computer programs can be executed by simply copying them into a folder
stored on a computer and executing them but this is quite advanced in nature
because of the advancement in technology.
6. Click enter.
The program may be maintained on the ground that the system requires an
upgrade. When there is a new field to be added or a new form to be added in other
to serve users well.
The following precaution should be done
The objective of this application is to provide the user an online website where
they can buy products from the comfort of their home. A shopping cart is used for
the purpose. The user can select the desired products, place them in the shopping
cart and purchase them using a Credit Card. The user’s order will be shipped
according to the type of shipping selected at the time of placing the order.
1. AddProduct.html
2. ProductDetails.html
3. ProductReview.html
4. Products.html
5. ChangePassword.html
6. CheckOut.html
7. FinalOrder.html
8. Footer.html
9. ForgotPassword.html
10.Login.html
11.LogOff.html
12.Order.html
13.PurchaseHistory.html
14.Registration.html
15.Search.html
16.ShoppingCart.html
When the user types the web address in the browser, the main page of the
application is displayed.
Registration
A new user can register on the site by clicking on the registration button on the
menu at the top of the page.
The “*” beside the label indicates the required field for successful registration on
the site. If the value if not entered, an appropriate message is displayed. If a user
with same UserID already exists, the message is displayed. Clicking on Reset will
clear all the fields and Submit will submit the information for registration. Upon
successful completion, the user is directed to the Products page.
User Details
On clicking “User Details”, the detailed profile information of the user who is
currently logged in.
Here the users can change their profile except for the UserID and these details will
be reflected in the database only when the Update button is clicked. If the user has
placed any order previously, those details can be viewed by clicking on the
Purchase History button.
Shopping Cart
When “Add to Cart” is clicked for any product, it is added to the shopping cart. If
that particular product is already present in the shopping cart, the quantity is
increased by 1 and the price is changed accordingly; if not, a new entry is made
into the table. All the information in the shopping cart is stored in
“shopping_cart_items” table. Adding a product into the shopping cart does not
decrease the quantity of products in the products table. It is decreased only after an
order is placed for the product. So, placing the product in the shopping cart does
not guarantee the availability of the product at the time of placing the order.
Place an Order
When “Place an Order” button is clicked which is located on the bottom of the
shopping cart, the application will ask the user to login if he has not already done
so.
If the user is placing an order with the web site for the first time, they will be asked
to enter the credit card details as shown in the above figure; if not, only the Card
Verification Value (CVV) number of the credit card is asked for verification.
At this point, the user can check the shipping address box if shipping address is
same as billing address, otherwise the user has to enter the new shipping.
If the check box provided is checked, the shipping address is obtained from the
Customer table. The user also has to select the desired type of shipping for the
order. When all the information is entered, the user can “Proceed to the Checkout”.
Check Out/Billing
Before placing the final order, the user is shown the total price of the order, which
includes total price of products selected, shipping rate and state tax. If the user is
not satisfied with the order, the order can be cancelled at that point. The
information in the shopping cart remains intact, so the user can go back to it and
make any changes if necessary. When the “Place Order” button is clicked, the
order is placed and the following screen appears which informs the user about the
approximate number of days in which the order will be delivered.
Once the order is placed, the quantity of the products is reduced in the Products
table. The shopping cart for the user cleared and an appropriate message is
displayed. The inventory is updated after the order is placed.
Purchase History
When viewing the purchase history, the user can view the details of each product
by clicking on the product name. The details are displayed are shown.
Product information can only be changed by the Administrator of the site. All other
users can only view the details of the products. The administrators of the site can
also “Add Product” or “Remove Product” to/from the Products table.
In order to add a product, the administrator will enter the id of the product. If the id
is already present in the Products table, the administrator is asked to enter the
quantity of the products.
If the entered idproduct is not present in the Inventory, the administrator is asked to
enter the details about the product.
When a user logs off the website, the items in their Shopping Cart are cleared.
When the user enters a password during the registration, it is encrypted before it is
stored in the database. It is a one-way encryption and the original form cannot be
retrieved again. Similar encryption method is used for Credit Card Number.
Suppose there are only three “bicycles” products available in the store. One user
adds all of them to the shopping cart, and by the time he chooses other products
and places the order, another user has already placed an order for two of those
products. In that case, the first user comes to know about this at the time of placing
the order and he is directed to the shopping cart to make the appropriate changes.
As explained earlier, the user need not be logged in to add products to the shopping
cart. When the user adds products without logging in, a GUID (Globally Unique
Identifier) is obtained from the system and stored in Session ["loginid”] variable.
This GUID is stored in the shopping_cart_items table along with the selected
products by the user. If the user logs in, the GUID in the table is replaced with the
actual UserID of the user.
Session variables are used to transfer data from one page to another. As soon as the
user closes the window, the session variables are cleared.
CHAPTER FIVE
5.1 Summary
The primary aim of this project has been met. All the objectives that were set out
have been completed and giving positive results in the end.
Although some users comment that they did not think automated billing online was
ideal, it has managed to convince them to try in the future.
People in Nigeria commonly use e-commerce sites to buy and sell second items
online through free-classifieds sites like this one, which reveals an economic
growth and improvement within individuals and not only large companies.
Oil, mineral and human resources and the population of people in millions are over
160 million potential buyers and sellers of different items on every street. The
thing that makes e-Commerce so successful in Nigeria is that Nigerians love to
shop, but there’s an absence of a well-structured retail chain, too few shopping
malls and poor transportation network, which makes it difficult to access the
product. And that’s where the e-Commerce comes in handy.
5.2 Conclusion
The Internet has become a major resource in modern business, thus electronic
shopping/billing has gained significance not only from the entrepreneur’s but also
from the customer’s point of view. For the entrepreneur, electronic billing
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 automated billing system that can be
used to buy products online from a boutique. To implement this as a web
application we used PHP as the Technology. PHP has several advantages such as
enhanced performance, scalability, built- in security and simplicity. To build any
web application using PHP we need a programming language such as HTML,
CSS, JavaScript and JQuery. For the client browser to connect to the PHP engine
we used Apache Server as the Web Server. PHP uses PhpMyAdmin to interact
with the database as it provides in- memory caching that eliminates the need to
contact the database server frequently and it can easily deploy and maintain a PHP
application. MySQL was used as back-end database since it is one of the most
popular open source databases, and it provides fast data access, easy installation
and simplicity.
A good shopping cart design must be accompanied with user- friendly shopping
cart application logic. It should be convenient for the customer to view the contents
of their cart and to be able to remove or add items to their cart. The shopping cart
application described in this project provides a number of features that are
designed to make the customer more comfortable.
This project helps in understanding the creation of an interactive web page and the
technologies used to implement it. The design of the project which includes Data
Model and Process Model illustrates how the database is built with different tables,
how the data is accessed and processed from the tables. The building of the project
has given me a precise knowledge about how PHP is used to develop a website,
how it connects to the database to access the data and how the data and web pages
are modified to provide the user with a shopping cart application.
5.3 Recommendation
From this study, a shopping centre website providing automated billing and
customer feedback package under the same domain, is successfully implemented.
Using the principle of content management, online market provides all functions
which customers need for conducting online shopping. Furthermore, the website
package service well known among online store owners is convenient and flexible
for any potential users. For website development open source software is mostly
used due to its low cost of development. Provided services are likewise relatively
low in price and suitable for online market. This website also promotes e-
commerce and online marketing on the Internet, complying with the information
technology policy of the government. Regarding website quality, implementing
various techniques of web design and database management system coupled with
other additional services, the website is quite responsive.
Moreover, to obtain the highest system performance, it utilizes full options of both
hardware and operating system software. With all mentioned techniques, the
website operates with low resource consumption at its massive size. This website
will expand e-commerce business to cover most of available Internet devices and
technology, such as mobile phone, mobile payment, and wireless application
protocol and pocket personal comp.
REFERENCES
Bigne, Enrique (2009). The Impact of Internet User Shopping Patterns and
Demographics on Consumer Mobile Buying Behavior". Journal of
Electronic Commerce Research 6.
Brustoloni, J., Garay, J.: MicroISPs (2010): providing convenient and low-cost
high-bandwidth Internet access. Computer Networks 33, 789–802
Chan Henry, Raymond Lee, Tharam Dillon and Elizabeth Chang (2001),
Ecommerce Fundamental and Applications, Baffins Lane, Chichester, West
Sussex, PO19 lUD, England.
Cherfi, H., Corby, O., Faron-Zucker, C., Khelif, K., Nguyen, M. T., (2008).
Semantic Annotation of Texts with RDF Graph Contexts. In ICCS
Supplement.
Cimiano P., Ladwig G., Staab S., (2005). Gimme' the context: context-driven
automatic semantic annotation with c-pankow. In WWW '05, pages 332-
341, NY, USA, 2005. ACM Press. ISBN 1-59593-046-9.
Dave, K., Lawrence, S., Pennock, D., (2003). Mining the Peanut Gallery: Opinion
Extraction and Semantic Classification of Product Reviews. WWW’03.
Gamon M., (2004). Sentiment classification on customer feedback data: noisy data,
large feature vectors, and the role of linguistic analysis. In Proceedings of
the 20th international conference on Computational Linguistics. Association
for Computational Linguistics, p. 841.
Geena Rao (2010). Mopay Now Allows You To Bill Mobile Payments To A
Landline Account". TechCrunch.com.
Guo, Y.Y., Shou, J.X. (2004): Campus network accounting system based on
SNMP. Journal of Zhengjiang University of Technology 32, 78–81
Jain P., Hitzler P., Sheth A.P., Verma K., Yeh P.Z., (2010). “Ontology Alignment
for Linked Open Data”. In: Proceedings of the 9th International
SemanticWeb Conference, ISWC 2010, Shanghai, China, November 7-11,
2010, Springer-Verlag, 402–417.
Levi Albert and Çetin Kaya Koç, (2005). CONSEPP: Convenient and Secure
Electronic Payment Protocol Based on X9.59, IEEE Computer Society
Press, Los Alamitos, California, March 21, 2009
Qing, L.P. (2010): The accounting system of the online reading-room on the wide
area networks. New Technology of Library and Information Service 81, 53–
55
Shi, M.H., Shen, X.M., Mark, J.W., Zhao, D.M., Jiang, Y.X. (2008): User
authentication and undeniable billing support for agent-based roaming
service in WLAN/cellular integrated mobile networks. Computer Networks
52, 1693–1702
Shiqun Li, GuilinWang, Jianying Zhou, Kefei Chen, (2008). Fair and Secure
Mobile Billing Systems, Springer Science+Business Media, LLC.
Walker, John (2007). RPS Exclusive: Gabe Newell Interview. Rock, Paper,
Shotgun.
Watson Richard T., Pierre Berthon, Leyland F. Pitt and George M. Zinkhan
(2007). ElectronicCommerce: The Strategic Perspective, Creative Commons
Attribution 3.0 License.