Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

Online Bidding System UPDATED ERD PANEL SUGGESTIONS

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 174

Online Bidding System

________________

A Capstone Project Presented to


The Faculty of the College of Computer Studies
Tarlac State University
Tarlac City

________________

In Partial Fulfillment
of the Requirements for the Degree
Bachelor of Science in Information Technology

________________

by:

Ibay, Maria Thaniel T.


Miranda, Byron L.
Buan, Jeremiah M.
Renato II B. Dela Cruz

October 2021
Republic of the Philippines
Tarlac State University
COLLEGE OF COMPUTER STUDIES
Tarlac City, Tarlac
Tel. No. (045) 6068173

APPROVAL SHEET

This capstone project of Ibay, Maria Thaniel T., Miranda, Byron L., Buan,
Jerimiah M., and Dela Cruz, Renato II B. titled “Online Bidding System”, which is
prepared and submitted in partial fulfillment of the requirements for the degree Bachelor
of Science in Information Technology has been examined and hereby recommended for
approval and acceptance.

Mr. Christian Jacod Nunga


Technical Adviser

PANEL COMMITTEE

Dr. Alvincent Danganan


Chairman

Mr. Lito Alexis Tolentino Mr. Rovel Asidera


Member Member

Approved and accepted in partial fulfillment of the requirements for the degree
Bachelor of Science in Information Technology.

DR. ALVINCENT DANGANAN


Dean, College of Computer Studies
2

ABSTRACT

Modern day Technology has progressed rapidly to benefit people from all over

the world. Traditional practices and norms are inevitably affected by the progress of

technology, making most of these practices obsolete. Auctioning items and the Bidding

practices are one of these traditional practices that have been affected heavily by the

technology of the modern world. We the researchers, conducted the study to bridge the

gap between the traditional practice of auctioning and bidding for items. We were urged

to determine what problems are being faced and will be faced by the Online Bidding

System and how to provide a solution for the problems that emerged. We discovered that

bogus sellers and bidders are causing problems to the commercialization of the system.

As a solution and a safety measure for the problem, we incorporated a Report System on

the System to avoid and deter the bogus sellers and bidders. The study aims to provide an

Online Bidding System that operates properly, securely, and fairly compensates the

sellers and bidders that wishes to buy and sell their desired items in a safe and secure

online platform. Methods used for the system and the study are unit functionality testing

and repeated trials, both conducted by the researchers with the occasional help of third

parties for further insight. To evaluate the performance of the Online Bidding System, we

conducted a series of functionality and efficiency test scenarios wherein each function of

the system had been tested for 10 iterations. The functionality testing had a total of 30

functions what were tested for 10 iterations. Efficiency testing was determined by a
2

percentage score, above 50% being the passing. Standard computation of the score-based

system was done and we reached the conclusion of giving the system a satisfactory

passing percentage of 80%. The methods were able to produce beneficial results as they

followed industry standards in system testing.

The aim of the study is to provide a safe and secure platform for sellers and

bidders while ensuring the commercial environment of the transactions safe and away

from the threats of scammers and bogus buyers and sellers. With this in mind, the

researchers incorporated a KYC (Know Your Customer) approach to add another level of

security to the system. The KYC approach that the researchers have decided to

implement is fairly straightforward, a User; whether they be a Seller or Buyer/Bidder,

must undergo an Identity Verification Process and present a Valid Government ID. This

will give the User a Verified status and they will be able to participate on bidding

sessions. Registered Users can still access the system, but in order to bid for items, they

must undergo this Verification to be able to participate on biddings.


2

DEDICATION

We dedicate this project to our beloved family and friends who always gives us

the strength and motivation to continue this project, to Mr.& Mrs. Ibay, Miranda, and

Buan who supports and guides us mentally and physically to fulfil this project. To our

friends whose help and support never failed us when the challenging part comes.

This project is also dedicated to our Professor, Mrs. Theda Flare Quilala, who

helped us to get this project accepted and for guiding us. To our esteemed Technical

Adviser Mr. Christian Jacob Nunga, who enlightened and helped us improve our

capstone study. And to our panelists; Mr. Lito Alexis Tolentino, Mr. Rovel Asidera and

to our chairperson, Mr. Alvincent Danganan for their guidance and for correcting and

pointing us to the right direction.

This Capstone Project will be eternally dedicated to our Almighty God,

first for not letting us down, for our health, guidance, knowledge, and protection to

overcome the challenges that have come to us during the course of the development of

this project and a big part of this is God’s help to us in fulfilment of this project. We all

dedicate this to God Almighty.


2

ACKNOWLEDGMENT

We express our deepest gratitude and appreciation. Respectfully thanking the

people that have been with us in this journey.

The researchers would like to express their deep gratitude and indebtedness for

this project could have not been possible without the assistance and guidance of our

Parents, for their unending love and guidance, for providing our needs.

To our foundation, Tarlac State University, where we are continuously

maximizing our knowledge as a Bachelor of Science in Information Technology student.

We like to express our deep gratitude to our entire professor who continuously shares

their knowledge to make us a better people.

To our professor Mrs. Theda Flare Quilala to continuously guide us to this entire

semester and to our panelist Mr. Lito Alexis Tolentino, Mr. Rovel Asidera and to our

chair Mr. Alvincent Danganan for their understanding and suggestion. Thank you for

giving the time to us to defend our study and to our technical adviser Mr. Christian Jacob

Nunga who took us and interest in our study help us enlighten and improve our project

until the end of our study. Thank you very much.

Above all, to our Almighty God who always protect us and not letting us down in

every circumstance. God’s timing is always perfect!


2

TABLE OF CONTENTS

APPROVAL SHEET.............................................................................................ii

ABSTRACT...........................................................................................................iii

DEDICATION........................................................................................................v

ACKNOWLEDGMENT.......................................................................................vi

TABLE OF CONTENTS.....................................................................................vii

LIST OF TABLES..................................................................................................x

LIST OF FIGURES.............................................................................................xii

1 INTRODUCTION.........................................................................................1

1.1 Project Context............................................................Error! Bookmark not defined.

1.2 Purpose And Descriptions........................................................................................2

1.3 Objectives...................................................................................................................4

1.4 Scope and Delimitations...........................................................................................5

2 RELATED LITERATURE...........................................................................6

2.1 Discussion of Models.................................................................................................6

2.2 Conceptual Framework..........................................................................................10

3 TECHNICAL BACKGROUND.................................................................13

3.1 Software Development Requirements...................................................................13

3.2 Hardware Development..........................................................................................15


2

3.3 Sources of Data........................................................................................................16

4 METHODOLOGY......................................................................................18

4.1 Methods in Data Gathering....................................................................................18

4.1.1 Interview Method.........................................................................................18

4.1.2 Internet Method............................................................................................19

4.1.3 Observation..................................................................................................19

4.2 Design and Development of Online Bidding System...........................................19

4.2.1 Requirement Analysis and Documentation.................................................20

4.2.2 Design of Software and/or System and/or Product and/or Processes..........25

4.2.3 System Development Methodology.............................................................28

4.3 To evaluate the performance of Online Bidding System by means of the

functional and accuracy tests..........................................................................................36

4.3.1 Functionality Test based on efficiency and accuracy..................................36

5 RESULTS AND DISCUSSION..................................................................38

5.1 Design and Development of Online Bidding System...........................................38

5.2 To evaluate the performance of Online Bidding Sytstem by means of of the

functional and accuracy tests..........................................................................................58

6 CONCLUSIONS AND RECOMMENDATIONS....................................63

6.1 Conclusions..............................................................................................................63

Write the general statement that says you achieved the objective here. Then

specifically, itemize the conclusion based on the stated objective in Chapter 1 as


2

follows. There is one is to one correspondence with respect to the objectives and

conclusion..........................................................................................................................63

6.2 Recommendations...................................................................................................64

REFERENCES.....................................................................................................65

APPENDICES......................................................................................................67

<Appendix A:> <Title>....................................................................................................67

<Appendix B:> <Relevant Source Code>....................................................................112

CURRICULUM VITAE....................................................................................119
2

LIST OF TABLES

Table 1. System and Features...........................................................................................7

Table 2. Software Requirements....................................................................................13

Table 3. Hardware Requirements..................................................................................15

Table 4. Functional Requirement for Bidder Module..................................................23

Table 5. Functional Requirement for Seller Module....................................................23

Table 6. Functional Requirement for Admin Module..................................................24

Table 7. Non-Functional Requirement for Safety and Security of Online Bidding

System.......................................................................................................................25

Table 8. Operating Environment Requirements..........................................................27

Table 9. Design and Implementation Constraints Requirements for Online Bidding

System.......................................................................................................................28

Table 10. Project Schedule..............................................................................................31

Table 11. Project Schedule Sprint..................................................................................32

Table 12. 1st Sprint..........................................................................................................38


2

Table 13. 2nd Sprint........................................................................................................39

Table 14. 3rd Sprint..........................................................................................................41

Table 15. 4th Sprint...........................................................................................................42

Table 16. 5th Sprint...........................................................................................................43

Table 17. 6th Sprint...........................................................................................................45

Table 18.7th Sprint............................................................................................................46

Table 19. 8th Sprint...........................................................................................................48

Table 20. 9th Sprint...........................................................................................................50

Table 21. 10th Test............................................................................................................52

Table 22. 11th Test............................................................................................................56

Table 23. Table 23. Unit Functional and Repeated Trial Tests...................................56

Table 24. Integration Test...............................................................................................56


2

LIST OF FIGURES

Figure 1. Conceptual Framework..................................................................................23

Figure 2. Network Topology...........................................................................................16

Figure 3. Requirements analysis and Documentation..................................................20

Figure 4. Use Case Diagram of Online Bidding System...............................................21

Figure 5. Database Schema of Online Bidding System................................................26

Figure 6. Functional Decomposition of Online Bidding System..................................27

Figure 7. Scrum Agile Methodology..............................................................................28

Figure 8. Burn Down Chart............................................................................................35

Figure 9. Admin Login....................................................................................................39

Figure 10. Dashboard of Admin.....................................................................................40

Figure 11. Admin’s Category Management..................................................................41

Figure 12. Lists/Manage of User.....................................................................................43

Figure 13. Admin’s Recorded Complains.....................................................................44

Figure 14. Homepage.......................................................................................................45


2

Figure 15. Profile Management......................................................................................47

Figure 16. Create Product of Seller................................................................................48

Figure 17. Product Management of Seller.....................................................................49

Figure 18. Item List.........................................................................................................51

Figure 19. Bidding Process..............................................................................................52

Figure 20. Items’ bid........................................................................................................53

Figure 21. Rate.................................................................................................................54

Figure 22. Chat.................................................................................................................55

Figure 23. Notification.....................................................................................................56

Figure 24. Dashboard......................................................................................................57

Figure 25. Selecting Users...............................................................................................63

Figure 26. Method of Payment.......................................................................................64

Figure 27. Payment and Transaction Process...............................................................65

Figure 28. For Bidders Rating........................................................................................66

Figure 29. For Bidders Reporting..................................................................................67


2
2

Definition of Terms

A definition of terms to be used for the entirety of the study. Listed below are

terminologies used in the system and in the study with the definition of the term and how

this system used this definition.

Bidders A person who bids for an item, in an auction; making a formal offer

Admin A person or organization, that secure the bidder and the seller

Seller A person who sells an item in bidding site, and sets the transaction to

the bidder

Security This is the state of being free from danger or threat.

Bidding The offering of prices for the item, especially at an auction

Item An individual item or unit, one included in the list, collection or set of

items
1 INTRODUCTION

Online Bidding System is a web-based program that allows users to purchase and

sell items in a traditional setup. The traditional setup of Auctioning for items and putting

them up for sale is a competitive and great way of purchasing and selling objects that

hold a high value, bot commercially and personally. The Covid-19 pandemic, as well as

the fast-paced modern world, dealt a great impact to this traditional scene. Auctioning

ang Bidding for items Online is a solution that the researchers came up with to bridge the

gap between traditional and modern technology. These past few years, people are almost

always connected to the Internet thru their computers and mobile devices like their

smartphones. Introducing an Online Bidding System that will work online, allowing for

potential users to be intrigued and will want to try the bidding experience.

Security and authenticity are key aspects in which the researchers highly value and

place such importance. Providing a secure platform for sellers and bidders alike is part of

the goal the researchers are trying to achieve. Incorporating a KYC approach and using

modern day data encryption proves to be greatly beneficial to the study and to the system.

Implementing an Encryption system adds another layer of security, thus providing a more

secure service. Utilizing the BCrypt algorithm gives more protection to user passwords

and overall protecting the system from possible attackers. Passwords having more

security and being less prone to compromises limits data breach that can affect the

system.
2

Implementing a deposit process will also improve the security and protection of

user and customer data within the system. Registered users must first pay an initial

payment or a deposit before entering a bidding section or an auction. This will ensure that

both seller and potential bidder have stakes placed and will finish the bidding session.

Bogus sellers and buyers will be filtered by implementing this initial payment process in

addition to the other security processes of the system.

Using the Online Bidding System, users will be able to buy and bid for items that

are posted by sellers. Sellers will be able to submit their items for bidding; Bidders will

be able to register and bid on any accessible item as long as they are posted and up for

bids. Bidders and Sellers can contact/chat with each other after the end of every bidding

session. The competitive element of a traditional auction will reach users thru their

screens and sellers and bidders will have a platform where their products and items will

be held at a higher value. The researchers are aiming for the Online Bidding System to be

another platform for people to turn to when they are looking to buy great quality

products.

1.1 Project Context

Online bidding is a modern way for selling personal properties and real estate

items, as it enables potential buyers to bid from the convenience of their own home while

preserving the competitive essence of a traditional auctioning environment. The Online


2

Bidding System allows transactions that are faster, more efficient, and less expensive;

while providing the comfort of having no geographical barriers [1].

Below are some common questions about the online bidding process. Online

bidding has a range of benefits. Because of the instant online link, both sellers and

bidders can easily participate in online bidding. Successful sites supplement direct selling

activities, provide consumers with supplemental material, project a brand image, and

provide basic company information and services to their global customers. Due to their

simplicity and efficiency, biddings are a popular form of price determination in e-

commerce [2].
Every user has the right to display the goods or services in detail and to bid and

buy them at their leisure. In traditional bidding systems, bidders must attend a specific

place for the auctioning of items; otherwise, they cannot participate for the bid. But the

Online Bidding System avoids these problems that both bidders and organizations might

face [3]. These are some of the advantages and benefits of an Online Bidding System; bid

comparison, confidence in the validity and credibility of contractual documents, time

saving, reduced paperwork, ease, speed of contact with multiple bidders, safe bidding

environment, and good control of bidders' submissions are all advantages [4].

Limited/Restricted Competitive Bidding (LCB) methods whereby an initiative to bid is

sent to a limited number of qualified firms who are interested to participate/compete in

the tender rather than floating the invitation through open media. Online Bidding does not

allow consumers to inspect and test products in person before making a purchase. It is

possible that this will lead to fraud.

Another important downside is that not every company will participate in an

online bidding. It can also help the online bidding Website companies to look for ways to

improve their websites to attract new bidders and increase bidder loyalty [5].

According to [6] Wang et al. (2001), To become a diagnostic instrument for

practical and theoretical use, e-marketing effectiveness measures must incorporate

various aspects of customer satisfaction. A study that incorporates these elements can

