You are on page 1of 60

KABARAK UNIVERSITY

SCHOOL OF BUSINESS AND ECONOMICS


DEPARTMENT OF COMMERCE

PROJECT PROPOSAL

ANDROID AUCTION SYSTEM

By

Jesang Khadija

A project Report Documentation Submitted in The Department of Computer Science and


IT in partial fulfillment of the degree of Business Information Technology

Submitted On:

August, 2021
DECLARATION

I JESANG KHADIJA do declare that this report is my own original work and has not been
presented anywhere for an academic award.

Signature: ____________________________________ Date: _____/_____/________

JESANG KHADIJA
BBIT/MG/2126/05/18

I JOSEPH ORORI as the University supervisor do confirm that this project report was presented
for evaluation by my approval as partial fulfillment of the requirements for the award of the
degree of Bachelor of business information technology of Kabarak University.

Signature: ____________________________ Date: ______/______/______

MR JOSEPH ORORI

ii
ABBREVIATIONS
BC- Before Christ
CFI-Cooperate Finance Institute
OLX – Oline Exchange
USA – United States of America
BOMA – Building Owners and Managers Association
SDK – Software Development Kit
API – Application Programming Interface
UI – User Interface
DFD- Data Flow Diagram

iii
ACKNOWLEDGEMENTS
I would like to thank God first for the completion of this report. The strength and good health He
gave me from the start to the completion of this report. My profound gratitude goes to my project
supervisor Mr. Joseph Orori for his invaluable guidance, suggestions and criticisms throughout
the process of coming up with the report. I wish to thank my parents for their support for
providing all the necessary resources that facilitated the completion of the proposal. My
appreciation goes to Kabarak University for this opportunity, all the lecturers who aided me with
the knowledge necessary for the project and the students who gave me an helping hand whenever
it was needed assistance.

iv
TABLE OF CONTENTS

KABARAK UNIVERSITY..........................................................................................................................i

SCHOOL OF BUSINESS AND ECONOMICS...........................................................................................i

DEPARTMENT OF COMMERCE..............................................................................................................i

PROJECT PROPOSAL................................................................................................................................i

ANDROID AUCTION SYSTEM................................................................................................................i

DECLARATION.........................................................................................................................................ii

ABBREVIATIONS....................................................................................................................................iii

ACKNOWLEDGEMENTS........................................................................................................................iv

TABLE OF CONTENTS.............................................................................................................................v

LIST OF FIGURES.....................................................................................................................................x

Figure 1: Spiral Model.............................................................................................................................x

Figure 2: Context Diagram......................................................................................................................x

Figure 3: Data Flow Diagram..................................................................................................................x

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

Table 1: Project Schedule........................................................................................................................x

Table 2: Budget........................................................................................................................................x

CHAPTER ONE..........................................................................................................................................1

v
INTRODUCTION.......................................................................................................................................1

1.1Background of the study.....................................................................................................................1

1.2 Problem statement.............................................................................................................................1

1.3 Objectives..........................................................................................................................................2

1.3.1 General objectives......................................................................................................................2

1.3.2 Specific objectives......................................................................................................................2

1.4 Justification.......................................................................................................................................2

1.6 Scope.................................................................................................................................................2

1.7 Existing system..................................................................................................................................3

1.7.1 Weaknesses of the existing system.............................................................................................3

1.7.2 Proposed solutions......................................................................................................................3

CHAPTER TWO.........................................................................................................................................4

LITERATURE REVIEW............................................................................................................................4

2.1 Introduction.......................................................................................................................................4

2.2Auction mechanism............................................................................................................................4

2.3 History of auctions.............................................................................................................................4

2.4The Future of Auctioneering...............................................................................................................5

2.5 Types of auctions...............................................................................................................................5

English auctions...................................................................................................................................5

vi
Dutch Auctions....................................................................................................................................5

Sealed first bid auction........................................................................................................................6

Sealed second price auction.................................................................................................................6

Double auction.....................................................................................................................................6

2.6 Global state of livestock auctions......................................................................................................6

2.7 Current livestock auctioning system in Uasin Gishu.........................................................................7

2.8 Similar work......................................................................................................................................7

2.9.1 Conclusions....................................................................................................................................9

CHAPTER THREE...................................................................................................................................10

RESEARCH METHODOLOGY..............................................................................................................10

3.1 Introduction...............................................................................................................................10

3.2 Research design method............................................................................................................11

3.3 Location of study.......................................................................................................................11

3.4 Population of the study..............................................................................................................11

3.5 Sampling procedure and sampling size......................................................................................12

3.5.1 Sample design and sample size..........................................................................................12

3.5.2 Sampling procedure...........................................................................................................13

3.6 Data collection methods.............................................................................................................13

3.7 Data analysis tools.....................................................................................................................13

vii
3.8 Research procedure....................................................................................................................14

3.9 Ethical considerations................................................................................................................14

CHAPTER FOUR.....................................................................................................................................15

SYSTEM ANALYSIS AND DESIGN......................................................................................................15

4.1 Functional Requirements...........................................................................................................15

4.2 Non-Functional Requirements...................................................................................................17

4.3 Context diagram........................................................................................................................19

4.4 Dataflow Diagram.....................................................................................................................20

4.5 Use Case Diagram.....................................................................................................................21

4.6 Testing and implementation tools..............................................................................................22

Types of Testing Techniques.............................................................................................................22

White Box Testing.............................................................................................................................23

Types of Software Testing Techniques..............................................................................................23

Non-functional Testing......................................................................................................................24

Advantages and Disadvantages of Testing Techniques.....................................................................25

CHAPTER FIVE.......................................................................................................................................26

SYSTEM IMPLEMENTATION AND DEPLOYMENT..........................................................................26

5.1 Introduction...................................................................................................................................26

5.2 System archtecture.....................................................................................................................26

viii
5.4 User interface design.................................................................................................................30

5.5 User interface modules..............................................................................................................33

5.6 Backend development................................................................................................................36

5.5.1 Database design models.....................................................................................................36

5.5.1 DatabaseTables or data modes...........................................................................................37

5.5.2 Code testing.......................................................................................................................38

