FINAL YEAR PROJECT
WEB OPTIMIZATION USING LINK ROTATION FOR BETTER MARKETING
AMMARUDDIN LOW BIN AZAMUDDIN LOW
BACHELOR OF COMPUTER SCIENCE (INTERNET COMPUTING) WITH HONOURS FACULTY OF INFORMATICS AND COMPUTING
UNIVERSITI SULTAN ZAINAL ABIDIN
WEB OPTIMIZATION USING LINK ROTATION FOR BETTER MARKETING
AMMARUDDIN LOW BIN AZAMUDDIN LOW
BACHELOR OF COMPUTER SCIENCE (INTERNET COMPUTING) WITH HONOURS FACULTY OF INFORMATICS AND COMPUTING
UNIVERSITI SULTAN ZAINAL ABIDIN
2021
DECLARATION
I, Ammaruddin Low bin Azamuddin Low (matric number: 056828) hereby declare that this report entitled Web Optimization using Link Rotation for Better Marketing is entirely my work, except for quotations and citations, that have been acknowledge. I completed this work under the supervision of, Dr Wan Suryani binti Wan Awang from the Faculty of Informatics and Computing, UniSZA.
Ammar
Name : Ammaruddin Low bin Azamuddin low Date: 30/1/2021
APPROVAL
This report entitled Web Optimization using Link Rotation for Better Marketing prepared by Ammaruddin Low bin Azamuddin Low, matric number 056828 has been satisfactory in terms of scope, quality and presentation a partial fulfillment. This fulfill the requirements of Bachelor of Computer Science (Internet Computing) in Universiti Sultan Zainal Abidin (UniSZA).
Name : Dr. Wan Suryani binti Wan Awang Date: 30/1/2021
DEDICATION
Alhamdulillah, all praise to Allah SWT for giving me the opportunity to complete my thesis for my final year project entitles “Web Optimization using Link Rotation for Better Marketing”. I would like to express my deepest gratitude to my supervisor, Dr. Wan Suryani binti Wan Awang for guiding me to complete my thesis and for the kindness and motivation to this project.
I would also like to express my sincere appreciation to all lecturer that directly or indirectly involved with my thesis writing and guide me throughout my years in UniSZA. Last but not least, special thanks go to my parents, family and friends for their endless support and encouragement throughout my studies.
ABSTRACT
Website optimization is the process of using tools, experiments and advance methods to enhance the performance of the website, drive more traffic, increase conversions, and grow revenue. So, by optimizing website, not solely the user can tap into an untapped market in most effective and economical manners but open doors to more conversions and revenue gains.
Optimizing website also helps to gain the visitor’s trust and sell products without having to jump on face to face or phone call sales. A complete website optimization approach combines a difference set of rules to make sure your website performs well in all areas and one of them is Landing Page Optimization, which the user makes the landing page more likeable to visitors thus increase conversions. In this case, Link Rotation comes into play to do split testing, commonly referred as A/B testing. Split testing allows users to compare two different version of a website to determine which perform better, with the goal of boosting conversions. A link rotator creates a unique link that allows the user to route visitors to multiple landing pages. The problem is that there are many link management tools for marketers out there on the internet but most of them are not free or with limited features. This project aims to help new marketers to further drive more traffic and gain more revenues in more efficient manner (without paying for advertising). Besides, this project develop a minimalist easy-to-use web service that can be accessed freely by everyone anywhere and anytime to help them improve the performance of their websites.
ABSTRAK
Pengoptimuman laman web adalah proses menggunakan alat, eksperimen dan kaedah maju untuk meningkatkan prestasi laman web, mendorong lebih banyak trafik, meningkatkan conversions, dan meningkatkan pendapatan. Oleh itu, dengan mengoptimumkan laman web,
bukan hanya pengguna dapat memanfaatkan pasaran yang belum dimanfaatkan dengan cara yang paling berkesan dan ekonomik tetapi membuka pintu kepada penukaran dan keuntungan yang lebih banyak. Mengoptimumkan laman web juga dapat membantu mendapatkan kepercayaan pengunjung dan menjual produk tanpa perlu melakukan penjualan secara bersemuka atau panggilan telefon. Pendekatan pengoptimuman laman web yang lengkap menggabungkan sekumpulan peraturan yang berbeza untuk memastikan laman web anda berkinerja baik di semua bidang dan salah satunya adalah Pengoptimuman Halaman Pendaratan, yang mana pengguna menjadikan halaman arahan lebih disukai oleh pengunjung sehingga meningkatkan penukaran. Dalam kes ini, Link Rotation berperanan untuk melakukan split testing, yang biasanya disebut sebagai pengujian A / B. Ujian split membolehkan pengguna
membandingkan dua versi laman web yang berbeza untuk menentukan yang bekerja lebih baik, dengan tujuan meningkatkan conversions. Link Rotator membuat pautan unik yang membolehkan pengguna mengarahkan pengunjung ke beberapa halaman pendaratan.
Masalahnya ialah terdapat banyak alat pengurusan pautan untuk pemasar di luar sana di internet tetapi kebanyakannya tidak percuma atau dengan ciri terhad. Projek ini bertujuan untuk membantu pemasar baru untuk mendorong lebih banyak lalu lintas dan memperoleh lebih
Contents
DECLARATION... 3
APPROVAL ... 4
DEDICATION ... 5
ABSTRACT ... 6
ABSTRAK ... 7
LIST OF TABLES ... 11
LIST OF FIGURES ... 12
LIST OF ABBREVIATIONS ... 13
CHAPTER 1 ... 14
INTRODUCTION ... 14
1.1 Introduction ... 14
1.2 Problem Statement... 15
1.3 Objectives ... 16
1.4 Project Scope ... 17
1.5 Limitation of Work ... 18
1.6 Expected Results ... 19
1.7 Milestone ... 20
CHAPTER 2 ... 21
LITERATURE REVIEW ... 21
2.1 Introduction ... 21
2.2 Website Optimization ... 22
2.3 A-B Split Testing ... 23
2.4 URL Shortener ... 24
2.5 Web Metrics ... 25
2.6 Spam in a URL Shortener Network ... 26
2.7 Web Scraping ... 27
2.8 Google Analytics ... 28
2.9 Cybermarketing-Orientation ... 29
2.10 Laravel Framework ... 30
2.11 User Experience on Mobile Devices ... 31
2.12 Summary Comparison Table ... 32
2.2 Research on Existing System ... 41
2.3 Summary ... 46
CHAPTER 3 ... 47
METHODOLOGY ... 47
3.1 Introduction ... 47
3.2 Rapid Prototyping ... 47
3.3 Quick Design ... 51
3.3.1 Framework Design ... 51
3.4 System Design ... 53
3.4.1 Context Diagram ... 53
3.4.2 DFD Diagram (Level 0) ... 54
3.4.3 DFD Diagram Level 1 (Manage Link Rotator) ... 55
3.4.5 Entity Relationship Diagram (ERD) ... 56
3.5 Database Design ... 57
3.5.1 Data Dictionary ... 57
3.6 Requirement ... 63
3.7 Conclusion ... 64
CHAPTER 4 ... 65
IMPLEMENTATION AND RESULT ... 65
4.1 Introduction ... 65
4.2 Implementation of FYP Student Management System ... 65
4.3 Design Interface ... 67
4.3.1 Main Interface (Home) ... 67
4.3.2 Register Interface ... 69
4.3.3 Login Interface ... 70
4.3.4 Dashboard Interface... 70
4.3.5 Created Links Interface ... 71
4.3.5 Stats Interface ... 72
4.3.6 Edit Link Interface ... 73
4.3.7 Stat Counter Interface ... 73
4.4 Testing Analysis ... 75
4.4.1 Black Box Testing ... 75
4.4.2 White Box Testing ... 76
5.4 Project Constraint and Limitation ... 85
5.5 Future Work ... 85
5.6 Conclusion ... 85
Reference ... 87
LIST OF TABLES
Table No. Title Page
Table 2.1: Summary Comparison Table 27
Table 3.1: Data Dictionary for users 52
Table 3.2: Data Dictionary for slugs 54
Table 3.3: Data Dictionary for links 56
Table 3.4: Data Dictionary for password resets 58
Table 4.1: Test case for Success User Login 72
Table 4.2: Test case for Failed User Login 73
Table 4.3: Test case for Add Link Rotator 58
Table 4.4: Test case for Failed to Add Link Rotator 58
Table 4.5: Test case for Customlink 58
Table 4.6: Test case for Update Link Rotator 58
Table 4.7: Test case for Delete Link Rotator 58
Table 4.8: Test case for Link Rotator Link Rotation 58
Table 4.9: Test case for Link Rotator Clicks 58
Table 4.10: Test case for Link Rotator Last Accessed 58
Table 4.11: Test case for Destinations Clicks 58
Table 4.12: Test case for Destinations Last Accessed 58
Table 4.13: Test case for Generate QR Codes 58
LIST OF FIGURES
Figure No. Title Page
Figure 2.1: SEO Audit Tool 1
Figure 2.2: A/B Split Testing 18
Figure 2.3: URL Shortener Algorithm 19
Figure 2.4: Spam in URL Shorterner Network 21
Figure 2.5: Haier’s Website 24
Figure 3.0: Rapid Prototyping Process 44
Figure 3.1: System Framework 47
Figure 3.2: Context Diagram 48
Figure 3.3: DFD Diagram Level 0 49
Figure 3.4: DFD Diagram Level 1 50
Figure 3.5: ERD Diagram 51
Figure 4.1: Home Page 63
Figure 4.2: Home Page (cont.) 64
Figure 4.3: Home Page (cont.) 64
Figure 4.4: Register Page 65
Figure 4.5: Login Page 66
Figure 4.6: Dashboard Page 66
Figure 4.7: Created Links Page 67
Figure 4.8: QR Code 68
Figure 4.9: Stats Page 68
Figure 4.10: Edit Links Page 69
Figure 4.11: Stat Counter 69
Figure 4.12: Stat Counter (cont.) 70
Figure 4.13: Stat Counter (cont.) 70
Figure 4.14: Stat Counter (cont.) 71
LIST OF ABBREVIATIONS
URL Uniform Resource Locator
UI User Interface
UX User Experience
PHP DFD
Personal Home Page Data Flow Diagram
CHAPTER 1
INTRODUCTION
Link rotator is a service that allows the user to create a unique shortened Uniform Resource Locator (URL) that route visitors to different landing pages. When the visitor clicks on the link, they will be redirected randomly to allocated web pages, in the percentage that the user defines.
1.1 Introduction
Link Rotator is a web service focused on to help marketer create their own unique Uniform Resource Locator (URLs) that can be customized by their own preference, which is to split traffics to different destinations or do split testing. This system is not a paid service which means anyone can use it freely without having to pay for anything.
In these days, the internet has become a place where customers make their buying decision and purchase products. Link Rotator main focus is to help marketer improve their websites by conducting A/B tests and using the results to plan their business strategy. This system gives user the ability to create a unique link that can carry multiple URLs, in which the link will redirect the visitors to one of URLs that the user has added to the rotator. This system also can act as URL shortener, in which case the user only adds one URL into the rotator to have it shortened.
Users can customize the link according to their own personal preference like using their own name or company name on the link, for example url.ly/john. This benefits the users so that they can memorize links that they have created easily when publishing their link. The
user’s customers also can remember the links easily instead of lengthy auto-generated URL of the link.
Last but not least, Link Rotator enables users to keep track of their created links. Data like date created, number of clicks and clicks per month are shown to the users. These assist them to plan their business strategy in the future to drive more visitors to their websites, thus increasing the conversions and revenue gains.
1.2 Problem Statement
Marketers especially the newcomers today are struggling to maintain their websites and content due to lack of performance data analysis. What do they need is a link
management tool to run A/B test to optimize their websites, grow traffic and gain more trust from the visitors. They have access to numerous link management tools to improve their websites but most of them are not free of charge. In other words, this problem becomes obstacle to some marketers especially digital marketers who is not able to afford the link management tools. In this case, they cannot plan their business strategy or optimize their websites, thus making their sites never reach their maximum potential.
1.3 Objectives
The main purposes of this project are as follows:
i. To study web optimization using various techniques in order to attract more visitors and get more conversions.
ii. To design a web service using link rotation technique to improve businesses by enhancing websites.
iii. To develop a link rotator system to ease marketers marketing on their products.
1.4 Project Scope
Link Rotator is not limited to marketers only but everyone since it is a free web service system. Scopes in this proposed system are as follows:
Admin
i. Receive feedback from the users User
i. Sign up name, email and password ii. Log in to the system
iii. Create a link rotator
iv. Customize the link rotator domain v. Edit the created link rotator vi. Delete the created link rotator vii. Copy the link rotator URL viii. Share the link rotator QR Code
ix. Track number of clicks and clicks per month Visitor
i. Visits the websites using the shared link rotator
1.5 Limitation of Work
i. Does not have full custom domain. The link rotator will be only customizable on path and not domain or subdomain.
ii. Does not have info on the visitor’s IP address and browser that they use.
iii. User cannot set when the link rotator will be expired unless they delete the link.
iv. Unable to add tracking pixels.
v. This system only helps the user to run tests and get data and will not solely improve their website without the user themselves enhances their websites UX.
1.6 Expected Results
Website Optimization using Link Rotator expects to give marketers and newcomers to improve their methods of advertising using internet mainstream and boost their marketing efforts. It is not only enabling companies to understand how customers think, use and perceive their brand and its offerings, but also exposes to an implausible range of data to shape their future business strategies the purpose. The purpose of this project is to assist anyone who needs link management tools to optimize their websites and track visitors in order to increase sales for their businesses or organizations.
1.7 Milestone
CHAPTER 2
LITERATURE REVIEW
2.1 Introduction
This chapter reviews the relevant literature and existing system on web optimization.
The chapter would also discuss the methods in multiple criteria decision making and the implementation of Link Rotation on the web optimization system. The literature and existing system provide guidelines for improving the proposed system to be developed, whilst ensuring that this new system can offer a better performance compared to the current existing system.
2.2 Website Optimization
Website optimization is the process of using tools, advanced strategies, and experiments to improve the performance of your website, further drive more traffic, increase conversions, and grows revenue. One of the most critical aspects of website optimization is search engine optimization (SEO). Based on the research, the objective is to reveal how SEO (search engine optimization) can make a website more recognizable on the web search by profiling website using correct keywords and fundamentals[1]. The websites are tested using SEO audit to analyze the performance of the website. Figure 2.1 shows how testing using SEO audit tool and how it can increase the ranking of the site in the search engine.
Figure 2.2
Therefore, developing a good website that have correct fundamentals using various testing tools and knowledge in the field of design technique will promise a large profit for the company or organization and have greater impact on the visitors.
2.3 A-B Split Testing
A-B Split Testing is a method of conducting controlled experiments with the goal to increase conversions. Incoming traffic (visitors) to the website is distributed between original and the different variations without any of the visitors know that this is a part of an experiment[2]. The results from each of the websites are compared to determine which version of the website has the greatest impact on visitors. Figure 2.2 shows an example of split testing.
On the left side is the original web page and on the right side is the variation.
Figure 2.2
Ergo, proof that A-B Split Testing method is better and simpler than the complicated Multivariate Testing.
2.4 URL Shortener
A URL shortener is a simple service tool that takes a long URL and turns it into whatever URL the user would like it to be. There are many advantages of URL shortener which are as follow[3]:
i. Link Shortening ii. Link Tracking iii. Link Rotating
iv. Link Swapping or Changing v. Link Masking
The algorithm of URL shortener is shown in Figure 2.3.
Figure 2.3
i. Client shorten a URL on the system and the system send the URL to server ii. Server encode URL and then store in database
iii. The shortened URL sent back to server and then to client
iv. In case there is duplication in database, the URL will not be sent to the server instead will be encoded again for a new shortened URL.
2.5 Web Metrics
Web analytics is the measurement, collection, analysis, and reporting of web data to understand and optimize web usage. Web analytics is not just a process for measuring web traffic but can be used as a tool for business and market research and assess and improve the website effectiveness.
In this case study, Website Optimization with Web Metrics: A Case Study by Dr. Birgit Weischedel & Dr. Eelko K.R.E. Huizingh, which is in 2017, the web managers still did not have a certain method on how to acquire data in order to customize their websites and relying on web metrics. Web metrics are the measures that reflect how customers are using a website.
However, clickstream data is limited. The data only display the ‘when’ and ‘what’ of web visits, but are of limited use to answer ‘how’ and ‘why’ questions about customers’ site use. [4]
To solve this problem, a new method must be developed to achieve a correct set of data on the website visitor or customer. There are numerous ways to obtain data for site optimization nowadays. One of them is link rotation, which takes into account how visitors prefer the website to be.
2.6 Spam in a URL Shortener Network
URL shortening services are increasingly important on the internet, particularly in social media. However, we know so little about how these services are used and for what purposes. In this project, they expose spams which become a problem for both operator and the user.
Figure 2.4
The geographical analysis (Figure 2.4) reveals that this problem has an international scale, suggesting that URL shorteners play a role in spam attacks that cross national borders.
We can see the imbalances between creating and resolving short URLs exist [6].
In this case, this proposal aims to develop a service that is secured and safe to be used by the users without risk of inviting spammers to mislead the website visitors.
2.7 Web Scraping
The book, Getting Structured Data from the Internet by Jay M. Patel, show how successful businesses around the world and in different domain areas are using web scraping to power their products and services. Web scraping, web harvesting, or web data extraction is data scraping used for extracting data from websites. Web scraping software may access the World Wide Web directly using the Hypertext Transfer Protocol, or through a web browser.
From this book, this proposal will not be using web scraping technique on the system since the system will not extract any data from the website because we value the user’s privacy. [7]
However, the system will be implementing tracking function on how many visitors using the created link by the system to give insights for user on their website traffic.
2.8 Google Analytics
Google Analytics is a free web analytics tool offered by Google to help you analyze your website traffic.
Last sentence of this article, Google Analytics for Measuring Website Performance written by Beatriz Plaza, stated “Tourist firms have to revolutionize their web analytics strategy with effective methods that can assist practitioners to evaluate their website performance and subsequent online marketing effectiveness [8].” In order to increase visits to the websites, the website creator need to come with effective methods. In this case, this proposal proposes method that will be used is link rotation method. Link rotation can act as an experiment tool to evaluate the user’s websites.
Google Analytics able to generate detailed statistics about the visits to a website, and is free also. However, this service cannot conduct experiment such as split testing and will require another service to act as an experimental tool. In such a manner, this proposal system able to generate statistic about the visits and also act as an experimental tool using all the functions that will be developed.
2.9 Cybermarketing-Orientation
Haier’s Group website structure is really simple yet visitors always send positive feedbacks to the team. Figure 2.5 shows a screenshot of homepage from Haier’s Website.
Figure 2.5. Homepage screenshot of Haier’s website
This website is perfect from it design, function, structure and content. The website construction also utilizes the search engine marketing using the correct website title, domain and word order [8]. In order to achieve a perfect website, the developer must study visitors’
behavior. Using Link Rotation will able the developer to test out their website and watch how the visitors like their websites.
2.10 Laravel Framework
With the traditional framework design methods to design web, resulting in large limitations, time-consuming and other issues, Laravel make the development process is standardized, processing some non-business logic relationship automatically [9].
Here are the advantages of Laravel Framework:-
1) Calculated by network, reducing the load on the server and the pressure for the network, so that a large number of calculations are distributed on each node in the network.
2) It can be inserted. When the business need to be expanded, simply to insert the corresponding function in original software modules, the compiler can be applied without recompiling the entire system deployment.
3) Design can be completed better. For software architecture, it enables software structure more clearly, the affinity for users and programmers is strengthened, and also the structure and function of the software is more reasonable.
4) The module can be reused, the modules of same or similar function, just need to be copied to the destination and can be used after compile the deployment.
5) Easy to update.
6) Implementation of separation from interface.
In conclusion, this project will be implementing Laravel framework to be developed in order to achieve a scalable, efficient and less time-consuming system.
2.11 User Experience on Mobile Devices
Majorities of adults on this earth surveyed report owning their own mobile phone. Most preferred using their smartphones to access internet rather than using computer desktop. In many jobs today, people use technology for communication, information gathering, and problem solving. Outside of work, growing numbers of people use electronic resources like the Internet to keep in touch with friends, do their banking, play interactive games, conduct research, and participate in online discussions.[10]
Nowadays, users mostly use mobile devices to access the web. However, users continue to experience poor web performance on these devices. In [Butkiewicz et al., 2015], Klotski has been proposed as a system that prioritizes the content most relevant to a user’s preferences on mobile platform. Yet performance continues to fall short of user expectations in practice.
The purpose of this literature review is to acknowledge the importance of User Experience (UX) on mobile devices. Thus, this project will develop a system that are mobile- friendly for business owner that run their websites on mobile devices, and need to test their websites using link rotation service.
2.12 Summary Comparison Table
Table in 2.1 provides summary table of different tnehods in literature... Table 2.1 Summary Comparison
YEAR AUTHOR TITLE OBJECTIVE METHOD
(ALGORITHM USED)
RESULT
2020 Karol KRÓL Dariusz ZDONEK
Website Optimisation For Search Engines – Concept Of Website
Profiling
Propose the
concept of
profiling a website, which focused on quality of SEO (Search Engine Optimization) with goals to increase the effectiveness of the review.
Search Engine Optimization (SEO)
Tools : SEO Audit Internet
Application
From the tests that have been conducted,
optimizing SEO increase the chance of the websites to appear on the search engine browser during searching.
2011 Tim Ash Landing Page Optimization:
The Definitive Guide to Testing and Tuning for Conversions
This book is a guide for internet marketers to improve value of their landing page leading to increase the conversions.
A-B Split Testing Multivariate Testing
A-B Split Testing enable the user to experiment their websites and get data collection which lead them to improve their websites using the data given.
2013 Jeffrey A Gaffin Ayesha Huertas Torres
Commerce Oriented Uniform Resource Locater (URL) Shortener
Propose a URL shortener system that focuses on commerce and payment.
URL shortening Base64 encoding Hash
Making a system for online commerce and enabling
merchant to accept a payment through a service provider using
2006 Dr. Birgit Weischede l
Dr. Eelko K.R.E.
Huizingh
Website Optimization
with Web
Metrics: A Case Study
Conduct on case study to solve the
problem of
understanding of how managers of the company are actually using web metrics for site improvement.
Clickstream Metrics
Web managers will be using web metrics to acquire customer’s data in order to optimize their web through redesigning their websites. But still, they need to find new methods on how to get the customer data without too much cost.
2012 Florian Klien Markus Strohmaie r
Short Links Under Attack:
Geographical Analysis of Spam in a URL Shortener Network
To provide insights to problem on spamming in URL Shortener logs.
URL Shortener They found that the usage differs significantly between different countries. A simple hypothesis that states that spammers would be less likely to verify the shortened URLs or use them themselves.
2020 Jay M.
Patel
Getting Structured Data from the Internet
The goal of this book is to teach on how to extract raw data and transform
them into
structured data.
Web Scraping Web Crawlers
This method of extracting data from a certain websites or posts on social media can be used for marketing.
2011 Beatriz Plaza
Analytics for measuring website performance
This article aim to analyze the effectiveness of entries (visit behavior and length of sessions) depending on their traffic source:
direct visit, in-link entries (for instance,
en.wikipedia.org),
Website Profiling From the experiment
conducted, different methodology tested achieve different results.
And for future research, they will compare these results with other case studies.
and search engine visits (for example, Google).
2012 Zhao Hong Bao Yintao
Analysis and Research on Haier Group’s Website Construction Based on Cybermarketin g-orientation
This paper study about Haier’s Group
cybermarketing- oriented website construction.
- This paper finds
that Haier’s website finds it
success by
analyzing its every ingredient detailed and diagnosticating its
able to make large-scaled and medium-sized enterprises look upon their websites anew and provide some help and the referenced value for major enterprises which implement cybermarketing- oriented website constructions.
2014 He Ren Yu
Design and implementatio n of web based on Laravel framework
This paper aim to prove that Laravel framework has scalability, so as to improve the developing
efficiency.
Comparing development efficiency
between Laravel framework and CI(Code Igniter) framework
They find that Laravel
framework is more efficient than traditional framework.
2014 Michael Butkiewic
z and
Daimeng Wang;
Zhe Wu and
Harsha V.
Klotski:
Reprioritizing Web Content to Improve User
Experience on Mobile Devices
This paper propose a system called Klotski, to improve user experience mainly on mobile platforms, but also can be used on traditional desktop
Chrome’s Remote Debugging
Protocol
Klotski try to dynamically reprioritize the delivery of a web page to deliver higher utility content within user tolerance
Sekar problems such as dependencies across content on
a page,
complexity of the optimization, difficulty in estimating load times, and delivering
benefits with minimal changes to clients and webservers
2.2 Research on Existing System 2.21 LinkSplit.io
Description:
The most famous free link rotator on the web. It offers 2500 clicks per month free of charge. It also let the users use their own domain but the user must pay for that service.
Advantage:
i. Can be used by anyone ii. Fast, easy and secured
iii. Free of charge until 2500 clicks per month iv. Custom domain
v. Retarget pixel
i. Need to pay after 2500 clicks ii. Need to pay for custom domain
2.22 TPM Rotator
Description:
A simple web link rotator that can get the job done. There is nothing fancy about this system so it is great for someone that wants a simple link rotator.
Advantages:
i. Simple, can be used upon sign in
ii. Does not has limit on how many links created iii. Does not has limit on how many sites on rotators iv. 10 level of priorities on the sites
v. Can track clicks on the websites vi. Advertise user’s link
2.23 ClickMeter
Description:
The best paid Link Rotator available on the internet. It has many features suitable for big and small organization. What make it more trusted is most of their customers are big brands like Amazon, L’Oreal, iStockphoto and many more.
Advantages:
i. Anyone that paid for this product can use it services ii. Does not has limit on how many links created iii. Does not has limit on how many sites on rotators
iv. Allow to monitor broken links, click fraud, latency and blacklist v. Track views, clicks and conversions
vi. Excel export
vii. Affiliate marketing tools viii. Branded domain up to 100
ix. Data storage
x. Retargeting/Remarketing features Disadvantages:
i. Number of clicks is limited even on X-LARGE plan subscription ii. Data storage is limited to 3 years
iii. Click fraud protection only available on LARGE and X-LARGE plan subscription iv. Too expensive for someone that run a small business
2.3 Summary
This chapter provides an outline relating to the concept of the system. Based on the research that has been made it shows that literature review is one of the vital part as it can be used to implement the method from the research and improve the existing system. The method and algorithm stated will be used during development of the system.
CHAPTER 3
METHODOLOGY
3.1 Introduction
This section describes the methodology used to develop the system because to develop the system, the methodology is one of the basic things that are very important because it is a flow or how we have to develop our system. Thus, in developing this system Rapid Prototyping methods have been chosen. Usually since this method is more organized and structured. It will clarify more about every phase that involves on this project development and also the system requirements.
Besides, this chapter describes the design of implementing the system. Designs are divided into two parts which are system design and database design. System design consists of context diagram, Entity Relationship Diagram (ERD), flow chart and interface. Meanwhile, database design consists of SQL script, entity relationship diagram, and database schema.
and multiple short cycles. This saves time and money by solving common design issues before development begins puts the focus of development on the needs of the end-user.
Rapid Prototyping originated in manufacturing, where it is used to build a physical prototype (now often using 3D printing) to demonstrate and test a product’s capabilities. When used in website development this prototype is either digital or on paper, but the concept is the same.
Rapid Prototyping is normally associated with the Rapid Application Development (RAD) methodology, although you can also use it alongside an agile methodology.
The rapid prototyping process involves three simple steps:
1. Prototyping – The team creates an initial prototype. This is a visual representation of the design specifications as set out in the requirements document. The prototype may be either low-fidelity or high-fidelity (more to come on high- and low-fidelity prototypes) and may be interactive or non-interactive.
2. Feedback – The creators share the prototype with other team members, stakeholders, and focus groups made up the intended end-users. Everyone evaluates both the design and usability before submitting feedback.
3. Improvement – The feedback is used to create a new iteration of the prototype. The process then cycles round to Step 2 for further feedback. This continues until there are no more changes or a specified cut-off is reached (either a date or number of iterations).
3. Refine &
Iterate 1. Prototype
2. Review
Figure 3.0: Rapid Prototyping Overview Process
When it comes to practicing rapid prototyping there are three stages of idea development that can be used to varying levels of effectiveness before a final product is put into production.
They are also typically referred to as high, medium, and low fidelity; which is meant to reflect how close to the final product they get you.
3.2.1 Benefits of Rapid Prototyping
Rapid prototyping has many benefits. In addition to being your fast track to product- market fit, rapid prototyping can help you with all of the following:
1. Quick Iterations Generate Progress – Rapid prototyping uses short cycles to quickly improve the core design.
when compared to waterfall methods, which lack the opportunity for early end- user feedback.
4. Test Key Customer Journeys – Interactive prototypes allow real users to test key customer journeys and provide feedback. The prototype eases to spot key problems without wasting development time.
5. Encourages Collaboration and Feedback - Prototyping enables everyone involved with the project to collaborate and provide feedback. In this case, it allows my supervisor to give feedback on my project.
6. Reduces Project Risk - The low cost of prototyping compared to development means that I can reduce my project risk.
3.3 Quick Design
This phase is to analyze and identify the design of the system and developed the prototype based in the functionalities that will be built. The data or requirement obtained during planning and requirement phase was analyzed and transformed into the design that follows the identified requirement. Some diagrams had been built such as Framework of the project, Context Diagram (CD), Data Flow Diagram (DFD) level 0 and 1, Entity Relation Diagram (ERD) and Data Dictionary.
3.3.1 Framework Design
The framework describes how the entities play their roles in the system. Link Rotator system will be used by two users only which are users and visitors. First and foremost, the user will have to sign up by entering their name, email and password. Then the user can log on into the system by using their registered email and password. On the dashboard page, the user needs to enter one or many URLs that they want to shorten and choose to make the link domain random or according to their preference. The user will be redirected to links page where all created links (by the user only) will be displayed on this page. The user will able to edit, delete, or copy the link to be shared. When visitor clicks on the link that the user shared, for example on their social media account, the visitor will be redirected to the one of the URL entered by the user when creating link.
Figure 3.1: System Framework
3.4 System Design
3.4.1 Context Diagram
Figure 3.2: Context Diagram
Figure 3.2 above shows the context diagram for the Link Rotator System. The context diagram consists of three entities which are the user and visitor. Only the user are required to login into the system before can access the system. The user has to register to the system before they can login into their interfaces. Once the user is authenticated, they will be directed to dashboard and able to browse around the system until their session end. On the dashboard page,
3.4.2 DFD Diagram (Level 0)
Figure 3.3: DFD Diagram Level 0
Figure 3.3 shows a data flow diagram that consists of two processes and four data stores.
There are three processes that involved user in this level which are registration, manage link rotator and open URL of Link Rotator. The user involves with two processes which are registration and manage link rotator. While visitor only given the ability to open URL of Link Rotator.
The user does the registration and the system will store the details input by the user into User (D1) data store and login (D2) data store. The link rotator details which come from the user will be saved into Links (D3) data store and Slug (D4) data store. When Visitor clicks on the Link Rotator, time will be recorded and number of clicks will increase and will be stored onto Slug(D4) . Last but not least, Slug (D4) data store will return links on the link rotator for the visitor that click on it (be it internally or externally from the system).
3.4.3 DFD Diagram Level 1 (Manage Link Rotator)
Figure 3.4: DFD Level 1 (Manage Link Rotator)
Figure 3.4 shows the data flow diagram level 1 of Manage Link Rotator. In this level, user will manage their link rotator by creating a new link rotator by entering one or more link URLs. The link rotator details then will be stored in Links (D3) data store and Slug (D4) data store. The same process will be repeated for updating, deleting and viewing. User only can manage their own created link rotator, link rotator created by another user will not be accessible.
3.4.5 Entity Relationship Diagram (ERD)
Figure 3.6: ERD Diagram for Link Rotator System
Entity Relationship Diagram (ERD) for Link Rotator System is as shown in Figure 3.6. It consists of four (4) entities. The entities are users, slugs, links, and password_resets.
3.5 Database Design
3.5.1 Data Dictionary I. Users
Table 3.1 below shows the data dictionary for users. The table consists of attribute which is id, name, email, email_verified, password, remember_token, created_at and updated_at.
Table 3.1: Data Dictionary for users
NO ATTRIBUTE
NAME
DETAILS TYPE KEY DESCRIPTION
1 id Id for user int (10) PRIMARY
KEY
AUTO
INCREMENT
2 name User’s name varchar
(191)
3 email User’s
varchar (191)
UNIQUE
4 email_verified Verified user’s e-mail
timestamp Default = NULL
5 password User’s
password
varchar (191)
7 created_at Account creation time
timestamp Default = NULL
8 updated_at Account
updated time
timestamp Default = NULL
II. Slugs (Link Rotator)
Table 3.2 below shows the data dictionary for slugs (link rotator). The table consists of attribute which is id, slug, create_by, clicks, last_access, created_at and updated_at.
Table 3.2: Data Dictionary for slugs
NO ATTRIBUTE
NAME
DETAILS TYPE KEY DESCRIPTION
1 id Id for slug int (10) PRIMARY
KEY
AUTO
INCREMENT
2 slug Slug name varchar
(191)
UNIQUE
3 create_by Slug creator varchar
(191)
FOREIGN KEY
4 clicks Number of
clicks (visitors)
int (11) Default = 0
5 last_access Link last
accessed time
varchar (191)
Default = 0
6 created_at Slug creation
time
timestamp Default = NULL
III. Links
Table 3.3 below shows the data dictionary for links. The table consists of attribute which is id, sid, sid, url, endpoint, create_by, gen_url, last_access,created_at and updated_at.
Table 3.3: Data Dictionary for links
NO ATTRIBUTE
NAME
DETAILS TYPE KEY DESCRIPTION
1 id Id for links int (10) PRIMARY
KEY
AUTO
INCREMENT
2 sid Slug id for the
links
int (11) FOREIGN KEY
3 url Link’s URL varchar
(191)
4 endpoint Slug name for
the links
varchar (191)
UNIQUE
5 create_by Link owner on
the system
varchar (191)
FOREIGN KEY
6 gen_url To create
object in Laravel
project
varchar (191)
7 last_access Link last int (11) Default = 0
accessed time
8 created_at Link creation
time
timestamp Default = NULL
9 updated_at Link updated
time
timestamp Default = NULL
IV. Password_resets
Table 3.4 below shows the data dictionary for password_resets. The table consists of attribute which is id, sid, sid, url, endpoint, create_by, gen_url, last_access,created_at and updated_at.
Table 3.4: Data Dictionary for password_resets
NO ATTRIBUTE
NAME
DETAILS TYPE KEY DESCRIPTION
1 email Forgotten
password e- mail
varchar (191)
KEY
2 token Token for
changing password
varchar (191)
3 created_at Password reset
time
timestamp Default = NULL
3.6 Requirement
Software and hardware are essential in order to achieve a smooth project development and testing phase. These are details of the requirement to develop Web Optimization using Link Rotation for Better Marketing:
3.6.1 Hardware
➢ OS: Windows 7 (64-bit)
➢ CPU: Intel® Core™ i7-4790 processor
➢ RAM: 8 GB
➢ Graphics Card: NVIDIA GeForce GTX 750
➢ Storage: 500 GB
3.6.2 Software
➢ Laragon
➢ HeidiSQL
➢ Visual Studio Code
➢ Composer
➢ Git Bash
➢ PHP 7
➢ Bootstrap 5
3.7 Conclusion
This chapter covers all the details on the proposed project. It states on how will this project developed, why choosing rapid prototyping as the developing method, and what is the proof of concept for this project. I am sure this chapter will give a better understanding for the Web Optimization using Link Rotation for Better Marketing.
CHAPTER 4
IMPLEMENTATION AND RESULT
4.1 Introduction
Implementation and results are carried out to guarantee that the system is designed in accordance with the system's principal goal and meets user requirements. This chapter will present the results of the Web Optimization using Link Rotation for Better Marketing that was developed as part of the final year project.
4.2 Implementation of FYP Student Management System
There are several language has been used to develop the Web Optimization using Link Rotation for Better Marketing. For the template interface Bootstrap 5.0, Google API and CloudFlare Fonts has been used. Thus, for the server side PHP: Hypertext Pre-processor has been used as programming language. PHP is widely used because it is an open source for general-purpose scripting language, can be embedded into HTML and it suits for Web development.
For the framework, Laravel 5 has been used. Laravel is a web app development framework with expressive and elegant syntax that makes the entire web development process faster, easier, and enjoyable for developers by eliminating all the pain-points associated with handling complex PHP code.The reason Laravel is used in this project development is because of it better
For the validation, this system had been used HTML5, PHP and JavaScript. Validation is important to make sure user have a minimum chance to make mistake when inserting data.
This system is deployed to free web hosting called 000webhostapp to be able to create a working URL as well as to track visitors using Statcounter.
Open Source database also used in this system and the database is MySQL version 5.7.24- MariaDB. Apache use to run local host server and the apache version is 2.4.35. Visual Studio Code is used to write codes.
4.3 Design Interface
4.3.1 Main Interface (Home)
Figure 4.1 Home Page
Figure 4.1 above shows the main interface of the system. When user first came to the system, they will see this interface. When the user try to go to other pages without logging in first, they will be redirected here.
Figure 4.2 Home Page (cont.)
Figure 4.2 above, still on the same page which is home, shows information about Link Rotator.
Figure 4.3 Home Page (cont.)
Figure 4.3 above shows the bottom part of the home page. Aside from copyrights, there is a button “View My Stats” which will redirect the user to another domain called Statcounter which can help the user to tract this websites usage, traffics, visits and visitor information.
4.3.2 Register Interface
Figure 4.4 Register Page
Figure 4.4 above shows register page. Before logging in to the system, user need to register their name, email and password. The data will be stored in database and then will be used when the user wants to log in to the system. The user must enter a recognizable name, if the user enter number in name area, the system will ask to enter a valid name. Same goes for email address.
4.3.3 Login Interface
Figure 4.5 Login Page
Figure 4.5 above shows login page. To use the link rotator system, user need to enter their registered email and password. The system will search the database and if it match the data, the user will be logged in to the system. User can click on remember me checkbox. After the user logged out, his login data will automatically filled using same computer and browser.
4.3.4 Dashboard Interface
Figure 4.6 Dashboard
Figure 4.6 above shows dashboard. After user has logged in, he will be redirected to this page.
To create a link rotator, simply enter designated URL on the Target area and then click create.
Click on the ‘+’ button to insert more than one URL. User can also customize their link to their likings. If left custom link blank, the system will create a randomize the URL(slug) of the link rotator.
4.3.5 Created Links Interface
Figure 4.7 Created Links Page
Figure 4.7 above shows Created Links page. User can see their created link rotators and only that they created meaning they cannot see other user’s link rotators. If user click on the link rotator or copy paste the URL of the link rotator into address bar, it will redirect user to the first URLs that the link rotator holds or first destinations.On this page, user can see how many people click on their link rotator, when it created at, it last accessed, view more details about their link
Figure 4.8 QR Code
Figure 4.8 above shows when user click on Generate QR Code. User can scan the QR code using smartphones and then he will be redirected to one of the destinations.
4.3.5 Stats Interface
Figure 4.9 Stats Page
Figure 4.9 above shows stats page. On this page, user can see details stats to their link rotator which are destinations, last access and clicks for the destinations.
4.3.6 Edit Link Interface
Figure 4.10 Edit Link Page
Figure 4.10 above shows edit link page. On this page, user can edit their link rotator. They can add destinations and remove existing destinations.
4.3.7 Stat Counter Interface
Figure 4.12 Stat Counter (cont.)
Figure 4.13 Stat Counter (cont.)
Figure 4.14 Stat Counter (cont.)
Figures above show stat counter. This is a web service for tracking website stats. User will be redirected here if they click on view my stats button on homepage. User can see reports about link rotator page here with purpose to improve their businesses or websites. User can print these reports or set preference to email this email daily, weekly, monthly or annually.
4.4 Testing Analysis
After the development of the system is complete. This system will be test using two software testing techniques which are black box testing and white box testing to examine the functionality of the system.
4.4.1 Black Box Testing
4.4.2 White Box Testing
Module involved in this testing are:
I. Link Rotator Page Redirect II. QR Code
III. Number of clicks (total clicks and destination’s clicks) IV. Statcounter reports
4.5 Test Case
A test case is a set of condition or variables under which a tester will determine wheatear a system works correctly or under test satisfies the requirement. A test case may help finding problems in the requirement or design of an application. It simple define that test cases is a set of condition or combination of variables under which tester/engineer will identify wheatear the application under test is working correctly or not. Below shows the cases for several processes in the Web Optimization using Link Rotation for Better Marketing.
Table 4.1 : Test case for Success User Login
Step Procedure Expected Results Pass/Fail
1 Go to login page Login Page Loaded Pass
2 Enter the name, email
and password
Email :
ammar@gmail.com Password : 123456
Pass
3 Click “Login” button Login successful. Pass
Redirect to dashboard
Table 4.2 : Test case for Failed User Login
Step Procedure Expected Results Pass/Fail
1 Go to login page Login Page Loaded Pass
2 Enter the name, email
and password
Email :
aiman@gmail.com Password : 123456
Pass
3 Click “Login” button “These credentials do not match our records.” text under the email is shown.
Pass
Table 4.3 : Test case for Add Link Rotator
Step Procedure Expected Results Pass/Fail
https://www.google.com
3 Click “Create” button Link Rotator created successfully.
Redirect to created link page.
Pass
Table 4.4 : Test case for Failed to Add Link Rotator
Step Procedure Expected Results Pass/Fail
1 Go to dashboard page Dashboard Page
Loaded
Pass
2 Enter the URL
URL : google
Pass
3 Click “Create” button “Please enter a URL”
alert is shown.
Pass
Table 4.5 : Test case for Customlink
Step Procedure Expected Results Pass/Fail
1 Go to dashboard page Dashboard Page
Loaded
Pass
2 Enter the URL and
customlink
Pass
URL : https://www.google.com Customlink: ammar
3 Click “Create” button Link Rotator created successfully.
Redirect to created link page.
Pass
Table 4.6 : Test case for Update Link Rotator
Step Procedure Expected Results Pass/Fail
1 Go to created links page.
Click edit
Edit link page loaded
Pass
2 Delete and Insert new
URL.
URL :
https://www.youtube.com
Pass
3 Click “Add” button “URL successfully
added” is shown
Pass
1 Go to created links page
Created links page loaded
Pass
2 Click “Delete” button “Links successfully deleted” is shown
Pass
Table 4.8 : Test case for Link Rotator Link Rotation
Step Procedure Expected Results Pass/Fail
1 Go to browser
(Chrome)
Pass
2 Paste into the address
bar the URL of Link Rotator and click enter.
Chrome redirect to the first destinations of the Link Rotator
Pass
3 Paste into the address
bar on another tab the URL of Link Rotator and click enter.
Chrome redirect to
the second
destinations of the Link Rotator
Pass
Table 4.9 : Test case for Link Rotator Clicks
Step Procedure Expected Results Pass/Fail
1 Go to browser Pass
(Chrome)
2 Paste into the address
bar the URL of Link Rotator and click enter.
Chrome redirect to the destination of the Link Rotator
Pass
3 Go to created links
page and check clicks
Clicks increased by 1 Pass
Table 4.10 : Test case for Link Rotator Last Accessed
Step Procedure Expected Results Pass/Fail
1 Go to browser
(Chrome)
Pass
2 Paste into the address
bar the URL of Link Rotator and click enter.
Chrome redirect to the destination of the Link Rotator
Pass
3 Go to created links
page and check last accessed
Last accessed change to current time
Pass
1 Go to browser (Chrome)
Pass
2 Paste into the address
bar the URL of Link Rotator and click enter.
Chrome redirect to the destination of the Link Rotator
Pass
3 Go to stats page and
check clicks
Clicks for the destination that just visited increase by 1
Pass
Table 4.12 : Test case for Destinations Last Accessed
Step Procedure Expected Results Pass/Fail
1 Go to browser
(Chrome)
Pass
2 Paste into the address
bar the URL of Link Rotator and click enter.
Chrome redirect to the destination of the Link Rotator
Pass
3 Go to stats page and
check last accessed
Last Accessed for the destination that just visited change to current time
Pass
Table 4.13 : Test case for Generate QR Codes
Step Procedure Expected Results Pass/Fail
1 Go to created links
page
Pass
2 Click
Code
generate QR Modal appear shows QR Code
and Pass
3 Scan QR Code using
smartphones
Smartphones open browser redirected to destinations of link rotator
will and the the
Pass
CHAPTER 5
CONCLUSION
5.1 Introduction
This chapter will discuss a conclusion of this project and the content on this chapter are summary for the whole of his project, project contribution, project limitation and some suggestion for the future.
5.2 Project Contribution
Web Optimization using Link Rotation for Better Marketing has been developed for marketers to be used as a tool to optimize their websites. It has achieved the objectives and scope that were stated in this project. The project has achieved some of the below:
• Help new business owner to optimize their websites.
• This system provides a useful solution for marketers and business owner.
• Engage with visitors by learning how visitors interact with this system, then optimize these elements accordingly.
5.3 Result Discussion
This project has been carried out and follows the objectives that have been stated in Chapter 1. This project increases the effectiveness using Link Rotation to optimize websites. User who uses this system can have a free tool to help optimize their websites. They can track the stats of their websites to help improve their websites in the future. They can download reports to be analyzed to set their companies or businesses goals in the future. This system helps in giving
can be used publicly as long as there is internet connection, user can do freely they want with this system whether to be used as a tool to optimize websites, to increase sales or to do split testing how they see fit.
5.4 Project Constraint and Limitation
There are a few problems and limitations that occur throughout the development of these project which are :
• The system server is operating in US time since 000webhosting are used to host the server.
• Custom Domain is not possible.
• Destinations distributions are fixed.
5.5 Future Work
Here are some suggestions for the system to work more efficiently in future. The suggestions are :
• Use a web hosting that change time according to IP address.
• User can customize domain of the link rotator according to their preferences.
• Make destinations distributed according to user’s likings.
5.6 Conclusion
businesses throughout the world with the help of Link Rotator tools. Finally, this proposal expectation is to used, utilized and improve the usage from time to time.
Reference
Karon KROL. (2020) Website Optimisation For Search Engines - Concept of Website Profiling. In Scientific Papers of the Silesian Univeristy of Technology
Tim Ash (2011). Tuning Methods (Chapter 8). Landing Page Optimization: The Definitive Guide to Testing and Tuning for Conversions (198-234)
Jeffrey A. Gaffin, Ayesha Huertas Torres (2013). Commerce Oriented Uniform Resource Locator (URL) Shortener, United States Patent
Dr Birgit Weischedel, Dr. Eelko K.R.E Huizingh(2006). Website Optimization with Web Metrics: A Case Study. Copyright 2006 ACM 1-59593-392-1.
Florian Klien, Markus Strohmaier(2012). Short Links Under Attack: Geographical Analysis of Spam in a URL Shortener Network.
Jay M. Patel(2020). Getting Structured Data from the Internet. In Chapter 1 - Introduction to Web Scraping(1-30)
Beatriz Plaza(2011). Google Analytics for measuring website performance. In Tourism Management 32 (2011) 477e481
Zhao Hong, Bao Yintao(2012). Analysis and Research on Haier Group’s Website Construction Based on Cybermarketing-orientation. In Physics Procedia 24 (2012) 1298 – 1303
He Ren Yu(2014). Design and implementation of web-based on Laravel Framework. 2014 International Conference on Computer Science and Electronic Technology (ICCSET 2014) Michael Butkiewicz and Daimeng Wang, Zhe Wu and Harsha V. Madhyastha, Vyas Sekar(2014). Klotski: Reprioritizing Web Content to Improve User Experience on Mobile Devices. https://www.usenix.org/conference/nsdi15/technical- sessions/presentation/butkiewicz