Sunteți pe pagina 1din 47

CHAPTER 1

THE PROBLEM AND ITS BACKGROUND

This chapter discusses the Introduction of the study, Background of the

study, data transfer process, thesis statement, general objective, specific

objectives, significance of the study and lastly the operational and definition of

terms.

Introduction

According to cisco “Wireless network is a network setup by using radio

signal frequency to communicate among computers and other network devices.

Sometimes it is also referred to as WIFI network or WLAN. This network is

getting popular nowadays due to easy to setup feature and no cabling involved.

Anyone can connect computers anywhere at home or at the office without the

need for cables. Most applications require a wireless network connection in order

to use it. Most of the users preferred to use Wi-fi than other existing wireless

connection because of its speed and convenience.”

According to Margaret Rouse “File sharing is the public or private sharing

of computer or mobile data in a space in a network with various levels of access

privilege”. Nowadays, there are lots of file sharing applications available over the

internet. There are some that requires bluetooth connection, and some are

wireless network. Furthermore, there are file transfer applications developed and

can be downloaded in any downloadable application sites. This helps the user to

easily transfer file without the use of wires or connector, through wireless network

1
users will be able to transfer file from phone to computer or vice versa in just a

second depending on file size and the specifications of the devices used. The

researchers found this technology interesting and consider to analyze and study

the efficiency of file transfer algorithm in a wireless environment.

BACKGROUND OF THE STUDY

Nowadays, several existing applications can be downloaded on the

internet. Most of the users are simply using the applications without discovering

the idea on how it was developed. As long as the app is working and giving

better result that the user needs. As a researcher it is necessary to understand

the flow, the code and most specially the algorithm of that application, in order to

have a knowledge regarding the overall development of that application. This

also help the researchers to identify which has a better result and most reliable to

use. The researchers need to learn how to compare an application from other

application. Algorithm is a procedure or formula for solving problems, based on

conducting a sequence of specified actions. A computer program can be viewed

as an elaborate algorithm. In mathematics and computer science, an algorithm

usually means a small procedure that solves a recurrent problem. According to

Margaret Rouse “The word algorithm derives from the name of the

mathematician, Mohammed ibn-Musa al-Khwarizmi, who was part of the royal

court in Baghdad and who lived from about 780 to 850. Al-Khwarizmi's work is

the likely source for the word algebra as well”. Regarding proposed topic of the

researchers which is the File transfer algorithm, it is better to understand more

what is File transfer? Based on research, File transfer is the movement of one or

2
more files from one location to another using wireless network or local network,

Through that the researchers end up with a topic that would test one of the

feature of the researchers developed UMAK MULTI REMOTE CONTROL

APPLICATION which is the file transfer. Because during the group researched in

thesis 1, there were several topics regarding the file transfer. Some of these are

difficult to analyze and understand, that is why the researchers decided to create

a file transfer that would make it more reliable for the user. This also shows how

effective and useful the file transfer application for the user. In this study, it will

show the performance of the application in terms of transferring file Through

wireless network by analyzing more the algorithm, this would help the

researchers understand the behavior of the application, study and compare the

application from other existing file transfer application available over the internet.

The time and bandwidth where the researcher will test the amount of data that

can be transferred at one time and actual amount of data transferred. Also, part

of the study is to test the complexity of codes, using cyclomatic complexity to

determine a piece of code or functionality and analyze the logic and flow of

codes. In this study, it is able to determine which code is more applicable and

favorable to use compare to other existing file transfer code.

3
Figure 1. Data Transfer Process

The figure shown above visualizes the process of transferring file and the

plan of the study. The connection is established by the server sharing the unique

IP address with the client/user and client would directly input the given IP

Address of the server and once the two devices are connected, both devices can

now transfer file through wireless network. The researchers can check the time

and identify the speed or the time it takes to transfer the file to another device.

Furthermore, part of it is the bandwidth, where focus on the size or amount of file.

Data accuracy is also included in the study. Lastly, the complexity of the code.

This figure was the overall process of the application in thesis 1. Wherein

the researcher applied the same process for the testing procedure in their current

study.

4
THESIS STATEMENT

Modified K-means Algorithm in a Wireless Environment is efficient in file

transfer process, ensuring data accuracy, timeliness and reliability.

By testing all the gathered data which is related to the study, the results

gave the researchers an idea that the accuracy of file transfer using modified K-

means Algorithm is effective and reliable.

General Objective

The main objective of this study is to determine the efficiency

characterized by accuracy and speed in transferring file of modified K-means

Algorithm in a wireless Environment

Utilizing the modified K-means Algorithm in a Wireless Environment. This

is identified that the algorithm is accurate in the study by simply doing applicable

testing procedures and measurements. The researchers can determine the

efficiency in terms of accuracy and speed in transferring file from mobile to

computer or vice versa.

Specific Objectives

● To know the accuracy of data doing and after file transfer. This research

aims to determine that the files are accurately transferred from the source to

destination. Most of the time there are problems encountered in accuracy of

transferring file, most of the time there are users who accidentally sent wrong file.

● To identify the code complexity of the algorithm. This is to identify the

quantitative measure of the number of linearly independent paths through a

5
program's source code. This is used to gauge the overall intricacy of an

application or specific functionality within it.

● To identify the time and bandwidth. This is to determine the time of data

transferred and also the bandwidth where the researchers can identify the

amount of data that can be transmitted in a fixed amount of time. For digital