5.7 Deployment methods Deployment methods..............................................................................39

5.8 Conclusion and future work.......................................................................................................40

REFERENCES..........................................................................................................................................43

APPENDICES...........................................................................................................................................45

Appendix 1............................................................................................................................................45

Project schedule.....................................................................................................................................45

Appendix 2............................................................................................................................................46

Budget...................................................................................................................................................46

ix
LIST OF FIGURES
Figure 3-1Spiral model
Figure4-2 Context diagram
Figure 4-3 Data Flow Diagram
Figure 4-4 Use Case Diagram
Figure 5-5 Layers of Android Auction
Figure 5-6 Front end Java Code
Figure 5-7 Registration Page
Figure 5-8 Splash screen
Figure 5-9 Registration Code
Figure 5-10 Home Page
Figure 5-11 Registration Page
Figure 5-12 Login Page
Figure 5-13 Auction Page
Figure 5-14 Bidding Page
Figure 5-15 Database Model
Figure 5-16 Database Authentication
Figure 5-17 Real Time Database

x
LIST OF TABLES

Table 3- 1: Number of people interviewed

Table 4-2: functional requirements for bidders

Table 4-3: Functional Requirements as per auctioneer

Table 4-4: Non functional Requirements

Table 5-5: Log in data Set

Table 5-6:Log in state Transition Data Set

Table 6-7:Project Schedule

Table 6-8: Budget

xi
ABSTRACT

It is nearly two years since we first heard of the word corona virus. This disease has forced
today’s generation to adapt new ways of carrying out their day to day activities. Companies and
businesses have been forced to adapt new means and techniques to keep their businesses on feet.
However there is one particular industry that is of major interest to me. That is the auction
industry. Just the mention of auction and bidding comes to mind. Physical auctions are fun and
interesting to witness with the auctioneers shouting and bidders competing over who gives the
highest bid. It is unfortunate that since the pandemic most auctions have been closed, companies
and merchants have lost a lot of money. This is owing to the fact that auctions are normally
crowded but with the corona virus crowding is discouraged because it will speed up the spread of
the disease. Bidders do not turn up due to fear of contracting the disease. Due to this problem I
propose an android auction application. This is an application that will allow auctioneers to post
the products they wish to sell and the bidders to bid for the products of their choice. Both users
will be required to register first in order to access any services offered by the application. This
will ensure that only authorized users access the application in order to prevent frauds and
conmen. The highest bid will get the product. One can inspect if the product is available within
their locality or nearby this is to ensure that no one goes through the stress of bidding on a
product that will be quite costly to ship yet there is a similar product not so far ,this is owing to
the fact that this application will involve a global audience who can auction their products and
bid for them wherever they are in the world. This application will be user friendly because the
user interface will be simple and easy to understand even by the common man. The android
auction application will be able to overcome all the drawbacks of the public auction system. The
application will allow the registered user to take part in the auction from any part of the world, it
will be more secure because only the authorized users will be able to use it. Users will be able to
auction their products with ease and anyone in need of the product can bid. The auctioneer will
add the product they wish to sell along with product description. This will make it easier for the
bidders to find products of their choice. The one auctioning their products will be able to see the
list of all the bidders whereas the bidders can only be able to access the list of the highest bid on
the product auctioned. The product owner and bidder will be automatically notified as soon as
possible.

xii
CHAPTER ONE
INTRODUCTION

1.1Background of the study


Over 70% of the population with smart-phones worldwide use phones running on Android
operating system. The rate at which this population is seeking to solve their day to day issues
using their phones is very high. Many people are opting to seek products and services on their
phones rather than finding them manually because it is usually time consuming and costly to
seek them manually and at times one may end up wasting so much money and end up without
the product or the service they wanted eventually.
People are looking for products both locally and globally but are not sure whether they will get
the right supplier because nowadays conmen and women are everywhere, fake and illegal items
are offered in the market hence the fear to purchase from search people. However there are legit
sellers with the right quantity, quality and type of goods and products but there is no platform
that can easily connect the two the one in need of the right item and the one offering the item.

This project android auction application will handle the issue by creating a platform that will
enable the users to post items online for auction. The items will have a brief description to make
it easier for the bidder to make a choice. If the bidder is interested he or she will place a bid on
the product. This application will save time that the buyers would have spent in search of the
product manually and the amount of money that would have been spent moving around in search
of the items.

1.2 Problem statement


We have all experienced the burden of looking for certain items that we require. It is quite
frustrating and tiresome indeed especially if it is not available in your local stores. At times we
end up buying items from unknown people just to overcome the stress of searching. Most times
such people are not worth our trust because at times they sell fake items, low quality or quantity
and even worst of all stolen property. Conmen take advantage of desperate buyers who lose their
money due to lack of knowledge. This has become a major problem especially during this corona

1
period hence there is a need for a platform that will enable buyers get products from the right
sales people who are trust worthy and can be traced incase the products do not meet the desired
requirement.

1.3 Objectives
1.3.1 General objectives
To develop an android application that will provide a forum for sellers to sell their products to
interested buyers.

1.3.2 Specific objectives


i. To create a forum where bidders auction for items posted by the seller through the
android application.
ii. To overcome the drawbacks of the public auction system.
iii. To notify the bidders of new bids made in the bids they participate in.
iv. To implement and test the workability of the newly developed system.

1.4 Justification
The application will create a higher level of buyer’s certainty on the type of seller and the
products that they choose to place bids on. This will be achieved through the use of textual and
visual product description. This will allow evaluation of the product which is far much effective
and come close or equal to the physical evaluation of the product.

1.5 Significance of the study


The study is aimed at identifying the main challenges most people face especially during the
corona virus pandemic in the buying and selling of goods in auctions. The results aimed at
finding a suitable solution to the problems by creating and implementing a mobile application
that will cater for those needs. This application will be android based.

1.6 Scope
The mobile application will be android based. It will only run on devices with android operating
system. The application will be designed to serve only Uasin gishu county then by more

2
modification it shall serve the whole country where more business enterprises shall have access
to the system and finally reach out to the entire globe.
The application will only allow for the auctioning of livestock and agricultural produce. Only
registered potential buyers and sellers participate in any of the auctioning process.

