Вы находитесь на странице: 1из 172

IPLAZA: ONLINE E-COMMERCE SYSTEM

ABDUL HAFIZ BIN BISTAR @ MEDIHI

OPEN UNIVERSITY MALAYSIA


IPLAZA: ONLINE E-COMMERCE SYSTEM

ABDUL HAFIZ BIN BISTAR @ MEDIHI

Project Paper Submitted in Partial Fulfilment of the Requirement for the


Degree of Bachelor of Information Technology (Honours)

Open University Malaysia


May 2016
ACKNOWLEDGEMENTS

Bissmillahirrahmanirrahim,

Alhamdulillah. Thanks to Allah SWT as He gave me the blessing and opportunity to


complete this academic paper. This project paper was prepared to fulfil the
requirement of degree of Bachelor of Information Technology (Honours).

During the development of this inventory system, I have received lots of guidance
from tutors and colleagues. I would like to take this opportunity to express my
acknowledgement to my project supervisor, Mr. Ngang Tuong Kiet for his full support
and details guidance throughout this project.

Not forgetting the Open University Malaysia and its' the facilities such as e-Library
and forum which helps me to search for materials for this report. I am also indebted to
my group tutor colleagues who contribute to proof-read this report.

Profound gratitude goes to the contribution of my family especially my parents for


supporting me in both the form of encouragement and funding. Without them, I could
never further my studies.

Last but not least, I would like to thank everyone who has been a help directly or
indirectly towards the completions of this assignment.

i
ABSTRACT

The Internet is gaining increasing attention from customers as a dynamic virtual


medium for selling and buying products and services. Today, consumers can buy
everything from living essentials to hobby merchandise over the web, which can save
time, money, and sanity. Lazada, one of the fastest growing online businesses, has
become a revenue for those wanting to sell their wares online. The reason to continue
visiting bricks-and-mortar shops is dwindling. Improved technology, such as faster
internet connections, also make the online shopping easier. Indeed, online shopping is
very convenient to the customers. Customer satisfaction with Internet retail has
climbed over the years. Similarly, online security has also improved. Credit and debit
card companies and retailers offer more protection to guard against fraud.

ii
ABSTRAK

Internet semakin mendapat perhatian dari pelangan sebagai medium maya yang
dinamik untul mejual dan membeli produk dan perkhidmatan. Kini, pelanggan boleh
membeli pelbagai produk dari keperluan harian ke barangan hobi. Selajutnya,
menjimatkan masa, wang dan kewarasan. Lazada adalah salah satu perniagaan atas
talian telah menjadi satu sumber rezeki untuk sebahagian usahawan yang menjual
barangan mereka di Internet. Keinginan untuk ke kedai untuk membeli-belah semakin
berkurang. Teknologi semakin maju seperti kepantasan internet yang semakin laju
juga memudahkan proses membeli di kedai atas talian. Oleh itu, e-dagang ketara
menjadi semakin mudah untuk dipergunakan. Kepuasan pelanggan dengan kedai atas
talian juga semakin tinggi. Pada masa yang sama, keselamatan atas talian juga telah
diperbaik. Syarikat dan organisasi yang mempelawa perkhidmatan kad kredit dan debit
juga menyediakan perlindungan yang lebih gigih terhadap penipuan.

iii
DECLARATION

Name : Abdul Hafiz bin Bistar @ Medihi


Matric No : 860226525871001

I hereby declare that this project report entitled iPlaza Online E-Commerce System
submitted to Open University Malaysia is an original work, except for quotations and
summaries which have been duly acknowledged, is done by me the under the guidance
of Mr. Ngang Tuong Kiet. This project work is submitted in the partial fulfilment of
the requirements for the award of the degree of Bachelor in Information Technology.
The results embodied in this documents have not been presented to any other
University or Institute for the award of any degree or diploma.

Signature :
Date :

iv
TABLE OF CONTENTS

Acknowledgements ................................................................................................... i

Abstract .................................................................................................................... ii

Abstrak.................................................................................................................... iii

Declaration .............................................................................................................. iv

Table of Contents ..................................................................................................... v

List of Figures ....................................................................................................... viii

List of Tables .......................................................................................................... xi

1. Introduction ...................................................................................................... 1

1.1 Problem Statement ..................................................................................... 2

1.1.1 Limited physical space ........................................................................ 2

1.1.2 Limited availability ............................................................................. 2

1.1.3 Lack of product information ................................................................ 2

1.1.4 Difficult to discern profitability ........................................................... 3

1.2 Project Features .......................................................................................... 3

1.3 Project Objectives ...................................................................................... 3

1.4 Project Goals .............................................................................................. 4

1.4.1 Who .................................................................................................... 4

1.4.2 Why .................................................................................................... 4

1.4.3 Where ................................................................................................. 4

1.5 Project Scope ............................................................................................. 5

2. Literature Review ............................................................................................. 6

3. Hardware and Software .................................................................................. 14

3.1 Hardware ................................................................................................. 14

3.2 Software ................................................................................................... 15

v
4. Methodology .................................................................................................. 17

4.1 Data Collection ........................................................................................ 17

4.1.1 Interview .............................................................................................. 17

4.1.1.1 Interview 1: ................................................................................... 18

4.1.1.2 Interview 2: ................................................................................... 18

4.1.2 Data Analysis from Interview ............................................................... 19

4.1.3 Questionnaires ...................................................................................... 19

4.1.4 Observations and Research Method ...................................................... 26

5. Analysis and Design ....................................................................................... 27

5.1 Analysis ................................................................................................... 27

5.1.1 Feasibility Studies................................................................................. 27

5.1.1.1 Technical Feasibility ......................................................................... 28

5.1.1.2 Economic Feasibility ......................................................................... 29

5.1.1.3 Operational Feasibility ...................................................................... 31

5.1.1.3.1 Analysis on the existing system ......................................................... 32

5.2 Design ...................................................................................................... 33

5.2.1 Entity Relationship Diagram (ERD) ...................................................... 33

Basic Entity Relationship ................................................................................ 33

Entity Relationship Diagram ........................................................................... 37

5.2.2 Data Flow Diagram (DFD) ................................................................... 38

5.2.3 Data Dictionary .................................................................................... 45

5.2.3.1 Data Store ......................................................................................... 46

Data Structure for Data Store D1 .................................................................... 46

Data Structure for Data Store D2 .................................................................... 47

Data Structure for Data Store D3 .................................................................... 48

Data Structure for Data Store D4 .................................................................... 49

vi
Data Structure for Data Store D5 .................................................................... 49

Data Structure for Data Store D6 .................................................................... 50

Data Structure for Data Store D7 .................................................................... 50

5.2.3.2 Data Flow DFD Level 0 ................................................................. 51

5.2.3.3 Data Process...................................................................................... 59

5.2.3.4 Data Elements ................................................................................... 61

6. Implementation............................................................................................... 94

6.1 User Interface Development ..................................................................... 94

6.1.1 Module 1: iPlaza Online E-Commerce System...................................... 95

6.1.2 Module 2: Administrators iPlaza Online E-Commerce System .......... 112

6.2 Integrate and Program the Necessary System.......................................... 131

6.3 Prepare Database Management System .................................................. 133

7. Testing ......................................................................................................... 135

7.1 Post Implementation Testing .................................................................. 135

7.1.1 Integration Testing Plan ...................................................................... 135

7.1.2 System Testing Plan ........................................................................... 137

7.1.3 Acceptance Testing ............................................................................. 139

8. Suggestions .................................................................................................. 142

8.1 Possible Future Improvements................................................................ 142

8.2 Security and Backup Features................................................................. 144

9. Conclusion ................................................................................................... 146

References ............................................................................................................ 147

Bibliography ........................................................................................................ 148

Appendix A1 ........................................................................................................ 149

Appendix A2 ........................................................................................................ 151

Appendix B .......................................................................................................... 153

vii
LIST OF FIGURES

Figure 4.1 Participants Internet connection by age group ....................................... 20


Figure 4.2 Frequency of browsing the Internet ........................................................ 21
Figure 4.3 Frequency of usage by type ................................................................... 21
Figure 4.4 Participants thoughts on online shopping .............................................. 22
Figure 4.5 Participants interest to purchase via online shop in the future ............... 23
Figure 4.6 Participants reasons for not being interested in buying from an online shop
............................................................................................................................... 24
Figure 4.7 Problems when purchasing from traditional stores ................................. 25
Figure 4.8 Features should be available in an online store ....................................... 25
Figure 5.1 Traditional Brick-and-Mortar Data Flow Diagram ................................. 32
Figure 5.2 Entity Relationship between Customer and Accounts ............................ 33
Figure 5.3 Entity Relationship between Administrator and Accounts ...................... 34
Figure 5.4 Entity Relationship between Administrator and Products ....................... 34
Figure 5.5 Entity Relationship between Administrator and Images ......................... 34
Figure 5.6 Entity Relationship between Products and Images ................................. 34
Figure 5.7 Entity Relationship between Customer and Purchase Orders .................. 34
Figure 5.8 Entity Relationship between Customer and Payment Gateway ............... 35
Figure 5.9 Entity Relationship between Administrator and Categories .................... 35
Figure 5.10 Entity Relationship between Administrator and Brands........................ 35
Figure 5.11 Entity Relationship between Administrator and Tax Codes .................. 35
Figure 5.12 Entity Relationship between Products and Categories .......................... 35
Figure 5.13 Entity Relationship between Products and Brands ................................ 36
Figure 5.14 Entity Relationship between Products and Tax Codes .......................... 36
Figure 5.15 Entity Relationship between Payment Gateway and Purchase Orders ... 36
Figure 5.16 Entity Relationship between Purchase Orders and Products ................. 36
Figure 5.17 Full System Entity Relationship Diagram ............................................ 37
Figure 5.18 Context Diagram of iPlaza: Online E-Commerce System..................... 39
Figure 5.19 Level-0 DFD of iPlaza: Online E-Commerce System........................... 40
Figure 5.20 Level-1 DFD for Process 1.0 of iPlaza: Online E-Commerce System... 41

viii
Figure 5.21 Level-1 DFD for Process 2.0 of iPlaza: Online E-Commerce System... 41
Figure 5.22 Level-1 DFD for Process 3.0 of iPlaza: Online E-Commerce System... 41
Figure 5.23 Level-1 DFD for Process 4.0 of iPlaza: Online E-Commerce System... 42
Figure 5.24 Level-1 DFD for Process 5.0 of iPlaza: Online E-Commerce System... 43
Figure 5.25 Level-1 DFD for Process 6.0 of iPlaza: Online E-Commerce System... 44
Figure 6.1 Home page of iPlaza: Online E-Commerce System................................ 95
Figure 6.2 Register page of iPlaza: Online E-Commerce System ............................ 96
Figure 6.3 Login page of iPlaza: Online E-Commerce System ................................ 97
Figure 6.4 Customers account page of iPlaza: Online E-Commerce System .......... 98
Figure 6.5 Products list by Clothing categories page of iPlaza: Online E-Commerce
System ................................................................................................................... 99
Figure 6.6 Brands list page of iPlaza: Online E-Commerce System ...................... 100
Figure 6.7 Products list by Reverieuomo brands page of iPlaza: Online E-Commerce
System ................................................................................................................. 101
Figure 6.8 Detailed product page of iPlaza: Online E-Commerce System ............. 102
Figure 6.9 Adding product to the cart ................................................................... 103
Figure 6.10 Checkout page login or register notification ....................................... 103
Figure 6.11 Checkout page of iPlaza: Online E-Commerce System ...................... 104
Figure 6.12 PayPals Credit and debit card payment options ................................. 105
Figure 6.13 Pay using a PayPal account ................................................................ 106
Figure 6.14 Review and confirm payment information ......................................... 106
Figure 6.15 Confirmation of payment by PayPal .................................................. 107
Figure 6.16 Order Information page of iPlaza: Online E-Commerce System ......... 108
Figure 6.17 Order history page of iPlaza: Online E-Commerce System ................ 109
Figure 6.18 Terms and Condition page of iPlaza: Online E-Commerce System .... 110
Figure 6.19 Privacy policy page of iPlaza: Online E-Commerce System ............... 110
Figure 6.20 Delivery Information page of iPlaza: Online E-Commerce System .... 111
Figure 6.21 About us page of iPlaza: Online E-Commerce System ....................... 111
Figure 6.22 Manage categories page of iPlaza: Online E-Commerce System ........ 112
Figure 6.23 Add new category .............................................................................. 113
Figure 6.24 Delete category confirmation ............................................................. 113
Figure 6.25 Manage brands page of iPlaza: Online E-Commerce System ............. 114

ix
Figure 6.26 Add new brands ................................................................................. 115
Figure 6.27 Delete brands confirmation ................................................................ 115
Figure 6.28 Manage tax codes page of iPlaza: Online E-Commerce System ......... 116
Figure 6.29 Add new tax codes............................................................................. 117
Figure 6.30 Delete tax codes confirmation ............................................................ 117
Figure 6.31 Manage products page of iPlaza: Online E-Commerce System .......... 118
Figure 6.32 Delete products confirmation ............................................................. 119
Figure 6.33 Add products page of iPlaza: Online E-Commerce System ................ 120
Figure 6.34 Edit products basic details page ........................................................ 121
Figure 6.35 Edit products pricing page ................................................................ 122
Figure 6.36 Edit products image gallery page ...................................................... 123
Figure 6.37 Products image delete confirmation .................................................. 124
Figure 6.38 Manage orders page of iPlaza: Online E-Commerce System .............. 125
Figure 6.39 Delete orders confirmation................................................................. 125
Figure 6.40 Edit orders basic details page ............................................................ 126
Figure 6.41 Edit orders shipping details............................................................... 127
Figure 6.42 Edit orders product list ..................................................................... 128
Figure 6.43 Edit orders comments ....................................................................... 129
Figure 6.44 Error message example ...................................................................... 130
Figure 6.45 Success message example .................................................................. 130
Figure 6.46 Creating database with Adminer ........................................................ 131
Figure 6.47 Code Igniter framework database configuration settings .................... 132
Figure 6.48 The relationships of the table designs of iPlaza: Online E-Commerce
System ................................................................................................................. 134

x
LIST OF TABLES

Table 3.1 Server computer hardware specification .................................................. 14


Table 3.2 Essential software to develop iPlaza ........................................................ 16
Table 4.1 Respondents demographic profile ........................................................... 20
Table 5.1 Server computer hardware costs .............................................................. 30
Table 5.2 Data Store D1 ......................................................................................... 46
Table 5.3 Data Store D2 ......................................................................................... 47
Table 5.4 Data Store D3 ......................................................................................... 48
Table 5.5 Data Store D4 ......................................................................................... 49
Table 5.6 Data Store D5 ......................................................................................... 49
Table 5.7 Data Store D6 ......................................................................................... 50
Table 5.8 Data Store D7 ......................................................................................... 50
Table 5.9 Data Flow Basic Account Data ............................................................ 51
Table 5.10 Data Flow Register Information ......................................................... 51
Table 5.11 Data Flow - Account Data..................................................................... 51
Table 5.12 Data Flow Update Information ........................................................... 52
Table 5.13 Data Flow Validation Data ................................................................. 52
Table 5.14 Data Flow Validation Data ................................................................. 52
Table 5.15 Data Flow Account Information ......................................................... 53
Table 5.16 Data Flow Administrator Information ................................................ 53
Table 5.17 Data Flow Product Purchase Data ...................................................... 53
Table 5.18 Data Flow Orders Confirmation Information ...................................... 54
Table 5.19 Data Flow Orders Data....................................................................... 54
Table 5.20 Data Flow Payment Data.................................................................... 55
Table 5.21 Data Flow Orders Payment Information ............................................. 55
Table 5.22 Data Flow Payment Confirmation Data .............................................. 55
Table 5.23 Data Flow New Business Information ................................................ 56
Table 5.24 Data Flow Updated Business Info ...................................................... 57
Table 5.25 Data Flow Business Data ................................................................... 58
Table 5.26 Data Flow Business Information ........................................................ 58
Table 5.27 Data Process for Context Diagram ........................................................ 59