devices, the bandwidth is usually expressed in bits per second(bps) or bytes per

second. For analog devices, the bandwidth is expressed in cycles per second, or

Hertz (Hz).

● To know the compatibility of the code to a wide array of device. Part of the

objective is to identify the compatibility of the code or the portability of the code to

other devices. It means that the program can run on entry level to flagship mobile

devices same as the server side software should run to a low specs to high

specs computer.

SCOPE AND LIMITATIONS OF THE STUDY

The study focuses on the analysis of modified K-means Algorithm in a

Wireless Environment by doing testing procedure for the study. In the areas of

the study; data accuracy, code complexity and transfer time and bandwidth are

covered in this study. In this case, the researchers can determine whether the

study is effective and accurate or not through applying all the defined procedure.

The study focuses only on the local area network in wireless environment and

not with Bluetooth or InfraRed connectivity.

6
When it comes to the specification, the study requires specific

specification for mobile phones and computer. The application works on both

entry level and flagship android phones.

Table 1. Test Unit Specifications

SPECS HUAWEI LENOVO SAMSUNG ASUS Nokia

Device Type Mobile Mobile Mobile Mobile Mobile


Phone Phone Phone Phone Phone

Model Name Huawei P9 Lenovo Samsung Zenfone 3 Nokia 5


Lite A5000 Galaxy S3 Laser

OS Android 6.0 Android Android Android Android 7.1.1


(Marshmallo 4.4.2 4.1.1 (Jelly 6.0.1 (Nougat),
w), (KitKat), Bean), 4.3 (Marshmallo planned
upgradable upgradable (Jelly w), upgrade to
to 7.0 to 5.0.2 Bean), upgradable Android 8.0
(Nougat) (Lollipop) upgradable to 7.1.1 (Oreo)
to 4.4.4 (Nougat)
(KitKat)

Dimensions 146.8 x 72.6 140 x 71.4 136.6 x 149 x 76 x 149.7 x 72.5


x 7.5 mm x 10 mm 70.6 x 8.6 7.9 mm (5.87 x 8 mm (5.89
(5.78 x 2.86 (5.51 x mm (5.38 x x 2.99 x 0.31 x 2.85 x 0.31
x 0.30 in) 2.81 x 0.39 2.78 x 0.34 in) in)
in) in)

Physical Size 5.2 inches, 5.0 inches, 4.8 inches, 5.5 inches, 5.2 inches,
74.5 cm2 68.9 cm2 63.5 cm2 83.4 cm2 74.5 cm2
(~69.9% (~68.9% (~65.9% (~73.6% (~68.7%
screen-to- screen-to- screen-to- screen-to- screen-to-
body ratio) body ratio) body ratio) body ratio) body ratio)

Processor HiSilicon Mediatek Exynos Qualcomm Qualcomm


Speed Kirin 650 MT6582 4412 Quad MSM8937 MSM8937
Snapdragon Snapdragon
430 430

Processor Octa-core Quad-core Quad-core Octa-core Octa-core


Type (4x2.0 GHz 1.3 GHz 1.4 GHz 1.4 GHz 1.4 GHz
Cortex-A53 Cortex-A7 Cortex-A9 Cortex-A53 Cortex-A53

7
& 4x1.7 GHz
Cortex-A53)

RAM 2/3 GB RAM 1 GB RAM 2 GB RAM 2 GB RAM 2/3 GB RAM

Resolution 1080 x 1920 720 x 1280 720 x 1280 1080 x 1920 720 x 1280
pixels, 16:9 pixels, 16:9 pixels, 16:9 pixels, 16:9 pixels, 16:9
ratio (~424 ratio (~294 ratio (~306 ratio (~401 ratio (~282
ppi density) ppi density) ppi density) ppi density) ppi density)

Internal 16 GB 8 GB, 16 GB 64 GB 16 GB
Storage

Bluetooth 4.1, A2DP, 4.0, A2DP 4.0, A2DP, 4.2, A2DP, 4.1, A2DP,
LE EDR, aptX EDR, LE LE

Wifi Wi-Fi 802.11 Wi-Fi Wi-Fi Wi-Fi 802.11 Wi-Fi 802.11


b/g/n, WiFi 802.11 802.11 b/g/n, Wi-Fi b/g/n,
Direct, b/g/n, a/b/g/n, Direct, hotspot
hotspot hotspot dual-band, hotspot
Wi-Fi
Direct,
DLNA,
hotspot

Significance of the Study

This study is beneficial to the following entities:

Researchers

The researchers are the ones who conducted the study. This study will

help the researchers prove the efficiency of the modified K-means algorithm in

file transfer module of UMak Multi-remote control app. The study will benefit the

researchers to have the idea on how accurate and fast the application in different

android mobile phone and windows PC. This will help the researchers improve

Umak Multi remote control app.

8
Future Researchers

This study will serve as guideline to improve the study of the next

researchers who will wish to continue this topic or will be having the same

concept of research. This study will serve as reference to the future researchers

who wish to study the topic about K-means, File transfer or any other related

terms.

The Students and Professors of University of Makati

Since the users of the UMak Multi-remote control App are the students

and professors of University of Makati and the modified K-means was applied to

this app, these users will have a deeper understanding in using the application. It

will answer the questions of how the app works, what are the benefits of the app,

and how efficient will these user be able to maximize the use of the app.

OPERATIONAL DEFINITION OF TERMS

To better understand the conducted study, the following terms were