1.7 Existing system


Currently the existing system for auctioning livestock and farming materials is the open auctions.
The day of the auctions is fixed, the time and the venue of the auction. However the items that
will be auctioned is not known before hand. Those who wish to participate in the auction have to
arrive on the venue on the said day and time. All the auction records are also kept in form of
hardcopies this process is very cumbersome and time consuming.

1.7.1 Weaknesses of the existing system


i. Fixed time frame for auctioning to take place
ii. The auction must take place at the auctioning venue
iii. Bidders and auctioneers must be physically present in the auction venue
iv. Too much crowding in the auctioning venue
v. Bidders are not aware if the products they want will be available for bidding before
hand.
vi. There is no way that one can bid without being known by other bidders.
vii. During the bidding process there is too much noise as the bidders try to outcompete
each other.

1.7.2 Proposed solutions


In the proposed system the time is not fixed for the auction to take place.-convenience. The
bidders and auctions don’t have to be present physically rather they participate virtually. The
crowding issue is taken care of as the auctioning process is on phone. Bidders search for the
products they want Bidders can participate in the bidding process without the others bidders
knowing them. The noise issue has been eliminated completely.

3
4
CHAPTER TWO
LITERATURE REVIEW

2.1 Introduction
A literature review is a survey of scholarly sources on a specific topic. (Shona McCombes,
2019). It illuminates how knowledge has evolved within the particular field. Literature review
comes from the words literature and review. Literature refers to a collection of published
information or materials on a particular area or topics such as books, journals and articles. A
review on the other hand is the assessment of something with the intention of instituting change
if necessary. (Oxford Dictionary). This literature review examines the auction mechanism, types
of auctions, current auctioning system.

2.2Auction mechanism
Auction is a term used to refer to types of sales where the price is neither set nor arrived at by
negotiation, but discovered through the process of competitive bidding. (Business
Dictionary.com,2017). The Cambridge Dictionary defines a bid as the act of offering a particular
amount of money for something that is for sale and compete against other people to buy it.
(Dictionary,2021). The auctioning process involves both the seller and the buyer. The seller puts
up the goods or products he or she wishes to sell and the buyer places a bid on the goods or
products of his or her choice. The highest bidder takes the goods or products.

2.3 History of auctions


The origin of auctions can be traced back to approximately 500 BC (Cooperate Finance
Institution, 2015). This is a period whereby women in Greece were auctioned off for marriage
and was considered illegal if they got married without going through the auction process. During
the auction process started with the sale of the women who were considered more beautiful
among those who were being auctioned on that particular day or period. The most beautiful
women were auctioned at higher prices and the prices reduced in relation to the beauty. The
buyers were however allowed to return the women incase they never got along. Early auctions in
the United States were used to sell farm produce, estate, war plunder and slaves. The first auction
was started in Sweden (Stockholms Auktionsverk) in 1674. Most auctions schools came up in

5
the early 1900s. The Jones National School of Auctioneering and Oratory started by auctioneer
Carey M. Jones in Davenport, Lowa is believed to be the first auction school.(Mike
Bradely,2016) Some of the challenges faced by auctioneers during this period was most
auctioneers lacked proper training since most of them believed that auctioneering was a natural
ability one is born with and requires no training. There was also the issue of being heard
considering the fact that during that time there were no microphones and amplification systems.
Transport was also quite slow since they were using horses and wagons. during this period the
auctioneers were normally referred to as colonel, knights of the hammer and brothers.

2.4The Future of Auctioneering


Auctioneering has been changing ever since it came in to existences. More change is expected to
take place especially necessitated by the covid- 19 crisis. Most auction houses have been closed
and auctions are shifting to the virtual environment. We will continue to experience such
changes in future. According to Ehrmann, the traditional horizontal structure of auction houses,
organized into specialists departments is increasingly evolving towards a vertical structure which
promotes innovative marketing strategies and combines different sales channels. (Scoott
Reyburn, 2020). In Kenya many auctions website are coming both agent based and those that are
not. Some of the most known auction sites in Kenya include Bidsasa, jambo auction not
forgetting OLX and Jumia which are agent based.

2.5 Types of auctions


There are various types of auction some of which I will discuss include:

English auctions
In this type of auctions the participants bid openly against each other, each bid placed is higher
than the previous bid. This auction normally ends when no participant is willing to bid any
further. The highest bidder wins. This type of auction is mostly preferred because it is more
familiar and intuitive.

Dutch Auctions
It is a descending price auction. In this type of auctions the auctioneer states a price which is
considered the highest and the price is lowered until some participant is willing to accept the

6
price. This is type of auction is the best when one wants to sell something quickly. Mostly used
in online auctions which involves selling multiple identical items simultaneously.

Sealed first bid auction


Also known as sealed high bid auction or first price sealed auction. In this kind of auctions all
the bids are submitted simultaneously by the bidders. Each bidder doesn’t know of the others bid
and the highest bidder pas the price.

Sealed second price auction


It is also known as vickrey auction. pretty much similar to the first bid auction only that the
winning bidder pays the second highest bid rather than their own bid. This type of auction
requires bidders to speak the truth by giving their true value of the item hence it prevents
incentives for buyers.

Double auction
In this type of auction this type of auction is carried out by open outcry, in which the buyers and
the sellers call out the prices they are willing to buy and sell at and a match is made if a buyer
and a seller call out the same price.
Other auction formats according to All Star Training.inc(2016) include the Written bid auction,
Audible rotation auction, Handshake auction, Time interval auction, Silent auction, Whisper
auction ,Chinese Auction and Swiss auction .

2.6 Global state of livestock auctions


Even before the pandemic hit most European countries had adopting online auctions thus they
can gladly say that the emergency of covid -19 did not affect their system that much. Most if not
all of their auctions were carried on over the internet. There are websites such as Ogalla livestock
whose headquarters is in Nebraska United States according to their website (ogallalalive.com),
they provide reliable local marketing service, video marketing, private treaty sales and live
internet auctions, 101 livestock auction also provides a platform for auctioning livestock and
Auctions Home for USA among many others. It is evident from such websites which date back
to the 19s that European countries are much ahead of us therefore we have to put more effort by

