ThesisPDF Available

Gamification as a motivational tool: Extending Loyalty Programs with Gamification


Abstract and Figures

For decades, brands and businesses have been trying to use loyalty pro- grams as a marketing strategy to increase customer engagement. However, statistical data shows that 40 percent of loyalty program participants quit at least one program, indicating that addressing motivation is now more important than ever. At the same time, recent technology advancement have resulted in new concepts. One of them is gamification, which implies using game elements in non-gaming context. Nowadays, gamification is actively used in various areas, among other things, to foster motivation. This paper aims to study loyalty programs and gamification and how gamification tools may be offered as a practical solution to increase motivation and increase engagement. Furthermore, multiple sources of information were taken into use - both primary data, such as interviews, and secondary data, namely, books, articles and journals, to design and develop a web application that integrates gamification into a loyalty software. The theoretical part thoroughly explores different types of loyalty programs and examines both gamification and motivation. The practical part focuses on developing a gamification solution that seeks to motivate users to complete a mission or action in order to receive a reward. In addition, the results are discussed in relation to how gamification can affect engagement.
Content may be subject to copyright.
Gamification as a motivational tool:
Extending Loyalty Programs with
Shahriyar Mohammadi
Dr. Belma Ramic-Brkic
A thesis submitted in fulfillment of the requirements
for the degree of Master’s Degree
in the
Department of Computer Science
July 13, 2020
Gamification as a motivational tool:
Extending Loyalty Programs with
Shahriyar Mohammadi
Dr. Belma Ramic-Brkic
A thesis submitted in fulfillment of the requirements
for the degree of Master’s Degree
in the
Department of Computer Science
July 13, 2020
Declaration of Authorship
I, Shahriyar Mohammadi, declare that this thesis titled, “Gamification as a
motivational tool: Extending Loyalty Programs with Gamification” and the
work presented in it are my own. I confirm that:
This work was done wholly or mainly while in candidature for a re-
search degree at this University.
Where any part of this thesis has previously been submitted for a de-
gree or any other qualification at this University or any other institu-
tion, this has been clearly stated.
Where I have consulted the published work of others, this is always
clearly attributed.
Where I have quoted from the work of others, the source is always
given. With the exception of such quotations, this thesis is entirely my
own work.
I have acknowledged all main sources of help.
Where the thesis is based on work done by myself jointly with others,
I have made clear exactly what was done by others and what I have
contributed myself.
I am enough of an artist to draw freely upon my imagination. Imagination is more
important than knowledge. Knowledge is limited. Imagination encircles the world.
Albert Einstein
For decades, brands and businesses have been trying to use loyalty pro-
grams as a marketing strategy to increase customer engagement. However,
statistical data shows that 40 percent of loyalty program participants quit
at least one program, indicating that addressing motivation is now more
important than ever. At the same time, recent technology advancement have
resulted in new concepts. One of them is gamification, which implies using
game elements in non-gaming context. Nowadays, gamification is actively
used in various areas, among other things, to foster motivation. This paper
aims to study loyalty programs and gamification and how gamification tools
may be offered as a practical solution to increase motivation and increase
engagement. Furthermore, multiple sources of information were taken into
use - both primary data, such as interviews, and secondary data, namely,
books, articles and journals, to design and develop a web application
that integrates gamification into a loyalty software. The theoretical part
thoroughly explores different types of loyalty programs and examines both
gamification and motivation. The practical part focuses on developing a
gamification solution that seeks to motivate users to complete a mission or
action in order to receive a reward. In addition, the results are discussed in
relation to how gamification can affect engagement.
Keywords: Gamification, Loyalty systems, Application, Design, Develop-
1 Introduction 1
1.1 Research Goals ........................... 2
1.1.1 Research Question ..................... 2
1.2 Thesis Outline ............................ 3
2 Literature Review 4
2.1 Technology .............................. 4
2.2 Loyalty Programs .......................... 4
2.2.1 Four Types of Customer Reward Programs ....... 5
2.2.2 Primary Customer Loyalty Program Goals ....... 7
2.3 The Effectiveness of Loyalty Programs ............. 8
2.3.1 Effective Loyalty Programs and Their Potential Benefits 8
2.4 The Emergence of Gamification .................. 11
2.5 Synergy Between Marketing and Gamification ......... 12
2.6 Gamification Development Process ................ 13
2.7 Drivers of Engineering a Gamified Software .......... 14
2.8 Using Gamification to Foster Motivation ............ 16
3 Methodology 17
3.1 Agile Software Development ................... 17
3.1.1 Scrum ............................ 17
3.1.2 Kanban ............................ 18
3.2 Interviews .............................. 19
3.2.1 Customer Interview .................... 19
3.2.2 Contextual Interviews ................... 19
3.2.3 Feature Interviews ..................... 21
3.3 Brainstorming ............................ 21
3.4 Personas ............................... 22
4 Interview Results 24
4.1 Contextual Interview ........................ 24
4.2 Feature Interview .......................... 27
5 Implementation 29
5.1 Web Applications .......................... 29
5.2 Principles of the Web ........................ 29
5.3 Project Description ......................... 30
5.4 Requirements Specification .................... 33
5.5 Environment Setup ......................... 36
5.5.1 PHP ............................. 36
5.5.2 Laravel ............................ 37
5.5.3 PhpStorm and Laravel Plugin ............... 37
5.5.4 Project Structure ...................... 37
5.6 Amazon Cloud Services ...................... 49
5.7 JavaScript .............................. 50
5.7.1 Vue.js ............................. 50
5.8 The Design .............................. 52
6 Findings and Discussion 58
6.1 Data Analysis and Interpretation ................. 58
6.1.1 The Main Findings ..................... 63
6.2 Discussion .............................. 65
7 Summary 67
7.1 Future Research ........................... 67
8 Bibliography 69
A Pre-Study 74
A.1 Partner’s User Stories ........................ 74
A.2 User’s User Stories ......................... 74
A.3 Qootiya’s User Stories ....................... 75
A.4 Contextual Interviews ....................... 75
A.5 Feature Interviews ......................... 77
B Application Screens 78
B.1 Qootiya ................................ 78
B.2 Admin Panel ............................. 82
List of Figures
2.1 Defining Gamification ....................... 11
2.2 Three tiers of gamification ..................... 12
2.3 Gamification ............................. 13
3.1 Trello board used for task management. ............. 18
3.2 Persona ................................ 23
4.1 Contextual interviews, question 1 ................. 24
4.2 Contextual interviews, question 2 ................. 25
4.3 Contextual interviews, question 3 ................. 25
4.4 Contextual interviews, question 4 ................. 26
4.5 Contextual interviews, question 5 ................. 26
5.1 Use case diagram .......................... 32
5.2 Popular programming languages in web development .... 36
5.3 Popula web development frameworks .............. 37
5.4 Admin panel, generate box codes ................. 44
5.5 Admin panel, tutorial image .................... 45
5.6 Animation layers .......................... 51
5.7 Qootiya, design wireframe ..................... 53
5.8 Qootiya, homepage ......................... 54
5.9 Qootiya, open box section ..................... 55
5.10 Qootiya, reward section ...................... 56
5.11 Qootiya, user wallet ......................... 57
5.12 Qootiya, box animation ....................... 57
6.1 Qootiya: Panasonic Campaign .................. 59
6.2 Qootiya, generated leeds ...................... 60
6.3 Qootiya, conversion rate ...................... 61
6.4 Google, Average Ads CVR ..................... 62
6.5 Facebook, Average Ads CVR ................... 62
6.6 Instagram, Average engagement rate ............... 63
List of Tables
5.1 User Requirements ......................... 33
5.2 Admin Requirements ........................ 34
5.3 Partner Requirements ........................ 35
5.4 Project Goal ............................. 35
List of Abbreviations
LP Loyalty Program
CVR Conversion Rate
MVP Minimum viable product
MVC Model, View, and Controller
URL Uniform Resource Locator
This thesis is dedicated to my parents for their love,
endless support and encouragement.
Chapter 1
A marketing strategy that rewards loyal customers that regularly engage
with a brand is called a customer loyalty program or reward program. Con-
stituting a massive market in consumer retail, loyalty reward programs aim
to increase retention and customer acquisition. [1] Studies show that on aver-
age, every household holds over 29 loyalty memberships, but active in only
12. Furthermore, according to Colloquy Loyalty Census, the loyalty mem-
berships in the United States have seen a 26% increase from 2.6 billion in
2012 to 3.3 billion in 2014.[2] Companies and brands integrate loyalty reward
programs in various forms. Frequency reward programs, such as cards or
frequent flyer programs, allow customers to earn points after completing an
action. For example, airline companies allow flyers to collect points when
purchasing tickets and exchange their points for various rewards such as seat
upgrades, or hotel discounts. Cashback rewards, punch cards, or multi-tier
rewards are other forms of loyalty systems each implemented in a different
industry. In a punch card reward program, mainly seen in coffee shops or
restaurants, customers get to collect stamps and “unlock” a prize or reward
after completing a purchase for several times. Cashback reward programs,
on the other hand, enable a fixed percentage to be claimed for each dollar
spent with a minimum expenditure constraint – for instance, a total spend-
ing of $100 returns $5 to the customer.
Over the last years, the coalition loyalty agreements were formed between
several merchants and by merging many loyalty programs into one, allow-
ing customers to earn and spend points from different merchants within
the same network of coalition. For example, Plenti, a program operated by
American Express, connects numerous partners such as AT&T, EXXON, Mo-
bil and Hulu, and allows its members various ways to earn points and receive
discounts, upgrades and other perks.
Chapter 1. Introduction 2
The concept of gamification revolves around adding game mechanics into
non-game environments. Game technologies and games, in general, have
far surpassed the traditional boundaries of their medium, and are now being
used in non-game contexts. The idea of gamification revolves around adding
game mechanics into non-game environments, and it is generally used to
engage users, shoppers or members. [16] In the past years, gamification has
become a new way to think about marketing and customers, and because of
its recent appearance, it is crucial to analyze its effect on various industries.
1.1 Research Goals
This thesis aims to analyze gamification as a tool to increase customer en-
gagement. Furthermore, the goal is to discover what fosters customers to
use gamified applications and use it to build a gamified reward program. It
is important to note that this does not mean to make games just for the inten-
tion of advertising, neither it is about advertising within games, but rather to
build a platform that seeks to increase engagement, and motivate customers
to purchase more.
1.1.1 Research Question
The goal of this research is to examine the effect of gamification in various
industries and build a loyalty program that seeks to increase engagement by
adding a layer of gamification. Therefore, the following research question
will be answered:
RQ1: Does applying gamification to loyalty programs increase engagement
and conversion rate?
The following sub-questions are used to help answer the main research ques-
RQ1a: What are the elements that can be used to create a gamification
RQ1b: How to design and develop a gamified application?
Chapter 1. Introduction 3
1.2 Thesis Outline
The research is divided into the following seven chapters:
The introduction chapter provides a background description and
presents the research goals and question.
Literature Review
This research is carried out by conducting a literature review concern-
ing the gamified system, the aspects of applying gamification in various
industries, and understanding the development and design process of
The methodology chapter outlines the overall approach of the thesis
and explains the tools, procedures and materials used to gather and
analyze data.
Interview Results
The Interview results chapter presents the result of the interviews.
The implementation chapter discusses the development of the plat-
form. It provides detailed technical information about the software,
including the development and design decisions taken. Furthermore,
the section highlights the essential tools, services and functions used
during the building phase. Lastly, the final design of the product is
displayed and reviewed.
Findings and Discussion
The findings and discussion chapter reviews the data gathered after
running and analyzing the software, and compares them to other plat-
forms. In addition, the discussion section reviews the results and eval-
uates if the aims of the thesis were met.
The summary chapter provides an overview of the main points of the
thesis and proposes potential gamification integrations in different in-
Chapter 2
Literature Review
In this chapter, the literature regarding gamification will be explored with
the focus on various loyalty program integrations. Furthermore, the use of
gamification is further specified to the application in various industries. In
order to better understand the effects of gamified programs, both positive
and negative views are addressed. Finally, this chapter explores motivation,
specifically, consumers motivation to complete a purchase and how gamifi-
cation influences consumption.
2.1 Technology
It is no secret that technology, such as smartphones, digital watches, cars or
computer play a significant role on our everyday life, As stated by the re-
searcher Marc Prensky, youth today are the “digital natives” as they are used
to living with the technology.[3] The elders, on the other hand, are defined
as the “digital immigrants” those who are adopting and learning new tech-
nology and technological innovations. [3] Furthermore, over the last decade,
technology has revolutionized the way companies conduct business. It has
allowed small companies to use an array of tools such as mobile devices or
computers to compete with larger organizations.
2.2 Loyalty Programs
Loyalty program (LPs), as a term, can be described as a marketing technique
that tends to focus on growing the lifetime value of current users or cus-
tomers using an interactive relationship over a long period. As the com-
panies and businesses grow, customers loyalty becomes a high priority and
plays a massive role in their success. Brands and enterprises continuously
Chapter 2. Literature Review 5
seek to increase customer loyalty to strengthen their position in the market.
In the late 1990s, brands and companies started to realize that it is cheaper
to keep existing customers rather than acquiring new ones; hence the loy-
alty programs or frequent flyer programs began booming. [5] According to
Wall Street Journal, a large sum of money is spent each year by companies on
building, maintaining, and changing LPs, as they are perceived as the essen-
tial method for attracting new customers, and increasing engagement toward
a brand.
Enhancing customer loyalty is one of the most crucial marketing instruments,
as loyal customers tend to be more profitable since they become less price
sensitive and develop resistance towards the competitive offers.
LPs have existed for over 40 years and, over the years, have become a popu-
lar marketing tool in many industries. American Express was one of the first
popular companies that developed a loyalty program. After issuing their
first gold card for upper profile travelers to initiate business travel in 1966
and introducing the platinum card in for their elite customers in 1984, they
revolutionized their loyalty system with their Frequent Flyers program. The
Frequent Flyer is considered as one of the first complete loyalty programs in
the world, that allowed the American Express cardholders to collect points
and redeem them for various rewards such as discounts on hotel stays, gad-
get technologies, room and flight upgrades and many more. [6]
2.2.1 Four Types of Customer Reward Programs
Over the years, many brands have adapted and built their loyalty programs.
The ultimate goal for every company’s loyalty program is to increase rev-
enues, profits, and eventually, their market share, which provides stability
for a company. Enlarging the data pool and gathering information can be
achieved by building a loyalty program and can be of benefits for compa-
nies, as it produces better information regarding their customers or users.
Developing an effective loyalty program and increasing customers’ loyalty
can potentially increase sales based on up-selling and cross-selling, lower
price sensitivity, and enhance brand attitude.[7]
In general, there are four types of loyalty programs:
Chapter 2. Literature Review 6
Type 1 rewards customers with a discount upon completing a purchase and
is mainly conducted by small firms that are not able to integrate a more so-
phisticated LP. Type 1 LP is not genuinely considered as a type of loyalty sys-
tem as each customer has the same chance of receiving a discount regardless
of the purchase history. Due to ease of the registrations and customers lack
of concern over privacy, these types of programs benefit from a large num-
ber of participants. This LP type has several downsides, failing to encourage
repeat purchase, as they reward card ownership rather than loyal behavior.
Businesses that use this type of LP, often are limited to few customer infor-
mation such as name or address, which results in failing to analyze shopping
behavior or lifestyle information to offer unique deals to loyal customers. [7]
Type 2 LPs are mainly self-managed by the customer, as they allow members
to receive a free item after purchasing a fixed number of units. For instance,
a member can receive a free coffee after he/she buys 5 at full price. This Type
is mainly managed by the customer, usually with a card. Some of the flaws
of this Type is that competitors can easily match it and that the businesses are
not able to gather enough information regarding their customers. [7]
Type 3 requires a comprehensive database, unlike the first two types, cus-
tomers are rewarded for their loyalty based on their shopping history. [7]
Some Type 3 programs have integrated various levels or tiers to increase mo-
tivation and encourage customers to purchase more to increase their level
and rewards. Hilton HHonors, for instance, have incorporated this Type
of LP into their business, where travelers with higher tiers receive various
prizes such as free room upgrades or unique deals. Many Type 3 LPs rely
on partnerships with complementary marketers; for example, airlines, ho-
tels, and car rental companies have merged their LPs. Partnering up enables
companies to offer a variety of rewards and increases customer retention. [7]
Similar to Type 3 programs, Type 4 LPs are based on points, but unlike Type
3 programs provide targeted offers based on customers purchase history. The
data analysis in this Type is more sophisticated than just checking the previ-
ous purchase history, many large retail markets have developed a large and
complex database that allows them to extract useful information using data
mining techniques. [7]
The emergence of mobile applications, e-commerce, mobile payment has en-
abled companies to shift their loyalty programs into e-loyalty and loyalty
Chapter 2. Literature Review 7
mobile applications. Starbucks, for instance, launched a new reward pro-
gram in 2011, allowing their loyal customers who download the app to ac-
cumulate rewards points, purchase and complete payments with just a few
taps. Moreover, Starbucks introduced the “Visit us again” loyalty program,
which, similar to the traditional stamp system, allowed frequent visitors to
collect points after each order and exchange them for free coffees and other
There are many trends for loyalty programs such as card-less programs or
customized awards based on users’ behavior and personality. According to
McEachern, loyalty programs and reward systems will continue to evolve
and be more customer-centric, allowing more competition. [8]
2.2.2 Primary Customer Loyalty Program Goals
When developing a loyalty program companies and brands may have sev-
eral objectives. The first aim is to enhance their relationship with customers
and turn guests into loyal clients, which enables them to develop a lifetime
demand for a product, brand or service.
Attracting new customers through customer loyalty is the second objective of
a brand. The word-of-mouth advertising from the satisfied users of a loyalty
program can advertise various perk that a loyalty program is offering. More-
over, attractive rewards and program advantages for the members can allure
new customers to join the program, for instance, free coffee after completing
five orders.
Gathering data and forming a customer database is the third purpose when
developing a program, as understanding users and their behavior can be
a powerful tool for various marketing activities and can increase engage-
ment. Many large retail stores, especially in the grocery industry, have im-
plemented a frequency buyer program, where shoppers identify themselves
with some loyalty card or application QR code when completing their pur-
chase, for exchange of discounts or other rewards. This method has allowed
companies to collect as much information as possible and identify their loyal
customers using several tools, such as credit or debit cards, analyzing web-
site “cookies” or requesting their mobile phone number.
Although many companies have acquired a significant amount of data, yet
they fail to utilize this information. For example, hotels have very detailed
information about their customers, such as room preference, booking dates,
Chapter 2. Literature Review 8
or type of travel, and yet many hotels fail to monetize this data using tai-
lored rewards or personal customer service. However, over the past years,
there has been a significant growth of businesses that are upgrading their
membership systems. [9]
2.3 The Effectiveness of Loyalty Programs
Despite the massive market of LPs, many researchers have questioned the ef-
fectiveness of LPs. Many attributes can be analyzed to measure the impact of
Loyalty programs such as continuation in a membership program, a raise in
companies sales or higher profitability, or an increase in brand usage. Many
studies pose serious concerns regarding the impact of many LPs, for instance:
According to Banasiewicz, the customers are subsidizing eventually,
no matter how technologically advanced and creative the loyalty pro-
gram is. Andrew also stated that managers are only concerned about
the registration rate and customers signing up rather than the actual
profitability, revenue increase, loyalty gains, or LP engagement. [10]
A Martiz Loyalty Marketing Poll found that 40 percent of LP partic-
ipants quit at least one program, and only 24 percent of responders
stated that they would rather shop in stores that have a LP. [11]
Another research conducted in Europe showed that in 2005, 75 to 80
percent of LP members have not collected or redeemed LP points. [12]
2.3.1 Effective Loyalty Programs and Their Potential Benefits
Although many studies may suggest that LPs do not satisfy their main tar-
gets, a well-run LP can yield many benefits and be advantageous. For in-
stance, as stated by a major European academic study, members of a finan-
cial services’ loyalty program were less price-sensitive in comparison to other
customers. [13] The benefits of a well-run LP goes beyond increased loyalty
or lower price sensitivity. A well-run LP can unlock many useful informa-
tion regarding consumer behavior and preference, which can result in better
consumer targeting, enables cross-selling and up-selling opportunities, and
enables an easier product recall implementation. [7]
Chapter 2. Literature Review 9
Extracting Useful Information
In Type 3 and 4 LPs, each time a customer uses his/her loyalty card, the in-
formation is stored in the company’s database. The gathered data can later
be used to extract useful information, for example, the average customer ex-
penditure or their best customers. Companies can then tailor special offers
based on the customers shopping history or adjust inventory, price, and sales
planning. Lord MacLaurin, The chairman of Tesco, UK’s largest retail store,
once stated, “What scares me about this loyalty program, is that you know
more about my customers in three months than I know in 30 years.” [14]
A great example of Tesco’s customer data analysis was when they started
developing a private-label line, which included exclusive items such as cash-
mere sweaters or duck pâté, when realizing that their higher-spending cus-
tomers were not purchasing fruits, cheese and wine from them. Furthermore,
in order to stem customer defections, Tesco used their database to identify
300 items that their most price-sensitive customers (those who mainly pur-
chase the cheapest available item) purchased, and lowered the price of many
of these items preventing them from switching to a cheaper retail store such
as ASDA. [14]
The LPs database can also be used in marketing; many companies use the
gathered information to measure the effectiveness of their marketing cam-
paign. According to the Dunnhumby executive, “Not only can we see the
effect of an advertisement on sales. We can also see what type of customer it
won over.” [15]
One of the greatest contributes to the richness of a LP is the number of its
members, as it enables effective data mining. A survey conducted by Martiz
indicated that around 60 percent of people are willing to provide their per-
sonal information to their bank’s LP, so they would receive more customized
rewards and enhance communications. [11]
By analyzing LP’s database, many trends, such as purchases, the time be-
tween each purchase, payment method, and most purchased product, can
be discovered. There are however, some limitations in using this data. For
instance, the data gathered by a company does not show the motive behind
their decision or does not record purchases from other stores and brands.
Moreover, longitudinal customer data can also provide a better insight than
Chapter 2. Literature Review 10
LP data, since a high proportion of a program’s members may not be active.
Increasing Average Sales
Type 3 and 4 both provide companies with a great tool to increase cross-
sell and revenue. By offering rewards such as extended warranties, dis-
counts on special products, or suggesting complementary items, companies
can encourage customers to purchase more. In addition, LPs can motivate
single-channel customers to use additional channels, for instance, to encour-
age store-based buyers, to use the online store. [7]
Using targeted promotions, especially in slow seasons (such as airline
mileage program available only on certain flights), can lead to more success
and reduce waste compared to traditional mass-market promotions. [7]
Audience Targeting
Customization and personalization can be very beneficial for companies us-
ing a Type 3 or Type 4 loyalty program. Offering specialized deals, customiz-
ing e-mails or newsletters to a specific cluster, such as high-level spenders
can greatly increase engagement. [7]
By tracking its members’ spending habits and behaviors, Club DMC (loyalty
program for Dorothy Lake Markets) were able to extract data regarding their
most loyal customers and tailor special deals to retain their loyalty. After
realizing that their newspaper ads attracted too many "cherry pickers" who
could only purchase discounted offers, they published their last newspaper
in 1995 and started focusing on building a LP.
Moreover, Tesco was able to label 50,000 products based on their customer
preference after dividing its customers into six clusters using their attributes
such as family size, income or environmentally aware. For instance, Tesco’s
Finger Foods segment is for shoppers with high income, since they are more
time-strapped and purchase organic products. Similar to the high-income
cluster, the Healthy Living cluster also purchases more organic products,
but they are more price sensitive. A third cluster, Traditional Shoppers, are
mainly homemakers who usually cook their meals, hence they mostly pur-
chase food ingredients. Tesco usually sends six special offers to their LP
Chapter 2. Literature Review 11
members, four of them for items that had already been purchased while the
other two are for related item, which seeks to increase their sales. It is im-
portant to note that coupon customization has drastically increased Tesco’s
redemptions percentage from the industry average of 1 and 2 percent, to 15
and 20 percent. [15]
2.4 The Emergence of Gamification
The first occurrence of Gamification as a term dates back to 2008, but gamifica-
tion was popularized by the industry platers and conferences in the second
half of 2010. [16] Although Hamari and Huotari emphasize that gamifica-
tion must have similar qualities and properties to those used in games, they
add that the aim of gamification is more crucial.[50] Moreover, according to
them, gamification is “a process of enhancing a service with affordances for
full game experiences in order to support the user’s overall value creation.”
It is known that people have a tendency to play games. [17] Introducing
gamification into activities or tasks that people generally dislike, such as di-
eting or exercising generates behavior change among individuals [18], which
tends to increase engagement and make these activities more entertaining to
start or complete, which is exactly the reason many companies, brands and
businesses have integrated gamification as a tool to motivate their customer
and users. [19]
FIGURE 2.1: Defining gamification [19]
According to Webach and Hunter, game design can be classified into the dy-
namic, mechanics, and components. [20] Dynamics are defined as the big-
picture aspects of the gamified system or the theme around which the game
Chapter 2. Literature Review 12
revolves; this can never directly enter into the game. Some xamples of dy-
namics are emotions, narrative, and constraints. The next level is Mechanics,
which contains elements such as challenges, chance, competition - and im-
plies action. Mechanics are basic processes driving the action forward that
stirs the players’ behavior into a certain direction. The bottom tier of the
pyramid are Components, which is what the player sees. This category in-
cludes elements such as achievements, avatars, badges. The figure below
shows the existing forms of each element. [20]
FIGURE 2.2: Three tiers of gamification [20]
2.5 Synergy Between Marketing and Gamification
Marketing is a multi-faceted area, which includes many techniques and
goals. Philip Kotler and Kevin Keller define marketing management as "the
art and science of choosing target markets and getting, keeping, and growing
customers through creating, delivering, and communicating superior cus-
tomer value" in their authoritative book series "Marketing Management".
The case of Foursquare can be used as a great example of in-app gamification.
Foursquare is a location-based social media network, which allows its users
to check-in and share their location using their app. The use of game ele-
ments such as badges, points, achievements, and status provides Foursquare
an excellent tool for increasing engagement and retention. For example, a
Foursquare user can receive the Adventurer Badge after checking in to 10
different venues. [44]
The Gym Rat Badge is another example of their badges. The Badges can be
unlocked after checking in to a gym ten times in one month. This method is
Chapter 2. Literature Review 13
one of the purest forms of gamification and has helped Foursquare to gain
massive success as opposed to its predecessor, Dodgeball. [45]
The Foursquare case is only one example of game element implementation.
Gamification can be applied in many domains and areas such as education
[21], marketing [22], and fitness [23].
2.6 Gamification Development Process
According to Morschheuser, the process of developing a gamification expe-
rience can be divided into seven phases. [24]
FIGURE 2.3: Seven phases of developing a gamification process
The first stage in the gamification process is the project preparation, which in-
volves highlighting the problems that will be addressed using gamification.
Next, the goal is to define the parameters that will be used to measure the
success of the project. Once the goals are set, it is crucial to clarify whether
gamification is appropriate and effective for these targets. Businesses can
examine the effectiveness of a loyalty program by creating a project plan
specifying project budget, deadlines, duration, tasks, teams, and most im-
portantly, their success criteria. [24]
Once the first stage is completed, it is time to move to the analysis stage,
which requires collecting and examining information and data regarding the
target audience. Conducting interviews, surveys or observations are key
methods that can enable the company to define its target audience. [25]
Once this step is finalized, companies can use the collected data and infor-
mation to have a clear sense of its users behavior, requirements, and needs.
[24] After gathering and analyzing the information about users, companies
can start with the gamification design. This step is called the ideation stage,
which requires coming up with as many ideas as possible by brainstorming
and integrating.
Chapter 2. Literature Review 14
The ideation stage is followed by the design of prototypes, where the goal is to
focus on fast development and creation of prototypes or MVPs. The proto-
types should be constantly tested and evaluated to see whether they fulfill
the objectives. The main goal of this stage is to produce a pilot, which can
be used in the evaluation of the gamification design. Once it is ready, the
company should test the design and evaluate whether it satisfies all project
The aim of the next phase is evaluation, which requires investigating the de-
veloped gamification solution and checking whether it fulfills the defined
objectives. [26] [24]
The final phase of the gamification development process is monitoring, which
is important as it allows the company to come up with improvements and
have a long-lasting success with the gamification integration. [24]
2.7 Drivers of Engineering a Gamified Software
When engineering a gamified software, it is important to understand that the
primary goal of adding gamification to an app or software is not only to en-
tertain but to affect users’ behavior. Although people seek for new opportu-
nities to increase life quality, getting them to change their behavior involves
the issue of motivation. [27]
The popularity of gamification development and its integration in various
areas keeps growing as the popularity of mobile apps, social media and video
games in general rises. In order to better understand the use of gamification
it is crucial that the benefits of integrating gamification into a software and
its challenges is analyzed. [28]
Increasing engagement and growing retention are the main motives behind
integration of gamification in business, marketing, education and other in-
dustries. [29] According to Chou [30], there are eight core drivers of gamifi-
cation which are analyzed below:
1. Epic Meaning and Calling: The Core Drive that is in play when the
user or participant thinks that they are achieving something great or
they were "chosen" to take that action. For example, a user devoting
a lot of time to write articles on Wikipedia, not to make money but to
contribute and protect humanity’s knowledge. [30]
Chapter 2. Literature Review 15
2. Development and accomplishment: The word "Challenge" is crucial
in this Core Drive, as the focus of the user is to make progress, develop
a skill, achieve a mastery, and finally complete a challenge. This Core
Drive is one of the easiest to design, and it focuses on rewarding a user
with a badge or trophy once a task is completed. [30]
3. Empowerment of Creativity and Feedback: This Code Drive focuses
on engagement and creativity, as it allows the user to be entertained by
repeatedly trying different combinations and discovering new things.
An example of this Core Drive is Legos, which empowers participants
to be creative and build various figures from the same Lego set. [30]
4. Ownership and Possession: The goal of this Core Drive is to make
users feel in control, hence increase their motivation. The idea here is
simple; when a person feels ownership over a specific process, project,
or object, they tend to improve and increase what they own. Video
games use this Core Drive by allowing players to customize their
avatar, hence feel ownership towards it. [30]
5. Social Influence and Relatedness: This driver focuses on incorporating
social elements such as companionship, mentorship, and social accep-
tance to motivate people. Seeing a friend or relative success in a par-
ticular field or acquire wealth tends to encourage people to attain the
same. Another example would be the sense of nostalgia, purchasing a
product if it reminds you of your childhood. [30]
6. Scarcity and Impatience: People tend to want something more if it is
scarce, rare, exclusive, or immediately unattainable. Many video games
use this method to gain retention by allowing their users to log into the
app to collect their reward. [30]
7. Unpredictability and Curiosity: By keeping the users unaware of the
next action, challenge, or event, companies can grow engagement.
Gambling addictions, is an obvious example of this Core Drive, where
users tend to "play" more because they are unable to predict and do not
know what is going to happen next. [30]
8. Loss and Avoidance: The motivation to prevent something negative
from happening. An example of this Core Drive would be notifying
a user that everything they have worked for could be lost if they quit,
and they will miss an opportunity. [30]
Chapter 2. Literature Review 16
2.8 Using Gamification to Foster Motivation
Players can have an immense motivation and emotional involvement while
playing games – especially video games. [31] However, as mentioned before,
the idea of gamification is not the game itself but to use player’s motivational
power and the emotional participation to influence a behavioral change.
According to researchers, extrinsic and intrinsic are the two generic types of
motivation and rewards. Extrinsic motivation happens when the user com-
pletes an action or task after being motivated by an external reward or mo-
tivation. Intrinsic motivation, on the other hand, takes place without having
an external reward. [32]
Many studies suggest that implementing game design elements into a prod-
uct or software can reduce users’ intrinsic motivation and decrease engage-
ment. However, other studies, propose that gamified elements can increase
motivation if appropriately developed. [33]
While Mekler E.D. [34] and Daniel H. Pink [35] state that intrinsic motivation
is not significantly affected by game elements, and long-lasting motivation
can not be created by extrinsic rewards, other researchers have proven the op-
posite. [36] For instance, research shows that rewarding players with badges
or introducing leaderboards for the players can foster motivation. [36]
In general, to successfully integrate gamification into a software, it is recom-
mended to design experiences that motivate creativity, and allow users to en-
gage and continuously enjoy the tasks or activities. To reach this, companies
must use game elements that motivate both extrinsically and intrinsically.
Chapter 3
This chapter describes the components of the agile work approach and the
methodology used in the thesis.
3.1 Agile Software Development
Although the waterfall model was one of the most popular design processes,
over the last couple of years, the demand for responding to changes quickly
and high-speed development has increased. Being able to complete develop-
ment phases in sequence has shifted the companies to use the agile software
development method. [37]
In the following section, various process frameworks that were used in this
agile project will be described.
3.1.1 Scrum
One of the most popular and widely used agile methods is the Scrum
method, which consists of various elements that need to be considered
throughout the process. [38]
Cycles or iterations are used to divide work into what is called a Sprint, with
a fixed start and end date, the goal is to create a tangible task that brings value
to the user or customer in two or four-week duration. [38] Furthermore, daily
scrum, which are short meetings with an approximate duration of 15 minutes
allow teams to discuss previous tasks and daily planes. Each scrum session
ends with a sprint review with a goal of inspecting and adapting the product
that is being developed and sprint retrospective where the progress and work
is displayed and reviewed.
Chapter 3. Methodology 18
As mentioned previously, agile methods of software development are usu-
ally described as iterative development. The agile workflow enabled devel-
opment of testable prototypes and early feedback. Regular testing were con-
ducted throughout the entire life cycle of the project, and the development of
each feature was implemented incrementally.
3.1.2 Kanban
The Kanban board [46] is an agile project management tool, which is used to
help visualize the work progress and flow. However, using the web-based
application Trello, which is a collaboration tool that organizes projects into
boards, enabled developers to stay synchronized even when working from
home. [57] The board used for this project consisted of the following four
columns: Backlog,Completed,Design,Development, and Completed. After each
sprint, the backlog and the columns were updated. This method ensured that
the tasks were being finished when dragged to the Completed column. Fur-
thermore, by providing a great overview of the work, this method allowed
developers to stay synchronized with the time schedule. The figure below
shows the five columns and different tasks for the project.
FIGURE 3.1: Trello board used for task management.
Chapter 3. Methodology 19
3.2 Interviews
Before starting the development phase, it was crucial to explore and under-
stand the users need. Early on in the process, interviews were conducted to
gather information and data, which provided great insight and allowed for a
better understanding of the users.
3.2.1 Customer Interview
With the goal being to gather as much information and data as possible, an
unstructured interview was conducted, as it enabled a better understanding
of the customer and their shopping habits. Ten brands from different indus-
tries were selected for the interview. The selection of experts aimed for roles
of directors, managers and marketers, as the goal was to interview both IT-
heavy and more general marketing-inclined experts.
When conducting the interview, it was essential to be able to explore brand’s
needs and wishes, which was the reason that an unstructured interview was
chosen. Conducting an unstructured interview granted a more flexible way
of communication and enabled for a better understanding of the client. When
considering the product engineering and implementation, understanding
both users’ need and brand’s demand were crucial. Based on previous ex-
perience in developing gamified systems, marketing, and loyalty programs,
the following topics were chosen for discussion.
Gamified loyalty system;
Discounts and gifts;
User retention;
User engagement;
Rewarding users;
Feature requirements;
Back-end services;
3.2.2 Contextual Interviews
A contextual interview is a research method that enables the interviewer to
gather information in the moment and context of the use. During this type
Chapter 3. Methodology 20
of interview, the researcher often analyzes the users work in the user’s envi-
ronment, as opposed to being in a lab. [48]
When visiting different stores, a contextual interview with people in the
stores was conducted, which provided great insight into customers shopping
habits and needs for building a gamified loyalty system. Considering the lo-
cation and time, the unstructured method was performed, as it allowed us to
be more flexible with questions. The interview questions are shown below
and the results are presented in Chapter 4.
1. How often do you go shopping?
(a) Monthly
(b) Weekly
(c) Once in 2-3 days
(d) Daily
2. How often do you shop online?
(a) Monthly
(b) Weekly
(c) Daily
(d) Never
3. How many loyalty programs are you subscribed to?
(a) More than 5
(b) 3-5
(c) 1-3
(d) 0
4. Have you ever used a loyalty program application?
(a) Yes
(b) No
5. Would you consider using a service that allows you to receive discounts
and prizes for free?
(a) Yes
Chapter 3. Methodology 21
(b) No
(c) It depends
3.2.3 Feature Interviews
Semi-structured interviews enable the interviewer to ask more open-ended
questions and spontaneously explore relevant topics, avoiding the straight-
forward question and answer format. Before developing the admin panel,
a semi-structured interview was conducted with five of our business part-
ners to get further opinions of their desired features. This type of interview
helped us understand our partners’ needs and find out the most important
features that should be developed for the admin panel. It is important to
note that only the companies and brands subscribed to the platform were
interviewed. The interview questions are shown below, and the results are
presented in Chapter 4.
1. Would you like to add/edit/remove items in your box?
2. Would you like to generate new codes?
3. What method do you prefer for removing coupons from the user’s wal-
Before discussing the features, the following two options were offered
to the brands:
(a) Allow shopping assistants to remove prizes using an admin panel
(b) Ask the user to scan a unique QR code to remove it.
4. How would you like to be informed of your box statistics and customer
5. Any other comments regarding the current system?
3.3 Brainstorming
"Brainstorming is the process of free thinking and generating ideas without
being bound by restraints", according to Cory and Slater [51]. During the
entire design and development process, brainstorming sessions were held to
generate as many executable ideas as possible, and analyze different designs
and concepts for the product. The tools used during this process were white-
board, pen, paper, and computers. Each brainstorming session would last
Chapter 3. Methodology 22
about 60 minutes, and all the ideas were written down on a paper and later
compared and discussed. Some ideas were added to the prototype, and oth-
ers were get discarded after analyzing different aspects such as cost analysis,
engagement, or value.
3.4 Personas
Personas are descriptive models and a powerful tool for interaction design
or describing users behavior. Usage of personas was vital when building the
product as they described design and development decisions and provided
a clear understanding of the users’ goals and capabilities. Furthermore, per-
sonas are an accurate way of communication and thinking about user behav-
ior, thinking and goals. [39] Although falling back on stereotypes is one of the
disadvantages of personas biased, it was assured that enough understanding
and empathy is expressed.
Customers personas are fictional generalization of the most valuable clients,
which are created before the design phase to assist teams to gain a better
understanding of the users by providing information such as age, gender, in-
terests and frustrations. Figure 3.2 shows a simple persona that was created
for shoppers that only look for discounts and deals.
Chapter 3. Methodology 23
FIGURE 3.2: Shopper persona created for the project
Chapter 4
Interview Results
4.1 Contextual Interview
The following chapter describes the results gathered after interviewing 20
shoppers at the Sarajevo City Center shopping mall. Graphs and figures were
used to visualize the interview results.
As visualized in Figure 4.1, 50% of the interviewees stated that they shop
once in a month.
FIGURE 4.1: How often do you go shopping?
As Figure 4.2 illustrates, none of the interviewees shop online on a daily
basis. However, it was interesting to discover that more than 60 percent of
the interviewees shop online on a monthly basis.
Chapter 4. Interview Results 25
FIGURE 4.2: How often do you shop online?
Furthermore, as Figure 4.3 displays, 44% of the participants stated that they
are subscribed to 1-3 loyalty programs and only 11% said that they are yet to
subscribe to a loyalty program.
FIGURE 4.3: How many loyalty programs are you subscribed
As displayed in Figure 4.4, 70% of the people that were interviewed had
used a loyalty program application. Those who said yes were asked about
their experience regarding these applications. The participants mentioned
the "Cashback" application and stated that they did not appreciate the re-
wards and the registration process.
Chapter 4. Interview Results 26
FIGURE 4.4: Have you ever used a loyalty program applica-
After explaining the concept of Qootiya and the idea of receiving special
prizes and discounts from their favorite brands after completing missions,
the participants who had never used a loyalty application all answered that
they would at least try using such a product if it was for free. However, 10%
of the interviewees stated that they are not interested in loyalty programs.
FIGURE 4.5: Would you consider using a service that allows
you to receive discounts and prizes for free?
Chapter 4. Interview Results 27
4.2 Feature Interview
Before developing the admin panel, the feature interview was conducted
with five brands that agreed to subscribe to the product.
1. Would you like to add/edit/remove items in your box?
Four out of five brands stated that they prefer us to add and control the
box items.
2. Would you like to generate new codes?
All five business owners stated that they do not use this feature, as it
does not occur often. One brand said that they would like to receive the
generated codes; hence an option was developed to allow the admin to
export the data into a CSV file.
3. What method do you prefer for removing coupons from the user’s wal-
Before discussing the features, the following two options were offered
to the brands:
(a) Allow shopping assistants to remove prizes using an admin panel
(b) Ask the user to scan a unique QR code to remove it.
After reviewing all the options, all five brands agreed that it is better
to handle the coupon removing process using the admin panel as it is
more secure and, more importantly, allows customers to redeem their
prize online as well.
4. How would you like to be informed of your box statistics and customer
Although one business owner expressed his desire to receive daily
emails, he agreed that it is more convenient to have a box statistics page
where he can easily access all the required information and increase vis-
ibility and reduce mail spams. Hence, a box statistics page was added
to the admin panel, making sure that businesses are up to date with all
the information regarding their box and customers.
5. Any other comments regarding the current system?
Chapter 4. Interview Results 28
Two brands mentioned that they would like to have their website and
social media handles visible somewhere on their box page. Further-
more, one brand owner suggested that displaying the product image
and name to the shopping assistants after they remove a prize could
speed up the redemption process and enhance the customer experience.
Both features were later added to the platform.
After conducting the feature interviews, allowed developers to dis-
cover new features and have a more unobstructed view of the final
product. For instance, the role-based access control feature was dis-
covered and implemented, allowing each company to assign roles to
their company members and control their access to tabs and applica-
tion permissions. This feature will be further discussed in Chapter 5.
Chapter 5
This chapter presents the implementation of the web application. The objec-
tive is to use the gathered information to design and build a loyalty system
that combines gamification and marketing.
5.1 Web Applications
Usually, things that are easy to program on one computer are much more
challenging to implement and distribute to other users, which is the reason
that scalability makes programming usually difficult. [40]
Web applications are computer programs that enable website visitors to open
their preferred web browser and retrieve or submit data from a database via
the internet or intranet. [41]
Before web apps, developers were only able to build and view software on
certain operating systems such as Mac or Linux. However, web applications
have solved this issue, as they enable the user to render the same content over
various platforms via browsers, regardless of the operating system. Nowa-
days, we can run servers on a different platform from applications, and view
them on different device types such as desktop PCs, Laptops, mobile phones,
and tablets. [40]
5.2 Principles of the Web
The principles of openness, simplicity, and ubiquity have made the Web as
an environment more attractive to solution provides and users. According
to Petrov, there are two aspects of simplicity, the simplicity of usage and pro-
gramming. [42] Openness has to do with the fact that web apps can be freely
Chapter 5. Implementation 30
programmed with no patent fees, which may not be the case with other en-
vironments. Finally, the principle of ubiquity can be challenging from a tech-
nical point of view, as it has to span heterogeneous systems, scalability, and
interoperability problems. [42]
One of the aspects that always requires additional consideration is scalabil-
ity, as the web apps are getting more popular among people, since they can
access the Web no matter the time and location. [42]
One of the essential properties of a web application is accessibility, and nowa-
days, companies can easily publish and share their apps to their customers
via the internet. Thanks to various widely available development frame-
works and various helper tools, today it is not only easy to access different
apps, but anyone can build and publish them online. Such applications and
technology advancements allow programmers to develop and publish great
web applications with less effort every day.
5.3 Project Description
As mentioned in chapter 2, gamification is a proven and powerful way to
influence, motivate, and engage loyalty program members. The intention
behind this project is to design and develop a gamified loyalty program that
taps into human emotion and people’s natural tendency to win prizes and
rewards. This loyalty system is a web application named Qootiya that allows
brands and businesses to create virtual boxes that contain various prizes and
discounts. Users are required to complete the mission specified in the box
description section to receive a unique code that allows the users to open a
box and win one of the box items.
Qootiya’s admin panel enables each brand to create a digital box, add var-
ious prizes to their box, track their sales, and customer engagements. The
following interfaces were implemented at the moment of writing this paper:
A participant interface that enables viewing boxes, rewards and recent
A participant interface that allows users to open a digital box and re-
ceive a reward by entering a 12 digit code;
A participant interface that provides users with a digital wallet, where
all the gifts are stored;
Chapter 5. Implementation 31
A participant widget for support chat;
A participant interface that allows users to view their wallet history;
An admin panel interface to create a product and assigning it to a spe-
cific box;
An admin panel interface to describe box mission, add a winning prob-
ability to each item in a box;
An admin panel interface to view user statistics and promote them to
an analyst, moderator or admin;
An admin panel interface to generate digital codes after setting an ex-
piration and amount;
An analyst and moderator interface to remove an item from users digi-
tal wallet;
An analyst and moderator interface to view box statistics;
As the list above shows, the application consists of two main sections, admin
and participants. The admin panel’s visibility can be controlled by assigning
the analyst and moderator role to a user. Figure 5.1 provides a high level
view of the system.
Chapter 5. Implementation 32
FIGURE 5.1: Qootiya use case diagram
Chapter 5. Implementation 33
5.4 Requirements Specification
Prior to starting the development process, a System Requirements Specifica-
tion was created based on previous brainstorming sessions and interviews to
understand and describe the key parameters of the application. This section
provides a clear direction of the general requirements for the web application
of Qootiya.
User Requirements
Id Title User Requirements
U1 Sign up via Facebook The user should be able to sign up via Face-
book or Google
U2 Sign up via e-mail The user should be able to sign up via e-
U3 Open box The user should be able to open a box and
win a reward using a box code that is ob-
tained after completing a mission
U4 View wallet The user should be able to open his/hers
digital wallet and view information regard-
ing the rewards (expiration date/value
/redemption location/reward name)
U5 View winners The users are able to view recent win-
ners(item won/box name) which is dis-
played in the home page
U6 Wallet history The user should be able to open the history
page and view all rewards that he/she has
U7 View tutorial The user should be able to view the tutorial
page, which describes the functionality of
the platform
TABLE 5.1: User Requirements
Chapter 5. Implementation 34
Admin Requirements
Id Title Admin Requirements
A1 View users The admin should be able to view users, their
status, number of boxes they have opened and
rewards they have collected
A2 Generate codes The admin should be able to generate X number
of codes by entering the amount and expiration
A3 View codes The admin should be able to view codes for ev-
ery box
A4 Export codes The admin should be able to export codes for a
certain box to a .csv (Comma-separated values)
A5 Remove rewards The admin, moderator and analyst all have per-
mission to remove a reward from user ’s wallet
A6 Box statistics The admin should be able to view codes for ev-
ery box
A7 Create company The admin should be able to create a company
by entering company name, address, logo, Face-
book, Instagram and website links
A8 Create box The admin should be able to create a box and
assign it to a company
A9 Create product The admin should be able to create a product by
adding n product image, description and value
A10 Assign product to a box The admin should be able to create a company
by entering company name, address, logo, Face-
book, Instagram and website links
A11 Change user status The admin should be able to promote a user to
analyst, moderator or admin and assign them to
a company
A12 Change box visibility The admin should be able to change the visibility
of a box
TABLE 5.2: Admin Requirements
Chapter 5. Implementation 35
Partner Requirements
Id Title Partner Requirements
P1 Partner panel The partner should be able to the admin panel via e-
P2 Check box statistics The partner (moderator status) should be able to view
information regarding their box, users, redemption
and rewards
P3 Remove reward The partner should be able to remove a reward from
user’s wallet by entering the unique reference code
TABLE 5.3: Partner Requirements
Project Goal
Id Title Description
G1 Attract customers The application should attract users by providing an
innovative way of winning discounts and rewards
G2 Reward loyalty The application should enable users to open digital
boxes after completing a mission
G3 User guidelines The application should provide users with a detailed
tutorial of the system
G4 Increase sales The application should motivate users to redeem
coupons and rewards that they have received after
opening boxes
TABLE 5.4: Project Goal
Chapter 5. Implementation 36
5.5 Environment Setup
To start the implementation phase, it was required to set up a development
environment. Hence, the following programs were installed and used:
5.5.1 PHP
There are multiple reasons why PHP (Hypertext Preprocessor) was chosen
for server-side programming language. As Figure 5.2 shows, 79% of sites
use PHP as their language, which makes it the most widely used language
for websites and applications popular sites such as Facebook or Wikipedia.
Furthermore, PHP benefits from various libraries and modules, which assure
dynamic software development and increases its popularity.
PHP is easily adopted by developers who have experience with C, Perl, or
other similar languages, as it was designed to resemble C in structure. More-
over, due to its effective cost, reliability, and easy navigation, it is widely-used
for web development since it allows developers to generate dynamic pages
fast. [php]
FIGURE 5.2: Most popular programming languages used in
web development [49]
PHP can be easily adopted by developers who have experience with C, Perl
or other similar languages, as it was designed to resemble C in structure.
Moreover, due to its effective cost, reliability and easy navigation it is widely-
used for web development, since it allows developers to generate dynamic
pages fast. [php]
Chapter 5. Implementation 37
5.5.2 Laravel
Laravel is a free open source Symphony based created by the developer Tay-
lor Otwell and released in 2011 and is one of the best and superior frame-
works for PHP.
With its elegant syntax and broad functions, Laravel provides excellent fea-
tures that improve software quality, ease routing, ease access, simplify au-
thentication. A survey conducted in 2019 concerning the most popular PHP
frameworks, Laravel, was the most popular framework, as it is better for
large-scale projects that require faster delivery with fewer resources.
FIGURE 5.3: Most popular frameworks used in web develop-
5.5.3 PhpStorm and Laravel Plugin
PhpStorm is a powerful Integrated Development Environment that provided
a fast implementation and ease of assess to the whole project. Furthermore,
its free Laravel plugin unlocks various features such as code completion,
smart highlighting, blade templates support, and many more.
5.5.4 Project Structure
MVC, or the separation of model, view, and controller, is a fundamental
part of web application development. This design pattern was used during
Chapter 5. Implementation 38
Qootiya’s development process.
The model is responsible for data management and used for data stor-
age or retrieval from the applications database. Furthermore, logic im-
plemented by the application that relates to data management can be
controlled in the model section.
As the name suggests, the view is responsible for displaying the data
gathered from the model.
Finally, the Controller is the intermediary class between the view and
the model classes, which organizes all the work. It is responsible for
accessing data from the model and displaying it on the views, listening
to events, and manipulating the necessary data. Find a citation for this
Login Controller
As mentioned in the project description, Qootiya enables the admin to pro-
mote a user to analyst or moderator, each having specific permissions. The
following parameters were checked in the login controller to check the user’s
role and redirect them to the proper page.
If the user does not have a role, he/she gets redirected to the homepage
If the user’s role is set to "Analyst", he/she gets redirected to the refer-
ence page, which is used to remove items from users wallet if the role
is set to analyst
If the user’s role is set to "Moderator", he/she gets redirected to the the
box statistic page, which allows brands to check various information
regarding their boxes.
protected function authenticated(Request $request,$user)
$redirect =$this->redirectPath();
if ($user->role == User::ROLE_ANALYST){
$redirect =route(’references.create’);
if ($user->role == User::ROLE_MODERATOR){
$redirect =route(’boxes.index’);
return response()->json([’redirect’ => $redirect]);
Chapter 5. Implementation 39
Box Controller
As mentioned in the project description, each item has a certain winning
probability and a quantity; each time the user enters a code, the open func-
tion is called. Code below checks the following parameters:
The box is visible
The code is not used
The code belongs to the box
There are products in stock
Box is not expired
public function open(Box $box,Code $code)
if (! $box->visible){
throw new CodeNotRedeemable("Box #{$box->id} is not visible");
if (! $code->canBeRedeemed()) {
throw new CodeNotRedeemable("Code #{$code->id} is not
if ($code->box_id != $box->id){
throw new CodeNotRedeemable("Code #{$code->id} does not belong
to box #{$box->id}");
$products =$box->products()->where(’quantity’,’>’, 0)->get();
if (! count($products)) {
throw new NoProductsLeft("No products left in box #{$box->id}"
$data = [];
Chapter 5. Implementation 40
foreach ($products as $product){
$productId =$this->getRandomProduct($data);
$product =Product::findOrFail($productId);
$code->used_at =Carbon::now(’Europe/Sarajevo’)->toDateTimeString
foreach ($box->products as $boxProduct){
if ($product->id == $boxProduct->id){
=> $boxProduct->pivot->quantity - 1]);
return $product;
Once the requirements are met, the getRandomProduct method is called,
which randomly selects an item from the box based on the probabilities. Prior
to choosing a product, the function ensures that there is an item available in
the pool by checking the quantity of each item.
private function getRandomProduct(array $data)
$totalw =array_sum(array_map(’floatval’,array_keys($data)));
$rand =rand(1, $totalw);
$curw = 0;
foreach ($data as $i => $val){
$curw += $i;
if ($curw >= $rand)return $val;
return end($data);
Finally, the quantity of the product is decremented by one, a reference code
is generated (used to identify and remove an item from the user’s wallet),
the product gets added to the user’s wallet, and the changes are saved to the
Chapter 5. Implementation 41
’user_id’ => auth()->user()->id,
’box_id’ => $box->id,
’product_id’ => $product->id,
’code_id’ => $code->id,
’reference’ => $reference,
Laravel Routes were used to create URL requests for the application, which
are created in the routes/web.php directory. When creating the Page URLs,
it was ensured that they are both SEO friendly and are human-readable.
The code snippet above shows the routes for Home, tutorial and, terms and
condition pages. Another usage of routes in combination with middleware
was to allow permissions only if a requirement is met; for instance, the fol-
lowing code was used to enable the user to open boxes, wallet and history
page only if the account has been verified.
Route::group([’middleware’ => [’verified’]], function () {
Composer is a tool for managing dependencies for PHP; by pulling all the
required libraries, it allows the user to manage everything in one place. By
enabling efficient distribution of packages, Composer allows developers to
access the same packages with the same versions by setting the minimum
required version and share proprietary code seamlessly.
Chapter 5. Implementation 42
Socialite is a Laravel package used to authenticate various social network
registrations. The code above displays how the socialite package was in-
cluded in the projects Composer.json file.
Similar to Composer, NPM is a dependency management system used to
manage JavaScript libraries. The usage of NPM ensured that developers have
the minimum required packages. The code below shows a snippet from the
Package.json file, which was used to create a date and time picker.
Socialite is a Laravel package used to authenticate various social network
registrations. The code above displays how the socialite package was in-
cluded in the projects Composer.json file.
Laravel Migrations are similar to version control for databases that allow
the developers to edit and distribute the applications database schema. Mi-
grations enable developers to complete database tasks such as creating a
database, without actually going to the database manager such as phpMyAd-
min or SQL lite. The code below displays the migration used for creating the
users table in Qootiya’s database.
public function up()
Schema::create(’users’,function (Blueprint $table){
Chapter 5. Implementation 43
Vagrant was used to manage and provision Virtual Machines, as it increases
production parity, lowers development environment setup, and ensures that
every developer has the same environment. Moreover, Laravel Homestead,
which is a stable PHP Vagrant environment, provided an excellent tool for
development since it does not require to install PHP, a web server or any
other software on the local machine.
One of the great advantages of the Laravel Framework is Localization, which
allows the application to easily support multiple languages by providing a
convenient way to retrieve string in various languages. The code below dis-
plays a simple Language strings used to display an error message that is
stored in the resources/lang directory.
Generating Box Codes
As mentioned previously, boxes are opened by entering a 12 digit code,
which is obtained by the user after completing a mission. The figure below
displays the admin panel section, used to quickly generate codes by provid-
ing the amount, expiration date, tag (digital or print), and assigning it to a
Chapter 5. Implementation 44
FIGURE 5.4: Admin panel: Generate box codes
After completing the form and clicking on generate, the generate and gen-
erateCodeString function is trigged called to create codes. The code snippet
below was used to create a 12 digit code, hyphenate every four-letter, and
ensure that the generated code is unique by checking the database.
private function generateCodeString(): string
$code =$this->hyphenate(strtoupper(substr(md5(uniqid(rand(), true
)), 0, self::LENGTH)));
$existingCode =Code::whereCode($code)->first();
// call the method again if the code generated exists in the db
if ($existingCode){
return $this->generateCodeString();
return $code;
’password’ => ’Lozinka mora imati manje od 8 karaktera i identican kao
potvrda lozinke.’
Chapter 5. Implementation 45
Removing References
One of the challenges of developing a platform that allows users to win and
use digital discounts, deals or prizes, was ensuring that the platform pre-
vents the user from using a reward multiple times. Several options of remov-
ing a coupon from the user’s wallet were considered. For instance, asking
the user to scan a QR code in the store before granting the prize. However,
to avoid security breaches, it was decided to assign a reference code to each
reward and allow the business owners to remove a prize by entering the ref-
erence number using their admin panel. To achieve this level of security and
implement this feature, brands were required to educate their employees.
FIGURE 5.5: Admin panel: Tutorial image
Figure 5.5 shows the tutorial image that was sent to business owners used to
shorten the learning curve. Furthermore, an extra security layer was added
by designing a page that allowed shop assistants to view an image and name
of the product, user’s name and date after entering the reference code.
if (! in_array(auth()->user()->role,[User::ROLE_ADMIN,User::
return response()->json([’error’ => ’Nemate dozvolu da
ponistite referencu’], 403);
Chapter 5. Implementation 46
$reference =trim($request->input(’reference’));
if (empty($reference)) {
return response()->json([’message’ => ’Morate unijeti
referencu’], 422);
if (Str::length($reference) !== 5) {
return response()->json([’message’ => ’Referenca koju
unesete mora imati 5 karaktera’], 422);
The code above validates the following parameters:
Whether the account has permission to remove a wallet entry
Whether the shop assistant has correctly entered a reference code
Whether the entered a reference code has a length of 5
Furthermore, the code below checks the following conditions:
Whether the shop assistant is removing a wallet entry from another
Whether the reference has been already removed or used
Whether the reference or reward has been expired
if (in_array(auth()->user()->role,[User::ROLE_ANALYST,User::
ROLE_MODERATOR]) && $walletEntry->box->company_id !== auth()->user()->
if (auth()->user()->company_id){
$message ="User # {$user->id} {$user->email} tried to
use reference {$reference} from different company:
}else {
$message ="User # {$user->id} {$user->email} does not
have a company assigned but is trying to use
reference {$reference}.";
Chapter 5. Implementation 47
ExceptionReporter::report(new \LogicException($message));
return response()->json([’message’ => "Ne mozete
ponistavati reference za drugu firmu."], 403);
if ($walletEntry->picked_up_at !== null){
$timeOfPickup =toLongDatetimeBS($walletEntry->picked_up_at
return response()->json([’message’ => "Referenca je vec
ponistena u {$timeOfPickup}."], 500);
if (! $walletEntry->canBeUsed()) {
$usageDeadline =toLongDatetimeBS($walletEntry->
return response()->json([’message’ => "Referenca {
$reference} je istekla u {$usageDeadline}"], 500);
Continuous Integration
Continuous Integration (CI) is a development practice that allows develop-
ers to frequently (preferably several times a day) integrate code into a shared
repository. By merging all developers’ to a shared repository, using auto-
mated builds and tests, each integration can be verified. CicleCI is a great
free tool that allows remote runs and pre-tested commits. By running au-
tomated tests on the server before committing changes, each developer is
assured that the code base is clean at all time.
Task Scheduler
Laravel Task Scheduler is a powerful tool that allows to frequently and ex-
pressively define tasks within Laravel itself. Unlike a Cron entry, which re-
quires to SSH into the server to add additional entries, tasks can be defined
in the kernel.php file.
Chapter 5. Implementation 48
public function handle()
$walletEntries =WalletEntry::all();
$entriesToDelete = [];
foreach ($walletEntries as $walletEntry){
/*** @var WalletEntry $walletEntry */
if ($walletEntry->canBeUsed()&&!$walletEntry->picked_up_at)
{// if it has not expired and has not been used, we skip
$entriesToDelete[] = $walletEntry->id;
$now =Carbon::now(’Europe/Sarajevo’);
if ($count =count($entriesToDelete)) {
Log::info("Deleted {$count} wallet entries at ".$now);
Log::info("Deleted entries ".json_encode($entriesToDelete));
}else {
Log::info(’No wallet entries to delete at’ .$now);
The code above is called every hour and checks all items in the user’s wallet,
and removes those that have expired after reviewing the current time (Eu-
rope/Sarajevo). Furthermore, a log file is created that allows the developer
to view the deleted items or errors that have occurred during the removing
Laravel Dusk is a powerful tool that allows developers to write easy-to-use
browser automation. Applications can programmatically get tested using a
Chapter 5. Implementation 49
real Chrome browser, since Dusk uses the standalone ChromeDrive installa-
tion and does not require a JDK or Selenium installation.
Writing browser tests increased the updating speed and enhanced the ap-
plication quality since it was not required to manually test the application
before each update. The code below displays a simple test writing to demon-
strate user login.
public function loginTest()
$user =factory(User::class)->create([
’email’ => ’’,
$this->browse(function ($browser)use ($user){
5.6 Amazon Cloud Services
Laravel Vapor, uses the Amazon AWS features such as NAT gateway,
VPC and Amazon Relational Database (RDS). RDS is a “cloud” based
relational database that simplifies database management by automating
time-consuming operation tasks such as failover, backups, disaster recov-
ery, encryption and performance optimization. The database used was a
db.3d.micro instance, which was located in EU-central-1 (Frankfurt) with 20
Gigabyte of storage.
Amazon S3 is an object storage service, which provides great data availabil-
ity, security and performance. It was used for static assets storage such as
images, videos and pdf files.
Chapter 5. Implementation 50
Amazon Elastic Compute Cloud or EC2 is designed to simplify web-scale
cloud computing. This Amazon service was used to create a t3.nano server
which enabled developers to access the database using the server.
Amazon Lambda allows developers to run code for any application with-
out provisioning or managing servers. This service provided a great tool for
scalability since it allows us to pay only for the compute time consumed.
Amazon Simple Email Service (SES) is a great cloud-based email service
which provides a great tool for sending notifications, marketing and trans-
actional emails. Since the Amazon SES is reliable, it was used to send the
confirmation email once the user completes the registration process.
5.7 JavaScript
As web applications are getting popular, front-side programming languages
are evolving as well enabling more processing to the client’s side.
Ever since its introduction in 1995, JavaScript has been adopted by all major
browsers as a way to add programs to web pages, allowing users to interact
directly with web applications without the need of reloading a page. Ini-
tially, JavaScript was added to the Netscape Navigator browser. After its
adaptation by other browsers, many different platforms such as MongoDB
and CouchDB started using JavaScript as their scripting and query language.
Although JavaScript libraries have existed for a while, they started gaining
more popularity with the introduction of jQuery in 2006. Angular JS and
Ember were two of the more robust libraries that became known to the public
in early 2010.
Over the past years, the popularity of JavaScript frameworks has continued
to increase. However, no framework is considered as the best; there are many
great options that offer a vast set of functionalities and features to improve
single-page applications.
5.7.1 Vue.js
Vue is an open-source JavaScript framework, which, according to its devel-
opers, is a versatile framework. This simple progressive framework takes
suitable for building reactive User Interfaces. Furthermore, Vue adapts many
Chapter 5. Implementation 51
great features from Angular and React and implements them more in a more
sophisticated way such as, Victual DOM or templating.
The reason Vue.js was chosen for frontend development, was due to its less
learning curve and support for virtual DOM. Moreover, Vue.js is a very flex-
ible and scalable framework, and its progress approach meant that the app
could be made in components, making the entire process more manageable.
Box animation
One of the core elements that enhances the customer experience and builds
anticipation is the box animation. This method animates the box cover to the
top and reveals an item after the 12 digit box code is entered and verified. To
achieve the unboxing effect, HTML5 Canvas and Vue.js were used to draw
and create an animation. The figure below shows a snippet of the layer files
used to render and create the animations.
FIGURE 5.6: Box animation layers
The code block below was used to make sure that the animation is responsive
on all devices.
<style lang="scss" scoped>
.canvas-container {
width: 100%
canvas {
@media only screen and (max-width: 560px){
height: 280px;
Chapter 5. Implementation 52
@media only screen and (max-width: 415px){
height: 240px;
@media only screen and (max-width: 355px){
height: 215px;
Another great element that was added to the product was confetti, which
would appear once the product is revealed. A custom function was imple-
mented to draw a confetti piece and animate a falling effect.
Bootstrap, which is a free and open-source front-end library, was used for de-
signing the application views. It has many advantages over other front-end
frameworks such as fewer cross-browser bugs, customizable, lightweight.
Furthermore, the library includes many pre-designed interface components
such as forms, buttons and navigations.
By using NPM command to install Bootstrap and JavaScript as front-end
packages, Laravel allows developers to design intuitive User interfaces. Fur-
thermore, combining Vue.js and Laravel provides a great tool to develop full-
stack websites. The image below displays the final design created after con-
sidering all the gathered information.
5.8 The Design
Prior to using Bootstrap and designing each page, the data gathered from
the interviews, brainstorming and background research were used to gener-
ate design concepts and create testing prototypes. Figure 5.7 displays the
homepage wireframe created to illustrate the layout of the page.
The first design concern was regarding the division of boxes, prizes and tu-
torial. There were two options regarding the home page, first to display the
main prizes that are available in each box or to display the most attractive
boxes first and attract the users to click on it to gain more information re-
garding the prizes and missions. Wireframes were used to lay out the content
Chapter 5. Implementation 53
and functionality of each page. After exploring both design options, the first
prototype was identified as extra problematic based on previous experience.
FIGURE 5.7: Qootiya: Design wireframe
Figure 5.8 displays the homepage design that was generated using the wire-
frames created during the brainstorming sessions, which allows the users to
easily explore available boxes, view the recent winners, navigate to wallet,
account setting and view the tutorial page. The entire application flow and
interface design is presented in Appendix C.
Chapter 5. Implementation 54
FIGURE 5.8: Qootiya: Homepage
Box Page
Box page was one of the greatest concerns in the project, since it required
to create a strong link between the product and the customer, increase user
involvement and have perfect functionality. A lot of time was put into de-
signing this page to achieve a user-friendly and intuitive view. Moreover,
this page was divided into four sections, box information, prizes, company
information and frequently asked question. Since the box page is one of the
interaction heavy sections of the application, the design needed to be clear
and straightforward.
Box Information
The main section of the box page contains the open box button which dis-
plays the mission and requires a 12 digit code. It is important that the “open
box” button is disabled until the user enters the code. Figure 5.8 displays the
final design of the open box pop-up.
Chapter 5. Implementation 55
FIGURE 5.9: Qootiya: Open box section
Another crucial element of this page is the reward section, which displays
gifts, discounts and deals that the user can win after completing a mission
and opening a box. The rewards were sorted by the prize value, and a banner
was used to further attract the users to complete a mission. Figure 5.9 below
displays the box page designed for Panasonic.
Chapter 5. Implementation 56
FIGURE 5.10: Qootiya: Reward section
Wallet Page
As seen in figure 5.11, the wallet page includes prize name, expiration date,
reference number and redemption instructions. Furthermore, three different
tags were used to identify valid, used and expired coupons. As mentioned
in the product description, the history page displays the prizes that have
expired or used; a different tab separates this page. Figure below displays a
sample wallet item.
Chapter 5. Implementation 57
FIGURE 5.11: Qootiya: User wallet
Box Animation
The aim of creating a box animation was to build anticipation and provide
a positive experience that keeps the user interested. Figure 5.11 displays the
box animation which removes the box unveils the prize, once the user com-
pletes the mission and enters the code.
FIGURE 5.12: Qootiya: Box animation
Chapter 6
Findings and Discussion
6.1 Data Analysis and Interpretation
This section describes the results of the study. At first, the statistics regard-
ing the Qootiya’s engagement and conversion rate are presented. Next, the
findings are compared to other forms of marketing platforms to measure the
effectiveness of the product.
Combining Instagram Stories and Qootiya
Instagram is one of the most popular social media networks, which is used
as a powerful marketing tool by many brands and businesses. Instagram
Stories were first introduced in August 2016, which allowed users to share
multiple photos and videos in a "slideshow format". [54] Over the years,
Stories have become an easy way for brands to display themselves in a fun
and interesting way.
Using Instagram’s Stories and Qootiya’s digital boxes unlocked a new, in-
novative way of marketing which offered businesses various possibilities to
attract and engage customers. The idea was simple; users would receive a
code to open a box and win a prize after posting a story of that brand on
their Instagram Story.
Chapter 6. Findings and Discussion 59
FIGURE 6.1: Instagram Stories posted by users
For example, Panasonic created a digital box that contained various prizes
and discounts such as Panasonic shavers, headphones, epilator and 30% dis-
count voucher. In order to receive the box code, and open the box, the user
had to take a photo of their favourite Panasonic product and post it on their
Story. This method allowed brands to generate leads, engage users with their
brand and products, and most importantly, reach a wide audience organi-
cally. Figure 6.1 displays three stories posted by users.
Cost per lead measures the cost-effectiveness of a marketing campaign based
on the leads generated from it. An individual that expresses an interest in a
product or a service after completing a goal is considered as a lead.
Figure 6.2 displays the number of leads (Instagram Stories) generated for
each brand. It is important to mention that the number of tags also depended
on the value of the prizes and popularity of the brand.
Chapter 6. Findings and Discussion 60
FIGURE 6.2: Number of leads generated for each brand in two
Conversion Rate
One of the key elements for analyzing the success of a marketing campaign
is Conversion Rate or CVR, which is calculated by dividing the percentage of
users that completed a desired action by the total number of people. A higher
CVR is always an indication of a successful marketing strategy or campaign.
In case of Qootiya, the CVR was calculated by dividing the number of users
that completed a purchase by the number of participants who opened a box.
Chapter 6. Findings and Discussion 61
FIGURE 6.3: Conversion rate percentage of each brand in 1
As Figure 6.3 shows, Swarovski which is a popular jewelry brand had a
CVR of 6.4%, whereas Optika Salihbevic, a local sunglasses store, had a huge
CVR of 24.62%. Finally EspressoLab, an urban café, had the greatest CVR
of 47.62%. As mentioned before, the conversion rate of each brand is highly
dependent of the brand, rewards of the box and price.
Google Ads
Google ads is one of the most popular platforms used for marketing, that
allows businesses and brands to advertise their company and appear on
Google Search results. As Figure 6.4 displays, the average Google Search
CVR for apparel is 2.77%. Meaning that from 100 customer that click on an
Google ad related to apparel, only 2.77% of them convert and complete a spe-
cific goal set by the marketer such as to complete a sales, make a phone call
or open a specific page.
Chapter 6. Findings and Discussion 62
FIGURE 6.4: Average Google Ads Cost per Conversion (Search)
Facebook Ads
Facebook, one of the most popular social medias, offers various advertising
options such as Facebook Pixel to businesses and brands, hence has a slightly
higher CVR compared to Google. As displayed in figure 6.5, Facebook’s av-
erage CVR in the apparel industry is 4.11% and 11% in Healthcare industry.
FIGURE 6.5: Average Facebook Ads CVR
Instagram has recently added the Shopping and checkout feature, allowing
users to search and purchase products without leaving the app. Shopping
is a valuable feature and a new channel for brands to attract customers and
increase sales. Figure 6.5 displays that Instagram engagement rate per posts
Chapter 6. Findings and Discussion 63
varies based on industry, the highest include higher education at 3.96% and
sport teams at 2.40%.
FIGURE 6.6: Average Instagram engagement rate per post
6.1.1 The Main Findings
Since Qootiya has introduced a new method for marketing, that combines
gamification, marketing and reward programs to increase sales, it is not easy
to gather data and compare it to similar platforms. Furthermore, although
gamification is becoming a powerful tool to foster motivation, there are still
a few systematic studies that measure the impact of it. However, after com-
paring the data gathered after one month to Instagram and Google, it can
be seen that Qootiya has a higher number of generated leads and a better
CVR. Moreover, the feedback received from the users on social media plat-
forms indicates that rewarding loyal customers randomly is a powerful tool
to motivate loyal spenders into engaging with promotions. This supported
researchers Redzek, Haws, and Summers theory of Lucky Loyalty Effect,
which indicates that loyal customers feel entitled to a prize or gift, and they
feel more likely to win random rewards over customers who are not loyal.
[52] Furthermore, the data received from the brands indicated that uncer-
tainty can foster greater use of loyalty programs, meaning that customers
are more likely to complete a mission or action when the reward is uncer-
tain rather than when it is certain, even when the uncertain reward is worse.
This finding also supported the main idea of researchers Shen, Fishbach and
Chapter 6. Findings and Discussion 64
Hsee who argued that uncertainty can increase consumer enjoyment and sat-
isfaction. [53] For example, customers are more likely to enjoy an uncertain
discount (e.g., “$30 or $50 off if you spend over $200”) more than a certain
offer(e.g., “$50 off if you spend over $200”). Thus, combining gamification
and reward programs can be an effective marketing strategy. [53]
Finally, it is important to mention that, obviously, Qootiya does not have a
similar audience and can not offer the same visibility and brand awareness
that other platforms can, but surely it has a higher chance to motivate a cus-
tomer to complete a purchase.
Chapter 6. Findings and Discussion 65
6.2 Discussion
The purpose of this research was to study the use of gamification and dis-
cover how a gamified loyalty platform is designed and implemented. The
subject was approached by examining different loyalty programs, and how
various companies use loyalty programs to enhance customer relationship
and increase revenues.
At the beginning of this the research, the following research questions and
sub-questions were formed:
RQ1: Does applying gamification to loyalty programs increase engagement
and conversion rate?
RQ1a: What are the elements that can be used to create a gamification
RQ1b: How to design and develop a gamified application?
To answer question RQ1, first, the notion of gamification and loyalty pro-
grams are presented. Next, an analysis of various gamified applications were
conducted, and the process of developing a gamification platform was stud-
ied. During the analysis, several gamification elements were found and taken
into consideration. After conducting a market research, a unique loyalty
software was developed, that aimed to foster motivation and increase en-
gagement by combining gamification, marketing and reward programs. The
platform enables brands to promote their business by creating virtual boxes
that contain various prizes, including vouchers, discounts and gifts. Users,
on the other hand, can receive one of the rewards after completing a mission
and opening the box.
Answering RQ1a, when engineering the gamification feature of the applica-
tion, various elements such as rewards, story, achievement, time, and per-
sonalization were analyzed. Since the primary goal was to increase customer
engagement and conversion, the achievement element was integrated, which
allowed users to receive a code for opening a specific box after completing
a mission. Next, the reward element was used by allowing users to receive
a prize each time they complete a mission, to provide an extrinsic motiva-
tion and recognition for their time and effort. Finally, the time element was
used to create a sense of urgency after they win a reward and increase the
conversion rate.
Chapter 6. Findings and Discussion 66
Answering RQ1b, to build the application, an agile software development
approach was taken, which provided a more flexible and high-speed devel-
opment. PHP was used as the primary language for server-side program-
ming, as it is reliable and cost-efficient. Moreover, Laravel was chosen as
the PHP framework, mainly due to its elegant syntax and excellent features
that improve software quality. Vue.js is an open-source JavaScript frame-
work which was used to build various elements of the application such as a
box animation. In addition, Bootstrap was used to convert the design sheets
into responsive web pages and create the user interface of the application.
The entire process of design and development is presented in Chapter 5.
Although the application introduced a new concept in Bosnia and Hercegov-
ina, and the region, it was able to attract over 1000 users in the first month
and establish partnerships with recognized brands such as Panasonic and
Swarovski. The application was monitored for one month, and the gathered
data were compared to similar platforms. Significant results were found for
a positive effect on conversion rate and engagement, which supported the
main idea of researchers Sailer, Hense, Mandl and Klevers, who stated that
gamification has the potential to foster motivation. [36] Moreover, it was
discovered that the uncertainty and the surprise element of the application
boosts motivation and increases the chances of conversion supporting the
main idea of researchers Shen, Fishbach and Hsee, who claimed that uncer-
tainty is more powerful than certainty in fostering motivation towards a goal.
Chapter 7
The notion of gamification and loyalty programs are presented in the first
and second chapter of this project. The research question raised revolves
around the effect of gamification on loyalty programs and whether the ad-
dition of gamification can increase engagement and retention. In order to
answer this question, an analysis of various gamified applications were con-
ducted, and a unique loyalty program was developed that introduced a new
concept in Bosnia and Herzegovina and the region. Namely, by combining
gamification, marketing and reward programs, this web application allows
brands and businesses to create virtual boxes which contain multiple prizes
and discounts. Users are required to complete the mission specified in the
box description section to be able to open a box and win a prize. More-
over, the information gathered from the platform were analyzed to determine
whether the platform fosters motivations.
The first section of the thesis reviews various types of customer loyalty pro-
grams, the emergence of gamification, the use of gamification to foster mo-
tivation and drivers of engineering a gamified software. Moreover, chapter
four and five describe the design and development process of a gamified loy-
alty application using the agile software development methodology. Finally,
the results and analysis of this research are presented in Chapter 6.
7.1 Future Research
As mentioned before, although gamification is becoming more popular as
a powerful tool to foster motivation, specific scientific articles and even
practice-based resources are still rare to find. Furthermore, the information
regarding gamification is still limited to using badges, points, and leader-
boards in various contexts. Systematizing existing data and knowledge,
Chapter 7. Summary 68
and providing clear guidelines for applying gamification in various business
fields is crucial, as the amount of research on such domains is still relatively
small. Although, this paper focuses on the details of combining gamification
and reward programs, conducting similar research and applying gamifica-
tion to other fields, such as banking or education, would be highly valuable.
For example, banks can create a mobile application where users earn points
after watching educational videos about banking and allow users to redeem
their points to participate in giveaways. By promoting their online banking
services using gamification, banks can improve their customer retention and
improve the online customer experience. Finally, it would be beneficial to
investigate different factors that determine the success or failure of gamifica-
tion systems.
Chapter 8
[1] S. Byron and S. Anne, Loyalty programs and their impact on repeat-
purchase loyalty patterns, vol. 14, Adelaide, North Terrace: Marketing Sci-
ence Centre, 1997, pp. 473-486.
[2] J. Berry, "21," The 2015 Colloquy Loyalty Census, 01 02
2015. [Online]. Available:
content/uploads/2018/03/2015-loyalty-census.pdf. [Accessed 20 03
[3] M. Prensky, Digital Natives, Digital Immigrants, vol. 9, On the horizon,
[4] D. U. Mark, R. D. Grahame and H. Kathy, Customer Loyalty and Cus-
tomer Loyalty Programs, sydney, 2002.
[5] J. R. Werner and K. V., The Impact of Customer Relationship Characteris-
tics on Profitable Lifetime Duration, Journal of Marketing, 2003.
[6] B. Vinod, Unleashing the power of loyalty programs - The next 30 years.
Journal of Revenue and Pricing Management, Sabre Holdings, Southlake,
Texas , 2011, p. 471–476 .
[7] B. Berman, Developing an Effective Customer Loyalty Program, vol. 49,
The Regents of the University of California, 2006.
[8] A. McEachern, "A History of Loyalty Programs, and How They Have
Changed," 04 08 2018. [Online]. Available:
history-of-loyalty-programs-and-how-they-have-changed. [Accessed 01 04
[9] S. A. Butcher, Butscher, S. A. 2002. Customer Loyalty Programmes and
Clubs. Routledge: New York., London : Routledge, 2016.
Chapter 8. Bibliography 70
[10] A. D. Banasiewicz, Marketing Database Analytics: Transforming Data
for Competitive Advantage, Routledge, 2013.
[11] "The 2013 maritz loyalty report summary of key findings & implications
for loyalty marketers & program operators," 2013.
[12] W. C. and S. L., "Loyalty Saturation in Retailing: Exploring the End of
Retail Loy- alty Cards?," International Journal of Retail & Distribution Man-
agement, vol. 27, no. 10, pp. 429-440, 1999.
[13] P. Verhoefx, "Understanding the Effect of Customer Relationship Man-
agement Efforts on Customer Retention and Customer Share Development,"
Journal of Marketing, vol. 67, no. 4, pp. 30-45, 10 2003.
[14] C. Anderson, Creating a Data-Driven Organization: Practical Advice
from the Trenches, CA: O’Reilly Media, 2015, pp. 258-270.
[15] R. Fletcher, "Tesco’s Success Puts Clubcard on the Map," Sunday Times,
19 12 2004.
[16] S. Deterding, "Gamification: Toward a Definition," Hamburg.
[17] J. McGonigal, "Reality Is Broken: Why Games Make Us Better and How
They Can Change the World," Penguin Publishing Group, 2011 .
[18] Bunchball, "An Introduction to the Use of Game Mechanics to Influence
Behavior," in Gamification 101, 2010.
[19] K. Kapp, The gamification of learning and instruction: Game-based
methods and strategies for training and education, San Francisco, 2012.
[20] W. Kevin and H. Dan, "The Gamification Toolkit," in Dynamics, Mechan-
ics, and Components for the Win, 2012.
[21] F. Khaddage, C. Lattemann and R. Acosta, Mobile Gamification in Edu-
cation Engage, Educate and Entertain via Gamified Mobile Apps, 2014.
[22] L. Garm and J. Slinger, Gamification in Consumer Marketing - Future or
Fallacy?, Utrecht, 2014.
[23] Z. Zhao and A. Ali, Gamification of Exercise and Fitness using Wearable
Activity Trackers, 2016.
[24] H. t. g. A. m. f. d. gamification, Benedikt, Morschheuser; Karl, Werder;
Juho, Hamari; Julian, Abe;, 2017, p. 10 .
Chapter 8. Bibliography 71
[25] M.-F. Cathie and B. Eric, Process of Gamification. From The Considera-
tion of Gamification To Its Practical Implementation, 2013.
[26] R. Helms, R. Barneveld and F. Dalpiaz, A Method for the Design of Gam-
ified Trainings, Singapore: PACIS, 2015.
[27] M. Benedikt, H. Lobna, W. Karl and H. Juho, How to design gamifica-
tion? A method for engineering gamified software.
[28] B. Kim, Understanding Gamification, vol. 51, 2015.
[29] Tara J. Brigha, An Introduction to Gamification: Adding Game Elements
for Engagement, vol. 34, 2015, pp. 470-480.
[30] Y.-k. Chou, Actionable Gamification Beyond Points, Badges, and Leader-
boards, Leanpub, 2016.
[31] M. Heinz and J. Hense, Learning in or with games? Quality criteria
for digital learning games from the perspectives of learning, emotion, and
motivation theory, 2012.
[32] Examining EFL vocabulary learning motivation in a demotivating learn-
ing environment, Mitsuko Tanaka, 2017.
[33] M. Jenni, K. Jonna and H. Juho, Gamification of Education and Learning:
A Review of Empirical Literature, 2018.
[34] D. M. Elisa, B. Florian and N. T. Alexandre, Towards understanding the
effects of individual gamification elements on intrinsic motivation and per-
formance, vol. 71, 2017, pp. 525-535.
[35] D. H. Pink, Drive: The Surprising Truth About What Motivates Us, New
York, 2009.
[36] S. Michael, H. Jan, M. Heinz and K. Markus, Psychological Perspectives
on Motivation through Gamification, 2013.
[37] T. Stober and U. Hansmann, Agile Software Development: Best Practices
for Large Software Development Projects, berlin: Springer eBooks, 2010, pp.
[38] K. S. Rubin, Essential Scrum: a practical guide to the most popular agile
process, New Jersey: Addison-Wesley, 2013.
[39] C. Alan, R. Robert and C. Dave, About Face 3 : The Essentials of Interac-
tion Design, Indianapolis: Wiley Publishing, 2007.
Chapter 8. Bibliography 72
[40] S. Simon and P. David, Dynamic Web Application Development Using
PHP and MySQL, Cengage Learning EMEA; 1 edition, 2008.
[41] B. Vince, M. T. Audrey and A. T. James, Characteristics of Web applica-
tions that affect usability: A review, Canberra, 2005.
[42] J. Stefan, P. Ilia, M. Christian and M. Udo, Guide to Web Application
and Platform Architectures, Berlin: Springer-Verlag Berlin and Heidelberg
GmbH & Co. KG, 2004.
[43] P. T. Kotler and K. L. Keller, Marketing Management, 15th Edition, Pear-
son, 2012.
[44] J. Frith, "Turning life into a game: Foursquare, gamification, and personal
mobility," Mobile Media & Communication, 2013.
[45] S. P. Walz and S. Deterding, The Gameful World: Approaches, Issues,
Applications, MIT Press, 2014.
[46] M. Rehkopf, "What is a Kanban board?," [Online].
Available: [Accessed 25 05 2020].
[47] M. Finnegan, "What is Trello? A guide to Atlassian’s collaboration and
work management tool," 27 05 2018. [Online].
[Accessed 20 05 2020].
[48] K. Holtzblatt and S. Jones, "Conducting and Analyzing a Contextual In-
terview," 1995.
[49] W3Techs "Usage statistics of server-side program-
ming languages for websites" [Online]. Available:
[Accessed 25 05 2020].
[50] K. Huotari and J. Hamari, "A definition for gamification: anchoring gam-
ification in the service marketing literature," 2017.
[51] Cory, T., & Slater T. (2003). Brainstorming. Techniques for new ideas.
Lincoln, NE: iUniverse Inc.
[52] Reczek, Haws, & Summers "Lucky Loyalty: The Effect of Consumer Ef-
fort on Predictions of Randomly Determined Marketing Outcomes," Journal
of Consumer Research, 2014.
Chapter 8. Bibliography 73
[53] L. Shen, A. Fishbach and C. K. Hsee, "The Motivating-Uncertainty Ef-
fect: Uncertainty Increases Resource Investment in the Process of Reward
Pursuit," Journal of Consumer Research, 2015.
[54] A. Read, "Instagram Stories: The Complete Guide to Using Stories," [On-
Available: [Accessed 20 06
Appendix A
A.1 Partners User Stories
1. As a partner, I want to reward loyalty to increase sales.
2. As a partner, I want to reward loyalty to increase retention.
3. As a partner, I want to be able to gain a competitive advantage.
4. As a partner, I want to be able to reward loyal customers with discounts
and prizes.
5. As a partner, I want to be able to control the amount of gifts and dis-
counts my box contains.
6. As a partner, I want to be able to control the probability of winning each
7. As a partner, I want to be able to define a mission that a customer needs
to complete in order to receive a prize.
8. As a partner, I want to be able to define locations where customers can
collect their reward.
9. As a partner, I want to be able to remove a prize from the user’s digital
10. As a partner, I want to be able to view statistics regarding my box.
A.2 Users User Stories
1. As a user, I am interested in gamified apps.
2. As a user, I want to be able to participate in a loyalty program.
Appendix A. Pre-Study 75
3. As a user, I want to be able to receive discounts and other rewards.
4. As a user, I want to win rewards by completing missions and opening
digital boxes.
5. As a user, I want to be able to sign up via Facebook.
6. As a user, I want to be able to sign up via Google.
7. As a user, I want to be able to sign up via e-mail.
8. As a user, I want to be able to check how to receive a reward.
9. As a user, I want to be able to check my gifts in my digital wallet.
10. As a user, I want to be able to check a brief history of my expired and
used rewards.
A.3 Qootiya’s User Stories
1. As a user, I am interested in gamified apps.
2. As Qootiya, we want to create/remove/edit a box for a partner.
3. As Qootiya, we want to set a unique mission for each box.
4. As Qootiya, we want to allow users to open digital boxes using codes.
5. As Qootiya, we want to track user activities.
6. As Qootiya, we want to track every brand’s statistics.
7. As Qootiya, we want to be able to set the probability for each item.
8. As Qootiya, we want to be able to promote a user to a moderator/ad-
9. As Qootyia, we want to be able to generate codes for each box.
10. As Qootyia, we want to be able to extract box codes to .csv files.
A.4 Contextual Interviews
Before starting the development phase, it was crucial to explore and under-
stand the users need. Early on in the process, interviews were conducted to
gather information and data, which provided great insight and allowed for a
better understanding of the users.
Appendix A. Pre-Study 76
When visiting brands, a contextual interview with people in the stores was
conducted, which provided great insight into customers shopping habits and
needs for building a gamified loyalty system. Considering the location and
time, the unstructured method was performed, as it allowed us to be more
flexible with questions. The customers demographic was mainly females be-
tween the age of 18 – 50, as based on our previous experience, females tend
to subscribe to loyalty programs more than men.
1. How often do you go shopping?
(a) Monthly
(b) Weekly
(c) Once in 2-3 days
(d) Daily
2. How often do you shop online?
(a) Monthly
(b) Weekly
(c) Daily
(d) Never
3. How many loyalty programs are you subscribed to?
(a) More than 5
(b) 3-5
(c) 1-3
(d) 0
4. Have you ever used a loyalty program application?
(a) Yes
(b) No
5. Would you consider using a service that allows you to receive discounts
and prizes for free?
(a) Yes
(b) No
Appendix A. Pre-Study 77
(c) It depends
A.5 Feature Interviews
Before developing the admin panel, the feature interview was conducted
with five brands that agreed to subscribe to the product.
1. Would you like to add/edit/remove items in your box?
2. Would you like to generate new codes?
3. What method do you prefer for removing coupons from the user’s wal-
4. How would you like to be informed of your box statistics and customer
5. Any other comments regarding the current system?
Appendix B
Application Screens
B.1 Qootiya
Appendix B. Application Screens 79
Appendix B. Application Screens 80
Appendix B. Application Screens 81
Appendix B. Application Screens 82
B.2 Admin Panel
Appendix B. Application Screens 83
Appendix B. Application Screens 84
Appendix B. Application Screens 85
Appendix B. Application Screens 86
Appendix B. Application Screens 87
... However, despite this growing trend in marketing practice, academic insight into GLPs' nature, dynamics, and effectiveness lags behind. Thus, while LP research abounds (Melnyk & Bijmolt, 2015), understanding of their gamified variant remains more obscure (Moro et al., 2019;Sumenkov, 2018;Mohammadi, 2020), as therefore explored in this paper. First, while a handful of studies has introduced the notion of GLPs into the literature (e.g., Hwang & Choi, 2020), these have largely overlooked customer engagement's (CE's) role in affecting GLP performance, which we argue is critical to its effectiveness (Bruneau et al., 2018;Leclercq et al., 202;Pace & Dipace, 2015). ...
Full-text available
International Journal of Information Management - Though gamified loyalty programs (GLPs), or loyalty programs that deploy gamified elements, are increasingly adopted, academic acumen of customer engagement with GLPs lags behind, thus exposing an important research gap. Based on this gap, we review the gamification-, loyalty program-, and customer engagement literature, from which we derive important insight. First, extending the customer engagement literature, we develop the concept of GLP engagement (GLPE), defined as members' GLP-related behavior, expressed through direct-(i.e., purchase) and/or indirect (e.g., GLP-related learning/advocating) contributions, which we argue are critical to GLP effectiveness. Extending prior research, we also classify members' indirect GLP contributions as autonomous (vs. interdependent)-, selfless (vs. self-seeking)-, control (vs. laissez-faire)-based-, collaborative (vs. competitive)-, individual (vs. generic)-, and calculated (vs. non-calculated) contributions. Second, we develop a self-determination theory-informed framework that proposes members' intrinsic/extrinsic motivation as major drivers of GLPE, which in turn impacts customer brand engagement value (CBEV). Third, formalizing the framework's associations, we develop a set of Propositions that serve as a springboard for further GLPE research. We conclude by discussing major implications that arise from this research.
Full-text available
Since its inception around 2010, gamification has become one of the top technology and software trends. However, gamification has also been regarded as one of the most challenging areas of software engineering. Beyond traditional software design requirements, designing gamification requires the command of disciplines such as (motivational/behavioral) psychology, game design, and narratology, making the development of gamified software a challenge for traditional software developers. Gamification software inhabits a finely tuned niche of software engineering that seeks for both high functionality and engagement; beyond technical flawlessness, gamification has to motivate and affect users. Consequently, it has also been projected that most gamified software is doomed to fail. This paper seeks to advance the understanding of designing gamification and to provide a comprehensive method for developing gamified software. We approach the research problem via a design science research approach; firstly, by synthesizing the current body of literature on gamification design methods and by interviewing 25 gamification experts, producing a comprehensive list of design principles for developing gamified software. Secondly, and more importantly, we develop a detailed method for engineering of gamified software based on the gathered knowledge and design principles. Finally, we conduct an evaluation of the artifacts via interviews of ten gamification experts and implementation of the engineering method in a gamification project. As results of the study, we present the method and key design principles for engineering gamified software. Based on the empirical and expert evaluation, the developed method was deemed as comprehensive, implementable, complete, and useful. We deliver a comprehensive overview of gamification guidelines and shed novel insights into the nature of gamification development and design discourse. This paper takes first steps towards a comprehensive method for gamified software engineering.
Full-text available
This conceptual paper aims to clarify the theoretical underpinnings of game based learning (GBL) and learning with digital learning games (DLGs). To do so, it analyses learning of game related skills and contents, which occurs constantly during playing conventional entertainment games, from three perspectives: learning theory, emotion theory, and motivation theory. It is assumed that by an analysis of the processes leading to implicit learning in conventional digital games, the underlying principles can be made explicit and subsequently used for designing DLGs effective for curricular learning. Theoretical approaches which are used in the analysis include behaviorism, cognitivism, individual and social constructivism for the perspective of learning theory. For the perspective of emotion theory, research on learning related effects of positive and negative emotion is used, and for the perspective of motivation theory constructs and approaches such as self-efficacy, locus of control, interest and self-determination theory are drawn upon. All of these theoretical perspectives help to understand how players of conventional entertainment games acquire a wide range of skills and contents while playing, and why they do so with immense motivational and emotional involvement. The results of the theoretical analysis are subsequently used to deduct criteria and guidelines for designing and applying digital learning games as powerful learning environments. Early experiences derived from the checklist's application are reported.
Full-text available
“Gamification” has gained considerable scholarly and practitioner attention; however, the discussion in academia has been largely confined to the human–computer interaction and game studies domains. Since gamification is often used in service design, it is important that the concept be brought in line with the service literature. So far, though, there has been a dearth of such literature. This article is an attempt to tie in gamification with service marketing theory, which conceptualizes the consumer as a co-producer of the service. It presents games as service systems composed of operant and operand resources. It proposes a definition for gamification, one that emphasizes its experiential nature. The definition highlights four important aspects of gamification: affordances, psychological mediators, goals of gamification and the context of gamification. Using the definition the article identifies four possible gamifying actors and examines gamification as communicative staging of the service environment.
Full-text available
Wearable technologies are a growing industry with significant potential in different aspects of health and fitness. Gamification of health and fitness, on the other hand, has recently become a popular field of research. Accordingly, we believe that wearable devices have the potential to be utilized towards gamification of fitness and exercise. In this paper, we first review several popular activity tracking wearable devices, their characteristics and specifications, and their application programming interface (API) capabilities and availabilities, which will enable them to be employed by third party developers for the purpose at hand. The feasibility and potential advantages of utilizing wearables for gamification of health and fitness are then discussed. Finally, we develop a pilot prototype as a case-study for this concept, and perform preliminary user studies which will help further explore the proposed concept.
Full-text available
Can a reward of an uncertain magnitude be more motivating than a reward of a certain magnitude? This research documents the motivating-uncertainty effect and specifies when this effect occurs. People invest more effort, time, and money to qualify for an uncertain reward (e.g., a 50% chance at $2 and a 50% chance at $1) than a certain reward of a higher expected value (e.g., a 100% chance at $2). This effect arises only when people focus on the process of pursuing a reward, not when they focus on the outcome (the reward itself). When the focus is on the process of reward pursuit, uncertainty generates positive experience such as excitement and hence increases motivation. Four studies involving real rewards lend support to the motivating-uncertainty effect. This research carries theoretical implications for research on risk preference and motivation and practical implications for how to devise cost-efficient consumer incentive systems.
Marketing Database Analytics presents a step-by-step process for understanding and interpreting data in order to gain insights to drive business decisions. One of the core elements of measuring marketing effectiveness is through the collection of appropriate data, but this data is nothing but numbers unless it is analyzed meaningfully.
Research on the effectiveness of gamification has proliferated over the last few years, but the underlying motivational mechanisms have only recently become object of empirical research. It has been suggested that when perceived as informational, gamification elements, such as points, levels and leaderboards, may afford feelings of competence and hence enhance intrinsic motivation and promote performance gains. We conducted a 2 × 4 online experiment that systematically examined how points, leaderboards and levels, as well as participants' goal causality orientation influence intrinsic motivation, competence and performance (tag quantity and quality) in an image annotation task. Compared to a control condition, game elements did not significantly affect competence or intrinsic motivation, irrespective of participants' causality orientation. However, participants' performance did not mirror their intrinsic motivation, as points, and especially levels and leaderboard led to a significantly higher amount of tags generated compared to the control group. These findings suggest that in this particular study context, points, levels and leaderboards functioned as extrinsic incentives, effective only for promoting performance quantity.
This research explores how loyal customers, those who have invested relatively high amounts of effort with a firm in the form of past purchases, respond to randomly determined marketing outcomes (e.g., winning a prize in a random drawing). Across five studies, participants exhibit a “lucky loyalty” effect, in which they believe that greater effort (e.g., dollars spent at a retailer or number of nights stayed at a hotel) results in greater likelihood of obtaining randomly determined promotional outcomes. Loyal customers report these higher subjective likelihoods for randomly determined outcomes because they feel they deserve special treatment from the firm. Theoretically, this work demonstrates that individuals appear to believe that they can earn “unearnable” outcomes through effort, even when the effort and outcome are unrelated. Boundary conditions for the lucky loyalty effect are presented, and the implications of the findings are discussed along with opportunities for future research.