help researchers better understand how e-consumers evaluate different auction websites.

Shopping on the internet is entertaining and addictive. [7] It can easily get out of control,
5

even though it is less tense than an on-site auction. According to one study, when the

bidders have common values, the open-bid auction format produces greater cost savings.

Many people may not feel as if they are wasting money when they shop online.

Since everything is interactive, it is easy to spend much more than you expected. So long

as the right to bid has been revealed to the other bidders, sellers will bid at a with reserve

auction with no recourse. Sellers can also participate in forced sales by bidding. State

lawmakers and the courts, on the other hand, have made it clear that a seller cannot bid

on their own property at auction without receiving a buyer payment [8]. When there is no

bidding, the auctioneer places a vendor bid, which could be all that is needed to get things

moving. Some sellers do not want to re-list their property and are more willing to

negotiate. [9] As a result, buyers will be able to secure a home at a lower price than

expected. According to recent statistics, 80% of highly satisfied online shoppers would

shop again within two months, and 90% would recommend the websites to others. On the

other hand, 87 percent of dissatisfied customers would leave their Internet merchants

permanently without filing any complaints. [10] This project will address this issue by

creating an online platform where a seller can post items for bidding online. The items

will come with a description, a selling price, and a picture presentation for the bidder to

view.

1.2 Purpose and Descriptions


6

The world's online e-commerce system is rapidly expanding. The Online Bidding

System (OBS) is intended to be a simple and easy-to-use online bidding technique. To

make it easier to bid on items online rather than attending bidding events. During the

bidding process, it provides the user with real-time information.

1.3 Objectives

The general objective of the study is to create and build an Online Bidding System

(OBS) that will help consumers who prefer to bid in person. You can make offers as a

bidder regardless of your location. You can purchase items via the internet by using

online bidding. You will save time by bidding online rather than attending multiple

auctions. Because of the instant online connection via chat, the system can help to

improve the ease of communication for both sellers and bidders. To create an online

bidding system that will allow sellers to meet and interact with bidders while also selling

items to interested bidders. To develop an online bidding system in which bidders bid on

items posted by the seller through the system. To create a chat room in which a seller

receives bidder requests and responds with feedback, an answer to a question, or a

recommendation.

Specifically, the study aims to achieve the following:

1. To design and develop an Online Bidding System incorporating the following


features:

1.1. From the bidder side:


1.1.1. A dashboard
7

1.1.2. Login and registration


1.1.3. Bid an item
1.1.4. See Status
1.1.5. View an item
1.1.6. Receive Notifications
1.1.7. Chat Seller after winning
1.1.8. Rate/Feedback the seller
1.1.9. Report the seller

1.2. From the seller side:


1.2.1. A dashboard
1.2.2. Login and registration
1.2.3. Post an item
1.2.4. Manage the expiration date and time of item
1.2.5. Manage the range price of the item
1.2.6. Receive Notifications
1.2.7. See Status
1.2.8. Automated highest bid wins
1.2.9. Rate/Feedback the bidder
1.2.10. Report the bidder

1.3. From the Admin side:


1.3.1. A Dashboard
1.3.2. Can Add categories
1.3.3. Management of user reviews
1.3.4. Can deactivate an account
8

2. To evaluate the performance of Online Bidding System (OBS) by Users and


IT Experts by means of the following criteria:
2.1 Unit Functional testing and Repeated Trial Test
2.2 Integration Testing

1.4 Scope and Delimitations

This system is designed as a web-based online application that can be accessed by

any device, including personal computers and mobile devices. The implemented Online

Bidding System allowable for users who live in Region III only. The users can participate

in bidding only if they have created an account through the registration in the web site.

As online bidding has gained much prominence in the recent times, the

implementation of this project could be beneficial to anyone looking for robust, scalable,

and reliable bidding systems. It will be easier for bidders to make a bid and will save time

by using an online bidding system. Making a bid through this application can assist in

reaching the greatest number of buyers bidding in the local area. There will be a feature

that allows bidders and sellers to communicate with one another. Do not click any

suspicious links in an email message, even if it appears to be from an online bidding site

or payment system. You might end up on a "spoof" site that looks like a legitimate site

but is a scam designed to steal your information. You could also be duped into

downloading malware onto your computer.


9

Encryption technologies support authentication by validating users' identities

during the login process to the system. Encryption is the fundamental technology that

safeguards data as it travels across the Internet.

The online bidding does not take place in person, so bidders are anonymous. The

sellers have no control over who participates in the bidding. This can make it difficult to

classify the bidders. The primary security concern is for the user's account, so a proper

login mechanism should be used to prevent hacking. The tablet id registration is a way to

increase security by checking for spam. As a result, protection against unauthorized use

of recognition software is provided.

The researchers conducted research to find out what problems the online bidding

system is facing now. The researchers find out one of the problems facing the given

system, which is the joy miners. As a solution to this given problem, the researchers built

a report button on the system just to avoid or lessen the joy of miners.

While many online commercial websites offer a wide range of products to be sold

and purchased, the Online Bidding System opted to retain the traditional spirit of auctions

and limited the categories of items that can be put up for listings. This includes Antique

Items, Ancient Weapons, Cars, Jewelry, Paintings, Old Coins & Pennies, Sculptures,

Musical Instruments, Old Technology, and Family Heirlooms. Having a limited

catalogue of items that are eligible for listing creates a sophisticated and competitive

environment for the select clientele of the Online Bidding System.


10

Transactions conducted on the system are between the seller and the buyer of the

item, with the system acting as a digital intermediary. The system only provides them the

platform to conduct their commerce and transactions. After transactions, the bidder will

choose which payment method to use and will wait for the delivery of the item. The

payment will he held until the bidder confirms being able to receive the item, at which

point the seller will be given the payment.

For the purpose of the study, the researchers opted to utilize a mock-up for

simulating the tracking and delivery process for the system. During the development

cycle of the system, it has proved to be a challenge for the researchers to find eligible

third-party partners for courier delivery services, thus opting for a mock up. GPS tracking

and other available Navigational systems will be implemented for the tracking of the

courier delivery for the system. The researchers will provide industry approved standards

for courier delivery once the system finds itself in use and operational.

Building a foundation based on the trust and support of the community that will

utilize the Online Bidding System is another goal of the researchers. Not only will it be

beneficial to the sellers, it is also in the hopes of the researchers that it will boost morale

and trust between the bidders and the system. Implementing a safe and secure platform

will ensure the bidders that the Online Bidding System is a legitimate platform that will

provide them a service they can trust.


11

2 RELATED LITERATURE

This system has a similar bid process for all government and non-governmental

organizations. Other organizations are recommended by our groups to implement this

system with few or no changes, other organizations would benefit from it.

2.1 Discussion of Models

This system is concerned primarily with the study of a bidding system that is
widely used today, manual. Most associations offer lead without ICT support. The
problem that you may encounter is that you can’t inspect the item that you’re bidding for.
Most of the time, the pictures can be misleading. The other problem that the buyer may
encounter is that there might be a lack of information about what it contains. And since it
is online, someone can deceive you and get all your money. To solve the first problem,
find a way to see if the item that you bid is the same as in the picture given, you can
contact the owner of the item to ask for more details about the item. To solve the second
one, make sure you get some information about the item that you bid and ask other
people about it. To solve the Third one, if you share your account to another person,
make sure that you can trust that person.

Every organization, both online and offline, should be aware of social media [1].
The term "social media" refers to a group of applications or web sites that are based on
concepts such as Web 2.0 and user generated content. Using social media, people can
form online communities and share their knowledge. [2].

The term "social network sites" is typically associated with web-based services
that enable users to create a public or semi-public profile that includes a list of other users
to whom they are connected, as well as the ability to browse these user connections
12

within this network of users [3]. 'Enterprise social software' refers to the use of the terms
"social network sites" and "social media" within organizations.' [4]

E-bidding is now classified into two types: public bid and sealed bid. [5]. In a
public bid, bidders may raise the price to bid on the products. As a result, the bidding
price rises until no one is willing to pay a higher price. If the highest bidder offers the
most money for the product, he is declared the winner. Bidders can place multiple bids
during a public bid, which is why it is also known as a multi-bidding item. Sealed bids
are those in which the bidder encrypts the bill and sends it only once. The seller compares
all of the bills when the due date arrives. The bidder who offers the highest price wins the
sealed bid. Because bidders can only place one bid.

Table 1. Systems and Feature Matrix

Title Systems Features


• The primary benefit
Online Bidding The work employs a number of
of this technique is
System modules to implement the
item. A login module registers that you can bid on
users and sellers on the portal any product or
and provides them membership
to do their respective activities. service from the
comfort of your own
home.
• This enables users to
find the most
qualified suppliers of
products and services
while keeping prices
to a minimum.
13

E-commerce E-commerce is a business • Ubiquity. Internet/web


strategy that allows consumers
tech is available
and corporations to buy and
sell things through the world everywhere. ...
wide web. It is active in all
• Global reach. Tech
four major market segments:
business-to-business, business- reaches across national
to-consumer, and business-to-
boundaries which
consumer. From one client to
the next. makes market space
potentially billions.
• Universal
Standards. ...
• Richness.
• Interactivity. ...
• Information density. ...
• Personalization/
Customization.
• Social Technology.

Give Smart A cloud-based auction and Pre-event and post-event


event platform designed advertising tools are provided
exclusively for charities. Give to promote consciousness
Smart uses advanced about concerns. It offers real-
algorithms to optimize event time information about the
operations, enhance income, most valuable and possible
and assist bidders in saving donors, as well as post-event
money. Give Smart can assist reports. [9].
associations, faith-based
groups, K-12 schools, and non-
profit organizations in
managing admissions and
donations.
Membership, enrolment,
fundraising, career centres,
events, and accounting [9].
Hand Bid Thanks to web-based Sellers can sell tickets,
software, users can bid from invite, register, and link
14

anywhere using their people to their auctions


smartphone, tablet, or the without making them
web. The entire system is real- register at the door. Users
time, which includes instant may bid, check out, and
outbid notifications and real- pay using their phones.
time product and pricing [10].
revisions. Hand bidding is a
delight for bidders and a
breeze for auctioneers. [10].

The table explains how the system works and how you can create an account to

buy and sell items online. Several modules are used in the work to implement the auction.

A login module registers the user and the seller on the portal and allows them to operate.

E-commerce operates in all four of the market's major segments, with a business model

that allows companies and individuals to buy and sell electronics over the internet:

company to business enterprise to client. Consumer to consumer. Give Smart provide

tools to raise awareness of causes before and after events. It provides real-time updates

and reports on the most valuable and potential donors after the event. Hand Bid auction

managers can sell tickets, invite people to register without requiring registration at door,

and allow people to connect to auction. Users can bid, check out and pay by phone.

HiBid/ Auction Flex allows for entering articles, creating invitations, tracking visitors,

slideshow, registering cash donations, making an event page, bidding on line, setting up

tax receipts, reporting, entering payments, exporting your data and more without charge.

All this is gratuitous.

2.2 Conceptual Framework


15

The researchers think that the process for running the system is a well-directed in

Online Bidding System. A well-constructed system is a major part of a successful system.

The researchers propose a system that would enable bidders and seller to assess those

who were at the system.

Figure 1. Conceptual Framework


16

The input of the project is the following: You can choose if you are a bidder or

seller, Click log in in the dashboard. If you don’t have an account, you can register to

create an account.

Following completion of all requirements, the project's process is as follows: You

place a bid that is the unique bid on your favorite product, making your existing unique

bid the lowest bid. You can also make a bid that is higher than your opponent's bid. To

win the item, it must be the unrivaled and highest unique bid until the auction ends.

Submit your Maximum bid and will continuously monitor the auction and incrementally

raise your current bid to beat the future bidders. The seller can monitor who has the

highest bid in the item that the seller post. Also, if you hold the highest maximum bid at

auction time, your current bid will be used as the starting bid.

The output of this project is like how you usually bid but here you can select or

put the amount you want to start the bid and you can see the details of the item that you

bid and the completion of the item that you bid. And in online bidding its convenience

because you can browse in any devices, the second huge benefit of using online bidding

system is that you can place offers at all hours of the day.
3 TECHNICAL BACKGROUND

This chapter presents the technologies used by the researchers to develop and

deploy the proposed system. It comprises the hardware, software, and data and test

sources expected to improve the system output.

3.1 Software Development Requirements

Table 2. Software Requirement

Software Description
Microsoft Windows
Microsoft Windows (also spelled Windows or
Win) is a graphical operating system developed
and distributed by Microsoft. It enables you to
save files, run software, play games, watch
videos, and connect to the Internet. (Windows
7/8/10 version)

Open-Source Database The code in an open-source database is


available for download, modification, and reuse.
A proprietary or closed source database, on the
other hand, is one in which the code is secured
from copying. (MySQL, Xampp, etc.) (SQL-
Apache)

Browser A web browser, also known as a "browser," is a


piece of software that enables you to access and
view websites that use HTML, PHP, and
18

JavaScript. Some of the most popular browsers


are Mozilla Firefox, Google Chrome, Opera
Mini, and Internet Explorer/Edge.

IDE’s Visual Studio Code is a lightweight yet capable


source code editor that runs on your desktop for
Windows, macOS, and Linux. It comes with
built-in support for JavaScript, TypeScript, and
Node.js, as well as a diverse ecosystem of other
languages (including C++, C#, Java, Phyton,
PHP, Go, and runtimes).

PHP Programming Language PHP is an HTML-enabled server-side scripting


language. It is used to manage dynamic content,
databases, session tracking, and even to create
entire e-commerce websites. It is compatible
with several popular databases, including
MySQL, XAMPP, Oracle, Sybase, Informix,
and Microsoft SQL Server.

Table 1 contains all the use of the system proposed. One of the important

requirements for using the system is an operating system. To use the system, users have

to operate on Windows 7 or newer for the windows and macOS v10.7 or later on the

desktop and Android v5.0 or newer for the mobile version and iOS 7 or later. MySQL

and XAMPP are the databases to be used. The system can work on any browser

supported by any of the above languages in the browser description. GitHub and Visual
19

Studio Code are the IDE to run the code and run the program. Since the language to be

used in programming is Java in particular, Visual Studio code has been considered as one

of the applicable IDE's, and has been designed to create the system interface by means of

Brackets, together with CSS, PHP and JavaScript. Cash Flow Management Software it is

usually done by financial and accounting departments of a company and is typically

supported by other cash flow accounting and financial software, such as budgeting,

forecasting and invoice management software.

3.2 Hardware Development

Table 3. Hardware Requirements

Software Description
PROCESSOR for mobile
Speed of 0.5 ghz or more for mobile gadgets
PROCESSOR for PC
Speed of 1.5 ghz or more for desktop and
computer gadgets
RAM
500mb and above for all devices

STORAGE Memory capacity of more than 100mb

The table 2 contains using the system proposed. Individuals must also make certain of

these requirements, since the proposed system will also work on mobile interfaces.
20

Figure 2. Network Topology

Figure 2 shows the proposed network architecture and development system. The

1st user is the buyer; the buyer will browse his/her devices to see the item on the internet.

The 2nd user is the seller; the sellers see if the item that he/she sold was in auction

already. When the buyer buys the item in the auction, the seller will get notification that

his/her item is sold to the buyer. Then the winning bidder will go to the database of the

system.