7
coming up with inventions that will help grow our economy the android auction app under
development is one of such.

2.7 Current livestock auctioning system in Uasin Gishu


Before the pandemic livestock auction in Uasin Gishu county used to go on normally. The
auctioneers and the buyers would meet in the markets where the auctions were located and carry
out the auction activities. However since the pandemic hit, the whole process has come to a stand
still. Considering that all markets were shutdown. Many farmers who rely on auctioning to buy
and sell their livestock were highly affected. Even thou the government has lessened the rules on
closing all markets the auctioning activities are still at its low. Buyers and sellers are not showing
up for fear of getting the virus this has lead to many looses in both sides. According to a report
by BOMA (The impact of Covid -19 on livestock markets, 2020). It is evident that farmers are
suffering and running looses since they are forced to sell their livestock at home, often times
willing buyers are offering to pay very little for the animals which would have fetched much
more in the auctions. However due to the hard economic times the sellers have no choice but to
sell to the willing buyers because even finding the buyers is a problem. The application under
development will be able to solve these problems faced by the sellers and buyers and bring the
smile back to their faces if it is implemented.

2.8 Similar work


Development of the Internet has spurred a number of attempts to create virtual market places.
However, only human’s interfaces are provided by concurrent online market places. With the
development of agent technology, auction sites with agent interfaces have been available. Some
of the famous auction sites are described as follows:

eBay and Onsale


Besides a user interface, eBay and Onsale also provide some simple agent- like interfaces. For
example, Onsale provides a proxy agent called BidWatcher, which can automatically bid on the
user’s behalf. Before bidding in an English auction, the user tells the agent the maximum price
he/she is willing to pay and the BidWatcher will automatically bid the minimum price possible to
win the auction without exceeding the user’s assigned price ceiling. Given an English auction

8
with current price c, minimum incremental price d and the user’s maximum bidding price l, the
agent will always bid the price c+d if it is no higher than l. Otherwise, it will not submit any bid.
However, proxy agents provided by the auction sites are not secure and trustful. The maximum
bidding price may be disclosed to the auction site and a shill bidder can be created [Jie Zhang,
2004].

AuctionBot
Michigan AuctionBot was developed by the Artificial Intelligence Laboratory at University of
Michigan. It has been available for public use at the University of Michigan since September
1996 and to the entire Internet since January 1997. In particular, it has been used for selling used
text books. AuctionBot can handle many auctions simultaneously and all its auctions are
organized in a hierarchical structure. Sellers can choose the catalog in a systematic manner and
create an auction at whatever layer he/she wants. One of the most significant features of
AuctionBot is the parameterization of auctions. After analyzing the characteristics of all
auctions, they decompose the auction design space into a set of orthogonal parameters such as
“Bidding restrictions”, “Auction Event”, “Information Revelation” and “Allocation Policies”.
Besides user interface, AuctionBot also provides agent interface. The database stored parameters
of all auctions, which be accessed by users and agents through interfaces by certain rules. The
agent interface provided by AuctionBot is a TCP/IP-level message protocol that allows agents to
access all the features of the AuctionBot present in the web systems. Agents can place bids,
create auctions, request auction information or review their accounts. The API provided by
AuctionBot is self-contained such that developers can use it to build their own front end to
AuctionBot. A backend decision program runs cyclically, which is up to conclude imminent
auctions and make final decisions. When the auction is over, results will be notified to users
through emails. However, AuctionBot provides only an information service. It collects bids,
determines the results of the auction by using a well-defined set of auction rules, and notifies the
participants. No actual money exchange is executed [Jie Zhang, 2014].

Kenyan Online Market


There has been a rapid increase in online marketing and selling in Kenya as people turn to
internet platforms to advertise, buy and sell various items because of low advertising fees and

9
easy accessibility of internet through mobile phones. Popular sites include http://www.olx.co.ke,
http://www.bidorbuy.co.ke and http://www.kenyaonlineauction.com
Popular items sold include mobile phones, vehicles, motorbikes, iPads, video cameras, furniture,
fridges and vehicle tracking devices. The process begins with someone posting the photo of the
item they want to sell and giving its details, for instance, whether it is new, used, or
reconditioned. Sellers must further specify minimum bids they are willing to accept and if they
will meet shipping costs in the case of international buyers.
These platforms have made payments real time by using mobile phones to facilitate the
transactions. Mobile transaction has become the preferred modes of payments. Unlike globally
acclaimed online auction site e-bay, Kenya's online marketing platforms do not collect or
distribute payments. They are merely e-commerce platforms that link sellers and buyers. It is
upon the two to agree on modes of payments they will use.
Despite the growth of online market in Kenya, the sites are yet to gain wide acceptance because
of the challenges that come with online transactions, which include fraud. Internet and mobile
phone fraud has been on the rise in Kenya. There is a great need for secure platforms to advertise
products and auction them.

OLX
OLX (short for online exchange) operates local online classifieds marketplaces accessible
through the internet and through native apps on mobile phones. OLX hosts free user-generated
classified advertisements providing solution for selling, buying, trading, discussions, organizing
and meeting people near you. OLX does not own any of the items or services but allows users to
sell or buy products listed in its site. OLX has no knowledge of the actual transactions that take
place between sellers and buyers and has no control over such transactions.
Other related online shopping sites such in Kenya are OLX, RupuShops, Bid or Buy, Jumia, and
Cheki

2.9.1 Conclusions
This literature review analyzed the auction mechanism, types of auction ,livestock auction
globally and state of livestock auction in Kenya specifically Uasin Gishu county and from the
analysis it is obvious that we are way behind in comparison to the Eurepean countries.

10
11
CHAPTER THREE
RESEARCH METHODOLOGY

3.1 Introduction
In this chapter a methodology is outlined for the development of the android auction system
using the Android Studio platform and Java language. Spiral model will be used in design. The
basic stages of this methodology are as shown in the figure below.

Figure 3- 1:spiral model