operationally defined to further discussed by inputting a list below.

Apps or Application is a program designed to perform a specific function

directly for the user. It uses the services of the computer’s operating system and

other supporting applications.

Bandwidth is the highest sine wave frequency component that is significant in a

signal. Code Complexity is computed using the control flow graph of the

program: the nodes of the graph correspond to indivisible groups of commands

9
of a program, and a directed edge connects two nodes if the second command

might be executed immediately after the first command.

Data Accuracy is one of the components of data quality. It refers to whether the

data values stored for an object are the correct values.

Data is a collection of objects units that are related from one another

File Transfer is the transmission of a computer file through a communication

channel from one computer system to another. Typically, file transfer is mediated

by a communications protocol.

Hotspot a place where a wireless Internet connection is available.

k-means clustering is a method of vector quantization, originally from signal

processing, that is popular for cluster analysis in data mining.

Local-area network A local-area network (LAN) is a computer network that

spans a relatively small area. Most often, a LAN is confined to a single room,

building or group of buildings, however, one LAN can be connected to other

LANs over any distance via telephone lines and radio waves.

Maintainability is the ease with which something can be maintained.

Record A record is a collection of Data items arranged for processing by a

progra. Multiple records are contained in a file or data set. Typically, records can

be of fixed-length or be of variable length with the length information contained

within the record.

Wireless network is a computer network that uses wireless data connections

between network nodes

10
Wi-Fi a facility allowing computers, smartphones, or other devices to connect to

the Internet or communicate with one another wirelessly within a particular area.

11
CHAPTER 2

CONCEPTUAL FRAMEWORK

This chapter discusses the Analysis of Modified K-means Algorithm in a

Wireless Environment through various principles and related facts and ideas.

Review of Related Studies and Literature

1. Foreign Studies

File Transfer Protocol Performance Study for EUMETSAT

Meteorological Data Distribution

According to Truksans, Znots, Barzdins 2011, the purpose of the study

was to create and provide the background experimental material for the selection

of a file transfer architecture in the upcoming next generation Meteorological

weather satellite system to be launched in 2014 – EUMETSAT. Also part of the

study is to perform a multi-dimensional survey of four file transfer protocols (FTP,

UFTP, bbFTP, GridFTP, RSYNC) under widely varying conditions characteristic

to various network conditions. Namely, performance 70ms and 700ms RTT

characteristic to intercontinental terrestrial Internet and geostationary satellite

communications were studied. Additionally, various packet loss patterns were

examined.

This study was similar to the researchers current study, which is the file

transfer. This shows the performance of the application over wireless network.

Through this, researchers can determine and compare the work. In the end, the

researchers can test and give a better result.

12
Simulating a File-Sharing P2P Network

According to Schlosser, Condie, Kamvar. 2003, Simulating a File-Sharing

P2P Network. Without a simulation the performance of assessing the peer-to-

peer algorithm is impossible. However, there are P2P algorithms are sensitive to

the network that are used in simulations. This study requires simulations that

resemble real-world P2P network as closely as possible.

This was similar to the study of the researchers, using this the researchers

can identify the P2P Network or File sharing in peer-to-peer algorithm and how is

it works. The researchers can also determine the process and specific goal in

using this algorithm. A P2P network can be an ad hoc connection—a couple of

computers connected via a Universal Serial Bus to transfer files.

1 CFT: Co-operative file transfer algorithm for multi network

interface sessions

According to IEEE.org. 31 March 2016. CFT: Co-operative file transfer

algorithm for multi network interface sessions, India. Nowadays, File transfer in

wireless network is the easiest way to send or transfer file from one device to

another. File transfer can occur through multiple interface connections also,

protocols such as SCTP, transfers data in multiple data stream within a single

connection and LFTP transfers file sourced from multiple servers to a single host,

in this case, IEEE.org would like ensure the utilization of combined bandwidth of

all the interfaces used, so that the rate of file transfer would increase

considerably compared to single bandwidth transfer. In this work, the

13
organization use two interfaces i.e, IEEE 802.3 (Ethernet) and IEEE 802.11

(WiFi) to accomplish the above task.

This study also focused on file transfer algorithm which is also what

researchers focused at. Using this study, the researchers can easily identify

more about the process and importance of file transfer.

2. Local Studies

Development of College Completion Model Based on K-means

Clustering Algorithm

According to Paz and Gerard. May 2014. Development of College

Completion Model Based on K-means Clustering Algorithm. “This paper was

designed to present and justify the capabilities of data mining. Main contribution

of this paper was the development of college completion model based on k-

means clustering algorithm. All the data stored in the Student Information and

Accounting System was used to perform an analysis of study outcome taking into

consideration not to include in the final result any identifying information to

protect their privacy. The study and results showed that students belong to the

cluster which needs intervention.”

This study helped the researchers to identify the capabilities of data

mining using K-means algorithm. Part of the study is the data accuracy. In this

study, the researchers tackled the data stored in the Student and Accounting

system. The researchers tested how secured the data. This is also part of the

current study of the researchers.

14
Application of improved Initialization of K-means Algorithm for

Monitoring of Fixed Asset

According to Fabregas, Medina, and Gerardo. Dec 21, 2017. Application

of improved Initialization of K-means Algorithm for Monitoring of Fixed Asset.

“The study shows the effectiveness of the improved initialization of centroids for

K-means as compared to the traditional K-means procedure. The purpose is to

make a clear comparison of the standard and the improved initialization of the k-