3.3 Sources of Data


21

The process phase includes researcher to conduct a research and journal readings

to make the initial design for the proposed web-based application. This includes system

analysis and system designing, which gives an analysis of view of the process that should

be needed further. All information was analyzed by the research. This phase also helped

researchers to come up with plans on how to build and conceptualize their proposed

system would work and be useful.

The development part of this research was entrusted with waterfall model. Each

task must be completed sequentially and step by step. The initiation of step one must be

needed to accomplish to achieve the completion of the previous one. After the planning

and data gathering, the project entitled “Online Bidding System” will be evaluated and do

some testing for feedback to achieve our goal functionality of the research.
4 METHODOLOGY

This chapter contains the Requirements Analysis, the Case Diagram, the Login

module's functional requirements, and non-functional requirements. This part also shows

overviews of the different techniques and methodologies of the system for development

as well as explaining its advantages and disadvantages. This chapter also discusses the

processes that is necessary to achieve the goals in developing the system titled “Online

Bidding System”. The system is subjected through trial-and-error testing.

4.1 Methods in Data Gathering

The researchers used a strategy that allowed them to collect the information and

insight they required to help the system’s development.

The researchers opted to use a data gathering method utilizing the internet. Due to

the restrictions imposed by the Covid-19 pandemic, the researchers are limited to

conducting a data gathering method that does not involve human contact. Internet is

flexible when it comes to data, therefore; the researchers used Google Scholar and other

information providing websites for the gathering of data.

4.1.1 Interview Method

The interview was conducted through online verbal conversations between two

people to collect information needed for the study. The researchers contacted and

conducted an interview with Mr. Allen Mendoza, he is a bidder in a bidding website, Mr.
23

Jay Mercado, who tried a bidding website once. Mr. Alvin Mercado, a bidder and seller

in a bidding website. Mr. John Ramelo, he is a bidder in a bidding site. Mr. Alfredo

Mercado, he is a bidder in a bidding site. We asked various question to get necessary

information which allowed the researchers to know more about bidding processes and

gain useful insights for the improvement of the project.

4.1.2 Internet Method

Internet Method aided the researchers to conduct this information. To collect

data and information from the internet that will assist researchers in coming up with a

range of ideas to decide, plan, and enhance their research. The internet makes and

provides more important information available and accessible. The internet is a great

place to look for information, resources, and facts that aren't available in a library,

archive, or other platform. However, not all the information available on the internet is

correct and error-free. It's critical to understand the article's information by learning about

the author and the article's substance.

4.1.3 Observation

Through observation the researchers analyzed the current problems that bidders

have by observing how difficult it is to find a bidding event. To achieve the goal, the

analyst must identify the right information, select the right person, and look in the right

place. It also lacks user monitoring and bidding knowledge. The researchers devised a

method for developing a better system that will benefit all users.
24

4.2 Design and Development of Online Bidding System

In this phase, the researchers utilized the agile methodology to design and

construct the system. First, the researchers determine and analyze the present status and

expectations. The sprint preparation, which entails attentively planning the initial stage of

the creation and preparing the tools and requirements, is followed by the work

distribution. The team has called a meeting once each assignment is completed to receive

feedback and recommendations, as well as make improvements after reviewing.

4.2.1 Requirement Analysis and Documentation


25

Figure 3. Requirement Analysis and Documentation

The product or service is sold by the seller to the highest bidder. Online auctions

provide sellers with new sales channels for new products while also providing buyers

with favorable purchasing conditions. A bidder is a party who offers to buy an asset from

a seller at a predetermined price. A bidder can be an individual or a business, and the

potential purchase can be part of a multi-party transaction or an auction. In most cases,

the bidder who offers the highest price is chosen by the party selling the asset. The admin

has a full control in the system. The admin can add or edit categories in the system, and

can deactivate the account of the buyer or seller in the system, if they do a disagreeable in

the system

4.2.1.1 User Requirements


26

Figure 4. Use Case Diagram of Online Bidding System

Figure 4 shows the Use Case Diagram of Online Bidding System. Demonstrate

how the whole system runs and interacts with the actors that are a part of process The

admin used monitor all the users and could add categories and deactivate or reactivate

users. The seller necessity adding product/item to which the bidder must bid. Set the date

and time for the item to expire. The bidder can browse and select an item to bid and send

feedback or reporting the seller.

4.2.1.2 User Characteristics

The system requires users to have general internet knowledge as well as the device
used to access it. The administrator is expected to be more knowledgeable about the
27

system's interface. Sellers should also be capable of properly analyzing and navigating
internet usage, as well as dealing with customers who are unfamiliar with bidding. The
user will be able to.
The bidder will be able to:

1. Create an account
2. Browse an item and view current bid and time
3. Bid an item
4. Report the seller
5. Rate/Send feedback
6. Chat the seller
The seller will be able to:

1. Create an account
2. Receive feedback
3. Rate/Report the bidder
4. Add item/product
5. View highest bid
6. Set time/date of bidding
7. Chat the bidder

The administrator will be able to:

1. Monitor active users


2. Add/edit categories
3. Receive complaints
4. Activate/deactivate account

4.2.1.3 Functional Requirements


28

The Online Bidding System's functional requirements have been developed to

ensure that the system's functionalities and functional aspects are met.

Table 4. Functional Requirement for Seller Module

Req.ID Requirement Description Priorit Complexity


y
FR1. Registered sellers shall be able to Login to System High Medium
by providing Username and Password
• Upon successful login, users shall be
redirected to the dashboard
• If incorrect, a Login error message shall be
displayed
FR2. Registration. The Sellers will register to the system High Medium
using the web-based interface using his/her name,
address, password, contact number, and email
address for confirmation to activate.
FR3. View bidding time/date and current bid. It is a High Medium
seller’s functionality that enables them to view the
highest and lowest bids and time/date remaining
FR4. Receive feedback. It is a sellers and admin’s High Medium
functionality that enables them to view the
feedbacks from the bidder about their satisfactions
of the system.
FR5. Seller’s dashboard. Add product to the categories High Medium
they want to sell and set the starting bid and set the
time of expiry of the item.
FR6. Send complain. The seller can send complain about High Medium
the issue of the bidder and the admin will receives
the complaint.

Table 5. Functional Requirement for Bidder Module

Req.ID Requirement Description Priorit Complexity


y
FR7. Registered sellers shall be able to Login to System High Medium
by providing Username and Password
29

Req.ID Requirement Description Priorit Complexity


y
• Upon successful login, users shall be
redirected to the dashboard
• If incorrect, a Login error message shall be
displayed
FR8. Send feedback. The bidder can send feedback to High Medium
the seller for the other bidder’s satisfaction.
FR9. Bidder’s dashboard. View item available after the High Medium
sellers post an item to the categories.
FR10. Registration. The Bidder will register to the system High Medium
using the web-based interface using his/her name,
address, password, contact number, and email
address for confirmation to activate.
FR11. View bidding time/date and current bid. It is a High Medium
bidder’s functionality that enables them to view the
highest and lowest bids and the time/date
remaining.
FR12. Send complain. The bidder can send complain High Medium
about the issue of the seller and the admin will
receives the complaint.
FR13. Bid item. It is a bidder’s functionality than the High Medium
bidder can bid the item as higher as they can.

Table 6. Functional Requirement for Admin Module

Req.ID Requirement Description Priorit Complexity


y
FR14. Registered admin shall be able to login to system High Medium
by providing Username and Password
• Upon successful login, users shall be
redirected to the dashboard
• If incorrect, a Login error message shall be
displayed
FR15. Categories. The admin will add the category then High Medium
the seller can add item to the categories.
FR16. Check/receive feedback and complaints. It is a High Medium
systems and admin’s functionality that enables
them to check the feedbacks and complaints by the
seller/bidder about their concerns.
30

Req.ID Requirement Description Priorit Complexity


y
FR17. Registered bidders and sellers. It is an admin’s High Medium
functionality status that the admin can see user if it
is active or not. The admin can activate and
deactivate users.
FR18. Registered Admins shall be able to Login to High Medium
System by providing Username and Password
• Upon successful login, users shall be
redirected to the dashboard
If incorrect, a Login error message shall be
displayed
FR19. Categories. The admin will add the category then High Medium
the seller can add item to the categories.
FR20. Bid item. It is a bidder’s functionality than the High Medium
bidder can bid the item as higher as they can.
4.2.1.4 Non-Functional Requirements

The web-based for Online Bidding Management system shall have the following

abilities and capabilities that can be found in the table below.

Code Dependencies Description


SS1 Accessing the software will require a username and password
SS2 The database where the password should be saved as md5 encryption
SS3 All transaction including adding, editing, and deleting of records are recorded
in audit logs
SS4 Backup and restore function

Table 7. Non-Functional Requirement for Safety and Security of Online Bidding System

4.2.2 Design of Software and/or System and/or Product and/or Processes

In this section, the researcher used the sprint, which is scrum's fundamental

development unit. The sprint is a set of modules with a deadline or expected deadline for

completing the project within a certain time frame. Each sprint phase's projected time is

specified in advance, and the operation lasts between one week and one month. The two
31

weeks of sprint is the standard operation. Every sprint that the researchers finished based

on the scheduled set it includes the briefing, summary, suggestion, and feedback. Follow

by a meeting to set a new preparation of sprint backlog.

4.2.2.1 ER Diagram

Figure 5. Database Schema of Online Bidding System


32

Figure 5 shows the Entity Relationship Diagram of the software. Filling


out the Bidding Form or registering for the Bidding event. For the Bidding event
this will require the admin, sellers, and bidders to log in.
33

4.2.2.2 Functional Decomposition Diagram

Figure 6. Functional Decomposition Diagram of Online Bidding System


34

Figure 6 shows the Functional Decomposition Diagram of Online Bidding

Web-based Online Bidding System. Online bidding is a very broad domain, allowing

people to buy a wide range of commodities on the internet. Online Bidding System has a

bidders/sellers and admins. And on Bidders/Sellers, they are going to register so they can

buy or sell in the Online Bidding System. Admins will add the categories, collect all the

complaint of the bidders/sellers and manage active users.

4.2.2.3 Operating Environment

This Application will run over all kind of operating system (Windows 7,

Windows 8, Windows 10 and Linux, Mac OS, etc.) containing web browser.

Table 8. Operating Environment Requirements

Cod Environment Description


e
OE1 The OBS shall run on Windows 7 operating system or higher, Mac OS
and on Linux operating system
OE2 XAMPP shall be installed on the computer for the database
OE3 Web browser shall be installed on the computer to access the system
OE4 VS Code shall be installed for the IDE

4.2.2.4 Design and Implementation Constraints

The Online Bidding System (OBS) must be a Web-based Application

system that runs in a web browser environment. This will ensure that the Online Bidding

System is accessible by users at any time and will be easier for them to track. PHP,

HTML, and JavaScript will be used for the development of the system.

Table 9. Design and Implementation Constraints Requirements for Online Bidding System

Code Design Constrains and Implementation Constraints Description


35

DC1 The software shall run on Windows 7,8,10, and on Mac OS


DC2 The Software shall be developed using PHP, HTML and Java
IC1 A network protection framework must be included in the system
IC2 The system shall have an Internet Firewall
36

4.2.3 System Development Methodology

Figure 7. Agile Scrum Methodology

Figure 7 shows the process of development methodology that the researchers used.

It is a collaborative model that utilizes several steps that required executing the system

development process. This phase called sprint to increase enhancement. The researchers

hand over with a capability to see future upcoming consequences at each phase which the

researchers gain a sight and give the necessary solution and improve the areas of concern

and lessen the probability that area changing requirements. This was useful to the
37

researchers allowed them to develop the methodology to maximize the scope as it is

connection to the team, customer focused and allowed them to be flexible to adapt more

techniques.

The daily scrum is conducted daily the researchers held a meeting that lasts for 30

minutes. However, this is not the accurate time it is dependent on the details that the

researchers tackle about their work. this is to check and update the progress of every

team member according to their given task it involves the report progress in every phase

by estimating the success based on the set guidelines and product backlog. After

analyzing the phases any obstacle found occurred in the meeting shall be reported and

prioritize by the scrum master and the team will work for the solution.

In development of the system, the researchers used the Agile Scrum. This

methodology focuses on the solution based on the requirements given. The development

has progress into divided phases. The following are the phases which the researcher used

in developing the system through product backlog and sprints. The above methodology

comprises of three parts which is the scrum master, product owner and the project team

development. The scrum master leads the team using the agile scrum methodology. The

product owner is focusing on the outcome of the project. And the project team

development is responsible for the task.


38

4.2.3.1.1 Planning

This step entailed researchers observing and perceiving the problem in order to

identify it and come up with a solution. Researchers employed internet technologies to

acquire insights into the company's challenges, which they then thoroughly examined and

analyzed in order to choose which characteristics to use in the system development. This

phase also included benchmark. The researchers gathered all requirements in the different

types of online bidding system in the country and held a conference to discuss them,

including the project's primary features. They then created a sprint backlog and assigned

each team member a task to complete. The product backlog was developed once the

system project specification was initiated and confirmed, in order to observe the initial

output of the system that the researcher designed. This includes the equipment.

4.2.3.2 Design and Development of System based on the Product Backlog

Sprint Features Estimated Time Estimated Day

User Interface

1 Database 98 4 days

Admin Login Form

Dashboard of Admin

Categories
2 240 10 days
Users
39

Complaints

Create Category

3 Manage Category 196 8 days

Category Table

User Information

User Status
4 220 9 days
Manage Users

Users table

User’s name

Complain of users
5 173 7 days
Records of complain
table

Page Header

Home page
6 244 10 days
Categories Tab

Profile Management

Personal Information

Update Profile button


7 168 7 days
Save New Information
button

Product painting
40

Bidding Time and Date

Create Product button

Product Description
8 314 13 days
Regular Price and Start
Bidding Amount

Item Lists

Product Information

Current bid and time left

Enter bid amount


9 294 12 days
Bid item button

Star Rating

Status of bid

Chat

Items’ bid

10 Manage Item 251 10 days

Rate

Rejected Items

Dashboard

11 Login as Bidder 120 5 days

Login as Seller
41

Dropdown menu

Seller’s account

Bidder’s account

Payment Button

12 Dropdown Menu 120 5 days

Cash on Delivery

Visa/Master Card

Payment

Payment Status

View Details Button

13 Process Button
144 6 days
Rate Bidder Button

Report Button

Report bidder Button

This table shows the product backlog that consists of a list of features that the

researchers expected to complete within the estimated time and days. The product

backlog has thirteen (13) phases of sprints. These sprints are aligned according to the

prioritization. The 1st sprint of agile scrum methodology, the researchers begin to the

development design of the system and created the following features which are the user

interface, database and the login form of user and admin. The total estimated time in
42

developing the features is 98 hours within the 4 days of working. the 2nd sprint of agile

scrum methodology. The researchers begin to the development of design of the system

and created the following features which are the Dashboard, Catergories, Users, and

Complaints. The total estimated time in developing the features is 240 hours within the

10 days of working. The 3rd sprint of agile scrum methodology. The researchers begin to

the development of design of the system and created the following features which are the

Create Category, Manage Category and Category Table. The total estimated time in

developing the features is 196 hours within the 8 days of working. The 4th sprint of agile

scrum methodology. The researchers begin to the development of design of the system

and created the following features which are the User Information, Users status and