Spiral model is designed to control risks (Eric and Joshua,2017). It repeats the steps of a project
starting with the modest expanding outwards in ever wider spirals called rounds. Each round is
made up of a project which may follow any traditional software development methodology. A
risk analysis is performed in each round. The theory is that the set of requirements is hierarchical
in nature with additional functionality building on the first efforts. This model is good for
systems where the entire problem is well defined. (Paul, Edwin, 2020)

12
3.2 Research design method
Random sampling method was employed and the final sample consists of many respondents who
are over the age of 18. Data were gathered through personally-administered questionnaires.
Respondents of this study are the general public residing in Uasingishu County. In order to get
more information and ware about of the cancer awareness, we deployed survey research design
process.

3.3 Location of study


The research study was conducted in Uasingishu County whereby it took place at exactly Eldoret
town, Moiben constituency and Marura area. The location we chose had a lot of population and
from the recent statistics that was done; it was found that there have been some recorded cases of
cancer in that area. The places that we chose had many people, most of them come from urban
town and so their lifestyle is a bit high. Also most of them are business people but without more
information about cancer disease.

3.4 Population of the study

The respondents from the public were selected randomly using the snowball approach. One
respondent was asked to identify another respondent who can assist in providing the relevant
information to help the research exercise (Atieno, 2007). The respondents from Uasin Gishu
were selected using a fixed selection process. One respondent was selected from, each
available constituency. This provided an even response process to the researcher. Randomly
chosen members of the public within the study area together with farmers were chosen to test
the developed application.

13
3.5 Sampling procedure and sampling size

3.5.1 Sample design and sample size

The sample size is an important feature of any research study in which the goal is to make
inferences about a population from a sample. Mugenda and Mugenda (2003) recommended
sample sizes of must be representative of the study population. The sample size was determined
using the formula developed by (Chow et al., 2007). Sample size (n); 𝒏 =

Where: The 𝒁∝/𝟐 is the critical value. The positive z value is the vertical boundary
of the area of ∝/𝟐 in the right tail of the standard normal distribution, is the population
standard deviation and n the sample size. Fixing the margin of error as 1.32 and the estimated
population variance from the sample household as 6.95 then the sample size is given by;

Approximately 100

This is then approximated to 100 members of the public who were sampled. Four
representative of cooperates boards dealing with auctions formed part of the selected
population hence twenty five members of the public were sampled.

The following figure shows the number of people interviewed

Table 3-1: Number of farmers Interviewed


Category Sample Size
Cooperative reps 4
Men 8
Women 16
Total 28

14
3.5.2 Sampling procedure

A convenience sampling was done on those selected from all the three centers, the sample
size divided into three strata; all four (there is only one for every centers). Gender balance
was considered in each center and, equal numbers of male and females were considered in
sampling and inclusion into the study.

3.6 Data collection methods


Data collection methods presents the researchers with various techniques to choose from to
obtain relevant data that fits and can be applied in the area of study.( Cooper & Schindler ,2014)
noted that data collection methods entails the gathering of facts from the environment of study,
and presenting it to the researcher. The research will use primary data obtained from
respondents, using both open and closed-ended questionnaires and observation technique. The
questionnaire will have clear and precise instructions for the respondents. According to Babbie
(2016) the use of open-ended questions results to a greater uniformity of answers, which are
much easier to process in comparison to the closed-ended questions. The questionnaire will be
developed in line with the research objectives. The respondent’s confidentiality will be highly
observed.

3.7 Data analysis tools


According to nagt.org (February,2017),data analysis tools help researchers make sense of the
data collected. Enabling them report the results to make interpretations. In this research both
qualitative and quantitative analysis will be used. Qualitative analysis uses descriptive data.
Qualitative data are descriptive for example notes, interviews, audios and videos and open ended
questions. Quantitative analysis on the other hand uses numerical data to identify statistical
relationship between variables. Quantitative data are numerical, normal and ordinal. Such as
questionnaires, ratings and surveys.

15
3.8 Research procedure
The questionnaire was prepared and administered. It had clear instructions and was pre-tested
through pilot study to test the research data collection tool and determine if it is feasible for
the final data collection on objective one of the proposal. Fifteen selected respondents were
given the questionnaire to ensure that the data collected from the study was reliable. This was
to test the objective “To find out how the general public is aware of the disease cancer, its
signs, causes and treatment procedure.” The questionnaire underwent a rigorous analysis to
find out if question were comprehensible, brief and had no form of bias. The final
questionnaires were distributed to respondents physically at the chosen hospitals and to the
public members at different locations within UasinGishu County. The researchers delivered
the questionnaires to the respondents in person, hence it was easy to seek any clarifications
and immediate responses were given. The confidentiality of the respondents was also
guaranteed, and an emphasis of the relevance of the research study was also explained to
them.

3.9 Ethical considerations


In this study I ensured all standards which include voluntary participation, informed consent, and
confidentiality of information, the anonymity of research participants and approval for the study
from relevant authorities was followed.
Therefore, no respondents were forced to participate in the study unwillingly, and no individual’s
right infringed in the process of data collection. Further, complete anonymity of the respondents
in the study ensured.

16
CHAPTER FOUR

SYSTEM ANALYSIS AND DESIGN

4.1 Functional Requirements

These are requirements that capture specific behavior of the system under development.
These define various things like data processing and manipulation, system calculations and
interaction with application and other functionality that show how user requirements are
satisfied. The following table shows functional requirements related to reporter’s activity.

Table 4-2: Functional Requirements as Bidder


Functional Description
requirement
Log in The system requires all users to log in before accessing
any system functionality. The system provides a
Graphical user interface with fields for username,
email and password.
Sign up The system allows a new user to register and set their
username and password. This is allowed by register
user functionality.
Place bid The system allows bidders to place bid,on the item of
their choice.

View available bids The system allows bidders to see all the available bids
they can place. The users can track the changing status
of the reports as updated by the auctioneer of the item.

17
The following table shows functional requirements related to a police officer’s activity.

Table 4-3: Functional Requirements as per the auctioneer

Functional Description
Requirement

Log in The system requires all users to log in before accessing any system
functionality. The system provides a graphical user interface with
fields for username and password.