means algorithm in terms of processing time in reaching the convergence point

of clustering, simplicity of mathematical computation and the number of

iterations.”

This study was also related in the current study of the researchers. Using

k-means they can identify the particular need specially the clustering method,

also the traditional K-means process including computation.

Developing A Philippine Climate-ocean Typology As Input To

National Vulnerability Assessments

According to Marine Science Institute. 2015. Developing a Philippine

Climate-ocean typology as input to national Vulnerability Assessments, Quezon

City. This study explained the Philippine climate-ocean typology as input to

national vulnerability assessments. Part of the study is to made use of satellite-

derived Sea surface temperature (SST), and sea surface height (SSH), wind data

(W), and precipitation (P). and the results show that the Philippines naturally

divided into 11 exposure clusters. Typology was done using K-means clustering

15
which has been shown to be robust especially when pixels spatially located near

each other are expected to exhibit similar properties. The K-number of points are

randomly selected from the entire dataset and treated as initial means. Data

points are then sequentially associated with the most similar initial mean and

together these data point and the initial mean make up one of the K-clusters.

This study helps the researchers to determine and have more knowledge

regarding K-means algorithm. Furthermore, they can also use this as guidelines

in terms of using K-means in different aspects of the study. In terms of

computation, the researcher randomly selected a cluster from data set same with

this study and identified which group is such cluster. In the end of computation,

researcher can identify which group is cluster.

2. Foreign Literature

Secure Algorithm for File Sharing Using Clustering Technique of K-

Means Clustering

According to Sharma, September 18, 2016. Secure Algorithm for File

Sharing Using Clustering Technique of K-Means Clustering. Most of the user are

very strict in terms of security, Security is most or of at most important when we

are talking about file transferring in networks. Thesis work design a new

innovative algorithm to securely transfer data over network. MacQueen in 1967

introduced the k–means clustering algorithm it is a broadly utilized plan to solve

the clustering problem.

16
Part of the study is the security in transferring file. With the help of this

literature, researchers can use this as a guidelines during the development of the

study. Where the researchers can determine how secure the file.

Move large quantities of data from one network to another

According to SolutionSoft Systems Inc, January 30, 2017. Move large

quantities of data from one network to another. 2350 Mission College Blvd., Suite

777 Santa Clara, California 95054. “Safe Velocity is suited for the topic, because

of its capability where the user could regularly move large quantities of data

across networks, and also addresses the problems of transferring large files

(Gigabytes to Terabytes) over the Internet by providing a platform that provides

ensured delivery, faster throughput and increased security.”

This literature gives an idea to the researchers regarding on amount of

data transferred. And also by addressing the problems in transferring file over

wireless network. In this case, researchers can also test their work and study

using this literature to determine the possible output of the study most specially

the file transferred over wireless network.

File Transfer Protocol

According to Beal, December 29, 2017. “File Transfer Protocol(FTP) is the

best and simplest and most secure way in exchanging files(data) over the

internet. To have access in an FTP server, the users should be able to connect

to the internet or intranet via modern or local area network. There are two types

of transfering file to client server, this is called “Uploading” and “Downloading”.

17
This is specifically the same on the features of what the researchers

developed. They also have Upload and Download. They can test and compare

their work and through that, they can identify and easily test the study.

3. Local Literature

Modified Selection Of Initial Centroids For K- Means Algorithm

According to Fabregas, 2016. “This shows the improved initialization of

initial centroids instead of random selection for the K-means algorithm. This

paper shows also shows the comparison of K-means and Modified K-means

algorithm. The authors focused on the use of K-means algorithm for the reason

that it is easy to use and implement, scalability, speed of convergence and

adaptability to distribute data. This algorithm has been used in different topics

like computer vision, geostatistics, astronomy and agriculture. This concept could

be adapted to other application. The main objective of the study is to change the

methods of selecting initial centroids.”

This article discussed all about k-means algorithm and the other way how

to get the initial centroids or group of cluster instead of randomly selecting it from

data set.

Development of College Completion Model Based on K-means

Clustering Algorithm

According to Paz, Gerardo, and Bartolome T. Tanguilig III, 2009-2013.

“This article was designed to justify and present the capabilities in data mining.

18
K-means clustering algorithm had a main contribution to this paper. From 2009-

2013 the date stored was used to perform an analysis of study outcome taking

into consideration not to include in the final result any identifying information to

protect their privacy. This is a research and development laboratory and a

mechanism through which the nation builds its human capital to enable it to

actively participate in the global economy. The WEKA software was used to build

the college completion model using k-means clustering.”

This literature helps the researcher on how to solve the mathematical

computation in clustering method. This also involved the K-means clustering

which is way how to solve and identify the data set or group of cluster.

Fundamental algorithm used figure 2 pseudocode of K-Means

According to Lyceum of the Philippines University, January 24, 2018.

Cavite. This shows that the K-means Clustering system helps the researchers

specially the system to have a certain reports based on the data collected by the

system. Using of this algorithm all of the disease’s information will be compiled

and will be clustered. The K-means clustering aiming to group item into K cluster

such that all items in the same cluster are similar to each other. The distance

measure was used to calculate similarity and dissimilarity. Centroid is the most

important idea of K-means, every cluster has a centroid which considered as the

representative of a cluster.

This article also focuses the k-means clustering study, in this case, the

researchers can have a knowledge and understanding regarding the study. They