Manage Users Button. The total estimated time in developing the features is 220 hours

within the 9 days of working. The 5th sprint of agile scrum methodology. The researchers

begin to the development of design of the system and created the following features

which is the table of recorded complain of users. The total estimated time in developing

the features is 173 hours within the 7 days of working. The 6th sprint of agile scrum

methodology. The researchers begin to the development of design of the system and

created the following features which are the Page Header, Categories Tab, and Home

page. The total estimated time in developing the features is 244 hours within the 10 days

of working. The 7th sprint of agile scrum methodology. The researchers begin to the

development of design of the system and created the following features which are the

Profile Manage, Personal Information, and Update Profile button. The total estimated
43

time in developing the features is 168 hours within the 7 days of working. The 8th sprint

of agile scrum methodology. The researchers begin to the development of design of the

system and created the following features which are the Product Category, Bidding Time

and Date, Create Product button, Product Description, and Regular Price and Start

Bidding Amount. The total estimated time in developing the features is 312 hours within

the 13 days of working. The 9th sprint of agile scrum methodology. The researchers

begin to the development of design of the system and created the following features

which are the Item Lists, Product Information, Current bid and time left, Enter bid

amount, and Bid item button. The total estimated time in developing the features is 294

hours within the 12 days of working. The 10th sprint of agile scrum methodology. The

researchers begin to the development of design of the system and created the following

features which are the Status of bid, Chat, Current bid, Items’ Bid, Manage Item,

Rejected Items, and Rate. The total estimated time in developing the features is 294 hours

within the 12 days of working. The 11th sprint of agile scrum methodology. The

researchers begin to the development of design of the system and created the following

features which are the Dashboard, Login as Bidder, and Login as Seller. The total

estimated time in developing the features is 120 hours within the 5 days of working. The

12th sprint of agile scrum methodology. The researchers begin to the development of

design of the system and created the following features which are the Dropdown Menu,

Seller’s account, Bidder’s account, Payment Button, Dropdown Menu, Cash on Delivery,

Visa/Master card. The total estimated time in developing the features is 120 hours within
44

the 5 days of working. The 12th sprint of agile scrum methodology. The researchers begin

to the development of design of the system and created the following features which are

the Payment, View Details Button, Process button, Rate bidder button, Report button,

Report bidder button. The total estimated time in developing the features is 144 hours

within the 6 days of working.

4.2.3.2 Scrum

The researchers hold a daily meeting in each sprint phase throughout this phase.

The daily scrum meeting was held online, and the researchers reviewed the status of their

assigned work, as well as the next steps in preparing for what to do once they completed

it. If there are any problems or issues, the meeting will run longer than 30 minutes.

4.2.3.3 Project Schedule


45

Table 10. Project Schedule


46

The Gantt chart shows the project team schedule of the members. The

documentation of the current capstone 1 start January 4 th week the Gathering Data, Paper

Concept Development Examination of Concept Including the Gathering of Data of the

Related Literature and Studies and other respective task for the Manuscript. The First

week of May the manuscript consultation session to Mr. Nunga for the checking of the

done work task and give a brief recommendation and feedback that may include for the

manuscript. The consultation will be held online through Microsoft Teams. The 3 rd week

of August start the planning of the developing system all the possible software and idea

to help for the development shall be discussed on the team members. The 1 st week of

October the System need to be 100% function and start the conclusion and

recommendation and the remaining time is for the appendices and final manuscript.

Table 11. Project Schedule Sprint

September October November December


Task/ Activity Weeks Weeks Weeks Weeks
1 2 3 4 1 2 3 4 1 2 3 4 1 2 3 4
Sprint 1: User Interface
Sprint 1: Database
Sprint 1: Admin Login
Form
Sprint 2: Dashboard of
Admin
Sprint 2: Categories
Sprint 2: Users
Sprint 2: Complaints
Sprint 3: Create Category
Sprint 3: Manage
Category
47

Sprint 3: Category Table


Sprint 4: User Information
Sprint 4: User Status
Sprint 4: Manage Users
Sprint 4: Users table
Sprint 5: User’s name
Sprint 5: Complain of
users
Sprint 5: Records of
complain table
Sprint 6: Page Header
Sprint 6: Home page
Sprint 6: Categories Tab
Sprint 7: Profile
Management
Sprint 7: Personal
Information
Sprint 7: Update Profile
button
Sprint 7: Save New
Information button
Sprint 8: Product
Category
Sprint 8: Bidding Time
and Date
Sprint 8: Create Product
button
Sprint 8: Product
Description
Sprint 8: Regular Price
and Start Bidding Amount
Sprint 9: Item Lists
Sprint 9: Product
Information
Sprint 9: Current bid and
time left
48

Sprint 9: Enter bid


amount
Sprint 9: Bid item button
Sprint 9: Star Rating
Sprint 10: Status of bid
Sprint 10: Chat
Sprint 10: Items’ bid
Sprint 10: Manage Item
Sprint 10: Rate
Sprint 10: Rejected Items
Sprint 11: Dashboard
Sprint 11: Login as Bidder
Sprint 11: Login as Seller
Sprint 12: Dropdown
menu
Sprint 12: Bidder’s
account
Sprint 12: Seller’s account
Sprint 12: Payment
Button
Sprint 12: Dropdown
menu
Sprint 12: Cash on
delivery
Sprint 12: Visa/Master
card
Sprint 13: Payment
Sprint 13: View details
button
Sprint 13: Process button
Sprint 13: Rate bidder
button
Sprint 13: Report button
Sprint 13: Report bidder
button
49

The Table show the list of schedules per sprint backlog. The researchers start the

development operation, test of the project at the 1 st week of September up to the 3 rd week

of October. In the 1st Sprint User Interface, Database, and the admin login form for the

Username and password. Followed by the 2nd Sprint start the operation at the 2 nd week of

September include Dashboard of Admin, Categories, Users, Complaints, the viewpoint of

the admin. The 3rd Sprint operation include the following Category for the Admin

item/products the Create Category, Manage Category, Category Table. The 4 th Sprint add

the User Information, User Status, Manage User, User’s table for the information tab of

the user. The 5th Sprint the complaint section of the User Names, Records of Complain

table the admin able to study and look forward for the user complaints. The 6 th Sprint

start the development of the Page Header, Home Page, Categories of users for the Admin.

The 7th Sprint the Profile Management, Personal Information, Update Profile Button for

the user management. The 8th Sprint for the Product Category, Bidding Time and Date,

Create Product button, Product Description, Regular Price, and Start Bidding Amount for

the Seller were in include the items and set the description, and price of the particular

items. The 9th Sprint start the operation of the Item list, Product Information, Current Bid

and time left, enter bind amount, bid items, Star Rating. For the viewpoint of the Bidder

is to set the amount and current bid including the star rating after the bidding. The 10 th

sprint includes the Status of bid, Chat, Items’ bid, Manage Item, Rate. For the interaction

of the users and manage items including the status of bid. The 11 th Sprint for the 3rd week

of October the Login as Bidder and Seller and Dashboard shall be done after the
50

estimated day. The above mentioned are features of the development system to be done

based on the number of Sprint backlog. The 12 th Sprint for the 2ndrd week of November

the dropdown menu, bidder’s account, seller’s account, payment button, dropdown menu,

cash on delivery, and visa/MasterCard. The 13 th Sprint for the 3ndrd week of November

the payment, view details button, process button, rate bidder button, report button, report

bidder button. The above mentioned are features of the development system to be done

based on the number of Sprint backlog.

Burn- Down chart


250

200

150
HOURS

100

50

0
Sprint 1 Sprint 2 Sprint 3 Sprint 4 Sprint 5 Sprint 6 Sprint 7 Sprint 8 Sprint 9

Sprints

Estimated Time Actual Time

Figure 8. Burn Down Chart

Figure 8 shows the burn down chart of the developed system. It displayed the

chart showing the work that enlisted in the sprint backlog. gives view of the development

and success of the system by sprint. It is also given sight of comparison between the
51

“Estimated Time” versus the “Actual Time” in the status of development. It is updated

every sprint done by the team. The orange line with dotted represent as the Actual time in

the development of the project system and the other one is the blue dotted represent as the

estimated time to develop the project system. The number label in the left side represents

the total duration hours of the development and lastly the sprints it represents the system

development start and the end date of development.


52

4.3 To evaluate the performance of Online Bidding System by

means of the functional and repeated trial tests.

Further evaluation of how the Online Bidding System will perform, more

functionality tests are conducted by the researchers for the purpose of further refining the

system. A log-in and register test is implemented multiple times while testing for the

correct input of the username and password of the user. The user shall then be redirected

to the system’s homepage once the user clicked the log-in button, allowing for the log-in

process to take place. This functionality test will repeat for 10 (ten) times to ensure that

the log-in function is successful, which shall then receive a ““ mark indicating the

success in functionality.

In addition to the log-in and registration tests, the researchers have also conducted

other functionality tests for the system dashboard, list management, access control, time

expiry, notifications and chat, automated bid winner, and deletion and cancellation of

bids. Figures shown below are the functionality tests that took place as the researchers

refine the functionality of the system.


53

Figure 9. User Registration/Signup test

Figure 9 presents the User Registration page; it displays which information the

system needs from the user. The testing proceeded smoothly and no errors was detected.
54

Figure 10. Dashboard upon Log-in/Sign-up

Figure 10 takes the user to the system’s dashboard after clicking the appropriate

button indicating that the Log-in/Sign-up process is successful and the user is now inside

the system.

Figure 11. List Management


55

Figure 11 shows the page where the user can manage what to do with their listings

such as add more items, update if an item is already sold or delete a listing which equates

to the item being pulled out of the bidding system. Figure 11 also shows the time expiry

functionality present for each listing.

Figure 12. Notifications and Chat

Chat and Notifications from the system is shown in Figure 12, the chat

functionality is successfully implemented as it is only accessible between the winning

bidder and the seller.


56

Figure 13. Deletion and Rejection of Listings

Figure 13 presents the delete/reject functionality of the system towards the item

listings. The user is allowed to delete or pull out their listing from the system any time

they want.
57

Figure 14. Seller page

Figure 14 shows the selling functionality of the system at work as well as the

integration of efficient functions that is easily accessible from the seller page further

improving the accuracy and efficiency given by the system to its users. Focusing on

efficiency, the seller page has changed as the testing phase progresses because of

additional functionalities being added by the researchers into the page to further improve

user experience.
58

4.3.1 Functional Test based on efficiency and accuracy

Efficiency and Accuracy is a crucial part of the Online Bidding System and the

researchers are determined to make sure that the system will deliver good service to users

therefore the need for an Efficiency based functionality test. The researchers held

collaborative meetings to determine how to implement the efficiency-based testing and

have come to the conclusion that a continuous trial will be beneficial in producing the

results that they desire. The system was subjected to multiple trials to determine if it

meets the efficiency that the researchers had envisioned and the results proved successful.

Accuracy and Efficiency with the functions of the system will provide for a properly

functioning system that is sure to deliver a good and satisfactory service to its users.
59

Figure 9. Efficiency Test

The researchers have conducted an Efficiency Test that will help scale the

functionality and efficiency of the system. For this efficiency test, the researchers decided

to implement a formula that can guarantee the system’s functional accuracy by means of

getting the total input subtracted (-) with the total received deflect/ bugs encountered by

the system. The resulting output will then be manipulated by dividing (/) it with the total

input, and then getting the percentage of the result. To collect the percentage, the

researchers will get the result from the division of the Output divided by Total Input and

will multiply it by a fixed variable of 100, therefore getting percentage values. The

overall formula would be Output divided by Total Input multiplied by 100.

Ouput
E= ×100=Value(%)
Total Input

The resulting percentage from the computation of the efficiency will by marked

Failed if it falls below 50% conversely being marked Passed if exceeding the 50% mark.
5 RESULTS AND DISCUSSION

The study and the system have undergone various changes through the course of

its development and this chapter will cover the results of those changes and will be

discussing why and how these changes affect the system. Results from all the various

testing phases will be discussed, additional comments and suggestions will also be

present in this chapter to further express what and how the changes are made.

5.1 Design and Development of Online Bidding System


61

Figure 15. Admin Login

Figure 15 presents the result of the 1 st sprint where the admin user interface login

form is designed and created. The design comes from mutiple suggestions of the team

and feedback during the creation of the sprint.

Figure 16. Admin Dashboard

The Figure 10 shows the result of the 1st sprint in which the dashboard was

developed to show a side menu containing the dashboard, manage categories, user

management and auction reports. Additionally, the clean and efficient look was designed

by the team as the development process was underway.


62

Figure 17. Admin - Manage Categories

The result of the 2nd sprint is shown above, Figure 17 was developed for creating

item categories as well as managing them. Under Manage Categories, a modification

functionality is added to allow the admin/user to update the status of an item or to reject

or delete an item that is up for bidding. The design came from the idea of a traditional

logbook.
63

Figure 18. Admin - User Management

Figure 12 shows the result of the 2 nd sprint in the development process. Using the

User Management function, the admin can manage the accounts of registered users in the

system, which includes implementing a block status to a user. User status is also shown

under User Management, the active status is designated to users with verified email and

the banned status is for users that are banned from the system. Design of this phase

comes from team suggestions and feedback during the creation of the system sprint.
64

Figure 19. Admin – Auction Reports

The above Figure 19 was made possible after the 2 nd sprint, containing a report

functionality which can be used by all users of the system in the event of errors, threats,

and malicious activities that may occur during a bidding session. It shows the users name

and the report as well as the status of the user to verify the authenticity of the report.

After receiving the complait report, it will be stored in the Admin Auction Reports.

Design of this phase comes from the team suggestions and feedback during the creation

process of the system sprint.


65

Figure 20. Homepage

The Homepage is presented in the above Figure 20, it is the result of the 6 th sprint

of agile scrum methodology. The Homepage or dashboard of the system shows the

efficiency that the researchers had in mind, incorporating a search bar for users to look

for items as well as the notifications, chat, shopping bag, and user profile. The design of

this phase comes from the team suggestion and feedback during the creation of the

system sprint.
66

Figure 21. User Account Management

Figure 21 shows the result of the 7th sprint of agile scrum methodology and with

it, the addition of User Account Management functionality. Updating users personal

information such as name and address, adding a profile picture, and changing a users

username are all included in the function of this phase. Design of this phase comes from

the team suggestions and feedback during the creation process of the system sprint.
67
68

Figure 22. Create Product Listing for Sellers

The above Figure 22 is the result of the 8 th sprint of agile scrum methodology in

which a user is able to post a listing for an item making it elligible for auction. The user

must fill up the necessary information before the item is posted for auctioning.

Additionaly, attaching an image and giving a description of the item is also added for the

purpose of showing the item to more users. The design of this phase comes from team

suggestions and the clean and efficient look was designed by the team as the system

sprint process was underway.


69

Figure 23. Product Listing Management

Figure 23 presents the result of the 10th sprint of agile scrum methodology

containing the product listing method. The product listing management is used to present

to the seller which of their products are still up for listing. Product management is also

present in this phase which allows the seller to update the status of the item or to pull out

the listing and delete the item from the system. Design of this phase comes from the team

suggestions and feedback during the creation process of the system sprint.
70

Figure 24. Browsing Auction Items

Browsing items up for auction is shown in the above Figure 24, it is the result of