Sign up The system allows registration of a new auctioneers by the


administrators.

Add product The system allows an auctioneer to add product for bidding. The
auctioneer adds the product by adding a picture of the product and
giving product description such as product name, minimum bid in
Kenyan shillings and number of days the bid will run.

Update Bid The system allows only the investigative officer assigned the crime to
make progress update on the case from time to time as he/she works
Status
on it. The investigative police officer can also attach any new file
related to the case at this point.
Check details of The system allows the officers to check the details of the reporter by
bidder righting clicking the reported crime.

18
4.2 Non-Functional Requirements

These are requirements that define system characteristics or attributes. They describe how a
system should behave and what limits are there on its functionality.

The following table shows non-functional requirements of E-Security.

Table 4-4: Non-Functional Requirements

Non-Functional Description
Requirement
Security The system ensures the security of its user’s
credentials. The system has several security features to
protect user’s credentials at various levels such as:

Database Level: The database is password protected.


Passwords are encrypted.

Application Level: Every user has credentials only


known to them. To access the system, the users must
log in. Changes done to a reported crime are stored for
tracking due to sensitivity of the case, and they must be
known.

Deployment Level: The system runs on Java platform


which is very secure.
Response Time Response time concerning user requests should be
within 1 to 3 seconds.
Throughput The system allows many users to access it
concurrently.
Reliability The system is 99% operational.

19
Accuracy The system present accurate data to the users to
maintain its credibility and that of the users as well.
Access Reliability The system is accessible 99% of the time.
Availability The system is available to users 24 hours every day.
Portability The system supports various platforms available.
Usability The system is usable in various ways including user-
friendly interface, help, and navigation links, easy to
use with minimal training.
Friendliness The system is very friendly with attractive user
interface.
Scalability The system has been developed in such a way to allows
expansion in the future to handle more users and
functionality.

20
4.3 Context diagram

Delivery agent

Offer deliver give delivery alert

service

Auction item Auction system bid an item

Seller/auctioneer Bidder/buyer

diplay bidder info diplay item info

view use add/create user

System Admin

figure4-2: Context Diagram

4.4 Dataflow Diagram


Add/create user Add/update user
System User creation
administrator 21
View user View user System user

check login

retrieve login
System login
login login records login records
deny/accept view login records
login
deny/ accept login login accept/deny

seller Delivery agent buyer


create auction deliver deliver item

auctioning bidding
Delivery
receive payment

payment Pay seller and delivery agent

Bid item on auction

Figure4-3:Data Flow Diagram

4.5 Use Case Diagram

Auction Item

Receive Payment

22
Register and Login

Bid Item

Make Payments

Figure 4-4:Use Case Diagram

4.6 Testing and implementation tools

The application is under development in the android studio platform. This android framework
includes an intergrated testing framework that helps in testing all aspects of the application. The
SDK tools also include tools for setting up and running test applications within an emulator or
the test device. According to Eric N(February, 2019) there are three types of tests in Android
Testing. Unit tests to test each unit of your application, component/functional/integration tests to

23
test the components of the application and end to end test to test all the steps from the first screen
users sees after installation of the application to the last screen of the application. The android
auction system will use two test tools the monkey and JUnit tools to test the application. The
JUnit test case will be used for unit testing on a class that does not call Android APIs and test
Android Dependent objects. The UI/Application Exerciser usually called monkey will be used to
stress test the application.

Types of Testing Techniques


Based on the requirements of the software, a suitable testing technique is employed. Each testing
technique offers various features and benefits to serve the purpose better. Though there are
several types of testing techniques available, we shall focus on Black box testing and White box
testing.

Black Box Testing


Black box testing is a type of software testing, which checks for the functionality of a software or
an application without knowing the design, internal components, or structure of an application to
be tested. It is also referred to as Specifications-based testing.The black box testing method is
mainly used to find missing functions, performance errors, initialization errors, and errors while
accessing the external database.
The testing techniques of black-box testing include

Equivalence Partitioning – In equivalence partitioning, the input data of an application to be


tested into equal partitions. This technique ensures to cover each partition at least once.
Boundary Value Analysis – In boundary value analysis is a technique used in which the testing
of an application is done using the boundary values.
Cause-effect Graph – In this type of testing technique, causes are the inputs of a program and
effects as the outputs of the program. Here, a graphical representation is used to show the
relationship between the input and output and the factors that impact the outcome
Error Guessing – The error guessing testing method utilizes the skills and experience of the
tester to detect errors when tools fail to do.

24
All-pairs Testing – In this approach, the software is tested using a combinatorial method to test
all the possible discrete combinations of the parameters involved.

White Box Testing


White box testing is a method of software testing that tests internal programming structures of an
application. This type of testing technique is known as clear box testing, open box testing,
structural testing, and transparent box testing. Its operation is opposite to black-box testing and is
used at unit, integration, and system levels of the testing process.
The testing techniques of white-box testing include:

Statement Coverage – In this technique, all programming statements are applied with a minimal
number of tests.
Branch Coverage – In this type of technique, all branches shall be tested by running them a
sequence of tests.
Path Coverage – All paths including statements and branches are tested using this technique.

Types of Software Testing Techniques


Software testing is a method used to ensure that a software application is tested for software bugs
and also checks if the developed software meets the specific requirements to produce a quality
product. Some of the testing that will be undertaken in the Android Auction system are as
follows:

Functional Testing
Functional testing is an approach that is used to verify every functionality of the software and
each function complies with the given requirement. Functional testing is divided into four types:

Unit Testing
In unit testing, each component or individual units of the software shall be tested. The aim of the
unit testing is to check internal data structures, logic, boundary conditions for input and output
data as per the design.

25
Integration Testing
In integration testing, individual units are integrated and tested to understand if the integrated
components work efficiently.

System Testing
The purpose of system testing is to verify that all the system elements are tested and its overall
function and performance comply with the specific requirements. In this approach, the system’s
hardware and software components are integrated and tested as a whole.

Acceptance Testing
Is the developed software ready for delivery? This type of testing helps to identify if the
application is ready for delivery and meets the business requirements. Alpha testing and Beta
testing are the two types of acceptance testing.