19
can also use this as guide while testing the study so in the end they can get the

best result.

Benchmarking Analysis

This research and study undertaken is to prove and identify which is the

best performance levels and using the information as a bass the strategies and

implementation of this study.

Table 2. Comparison of modified K-means to other study

Criteria An Analysis of modified File Transfer Protocol


K-means Algorithm in a Performance Study
Wireless Environment

File transfer server 2GB RAM 8GB RAM


(RAM requirement)

Network Connectivity WLAN & LAN LAN

Code complexity Yes No

Time complexity Yes No


This benchmarking helps the researchers to compare the study of

modified K-means Algorithm from another existing study which is the File

Transfer Protocol Performance. First the researchers compared the RAM

required for the server. On the researchers study only needs 2GB RAM to run

the server unlike from other study it requires 8GB of RAM to run and start the

server. In terms of Network Connectivity, there are 2 types of Network may apply

or use its either WLAN or LAN compared to other study it is only applicable to

LAN connectivity. The researchers also studied the complexity of their codes

20
unlike to other study there is none. Lastly, the researchers also identified the time

complexity unlike to other study, time complexity is not applicable.

21
CHAPTER 3

THEORETICAL FRAMEWORK

This chapter shows the testing procedures and sequence of a project

development. It includes the Algorithm development, Mathematical computation,

Test setup, Test Definition, Flowchart figures, Experimenting Analysis, Algorithm

Testing Specifications and swimlane diagram. Development procedures and

viewpoints on how the analysis of modified k-means algorithm in a wireless

environment will work and evaluated by the researchers.

Research Methodology

Clustering
Feature Algorithm Design
Selection or Selection

Data Samples
DATASAMP

Result Cluster
Interpretation Validation

KNOWLED
Knowledge

Figure 2. Clustering Procedure

22
In the proposed concept, clustering based security framework will be

implemented. The activity of clustering task is done in the following steps. In

Feature selection, different clustering methods are listed so that the researchers

will be able to choose the best clustering methods that are defined. Pattern

Definition will define the properties of individual patterns. Grouping means

clustering, making clusters in a way such that similar data objects are placed in

same cluster and dissimilar data objects are placed in different cluster.

Information Abstraction, the useful information can be easily occupied from the

above step is Clustering. Now, the desired information can be extracted in an

arranged manner.

a. Algorithm Development

K-means clustering is used to partition number of objects into a specified

clusters in which each object belongs to the cluster with nearest mean. This

process is commonly used in data mining.

For example, there is a set of data where each set of data has a set of

features, but has no labels. Labels are important in order to predict the given

features of each data sets. The most straightforward task to perform on a data

set that has no label is to find group of data which are similar to one another

which is called clusters.

K-means in one of the most popular clustering algorithms. K-means stores

k centroids in order to define clusters. In order to consider if a point is in

23
particular cluster, a point should be closer to a specific centroid of a cluster than

any other centroid.

The researchers applied an existing modified K-means algorithm to one of

the module of UMak Multi Remote Control App which is the File Transfer module.

The researchers studied and found out that using a modified K-means

algorithm, data accuracy and speed is preserved in transfering data in a wireless

environment.

The researchers followed a specific steps to perform a modified way of

clustering. First step is feature selection where the number of patterns available

is the same as the number of clustering algorithm exist so the best one can be

chosen. Next is Pattern Definition, this defines the properties of individual

pattern. The next step is Grouping, or making clusters in a way that similar data

objects are placed in the same cluster while dissimilar data objects are placed in

different cluster. Lastly is Information Abstraction where the desired information

can be extracted in an arranged manner.

With this, a modified k-means clustering is performed that based on the

alphanumeric data and number of clusters. The performance of the algorithm is

evaluated on the basis of the number of clusters and time parameters.

b. Mathematical / Computational Model

There is an open source analyzer which can test the complexity of the

code. Best example of this is Lizard code complexity analyzer, an open source

tool where the researchers just simply input the codes and it will automatically

24
generate an output of the complexity of the code. By the help of Lizard code

complexity analyzer, the researchers can easily generate a tabular output

indicating NLOC, Complexity, number of Token and number of Parameter.

Table 3. Code complexity result of File Download Fragment

Code analyzed Successfully

Function Name NLOC Complexity Token # Parameter #

FileDownloadFragment 2 1 5 0

Table 3 shows the result given by an online source tool named Lizard. The

researchers were able to get number of lines of code or NLOC, the number of

token and the number of parameters and most specially the complexity of the

codes which the researchers are aiming to acquire. The researchers also did a

manual computation to check if the result is correct using cyclomatic complexity

of each function of the program. By the help of an online tool named Code2flow

where the researchers simply input a specific lines of code, the website will

automatically generate a flowchart, then after that the researchers proceed with

the cyclomatic complexity computation. The result was used for the cyclomatic

computation wherein the NLOC or Number lines of complexity serves as nodes.

25
Figure 3. Flowchart of File Download Fragment

Shown in the Figure 3 is the flowchart of File Download Fragment. Using

the flowchart generated by Code2Flow, the researchers can easily compute for

the cyclomatic complexity.

The formula in getting the cyclomatic complexity is:

Cyclomatic complexity = E - N + 2*P

where,

E = number of edges in the flow graph.

N = number of nodes in the flow graph.

P = number of nodes that have exit points

26
In figure 3, there are 5 edges, 2 nodes and 1 node that have

exit point. So the computation will be:

CC = 5 - 2 + 2*1