xi
Table 5.28 Data Process for Process 1.0 ................................................................. 59
Table 5.29 Data Process for Process 2.0 ................................................................. 59
Table 5.30 Data Process for Process 3.0 ................................................................. 60
Table 5.31 Data Process for Process 4.0 ................................................................. 60
Table 5.32 Data Process for Process 5.0 ................................................................. 60
Table 5.33 Data Process for Process 6.0 ................................................................. 61
Table 5.34 Data Element user_id ......................................................................... 61
Table 5.35 Data Element user_email.................................................................... 61
Table 5.36 Data Element user_pass ..................................................................... 62
Table 5.37 Data Element user_salt ....................................................................... 62
Table 5.38 Data Element user_hash ..................................................................... 62
Table 5.39 Data Element user_status ................................................................... 63
Table 5.40 Data Element user_firstname.............................................................. 63
Table 5.41 Data Element user_lastname .............................................................. 63
Table 5.42 Data Element user_mphone ................................................................ 64
Table 5.43 Data Element user_hphone ................................................................. 64
Table 5.44 Data Element user_bill_address ......................................................... 64
Table 5.45 Data Element user_bill_city ............................................................... 65
Table 5.46 Data Element user_bill_postcode ....................................................... 65
Table 5.47 Data Element user_bill_statecode ....................................................... 65
Table 5.48 Data Element user_bill_countrycode .................................................. 66
Table 5.49 Data Element user_ship_address ........................................................ 66
Table 5.50 Data Element user_ship_city .............................................................. 66
Table 5.51 Data Element user_ship_postcode ...................................................... 67
Table 5.52 Data Element user_ship_statecode ..................................................... 67
Table 5.53 Data Element user_ship_countrycode ................................................. 67
Table 5.54 Data Element user_register_date ........................................................ 68
Table 5.55 Data Element or_id ............................................................................ 68
Table 5.56 Data Element or_unique ..................................................................... 68
Table 5.57 Data Element or_ship_track ............................................................... 69
Table 5.58 Data Element or_ship_fee .................................................................. 69
Table 5.59 Data Element or_ship_status .............................................................. 69

xii
Table 5.60 Data Element or_payment_status ....................................................... 70
Table 5.61 Data Element or_handling_fee ........................................................... 70
Table 5.62 Data Element or_handling_fee ........................................................... 70
Table 5.63 Data Element or_sub_total ................................................................. 71
Table 5.64 Data Element or_grand_total .............................................................. 71
Table 5.65 Data Element or_order_status ............................................................ 71
Table 5.66 Data Element - or_datetime ................................................................... 72
Table 5.67 Data Element oa_id ............................................................................ 72
Table 5.68 Data Element oa_type ........................................................................ 73
Table 5.69 Data Element oa_firstname ................................................................ 73
Table 5.70 Data Element oa_lastname ................................................................. 73
Table 5.71 Data Element oa_address ................................................................... 74
Table 5.72 Data Element oa_postcode ................................................................. 74
Table 5.73 Data Element oa_city ......................................................................... 74
Table 5.74 Data Element or_statecode ................................................................. 75
Table 5.75 Data Element or_phone ...................................................................... 75
Table 5.76 Data Element oc_id ............................................................................ 75
Table 5.77 Data Element oc_text ......................................................................... 76
Table 5.78 Data Element oc_poster ..................................................................... 76
Table 5.79 Data Element oc_datetime .................................................................. 76
Table 5.80 Data Element op_id ............................................................................ 77
Table 5.81 Data Element order_id ....................................................................... 77
Table 5.82 Data Element product_id .................................................................... 77
Table 5.83 Data Element op_qty.......................................................................... 78
Table 5.84 Data Element op_current_price .......................................................... 78
Table 5.85 Data Element op_sell_price ................................................................ 78
Table 5.86 Data Element op_tax_code ................................................................. 79
Table 5.87 Data Element op_tax_amt .................................................................. 79
Table 5.88 Data Element op_tax_rate .................................................................. 79
Table 5.89 Data Element op_subtotal .................................................................. 80
Table 5.90 Data Element pdt_id........................................................................... 80
Table 5.91 Data Element brand_id ....................................................................... 80

xiii
Table 5.92 Data Element category_id .................................................................. 81
Table 5.93 Data Element tax_id ........................................................................... 81
Table 5.94 Data Element pdt_skucode ................................................................. 81
Table 5.95 Data Element pdt_name ..................................................................... 82
Table 5.96 Data Element pdt_short_desc ............................................................. 82
Table 5.97 Data Element pdt_long_desc .............................................................. 82
Table 5.98 Data Element pdt_buy_price .............................................................. 83
Table 5.99 Data Element pdt_sell_price ............................................................... 83
Table 5.100 Data Element pdt_publish ................................................................ 83
Table 5.101 Data Element pdt_condition ............................................................. 84
Table 5.102 Data Element pdt_discount_rate ....................................................... 84
Table 5.103 Data Element pdt_discount_startdate ................................................ 85
Table 5.104 Data Element pdt_discount_enddate ................................................. 85
Table 5.105 Data Element pdt_date_add .............................................................. 86
Table 5.106 Data Element pdt_date_upd.............................................................. 86
Table 5.107 Data Element cat_id ......................................................................... 87
Table 5.108 Data Element cat_name .................................................................... 87
Table 5.109 Data Element cat_parent .................................................................. 87
Table 5.110 Data Element br_id .......................................................................... 88
Table 5.111 Data Element br_name ..................................................................... 88
Table 5.112 Data Element image_id .................................................................... 88
Table 5.113 Data Element tc_id ........................................................................... 89
Table 5.114 Data Element tc_code....................................................................... 89
Table 5.115 Data Element tc_desc ....................................................................... 89
Table 5.116 Data Element tc_rate ........................................................................ 90
Table 5.117 Data Element img_id ........................................................................ 90
Table 5.118 Data Element refer_type ................................................................... 90
Table 5.119 Data Element refer_id ...................................................................... 91
Table 5.120 Data Element - img_f_name ................................................................ 91
Table 5.121 Data Element - img_e_name ............................................................... 91
Table 5.122 Data Element - img_filetype ............................................................... 92
Table 5.123 Data Element img_size ..................................................................... 92

xiv
Table 5.124 Data Element img_width .................................................................. 92
Table 5.125 Data Element img_height ................................................................. 93
Table 7.1 Integration Testing Plan for iPlaza Online E-Commerce System ........... 136
Table 7.2 Integration Testing Plan for Administrators iPlaza Online E-Commerce
System ................................................................................................................. 137
Table 7.3 System Testing Plan for iPlaza Online E-Commerce System................. 138
Table 7.4 System Testing Plan for Administrators iPlaza Online E-Commerce System
............................................................................................................................. 139
Table 7.5 Acceptance Testing Plan for iPlaza Online E-Commerce System .......... 140
Table 7.6 Acceptance Testing Plan for Administrators iPlaza Online E-Commerce
System ................................................................................................................. 141

xv
CHAPTER 1
1. INTRODUCTION

Commerce is a conduct of trade that refers to the exchange of goods or services


between two entities or simply the activity of buying and selling. The advancement in
communication technology has enabled the commerce industry to form electronic
commerce or abbreviated as e-commerce. E-commerce is defined as an exchange of
goods, services or something of value through an electronic network such as the
internet. Usually, a business applies e-commerce by using an online shopping website
system directly sell to the consumers. In some cases, larger companies act as a third
party that provides a platform for small retailers to sell their products to the consumers.
An example of such websites is www.lelong.com.my, www.lazada.com.my,
www.11street.my, and so forth.

There are several benefits to using an online shopping website system. Firstly,
it will allow the business to operate anytime and anywhere. The online e-commerce
system also leads to increase in the profitability and brand name recognition of the
firm. Other than that, using an online shopping system also helps the customers to gain
more information of a goods and services through the information provided by the
system. Any organisation that has an online shopping website system employed will
have an advantage over the competitor who does not have it.

This project aims to create an online shopping website system under the project
name of iPlaza. iPlaza allows the administrator to add products information such as
price, descriptions, and images to the database. Through the system, a customer could
select a product to be added to a virtual cart and proceed with the purchase of the
product via checkout. The purchased product are then sent to the client based on the
information that the customer has entered during the checkout process.

1
In addition to that, iPlaza also have staffs can have categories and brands to
segregate the products. This system will ease the customer searching for products that
they want. The system also helps the administrator to view all the orders information
of the customers in a simplified table. The orders are also editable by the administrator.
The system also contributes to generating different kinds of reports on the available
data which will help the management to take informed decisions.

1.1 Problem Statement


The capability of doing business is an important aspect of any business organisation.
It is imperative for the company to venture into the electronic commerce to improve
the commercial side of the firm. Developing an online shopping website system will
allow the company to expand itself into the e-commerce field. A study has been done
to understand the weakness of the traditional business practice. Among the problems
and difficulties are as follows:

1.1.1 Limited physical space


The traditional business normally requires a store to operate normally. Access to the
store is limited to only the surrounding area. This limitation inhibits the profitability
of the firm. Stores also call for an adequate amount of parking space to attract more
visitors.

1.1.2 Limited availability


The traditional store is only open for a limited amount of time. Some store is also
closed during the public holidays. There is also a limited amount of customer reach
due to the store location geographical availability. Consequently, this reduces the
profitability of the business.

1.1.3 Lack of product information


Usually, the staff in traditional stores does not have enough information regarding the
products. This restriction is because the staff cannot remember all the information

2
about hundreds of the goods sold in the stores. The information might also be biased
and inconsistent between different staff.

1.1.4 Difficult to discern profitability


It is hard to keep a proper record of sales of a day. Tallying the sales record on day to
day basis requires a tremendous amount of effort. Subsequently, it is harder to create
a report of sales record for the management to create an informed decision.

1.2 Project Features


iPlaza project is suggested to have the following features:
Allows registration for the customer to store relevant information such as
shipping address.
Provide product information.
Provide a searchable list of products in a segregated manner to simplify the
process of searching a product.
Allows registered customer to purchase a product via the virtual shopping cart.
Allows customer to pay using a credit or debit card through PayPal service.
Saves cost in buying the stock if the stock purchased in bulk.
Allows administrator to change the information such as product, categories,
brands, and so forth.

1.3 Project Objectives


The project has the following objectives:
To build an online shopping website system.
To develop a database system using MySQL to store data of the online
shopping website system.
To develop a system using Code Igniter PHP framework.

3
1.4 Project Goals
The goal of the project is to provide an alternative approach for the customer to
purchase instead of going to the traditional brick and mortar store. The project goals
are determined in the aspects of who, why and where. This project will only considered
successful if all these problems can be met. The description of each aspect or question
is as follows:

1.4.1 Who
This system can only be accessed anyone with an internet access. The visitors
could browse the system to get information about the products that have been
added to the database. The visitors will be required to register into the system
to be allowed to purchase. The administrator is the staff that has an elevated
access as they could also add, remove, and update any information in the
system.

1.4.2 Why
This project is developed to simplify the process of purchasing a product from
a business. Furthermore, the system is estimated to improve the profitability of
the firm.

1.4.3 Where
The system will be installed on a server with an internet connection. From
there, anyone should be able to access the system using any modern internet
browser directly.

4
1.5 Project Scope
This project is targeted to be applied and used by store owners. The project will be
completed before 5 December 2016. The modules of the project will include
categories, brands, products, user accounts, reports, virtual carts, orders, and more.
Access and permissions to specific modules to add, remove, update and view will be
granted to the appropriate user level. The staff will be required to log in to access a
restricted module.

5
CHAPTER 2
2. LITERATURE REVIEW

Electronic commerce or normally written as e-commerce or eCommerce is the action


of buying or selling products, services, or something of value over a computer network
such as the Internet. Customer convenience is the key to success in online sales. The
visitors must be able to search and order for a product. If this process is hard and
annoying to do, they might cancel the purchase midway. The users also need to be
confident that the private information that they transmit are secure.

The elements of successful e-commerce are similar to those for the mail order
catalogue sales. However, substantial differences exist. In a mail order catalogue sales,
customers can browse a catalogue at their leisure, taking the time to review their
choices. Then they can purchase and order via a handy 24-hour toll-free telephone line
or by mailing or faxing a printed order form without ever leaving home.

E-commerce has benefited from the few innovations in human history. Now,
e-commerce is a low-cost global technology that could reach hundreds of millions of
people. It is typically designed to be interactive. This technology could result in many
potential benefits to organisations, individuals, and society. E-commerce expands the
local business to national and international level. With a minimal capital budget, a
company can easily and quickly extends its reach to more customers, better suppliers,
and the most suitable business partners worldwide. For example, in 1997, Boeing
Corporation reported a savings of 20 percent due to a small vendor in Hungary won
an online bid for the proposal to manufacture a subsystem that was posted by the
Boeing Corporation on the Internet. It was also reported that the subsystem was
delivered quickly and cheaply (Turban, 2000).

6
E-commerce decreases the usage of paper-based material needed to create,
process, distribute, store and retrieve information. For instance, by using an electronic
procurement system, companies can cut the purchasing administrative costs by as
much as 85 percent. Another example is its benefit in reducing payments paycheck.
The U.S. federal government reported that the cost of issuing a paper check is 43 cent
each while the cost of payment directly by an electronic method is only two cent only
(Turban, 2000).

E-commerce allows customers to purchase or do other transaction from the


online stores at any time and from almost any location. E-commerce also provides
customers with more choices of products because they can select from a variety of
vendors. E-commerce usually provides customers with cheaper goods and services by
allowing them to browse products from different stores and conduct quick
comparisons. E-commerce also ensures that the clients can receive relevant and
detailed information in seconds instead of within days or weeks.

Research conducted in 1996 by Forrester Research Institute


(www.forrester.com) has predicted that business-to-consumer (B2C) potentially be a
$6.6 billion business in 2000, an increase from $518 million in 1996. Then they
received the figure to $20 billion, and the prediction keeps growing. In 1997, about
$10 billion worth of business-to-business (B2B) transactions were conducted over the
Internet. The predictions on the size of e-commerce differ. In 2002, total online
shopping and B2B transaction were estimated to be in the range of $500 to $3 trillion.
Other e-commerce applications, such as auctions and online stock trading are growing
at a rate of 15 to 25 percent every month. The number of Internet users worldwide is
predicted to reach 750 million by 2008. As many as 50 percents of Internet users are
predicted to be online shoppers. These companies are putting their effort towards
expanding operations and generating sales growth. It is believed that most of the major
e-commerce companies start to generate sizable profits in the year 2002 (Turban,
2000).

7
Online retail e-commerce is the fastest growing industry in retail based on
revenue, consumer base, and has increased the penetration of nonessential goods.
Nevertheless, online retailers will face difficult times due to the absence of profits at
the early stage of the project application. This issue is because it takes a long time to
attract a large number of shoppers. The business needs to charge a price that is high
enough to cover the costs of the goods and other expenses such as marketing and
system development, maintenance, and upgrades. It is important that the online retailer
persistence in its business. Many online merchants failed to be successful because they
gave up too early. Other reasons for the failures are due to the sellers setting the prices
for products to lower than the total cost of goods and operations, failed to develop an
efficient online retail system, or spent far too much on marketing.

Established business entities need to create an integrated shopping


environment that combines their catalogue, store, and online experience into one to be
successful. Established retailers have a significant accomplishment, inventory
management, supply chain management and other competencies that apply directly to
the online business. Although established businesses have moved online, their e-
commerce operation is not always profitable. To succeed online, established retailers
will need to extend their brands, encourage consumers to use the online channel, avoid
conflict and build partnerships with online portals such as AOL, Amazon, and Yahoo.

A couple of significant factors that help to foster loyalty and returning


customers are easy to use websites and simple information access. For example, if a
websites use too many graphics or have too unoptimized JavaScript on a web page,
then an impatient customer will leave the website and do their business on a
competitors websites. Websites should also be kept updated. A fresh look is always
an important factor in keeping people interested in returning to the sites. A new look
gives the opportunity for the business to showcase new products and keep the sites
interesting. It will also show the site is properly maintained and the company will
appear to be more reputable when the customer sees that there are upkeep and routine
maintenance being performed. Concerning effective web design, it should have the
characteristic of easy to navigate, clear visual presentation, functionality, and security.