Non-functional Testing
The non-functional attributes of software such as performance, usability, security, reliability, and
quality are tested in non-functional types of testing. The quality and performance of the software
can be enhanced with non-functional testing. Various types of non-functional testing include:

Performance testing
Performance testing is performed to ensure that the software applications should be able to
handle the workload well with increased performance. There are four kinds of performance
testing, which include Load testing, Stress testing, Endurance testing, Spike testing.

Security testing
Security experts use the security level of testing to ensure that the system and application are
protected from all types of loopholes. This testing provides security to the application and
protects the loss of information.

Usability testing
The usability testing checks for usability and user-friendliness of the software. This test is
performed to determine if the software is seamless to use by any user.

26
Compatibility testing
In this level of testing, compatibility of the software is tested for different operating systems,
internet browsers, and so on. Such as an Android app is checked if it is compatible with different
versions of Android OS.

Advantages and Disadvantages of Testing Techniques


Software testing is an eminent tool and has a significant role in today’s business. Some of the
foremost advantages are
i. Highly efficient
ii. Quality
iii. Satisfies customer
iv. Good product, good revenue
v. User experience
vi. Business optimization
Some of the disadvantages are:
i. Appropriate communication and coordination with the tester
ii. Competition among similar service providers
iii. Lack of experienced professionals
iv. Finding the right service provider

CHAPTER FIVE

SYSTEM IMPLEMENTATION AND DEPLOYMENT

5.1 Introduction

The section answers the main objective of the study “to develop a mobile-based auction
system that will facilitate buying and selling” It underscores the aspect aiming to reduce the

27
time taken to sell and purchase livestock and livestock products. The system design and
development of auction System involved various steps discussed in detail in this chapter.
These chapter covers system architecture, frontend development,user interface design, user
interface modules, backend development and deployment methods.

5.2 System archtecture

System architecture Architectural models describe the structure of a software system, and
they are the output of any architectural design process. These models consist of sets of
various components of the system that communicate together and they are the direct links to
the systems requirements (Scheer & Nüttgens, 2000). The software can be architecture at two
abstraction levels of architecture in the large and architecture in the small. Software
architecture in the large involves architecting complex systems, while software architecture
in the small concerns is architecting individual programs, where more emphasis is put on the
composition of a single program (Sommerville, 2009). Separation of concern and
independence are major factors to be considered when architecting a software application to
enable any changes to be localized.

Following are the layers of Android auction system .

a) E-Security Android Presentation Layer

It is the client side of the application for the civilians or victims of a crime who want
to report this to the police. The layer presents a graphical user interface for log in or
registration of a new user, reporting a case, tracking the progress of crime reported
and also reporting lost items. This layer is implemented using Android development
and can run on all phones running on Android platform.

b) E-Security Application Layer

This layer carries the methods which receive data from the application layer,
packages it and sends to the Domain layer. It also receives data from the domain

28
layer, repackages it from the JSON object for presentation to the user. This is
implemented by Java controllers within Android.
c) E-Security Domain Layer

This is where the REST services are. These services receive POST or GET requests
from the application layer which are then unpackaged, processed in connection with
the database and JSON object result sent back to the application layer. The process is
supported by Dynamic Java web application.
d) Database Layer

This layer entails the database which is the central repository of the system where
data is stored. Firebase server is the host.

29
Figure 5-5 :Layers OF Android Auction System

5.1 Front end development

Figure 5-6: Java Login Code


Figure 5-7:Registration Code

30
This is the java registration activity code

5.3 User interface design


User interface (UI) design is the process designers use to build interfaces in software or
computerized devices, focusing on looks or style. Designers aim to create interfaces which users
find easy to use and pleasurable. UI design refers to graphical user interfaces and other forms.
Splash screen

31
Figure 5-7:Splashscreen

32
Registration and login

Figure 5-9: Registration and Login Page

33
Homepage

Figure 5-10: Home Page

34
5.4 User interface modules

Figure 5-11: Registration page

35
Figure5-13: Auction page

36
Figure5-14 Bidding page

37
5.5 Backend development

5.5.1 Database design models

Bidders Auctioneers
PK Bidder_ID PK Donor_ID
Bidder_Details Donor_Details

Bids Auction_items

PK bid_ID PK Item_ID
FK bidder_ID FK Auctioneer_ID
FK Item_ID FK Item_Status_Code
Date_of_Bid Item_Name
Value_of_Bid Selling_Price
Item_Description
Date_Sold

Delivery
PK_ delivery ID
FK_Bid ID
Delivery_details
5.5.1

Figure 5-15: database model

38
5.5.1 DatabaseTables or data modes

Figure5-15: database tables

39
Figure5-16: database table

5.5.2 Code testing

Test Data

Test data refers to data which has been specifically identified for use in tests, typically of a computer
program.

State Transition Test Data Set: It is the testing technique that helps you to validate the state
transition of the Application Under Test (AUT) by providing the system with the input conditions.
Below are samples of test data that were used to test the E-security application.

Log In Data Set

This table carries the test data which is the values entered while trying to login to the system.

Table 4-6: Log in Data Set

40
No. Test Case Data No Data Valid Data Invalid data
1 Log in Username Jeska JESKA
2 Log in Password JES@88 @8839

State Transition Test Data Set

This table carries the result of each attempt made to login to the system while using the data
provided in the login data set table.

Table 4-7: Log in State Transition Test Data Set

LOG IN ATTEMPTS VALID PASSWORD INVALID PASSSWORD


1st Attempt Access Denied
2nd Attempt Access Denied
3rd Attempt Access Denied

5.6 Deployment methods Deployment methods


Application Deployment (also referred to as Software Deployment) is the process of installing,
configuring, and enabling a specific application or set of applications, usually through an
application manager (app manager) or software management system, to a specific URL on a
server. Once the process of deploying the application(s) has been completed it becomes publicly
accessible on the URL
.Blue-GreenDeployment
This deployment method has turned out to the most popular so far, because oft he flexibility and
HA architecture is support. Blue green deployment involves have two instances of your
application in separate servers. Where the green instance is the live/production instance and the
blue instance is the new setup you intend switching too. Basic takeout of this method is, you can
easily switch to Blue Environment and monitor the system. When everything runs fine you can
then terminate the old — Green Environment. This ensures your system has high availability and
users will hardly notice the switch in environment when it is done. Also in cases when Blue