CC = 3 +2

CC = 5

Using the gathered data from the Lizard code complexity analyzer and

Code2flow webtool, the researchers were able to calculate the cyclomatic

complexity of the codes used for the File Transfer Module of UMak Multi-remote

control App. Given that the variable E is equals to the number of edges in the

flow graph, N is equals to the number of nodes in the flow graph and P is equals

to the number of nodes that have exit points. After generating the results online,

the researchers were able to gather the following value for E that is equals to 5,

N is 2 and P is 1. The researchers acquired a result of complexity number 5 by

using the formula of CC=E-N+2*P. According to www.guru99.com, complexity

number ranges from 1 to 10 is a structured and well written code, high testability,

cost and lesser effort. These results will be the basis of the researcher's

evaluation later on.

27
Table 4. Code complexity result of File Transfer Fragment

Code analyzed Successfully

Function Name NLOC Complexity Token # Parameter #

FileTransferFragment 2 1 5 0

Table 4 shows the result given by an online source tool named Lizard. The

researchers were able to get number of lines of code or NLOC, the number of

token and the number of parameters and most specially the complexity of the

codes. Same as the first testing performed on the first figure, the researchers

also did a manual computation to check if the result is correct using cyclomatic

complexity of each function of the codes. By the help of an online tool named

Code2flow where the researchers just simply input the specific code then

Code2flow will automatically give a flowchart output, then after that the

researchers proceed with the cyclomatic complexity computation. The result was

used for the cyclomatic computation wherein the NLOC or Number lines of

complexity serves as nodes.

28
Figure 4. Flowchart of File Transfer Fragment

Shown in the Figure 5 is the flowchart of File Download Fragment. Using

the flowchart generated by Code2Flow, the researchers can easily compute for

the cyclomatic complexity manually

The formula in getting the cyclomatic complexity is:

Cyclomatic complexity = E - N + 2*P

29
where,

E = number of edges in the flow graph.

N = number of nodes in the flow graph.

P = number of nodes that have exit points

In figure 4, there are 8 edges, 2 nodes and 1 node that have

exit point. So the computation will be:

CC = 8 - 2+ 2*1

CC = 6 +2

CC = 8

This is a computation using cyclomatic complexity formula. Where the

given data came from the given result of Lizard and Code2flow tool website. 8

represents the number of edges, 2 represents the nodes and 1 is the exit point.

From the computation above the cyclomatic complexity result was 8. Based on

the website www.guru99.com once the result is within 1-10 the codes are

Structured and well written, High Testability and Cost and Effort is less.

30
c. Experimental Analysis

i. Test Setup

The researchers setup the software and hardware which serves as the

environment needed for the testing of different test cases. In terms of software

requirements, the android version must be Kitkat to Nougat Operating System

with at least 2gb RAM so the user can install the application. In terms of

pc/computer that will serves as server of the application, Pentium processor, 1gb

of RAM and integrated graphics card is enough because the server does not

require high specification computer for it to run.

Table 5.Algorithm Testing Specifications

SPECS HUAWEI LENOVO SAMSUNG ASUS Nokia

Device Type Mobile Mobile Mobile Mobile Mobile


Phone Phone Phone Phone Phone

Model Name Huawei P9 Lenovo Samsung Zenfone 3 Nokia 5


Lite A5000 Galaxy S3 Laser

OS Android 6.0 Android Android Android Android 7.1.1


(Marshmallo 4.4.2 4.1.1 (Jelly 6.0.1 (Nougat),
w), (KitKat), Bean), 4.3 (Marshmallo planned
upgradable upgradable (Jelly w), upgrade to
to 7.0 to 5.0.2 Bean), upgradable Android 8.0
(Nougat) (Lollipop) upgradable to 7.1.1 (Oreo)
to 4.4.4 (Nougat)
(KitKat)

Dimensions 146.8 x 72.6 140 x 71.4 136.6 x 149 x 76 x 149.7 x 72.5


x 7.5 mm x 10 mm 70.6 x 8.6 7.9 mm (5.87 x 8 mm (5.89
(5.78 x 2.86 (5.51 x mm (5.38 x x 2.99 x 0.31 x 2.85 x 0.31
x 0.30 in) 2.81 x 0.39 2.78 x 0.34 in) in)
in) in)

Physical Size 5.2 inches, 5.0 inches, 4.8 inches, 5.5 inches, 5.2 inches,
74.5 cm2 68.9 cm2 63.5 cm2 83.4 cm2 74.5 cm2

31
(~69.9% (~68.9% (~65.9% (~73.6% (~68.7%
screen-to- screen-to- screen-to- screen-to- screen-to-
body ratio) body ratio) body ratio) body ratio) body ratio)

Processor HiSilicon Mediatek Exynos Qualcomm Qualcomm


Speed Kirin 650 MT6582 4412 Quad MSM8937 MSM8937
Snapdragon Snapdragon
430 430

Processor Octa-core Quad-core Quad-core Octa-core Octa-core


Type (4x2.0 GHz 1.3 GHz 1.4 GHz 1.4 GHz 1.4 GHz
Cortex-A53 Cortex-A7 Cortex-A9 Cortex-A53 Cortex-A53
& 4x1.7 GHz
Cortex-A53)

RAM 2/3 GB RAM 1 GB RAM 2 GB RAM 2 GB RAM 2/3 GB RAM