the 8th sprint of agile scrum methodology. The researchers decided to implement a search

bar for browsing items for accuracy of user bids. A gallery of ongoing bidding sessions is
71

also present to gather the attention of interested buyers. The design of this phase comes

from the team suggestion and feedback during the creation of the system sprint.

Figure 25. Bidding Process

The above Figure 25 presents the result of the 8th extending to the 9th sprint of

agile scrum methodology wherein the researchers incorporated the bidding process in the

functionality. The bidding will start by getting an item from the item list, showing its

information, and how much time left before the bidding closes for that item. The bidding
72

process will only accept bids higher than the previous bid for it to register. Design of this

phase comes from the team suggestions and feedback during the creation process of the

system sprint.

Figure 26. Item Bid

Figure 26 shows the result of the 9 th sprint of agile scrum methodology where the

item bidding is developed and integrated to be accessible in the page header. This will

show a table of all the items that the user is currently bidding for and the sellers name. It

also shows the current status of an item. Users are able to manage or cancel the bid using

the manage button. The chat button and chat functionalty can only be activated after the

user won the bid or when the time is over. Rejected items are items that has not been
73

offered a bid or the seller decided to pull out the said item. The design of this phase

comes from team suggestions and the clean and efficient look was designed by the team

as the system sprint process was underway.

Figure 27. Rate

Figure 27 shows the result of the 9th extending to the 10th sprint of agile scrum

methodology where the rating process is developed. During the post-bidding process, the

user can click on the Rate button to give a star-based rating scale for the selected item.

The user can also send a report and the admin will receive the reports. The design of this

phase comes from the team suggestion and feedback during the creation of the system

sprint.
74

Figure 28. Chat

The above figure 28 presents the result of the 10th sprint of the agile scrum

methodology where the chat developed after clicking the chat button integrated in the

page header. The user can only use the chat features when winning the bid. This is where

the users transaction can be done. The design of this phase comes from the team

suggestion and feedback during the creation of the system sprint.


75

Figure 29. Notification

The above figure 29 presents the result of the 11 th sprint of the agile scrum

methodology, where the notification is developed and will be shown after clicking the

notification icon on the page header. The user can only receive notifications after winning

the bid and if another user/bidder submits a bid on an item that the user is selling. Design

of this phase comes from the team suggestions and feedback during the creation process

of the system sprint.


76

Figure 30. Dashboard

The above Dashboard is presented in Figure 30, it is the result of the 6 th sprint of

the agile scrum methodology. The dashboard of the system incorporates a search bar for

users to look for items as well as the notifications, chat, shopping bag, and user profile all

at the header for efficiency and easy access. The design of this phase comes from team

suggestions and the clean and efficient look was designed by the team as the system

sprint process was underway.


77
78

Figure 31. Selecting Users

Figure 31 presents the result of the 12 th sprint of the agile scrum methodology

conducted by the researchers. This function is for registered users as they will be able to

choose on the drop-down menu if they were going to register as Seller or a Bidder. The

system becomes user friendly by the help of this function.


79

Figure 32. Method of Payment

Figure 32 shows that the bidder can select the mode of payment they will use for

the system, there are 2 (two) options for method of payment, cash on delivery or

Visa/Master Card. This information is available to the seller during a bidding session.
80

Figure 33. Payment and Transaction Process

Figure 33 shows the item/s that the winning bidder has won and are currently
being processed for transaction. Tracking the transaction progress of the item/s is
possible through clicking the View Details button, it will show if the item is still being
processed or if it was already received by the buyer. This will ensure the admins of the
system if the transaction between the bidder and seller is working properly.
81

Figure 28. For Bidders Rating

The above figure 28 shows that sellers are able to give ratings to bidders. There is

also a feedback function that will reflect on the bidder. After answering the feedback and

giving the appropriate rating, the seller can click the rate bidder. This will show that a

bidder is good at transactions and is not a bogus buyer.

Figure 29. For Bidders Reporting

The above figure 29 presents the reporting process that can be done by either the

seller or the bidder. Users can submit the report and state the reasons for the inappropriate
82

actions either the seller or bidder committed. The admin will receive the report and will

review, respond, and proceed to what is to be done regarding the reported user.
83

5.2 To evaluate the performance of Online Bidding System by

means of the Functional Efficiency and Repeated Trial Tests.

For the purpose of ensuring the system’s readiness, further testing is required on

how the Online Bidding System will perform, more functionality tests are conducted by

the researchers for the purpose of further refining the system. A log-in and register test is

conducted multiple times, testing for the correct input of the username and password of

the user. The user shall then be redirected to the system’s dashboard/homepage once the

user clicked the log-in button, signifying that the log-in was successful. The multiple

functionality tests conducted by the researchers will cycle 10 (ten) times to ensure that

the systems functionalities are successful, which shall then receive a ““ mark indicating

the success in functionality.

In addition to the log-in and registration tests, the researchers have also conducted

other functionality tests for the system such as dashboard functionality test, listing

management, bidding management test, Admin’s user management, and others. The table

below presents all the findings in further detail after all the tests are done.
84

5.2.1 Unit Functional Testing and Repeated Trial Test

Overall Result

Expected to Repeated

Events: Actual Passed Failed Trial Test

Output Successful

Creating an account for


Successful ✓ 5
users

Displaying of the Dashboard


Successful ✓ 5
of Seller

Displaying of the Dashboard


Successful ✓ 5
of Bidder

Displaying of the Admin


Successful ✓ 5
Dashboard

Displaying the item into the


Successful ✓ 5
Category
85

Displaying the names who


Successful ✓ 5
bid the seller’s item

Expected to Repeated
Module: Bidding
Actual Passed Failed Trial Test
Management
Output Successful

Browsing an item Successful ✓ 5

Access Control (If user is

not logged and tried to bid

an item or tried to change a Successful ✓ 5

URL / URI then he/she will

be directed to Login Page).

If Bid Price / Amount is

lower than the New Price, Successful ✓ 5

then it will not accept it.


86

Bidder can only chat the


Successful ✓ 5
seller if he/she won the item.

Bid an Item that the bidder


Successful ✓ 5
wants to choose.

Can add item into category Successful ✓ 5

Sets the time of bidding


Successful ✓ 5
expiration

Expected to Repeated
Module: Real-time
Actual Passed Failed Trial Test
Management
Output Successful

Time expiration is set 5


Successful ✓
depends on the time set of

the Seller. If time has

expired, then it will find and

accept the maximum or

higher amount / value


87

whoever bid the item.

Notification is real-time

when the seller cancelled or


Successful ✓ 5
accepts the winner and if the

seller chats the bidder

Email shall be directly sent

in real-time once the user


Successful ✓ 5
registered or forgot a

password.

Expected to Repeated

Module: Login Actual Passed Failed Trial Test

Output Successful

Access Control (If user is 5


Successful ✓
not logged and tried to bid

an item or tried to change a

URL / URI then he/she will


88

be directed to Login Page).

Management of user’s
Successful ✓ 5
access control

Changing of the email


Successful ✓ 5
address

Changing of account
Successful ✓ 5
password

Editing Profile Information Successful ✓ 5

Expected to Repeated
Module: Admin
Actual Passed Failed Trial Test
Management
Output Successful

Displaying the Report of


Successful ✓ 5
users
89

Displaying the number of


Successful ✓ 5
users

Management control of
Successful ✓ 5
users

Management of the category


Successful ✓ 5

Expected to Repeated

Module: Payment Actual Passed Failed Trial Test

Output Successful

Bidder can choose what type


Successful ✓ 5
of payment method

Seller accepts the payment


Successful ✓ 5
method

Module: Rate/Feedback Expected to Passed Failed Repeated


90

Actual Trial Test


and Report
Output Successful

The bidder can rate the


Successful ✓ 5
seller; so, does the seller

Seller can report the bidder;


Successful ✓ 5
so, does the bidder

Seller can send feedback to


Successful ✓ 5
bidder; so, does the bidder

Table 23. Unit Functionality and Repeated Trial Test

The table shown above presents the functional tests that has occurred for the

bidder and seller user scenario, this is performed by the researchers to ensure that the

system works properly. Multiple functionalities of the system have been tested such as

the registration and log-in function, dashboard functionality test, listing management,

bidding management test, Admin’s user management, and others. The homepage test

occurred during the account signup/log-in after the user inputted their account, they have

been successfully redirected to the dashboard/homepage. Item Bidding Functionality was

put to test wherein the user with the highest bid will win the item and will notify the
91

winning user. Messaging/Chat functionality tests between the winning bidder and seller.

This is tested after the bidder wins the bid, the bidder cannot contact the seller after they

lose the bid nor the seller can contact the losing bidder/s.

5.2.2 Integration Testing

Compatibility Testing

The system has been tested in various Android Operating Systems.

Web-based

Browsers Versions

Google Chrome Mozilla Firefox Microsoft Edge

Did the online

bidding system ✓ ✓ ✓

launch?

Did the admin

management of the ✓ ✓ ✓

user work?
92

Did the management


✓ ✓ ✓
of bidding work?

Did the management


✓ ✓ ✓
of real-time work?

Did the bidder

receives notification
✓ ✓ ✓
of winning the bid

work?

Did the managing of


✓ ✓ ✓
the database work?

Did the account

settings work? Such


✓ ✓ ✓
as changing your

email and password?


93

6 CONCLUSIONS AND RECOMMENDATIONS

This chapter contains conclusions regarding the study with the summary,

conclusions, and further recommendations regarding the Online Bidding System for

further research.

6.1 Summary

The Online Bidding System is a solution proposed by the researchers to close the

gap between traditional and modern transactions. Findings of the study came as expected

and problems regarding the system also emerged. These problems and threats have been

quickly mitigated by the researchers’ diligence and quick responses. The emerging

problems regarding bogus users, whether they are buyers or sellers, was immediately

solved by adding an email activated authenticating function right from the beginning of

user signup/registration as an initial response against the would-be bogus users.

Additionally, a user reporting/complaints function was added as a secondary threat

eliminating function for bogus buyers. After making sure that the problem has been

solved, the researchers turned to refining and finalizing the study and the system in order

to provide a good user experience and to fulfill their goal of presenting a modern

alternative to traditional bidding systems.


94

As technology advances, there will always be traditional systems that existed

before and are now not given enough attention. The researchers turned to these traditional

systems and proposed a modern solution that will keep these systems still appreciated and

used by the modern world.

6.2 Conclusions

1. The study was carried out successfully by the researchers. The web-based

system was developed and created. In the creation of the system, objectives that have

been set out in the objectives of the system has been fulfilled by the researchers, the

requirements have also been fulfilled and the system has successfully delivered its goal.

Utilizing the Agile Scrum Methodology, developmental modules for the completion of

the system such as the admin dashboard and the bidder/seller functions were successfully

implemented and properly met the requirements that the researchers have set. All the

requirements have been successfully implemented, the admin is able to manage users,

deactivate user accounts, modify item categories. The bidder is able to log in, view

product listings, and bid for an item. And the seller can add product listings that will be

up for bidding, log in, post an item, choose categories for their item listings. The

researchers have ensured that the developed system can be recognized, operated, easily

understood, and easily accessed by possible users.


95

2. The researchers successfully completed their assigned tasks on system

functions, on the user interface and on usability, with the administrator, bidder, and seller.

The researchers have carefully tested the functions of each user by repeated testing. it

will be graded as passed and failed. Fulfillment of the study and of the system completes

the primary goal of the study, to deliver a system that is easily learned by people which

they will then use for commerce and transactions.

6.3 Recommendations

The developed system will add a feature for paying and refunding of payment

using an online payment service like Maya, PayPal, Gcash or other online banking

services in the future.

For the on-process and bidding payment of bidders, the researchers will need to

link this feature legally by having a direct partnership to a banking company. Due to the

lack of time and funding, the researchers will provide this module in the future.

Implementing a “Verified” status to users as a way of ensuring that users with this

standing are trust-worthy and are not bogus buyers/sellers to improve the overall standing

of the bidding system. Due to the lack of time and resources, this feature will be provided

in the future.
96

Instead of Web-Browser website, the researchers will develop a mobile app

available to popular and widely used smartphone operating systems like iOS and

Android. Due to shortage of time and a lack of funding, the researchers will provide this

module in the future


97

REFERENCES

[1] J. TAN AND Y. JIA, "ONLINE BIDDING SYSTEM BASED ON COURNOT MODEL USING K-MEANS
CLUSTERING," 2014 11TH INTERNATIONAL CONFERENCE ON FUZZY SYSTEMS AND KNOWLEDGE
DISCOVERY (FSKD), XIAMEN, CHINA, 2014, PP. 363-368, DOI: 10.1109/FSKD.2014.6980861.

[2] S. ADIKARI, K. DUTTA “ REAL TIME BIDDING IN ONLINE DIGITAL ADVERTISEMENT” SPRINGER
INTERNATIONAL PUBLISHING SWITZERLAND 2015 B. DONNELLAN ET. AL (EDS.): DESRIST 2015,
LNCS 9073, PP. 19-38, 2015. DOI: 10.1007/978-3-319-18714-3_2

[3] M. LIU, W. YUE, L. QIU, AND J. LI “AN EFFECTIVE BUDGET MANAGEMENT FRAMEWORK FOR

REAL-TIME BIDDING IN ONLINE ADVERTISING” 610054,CHINA, M. LIU ET AL.: EFFECTIVE BUDGET


MANAGEMENT FRAMEWORKS FOR RTB IN ONLINE ADVERTISING. VOLUME 8, 2020.

[4] KAPLAN, A.M., HAENLEIN, M.: USERS OF THE WORLD, UNITE! THE CHALLENGES AND

OPPORTUNITIES OF SOCIAL

[5] MEDIA. BUS. HORIZ. 53(1), 59–68 (2010)

[6] KIM, W., JEONG, O.-R., LEE, S.-W.: ON SOCIAL WEB SITES. INF. SYST. 35(2), 215–236 (2010).

[7] BOYD, D.M., ELLISON, N.B.: SOCIAL NETWORK SITES: DEFINITION, HISTORY, AND SCHOLARSHIP.
J. COMPUT. COMMUN. 13(1), 210–230 (2007)

[8] KÜGLER, M., SMOLNIK, S., RAETH, P.: WHY DON’T YOU USE IT? ASSESSING THE DETERMINANTS
OF ENTERPRISE SOCIAL SOFTWARE USAGE: A CONCEPTUAL MODEL INTEGRATING INNOVATION
DIFFUSION AND SOCIAL CAPITAL THEORIES. IN: ICIS 2012 PROCEEDINGS (2012)

[9] LLICHETTY S CHANDRASHEKAR, Y NARAHARI, CHARLES H ROSA, DEVADATTA M KULKARNI,


JEFFREY D TEW, AND PANKAJ DAYAMA. AUCTION-BASED MECHANISMS FOR ELECTRONIC

PROCUREMENT. IEEE TRANSACTIONS ON AUTOMATION SCIENCE AND ENGINEERING, 4(3):297–321,


2007.

[10] MARCO IANSITI AND KARIM R LAKHANI. THE TRUTH ABOUT BLOCKCHAIN. HARVARD BUSINESS
REVIEW, 95(1):118– 127, 2017.

[11] M JENIFER AND B BHARATHI. A METHOD OF REDUCING THE SKEW IN REDUCER PHASE? ? BLOCK