8
A well-designed navigational system will not only inform website visitors of
where they may go but also where they are. An often-frustrating reality of the
hyperlinked state of the web is that the visitor will not always come to the website
through the front door. People often bookmark and link into pages several levels
deep into the site. Alternatively, they may enter from any individual page through a
search engine such as Google that could provide a direct link to the site.

One of the difficulties of navigating through a large site is keeping the


navigational cues intuitive with enough amount of information to the visitor. By
providing a comprehensive catalogue available to the visitors, they will always know
where to turn if they find themselves wanting to jump to a new area quickly. This
could easily be done by segregating the products and services by its categories. For
example, other large e-commerce businesses such as Amazon
(https://www.amazon.com), eBay (http://www.ebay.com), Lazada
(http://www.lazada.com.my), and Lelong (http://www.lelong.com.my) have a good
navigation system. They provide an easy to understand navigations to the internal
content their websites. Consequently, this exponentially increases the chances of
having the visitors find what they want and stick around to explore some more.

The visitor is more likely to access a navigational link if it is set apart from the
rest of the content. This method is frequently used by e-commerce website to highlight
discounts offers to improve its attraction of visitors. An effective visual presentation
does not just happen. It is a result of the designers decision about placing specific
elements on a page. No matter the medium of designs, be it a newsletter, an
advertisement, or a website, it is important to decide how to organise the graphics and
text to deliver the message in a logical and understandable manner.

There are a few characteristics that a website should have to achieve a unified
layout and structure. The characteristics include the visible unity, balance, focus,

9
achieving depth, consistency and so on. This feature can be found on Amazon, eBay,
Lazada, and Lelong websites, where they have a compelling and consistent visual
presentation. A modern website can contain hundreds of individual pages, with many
pages generated programmatically and designed to extract and display constantly
changing content. Besides, even the smallest of websites tend to include many internal
and external hyperlinks and elements.

However, e-commerce is not completely an improvement over the traditional


store. E-commerce is typically lacked human warmth and sociability since it is more
impersonal, anonymous and automated than traditional face-to-face business. These
features are required to impact consumer attitudes towards online shopping positively.
Higher levels of perceived social presence are shown to positively influence the
perceived usefulness, trust, and satisfaction of shopping websites, leading to more
favourable consumer attitudes.

The Internet is penetrating every aspect of our socio-economy that the


consumers have become more aware of the possible dangers of using this technology.
For example, computer virus and worms are capable of damaging digital files,
infecting another computer via emails, network, or a USB flash drive. This problem
forces additional efforts on the part of retailers to convince traditional consumers not
only to shop at the physical store but also to use the Internet for purchases and overall
information gathering. The loss of trust between consumers and web-enabled business
directly relates to the problem of Internet crime. This confidence is necessary not only
for the temporary but also for the lasting effectiveness of e-commerce as the other
choice for consumers to the traditional brick-and-mortar establishment. (Smith, 2004).

Online consumers are obviously concerned with the risks associated with
shopping online. Criminal activity has existed in the offline environment for business-
to-customer (B2C) interaction, but there is a general perception that customer is more
in control if there are less technology and more human-to-human interaction between
them and their business counterparts. Such risks probably are more of concern for

10
online consumers includes credit card fraud, not receiving the correct products or lack
of adequate return policies. These concerns have shown to have significant negative
impacts on consumer attitudes toward using the Internet to make purchases.
(Smith,2004).

However, in the online shop medium, the average customer expects faster
result because the Internet gives every appearance of being instantaneous. At the same
time, customers are concerned about security on the Internet and want assurance that
their identity and purchasing methods and other personal information during the
transaction are protected (Navarro, 2001). High-availability computing also requires a
security infrastructure for electronic commerce and electronic business. Large public
networks, including the Internet, are more vulnerable because they are virtually open
to anyone and they are so huge that when abuses do occur, they can have an
enormously widespread impact (Laudon & Laudon, 2004).

The security of electronic communication is a critical issue for companies


involved in e-commerce. It is essential that related data of the buyers and sellers be
kept private when they are transmitted electronically. The transmitted data must be
protected against alteration by someone other than the sender. Making sales in an
environment that protects both the business and the customers can be difficult. A
seamless shopping experience is the first sign of a successful ordering process. Some
form of security is required while dealing with customers credit card data. The
business could use a secure servers or payment alternatives such as PayPal.

It is hard to estimate the amount of e-commerce crime for a variety of reasons.


Even when online crimes are reported, it may be hard to quantify the losses incurred.
For instance, a recent survey of 538 security practitioners in U.S. corporations and
government agencies conducted by the Computer Security Institute reported that 85%
of the respondents had detected breaches of computer security within the last 12
months and that 64% acknowledged financial loss as a result. Only 35%, however,
were willing and or able to quantify their financial loss, which totalled $377 million in

11
the aggregate. The most severe losses involved theft of proprietary information and
financial fraud (Laudon & Traver, 2002).

Another source of data regarding computer crime that is particularly more


focused on consumers and e-commerce is the FBI Internet Froud Complaint Center
(IFFC). The IFCC has received over 15000 consumer complaints since May 2000, of
which approximately 4000 have been referred to law enforcement agencies. In e-
commerce crime, online credit card fraud is possibly the most high profile. Private
research firms estimate that total credit card fraud in the United States exceed $1.5
billion in 2000 and could reach $15 billion by 2003. (Laudon & Traver, 2002).

Every time a customer visits an online marketplace, they take risks that include
the loss of private information regarding the products that they purchased and in some
cases searched. The highest risk to the customers is that they are scammed by paying
for something but get counterfeit goods or even worse gets nothing in return. There
are even cases of stealing digital currency due to loss of private information.
Online merchants also run a risk that they do not get paid for what they sell.

E-commerce security consists on integrity, non-repudiation, authenticity,


privacy and availability. Integrity points to ensure that information disclosed on a
website, or submit or received over the Internet, has not been modified in any way by
an unauthorised party. Non-repudiation refers to the ability to ensure that e-commerce
participants do not deny their online actions. For instance, free e-mail accounts made
it easy for anyone to post comments or send a message and later denies any
involvement. Authenticity defines as the capacity to recognise the identity of a person
or entity on the Internet. Confidentiality pertains to the ability to guarantee that
message and data are accessible only to those who are authorised to observe them.
Privacy concerns to the facility to control the use of information a buyer provides
regarding the visitor to an e-commerce retailer. Availability refers to the capacity to
warrant that an e-commerce site continues to functions as intended. (Laudon & Traver,
2002).

12
Paypal is a payment gateway that is being used by thousands of online business.
Paypal accepts payment through credit and debit card. The Internet is rising as a new
marketing channel, so understanding the characteristics of online customers demands
and expectations is considered an essential for stimulating the consumer-oriented e-
commerce market.

13
CHAPTER 3
3. HARDWARE AND SOFTWARE

3.1 Hardware
Hardware is the physical facet of the computer, telecommunications, and other
information technology devices. The system requires a computer to work as a server.
The computer needs to be connected to the Internet. Clients could access the website
using any device with Internet connect and a web browser.

Hardware Component Specification


Processor Intel Core i5 6600 (3.3 GHz)
Motherboard ASUS Z170-Deluxe
DVD-ROM Drive ASUS DVD-RW Drive
RAM 8GB DDR4 2133MHz Memory
Display Card ASUS GT710 2G
Monitor DELL S2216H 21.5" 1920x1080 LED Backlit Screen
Hard Disk Western Digital 2TB Black Edition
Keyboard & Mouse Logitech G100S Combo
Internet Speed 30Mbps Bandwidth
Dedicated IP Address 1 x IPv4
Table 3.1 Server computer hardware specification

14
3.2 Software
Software or computer software is a collection of instructions which includes programs,
operating system, libraries, application interface, and so forth that instruct the
hardware on how it should perform, including operating system, word processors and
applications programs. The software used in this project:

Software Used Purpose


Microsoft Windows 7 The Operating System of the system.
Apache Apache is an HTTP server. It hosts the project files in a predefined
path so that it could access by a browser.
MySQL MySQL is a relational database management system (RDBMS). It
functions as the database of the system.
PHP PHP operates as the main server-side scripting language to create a
dynamic and interactive web page for iPlaza.
XAMPP XAMPP is a compilation of a set of software that normally used to
run or develop a web system. The installation of Apache, MySQL,
and PHP are included in XAMPP.
Git Git is a distributed version control system that is designed to use for
software development.
Sublime Text 3 Sublime Text 3 is an advanced text editor that is used to code the
system.
CodeIgniter 3.0 Codeigniter is a PHP framework which consists of multiple toolkit
and libraries to easily create a PHP website. Creating the project
using Codeigniter will ensure the security and reduction in time to
develop the project.
Smarty Template Smarty is a template engine for PHP. The main purpose of Smarty is
Engine to separate the PHP code from HTML markups cleanly. It is used to
complement the PHP code and not replace it. In the project, all
smarty template files are set to use *.tpl extension.

15
Software Used Purpose
Mozilla Firefox with Mozilla Firefox is a web browser that is primarily used as the testing
Firebug extension platform. Firebug is an extension of the browser which is designed
to help web developer designing a web page. Javascript and CSS are
also easier to debug by using the Firebug extension.
jQuery jQuery is small but feature-rich Javascript library. It made HTML
manipulation, event handling, animation, and AJAX request easier
to implement. It is also possible to use additional plugins with
jQuery.
Bootstrap 3 Bootstrap is a complimentary library that improves upon traditional
HTML, CSS, and Javascript. It makes certain interface item much
easier to create as some of its features consist of the grid system, pre-
designed forms, buttons, alerts, panels, modal, and so forth.
Font Awesome Font Awesome is actually a collection of scalable vector icons. For
example, there are icons for Facebook, Twitter, Google, or random
items such as pencil, close, plus, trash and so on.
Table 3.2 Essential software to develop iPlaza

16
CHAPTER 4
4. METHODOLOGY

4.1 Data Collection


Data collection is a term used to describe a process of preparing and gathering data.
The purpose of data collection is to gain information to keep on record, to make
decisions about important issues, to analyse the business requirements and possible
problems faced by the focused entity. Primarily, data is collected to deliver information
regarding a specific topic.

In this project, data is gathered to create an understanding of the system goals.


Three methods had been used to gather raw data of information: interviews,
questionnaires and review and research. These methods are necessary to provide
information and facts about the current business system. Moreover, the interview
allows the analyst to understand the current market situation and problems faced in
more detail.

4.1.1 Interview
The purpose of the interview was chosen as one of the data collection methods because
it saves time, an accurate and direct method to gather information related to the
proposed system. Interviewing the person who has experience or involves in the
related field could gather many relevant data to develop the system. Two formal
interviews were conducted to get the necessary information.

17
4.1.1.1 Interview 1:
Mr Patrick Ling Wang Ee, the owner of ESA Computer Engineering Sdn. Bhd. was
interviewed. He had explained his experience with online business. The documentation
of the interview is provided in Appendix A1.

Date: 12/10/2016
Place: The Coffee Code, Jalan Tun Abang Haji Openg, Sibu, Sarawak.
Time: 2.00pm
Interviewed Person: Mr Patrick Ling Wang Ee

4.1.1.2 Interview 2:
This interview is addressed to Mr Mohd Rahman bin Omar, the owner of the Ice Cold
Store. Mr Mohd Rahman states that he does have minimal experience in online
business. However, he did express that he is very interested in the idea. The
documentation of the interview is provided in Appendix A2.

Date: 13/10/2016
Place: Twelve Code, Chew Geok Lin, Sibu, Sarawak.
Time: 2.30pm
Interviewed Person: Mr Mohd Rahman bin Omar

18
4.1.2 Data Analysis from Interview
From the interview, it seems like business owners are fairly interested with e-
commerce. Their main concern is that the online business is particularly hard to set up.
The business owners wished that there be easy alternatives to software or system to
conduct online business. Most business owners are not familiar with technological
advancement. They have a harder time to adapt to the ever-changing style of how
business being conducted. The business owners must also understand that the system
requires a maturity period before the firm able to generate any profit. They need to
spend some level of effort and capital to promote the online business. In return, their
store will be indirectly promoted by the online store.

4.1.3 Questionnaires
A questionnaire is a research mechanism consisting of a series of questions and other
prompts for the purpose of collecting information from respondents. A questionnaire
is often the first tool that society consider when undertaking a research project. The
data collected is standardised and therefore, easy to analyse. Statistics can be collected
quickly from a large number of respondents. Respondents answer the questionnaires
anonymously which may produce more honest answers. 100 questionnaire forms had
been distributed for data gathering. The use of questionnaires is an information
gathering technique that allows system analyst to study attitudes, beliefs, behaviour
and characteristic of several samples of Internet users.

According to the data collected from 100 people, who consist of 50 students
and 50 other local Sibu residents. According to the questionnaires, 69 percent of the
respondents welcome an online shop system. It is encouraging to build the proposed
system. Questions of the questionnaire are provided in Appendix B. The sample
consisted of 41% male and 59% female, 46% are in age below 25, 43% are in age
between 26 to 45, and 11% are in age above 46 ( see Table 4.1). The following section
contains the analysis result from the data collected through the data collection methods
used.

19
Gender Age Group Total
Male Below 25 16
26 to 45 19
Above 46 6
Total 41
Female Below 25 30
26 to 45 24
Above 46 5
Total 59
Table 4.1 Respondents demographic profile

The study showed that there are a very high number of participants that has a
proper internet connection. Only 2 participants that state that they do not have Internet
connection. Most of the participant are also very active with their Internet usage. Their
consumption is mostly geared towards checking their emails at 79%, chatting at 75%,
socialising online at (70%), and watching video and searching for information both at
63%.

Participant's internet connection by age group


50
45
40
35
30
25
20
15
10
5
0
Below 25 26 to 45 Above 46 Below 25 26 to 45 Above 46
Has Internet No Internet

Figure 4.1 Participants Internet connection by age group

20
Frequency of browsing internet

Very frequently Frequently Sometimes Seldom Never

Figure 4.2 Frequency of browsing the Internet

Frequency of usage by type


None
Others
Chatting
Socializing online
Online shopping
Searching information
Watching video
Play online games
Checking e-mail

0 10 20 30 40 50 60 70 80 90

Figure 4.3 Frequency of usage by type

21
The acceptance towards online shopping seems to be relatively high. This can

be seen in Figure 4.4. Based on the data provided in Figure 4.3, there are 42% of the

participants that have previously conducted a purchase through an online shop. The

Figure 4.5 shows that there is a significant improvement over the acceptance towards

online store. 78% of the participants are more likely to purchase via an online e-

commerce website.

Participant's thoughts on online shopping


60

50

40

30

20

10

0
Excellent Good Average Poor Very Poor

Figure 4.4 Participants thoughts on online shopping

22
Participant's interest to purchase via online shop
in the future

Not Interested

Interested

0 10 20 30 40 50 60 70 80 90

Figure 4.5 Participants interest to purchase via online shop in the future

However, there are still huge issues regarding e-commerce that the participants

are concerned with. There are 93% of the participants that are very doubtful with the

security issues of the system. While 91% of the participants are having a lack of

confident with the online shopping system. There are still 61% of the participants that

does not have credit or debit card. As much as 46% of the participants are claiming

that they have no interaction with the seller.

23
Participant's Reasons for not being interested in
buying from an online shop

No interaction with the seller

Lack confident with online shopping

Do not have credit or debit card

Concern with security issue

0 20 40 60 80 100

Figure 4.6 Participants reasons for not being interested in buying from an
online shop

The participants were also asked to highlight the problems of purchasing from
Traditional Stores. The listed problems in the questionnaires seem to be relatively
close in their percentage. 56% of the participants are having a hard to find the products
that they want, 51% of the participants have no time to go the physical shop, 43% of
the participants have no direct delivery service and 48% of the participants finding it
hard to get a parking space.

Finally, the participants were requested to select features that they would like
to see in an online store. 77% of the participants wants fast delivery, 92% of the
participants prefer an easy and secure transaction, 70% of the participants would like
cheaper price, 76% of the participants needs more information, 75% of the participants
likes easy to use interface, and lastly, 93% of the participants needs assurance of
legitimacy.

24
Problems when purchasing from traditional
stores

Hard to get a parking space

No direct delivery service

No time to go to the shop

Lack of product information

Hard to find the product(s) that I want

0 10 20 30 40 50 60 70

Figure 4.7 Problems when purchasing from traditional stores

Features should be available in an online store

Assurance of legitimacy

Easy to use interface

Provide more information

Cheaper price

Easy and secure transaction

Fast delivery

0 20 40 60 80 100

Figure 4.8 Features should be available in an online store

25
4.1.4 Observations and Research Method
The review and research are mostly based on documentation that already exists such
as the reference books, websites, and CDs. All these books are put as part of the
research to get and to know any technical feasibility needed to build the whole system.
Detail research, especially on programming, was done in a direction to build
prototypes.

Also, research towards navigating available online e-commerce system had


been made as well to analyse how they build their online e-commerce system.
Observations on other samples can provide clear guidance on the design of the system
that will be developed. Comparison between each sample is also made to evaluate the
characteristics of system design, and then these features serve as a useful example in
the analysis and design phase.

This method is also used to study samples of the project that has been
developed by other individuals or organisations. The observations and research
method will provide guidance on how a system developer creates their inventory
system. Among the samples observed and referred includes:
PHP user manual - http://sg2.php.net/manual/en/langref.php
MySQL tutorial - https://www.tutorialspoint.com/mysql
Git tutorial - https://try.github.io/levels/1/challenges/1
Code Igniter user guide - http://www.codeigniter.com/user_guide
Smarty 3 manual - http://www.smarty.net/docs/en
jQuery API - http://api.jquery.com
Bootstrap documentation - http://getbootstrap.com/css
Font Awesome icon list - http://fontawesome.io/icons
Amazon - https://www.amazon.com
Ebay - http://www.ebay.com
Lazada - http://www.lazada.com.my
Lelong - http://www.lelong.com.my

26
CHAPTER 5
5. ANALYSIS AND DESIGN

5.1 Analysis
Analysis on a system can be considered as a process to study business or procedure to
identify its goals and purpose. Traditionally, the analysis also involved with the
application development process to recreate the system in the most efficient manner.
The analysis is done on the overall progress of the system including data gathering and
data processing. The system is analysed from time to time to find out the errors or
problems of the system. Errors or problems that are identified will be corrected and
fixed.

System analysis is the process of investigating a system, identification of


challenges, and using the information to recommend improvements to the system, the
dissection of a system into its component pieces and to study how those pieces interact
and work. These involve the survey and planning of the system and project. Analysis
phase also determines the requirements of the system. The requirements are based on
the needs of the clients or users. A feasibility study is performed based on the
requirements obtained.

5.1.1 Feasibility Studies


A feasibility study involves undertaking a comprehensive evaluation of a current
business problem or prospect, identifying the countless solution possibilities available
and determining the possibility of each alternative solution meeting a clients or a
customer's requirements (Westland, 2006). Feasibility studies include the research
whether the system can be developed or worth to be developed.

27
A project determined feasible at one point might become infeasible at a later
time in the life cycle. This study can save the business time and money on a project
that may not benefit the organisation. There are the three types of feasibility study
involved in this project namely, technical feasibility, economic feasibility, and
operational feasibility.

5.1.1.1 Technical Feasibility


Technical feasibility is an assessment to determine whether the firm has the skills to handle a
project to its completion based on an outline specification and system requirements. The
experts involved in the project must be able to analyse, design, code, install, operate, and
maintain the system. Assessment can be made on multiple factors. For example, current
knowledge and future technical solution, availability of skilled technical staff, and capacity
and capability of the proposed system to meet core and performance requirements.

The essential software used to code the project is Sublime Text 3. Sublime Text
3 is a rich text editor has better functionality compared to the regular notepad.
However, it does not have a built-in debugger or compiler. This is not a problem as
the code can easily be tested using any modern web browser, such as Mozilla Firefox.
The system also requires Apache as its web server software.

The main scripting language for the system is PHP but coding a system from
scratch is very time-consuming. Thus, a PHP framework Code Igniter is used to
simplify the process of programming. Code Igniter is designed with Model-View-
Controller or MVC architecture. The model especially used to manage a table in the
database. It comes with various benefits. For example, Code Igniter ensures that
database injection is prevented by using its active record. Active record is a feature of
Code Igniter that simplifies and securely cleans the input when the code access the
database. The controller is the core of the PHP code that calls the function within the
model and displays it in the view. Smarty template engine is implemented on top of
Code Igniters view to separate the PHP codes and HTML markups better.

28
JavaScript vital to show the user some level of interactivity. However, it is
pointless to use plain JavaScript for this purpose. To save time developing the system,
jQuery JavaScript library is implemented to the system. jQuery comes with various
API that simplifies the process to capture events such as button submit or AJAX call.
Another related library that was implemented is the Bootstrap. Bootstrap is an
enhancement to the standard HTML by adding a stylised CSS file and a comprehensive
JavaScript file. It comes with features such as grid system that organised HTMLs
<div> in a proper grid, standardised buttons, multiple colour scheme for various
HTML elements, and so forth.

5.1.1.2 Economic Feasibility


Economic analysis is an assessment to evaluate the effectiveness of the proposed
system to further enhanced the company economically. The procedure is to be
determining the benefits and savings that are expected from a candidate and compare
them with costs. If benefits overshadow costs, then the decision is made to design and
implement the system.

The proposed development project should be economically feasible and should


provide real value to the organisation. The benefits should outweigh the costs of
completing the project. The financial feasibility also includes the time, budget, and
staff resources used during all the stages of the project through completion. There is
also a concern of legality where the company may need to pay a certain amount of
capital to get licensed for certain rights.

In economic feasibility, the most important factor is a cost-benefit analysis. As


the name suggests, it is an analysis of the expenses to be incurred in the system and
benefits derivable out of the system. The cost of developing iPlaza is quite low. The
main server software that required to run the system is free to be used commercially.
This software is Apache web server software, PHP server-side scripting language, and
MySQL database. This software could be downloaded and installed easily using a third

29
party service from a non-profit organisation by the name of Apache Friends. This
organisation pre-compiled Apache, PHP, and MySQL into a single installation.

The supporting scripts of the development are also open source codes that are
freely available to the public. The supporting scripts are CodeIgniter framework,
Smarty template engine, jQuery javascript library, Bootstrap HTML, Javascript and
CSS framework, and Font Awesome. Git is also a freely available for the public use.
For the purpose of the project, a private git repository was registered on GitHub
(www.github.com) an online project host using it. The project is accessible using the
URL of www.github.com/hafizbistar/iplaza.

Other supporting software is the text editor and the FTP client. The text editor
used to develop the software is Sublime Text 3 which costs USD $70 or roughly RM
300. If the company would like to save this particular cost, the text editor could be
replaced with an alternative open source text editor named Notepad++. The FTP client
being used is called FileZilla FTP client. It is also a free and open source. The FTP
client is required to upload the files to the server. The last costs for the software are
the operating system of the server that would mount to RM 583.

Hardware Component Specification Costs (RM)


Processor Intel Core i5 6600 (3.3 GHz) 993
Motherboard ASUS Z170-K 635
DVD-ROM Drive ASUS DVD-RW Drive 63
RAM 8GB DDR4 2133MHz Memory 318
Display Card ASUS GT710 2G 219
Monitor DELL S2216H 21.5" 1920x1080 LED 589
Hard Disk Western Digital 2TB Black Edition 541
Keyboard & Mouse Logitech G100S Combo 159
Table 5.1 Server computer hardware costs

30
There are significant savings to the expenses due to the use of open source
codes. However, the hardware does not come for free. The cost of the hardware is
shown in the table above. The total expenses of the server computer based on the
specifications are RM 3517. Including the costs of the software, the initial total amount
is RM 4400. Finally, there is a monthly maintenance cost for the Internet. Unifi for
business provide the service of 30Mbps Internet bandwidth for RM 299 per month.

5.1.1.3 Operational Feasibility


Operational feasibility is a measure of how the proposed project could solve the
problems of the current system. It takes advantage of the opportunities identified
during the scope definition and determines its goals to satisfies the identified
requirements. The operational feasibility assessment concentrates on the degree to
which the proposed project fits into the existing business environment and objectives.

Desired operational goals must be provided during design and development to


ensure the success of the project. These include other factors such as reliability,
supportability, usability, sustainability, affordability and maintainability. The
proposed system may serve its intended purpose most effectively when its technical
and operating characteristics are engineered into the design. The proposed project is
beneficial only if it can be turned into information systems that meet the organisations
operating requirements.

31
5.1.1.3.1 Analysis on the existing system

Cash Register Receipt


Customer

Cash, Credit or Debit Card

Items to
Purchase

Get Money and


Pass Items Issue Reciept
Over Scanner
Amount
to be Paid
UPS Barcode
Items
Look Up in File Code and & Prices Calculate Total Cost
Price

Item Items,
Items
UPS Code Description Prices,
& Prices
and Prices Subtotals

D1 UPS Price File D2 Temporary Transaction File

Figure 5.1 Traditional Brick-and-Mortar Data Flow Diagram

The brick-and-mortar selling system that usually implemented by business is


not efficient. It is time-consuming and sometimes unmanageable. Sometimes the price
tag of some products are missing or barely readable. The customers are also required
to search for the product themselves. If they cannot find the product that they want,
they normally ask the staff for more information which will waste the customers time.
The staff sometimes does not know any information regarding the products which
repels the customers from buying the products.

32
5.2 Design
Designing is the most important phase of software development. It requires careful
planning and thinking on the part of the system designer. Designing software means
to plan how the various parts of the software are going to achieve the desired goal. It
should be done with paramount care because if the phase contains any error, then that
will affect the performance of the system. As a result, it may take further processing
time, more response time, extra coding workload, and so forth.

Software designs crucial to the software engineering process and is applied


regardless of the software process model that is used. After the system requirements
have been analysed and specified, software design is the first of the three technical
activities that are required to build the software. The three technical activities are
designing, coding and testing. Each activity transforms information in such a manner
that ultimately results in a good computer software.

5.2.1 Entity Relationship Diagram (ERD)


An entity-relationship diagram is a graphical depiction of an information system that
shows the relationships between entities within that system. Entities can be regard as
people, objects, places, or concepts. Each entity has its attributes that further define
the entity itself. This diagram is typically used to help define the business process and
act as the foundation for the creation of a relational database. There are a few types of
entity relationships namely, one to one (1:1), one to many (1:M), and many to many
(M:N).

Basic Entity Relationship

a. Entity Relationship between Customer and Accounts

1 1
Customer Has Accounts

Figure 5.2 Entity Relationship between Customer and Accounts

33
b. Entity Relationship between Administrator and Accounts

1 1
Administrator Has Accounts

Figure 5.3 Entity Relationship between Administrator and Accounts

c. Entity Relationship between Administrator and Products

1 M
Administrator Manages Products

Figure 5.4 Entity Relationship between Administrator and Products

d. Entity Relationship between Administrator and Images

1 M
Administrator Uploads Images

Figure 5.5 Entity Relationship between Administrator and Images

e. Entity Relationship between Products and Images

1 M
Products Has Images

Figure 5.6 Entity Relationship between Products and Images

f. Entity Relationship between Customer and Purchase Orders

1 M Purchase
Customer Places
Orders
Figure 5.7 Entity Relationship between Customer and Purchase Orders

34
g. Entity Relationship between Customer and Payment Gateway

1 M Payment
Customer Pays
Gateway
Figure 5.8 Entity Relationship between Customer and Payment Gateway

h. Entity Relationship between Administrator and Categories

1 M
Administrator Manages Categories

Figure 5.9 Entity Relationship between Administrator and Categories

i. Entity Relationship between Administrator and Brands

1 M
Administrator Manages Brands

Figure 5.10 Entity Relationship between Administrator and Brands

j. Entity Relationship between Administrator and Tax Codes

1 M
Administrator Manages Tax Codes

Figure 5.11 Entity Relationship between Administrator and Tax Codes

k. Entity Relationship between Products and Categories

1 1
Products Has Categories

Figure 5.12 Entity Relationship between Products and Categories

35
l. Entity Relationship between Products and Brands

1 1
Products Has Brands

Figure 5.13 Entity Relationship between Products and Brands

m. Entity Relationship between Products and Tax Codes

1 1
Products Has Tax Codes

Figure 5.14 Entity Relationship between Products and Tax Codes

n. Entity Relationship between Payment Gateway and Purchase Orders

Payment 1 Process 1 Purchase


Gateway Payments Orders
Figure 5.15 Entity Relationship between Payment Gateway and Purchase
Orders

o. Entity Relationship between Purchase Orders and Products

Purchase 1 M
Contains Products
Orders
Figure 5.16 Entity Relationship between Purchase Orders and Products

36
Entity Relationship Diagram

1 1
Customer Has Accounts Has Administrator
1 1
1
1 1
M
Places Pays Images Uploads

M M M
Purchase Payment
Has Manages
Orders Gateway
1 1 1
Process
M
Payments Products
M
1
1 M
Contains Has Categories

1 M
Brands

1 M
Tax Codes

Figure 5.17 Full System Entity Relationship Diagram

37
5.2.2 Data Flow Diagram (DFD)
A system typically has information flowing through it. The information is modified by
a series of processes within the system. A data flow diagram takes a business process
and activities and applies them in a clear representation of the flow of data from the
external entities into a single system by transferring and saving data from one process
to another. The system could be decomposed into subsystems, and each subsystem
can be further decomposed into lower-level subsystems. This subsystem represents a
process or activity in which data is processed.

Data flow diagrams can be drawn at any level. The highest level also referred
to as a context diagram as shown in Figure 5.18 with a massive central process that
incorporates everything inside the scope of the system. It shows how the system will
receive and send data to the external entities involved. The context diagram defines
the scope of the system as the border between what is in the system and what is outside
of it.

Next, a Level 0 diagram is plotted. This diagram focuses on the single process
that was depicted in the context diagram by zooming in on its contents and
demonstrates what it does in more detail. Because the process is simply expanding the
single process, the same outside entities remain. Every new process is given a number,
the importance of which will become clear. Figure 5.19 shows the Level 0 diagram for
the proposed system.

The next step in charting the data flow diagram is to show more details for any
process above that requires additional explanation. The numbers previously assigned
to processes are used to link them to their corresponding diagrams. These are called
Level 1 diagrams or child diagrams, with the 1 referring to how far into the system
the diagram is focused upon. This process of refinement is repeated until all details of
the system are properly described. More missing figures show all the child diagrams
of the iPlaza.

38
Figure 5.18 Context Diagram of iPlaza: Online E-Commerce System

39
Figure 5.19 Level-0 DFD of iPlaza: Online E-Commerce System

40
Figure 5.20 Level-1 DFD for Process 1.0 of iPlaza: Online E-Commerce System

Figure 5.21 Level-1 DFD for Process 2.0 of iPlaza: Online E-Commerce System

Figure 5.22 Level-1 DFD for Process 3.0 of iPlaza: Online E-Commerce System

41
Figure 5.23 Level-1 DFD for Process 4.0 of iPlaza: Online E-Commerce System

42
Figure 5.24 Level-1 DFD for Process 5.0 of iPlaza: Online E-Commerce System

43
Figure 5.25 Level-1 DFD for Process 6.0 of iPlaza: Online E-Commerce System

44
5.2.3 Data Dictionary
A data dictionary in computing terms is the basis of information in which the system
data is defined in a logical way. The data dictionary is the centralised and structured
source of information for business applications. The elements that make up a
dictionary are known as metadata. Metadata is the computing term for the data whose
function is to describe other data. The data of the dictionary is not the operational data
which tells a customer's address or an article price. However, it is a type of data that is
meant to define the semantic or syntactic properties of the operational data, such as the
type, length, and relationships (Hernandez, 2000).

When a type of data is defined in the dictionary, it is available to any program


or function module in the application. A change in the definition of a type of data in
the dictionary automatically affects any other data, module, function, or program
which has data or variables defined using that modified data type. This definition can
be quite useful when the developer needs to change all related data types, but at the
same time and for the same reason, he must be extremely careful not to negatively
affect the other system parts using those data types (Hernandez, 2000).

The primary advantage of creating an informative and well-designed data


dictionary is that it includes clarity on the rest of the database documentation. If a new
developer or administrator takes over the system, identifying table structures and types
would become easier. In scenarios concerning large databases, where it is not possible
for an administrator to remember specific bits of info about thousands of fields, a data
dictionary becomes an indispensable necessity.

45
5.2.3.1 Data Store
D1
Data Store Name Accounts
Description Stores user details for both the customers and administrators.
The accounts are distinguished by user_status
Data Element user_id, user_email, user_pass, user_salt, user_hash,
user_status, user_firstname, user_lastname, user_mphone,
user_hphone, user_bill_address, user_bill_city,
user_bill_postcode, user_bill_statecode,
user_bill_countrycode, user_ship_address, user_ship_city,
user_ship_postcode, user_ship_statecode,
user_ship_countrycode, user_register_date
Data Flow Input Basic Account Information, Account Information, Validation
Information, Admin Data
Data Flow Output Account Records, Admin Records
Table 5.2 Data Store D1

Data Structure for Data Store D1


Accounts = user_id, user_email, user_pass, user_salt, user_hash, user_status,
user_firstname, user_lastname, user_mphone, user_hphone,
user_bill_address, user_bill_city, user_bill_postcode,
user_bill_statecode, user_bill_countrycode, user_ship_address,
user_ship_city, user_ship_postcode, user_ship_statecode,
user_ship_countrycode, user_register_date
user_email = [Username + Domain]
user_status = [0 (normal user) | 1024 (administrator)]
user_mphone = [Service Code + Local Number]
user_hphone = [Area Code + Local Number]
user_bill_statecode = [KUL | LBN | PJY | JHR | KDH | KTN | MLK | NSN | PHG |
PRK | PLS | PNG | SBH | SRW | SGR | TRG]
user_bill_countrycode = [MY]

46
user_ship_statecode = [KUL | LBN | PJY | JHR | KDH | KTN | MLK | NSN | PHG |
PRK | PLS | PNG | SBH | SRW | SGR | TRG]
user_ship_countrycode = [MY]
user_register_date = [Year + Month + Day + Hour + Minute + Seconds]

D2
Data Store Name Orders
Description Stores orders details.
Data Element or_id, user_id, or_unique, or_ship_method, or_ship_track,
or_ship_fee, or_ship_status, or_payment_method,
or_payment_status, or_handling_fee, or_sub_total,
or_grand_total, or_order_status, or_datetime, oa_id, order_id,
oa_type, oa_firstname, oa_lastname, oa_address,
oa_postcode, oa_city, oa_statecode, oa_phone, oc_id,
order_id, oc_text, oc_poster, oc_datetime, op_id, order_id,
product_id, op_qty, op_current_price, op_sell_price,
op_tax_code, op_tax_amt, op_tax_rate, op_subtotal
Data Flow Input Orders ID, Orders Information
Data Flow Output Orders Records, Updated Orders Records
Table 5.3 Data Store D2

Data Structure for Data Store D2


Orders = or_id, user_id, or_unique, or_ship_method, or_ship_track, or_ship_fee,
or_ship_status, or_payment_method, or_payment_status, or_handling_fee,
or_sub_total, or_grand_total, or_order_status, or_datetime, oa_id,
order_id, oa_type, oa_firstname, oa_lastname, oa_address, oa_postcode,
oa_city, oa_statecode, oa_phone, oc_id, order_id, oc_text, oc_poster,
oc_datetime, op_id, order_id, product_id, op_qty, op_current_price,
op_sell_price, op_tax_code, op_tax_amt, op_tax_rate, op_subtotal
or_ship_status = [Processing | Delivered]
or_payment_status = [Pending | Paid]

47
or_order_status = [New | Completed | Cancelled | Rejected]
or_datetime = [Year + Month + Day + Hour + Minute + Seconds]
oc_datetime = [Year + Month + Day + Hour + Minute + Seconds]
oa_statecode = [KUL | LBN | PJY | JHR | KDH | KTN | MLK | NSN | PHG | PRK |
PLS | PNG | SBH | SRW | SGR | TRG]
oa_phone = [Area Code + Local Number]

D3
Data Store Name Products
Description Stores products details.
Data Element pdt_id, brand_id, category_id, tax_id, pdt_skucode,
pdt_name, pdt_short_desc, pdt_long_desc, pdt_buy_price,
pdt_sell_price, pdt_publish, pdt_condition, pdt_featured,
pdt_discount_rate, pdt_discount_startdate,
pdt_discount_enddate, pdt_date_add, pdt_date_upd
Data Flow Input Product ID, Product Information
Data Flow Output Product Records, Updated Product Records
Table 5.4 Data Store D3

Data Structure for Data Store D3


Products = pdt_id, brand_id, category_id, tax_id, pdt_skucode, pdt_name,
pdt_short_desc, pdt_long_desc, pdt_buy_price, pdt_sell_price,
pdt_publish, pdt_condition, pdt_featured, pdt_discount_rate,
pdt_discount_startdate, pdt_discount_enddate, pdt_date_add,
pdt_date_upd
pdt_publish = [Display | Hidden]
pdt_condition = [New | Used | Refurbished]
pdt_discount_startdate = [Year + Month + Day + Hour + Minute + Seconds]
pdt_discount_enddate = [Year + Month + Day + Hour + Minute + Seconds]
pdt_date_add = [Year + Month + Day + Hour + Minute + Seconds]
pdt_date_upd = [Year + Month + Day + Hour + Minute + Seconds]

48
D4
Data Store Name Categories
Description Stores categories detail to be used in conjuncture with
Products table. Joins with itself to get its child-parent
relationship.
Data Element cat_id, cat_name, cat_parent
Data Flow Input Categories ID, Categories Information
Data Flow Output Categories Records, Updated Categories Records
Table 5.5 Data Store D4

Data Structure for Data Store D4


Categories = cat_id, cat_name, cat_parent
cat_parent = [0 (no parent) | 1 | 2 | 3 ... n]

D5
Data Store Name Brands
Description Stores brands details to be used in conjuncture with Products
table. Joins with Image table to obtain the branding logo
Data Element br_id, br_name, image_id
Data Flow Input Brands ID, Brands Information
Data Flow Output Brands Records, Updated Brands Records
Table 5.6 Data Store D5

Data Structure for Data Store D5


Brands = br_id, br_name, image_id

49
D6
Data Store Name Tax_Codes
Description Stores tax codes details to be used in conjuncture with
Products table.
Data Element tc_id, tc_code, tc_desc, tc_rate
Data Flow Input Tax Codes ID, Tax Codes Information
Data Flow Output Tax Codes Records, Updated Tax Codes Records
Table 5.7 Data Store D6

Data Structure for Data Store D6


Tax_Codes = tc_id, tc_code, tc_desc, tc_rate
tc_rate = [0.00 1.00]

D7
Data Store Name Images
Description Stores images details to be used in conjuncture with Products
table and Brands table.
Data Element img_id, refer_type, refer_id, img_f_name, img_e_name,
img_filetype, img_size, img_width, img_height
Data Flow Input Images ID, Images Information
Data Flow Output Images Records, Updated Images Records
Table 5.8 Data Store D7

Data Structure for Data Store D7


Images = img_id, refer_type, refer_id, img_f_name, img_e_name, img_filetype,
img_size, img_width, img_height
refer_type = [1 | 2]

50
5.2.3.2 Data Flow DFD Level 0
Data Flow Basic Account Data
Description Basic Account Data that are required for account registration.
Source Customers
Destination Process 1.0 (Create Account)
Data Element user_id, user_email, user_pass, user_firstname,
user_lastname, user_mphone
Table 5.9 Data Flow Basic Account Data

Data Flow Register Information


Description The confirmation information that the register is either
successful or failure due to error.
Source Process 1.0 (Create Account)
Destination Customers
Data Element user_id, user_email, user_pass, user_firstname,
user_lastname, user_mphone
Table 5.10 Data Flow Register Information

Data Flow Account Data


Description Account Data that are required for account update.
Source Customers
Destination Process 2.0 (Update Account)
Data Element user_id, user_email, user_pass, user_status, user_firstname,
user_lastname, user_mphone, user_hphone,
user_bill_address, user_bill_city, user_bill_postcode,
user_bill_statecode, user_bill_countrycode,
user_ship_address, user_ship_city, user_ship_postcode,
user_ship_statecode, user_ship_countrycode,
user_register_date
Table 5.11 Data Flow - Account Data

51
Data Flow Update Information
Description The confirmation information that the update is either
successful or failure due to error.
Source Process 2.0 (Update Account)
Destination Customers
Data Element user_id, user_email, user_pass, user_status, user_firstname,
user_lastname, user_mphone, user_hphone,
user_bill_address, user_bill_city, user_bill_postcode,
user_bill_statecode, user_bill_countrycode,
user_ship_address, user_ship_city, user_ship_postcode,
user_ship_statecode, user_ship_countrycode,
user_register_date
Table 5.12 Data Flow Update Information

Data Flow Validation Data


Description Account Data that are required to validate the customers
account.
Source Customers
Destination Process 3.0 (Validate Account)
Data Element user_id, user_email, user_pass
Table 5.13 Data Flow Validation Data

Data Flow Validation Data


Description Account Data that are required to validate the administrator's
account.
Source Administrator
Destination Process 3.0 (Validate Account)
Data Element user_id, user_email, user_pass
Table 5.14 Data Flow Validation Data

52
Data Flow Customer Information
Description Customer Information.
Source Process 3.0 (Validate Account)
Destination Customer
Data Element user_id, user_email, user_pass, user_status, user_firstname,
user_lastname, user_mphone, user_hphone,
user_bill_address, user_bill_city, user_bill_postcode,
user_bill_statecode, user_bill_countrycode,
user_ship_address, user_ship_city, user_ship_postcode,
user_ship_statecode, user_ship_countrycode,
user_register_date
Table 5.15 Data Flow Account Information

Data Flow Administrator Information


Description Administrator Information.
Source Process 3.0 (Validate Account)
Destination Administrator
Data Element user_id, user_email, user_pass, user_status, user_firstname,
user_lastname
Table 5.16 Data Flow Administrator Information

Data Flow Product Purchase Data


Description The information that signifies the selected product and its
quantity which will be stored temporarily in the virtual cart.
Source Customer
Destination Process 4.0 (Purchase Product)
Data Element product_id, op_qty
Table 5.17 Data Flow Product Purchase Data

53
Data Flow Orders Confirmation Information
Description Confirms the customers with the purchase order.
Source Process 4.0 (Purchase Product)
Destination Customer
Data Element or_id, user_id, or_unique, or_ship_method, or_ship_track,
or_ship_fee, or_ship_status, or_payment_method,
or_payment_status, or_handling_fee, or_sub_total,
or_grand_total, or_order_status, or_datetime, oa_id, order_id,
oa_type, oa_firstname, oa_lastname, oa_address,
oa_postcode, oa_city, oa_statecode, oa_phone, oc_id,
order_id, oc_text, oc_poster, oc_datetime, op_id, order_id,
product_id, op_qty, op_current_price, op_sell_price,
op_tax_code, op_tax_amt, op_tax_rate, op_subtotal, pdt_id,
brand_id, category_id, tax_id, pdt_skucode, pdt_name,
pdt_short_desc, pdt_long_desc, pdt_buy_price,
pdt_sell_price, pdt_publish, pdt_condition, pdt_featured,
pdt_discount_rate, pdt_discount_startdate,
pdt_discount_enddate, pdt_date_add, pdt_date_upd
Table 5.18 Data Flow Orders Confirmation Information

Data Flow Orders Data


Description Other supporting information to complete purchase order.
Source Customer
Destination Process 4.0 (Purchase Product)
Data Element oa_id, oa_firstname, oa_lastname, oa_address, oa_postcode,
oa_city, oa_statecode, oa_phone, oc_text
Table 5.19 Data Flow Orders Data

54
Data Flow Payment Data
Description Other supporting information to complete purchase order.
Source Customer
Destination Process 4.0 (Purchase Product)
Data Element or_id, or_unique, user_email
Table 5.20 Data Flow Payment Data

Data Flow Orders Payment Information


Description The orders payment information.
Source Process 4.0 (Purchase Product)
Destination PayPal
Data Element or_id, user_email, or_ship_fee, or_handling_fee,
or_grand_total, op_sell_price, op_tax_amt, op_subtotal
Table 5.21 Data Flow Orders Payment Information

Data Flow Payment Confirmation Data


Description The orders payment information.
Source PayPal
Destination Process 4.0 (Purchase Product)
Data Element or_id, or_status, or_payment_status
Table 5.22 Data Flow Payment Confirmation Data

55
Data Flow New Business Data
Description The various information that is part of the main content of the
system.
Source Administrator
Destination Process 5.0 (Manage Business Information)
Data Element or_id, user_id, or_unique, or_ship_method, or_ship_track,
or_ship_fee, or_ship_status, or_payment_method,
or_payment_status, or_handling_fee, or_sub_total,
or_grand_total, or_order_status, or_datetime, oa_id, order_id,
oa_type, oa_firstname, oa_lastname, oa_address,
oa_postcode, oa_city, oa_statecode, oa_phone, oc_id,
order_id, oc_text, oc_poster, oc_datetime, op_id, order_id,
product_id, op_qty, op_current_price, op_sell_price,
op_tax_code, op_tax_amt, op_tax_rate, op_subtotal, pdt_id,
brand_id, category_id, tax_id, pdt_skucode, pdt_name,
pdt_short_desc, pdt_long_desc, pdt_buy_price,
pdt_sell_price, pdt_publish, pdt_condition, pdt_featured,
pdt_discount_rate, pdt_discount_startdate,
pdt_discount_enddate, pdt_date_add, pdt_date_upd,
cat_name, cat_parent, br_name, image_id, tc_code, tc_desc,
tc_rate, refer_type, refer_id, img_f_name, img_e_name,
img_filetype, img_size, img_width, img_height
Table 5.23 Data Flow New Business Information

56
Data Flow Updated Business Info
Description The confirmation of either the successful or failure action to
create, update, or remove the related business information.
Source Process 5.0 (Manage Business Information)
Destination Administrator
Data Element or_id, user_id, or_unique, or_ship_method, or_ship_track,
or_ship_fee, or_ship_status, or_payment_method,
or_payment_status, or_handling_fee, or_sub_total,
or_grand_total, or_order_status, or_datetime, oa_id, order_id,
oa_type, oa_firstname, oa_lastname, oa_address,
oa_postcode, oa_city, oa_statecode, oa_phone, oc_id,
order_id, oc_text, oc_poster, oc_datetime, op_id, order_id,
product_id, op_qty, op_current_price, op_sell_price,
op_tax_code, op_tax_amt, op_tax_rate, op_subtotal, pdt_id,
brand_id, category_id, tax_id, pdt_skucode, pdt_name,
pdt_short_desc, pdt_long_desc, pdt_buy_price,
pdt_sell_price, pdt_publish, pdt_condition, pdt_featured,
pdt_discount_rate, pdt_discount_startdate,
pdt_discount_enddate, pdt_date_add, pdt_date_upd,
cat_name, cat_parent, br_name, image_id, tc_code, tc_desc,
tc_rate, refer_type, refer_id, img_f_name, img_e_name,
img_filetype, img_size, img_width, img_height
Table 5.24 Data Flow Updated Business Info

57
Data Flow Business Data
Description Business Information that is used to filter all available data
into its parts using specific divider or separator.
Source Customer
Destination Process 6.0 (Display Business Information)
Data Element user_id, br_id, cat_id, tc_id, refer_type, refer_id, img_id
Table 5.25 Data Flow Business Data

Data Flow Business Information


Description The business details.
Source Process 6.0 (Display Business Information)
Destination Customer
Data Element or_id, user_id, or_unique, or_ship_method, or_ship_track,
or_ship_fee, or_ship_status, or_payment_method,
or_payment_status, or_handling_fee, or_sub_total,
or_grand_total, or_order_status, or_datetime, oa_id, order_id,
oa_type, oa_firstname, oa_lastname, oa_address,
oa_postcode, oa_city, oa_statecode, oa_phone, oc_id,
order_id, oc_text, oc_poster, oc_datetime, op_id, order_id,
product_id, op_qty, op_current_price, op_sell_price,
op_tax_code, op_tax_amt, op_tax_rate, op_subtotal, pdt_id,
brand_id, category_id, tax_id, pdt_skucode, pdt_name,
pdt_short_desc, pdt_long_desc, pdt_buy_price,
pdt_sell_price, pdt_publish, pdt_condition, pdt_featured,
pdt_discount_rate, pdt_discount_startdate,
pdt_discount_enddate, pdt_date_add, pdt_date_upd,
cat_name, cat_parent, br_name, image_id, tc_code, tc_desc,
tc_rate, refer_type, refer_id, img_f_name, img_e_name,
img_filetype, img_size, img_width, img_height
Table 5.26 Data Flow Business Information

58
5.2.3.3 Data Process
Process Name Process 0 ( iPlaza: Online E-Commerce System)
Description This is the major process where the customer makes their
online purchase. This process also involves an Administrator
and PayPal role.
Data Flow Input Product Purchase Data, Orders Data, Payment Data, Validation
Data, Basic Account Data, Account Data, Business Data, New
Business Data, Payment Confirmation Data
Data Flow Output Account Information, Orders Confirmation Information,
Business Information, Update Information, Register
Information, Updated Business Information, Payment
Information
Table 5.27 Data Process for Context Diagram

Process Name Process 1 ( Create Account)


Description This process validates the data provided by the customers and
stores the data into the database.
Data Flow Input Basic Account Data
Data Flow Output Register Information, Basic Account Information
Table 5.28 Data Process for Process 1.0

Process Name Process 2 (Update Account)


Description This process validates the data provided by the customers,
updates the changes to customers account into the database.
Data Flow Input Account Data
Data Flow Output Update Information, Account Information
Table 5.29 Data Process for Process 2.0

59
Process Name Process 3 (Validate Account)
Description This process cross checks the customers authentication
information with the information within the database.
Data Flow Input Validation Data, Account Records
Data Flow Output Customers Information, Administrator Information, Validation
Information
Table 5.30 Data Process for Process 3.0

Process Name Process 4 (Purchase Product)


Description This is the core process of the system. This process adds
products to the virtual cart, processes the virtual cart items,
calculates the prices, send the data to PayPal, and receive the
PayPal payment confirmation.
Data Flow Input Product Purchase Data, Orders Data, Payment data, Orders
Records, Payment Confirmation Data
Data Flow Output Orders Confirmation Information, Orders Information, Orders
Payment Information
Table 5.31 Data Process for Process 4.0

Process Name Process 5 (Manage Business Information)


Description This process handles the Administration pages. It is used to
manage the business information of the system.
Data Flow Input New Business Data, Updated Orders Records, Updated Tax
Codes Records, Updated Brands Records, Updated Categories
Records, Updated Products Records, Updated Images Records
Data Flow Output Updated Business Info, Orders Information, Tax Codes
Information, Brands Information, Categories Information,
Products Information, Images Information
Table 5.32 Data Process for Process 5.0

60
Process Name Process 6 (Display Business Information)
Description This process handles the other pages. It is used to display the
business information of the system.
Data Flow Input Business Data, Orders Records, Tax Codes Records, Brands
Records, Categories Records, Products Records, Images
Records
Data Flow Output Business Information, Orders ID, Tax Codes ID, Brands ID,
Categories ID, Products ID, Images ID
Table 5.33 Data Process for Process 6.0

5.2.3.4 Data Elements


Data Element Name user_id
Description Accounts identity number.
Data Type Int
Data Size 11
Format XXXXXXXXXXX
Encoding X : Integer
Table 5.34 Data Element user_id

Data Element Name user_email


Description Accounts Email Address.
Data Type Varchar
Data Size 50
Format username@domain.com
Encoding -
Table 5.35 Data Element user_email

61
Data Element Name user_pass
Description Accounts password.
Data Type Varchar
Data Size 50
Format Character
Encoding -
Table 5.36 Data Element user_pass

Data Element Name user_salt


Description Accounts password generated salt which is used to obscure
the password even further.
Data Type Varchar
Data Size 50
Format Character
Encoding -
Table 5.37 Data Element user_salt

Data Element Name user_hash


Description Accounts password generated hash which is used as the
login session information.
Data Type Varchar
Data Size 50
Format Character
Encoding -
Table 5.38 Data Element user_hash

62
Data Element Name user_status
Description This data element sets the accounts role.
Data Type Int
Data Size 11
Format 0 or 1024
Encoding -
Table 5.39 Data Element user_status

Data Element Name user_firstname


Description Accounts first name.
Data Type Varchar
Data Size 15
Format Character
Encoding -
Table 5.40 Data Element user_firstname

Data Element Name user_lastname


Description Accounts last name.
Data Type Varchar
Data Size 15
Format Character
Encoding -
Table 5.41 Data Element user_lastname

63
Data Element Name user_mphone
Description Accounts mobile phone number.
Data Type Int
Data Size 16
Format XXXXXXXXXXXXXXXX
Encoding X : integer
Table 5.42 Data Element user_mphone

Data Element Name user_hphone


Description Accounts home phone number.
Data Type Int
Data Size 16
Format XXXXXXXXXXXXXXXX
Encoding X : integer
Table 5.43 Data Element user_hphone

Data Element Name user_bill_address


Description Accounts billing address.
Data Type Varchar
Data Size 255
Format Characters
Encoding -
Table 5.44 Data Element user_bill_address

64
Data Element Name user_bill_city
Description Accounts billing city.
Data Type Varchar
Data Size 20
Format Characters
Encoding -
Table 5.45 Data Element user_bill_city

Data Element Name user_bill_postcode


Description Accounts billing postcode.
Data Type Int
Data Size 7
Format XXXXXXX
Encoding X : Integer
Table 5.46 Data Element user_bill_postcode

Data Element Name user_bill_statecode


Description Accounts billing state in the form of code.
Data Type Varchar
Data Size 3
Format Character
Encoding -
Table 5.47 Data Element user_bill_statecode

65
Data Element Name user_bill_countrycode
Description Accounts billing country in the form of code.
Data Type Varchar
Data Size 3
Format Character
Encoding -
Table 5.48 Data Element user_bill_countrycode

Data Element Name user_ship_address


Description Accounts shipping address.
Data Type Varchar
Data Size 255
Format Characters
Encoding -
Table 5.49 Data Element user_ship_address

Data Element Name user_ship_city


Description Accounts shipping city.
Data Type Varchar
Data Size 20
Format Characters
Encoding -
Table 5.50 Data Element user_ship_city

66
Data Element Name user_ship_postcode
Description Accounts shipping postcode.
Data Type Int
Data Size 7
Format XXXXXXX
Encoding X : Integer
Table 5.51 Data Element user_ship_postcode

Data Element Name user_ship_statecode


Description Accounts shipping state in the form of code.
Data Type Varchar
Data Size 3
Format Character
Encoding -
Table 5.52 Data Element user_ship_statecode

Data Element Name user_ship_countrycode


Description Accounts shipping country in the form of code.
Data Type Varchar
Data Size 3
Format Character
Encoding -
Table 5.53 Data Element user_ship_countrycode

67
Data Element Name user_register_date
Description The date and time when the account was registered.
Data Type DateTime
Data Size -
Format Y-m-d H:i:s
Encoding Y : year
m : month
d : day
h : hour
i : minute
s : second
Table 5.54 Data Element user_register_date

Data Element Name or_id


Description Orders identity number
Data Type Int
Data Size 11
Format XXXXXXXXXXX
Encoding X : Integer
Table 5.55 Data Element or_id

Data Element Name or_unique


Description The orders invoice number
Data Type Varchar
Data Size 15
Format Z-XXXXXX
Encoding Z : Company prefix identifier
X : Integer
Table 5.56 Data Element or_unique

68
Data Element Name or_ship_track
Description The orders courier tracking number
Data Type Varchar
Data Size 50
Format Characters
Encoding -
Table 5.57 Data Element or_ship_track

Data Element Name or_ship_fee


Description The orders courier fees
Data Type Decimal
Data Size 10,2
Format XXXXXXXXXX.XX
Encoding X : Integer
Table 5.58 Data Element or_ship_fee

Data Element Name or_ship_status


Description The orders shipping status
Data Type Varchar
Data Size 15
Format Character
Encoding -
Table 5.59 Data Element or_ship_status

69
Data Element Name or_payment_status
Description The orders payment status
Data Type Varchar
Data Size 15
Format Character
Encoding -
Table 5.60 Data Element or_payment_status

Data Element Name or_handling_fee


Description The orders handling charges
Data Type Decimal
Data Size 10,2
Format XXXXXXXXXX.XX
Encoding X : Integer
Table 5.61 Data Element or_handling_fee

Data Element Name or_handling_fee


Description The orders handling charges
Data Type Decimal
Data Size 10,2
Format XXXXXXXXXX.XX
Encoding X : Integer
Table 5.62 Data Element or_handling_fee

70
Data Element Name or_sub_total
Description The orders total of the price without the handling, tax, and
shipping charges.
Data Type Decimal
Data Size 10,2
Format XXXXXXXXXX.XX
Encoding X : Integer
Table 5.63 Data Element or_sub_total

Data Element Name or_sub_total


Description The orders total of the price including the handling, tax, and
shipping charges.
Data Type Decimal
Data Size 10,2
Format XXXXXXXXXX.XX
Encoding X : Integer
Table 5.64 Data Element or_grand_total

Data Element Name or_order_status


Description The orders status
Data Type Varchar
Data Size 15
Format Character
Encoding -
Table 5.65 Data Element or_order_status

71
Data Element Name or_datetime
Description The date and time when the orders were placed
Data Type DateTime
Data Size -
Format Y-m-d H:i:s
Encoding Y : year
m : month
d : day
h : hour
i : minute
s : second
Table 5.66 Data Element - or_datetime

Data Element Name oa_id


Description The orders address identify number
Data Type Int
Data Size 11
Format XXXXXXXXXXX
Encoding X : Integer
Table 5.67 Data Element oa_id

72
Data Element Name oa_type
Description The orders address type
Data Type TinyInt
Data Size 4
Format X
Encoding X : Integer
0 = none
1 = shipping
2 = billing
3 = shipping and billing
Table 5.68 Data Element oa_type

Data Element Name oa_firstname


Description The customers first name for the order.
Data Type Varchar
Data Size 15
Format Character
Encoding -
Table 5.69 Data Element oa_firstname

Data Element Name oa_lastname


Description The customers last name for the order.
Data Type Varchar
Data Size 15
Format Character
Encoding -
Table 5.70 Data Element oa_lastname

73
Data Element Name oa_address
Description The customers current address for the order.
Data Type Varchar
Data Size 255
Format Character
Encoding -
Table 5.71 Data Element oa_address

Data Element Name oa_postcode


Description The customers current postcode for the order.
Data Type Int
Data Size 7
Format XXXXXXX
Encoding X : Integer
Table 5.72 Data Element oa_postcode

Data Element Name oa_city


Description The customers current city for the order.
Data Type Varchar
Data Size 20
Format Character
Encoding -
Table 5.73 Data Element oa_city

74
Data Element Name oa_statecode
Description The customers current state code for the order.
Data Type Varchar
Data Size 3
Format Character
Encoding -
Table 5.74 Data Element or_statecode

Data Element Name oa_phone


Description The customers current phone for the order.
Data Type Int
Data Size 16
Format XXXXXXXXXXX
Encoding X : integer
Table 5.75 Data Element or_phone

Data Element Name oc_id


Description The orders comments identify number.
Data Type Int
Data Size 11
Format XXXXXXXXXXX
Encoding X : integer
Table 5.76 Data Element oc_id

75
Data Element Name oc_text
Description The comment messages.
Data Type Text
Data Size 65535
Format Character
Encoding -
Table 5.77 Data Element oc_text

Data Element Name oc_poster


Description The comment posters ID.
Data Type Int
Data Size 11
Format XXXXXXXXXXX
Encoding X : integer
Table 5.78 Data Element oc_poster

Data Element Name oc_datetime


Description The comment posted datetime.
Data Type DateTime
Data Size -
Format Y-m-d H:i:s
Encoding Y : year
m : month
d : day
h : hour
i : minute
s : second
Table 5.79 Data Element oc_datetime

76
Data Element Name op_id
Description The orders product identity number.
Data Type Int
Data Size 11
Format XXXXXXXXXXX
Encoding X : integer
Table 5.80 Data Element op_id

Data Element Name order_id


Description The orders identify number.
Data Type Int
Data Size 11
Format XXXXXXXXXXX
Encoding X : integer
Table 5.81 Data Element order_id

Data Element Name product_id


Description The product identity number.
Data Type Int
Data Size 11
Format XXXXXXXXXXX
Encoding X : integer
Table 5.82 Data Element product_id

77
Data Element Name op_qty
Description The orders products quantity.
Data Type Int
Data Size 11
Format XXXXXXXXXXX
Encoding X : integer
Table 5.83 Data Element op_qty

Data Element Name op_current_price


Description The orders products actual price.
Data Type Decimal
Data Size 10,2
Format XXXXXXXXXX.XX
Encoding X : Integer
Table 5.84 Data Element op_current_price

Data Element Name op_sell_price


Description The orders products selling price.
Data Type Decimal
Data Size 10,2
Format XXXXXXXXXX.XX
Encoding X : Integer
Table 5.85 Data Element op_sell_price

78
Data Element Name op_tax_code
Description The orders products tax code.
Data Type Varchar
Data Size 5
Format Characters
Encoding -
Table 5.86 Data Element op_tax_code

Data Element Name op_tax_amt


Description The orders products tax amount.
Data Type Decimal
Data Size 10,2
Format XXXXXXXXXX.XX
Encoding X : Integer
Table 5.87 Data Element op_tax_amt

Data Element Name op_tax_rate


Description The orders products tax rate.
Data Type Decimal
Data Size 10,2
Format XXXXXXXXXX.XX
Encoding X : Integer
Table 5.88 Data Element op_tax_rate

79
Data Element Name op_subtotal
Description The orders products total price.
Data Type Decimal
Data Size 10,2
Format XXXXXXXXXX.XX
Encoding X : Integer
Table 5.89 Data Element op_subtotal

Data Element Name pdt_id


Description The products identity number.
Data Type Int
Data Size 11
Format XXXXXXXXXXX
Encoding X : Integer
Table 5.90 Data Element pdt_id

Data Element Name brand_id


Description The products brand id.
Data Type Int
Data Size 11
Format XXXXXXXXXXX
Encoding X : Integer
Table 5.91 Data Element brand_id

80
Data Element Name category_id
Description The products category id.
Data Type Int
Data Size 11
Format XXXXXXXXXXX
Encoding X : Integer
Table 5.92 Data Element category_id

Data Element Name tax_id


Description The products tax code id.
Data Type Int
Data Size 11
Format XXXXXXXXXXX
Encoding X : Integer
Table 5.93 Data Element tax_id

Data Element Name pdt_skucode


Description The products SKU or Stock Keeping Unit code.
Data Type Varchar
Data Size 50
Format Character
Encoding -
Table 5.94 Data Element pdt_skucode

81
Data Element Name pdt_name
Description The products name.
Data Type Varchar
Data Size 15
Format Character
Encoding -
Table 5.95 Data Element pdt_name

Data Element Name pdt_short_desc


Description The products short descriptions.
Data Type Text
Data Size 65535
Format Characters
Encoding -
Table 5.96 Data Element pdt_short_desc

Data Element Name pdt_long_desc


Description The products detailed descriptions.
Data Type Text
Data Size 65535
Format Characters
Encoding -
Table 5.97 Data Element pdt_long_desc

82
Data Element Name pdt_buy_price
Description The products costs.
Data Type Decimal
Data Size 10,2
Format XXXXXXXXXX.XX
Encoding X : Integer
Table 5.98 Data Element pdt_buy_price

Data Element Name pdt_sell_price


Description The products selling price.
Data Type Decimal
Data Size 10,2
Format XXXXXXXXXX.XX
Encoding X : Integer
Table 5.99 Data Element pdt_sell_price

Data Element Name pdt_publish


Description The products publishing status.
Data Type TinyInt
Data Size 4
Format X
Encoding X : integer
0 = display
1 = hidden
Table 5.100 Data Element pdt_publish

83
Data Element Name pdt_condition
Description The products condition.
Data Type TinyInt
Data Size 4
Format X
Encoding X : integer
0 = new
1 = used
2 = refurbished
Table 5.101 Data Element pdt_condition

Data Element Name pdt_discount_rate


Description The products discount rate.
Data Type Decimal
Data Size 10,2
Format XXXXXXXXXX.XX
Encoding X : Integer
Table 5.102 Data Element pdt_discount_rate

84
Data Element Name pdt_discount_startdate
Description The products discounts start date.
Data Type DateTime
Data Size -
Format Y-m-d H:i:s
Encoding Y : year
m : month
d : day
h : hour
i : minute
s : second
Table 5.103 Data Element pdt_discount_startdate

Data Element Name pdt_discount_enddate


Description The products discounts end date.
Data Type DateTime
Data Size -
Format Y-m-d H:i:s
Encoding Y : year
m : month
d : day
h : hour
i : minute
s : second
Table 5.104 Data Element pdt_discount_enddate

85
Data Element Name pdt_date_add
Description The products date and time the product added to the
database.
Data Type DateTime
Data Size -
Format Y-m-d H:i:s
Encoding Y : year
m : month
d : day
h : hour
i : minute
s : second
Table 5.105 Data Element pdt_date_add

Data Element Name pdt_date_upd


Description The products date and time the product last updated.
Data Type DateTime
Data Size -
Format Y-m-d H:i:s
Encoding Y : year
m : month
d : day
h : hour
i : minute
s : second
Table 5.106 Data Element pdt_date_upd

86
Data Element Name cat_id
Description The category identity number.
Data Type Int
Data Size 11
Format XXXXXXXXXXX
Encoding X : Integer
Table 5.107 Data Element cat_id

Data Element Name cat_name


Description The categorys name.
Data Type Varchar
Data Size 50
Format Characters
Encoding -
Table 5.108 Data Element cat_name

Data Element Name cat_parent


Description The categorys parent cat_id.
Data Type Int
Data Size 11
Format XXXXXXXXXXX
Encoding X : Integer
Table 5.109 Data Element cat_parent

87
Data Element Name br_id
Description The brandss identity number.
Data Type Int
Data Size 11
Format XXXXXXXXXXX
Encoding X : Integer
Table 5.110 Data Element br_id

Data Element Name br_name


Description The brands name.
Data Type Varchar
Data Size 25
Format Characters
Encoding -
Table 5.111 Data Element br_name

Data Element Name image_id


Description The brands image ID.
Data Type Int
Data Size 11
Format XXXXXXXXXXX
Encoding X : Integer
Table 5.112 Data Element image_id

88
Data Element Name tc_id
Description The tax codes identity number.
Data Type Int
Data Size 11
Format XXXXXXXXXXX
Encoding X : Integer
Table 5.113 Data Element tc_id

Data Element Name tc_code


Description The tax code mapping for GST related transactions.
Data Type Varchar
Data Size 8
Format Characters
Encoding -
Table 5.114 Data Element tc_code

Data Element Name tc_desc


Description The tax codes descriptions.
Data Type Text
Data Size 65535
Format Characters
Encoding -
Table 5.115 Data Element tc_desc

89
Data Element Name tc_rate
Description The tax codes rate.
Data Type Decimal
Data Size 3,2
Format XXXXXXXXXX.XX
Encoding X : Integer
Table 5.116 Data Element tc_rate

Data Element Name img_id


Description The images identity number.
Data Type Int
Data Size 11
Format XXXXXXXXXXX
Encoding X : Integer
Table 5.117 Data Element img_id

Data Element Name refer_type


Description The images link type.
Data Type TinyInt
Data Size 4
Format X
Encoding X : Integer
1 : Brands logo
2 : Products images
Table 5.118 Data Element refer_type

90
Data Element Name refer_id
Description The images link ID based on the refer type.
Data Type Int
Data Size 11
Format XXXXXXXXXXX
Encoding X : Integer
Table 5.119 Data Element refer_id

Data Element Name img_f_name


Description The images file name.
Data Type Varchar
Data Size 50
Format Characters
Encoding -
Table 5.120 Data Element - img_f_name

Data Element Name img_e_name


Description The images encrypted name.
Data Type Varchar
Data Size 50
Format Characters
Encoding -
Table 5.121 Data Element - img_e_name

91
Data Element Name img_filetype
Description The imagess file type.
Data Type Varchar
Data Size 5
Format [dot]XXXX
Encoding [dot] : .
X : any alphabetical characters
Table 5.122 Data Element - img_filetype

Data Element Name img_size


Description The images file size in kilobytes.
Data Type Decimal
Data Size 10,4
Format XXXXXXXXXX.XX
Encoding X : Integer
Table 5.123 Data Element img_size

Data Element Name img_width


Description The images width in pixel.
Data Type Int
Data Size 11
Format XXXXXXXXXXX
Encoding X : Integer
Table 5.124 Data Element img_width

92
Data Element Name img_height
Description The images width in pixel.
Data Type Int
Data Size 11
Format XXXXXXXXXXX
Encoding X : Integer
Table 5.125 Data Element img_height

93
6. IMPLEMENTATION

6.1 User Interface Development


Studying the traditional waterfall approach to software development shows that the
design and development are used in a broader term that incorporates interface design
within the development process. However, the traditional waterfall model does not
represent the interface design as a process even though in reality it is. Nevertheless,
interactivity for interface design is a norm and must be part of the process. The
difficulty is designing a system that can be ready for an audience to embrace. The
audience can be a client for which the software is being developed for or a target
market for which the product to be adopted. Nevertheless, the system developer does
not know how the user of such system will react to it. With that in mind, designers
must develop a system that reflects the needs of the intended client or the target market
while improving the acceptability of the system.

PHP is a server-side scripting language. It generates contents of a web page


based on information within the database. It is important to use other aspects of the
web design such as Cascading Style Sheets (CSS), JavaScript, Hyper Text Markup
Language (HTML), images, and templates to create a satisfactory Graphical User
Interface (GUI). A template named Market Shop was purchased and implemented to
the system to speed up the development process. The template applies the usage of
Bootstrap 3.0 is as the base CSS. The JavaScript library implemented into the template
is jQuery. jQuery is an important factor to improve the User Experience (UX) of the
system. This library helps to improve the UX by the various animations and effects
upon the users interaction with the system.

94
6.1.1 Module 1: iPlaza Online E-Commerce System

Figure 6.1 Home page of iPlaza: Online E-Commerce System

95
This image is the main page for the system. The customers can browse for the products
that they want to be sorted by categories or brands. They could also register or login
to the system. The page also includes a few widgets that show the special discounts,
featured and latest products. This widget is shown in most of the pages within the
system.

Figure 6.2 Register page of iPlaza: Online E-Commerce System

96
Figure 6.3 Login page of iPlaza: Online E-Commerce System

Figure 6.2 displays the page where the customer could register with the system. The
client is required to fill in some of their personal details to register. A returning
customer can login using the login form as shown in Figure 6.3. A link to the register
page is also provided on this page. The page illustrated in Figure 6.4 provides the
customer with the option to update their personal information. There are more personal
details on this page compared to the register page.

97
Figure 6.4 Customers account page of iPlaza: Online E-Commerce System

98
Figure 6.5 Products list by Clothing categories page of iPlaza: Online E-
Commerce System

99
Figure 6.5 shows the list of goods within the clothing category. There is also an option
to view the products within a sub-category.

Figure 6.6 Brands list page of iPlaza: Online E-Commerce System

100
Figure 6.7 Products list by Reverieuomo brands page of iPlaza: Online E-
Commerce System

Figure 6.7 shows the list of products within the Reverieumono brands. The brand lists
are presented in Figure 6.7Figure 6.6. Figure 6.8 shows the details of a floral linen
long sleeve short mini dress product. This page features an image gallery of the
product, descriptions, pricing details, and other information such as the category and
brands of the product. The pricing details also show the amount of discounts by
percentage, original price, and discounted price. The Figure 6.9 shows the page
responding to the customers interaction to add a product to the virtual cart.

101
Figure 6.8 Detailed product page of iPlaza: Online E-Commerce System

102
Figure 6.9 Adding product to the cart

Figure 6.10 Checkout page login or register notification

The system requires the customers to login or register before purchasing any product.
This is displayed by notification on the checkout page as shown in Figure 6.10. The
Figure 6.11 shows the complete checkout page. The customer can update any
necessary personal information and the quantity of the purchased products. They could
also send a comment regarding the purchase for any specific request. The checkout

103
process will only proceed if the user accepts the terms and agreement of the system
and the information provided are validated.

Figure 6.11 Checkout page of iPlaza: Online E-Commerce System

104
Figure 6.12 PayPals Credit and debit card payment options

105
Figure 6.13 Pay using a PayPal account

Figure 6.14 Review and confirm payment information

106
Figure 6.15 Confirmation of payment by PayPal

Figures 6.12, 6.13, 6.14, and 6.15 shows the pages from PayPal. The Figure 6.12 is a
form that can need to be fill if the customer wants to pay using Credit or Debit card.
The Figure 6.13 is a login form for PayPal account. This method requires the PayPal
account owners to have enough account balance in their PayPal account initially. The
Figure 6.14 is a review page that displays the information that the user has entered
previously. It also acts as a confirmation that the customers want to pay for the product.
The Figure 6.15 shows that PayPal has accepted the payment process.

107
Figure 6.16 Order Information page of iPlaza: Online E-Commerce System

The Figure 6.16 shows the customers order information. It consists of the payment
status, shipping status, addresses, products, and prices. On the right panel, there is a
link to the order history.

108
Figure 6.17 Order history page of iPlaza: Online E-Commerce System

The Figure 6.17 lists out a table of previous orders of the customer. This orders shown
here is only by the current logged-in customer. The Figures 6.18, 6.19, 6.20, and 6.21
are the support pages of the system.

109
Figure 6.18 Terms and Condition page of iPlaza: Online E-Commerce System

Figure 6.19 Privacy policy page of iPlaza: Online E-Commerce System

110
Figure 6.20 Delivery Information page of iPlaza: Online E-Commerce System

Figure 6.21 About us page of iPlaza: Online E-Commerce System

111
6.1.2 Module 2: Administrators iPlaza Online E-Commerce System

Figure 6.22 Manage categories page of iPlaza: Online E-Commerce System

112
Figure 6.23 Add new category

Figure 6.24 Delete category confirmation

The Figure 6.22 shows the manage categories page. The administrator can update any
category on this page. There is also a New button that will display the add categories
panel as shown in Figure 6.23. This manage page also has checkboxes that are used to
marked categories to be deleted. Clicking the Delete button will pop-up a confirmation
as shown in Figure 6.24.

113
Figure 6.25 Manage brands page of iPlaza: Online E-Commerce System

114
Figure 6.26 Add new brands

Figure 6.27 Delete brands confirmation

The Figure 6.25 shows the manage brands page. The administrator can update any
brands on this page. There is also a New button that will display the add brands panel
as shown in Figure 6.26. This manage page also has checkboxes that are used to
marked brands to be deleted. Clicking the Delete button will pop-up a confirmation as
shown in Figure 6.27.

115
Figure 6.28 Manage tax codes page of iPlaza: Online E-Commerce System

116
Figure 6.29 Add new tax codes

Figure 6.30 Delete tax codes confirmation

The Figure 6.28 shows the manage tax code page. The administrator can update any
tax code on this page. There is also a New button that will display the add tax code
panel as shown in Figure 6.29. This manage page also has checkboxes that are used to
marked tax codes to be deleted. Clicking the Delete button will pop-up a confirmation
as shown in Figure 6.30.

117
Figure 6.31 Manage products page of iPlaza: Online E-Commerce System

118
Figure 6.32 Delete products confirmation

The Figure 6.31 shows the manage products page. This manage page also has
checkboxes that are used to marked products to be deleted. Clicking the Delete button
will pop-up a confirmation as shown in Figure 6.30. There is also a New and Edit
button that will redirect the users to the respective pages. A pencil icon represents the
Edit button. The add product page is shown in Figure 6.33.

119
Figure 6.33 Add products page of iPlaza: Online E-Commerce System

120
Figure 6.34 Edit products basic details page

121
Figure 6.35 Edit products pricing page

122
Figure 6.36 Edit products image gallery page

123
Figure 6.37 Products image delete confirmation

The Figure 6.34 shows the basic details of the edit product page. The form allows the
administrator to update the basic details of the product. The Figure 6.35 shows the edit
pricing page for the product. There is also an option to set discounts for a duration of
time. The Figure 6.36 shows the uploaded image for the product. The administrator
can upload new images to this page. Hovering the pictures will display a trashcan icon
button which functions as a delete function. Clicking the trashcan icon will trigger a
confirmation as shown in Figure 6.37.

124
Figure 6.38 Manage orders page of iPlaza: Online E-Commerce System

Figure 6.39 Delete orders confirmation

125
The Figure 6.38 shows the manage orders page. Unlike other manage pages, this page
does not have checkboxes to marked orders to be deleted. Instead, it is replaced by a
trashcan icon button. Clicking this button will pop-up a confirmation as shown in
Figure 6.39. There is also an Edit button which is represented by a pencil icon that will
redirect the users to the edit orders page.

Figure 6.40 Edit orders basic details page

126
Figure 6.41 Edit orders shipping details

127
Figure 6.42 Edit orders product list

128
Figure 6.43 Edit orders comments

The Figure 6.40 shows the basic details of an orders page. The administrator could
update the core information of an order on this page. Figure 6.41 shows the shipping
particulars of an order. It is important that the administrator updates the tracking
number and shipping status after shipping the product. The Figure 6.42 displays the
list of products that the customer purchased. The Figure 6.43 shows the comments in
case the clients has specific requirements.

129
Figure 6.44 Error message example

Figure 6.45 Success message example

The Figure 6.44 and Figure 6.45 is an example of the messages of the system. Output
messages will display in most user interaction with the system.

130
6.2 Integrate and Program the Necessary System
The system will apply MySQL as the main Relational Database Management System
(RDBMS). The Code Igniter framework made using MySQL is very easy to
implement. It only requires the database to be created using any MySQL manager such
as phpMyAdmin or Adminer. Then, a configuration file in Code Igniter framework is
updated to follow the connection information of the database. The database system
must be carefully designed to meet the requirements of the system.

Figure 6.46 Creating database with Adminer

Figure 6.46 shows the graphical interface of how to create a database using Adminer.
The configuration of the database connection in Code Igniter framework is shown in
Figure 6.47.

131
Figure 6.47 Code Igniter framework database configuration settings

132
6.3 Prepare Database Management System
The database designing phase is not an easy task. It requires a lot of effort in planning
and testing. This is due to the trade-off made between ease of use and data redundancy
in storing data in tables. Ideally, a specific data field should exist only on one table.

For example, customers name should exist only on Accounts table. However,
administrators also has his name. Storing administrators name on a different table
creates a redundancy in information. To reduce the redundancy of information between
customers and administrators, it is better to combine both data into a single table with
a single column used as a flag marker; setting this column as 0 will store the
information as customer, while storing this column as 1024 will store the data as
administrator.

The table design must be normalized to their most optimum normalization form
to avoid redundancy and duplication of data. One of the normalization done was to the
Orders table. Orders table was separated into four tables. Three of the tables are linked
to the main table with one to many relationships. Each table is also designed with their
own primary keys. There are a total of 10 tables in iPlaza: Online E-Commerce
System.

133
Figure 6.48 The relationships of the table designs of iPlaza: Online E-Commerce
System

Figure 6.48 illustrates the relationships between 10 tables of the iPlaza: Online E-
Commerce System. There are two type of relationship, one-to-one and one-to-many
relationship.

134
7. TESTING

Testing is usually based on the understanding of how software component should


operate. A detailed requirement of each software module is used by the independent
team to derive the tests for the system upon screening a critical system.

7.1 Post Implementation Testing


A general testing process starting with the testing the individual units of the software
such as functions or objects. The functions and objects are then integrated into the sub-
system and systems. Then, the interaction of these units was tested. The testing
techniques used includes the testing of the interfaces between the sub-system, the
output correctness, and random input values.

Various types of testing had been done on iPlaza Online E-Commerce System
to ensure the reliability of the system. The testing is integration testing plan, system
testing plan and acceptance testing plan.

7.1.1 Integration Testing Plan


The integration process involves building the system and testing the resultant system
for problems that may come from component interaction. The main agenda of
integration testing is to verify the functional, performance, and reliability of the
elements of the system.

135
Result of Integration Testing Plan
Event Expectation Results Remarks
Does the system connect to database? Yes Working -
Does the customer able to register an Yes Working -
account?
Does the customer able to log in Yes Working -
successfully?
Can the customer update their profile? Yes Working -
Can the customer view their past orders? Yes Working -
Can the customer view the details of his past Yes Working -
orders?
Can the customer view the categories? Yes Working -
Can the customer view the brands? Yes Working -
Can the customer view the product lists by Yes Working -
categories?
Can the customer view the product lists by Yes Working -
brands?
Can the customer view the product details? Yes Working -
Can the customer add product to the virtual Yes Working -
cart?
Can the customer view the checkout page? Yes Working -
Can the customer update the checkout page? Yes Working -
Does the checkout page redirect the Yes Working -
customer to PayPal?
Does PayPal redirect the customer to the Yes Working -
order information after payment completion?
Table 7.1 Integration Testing Plan for iPlaza Online E-Commerce System

136
Event Expectation Results Remarks
Can the administrator login to the system? Yes Working -
Can the administrator create, view, update Yes Working -
and delete categories?
Can the administrator create, view, update Yes Working -
and delete brands?
Can the administrator create, view, update Yes Working -
and delete tax codes?
Can the administrator create, view, update Yes Working -
and delete products?
Can the administrator view, update and Yes Working -
delete orders?
Table 7.2 Integration Testing Plan for Administrators iPlaza Online E-
Commerce System

7.1.2 System Testing Plan


System testing is started upon the completion of integration testing. System testing is
the process of performing a variety of tests on a system to explore functionality or to
identify problems. Database tables and web page interfaces design are carefully
examined to ensure that the whole system meets the objectives and goals of the
projects. Errors can be identified and corrected. The purpose of system testing is to
confirm an application's accuracy and completeness in performing the functions as it
was designed. System testing is a way of attempting to prove that the system does not
meet its requirement specification and thus, cannot be used (Farrell-Vinay, 2008).

137
Result of System Testing Plan
Event Expectation Results Remarks
Does the database tables work Yes Working -
properly?
Does the home page loads properly? Yes Working -
Does the login and register page Yes Working -
loads properly?
Does the category list loads properly? Yes Working -
Do the brands list loads properly? Yes Working -
Does the products list by Yes Working Missing a
category/brands loads properly? search function
to simplify the
process
Does the product details page loads Yes Working -
properly?
Does the checkout page loads Yes Working -
properly?
Does the order information page Yes Working -
loads properly?
Do the other pages loads properly? Yes Working -
Table 7.3 System Testing Plan for iPlaza Online E-Commerce System

138
Event Expectation Results Remarks
Does the database tables work Yes Working -
properly?
Can the administrator operate Yes Working Missing a search
the manage categories page? function to simplify
the process
Can the administrator operate Yes Working Missing a search
the manage brands page? function to simplify
the process
Can the administrator operate Yes Working Missing a search
the manage tax codes page? function to simplify
the process
Can the administrator operate Yes Working Missing a search
the manage products page? function to simplify
the process
Can the administrator view, Yes Working Missing a search
update and delete orders? function to simplify
the process
Does the hyperlink works Yes Working -
properly?
Table 7.4 System Testing Plan for Administrators iPlaza Online E-Commerce
System

7.1.3 Acceptance Testing


The acceptation testing plan is carried out just before the system is transferred and
implemented into the production server. This test goal is to show the whole system to
the end user. The acceptance testing plan is essential because it is the end users who
will use the system. Thus, their comments and feelings about the system are critical to
giving the developer a new idea on how to improve the system in future.

139
Result of Integration Testing Plan
Event Expectation Results Remarks
Average loading speed Below 10 seconds Approved -
per page
Easy navigations The navigations menu Approved -
should ensure the
system is easy to
navigate
Font size Easy to view Approved -
Colour contrast Matching colours Approved -
Broken links None Approved -
Broken images None Approved -
Product search functions Using categories and Not There is no
brands to filter out Satisfied proper function
products to search the
database
Shopping cart functions Functioning properly Approved -
Pages presentation Consistent, formal and Approved -
simple
Table 7.5 Acceptance Testing Plan for iPlaza Online E-Commerce System

140
Event Expectation Results Remarks
Average loading speed Below 10 seconds Approved -
per page
Easy navigations The navigations menu Approved -
should ensure the
system is easy to
navigate
Font size Easy to view Approved -
Colour contrast Matching colours Approved -
Broken links None Approved -
Broken images None Approved -
Search functions Search the database Not This function is
using the system Satisfied missing
Pages presentation Consistent, formal and Approved -
simple
Table 7.6 Acceptance Testing Plan for Administrators iPlaza Online E-
Commerce System

141
8. SUGGESTIONS

The iPlaza: Online E-Commerce System has successfully implemented. Most of the
scope and objectives of the project had been achieved. However, there are a few issues
raised during the development of the whole project. Several possible improvements
for the future are:

8.1 Possible Future Improvements


a. Accept Foreign Currency Transaction
Currently, the system is implemented only to accept a single currency to avoid
confusion. E-commerce should have the capability to target a wider audience.
However, using only a single currency will limit the system capabilities to
attract customers from other countries. The implementation should be easy as
PayPal already supports a variety of currency. The system will be programmed
to connect with financial institute exchange rates to provide the customers from
different nations the various currency values after the exchange. This feature
will make the system more convenient.

b. Multiple Domains with Language Support


Every country has its country code top-level domain. For example, .my, .ph,
.th, .sg, .bn, and so forth. The system should implement a website for every
domain that the organisation wants to target its market. At the same time, this
website should have its language based on the countrys main language. For
example, it will feature Malaysian Language in iplaza.my and Tagalog
language iplaza.ph. The reason for this is to increase the acceptability of the
system from the local customers.

142
c. Multiple Language Support
Although it was said that the system should implement the main language of a
given country on its domain, the system must implement a multiple language
support. For example, some individuals might prefer to use English as their
main language. Displaying a website completely in Malaysian language to such
persons will only deter them from coming to the site. This feature is imperative
in Malaysia because this country is a multi-racial nation with multiple
languages. It will be hard to capture audience that is not fluent in language
other than their mother tongue

d. Product Details and Customisation


Every product has its customizations. These customizations can be considered
as the products attributes such as colours, size, additional accessories, and so
on. For example, some products like clothes may come in different colours and
sizes. This feature will allow the customer to select the colour and size that
they want. Products attributes can also come in a form that is not customisable.
These attributes are usually the detailed specifications of a certain product. For
instance, the processor of a smartphone.

e. Product Comparison
One of the most common issues of the customers is the limited amount of
capital that they are willing to spend. In some cases, they need to choose
between a few products. To simplify this process, it is imperative that the
system implements a comparison feature. The page will display the products
side by side with its attributes listed in a table. This feature will help the client
to compare the product directly hence, making it easier for them to make a
decision to purchase. Without this functionality, some customers might even
give up purchasing.

143
f. Stock Management
The system should also have a stock management feature. This feature will
ensure that the issue of no stock for any placed order is avoidable. The system
will dynamically update the database every time the customer purchase a
product.

g. Reports and Sales Information


Sales reports are one of most valuable information to any business owner.
These reports help the executives to make a better decision. For example, a
report regarding the busiest days of the week, the monthly or yearly sales
volume, the types of sales and so on. The information could be easily analysed
with a pre-rendered graphs and charts.

h. Search Functions
The system is missing a critical feature; the ability to search any product easily.
Searching for a product by name will make the system much easier to use. The
search function should also have an advanced filter feature such as filter by
attributes, categories, brands, price range, and so forth. The advance search
feature will help the customer to find something they want specifically.

8.2 Security and Backup Features


a. Backup Server
Every system in the world that is connected to the internet is vulnerable to
cyber threats. All the prevention measures might not be able to protect the
system from such attacks. To ensure that the system could be recovered in case
the system is breached, a mirror backup server should be applied. The system
should backup every day. This feature will ensure that the damages are kept to
the minimum.

144
b. Secure Socket Layer (SSL)
SSL is a secure method to transfer information via the internet. Any website
that has implemented a proper SSL is usually marked with a green shield or
padlock icon on the address bar. Usually, any website that uses SSL will have
their domain link as https:// instead of http://. The main purpose of SSL is to
ensure the privacy of information sent through the internet is not sniffed by any
third party. The added privacy security will ensure the customer with the
reliability of the system.

145
9. CONCLUSION

The iPlaza: Online E-Commerce System is finally completed in time. This is a very
challenging work. However, I have gained a lot of new experiences and knowledge
regarding planning, designing, developing and implementing process within the
duration of the project development. There are a few setbacks that occurred during the
development process. For example, it is not feasible to implement Secure Socket Layer
(SSL), a premium server, and a domain to this project. There is also some technical
issues regarding how actual production server is being implemented. Most companies
use the various Linux operating system instead of Microsoft Windows, but due to the
technical difficulties, I have decided to forgo the implementation of the system in
Linux.

Regardless, this project has successfully met its main objective by providing a
platform to sell products through the internet. Electronic commerce naturally lacks
human warmth and sociability, since it is more impersonal, anonymous and automated
than traditional business. In some cases, these can also be positive traits of e-
commerce as some customers would like to have their purchase unknown to the local
area. The challenge now is to discover how human warmth and sociability can be
integrated through the web interfaces to impact customer attitudes towards online
shopping positively.

In conclusion, this project had been successfully implemented with the help of
advanced technologies. Hopefully, this system can benefit the public users. As a final
note, anything copyrighted in this project is used for education purpose.

146
REFERENCES

Farrell-Vinay, P. (2008). Manage software testing. Boca Raton: Auerbach


Publications.
Hernandez, D. J. (2000). Analysis of different scheduling policies for on-demand
data delivery systems.
Laudon, K. C., & Laudon, J. P. (2004). Management information systems: Managing
the digital firm. Upper Saddle River, NJ: Prentice Hall.
Laudon, K. C., & Traver, C. G. (2002). E-commerce: Business, technology, society.
Boston: Addison Wesley.
Navarro, A. (2001). Effective web design. San Francisco: SYBEX.
Smith, A. D. (2004). Cybercriminal impacts on online business and consumer
confidence. Online Information Review, 28(3), 224-234.
doi:10.1108/14684520410543670
Turban, E. (2000). Electronic commerce: A managerial perspective. Upper Saddle
River, NJ: Prentice Hall.
Westland, J. (2006). The project management life cycle: A complete step-by-step
methodology for initiating, planning, executing & closing a project
successfully. London: Kogan Page.

147
BIBLIOGRAPHY

The Apache HTTP Server Project. (n.d.). Retrieved from https://httpd.apache.org/


Bootstrap The world's most popular mobile-first and responsive front-end
framework. (n.d.). Retrieved from http://getbootstrap.com/
CodeIgniter Web Framework. (n.d.). Retrieved from http://www.codeigniter.com
Font Awesome, the iconic font and CSS toolkit. (n.d.). Retrieved from
http://fontawesome.io/
jQuery. (n.d.). Retrieved from https://jquery.com/
Kendall, K. E., & Kendall, J. E. (1999). Systems analysis and design. Upper Saddle
River, NJ: Prentice Hall.
MySQL. (n.d.). Retrieved from https://www.mysql.com/
PHP Template Engine | Smarty. (n.d.). Retrieved from http://www.smarty.net/
PHP: Hypertext Preprocessor. (n.d.). Retrieved from http://www.php.net/
Shneiderman, B. (1998). Designing the user interface: Strategies for effective
human-computer-interaction. Reading, MA: Addison Wesley Longman.
Turban, E., King, D., Lee, J., Warkentin, M., & Chung, H. M. (2002). Electronic
commerce: A managerial perspective. Upper Saddle River: Prentice Hall.

148
APPENDIX A1

Interview Questions to Mr Patrick:

1. How many years has this enterprise been established?


16 years.

2. How many workers in your enterprise?


16.

3. Who are the main customers of your enterprise?


Locals, especially other business owners or high profile customers.

4. How do you deal with your customers?


Meet directly with the customers. In some cases, we do our business via telephone.

5. What do you sell?


My company specialised in security products such as CCTV, alarm, door access,
sensor and so forth. We also sell other products related to attendance system. For
example, digital punch card.

6. E-commerce is basically doing sales using a website over the internet. Do you have
experience with e-commerce?
Yes. I have sold multiple products over the internet.

7. How do you send your products to your clients?


I send them using the standard couriers such as PosLaju and GDExpress. If the client
requires installation service, we will carry the products ourselves depending on the
location limitation.

149
8. How do you receive your payments?
I used a third party service; iPay88 and PayPal. I also received payments through bank
transfer and cheques.

9. Do you have experience any problems with e-commerce?


Yes. The first few years, I had problems attracting viewers to use my website. It really
takes time and patience to ensure my online store is actually making me some money.
In some cases, I had clients that did not pay anything and vehemently states that he
did.

10. Do you have any suggestions or idea on how to improve e-commerce in general?
I hope there are an easier software to use in order to conduct e-commerce when I first
started out.

150
APPENDIX A2

Interview Questions to Mr Mohd Rahman:

1. How many years has this enterprise been established?


Two years.

2. How many workers in your enterprise?


3.

3. Who are the main customers of your enterprise?


Locals.

4. How do you deal with your customers?


Customers come to my store directly.

5. What do you actually sell?


I sell flavoured iced drinks such as mochaccino, red tea, chocolate, peach tea, and so
forth.

6. E-commerce is basically doing sales using a website over the internet. Do you have
experience with e-commerce?
Not really. I do however promote my store and products through Facebook. I joined a
local group that promotes local food. Sellers in the group mostly only sell within the
local area.

7. How do you send your products to your clients?


I do not actually send any of my products. My clients create reservations and pick up
the drinks later.

151
8. How do you receive your payments?
I accept only cash transactions.

9. Do you have experience any problems with e-commerce?


I am unsure if I should use e-commerce to sell my products actively.

10. Do you have any suggestions or idea on how to improve e-commerce in general?
I wonder if there are any software or system that I could use to sell my drinks. Online
website is not really my expertise. Id assume it will be hard to set up properly.

152
APPENDIX B

Online Business System Questionnaires:

1. What is your gender?


A Male
B Female

2. What is your age group?


A Below 25
B Between 26 to 45
C Above 46

3. Do you have the Internet connection at home, office or school?


A Yes
B No

4. How often do you surf the Internet?


A Very frequently
B Frequently
C Sometimes
D Seldom
E Never

5. What is your purpose of surfing online?


[] Checking e-mail
[] Play online games
[] Watching video
[] Searching information
[] Online shopping

153
[] Socializing online
[] Chatting
[] Others
[] None

6. What do you think about online shopping?


A Excellent
B Good
C Average
D Poor
E Very Poor

7. Have you ever purchased anything from an online shop before?


A Yes
B No

8. Will you buy from an online shop in the future?


A Yes
B No

9. If your previous answer is no, what is your reason for not being interested in buying
from an online shop in the future?
[] Concern with security issue
[] Do not have credit or debit card
[] Lack confident with online shopping
[] No interaction with the seller

154
10. What are the problems that you face when you want to buy from a traditional shop?
[] Hard to find the product(s) that I want
[] Lack of product information
[] No time to go to the shop
[] No direct delivery service
[] Hard to get a parking space

11. What features you want from an online shop?


[] Fast delivery
[] Easy and secure transaction
[] Cheaper price
[] Provide more information
[] Easy to use interface
[] Assurance of legitimacy

THANK YOU FOR YOUR VALUABLE INFORMATION!

155

Вам также может понравиться