41
Environment has any issues, the traffic can easily be switched back to the Green environment, this
happens in split seconds so the user will insignificant/unnoticeable downtime in the system.
CanaryDeployment
Canary deployment is used to release features in batches. When one is about to release a new
feature, the feature is first channeled to a group of users, and gradually is rolled out to other users.
This method of deployment allows for user feedback before general roll out to all infrastructure.
In canary model, you have set of servers/infrastructure resources dedicated to a set of users. For
example certain resources could be dedicated to Premium users, and other resources for normal
users. In an event you need to roll out a new service/features this could be tested on the Normal
users environment, get all the necessary feedback, fix bugs, iterate before releasing it on the
Premium users environment.
AtomicDeployment
Unique to its name Atomic. This deployment method involves using a single instance to perform
deployment and changing directories when the new deployment is done. Unlike other types of
deployments described previously, this type of deployment is used when there is limit to
infrastructure you can use. In atomic deployment, starts by storing the new release in an object
storage Amazon S3 or Azure Blob Storage, from then it is pulled to the server/instance where
there is the “production” directory and the “release” directory within the same machine. The
deployment occurs in the release directory first, and then updated to as the directory in which the
web server to routes request to is the “release” directory. When all finally goes well the old code
can be deleted and the release becoming the new code base. Rollbacks can be easily done, to pull
the codes from the Object storage which acts as the artifact storage.

5.7 Conclusion and future work


Lesson learnt
By undertaking this project i was able to learn. I acquired new skills, improve existing ones
and familiarize with new disciplines.
I learnt a lot about Auctioning and bidding in general. Some of the lessons learnt include:
• Types of auctions and procedures.
• Practical training on requirement gathering.
• New technological tools and frameworks.

42
• Ability to face challenges.
• Improvement in documenting skills.

Problem encountered
Apart from the lessons I learnt I also encountered some problems while gathering
information and developing the application. Some of the challenges I experienced are as
follows:
• I had to do a lot within a fixed amount of time.
• I had to acquire new skills which were a bit hard to grasp within a limited time.
• I experienced some technically problems while using Android Studio.

Despite all the problems I encountered I can gladly say I was able to solve them and
successful complete the project.

5.8 Future developments or study


Due to the time limitation of this study I was unable to add some of the features to the
android auction app I suggest that in future other features such as the ability of bidder and
auctioneer to communicate directly by messaging each other on the application. The future
addition should also have atrcaking system to track where delivers are at.

43
REFERENCES

1. Shonn McCombes , 22 February, 2019.How to write a literature review retrieved from


https://www.scribbr.com/dissertation/literature-review/#:~:text=Published%20on
%20February%2022%2C%202019,gaps%20in%20the%20existing%20research.
2. Cooperate Finance Institution,(2015). History of Auctions retrieved from
https://corporatefinanceinstitute.com/resources/knowledge/finance/auction/
3. Mike Bradely, (2016). CPS Honour to Missouri Auctions.LinkedIn retrieved from
https://www.linkedin.com/in/mike-bradley-b9471066
4. Scott Reybum, April,2020. Traditional Auction Houses taken from
https://www.theartnewspaper.com/news/2020-vision-the-big-year-of-change-for-auction-
houses
5. All star training.inc (2016) https://allstarce.com/

44
6. BOMA (2020) The Impact of Covid-19 on Livestock Markets. From
https://bomaproject.org/wp-content/uploads/2020/06/2020-BOMA-Northern-Kenya-
COVID-19-Market-Assessment.pdf
7. Eric Conrad and Joshua Fieldman (2011) Eleventh Hour CISSP. From
https://www.elsevier.com/books/eleventh-hour-cissp/conrad/978-0-12-417142-8
8. Paul S. Granney,Edwin Claridge (2020) Clinical Engineering 2 nd Edition. From
https://www.sciencedirect.com/book/9780081026946/clinical-engineering
9. Donald R Cooper, Pamela S Schindler (2014) Business Research Methods. Retrieved
from https://www.mheducation.co.uk/business/business-statistics/business-research-
methods
10. Babbie M Mourton(2016) Data Collection Procedures. Retrieved from
https://www.researchgate.net/publication/271104944_Critiquing_Interviewing_as_a_Dat
a_Collection_Method
11. Eric N (2017) Types of Android Tests Retrieved from https://ericntd.medium.com/the-
3-types-of-automated-tests-for-android-apps-ebc444fcf389
NAGTNews vol 16,December (2017), https://nagt.org.
12. BusinessDictionary.com. (2017). BusinessDictionary.com. Retrieved from
http://www.businessdictionary.com/definition/auction.html
13. Parsons, S., Rodriguez-Aguilar, J. A., and Klein, M. 2011. Auctions and bidding: A guide
for computer scientists. ACM Comput. Surv. 43, 2, Article 10 (January 2011), 59
pages.
14. N. Augenblick. Consumer and producer behavior in the market for penny auctions: A
theoretical and empirical analysis. working paper. available at
http://faculty.haas.berkeley.edu/ned/, 2011.
CassadyR.Jr. “Auctions and auctioneering” University of California.

45
APPENDICES
Appendix 1
Project schedule
Table 6-7: Project schedule
Tasks Week

Planning and gathering requirements Week3

Analyzing the requirements Week 4

46
Database design Week 5

Application design Week 6

New registration and sign in Week 7

Application implementation Week 8

Application testing Week 9

Appendix 2
Budget
Table 6-8: Budget
SN ITEMS COST

a) Data collection/field work Kshs 500

b) Travel and transport expenses Kshs 1000

c) Data and internet Kshs 500

47
d) Accommodation and meals Kshs 1000

e) Stationery Kshs 200

f) Preparation and binding Kshs 500

TOTA Kshs 3700


L

48

You might also like