Resolution 1080 x 1920 720 x 1280 720 x 1280 1080 x 1920 720 x 1280
pixels, 16:9 pixels, 16:9 pixels, 16:9 pixels, 16:9 pixels, 16:9
ratio (~424 ratio (~294 ratio (~306 ratio (~401 ratio (~282
ppi density) ppi density) ppi density) ppi density) ppi density)

Internal 16 GB 8 GB, 16 GB 64 GB 16 GB
Storage

Bluetooth 4.1, A2DP, 4.0, A2DP 4.0, A2DP, 4.2, A2DP, 4.1, A2DP,
LE EDR, aptX EDR, LE LE

Wifi Wi-Fi 802.11 Wi-Fi Wi-Fi Wi-Fi 802.11 Wi-Fi 802.11


b/g/n, WiFi 802.11 802.11 b/g/n, Wi-Fi b/g/n,
Direct, b/g/n, a/b/g/n, Direct, hotspot
hotspot hotspot dual-band, hotspot
Wi-Fi
Direct,
DLNA,
hotspot

Table 5 shows the specifications of android phones where the host

application was tested. This also shows that the application was successfully

tested on different Mobile Phones with Android version from Kitkat to Nougat OS.

32
Table 6. Key Persons and their Roles on Testing

Key Person Role

1. Al John T. Aguero Data Gathering, Documenting the test result,


Device Setup (Android Phone)

2. Jerry Boy Q. Santos Device Setup (Windows PC), Recording the test
result

3. Eric A. Vergara Testing the application (Windows PC and Android


Mobile Phone)
Executing and Analyzing Test Results

Table 6 shows the key persons and each roles on test setup. Key person

1 was assigned in gathering data, documenting the test and setting-up the

android phone. Key person 2 was assigned in taking down notes especially the

result of testing and also setting-up the windows PC. The key person 3 was

assigned in installing and preparing the software program in windows pc which is

the client server and the host android mobile phone and analyzing the test

results.

33
ii. Testing Procedure

Table 7. Swimlane Diagram of Test Scenario Workflow

The test starts by setting up the network and the devices needed in testing

procedure. The testing environment in which contains a laptop and an android

phone. In terms of specification, android phone must at least running in Kitkat to

Nougat version of Operating System and has a 2gb of RAM. With the use of

Android studio, where the researchers used to developed the application, it has a

built-in tools that can be used, making the testing automated. Since the testing is

automated, it is expected that all the outputs generated will be recorded up to the

smallest milliseconds.

Researchers also tested software in different android phones to clearly

see the difference in results between different devices and by the use of wireless

network. After all the process, researchers recorded the given data of testing

procedure and analyzed the result.

34
CHAPTER 4

This chapter shows the Evaluation metrics used by the researchers on the

study. Evaluation results, together with the graph based on the testing procedure

that the researchers have done and Analysis and Synthesis.

Evaluation Metrics

a. Accuracy

Using this metric the researchers will be able to identify if the

transferred data is accurate from what is really transferred by the

user. The researchers test the accuracy by testing it several times.

But before testing it, the researchers make sure that both devices

are connected at the same network. Because the overall output will

be based on the result of testing. In the end the researchers can

easily identify if the results are reliable.

b. Code Complexity

There are free open source tools available online, which the

researchers used to test the complexity of the code, good example

of this is Lizard code complexity analyzer. This helped the

researchers to analyze the complexity of the codes easily. It also

gives an analyzed output directly. First the researchers tested the

complexity of the code of File Upload (Transferring file from Phone

35
to Computer) the computation below was the actual computation of

file transfer.

Cyclomatic complexity = E - N + 2*P

where,

E = number of edges in the flow graph.

N = number of nodes in the flow graph.

P = number of nodes that have exit points

In figure 4, there are 8 edges, 2 nodes and 1 node that have

exit point. So the computation will be:

CC = 8 - 2+ 2*1

CC = 6 +2

CC = 8

The result was 8, which means the code is well written, high

testability, cost and effort is less. based on the corresponding

meaning of complexity number given by website named guru99. It

was stated there that once the result is between 1-10 the code is

well written, high testability, and cost and effort is less.

After testing the complexity of the code for file transfer, researchers

tested the code complexity of File download using cyclomatic

complexity. the computation below was the actual computation of

file download (Transferring file from computer to phone).

36
Cyclomatic complexity = E - N + 2*P

where,

E = number of edges in the flow graph.

N = number of nodes in the flow graph.

P = number of nodes that have exit points

In figure 3, there are 5 edges, 2 nodes and 1 node that have

exit point. So the computation will be:

CC = 5 - 2 + 2*1

CC = 3 +2

CC = 5

The result was 5, which means the codes is well written,

high testability, cost and effort is less. based on the corresponding

meaning of complexity number given by website named guru99. It

was stated there that once the result is between 1-10 the code is

well written, high testability, and cost and effort is less.

c. Time Complexity

This metrics gives the actual time length of testing. This

focuses on the process and output given by testing. The

researchers setup the devices and inputted the data required. The

researchers tested it by sending file from a specified distance and it

37
produced a desirable output. The file was transferred on a desirable

speed depending on the type of file, size and specification of the

device. Based on the testing procedure, the researchers tested

different phones in order have a point of comparison. For Lenovo

A5000 the speed of transferring file was 3.83 seconds, Zenfone 3

Laser was 2.60 seconds, Samsung Galaxy S3 was 2.11 seconds,

Nokia 5 was 1.52 seconds and lastly Huawei P9 Lite got 1.07