CHAIN ALGORITHM. IN CIRCUIT, POWER AND COMPUTING TECHNOLOGIES (ICCPCT), 2016


INTERNATIONAL CONFERENCE ON, PAGES 1–4. IEEE, 2016.
98

[12] YAN ZHU, RUIQI GUO, GUOHUA GAN, AND WEI-TEK TSAI. INTERACTIVE INCONTESTABLE

SIGNATURE FOR TRANSACTIONS CONFIRMATION IN BITCOIN BLOCKCHAIN. IN COMPUTER SOFTWARE


AND APPLICATIONS CONFERENCE (COMPSAC), 2016 IEEE 40TH ANNUAL, VOLUME 1, PAGES 443–
448. IEEE, 2016.

[13] M JENIFER AND B BHARATHI. A METHOD OF REDUCING THE SKEW IN REDUCER PHASE? ? BLOCK

CHAIN ALGORITHM. IN CIRCUIT, POWER AND COMPUTING TECHNOLOGIES (ICCPCT), 2016


INTERNATIONAL CONFERENCE ON, PAGES 1–4. IEEE, 2016.

[14] YAN ZHU, RUIQI GUO, GUOHUA GAN, AND WEI-TEK TSAI. INTERACTIVE INCONTESTABLE

SIGNATURE FOR TRANSACTIONS CONFIRMATION IN BITCOIN BLOCKCHAIN. IN COMPUTER SOFTWARE


AND APPLICATIONS CONFERENCE (COMPSAC), 2016 IEEE 40TH ANNUAL, VOLUME 1, PAGES 443–
448. IEEE, 2016YAN ZHU, RUIQI GUO, GUOHUA GAN, AND WEI-TEK TSAI. INTERACTIVE
INCONTESTABLE SIGNATURE FOR TRANSACTIONS CONFIRMATION IN BITCOIN BLOCKCHAIN. IN
COMPUTER SOFTWARE AND APPLICATIONS CONFERENCE (COMPSAC), 2016 IEEE 40TH ANNUAL,
VOLUME 1, PAGES 443–448. IEEE, 2016.
99

APPENDICES

<Appendix A:> Online Bidding System

<?php 'dbprefix' => '',

defined('BASEPATH') OR 'pconnect' => FALSE,

exit('No direct script access allowed');


'db_debug' =>

$active_group = 'default'; (ENVIRONMENT !== 'production'),

$query_builder = TRUE; 'cache_on' => FALSE,

'cachedir' => '',