seconds. The overall result was PASSED because of not having

more than 5 seconds of transferring file.

38
Evaluation Results

Time Complexity Result:

Figure 5. Result of Testing the Time Complexity/Speed

This figure showed the testing result for time complexity. Wherein the

researchers check the time using different android phones. For Lenovo A5000

got 3.83 sec. For Zenfone 3 laser it has 2.60 sec., for Samsung galaxy S3 it has

2.11 sec., for Nokia 5 it has 1.52 sec., lastly for Huawei P9 it has 1.07 sec. Based

on the output. Time would not exceed to 4 sec. The maximum time was 3.83

seconds.

39
Table 8. The Equivalent result of Time of Android Phone

Android Phone Result

Lenovo A500 passed

Zenfone 3 Laser passed

Samsung Galaxy S3 passed

Nokia 5 passed

Huawei P9 Lite passed

The table above shows the equivalent result of every phone tested by the

researchers. All of those are PASSED because of not having more than 5

seconds in transferring a file.

Code complexity:

This result was based on the computation done using cyclomatic

complexity. The researchers computed the code complexity of File Upload and

File Download.

For File Upload:

Cyclomatic complexity = E - N + 2*P

where,

E = number of edges in the flow graph.

N = number of nodes in the flow graph.

40
P = number of nodes that have exit points

In figure 4, there are 8 edges, 2 nodes and 1 node that have

exit point. So the computation will be:

CC = 8 - 2+ 2*1

CC = 6 +2

CC = 8

For File Download:

Cyclomatic complexity = E - N + 2*P

where,

E = number of edges in the flow graph.

N = number of nodes in the flow graph.

P = number of nodes that have exit points

In figure 3, there are 5 edges, 2 nodes and 1 node that have

exit point. So the computation will be:

CC = 5 - 2 + 2*1

CC = 3 +2

CC = 5

41
Figure 6. Graph result of code complexity

Figure 6 shows the result of the computation for code complexity by the

used of cyclomatic complexity computation. For file upload it has a result of 8

which means that the code is well written code, High Testability and Cost and

Effort is less. Same with file download, which has a result of 5.

42
Table 8. Corresponding meaning of complexity numbers

Complexity Number Meaning

1-10 Structured and well written code

High Testability

Cost and Effort is less

10-20 Complex Code

Medium Testability

Cost and effort is Medium

20-40 Very complex Code

Low Testability

Cost and Effort are high

>40 Not at all testable

Very high Cost and Effort

The following are the corresponding meaning of complexity number based

on the website guru99. Through this the researchers can easily identify if the

codes are complex. The first testing which was getting the code complexity of

File download. This test gave a result of 5 which means the complexity of the

codes is well written, high testability, and cost and effort is less. The next testing

was for the File Transfer Fragment of file upload where the result was 8 which

43
means the complexity of the codes is well written, high testability, and cost and

effort is less. Because as long as the result is within 1-10 the code is high

testability, cost and effort less. For accuracy the researchers testing it by sending

file and what is supposedly sent was accurate from what the computer received

and vice versa. For time complexity, the code was compatible from other devices

because it was working very well based on the result during testing procedure.

Analysis and Synthesis

After getting all the result through testing, the researchers found out that

the complexity of their codes has minimal risk by getting 5 and 8 output. Based

on the table shown on the evaluation result. Having a result between 1-10

meaning that the codes are high testability, cost and effort is less. For time

complexity the researchers tested by simply transferring file using different

phones. And the result is by having not more than 5 seconds of file transferring it

really depend on the wireless connectivity, hindrances during testing, device

specification and file size. In terms of accuracy, researchers found out that the

result was accurate because of the result acquired. The file transferred was

accurate from what the receiving device. The code was compatible from other

devices because it is working very well based on the result during testing

procedure.

44
Chapter 5

SUMMARY OF FINDINGS, CONCLUSIONS AND RECOMMENDATIONS

This chapter presents the summary of findings, the conclusions derived

from the development and analysis of the evaluation results, and the

recommendation gathered from the respondents and other sources.

SUMMARY OF FINDINGS

On the basis of the tests and evaluation conducted by the study of the

topic of An Analysis of Modified K-means Algorithm in a Wireless Environment

CONCLUSIONS

1. The researchers concluded that transfering files in a wireless environment

using Modified K-means Algorithm is accurate.

2. After series of testing using Cyclomatic Complexity the researchers

concluded that it is fast to transfer a file in a wireless environment using

Modified K-means algorithm.

The researchers came up with this conclusion because of the different

testing procedure that they have done. With the help of some sources available

in the internet, the testing procedure became easier for them.

RECOMMENDATIONS

45
Based on the conclusions derived from the study, the following

recommendations are:

1. The future researchers can enhance the scope of the study by

providing latest algorithm method of a technology.

2. The researchers recommend to the future researchers to add features

such as enhancement of the data transferring process and or methods

by using the same algorithm.

3. The future researchers may continue this study and can use other

testing methods available to prove the efficiency of the modified K-

means on file transfer via wireless environment.

4. The future researchers may also try a different algorithm for File

Transfer in a wireless environment that can be proven as an

improvement other than the modified K-means.

The researchers would like to prove more the efficiency, accuracy and

speed in terms of performance of the chosen study with the help of the future

researchers together with other algorithm, method, procedure and metrics that

may apply for the study.

46
47

S-ar putea să vă placă și