$db['default'] = array( 'char_set' => 'utf8',

'dsn' => '', 'dbcollat' => 'utf8_general_ci',

'hostname' => 'localhost', 'swap_pre' => '',

'username' => 'root', 'encrypt' => FALSE,

'password' => '', 'compress' => FALSE,

'database' => 'tsu-bid', 'stricton' => FALSE,

'dbdriver' => 'mysqli', 'failover' => array(),


100

'save_queries' => TRUE

); if($this->form_validation-

>run() === FALSE){


<?php

$data['errors'] =
defined('BASEPATH') OR
validation_errors();
exit('No direct script access allowed');

$this->load-
class Bidders extends
>view('templates/header-login');
CI_Controller {

$this->load-
public function login()
>view('bidders/users/login');

{
$this->load-

>view('templates/footer-login');

$this->form_validation-

>set_rules('username', 'Username',
} else {
'required');

$student_num = $this-
$this->form_validation-
>input->post('username');
>set_rules('password', 'Password',

'required');
101

$password = md5($this- $this->session-

>input->post('password')); >set_userdata($user_data);

$user_id = $this- $this->session-

>bidder_model->login($student_num, >set_flashdata('user_loggedin', 'You are

$password); now logged in');

redirect('/');

if($user_id){ } else {

$user_data = array( $this->session-

>set_flashdata('login_failed', 'Login is
'bidder_user_id' =>
invalid');
$user_id->id,

'username' =>

$user_id->username, redirect('bidder/login');

'firstname' => }

$user_id->firstname,
}

'bidder_logged_in'

=> true

}
);
102

public function logout(){ $this->form_validation-

>set_rules('email', 'Email', 'valid_email|


$this->session-
required|is_unique[bidders.email]');
>unset_userdata('bidder_logged_in');

$this->form_validation-
$this->session-
>set_rules('username', 'Username',
>unset_userdata('bidder_user_id');
'required|is_unique[bidders.username]');

$this->session-
$this->form_validation-
>unset_userdata('username');
>set_rules('firstname', 'Firstname',

$this->session- 'required');

>set_flashdata('user_loggedout', 'You
$this->form_validation-
are now logged out');
>set_rules('lastname', 'Lastname',

'required');

redirect('bidder/login'); $this->form_validation-

>set_rules('mobile', 'Mobile number',


}
'required');
public function register()
$this->form_validation-
{
>set_rules('address', 'Address',

'required');
103

$this->form_validation- $this->load-

>set_rules('sex', 'Sex', 'required'); >view('templates/header-login', $data);

$this->form_validation- $this->load-

>set_rules('password', 'Password', >view('bidders/users/register', $data);

'required|min_length[8]|
$this->load-
max_length[30]');
>view('templates/footer-login');

$this->form_validation-

>set_rules('password_confirm', 'Confirm

Password', 'required| }

matches[password]');
else{

$email = $this->input-
$data['title'] = 'Register |
>post('email');
Online Bidding System';
$enc_password =

md5($this->input->post('password'));

if ($this->form_validation-
$set =
>run() == FALSE) {
'123456789abcdefghijklmnopqrstuvwxy

$data['errors'] = zABCDEFGHIJKLMNOPQRSTUVWX

validation_errors(); YZ';
104

$code = $config['smtp_user'] =

substr(str_shuffle($set), 0, 12); "summerwint09@gmail.com";

$user['email'] = $email; $config['smtp_pass'] =

"September28";
$user['code'] = $code;

$config['validate'] = true;
$user['active'] = false;

$config['charset'] = 'utf-8';
$id = $this-

>bidder_model->insert($user, $config['mailtype'] =

$enc_password,$code); "html";

$config['protocol'] = "smtp"; $config['crlf'] = "\r\n";

$config['smtp_host'] = $config['newline'] = "\r\n";

"smtp.googlemail.com";

$config['smtp_port'] =
$message = "
"465";

<html>
$config['smtp_crypto'] =

'ssl'; <head>

$config['smtp_timeout'] =

"400"; <title>Verification Code</title>


105

</head> ";

<body>

<h2>Thank you $this->load-

for Registering.</h2> >library('email', $config);

<p>Your $this->email-

Account:</p> >set_newline("\r\n");

<p>Email: ". $this->email-

$email."</p> >from($config['smtp_user']);

<p>Please click $this->email->to($email);

the link below to activate your


$this->email-
account.</p>
>subject('Signup Verification Email');

<h4><a
$this->email-
href='".base_url()."bidders/activate/".
>message($message);
$id."/".$code."'>Activate My

Account</a></h4> if($this->email->send()){

</body> $this->session-

>set_flashdata('message','You have
</html>
106

succesfully registered! We have sent you $id = $this->uri-

an email, Please activate your account.'); >segment(3);

} $code = $this->uri-

>segment(4);
else{

$this->session-

>set_flashdata('message', $this->email- $user = $this-

>print_debugger()); >bidder_model->getUser($id);

} if($user['code'] == $code){

redirect('bidders/register'); $data['active'] = true;

} $query = $this-

>bidder_model->activate($data, $id);

if($query){

public function activate(){


107

$this->session-

>set_flashdata('message', 'User activated


}
successfully');

public function
else{
changepassword(){

$this->session-

>set_flashdata('message', 'Something

went wrong in activating account'); $data['title'] = 'Change

Password | Online Bidding System';


}

$this->load-
else{
>view('templates/header-login', $data);

$this->session-

>set_flashdata('message', 'Cannot
$this->load->view('bidders/users/change
activate account. Code didnt match');
password', $data);

}
$this->load-

>view('templates/footer-login');

redirect('bidders/register');
108

if ($this->form_validation-

>run() == FALSE) {
}

$this->session-
public function
>set_flashdata('Passerror', 'Your
passwordchanged(){
Password did not matched correctly, try

again!');

$data['title'] = 'Change

Password'; redirect('bidders/changepassword/'.$this-

>input->post('passcode'));

$this->form_validation-
} else {
>set_rules('password', 'Password',

'required|min_length[8]|

max_length[20]');
$mdpassword =

$this->form_validation- md5($this->input->post('password'));

>set_rules('password2', 'Confirm

Password', 'matches[password]');
109

$this->bidder_model-

>changepassword($mdpassword);
$this->form_validation-

>set_rules('email', 'Email', 'valid_email|

required');
$this->session-

>set_flashdata('passwordChanged',

'Your Password has been successfully


if ($this->form_validation-
changed!');
>run() == FALSE) {

redirect('bidders/login');
$data['errors'] =

validation_errors();

$this->load-

>view('templates/header-login', $data);
}

$this->load-

>view('bidders/users/forgotpassword',

public function $data);

forgotPassword(){
$this->load-

$data['title'] = 'Forgot >view('templates/footer-login');

Password | Online Bidding System';


110

$set =

'123456789abcdefghijklmnopqrstuvwxy
} else {
zABCDEFGHIJKLMNOPQRSTUVWX

YZ';

$email = $this->input- $code =

>post('email'); substr(str_shuffle($set), 0, 12);

$findemail = $this-

>bidder_model-

>forgotPassword($email);

$user['email'] =
$codeAcc = $this->input-
$email;
>post('codeAcc');

if ($findemail) {

$config['protocol'] =

"smtp";

$email = $this-
$config['smtp_host']
>input->post('email');
= "smtp.googlemail.com";
111

$config['smtp_port'] $config['mailtype'] =

= "465 "html";

$config['crlf'] = "\r\

n";

$config['smtp_crypto'] = 'ssl'; $config['newline'] =

"\r\n";

$config['smtp_timeout'] = "400"; $message = "

$config['smtp_user'] <html>

= "summerwint09@gmail.com";
<head>

$config['smtp_pass']

= "September28";
<title>Change your Password</title>

$config['validate'] =
</head>
true;

<body>
$config['charset'] =

'utf-8';

<h2>Please see the link below and

change you password.</h2>


112

<h3><a $this->email-

href='".base_url()."bidders/changepassw >subject('Forgot Password on your

ord/".$codeAcc."'>Change Account');

Password</a></h3>
$this->email-

</body> >message($message);

</html>

";

if($this->email-

>send()){
$this->load-

>library('email', $config); $this->session-

>set_flashdata('messageFP','Please see
$this->email-
your email to change your password');
>set_newline("\r\n");

}
$this->email-

>from($config['smtp_user']); else{

$this->email- $this->session-

>to($email); >set_flashdata('messageFP', $this-

>email->print_debugger());
113

redirect('bidders/login');

} else {

$this->session-
<?php
>set_flashdata('messageError','Please

enter a valid Email'); defined('BASEPATH') OR

exit('No direct script access allowed');

redirect('bidders/forgotPassword'); class Sellers extends

CI_Controller {
114

$this->load-

>view('templates/header-login');

$this->load-
public function login()
>view('sellers/users/login', $data);

{
$this->load-

>view('templates/footer-login');

$this->form_validation- } else {

>set_rules('username', 'Username',

'required');

$this->form_validation-

>set_rules('password', 'Password', $student_num = $this-

'required'); >input->post('username');

if($this->form_validation- $password = md5($this-

>run() === FALSE){ >input->post('password'));

$data['errors'] =

validation_errors();
115

$user_id = $this- $this->session-

>seller_model->login($student_num, >set_userdata($user_data);

$password);

if($user_id){
$this->session-

>set_flashdata('user_loggedin', 'You are

now logged in');


$user_data = array(

'seller_user_id' =>

$user_id->id, redirect('pages/home');

'username' => } else {

$user_id->username,

'firstname' =>
$this->session-
$user_id->firstname,
>set_flashdata('login_failed', 'Login is

'seller_logged_in' => invalid');

true

);
redirect('seller/login');
116

} $this->form_validation-

>set_rules('lastname', 'Lastname',
}
'required');

$this->form_validation-

} >set_rules('mobile', 'Mobile number',

'required');
public function register()

$this->form_validation-
{
>set_rules('address', 'Address',

'required');

$this->form_validation-
$this->form_validation-
>set_rules('email', 'Email', 'valid_email|
>set_rules('sex', 'Sex', 'required');
required|is_unique[users.email]');
$this->form_validation-
$this->form_validation-
>set_rules('password', 'Password',
>set_rules('username', 'Username',
'required|min_length[8]|
'required|is_unique[users.username]');
max_length[30]');

$this->form_validation-
$this->form_validation-
>set_rules('firstname', 'Firstname',
>set_rules('password_confirm', 'Confirm
'required');
Password', 'required|

matches[password]');
117

$data['title'] = 'Register | $email = $this->input-

Online Bidding System'; >post('email');

$enc_password =

md5($this->input->post('password'));
if ($this->form_validation-

>run() == FALSE) {

$data['errors'] =

validation_errors();
$set =

$this->load- '123456789abcdefghijklmnopqrstuvwxy

>view('templates/header-login', $data); zABCDEFGHIJKLMNOPQRSTUVWX

YZ';
$this->load-

>view('sellers/users/register', $data); $code =

substr(str_shuffle($set), 0, 12);
$this->load-

>view('templates/footer-login');

} $user['email'] = $email;

else{ $user['code'] = $code;


118

$user['active'] = false; $config['smtp_user'] =

"summerwint09@gmail.com";
$id = $this->seller_model-

>insert($user,$enc_password,$code); $config['smtp_pass'] =

"September28";

$config['validate'] = true;

$config['charset'] = 'utf-8';
$config['protocol'] =

"smtp"; $config['mailtype'] =

"html";
$config['smtp_host'] =

"smtp.googlemail.com"; $config['crlf'] = "\r\n";

$config['smtp_port'] = $config['newline'] = "\r\n";

"465";
$message = "

<html>

$config['smtp_crypto'] =
<head>
'ssl';

<title>Verification Code</title>

$config['smtp_timeout'] =
</head>
"400";
119

<body>

<h2>Thank you $this->load-

for Registering.</h2> >library('email', $config);

<p>Your $this->email-

Account:</p> >set_newline("\r\n");

<p>Email: ". $this->email-

$email."</p> >from($config['smtp_user']);

<p>Please click $this->email->to($email);

the link below to activate your


$this->email-
account.</p>
>subject('Signup Verification Email');

<h4><a
$this->email-
href='".base_url()."sellers/activate/".
>message($message);
$id."/".$code."'>Activate My

Account</a></h4>

</body>

</html> if($this->email->send()){

"; $this->session-

>set_flashdata('message','You have
120

succesfully registered! We have sent you

an email, Please activate your account.');


redirect('sellers/register');

}
}

else{

$this->session-
}
>set_flashdata('message', $this->email-

>print_debugger()); public function activate(){

$id = $this->uri-

>segment(3);
}
$c

ode = $this->uri->segment(4);
if($query){
$this->session-
>set_flashdata('message', 'User activated
$user = $this->seller_model-
successfully');
>getUser($id);
}
else{
$this->session-
if($user['code'] == $code){
>set_flashdata('message', 'Something went
wrong in activating account');

$data['active'] = true; }

$query = $this->seller_model- }
>activate($data, $id);
121

else{ $this->form_validation-
>set_rules('password', 'Password', 'required|
$this->session-
min_length[8]|max_length[20]');
>set_flashdata('message', 'Cannot activate
account. Code didnt match'); $this->form_validation-
>set_rules('password2', 'Confirm Password',
}
'matches[password]');

redirect('sellers/register');
if ($this->form_validation->run() ==
FALSE) {

}
$this->session-
>set_flashdata('Passerror', 'Your Password
public function changepassword(){ did not matched correctly, try again!');
redirect('sellers/changepassword/'.
$data['title'] = 'Change Password | $this->input->post('passcode'));
Online Bidding System';

} else {
$this->load->view('templates/header-
login', $data);
$mdpassword = md5($this->input-
>post('password'));
$this->load->view('sellers/users/changepass
word', $data);
$this->load->view('templates/footer- $this->seller_model-
login'); >changepassword($mdpassword);

$this->session-
>set_flashdata('passwordChanged', 'Your
} Password has been successfully changed!');
public function passwordchanged(){ redirect('sellers/login');

$data['title'] = 'Change Password'; }


122

} if ($findemail) {

public function forgotPassword(){


$data['title'] = 'Forgot Password |
Online Bidding System';
$email = $this->input-
>post('email');
$this->form_validation-
>set_rules('email', 'Email', 'valid_email|
required');

$set =
if ($this->form_validation->run() ==
'123456789abcdefghijklmnopqrstuvwxyzA
FALSE) {
BCDEFGHIJKLMNOPQRSTUVWXYZ';
$data['errors'] = validation_errors();
$code = substr(str_shuffle($set),
0, 12);

$this->load->view('templates/header-login',
$data);
$user['email'] = $email;
$this->load->view('sellers/users/forgotpassw
ord', $data);
$this->load->view('templates/footer-
login');

} else {
$config['protocol'] = "smtp";

$email = $this->input- $config['smtp_host'] =


>post('email'); "smtp.googlemail.com";

$findemail = $this->seller_model- $config['smtp_port'] = "465";


>forgotPassword($email);
$codeAcc = $this->input- $config['smtp_crypto'] = 'ssl';
>post('codeAcc');
123

$this->load->library('email',
$config);
$config['smtp_timeout'] =
"400"; $this->email->set_newline("\r\
n");
$config['smtp_user'] =
"summerwint09@gmail.com"; $this->email-
>from($config['smtp_user']);
$config['smtp_pass'] =
"September28"; $this->email->to($email);
$config['validate'] = true; $this->email->subject('Forgot
Password on your Account');
$config['charset'] = 'utf-8';
$this->email-
$config['mailtype'] = "html";
>message($message);
$config['crlf'] = "\r\n";
$config['newline'] = "\r\n";

if($this->email->send()){
$message = "
$this->session-
<html> >set_flashdata('messageFP','Please see your
email to change your password');
<head>
}
<title>Change your
Password</title> else{

</head> $this->session-
>set_flashdata('messageFP', $this->email-
<body> >print_debugger());
<h2>Please see the
link below and change you password.</h2>
}
<h3><a
href='".base_url()."sellers/changepassword/"
.$codeAcc."'>Change Password</a></h3>
redirect('sellers/login');
</body>
</html>
} else {
";
124

$this->session- redirect('seller/login');
>set_flashdata('messageError','Please enter a
}
valid Email');

}
redirect('sellers/forgotPassword'); <?php
} defined('BASEPATH') OR exit('No direct
script access allowed');

class Admin extends CI_Controller {


}

public function dashboard(){


}

if (!$this->session-
public function logout(){
>userdata('admin_logged_in')){
redirect('admin/login');
$this->session-
}
>unset_userdata('seller_logged_in');
$this->session-
>unset_userdata('seller_user_id'); $this->load->view('templates/header-
admin');
$this->session-
>unset_userdata('username');
$this->load->view('admin/dashboard/index')
;
$this->load->view('templates/footer-
$this->session- admin');
>set_flashdata('user_loggedout', 'You are
}
now logged out');
125

public function login()


{
$user_id = $this->admin_model-
>login($student_num, $password);
$this->form_validation-
>set_rules('username', 'Username',
'required');
if($user_id){
$this->form_validation-
>set_rules('password', 'Password',
'required');

$user_data = array(
if($this->form_validation->run() === 'admin_user_id' => $user_id-
FALSE){ >id,
$data['errors'] = validation_errors(); 'username' => $user_id-
>username,
'admin_logged_in' => true
$this->load->view('templates/header-login'); );

$this->load->view('admin/users/login');
$this->session-
$this->load->view('templates/footer- >set_userdata($user_data);
login');

} else {
$this->session-
>set_flashdata('added', 'You are now logged
in');

$student_num = $this->input-
>post('username'); redirect('admin/dashboard');
} else {

$password = md5($this->input-
>post('password'));
126

$this->session-
>set_flashdata('login_failed', 'Login is
public function users() {
invalid');

if (!$this->session-
redirect('admin/login');
>userdata('admin_logged_in')){
}
redirect('admin/login');
}
}

}
$data['sellers'] = $this->admin_model-
>get_sellers();
public function logout(){ $data['bidders'] = $this->admin_model-
>get_bidders();

$this->session-
>unset_userdata('admin_logged_in'); $this->load->view('templates/header-
admin');
$this->session-
>unset_userdata('admin_user_id');
$this->load->view('admin/userlists/index',
$this->session-
$data);
>unset_userdata('username');
$this->load->view('templates/footer-
admin');

$this->session-
}
>set_flashdata('user_loggedout', 'You are
now logged out');
public function manage($id) {
redirect('admin/login');
} if (!$this->session-
>userdata('admin_logged_in')){
redirect('admin/login');
}
127

$data['seller'] = $this->admin_model-
>get_seller($id);
$this->session->set_flashdata('added',
'User has been activated');
$this->load->view('templates/header-
admin');
redirect('admin/users');
}
$this->load->view('admin/userlists/editseller
', $data); public function status($id) {
$this->load->view('templates/footer-
admin');
if (!$this->session-
>userdata('admin_logged_in')){
} redirect('admin/login');
}
public function deactivate_seller(){

$data['bidder'] = $this->admin_model-
>get_bidder($id);
$this->admin_model-
>deactivate_seller();

$this->load->view('templates/header-
admin');

$this->session->set_flashdata('added',
$this->load->view('admin/userlists/editbidde
'User has been deactivated');
r', $data);
$this->load->view('templates/footer-
redirect('admin/users'); admin');
}
}
public function activate_seller(){
public function deactivate_bidder(){
$this->admin_model->activate_seller();
128

$this->admin_model- $data['bidders'] = $this->rate_model-


>deactivate_bidder(); >get_reportsbid();
$this->load->view('templates/header-
admin', $data);

$this->session->set_flashdata('added',
$this->load->view('admin/reports/index',
'User has been deactivated');
$data);
$this->load->view('templates/footer-
redirect('admin/users'); admin');

}
}

public function activate_bidder(){


}

$this->admin_model- <?php
>activate_bidder();
defined('BASEPATH') OR exit('No direct
script access allowed');

$this->session->set_flashdata('added', class Bidder_model extends CI_Model {


'User has been activated');

function __construct(){
redirect('admin/users');
parent::__construct();
}
$this->load->database();
}

public function reports(){


public function login($student_num,
$data['title'] = "Reports | Users"; $password){

$data['sellers'] = $this->rate_model-
>get_reports();
129

$this->db->where('username', 'lastname' => $this->input-


$student_num); >post('lastname'),
$this->db->where('password', 'mobile' => $this->input-
$password); >post('mobile'),
$this->db->where('active', 1); 'address' => $this->input-
>post('address'),
'bday' => $this->input->post('bday'),
$result = $this->db->get('bidders');
'password' => $enc_password,
'code' => $code,
if($result->num_rows() == 1){
'sex' => $this->input->post('sex'),
return $result->row(0);
);
} else {
return false;
$this->db->insert('bidders', $user);
}
return $this->db->insert_id();
}
}

public function getAllUsers(){


public function getUser($id){
$query = $this->db->get('bidders');
$query = $this->db-
return $query->result();
>get_where('bidders',array('id'=>$id));
}
return $query->row_array();
}
public function insert($user,
$enc_password,$code){
public function activate($data, $id){
$user = array(
$this->db->where('bidders.id', $id);
'email' => $this->input-
>post('email'), return $this->db->update('bidders',
$data);
'username' => $this->input-
>post('username'), }
'firstname' => $this->input- public function forgotPassword($email)
>post('firstname'),
130

{ {
$this->db->select('email'); $this->db->where('email', $query);
$this->db->from('bidders'); }
$this->db->where('email', $email); return $this->db->get();
$query=$this->db->get(); }
return $query->row_array();
} public function
changepassword($mdpassword){

function is_code_available($code)
$data = array(
{
'password' => $mdpassword,
$this->db->where('email', $code);
);
$query = $this->db->get("bidders");
if($query->num_rows() > 0)
$this->db->where('code', $this->input-
{
>post('passcode'));
return true;
return $this->db->update('bidders',
} $data);

else }

{
return false; }

} <?php

} defined('BASEPATH') OR exit('No direct


script access allowed');

function fetch_data($query)
class Seller_model extends CI_Model {
{
$this->db->select("*");
function __construct(){
$this->db->from("bidders");
parent::__construct();
if($query != '')
131

$this->load->database(); public function insert($user,


$enc_password,$code){
}

$user = array(
'email' => $this->input-
public function login($student_num,
>post('email'),
$password){
'username' => $this->input-
>post('username'),
$this->db->where('username',
'firstname' => $this->input-
$student_num);
>post('firstname'),
$this->db->where('password',
'lastname' => $this->input-
$password);
>post('lastname'),
$this->db->where('active', 1);
'mobile' => $this->input-
>post('mobile'),

$result = $this->db->get('users'); 'address' => $this->input-


>post('address'),
'bday' => $this->input->post('bday'),
if($result->num_rows() == 1){
'password' => $enc_password,
return $result->row(0);
'code' => $code,
} else {
'sex' => $this->input->post('sex')
return false;
);
}
}
$this->db->insert('users', $user);
return $this->db->insert_id();
public function getAllUsers(){
}
$query = $this->db->get('users');
return $query->result();
public function getUser($id){
}
$query = $this->db-
>get_where('users',array('id'=>$id));
132

return $query->row_array(); {
} return false;
}
public function activate($data, $id){ }
$this->db->where('users.id', $id);
return $this->db->update('users', function fetch_data($query)
$data);
{
}
$this->db->select("*");
$this->db->from("users");
public function forgotPassword($email)
if($query != '')
{
{
$this->db->select('email');
$this->db->where('email', $query);
$this->db->from('users');
}
$this->db->where('email', $email);
return $this->db->get();
$query=$this->db->get();
}
return $query->row_array();
}
public function
changepassword($mdpassword){
function is_code_available($code)
{ $data = array(
$this->db->where('email', $code); 'password' => $mdpassword,
$query = $this->db->get("users"); );
if($query->num_rows() > 0)
{ $this->db->where('code', $this->input-
>post('passcode'));
return true;
return $this->db->update('users',
}
$data);
else
}
133

}
} }
<?php
defined('BASEPATH') OR exit('No direct public function get_sellers(){
script access allowed');
$query = $this->db->get('users');
return $query->result_array();
class Admin_model extends CI_Model {
}

function __construct(){
public function get_seller($id){
parent::__construct();
$this->db->where('id', $id);
$this->load->database();
$query = $this->db->get('users');
}
return $query->row_array();
}

public function login($student_num,


public function get_bidders(){
$password){
$query = $this->db->get('bidders');
return $query->result_array();
$this->db->where('username',
$student_num); }
$this->db->where('password',
$password);
public function get_bidder($id){
$this->db->where('id', $id);
$result = $this->db->get('admin');
$query = $this->db->get('bidders');
return $query->row_array();
if($result->num_rows() == 1){
}
return $result->row(0);
} else {
public function deactivate_seller(){
return false;
134

$data = array( );
'active' => 0
); $this->db->where('id', $this->input-
>post('userid'));
return $this->db->update('bidders',
$this->db->where('id', $this->input-
$data);
>post('userid'));
}
return $this->db->update('users',
$data);
} public function activate_bidder(){

public function activate_seller(){ $data = array(


'active' => 1
$data = array( );
'active' => 1
); $this->db->where('id', $this->input-
>post('userid'));
return $this->db->update('bidders',
$this->db->where('id', $this->input-
$data);
>post('userid'));
}
return $this->db->update('users',
$data);
} }
<?php
defined('BASEPATH') OR exit('No direct
script access allowed');

public function deactivate_bidder(){


class Auction_model extends CI_Model {

$data = array(
function __construct(){
'active' => 0
135

parent::__construct(); $this->db->join('products',
'products.product_id = auctions.product_id');
$this->load->database();
$this->db-
}
>select_max('auctions.amount');
$this->db-
public function get_products($id){ >where('auctions.product_id', $id);

$this->db->order_by('product_id', $query = $this->db->get('auctions');


'DESC');
return $query->row_array();
$this->db->where('category_id', $id);
}
$query = $this->db->get('products');
return $query->result_array();
public function highestamount(){
}
$this->db->select_max('amount');
$this->db->where('product_id', $this-
public function get_item($id){ >uri->segment(4));

$this->db->where('product_id', $id); $query = $this->db->get('auctions');

$query = $this->db->get('products'); return $query->row_array();

return $query->row_array(); }

}
public function bid_expire(){

public function get_prod_item($id){


$this->db- $data = array(
>where('products.product_id', $id);
'status' => 1,
$query = $this->db->get('products');
);
return $query->row_array();
}

public function highest_bid($id){


$this->db->where('product_id',
$this->db->join('bidders', 'bidders.id = $_SESSION['userid']);
auctions.user_id');
136

$this->db->where('amount', return $this->db->update('auctions',


$_SESSION['bids']); $data);
$this->db->where('NOW() > end_bid');
return $this->db->update('auctions',
$data);
}

}
public function get_items(){
$this->db->join('auctions',
public function reject_add(){ 'auctions.product_id = products.product_id');
$data = array ( $this->db->join('users', 'users.id =
products.seller_id');
'status_prod' => 1
$this->db->where('auctions.user_id',
);
$this->session->userdata('bidder_user_id'));
$this->db->where('product_id',
$query = $this->db->get('products');
$_SESSION['userid']);
return $query->result_array();
return $this->db->update('products',
$data); }
}
public function get_chat($id){
public function reject_bid(){ $this->db->join('auctions',
'auctions.product_id = products.product_id');
$this->db->join('users', 'users.id =
$data = array(
products.seller_id');
'status' => 4,
$this->db->where('auctions.auction_id',
); $id);
$query = $this->db->get('products');

$this->db->where('seller_id', $this- return $query->row_array();


>input->post('seller_id'));
}
$this->db->where('product_id', $this-
>input->post('product_id'));
public function get_bid($id){
$this->db->where('status', 0);
137

$this->db->join('products', $this->db->delete('auctions');
'products.product_id = auctions.product_id');
return true;
$this->db->where('auctions.auction_id',
}
$id);
$query = $this->db->get('auctions');
}
return $query->row_array();
<?php
}
defined('BASEPATH') OR exit('No direct
script access allowed');
public function bid(){

class Product_model extends CI_Model {


$data = array(
'product_id' => $this->input-
function __construct(){
>post('product_id'),
parent::__construct();
'amount' => $this->input-
>post('amount'), $this->load->database();
'seller_id' => $this->input- }
>post('seller_id'),
'user_id' => $this->input-
>post('user_id'), public function get_products(){

'end_bid' => $this->input- $this->db->order_by('product_id',


>post('end_bid') 'DESC');

); $this->db->join('categories',
'categories.category_id =
products.category_id');
return $this->db->insert('auctions', $this->db->where('products.seller_id',
$data); $this->session->userdata('seller_user_id'));
} $query = $this->db->get('products');
return $query->result_array();
public function delete_bid($id){ }
$this->db->where('auction_id', $id);
138

public function get_product($id){ return $this->db->insert('products',


$data);
$this->db->join('categories',
'categories.category_id =
products.category_id');
}
$this->db->where('product_id', $id);
$query = $this->db->get('products');
public function update_product(){
return $query->row_array();
}
$data = array(
'product' => $this->input-
public function >post('product'),
create_product($prod_image){
'category_id' => $this->input-
>post('category'),
$data = array( 'description' => $this->input-
>post('description'),
'product' => $this->input-
>post('product'), 'reg_price' => $this->input-
>post('reg_price'),
'category_id' => $this->input-
>post('category'), 'bid_amount' => $this->input-
>post('bid_amount'),
'description' => $this->input-
>post('description'), 'bid_endtime' => $this->input-
>post('bid_endtime'),
'reg_price' => $this->input-
>post('reg_price'), );
'bid_amount' => $this->input-
>post('bid_amount'),
$this->db->where('product_id', $this-
'bid_endtime' => $this->input- >input->post('prod_id'));
>post('bid_endtime'),
'seller_id' => $this->input-
return $this->db->update('products',
>post('user_id'),
$data);
'prod_image' => $prod_image,
}
);

public function delete_product($id){


139

$this->db->where('product_id', $id); $this->db->where('product_id', $this-


>input->post('prod_id'));
$this->db->delete('products');
return true;
return $this->db->update('products',
}
$data);

public function
}
update_image($post_image){

public function unsold(){


$data = array(
$data = array (
'prod_image' => $post_image
'status_prod' => 0
);
);
$this->db->where('product_id', $this-
$this->db->where('product_id', $this-
>input->post('prod_id'));
>input->post('prod_id'));
return $this->db->update('products',
$data);
return $this->db->update('products',
}
$data);

}
}
<?php
defined('BASEPATH') OR exit('No direct
public function
script access allowed');
remove_image($post_image){

class Item_model extends CI_Model {


$data = array(
'prod_image' => 'noimage.png'
function __construct(){
);
parent::__construct();
$this->load->database();
140

} $this->db->join('bidders', 'bidders.id =
auctions.user_id');
$this->db->where('auctions.auction_id',
public function get_items(){
$id);
$this->db->join('auctions',
$query = $this->db->get('auctions');
'auctions.product_id = products.product_id');
return $query->row_array();
$this->db-
>group_by('auctions.product_id'); }
$this->db->where('products.seller_id',
$this->session->userdata('seller_user_id'));
public function managelists(){
$query = $this->db->get('products');
$this->db->where('product_id', $this-
return $query->result_array(); >uri->segment(3));
} $query = $this->db->get('products');
return $query->row_array();
public function view_bid($id){ }
$this->db->join('auctions',
'auctions.product_id = products.product_id');
public function chat($id){
$this->db->join('bidders', 'bidders.id =
$this->db->join('products',
auctions.user_id');
'products.product_id = auctions.product_id');
$this->db-
$this->db->join('bidders', 'bidders.id =
>where('auctions.product_id', $id);
auctions.user_id');
$query = $this->db->get('products');
$this->db->where('auctions.auction_id',
return $query->result_array(); $id);
} $query = $this->db->get('auctions');
return $query->row_array();
}
public function manage_bid($id){
$this->db->join('products', public function update(){
'products.product_id = auctions.product_id');

$data = array(
141

'status' => 1, );
); $this->db->where('product_id', $this-
>input->post('product_id'));
return $this->db->update('products',
$this->db->where('auction_id', $this-
$data);
>input->post('auction_id'));
}

return $this->db->update('auctions',
$data); public function cancel_winner(){
} $data = array (
'status_prod' => 0
public function notif(){ );
$data = array ( $this->db->where('product_id', $this-
>input->post('product_id'));
'status' => 1,
return $this->db->update('products',
'notification' => "You won the bid!",
$data);
'user_id' => $this->input-
}
>post('user_id'),
'product_id' => $this->input-
>post('product_id'), public function cancel_bid(){
'auction_id' => $this->input-
>post('auction_id')
$data = array(
);
'status' => 0,
);
return $this->db->insert('notifications',
$data);
$this->db->where('seller_id', $this-
}
>input->post('seller_id'));
$this->db->where('product_id', $this-
public function reject_add(){ >input->post('product_id'));
$data = array ( return $this->db->update('auctions',
$data);
'status_prod' => 1
142

} </button>

public function notif_cancel(){ </div>


$data = array ( <?php endif; ?>
'status' => 1, br>
'notification' => "The bid has been <h2>Manage Your Bid Item</h2>
cancelled!",
<hr>
'user_id' => $this->input-
>post('user_id'),
<?php
'product_id' => $this->input-
>post('product_id'),
date_default_timezone_set('Asia/Kuala_Lu
'auction_id' => $this->input-
mpur');
>post('auction_id')
$datetime = date("Y-m-d H:i:s");
);

$start = strtotime($datetime);
return $this->db->insert('notifications',
$data); $end = strtotime($product['end_bid']);
}

$hours = intval(($end - $start)/3600);


}
<?php if($this->session->flashdata('added')): $minsc = (int)(($end - $start) / 60);
?>
<div class="alert alert-success alert-
dismissible fade show mt-4" role="alert">
<?php echo $this->session-
>flashdata('added') ?>
<button type="button" class="close"
data-dismiss="alert" aria-label="Close">
if ($minsc > 0) {
<span
aria-hidden="true">&times;</span> echo '<span class="badge badge-info">'.
$minsc.' minutes'.'<br></span>';
143

<div style="margin-top:2rem;"></div>
} else if ($minsc < 0){
echo $minsc = "<span class='badge <div class="col-md">
badge-warning'>Time is out</span>";
?>
<div class="card">
<form action="<?php echo base_url(); ?
<div class="card-body">
>items/updateexpired" id="btnexp"
method="post">
<input type="hidden" name="seller_id" <div class="form-group">
value="<?php echo $product['seller_id'] ?
>" /> <label>Item:</label>

<input type="hidden"
name="product_id" value="<?php echo <span class="badge badge-
$this->uri->segment(4) ?>" /> pill badge-success"><?php echo
<input type="hidden" $product['product'] ?></span>
name="high_amount" value="<?php echo
$highestbid['amount']?>" />
<hr>
<input type="hidden"
name="auction_id" value="<?php echo
$this->uri->segment(3) ?>" />
<small class="post-
<input type="hidden" name="date_bid" date">Bid Amount: <?php echo
value="<?php echo $datetime ?>" /> $product['amount']; ?></small><br>

<script type="text/javascript"> <small class="post-


date">Date Bid: <?php echo
$('#btnexp').submit(); $product['date_bid']; ?></small><br>
</script>
</form> </div>
<?php
} <hr>
?>
144

<?php if($product['status'] == 0) <?php echo form_open('auctions/delete/'.


{ ?> $product['auction_id']) ?>

<div class="modal fade"


id="exampleModal" tabindex="-1"
<button type="button" class="btn
role="dialog" aria-
btn-danger" data-toggle="modal" data-
labelledby="exampleModalLabel" aria-
target="#exampleModal">
hidden="true">
<i class="fa fa-trash" aria-
<div class="modal-dialog"
hidden="true"></i> Cancel Bid
role="document">
</button>
<div class="modal-content">
<div class="modal-header">
<?php } else if($product['status'] !
<h5 class="modal-title"
= 0){ ?>
id="exampleModalLabel">Important!</h5>
<button type="button" class="close"
<button type="button" class="btn data-dismiss="modal" aria-label="Close">
btn-primary" disabled>
<span
<i class="fa fa-check" aria- aria-hidden="true">&times;</span>
hidden="true"></i> This Item has been
</button>
successfully Bid
</div>
</button>
<div class="modal-body">
Would you like to cancel this Item?
<?php } ?>
</div>
<div class="modal-footer">
</div>
<button type="button" class="btn btn-
</div>
secondary"
data-dismiss="modal">Close</button>

</div> <button type="submit" class="btn btn-


danger app-button"><i class="fa fa-trash"
aria-hidden="true"></i> Cancel
Item</button>
145

</div> <small class="post-


date">Bidder Name: <?php cho
</div>
$product['firstname']; ?></small><br>
</div>
</div>
<small class="post-date">Bid
End Time: <?php echo
$product['bid_endtime']; ?></small><br>
</form>
e<hr>
<br>
<div class="card">
<div class="card-body">
</div>
</div><hr style="background-
<h3>Item: <?php echo color:black">
$product['product']; ?></h3><hr>
<div class="row">
<div class="col-md-4"> <?php if($product['status'] == 0){ ?>
<img class="post-pic" src="<?
php echo site_url();
?>assets/images/products/<?php echo <form id="formexpire"
$product['prod_image']; ?>"> action="<?php echo base_url();
?>items/update" method="post">
</div>
<div class="col-md-8">
<input type="hidden"
name="user_id" value="<?php echo
<small class="post- $product['user_id'] ?>" />
date">Regular Price: <?php echo <input type="hidden"
$product['reg_price']; ?></small><br> name="seller_id" value="<?php echo
$product['seller_id'] ?>" />

<small class="post-date">Bid <input type="hidden"


Amount: <?php echo $product['amount']; ? name="product_id" value="<?php echo
></small><br> $product['product_id'] ?>" />
146

<input type="hidden" }
name="auction_id" value="<?php echo
$product['auction_id'] ?>" />

<?php
?>
date_default_timezone_set('Asia/Kuala_Lu
mpur');
<button type="submit"
$datetime = date("Y-m-d class="btn btn-primary btn-sm"><b>Make
H:i:s"); Bid Winner</b></button>
</form>
$start = strtotime($datetime);
$end = <?php } else if($product['status'] ==
strtotime($product['bid_endtime']); 1){ ?>
<?php echo
form_open('items/cancel_bid'); ?>
$hours = intval(($end -
$start)/3600);

<input type="hidden"
name="user_id" value="<?php echo
$minsc = (int)(($end - $start) /
$product['user_id'] ?>" />
60);
<input type="hidden"
name="seller_id" value="<?php echo
$product['seller_id'] ?>" />
if ($minsc > 0) { <input type="hidden"
name="product_id" value="<?php echo
echo '<span class="badge
$product['product_id'] ?>" />
badge-info">'.$minsc.'
minutes'.'<br></span><hr>'; <input type="hidden"
name="auction_id" value="<?php echo
$product['auction_id'] ?>" />
} else if ($minsc < 0){
echo $minsc = "<span
<button type="submit"
class='badge badge-warning'>Time is
class="btn btn-warning btn-sm"><b>Cancel
out</span><hr>";
Winner</b></button>
147

</form> </h2>
</div>
<hr>
<div id="collapseOne"
class="collapse show" aria-
<?php echo
labelledby="headingOne" data-
form_open('rates/reportbid') ?>
parent="#accordionExample">
<div class="card-body">
<input type="hidden"
name="seller_id" value="<?php echo
$product['seller_id'] ?>" /> <div class="form-
group">
<input type="hidden"
name="bidder_id" value="<?php echo <label>What is your
$product['user_id'] ?>" /> reason? (The administrator will receive this
complain)</label>
<textarea
class="form-control" placeholder="Enter
<div class="accordion" your concern..." name="feedback"
id="accordionExample"> rows="6"></textarea>
<div class="card"> </div>
<div class="card-header"
id="headingOne">
<hr>
<h2 class="mb-0">
<button class="btn btn-
link" style="text-decoration: none ! <button type="submit"
important;" type="button" data- class="btn btn-xs btn-danger"><i class="fa
toggle="collapse" data- fa-file" aria-hidden="true"></i> Report
target="#collapseOne" aria-expanded="true" Seller</button>
aria-controls="collapseOne">

</div>
<h5><i class="fa fa-
</div>
file"></i> Report Bidder?</h5>
</div>
</div>
</button>
148

font: 13px/20px normal Helvetica,


Arial, sans-serif;
color: #4F5155;
</form>
}

<?php } ?>
a{
color: #003399;
</div>
background-color: transparent;
</div>
font-weight: normal;
<?php
}
defined('BASEPATH') OR exit('No direct
script access allowed');
?><!DOCTYPE html> h1 {
<html lang="en"> color: #444;
<head> background-color: transparent;
<meta charset="utf-8"> border-bottom: 1px solid #D0D0D0;
<title>Welcome to CodeIgniter</title> font-size: 19px;
font-weight: normal;
<style type="text/css"> margin: 0 0 14px 0;
padding: 14px 15px 10px 15px;
::selection { background-color: #E13300; }
color: white; }
::-moz-selection { background-color:
code {
#E13300; color: white; }
font-family: Consolas, Monaco,
Courier New, Courier, monospace;
body {
font-size: 12px;
background-color: #fff;
background-color: #f9f9f9;
margin: 40px;
border: 1px solid #D0D0D0;
149

color: #002166;
display: block; <div id="container">
margin: 14px 0 14px 0; <h1>Welcome to CodeIgniter!</h1>
padding: 12px 10px 12px 10px;
} <div id="body">

#body { <p>The page you are looking at is


being generated dynamically by
margin: 0 15px 0 15px;
CodeIgniter.</p>
}

<p>If you would like to edit this page


p.footer { you'll find it located at:</p>

text-align: right;
<code>application/views/welcome_message
font-size: 11px; .php</code>
border-top: 1px solid #D0D0D0;
line-height: 32px; <p>The corresponding controller for
padding: 0 10px 0 10px; this page is found at:</p>

margin: 20px 0 0 0;
<code>application/controllers/Welcome.php
} </code>

#container { <p>If you are exploring CodeIgniter


for the very first time, you should start by
margin: 10px;
reading the <a href="user_guide/">User
border: 1px solid #D0D0D0; Guide</a>.</p>

box-shadow: 0 0 8px #D0D0D0; </div>

}
</style> <p class="footer">Page rendered in
<strong>{elapsed_time}</strong> seconds.
</head> <?php echo (ENVIRONMENT ===
<body> 'development') ? 'CodeIgniter Version
150

<strong>' . CI_VERSION . '</strong>' : '' ? </body>


></p>
</html>
</div>

<Appendix B:> User Guide

Sign up as User (Seller and Bidder):


151

1. Input email and password


2. Click Sign-up to create new account
3. Enter the Verification Code on prompt
152

Sign is as admin:
1. Input email and password
2. Click Sign-in button
153

Adding/manage product:

1. Click Dashboard button


2. Click Sell on BidStack button
3. Fill out product information then click Create button
4. Click Listings
5. Click the Update button on each item to manage the availability and other
details
154

Transactions:

1. Click Transactions
2. Click Manage button
3. Able to access item and bid status and reject bids
155

CURRICULUM VITAE
156
157
158
159

You might also like