BACTFINDER APPLICATION USING MOBILE APPLICATION
Transcript of BACTFINDER APPLICATION USING MOBILE APPLICATION
BACTFINDER APPLICATION
USING MOBILE APPLICATION
MOHAMMAD KHAIRUL ASYRAF BIN RIDZUAN
BACHELOR OF COMPUTER SCIENCE
(INTERNET COMPUTING)
FACULTY OF INFORMATICS AND COMPUTING
UNIVERSITY SULTAN ZAINAL ABIDIN
2018
BACTFINDER APPLICATION USING MOBILE APPLICATION
MOHAMMAD KHAIRUL ASYRAF BIN RIDZUAN
Bachelor of Computer Science (Internet Computing)
Faculty of Informatics and Computing
Universiti Sultan Zainal Abidin, Terengganu, Malaysia
AUGUST 2018
i
APPROVAL
This project report entitled BactFinder Application Using Mobile Application prepared
and submitted by Mohammad Khairul Asyraf Bin Ridzuan, matric number
BTCL15040318 and in my point of view, this project fulfils a condition to be awarded a
Bachelor of Computer Science (Internet Computing) with Honor in Universiti Sultan
Zainal Abidin (UniSZA).
Signature:
______________________
Supervisor: Encik Mohd Kamir Bin Yusof
Date:
ii
DECLARATION
I at this moment declare that this report is based on my original work except for
quotations and citations, which have been duly acknowledged. I also declare that it has
not been previously or concurrently submitted for any other degree at Universiti Sultan
Zainal Abidin or other institutions.
Signature:
______________________
Name: Mohammad Khairul Asyraf Bin Ridzuan
Date:
iii
ACKNOWLEDGEMENT
In the name of Allah, the Most Gracious and the Most Merciful, all praise is only for
Him the documentation and the system for the subject, CSB35102, Projek Ilmiah
2017/2018 is finished due the time. Never forget to my kind supervisor, Encik Mohd
Kamir Bin Yusof for the valuable idea, time, support, advice, guidance, and ideas given
through the development of research until complete the part of the project in phase one.
Also, I want to dedicate my appreciation to my beloved family that supports and
motivates me during process finishing project. Next, thanks a lot to friends that willing
to lend their hand for finishing the project. Lastly, thank you to everyone who directly
or indirectly involved in the process of making the system and documentation.
iv
ABSTRACT
As widely known, bacteria constitute a large domain of prokaryotic
microorganism. There are many methods for identifying bacteria. Traditionally an
observational and biochemical approach has been used. Simply looking at (and even
smelling) a bacterial colony growing on an agar plate can give an experienced
researcher clues to a bacterium's identity. This is because different bacteria have their
unique enzymes which are capable of different biochemical reactions.
Identification of bacteria is a systematic process that uses different techniques to
narrow down the types of bacteria that are present in bacterial culture. BactFinder is
developed which is consist of 19 types of biochemical tests including bacteria
morphology for the identification of bacteria. Databases are created based on Bergey’s
Manual of Systematic Bacteriology and related scientific journals.
BactFinder provide automaticsearching process of bacteria based on bacteria
morpholog characteristics. Another function in BactFinder is to test the functionality of
application among the user. Technologies being used in this project are Android Studio
version 2.3.1 , Cloud MyFIK which acts as server and languange that been used which
is HTML,PHP and Java. By the end of this study, it is expected that the developed
application can assist the student to get the correct result and also check the probabilty
or most data accuracy from the result and also can give a lot of benefits to the student
in order to save their time without wasting it by search on the book.
v
ABSTRAK
Seperti diketahui secara meluas, bakteria merupakan domain mikroorganisme
prokariotik yang besar. Terdapat banyak kaedah untuk mengenal pasti bakteria.
Secara tradisional pendekatan pemerhatian dan biokimia telah digunakan. Hanya
melihat (dan juga berbau) koloni bakteria yang bertumbuh di pinggan agar dapat
memberikan petunjuk penyelidik yang berpengalaman untuk identiti bakteria. Ini
kerana bakteria berbeza mempunyai enzim unik mereka yang mampu menghasilkan
tindak balas biokimia yang berbeza. Oleh itu, cara pengenalan bakteria adalah
membosankan dan memakan masa. Pengenalpastian bakteria adalah proses sistematik
yang menggunakan teknik yang berbeza untuk mempersempit jenis bakteria yang ada
dalam budaya bakteria. Permohonan ini terdiri daripada 19 jenis ujian biokimia
termasuk morfologi bakteria untuk mengenal pasti bakteria. Pangkalan data dibuat
berasaskan “Bergey’s Manual of Systematic Bacteriology” dan jurnal saintifik yang
berkaitan. Objektif kajian ini adalah untuk merekabentuk proses pencarian bakteria
manual ke sistem komputerisasi dan untuk membangunkan alat makmal yang inovatif
dan interaktif bagi pengenalan bakteria berdasarkan ujian biokimia dan pencirian
morfologi bakteria. Terakhir, objektif aplikasi ini juga adalah untuk menguji fungsi
aplikasi di kalangan pengguna. Teknologi yang digunakan dalam projek ini adalah
Android Studio versi 2.3.1, Cloud MyFIK yang berfungsi sebagai “server” dan bahasa
yang digunakan adalah HTML, PHP dan Java. Menjelang akhir kajian ini, diharapkan
aplikasi yang dibangunkan dapat membantu pelajar untuk mendapatkan hasil yang
betul dan juga memeriksa ketepatan atau ketepatan data yang paling tepat dari
hasilnya dan juga dapat memberi banyak manfaat kepada siswa untuk menyelamatkan
masa mereka tanpa membuangnya dengan mencari buku...
CONTENTS
vi
PAGE
APPROVAL i
DECLARATION
ACKNOWLEDGEMENT
ii
iii
ABSTRACT iv
ABSTRAK v
CONTENTS vi-vii
LIST OF TABLES viii
LIST OF FIGURES ix
LIST OF ABBREVIATIONS
LIST OF APPENDICES
x
xi
CHAPTER I
INTRODUCTION
1.1 Background 1
1.2 Problem statement 2
1.3 Objectives 3
1.4
1.5
Scopes
Expected Result
3
4
1.6 Project Structre / Organisation 4
CHAPTER II LITERATURE REVIEW
2.1 Introduction 5
2.2 Biochemical Reaction Test 6
2.3 Information System 7
2.4 Mobile Computing 8
2.4.1 Android Operating System 8
2.5 Existing Application And System 9
2.5.1 ABIS Online 9
2.5.2 IDENTAX Bacterial Identification 10
2.5.3 Ori-Finder 10
2.6 Similarities With Bactfinder Application 11-12
2.7 Chapter Summary 13
CHAPTER III
METHODOLOGY
3.1 Introduction 14
vii
3.2 Mobile Application Development Life Cycle 15
3.2.1 Identification Phase 16
3.2.2 Design Phase 16
3.2.3 Development Phase 17
3.2.4 Prototyping Phase 17
3.2.5 Testing Phase 18
3.2.6 Deployment Phase 18
3.2.7 Maintenance Phase 19
3.3 Hardware and Software Requirement 19
3.3.1 Hardware 20
3.3.2 Software 21
3.4 Process Model 22
3.4.1 Context Diagram 22
3.4.2 Data Flow Diagram 23-24
3.4.3 Entity Relationship Diagram 25
3.4.5 Data Dictionary 26
3.4.6 Database Design 27-28
3.5 Framework 29
3.6 Gantt Chart 30
3.7 Chapter Summary 31
CHAPTER IV IMPLEMENTATION AND RESULT
4.1 Introduction 32
4.2 Interfaces 33-43
4.3 Testing And Result 44
4.3.1 Introduction 44
4.3.2 Testing Analysis 44
4.3.3 Black Box Testing 45
4.3.4 White Box Testing 45
4.4 Test Result And Analysis 46-47
4.4.1 Test Cases 48-49
4.5 Results 50
4.6 Summary 51
CHAPTER V CONCLUSION AND DISCUSSION
5.1 Conclusion 52
5.2 Project Contribution 53
5.3 System Constraints 54
5.4 Suggestion for Improvement 55
5.5 Summary 56
REFERENCES 57-58
LIST OF TABLES
TABLE TITLE PAGE
3.1 Table of Data Dictionary 26
3.2 Table of User 27
3.3 Table of Admin 27
3.4 Table of Bacteria 28
3.5 Table of Gantt Chart 30
4.1 Test Case for Successful of open the Application. 48
4.2 Test Case for Unsuccessful of open the Application. 48
4.3 Test Case for Successful of Login for Student 49
4.4 Test Case for Successful of Login for Admin 49
LIST OF FIGURES
FIGURE TITLE PAGE
3.1 Mobile Application Development Life Cycle 15
3.2 Context Diagram 22
3.3 Data Flow DIagram (Level 0) 23
3.4 Data Flow DIagram (Level 1) 24
3.5 Entity Relationship Diagram (ERD) 25
3.6 Framework 29
4.1 First and Second Interface of the BactFinder Application 33
4.2 Login and Register interface for student site 34
4.3 Chatting interface for student site 35
4.4 Searching interface for student site. 36
4.5 Result interface for student site. 37
4.6 Result interface for student site 38
4.7 Predict interface for student site. 39
4.8 Login interface for admin site. 40
4.9 Chat interface for admin site. 41
4.10 Save and Retrieve interface for admin site. 42
4.11 Single Selected and Update for admin site. 43
4.12 The Login process for admin 46
4.13 The Login process for student. 47
LIST OF ABBREVIATIONS / TERMS / SYMBOLS
CD Context Diagram
DFD Data Flow Diagram
ERD Entity Relationship Diagram
FYP Final year project
MADLC Mobile Application Development Life Cycle
1
CHAPTER I
INTRODUCTION
1.1 Background
BactFinder Application is an interactive mobile application designed to facilitate
bacteria identification based on biochemical tests and bacteria morphology. As widely
known, bacteria constitute a large domain of prokaryotic microorganism. There are many
methods for identifying bacteria. Traditionally an observational and biochemical
approach has been used. Simply looking at (and even smelling) a bacterial colony
growing on an agar plate can give an experienced researcher clues to a bacterium's
identity. This is because different bacteria have their unique enzymes which are capable
of different biochemical reactions. Thus , classical way of bacteria identification are
tedious and time consuming. Identification of bacteria is a systematic process that uses
different techniques to narrow down the types of bacteria that are present in bacterial
culture. This application consist of 19 types of biochemical tests including bacteria
morphology for the identification of bacteria. Databases are created based on Bergey’s
Manual of Systematic Bacteriology and related scientific journals.
2
1.2 Problem Statement
There is some problem statement can identify in the issue from student to find the
bacteria’s result. Firstly , students can lead to inaccurate information because of the
manual searching. This is because manual searching of bacterial identification rely on
phenotypic identification of the causative organism using gram staining, culture and
biochemical methods and so on. However, these methods of bacterial identification suffer
from two major drawbacks. First, they can be used only for organisms that can be
cultivated in vitro. Second, some strains exhibit unique biochemical characteristics that
do not fit into patterns that have been used as a characteristic of any known genus and
species.
Secondly , student need to use a lot of time in order to search the bacteria. This is
because identifying bacteria is a complex process. This is partially because there are so
many types of bacteria. Some research found that the estimates of the number of
bacteria’s species range from around 10,000 to over a billion. There are too many
microorganisms to remember therefore student need to be separated into groups with
similar features which will make long time to be consume in order to separate the
bacteria’s species.
3
1.3 Objectives
1. To design a manual searching process of bacteria to a computerized system.
2. To develop an innovative and interactive laboratory tools for bacterial identification
based on biochemical tests and bacteria morpholog characterization.
3. To test the functionality of BactFinder Application among student
1.4 Scope
The scope of this study is divided into 2 :
1. User - Student
The application requires user to register their information details in order to use the
application.
The user can search the bacteria by putting the result which they get from their
experiment.
The user can view the bacteria that they get from the result
The user also can search the predicted data by putting some of the result
2. Admin - Lecturer
The admin can create a new bacteria in the database
The admin can update new information in the existing data
The admin can view the data in the system
The admin can delete the data in the system
4
1.5 Expected Result
The expected result of the BactFinder Application after completing the development
is user can get the bacteria that they want. At the same time , the user demand’s which is
user friendly and innovative technology to facilitate quick prediction analysis in
laboratory will accomplished. These result represented to achieve the objective of the
project which is to design a manual searching process of bacteria to a computerized
system and also to develop an innovative and interactive laboratory tools for bacterial
identification based on biochemical tests and bacteria morpholog characterization.
Furthermore, the result that will be expected after finish project development is the
application will assist the user to solve problem by saving the student’s time to search for
certain data and also give to students the correct answer.
1.6 Project Structure / Organisation
This report consists of five chapters. Chapter 1 consists of project introduction,
problem statements, objectives, scopes, limitation of work and thesis structure. Next, in
Chapter 2, that is literature review which discuss the technique and theory that have been
carried out by another researcher. In Chapter 3 is methodology that discuss the method or
technique used in this project. At this Chapter it also shows the design and framework in
detail of the development project. Chapter 4 is the development of the project and the
report of testing that had been done to the development system. Chapter 5 is the
conclusion of the overall project followed by references.
5
CHAPTER II
LITERATURE REVIEW
2.1 Introduction
Literature review means searching, collecting and analyzing any issues related from
previous journal or research paper. The information that has been gathered is about what
method and what contributions that the research has been achieved in improving the uses
of the application. While project methodology is the approach and technique used to
complete project. This chapter will be discussing the report analyzing the fact finding and
the approach and techniques that are going to be used in completing the BactFinder
Application project. The fact and finding are being analyzed by identifying the current
situation and available resources.
6
2.2 Biochemical Reaction Test
Based on Atlas of Oral Microbiology , biochemical tests are among the most
important methods for microbial identification. Routine biochemical tests include tests
for carbohydrate fermentation ,methyl red , citric acid utilization , and hydrogen sulfide
production .
Microbial biochemistry tests shorten the time required to identify microbes, reduce
costs, and ensure or enhance the accuracy of identification of an unknown sample. It is
the fastest developing trend in microbial identification. In recent years, the rapid
commercial test kits for anaerobic bacteria have become available.
Based on T.L. Pitt, M.R. Barer, in Medical Microbiology (Eighteenth Edition),
biochemical test reactions that are not universally positive or negative within a species
may define biotypes of the species, and these may be efficient strain markers. In practice
biotyping is often less discriminatory than other strain typing methods and may be
unstable because of loss of the property. Differences among strains may also be detected
by variations in sensitivity to fixed concentrations of chemicals such as heavy metals, a
process known as resistotyping. The nutritional requirements of the isolate (amino acids)
for growth may also be used to define the auxotype of an isolate.
Based on Samiksha S , Biochemical tests are the tests used for the identification of
bacteria species based on the differences in the biochemical activities of different
bacteria. Bacterial physiology differs from one species to the other.
These differences in carbohydrate metabolism, protein metabolism, fat metabolism,
production of certain enzymes, ability to utilize a particular compound etc. help them to
be identified by the biochemical tests.
7
Therefore, ultimately, the identification of bacteria is mostly based on the differences
in their biochemical activities. A list of some of the most commonly used biochemical
tests performed for the identification of bacteria
So , this method of taking its characteristic are proven to be time consuming for
students to search the bacteria. So, to solve this problem understanding of existing project
is a must to determine the best way to develop the project.
8
2.3 Information System
Based on kroenke, David , Information Systems is the expression used to describe an
Automated System (which may be referred to as a Computerized Information System), be
it manual, which covers people, machines or organized methods to collect, process,
transmit and disseminate data representing information for the user or client.
Based on Vladimir Zwass , Information system, an integrated set of components for
collecting, storing, and processing data and for providing information, knowledge, and
digital products. Information systems are used to run interorganizational supply chains
and electronic markets.
Based on Felix Naumann, Dennis Shasha, Gottfried Vossen, Information systems are
the software and hardware systems that support data-intensive applications.
Thus, BactFinder Apps using Mobile Application will be using information system
as a backbone of a bacteria to the user. All the information gathering, work,
communication, and information technology are involved in the development of the
application. BactFinder Apps using Mobile Application use information system to
provide information to the user about the type of bacteria that the user looking for.
BactFinder Apps using Mobile Application will be providing the valuable information of
the bacteria such as the image of the bacteria , the details of the bacteria and the
characteristic of the bacteria to the user as a main purpose of the development. The
information system is the best choice to be used in the development of the application .
Back to the definition of information system , data play an important role in
organization and must be stored, managed, and process the information. So with the
provided questionnaire in the application, can help the user gain information from it.
9
2.4 Mobile Computing
Based on Margaret Rouse, Mobile computing is the set of IT technologies, products,
services, and operational strategies and procedures that enable end users to gain access
computation, information, and related resources and capabilities while mobile. Mobile
most commonly refers to access in motion and is therefore unrestricted to a given
geographic location.
Based on Antonio Regaldio, Mobile computers are spreading faster than any other
consumer technology in history. In the United States, smartphones have even begun
reaching the group of relative technophobes that consumer researchers call the “late
majority.” About half of mobile-phone users now have one.
Based on Jesper Kjeldskov , Mobile computing is a relatively new field of research
with little more than three decades of history. During its lifetime, it has expanded from
being primarily technical to now also being about usability, usefulness, and user
experience. This has led to the birth of the vibrant area of mobile interaction design at
the intersections between, among others, mobile computing, social sciences,
human-computer interaction, industrial design, and user experience design.
Thus , Mobile computing is chosen as the academic value of developing the
BactFinder Apps using Mobile Application . This is because mobile computing is
described as an application of small, portable, wireless computing and communication
devices. BactFinder Apps using Mobile Application will focuses on user, interface
design, authentication, performance, innovative application, mobile infrastructure and
system networking. The application will be focused on the security as the user need to
register as a member before they can use the application.
10
2.4.1 Android Operating Sytem
The BactFinder Apps using Mobile Application will be using Android operating
system because it is an open platform and very stable for developing the application as
many user familiar with the structure of Android operating system. This application is
suitable by using Android platform instead of other platform. The reason is because
Android's open platform has been embraced by much of the mobile development
community . Another reason why BactFinder Apps using Mobile Application will be
using Android open platform because it it surely complete, open and free. Android
platform is an open source platform to user which is it does not need to pay anything as
for the designer or user.
2.5 Existing Application And System
2.5.1 ABIS ONLINE - BACTERIAL IDENTIFICATION
Based on Regnum Prokaryotae , ABIS online is a hybrid laboratory tool for
bacterial identification which can be used in website and also mobile. It is open for
public use, but using it, still requires an user name. This will be used for printing out
the results. We are not recording personal data. Additionally, user may subscribe to
newsletter, but only if user want to receive notifications about updates via e-mail.
Identification results are purely informative and are not intended to be an official
point of view. Because of the frequent taxonomy changes some bacterial names
may not comply with the Approved Lists of Bacterial Names. The web will to keep up
with the changes and regularly update the databases.
11
2.5.2 IDENTAX BACTERIAL IDENTIFIER SYSTEM
Based on Flores, O. , L.A. Belanche, and A.R. Blanch, IDENTAX bacterial identifier is
a free program for the taxonomical identification of bacteria using phenotypical
characteristics. It is aimed at the microbiologist community, and also at any field with a
need for cheap and fast classification of unknown strains of bacteria. In order to perform
the identification process, IDENTAX uses the existing knowledge of various scientific
workgroups, wich generously yield matrices containing the prior probabilities of a taxa
set of response (in a positive or negative way) to a specific test. This software is
developed using Sun Microsystems Java technology and runs perfectly on almost all
existing operating systems. Also, it is distributed under the LGPL license, allowing free
use and modification of IDENTAX to all users.
2.5.3 ORI-FINDER SYSTEM
Based on Tianjin University BioInformatics Centre , Ori-Finder is an online system for
finding oriCs in bacterial genomes based on an integrated method comprising the
analysis of base composition asymmetry using the Z-curve method, distribution of
DnaA boxes, and the occurrence of genes frequently close to oriCs. The program can
also deal with the unannotated sequences by integrating the gene-finding program
ZCURVE 1.02. Output of the predicted results is exported to an HTML report, which
offers convenient views on the results in both graphical and tabular formats.
12
2.6 Similarities With Bactfinder Application Using Mobile Application
AUTHOR
PROJECT
NAME
DESCRIPTION
SIMILARITIES
Tianjin
University
BioInformatics
Centre
2017
Ori-Finder
System
An online system for finding oriCs in bacterial
genomes based on an integrated method comprising
the analysis of base composition asymmetry using
the Z-curve method, distribution of DnaA boxes,
and the occurrence of genes frequently close to
oriCs.
1) Using HTML and
PHP languange
2) To detect the
bacteria
13
AUTHOR
PROJECT
NAME
DESCRIPTION
SIMILARITIES
Flores, O. , L.A.
Belanche, and
A.R. Blanch.
2009
IDENTAX
Bacterial
Identification
A free program for the taxonomical identification of
bacteria using phenotypical characteristics. It is
aimed at the microbiologist community, and also at
any field with a need for cheap and fast
classification of unknown strains of bacteria
1) Using HTML and
PHP languange
2) To detect the
bacteria
Regnum
Prokaryotae
2016
ABIS Online
Mobile
Application
A hybrid laboratory tool for bacterial identification
which can be used in website and also mobile
1) Developed using
Android-Based
2) Application for
bacterial detection
14
2.7 Chapter Summary
Basically in this chapter several research have been done in order to have a deep
understanding of the method that is going to implement in proposed application.
Besides a review of related existing systems also have been done at this chapter. From
the existing system, we can have an idea of how the proposed system can be developed
so that it is functioning well and beneficial to all the user.
15
CHAPTER III
METHODOLOGY
3.1 Introduction
In this chapter, it will explain the specific details on the methodology being
used in order to develop this project. In order to make sure the project is in the right
path, methodology plays an importance role as a guide for the project complete and
working well as plan. There is different type of methodology that is used for different
type of application. It is important to choose the right and suitable methodology for
the development of an application thus it is necessary to understand the application
functionality itself. In order to ensure the effective of the MyIntern application, good
identification is required before the development process begins. By using Mobile
Application Development Life Cycle (MADLC) model, there are seven phases
involve.
16
3.2 Mobile Application Development Life Cycle (MADLC)
The phase in Mobile Application Development Life Cycle model are:
Identification Phase, Design, Development, Prototyping, Testing, Development and
Maintenance. All the methods and processes undertaken in Mobile Application
Development Life Cycle are more visible.
Figure 3.1 : The methodology used in BactFinder Application which is Mobile
Application Development Life Cycle (MADLC)
17
3.2.1 Identification Phase
In this first phase, ideas are collected and categorized. The main objective of this
phase is to come out with new idea and improvements to the current complaint
system.
The existing systems on any of the standards platforms are searched to establish
the novelty of the idea. If a similar application exists in the market, the popularity of
the application and the features supported are studied and compared. The differences
with the existing system(s) are documented. If no similar application exists in and
mobile application, then the idea with its core functionality should be documented.
The other important task in this phase is to define the time required to develop the
MyIntern application. The initial requirement gathering should also be completed.
3.2.2 Design Phase
In this phase, the idea for MyInten application is development into an initial
design of the application. The feasibility if developing the application on all mobile
platform is determined. Alternatively, the specific target mobile platform is identified
(example smartphone with Android 5.0 Lollipop (API 20)).
The application functionality is broke down into module and into prototype
i.e., combination of modules which are to be released in the prototype design. The
functional requirement is defined. For example: login, apply internship, view status,
update profile, reject internship and etc. The software architecture of the application is
created. Then the prototype and associated modules are defined. A very importance
part of the design phase is to create the storyboard for the user interface interaction:
this storyboard described flow of the application.
18
3.2.3 Development Phase
In this phase, the application is coded. Coding for different module of the same
prototype can proceed in parallel. The development process can be in two stages:
Coding for Functional Requirement and Coding for UI requirement. The code is
developed first for the core functionalities. Parallel development can be done for
module of the same prototype that are independent of each other. Subsequently, these
modules can be integrated. In the second stage, user interface is designed so that it can
be supported on as may mobile operating system platform as possible; it is not good
practice to have different look and feel the same application in different platforms.
The minimum set of interface components in all mobile OS platform should be used in
the design.
3.2.4 Prototyping Phase
In this phase, the functional requirement of each prototype is analysed; the
prototype is tested and sent to the supervisor for feedback. After feedback is received
from the supervisor, the required changes are implemented through the development
phase. When the second prototype is ready, it is integrated with the first prototype,
tested and the send to the client. The development, prototyping and testing phase are
repeated until the final prototype is ready. The final prototype is sent to the supervisor
for a final feedback.
19
3.2.5 Testing Phase
Testing is one if the most important phases of any development lifecycle model.
The testing of the prototype is performed on an Android Virtual Device or any
simulator followed by testing on the real device, for example in the case of Android
operating system development, should be performed on multiple operating system
versions, multiple models od smartphone with variable screen size.
3.2.6 Deploymentt Phase
Deployment is the final phase of the development process. After the testing is
completed and the final feedback is obtained from the supervisor, the application us
ready for the deployment. The application is uploaded to the appropriate application
store/market for user consumption. Before the application us deployed, the following
steps are to be checked.
Register as a developer on the respective application developer’s website by
paying the annual fee, if necessary, for respective OS.
Check the rules and regulations of the application store for the deployment of
an application.
Refine the application, for example, by removing all the log files and
comment.
Design the icon and wallpaper.
Create the file format required on operating system platform.
20
3.2.7 Maintenance Phase
The maintenance is the final phase of this model and this maintenance is a
continuous process. Feedback is collected from users and required changes are made
in the form of bug fixes or improvements. Appropriate security patches, performance
improvements, additional functionality, new user interface should be provided at
regular intervals in the form of updates to the application. The maintenance phase also
includes the marketing of the application: advertising and highlighting its unique
features. If any application required a backend server: this server and related operating
system must be maintained as well.
3.3 Hardware and Software Requirements
In the application development process, the requirement such as software and
hardware are the most importance requirement to ensure that all system development
work smoothly without any interruption and problem. There are several requirements
that were used to complete this project which include:
21
3.3.1 Hardware
Minimum hardware requirement needed in this development of this application are:
I. Notebook: ASUS A455L
Processor: Intel Core i5-5200U, 2.7GHz
Memory: 4GB Ram
Storage: 1TB HDD
Operating System: Windows 10 Home Single Languange
II. Android Mobile Phone: Xiaomi Redmi 4X
Used to run, deploy and testing application
Android version 5.1.1 or later.
22
3.3.2 Software
Software requirement of this project are:
1. Android Studio
This software is used to code the core program of the project. It debugs and run, tests
the application
2. Xampp for Windows
This software used to manage connection between Apache and MySQL.
3. MySQL
This software used to create system database application.
4. Java, Php
Programming Languange
5. Microsoft Word 2013
Used to do the documentation of application
6. Google Chrome
A browser to run the localhost and searching information
7. Notepad++
Used to code the program, especially connection application to database
23
3.4 Process Model
3.4.1 Context Diagram
Figure 3.2 : Context diagram of application
Figure 3.2 shows the main process of BactFinder work. There have two only
entities involved which are User and Admin. The role of admin can manage the data
about of bacteria. With this data, admin can update or delete the bacteria information.
The admin need to login to use the application. The data already inserted into the
database in back-end development.
While at the user site, the user needs to place the result from the test that been
done from their experiment. Then, the application will display the bacteria name,
bacteria information, bacteria image and summary of the selected test.
24
3.4.2 Data Flow Diagram ( Level 0 )
Figure 3.3 : Data Flow Diagram ( Level 0 ) of application
Figure 3.3 shows the flow of the user and admin in the BactFinder Application.
The application carried out 4 processes. In the user site, there are 3 process need to
carry out. The core of the application in the user site is the third process which is
Searching process. During this phase, user will place the result from the test and will
be shown the bacteria details and if user not yet do the test, so user can predict what
bacteria from the result.
While at the admin site, there are 2 process need to carry out. The core of the
application in the admin site is the second process which is Manage process.
25
3.4.3 Data Flow Diagram ( Level 1 )
Figure 3.4 : Data Flow Diagram ( Level 1 )
Figure 3.4 shows the process of BactFinder application in admin site with more detail
from Figure 3.3. This is the process of the second process in the admin site which is
Manage process. In this process, the ability of admin in this process are admin can
view the data of the bacteria, can add new bacteria data, can update the selected
bacteria data and delete the bacteria data by using the application.
26
3.4.4 Entity Relationship Diagram
Figure 3.5 : Entity Relationship Diagram
An entity-relationship diagram (ERD) of this application describe system’s entities
information and entitie’s relationship. ERD create of three features such as identifying
and defining the entities, determine entities’s interaction and the cardinality of the
relationship. Every box describes the table in database and lines is to show the
relationship.
For this application need to create three entities represented three tables into the
database. Every entity has their attributes as shown in Figure 3.5. The relationship
between of entities explain the process will carry out by that entity. This ERD also
explains the important data that need to operate the application succesfully. This
figure also the different role between admin and user in more detail.
27
3.4.5 Data Dictionary
Table 3.1 : Table of Data Dictionary
Entity Attribute Explanation Data Type Size Remark
studentinfo
name Name of user VARCHAR 1000
username Username of user VARCHAR 255 PK
password Password of user VARCHAR 1000
admininfo
name Name of admin VARCHAR 1000 FK
username Username of admin VARCHAR 255 PK
password Password of admin VARCHAR 1000
bacteriainfo
id Id of bacteria INTEGER 100 PK
name Name of bacteria VARCHAR 1000
a Test 1 VARCHAR 1000
b Test 2 VARCHAR 1000
c Test 3 VARCHAR 10
d Test 4 VARCHAR 10
e Test 5 VARCHAR 10
f Test 6 VARCHAR 10
g Test 7 VARCHAR 10
h Test 8 VARCHAR 10
i Test 9 VARCHAR 10
j Test 10 VARCHAR 10
k Test 11 VARCHAR 10
l Test 12 VARCHAR 10
m Test 13 VARCHAR 10
n Test 14 VARCHAR 10
o Test 15 VARCHAR 10
p Test 16 VARCHAR 10
q Test 17 VARCHAR 10
r Test 18 VARCHAR 10
s Test 19 VARCHAR 10
t Test 20 VARCHAR 10
info Information of
bacteria
TEXT
photo Image of bacteria VARCHAR 100
adminname Username of admin VARCHAR 100 FK
28
3.4.6 Database Design
Database stores data in a systematic way and can be accessed easily authorize the user.
There are three tables in the development of the BactFinder application. All of the tables
of database use MySQL. The list of tables as shown as below:
Table 3.2 : Table of Student
The table above shows the table in database for user in the application. The tables
consist of name, username, password. This data is used for log in in the user site.
Table 3.3 : Table of Admin
The figure above shows the table for admin in the application. The tables consist of
name, username, password. This data is used for log in in the admin site.
Name Data Length Description Key Type
Type
name varchar 1000 Name of user Null
username varchar 255 Username of user Primary Key
Password varchar 1000 Password of user Null
Name Data Length Description Key Type
Type
name varchar 1000 Name of admin Null
username varchar 255 Username of admin Primary Key
Password varchar 1000 Password of admin Null
29
Table 3.4 : Table of Bacteria
The figure above shows the table for bacteria detail in the application. The tables consist
of id, name, a, b, c, d, e, f, g, h, I, j, k, l, m, n, o, p, q, r, s, t, info, photo. This data is used
for shows to user the bacteria that they select.
Name Data Type Length Description Key Type
id integer 255 Id of bacteria Primary Key
name varchar 1000 Name of bacteria Null
a varchar 10 Test A Null
b varchar 10 Test B Null
c varchar 10 Test C Null
d varchar 10 Test D Null
e varchar 10 Test E Null
f varchar 10 Test F Null
g varchar 10 Test G Null
h varchar 10 Test H Null
i varchar 10 Test I Null
j varchar 10 Test J Null
k varchar 10 Test K Null
l varchar 10 Test L Null
m varchar 10 Test M Null
n varchar 10 Test N Null
o varchar 10 Test O Null
p varchar 10 Test P Null
q varchar 10 Test Q Null
r varchar 10 Test R Null
s varchar 10 Test S Null
t varchar 10 Test T Null
info Text null Details of Bacteria Null
photo varchar 100 Photo of Bacteria Null
adminName varchar 1000 Name of admin Foreign Key
30
3.5 Framework
Figure 3.6 : The framework design of project
User
- Student need to
register/login to the
application
- Student can search
bacteria, view image,
predict their own
bacteria
Admin
- Admin can add , update ,
delete and insert image of
bacteria
- Admin need to login to
the system
Database
- Store all bacteria data in
database from admin
31
3.6 Gantt Chart
Table 3.5 : Gantt Chart
No.
Tasks Month
2 3 4 5 6 7 8
1 Identification Phase
1.1 Problem Definition
1.2 Project Identification
1.3 Project Proposal
2 Design Phase
3.1 Process Design
3.2 Database Design
3 Development Phase
4.1 Develop database
4.2 Admin Module
4.3 User Module
4.4 Develop database route
4 Prototyping Phase
5 Testing Phase
5.1 System Test
5.2 User Test
6 Deployment Phase
7 Maintenance Phase
32
3.7 Chapter Summary
This chapter is basically discussed on the methodology and tools such as hardware
and software that are used in developing the proposed system. Besides the conceptual
design and logical design as well as the physical design of the system has been proof by
drawing the framework, context diagram (CD), data flow diagram (DFD), entity
relationship diagram (ERD) and interface of the system. Data dictionary that related to
the ERD of this system also prepared in this chapter for better understanding on the
attributes used in constructing the ERD for data storing.
33
CHAPTER IV
IMPLEMENTATION AND RESULT
4.1 Introduction
This project is implemented as an android application by using Android Studio
which is Integrated Development Environment (IDE) to help developer code, debug,
test, design and execute the main process of the project. This project also used the
Hypertext Preprocessor (PHP) language to connect program in the Android Studio to
the database of application.
The core of the project is focused on User site only. The user has functions which
are login to continue, register if do not have account, chatting with the lecturer, finding
the bacteria from the result, predict what bacteria will get. While Admin has functions
to login, create, update, delete, retrieve the bacreria data..
Testing and implementation are described to develop the system as a specific
design that discussed in the previous chapter, verified to make sure that the application
is error-free and fulfill the user requirements. This chapter should finish before the
application is complete. This chapter will cover the accurate testing the program on the
mobile application
34
4.2 Interfaces
Figure 4.1 : First and Second Interface of the BactFinder Application
When students or admin opens the application , this is the first page or homepage
of the BactFinder Application. So, students or admin need to click any buttons from
the page which is Getting Started , Refrences and Contact Us .When students or admin
click the Getting Started button, so it will proceed to pages where the student or admin
need to choose whether want to continue as student or as admin.
35
Figure 4.2 : Login and Register interface for student site
When student continue as student by clicking the Student button, so students will
be ask for the username and the password in order to continue to another pages. But, if
the students do not have an account, they can register by clicking the text which is
“No Account? Sign Up Here”. So, the student need to fill up the requirements such as
Full Name, Username and Password. After done fill up the requirements, student need
to click Register button and will proceed to another pages.
36
Figure 4.3 : Chatting interface for student site
If student click the Chat Here With Lecturer button, so it will proceed to another
page and ask the student’s name in order to enter the chat. For example, by putting
Khairul as the name. So the lecturer can know which Khairul that asking the inside the
group. Student need to choose whether the students is from what faculty. There is 2
Faculty which is FIK - Unisza and FBIM - Unisza. So, if the students are from
Informatics & Computing Faculty, so he can join the FIK - Unisza group and can start
chatting inside the group. Student can start chatting with others such as their friends
and also the lecturer. From here, students can ask everything such as question on the
bacteria and admin also can inform the students the updated bacteria.
37
Figure 4.4 : Searching interface for student site.
On this page, students can test their result based on the experiment that have
been done in their labs. If students have done 13 test , so students can click all the
button whether Positive or Negative and click the Search All button to get the
bacteria data. If students not done any test , students still can click all the button but
also can click None button if the test have not been carried out then click the Search
Selected to predict what bacteria data will they get.
38
Figure 4.5 : Result interface of the BactFinder Application for student site.
On this page if student click Search All button from previous pages, so students
will get data about what bacteria they were looking and also the selected bacteria
characteristics that students select from previous pages. To view more information
about the bacteria data, students can proceed by clicking the More Info button.
39
Figure 4.6 : Result interface of the BactFinder Application for student site.
On this page students can know about the details of the bacteria data. So it will
tell a bit about the information of the bacteria. Students also can click button Click
Here to View Image in order to view the images. Students can view the image from
database by clicking the View button. So if there is any changes so admin will
changes the data from the admin result.
40
Figure 4.7 : Predict interface of the BactFinder Application for student site.
On this page, students can click the None button and get the previous data. This is
because maybe some test will not be done by the students. So students can click the
None button and click the Search Selected button and get the predicted result.
Students can view the predicted bacteria data by clicking the Search Selected button
from previous pages. So it will show by showing the name of the bacteria like in the
figure above
41
Figure 4.8 : Login interface for admin site.
When admin continue as admin by clicking the Admin button, so admin will be
ask for the username and the password in order to continue to another pages. The
username and password for admin are already inserted by the developer into the
database. The reason is the developer wants to avoid confusion between user ability and
admin ability while using the application. If there have registration to be an admin, then
every user can be the admin. This issue the developer wants to avoid.
42
Figure 4.9 : Chat interface for admin site.
If admin click the Chat Here With Student button, so it will proceed to another
page and ask the admin’s name in order to enter the chat. For example, by putting
admin@FIK as the name. So admin have the function to create a new group for the
students. Admin can start chatting with student lecturer. From here, admin can inform
the students the updated bacteria.
43
Figure 4.10 : Save and Retrieve interface for admin site.
On this page, admin can save new data and retrieve back the data from the
database. In the save process, admin need to fill up all the requirement. This is
because if admin forget to fill up any data, then the data will not succesfully add. In
the retrieve back the data, admin will be show all the name of the bacteria. Admin can
click the name to view the the selected data back.
44
Figure 4.11 : Selected Bacteria and Update interface for admin site.
On this page, admin can view the selected data and update the data to the
database. In the selected data process, admin can view back whether all the data is
correctly enter or not. If there is also any changes admin can click button Update to
update the new data. In the update the data, admin will be show the previous data that
have been entered , and if there is any changes to do , admin can changed it easily.
45
4.3 Testing and Result
4.3.1 Introduction
A test case is a set of condition or variables under which a tester will determine if a
requirement upon an application is partially or fully satisfied. Test case also can define
as a sequence of steps to test the correct behavior of functionality or feature of an
application. There is a list of steps, test, procedures and expected outcomes would be
stated in a test case. The test case for student have login, searching data , predicting data
and also the chatting process. The test case for admin have login, insert new data ,
retrieve data , update data , delete data and also the chatting process. of the bacteria. The
test case for the main application which database for searching bacteria data and also to
predict bacteria data as a result.
4.3.2 Testing Analysis
Testing is needed to test system full function and free error. There is three type of
testing in the application. Those are unit testing, integration testing, and system testing.
Unit testing is carried out to verify the functionality of specific section code and
integration testing works to exposed defects in the interfaces and interaction between
modules. End-to-end testing or system testing tests a complete integrated system to
verify that it meets its requirements.
46
4.3.3 Black Box Testing
Black box testing is a software testing technique which tests the application by
ignoring the internal code structure and knowledge of internal paths of the software.
This testing is based on entirely the software requirements and specifications. It is
focused on input and output of the application process without bothering about internal
knowledge of the application. Such as process testing are carried out with test the input
and output process on student and admin site. There are test based on display, insert,
update , delete the data of bacteria and also the functionality of chatting .
4.3.4 White Box Testing
White box testing focuses on strengthening security, the flow of inputs and outputs
through the application and improving design and usability. The testing can be done
with the application, integration and unit levels of the software development. The basic
goals of white testing to verify working flow for an application. The testing involved a
series of predefined inputs against expected output. So, when it does not result in the
expected output, it must encounter a bug. Such as each form are test whether it can fill
and to check validation like login the admin and student. The expected result will be
checked when the data input is view for example students manage to view the bacteria
data such as bacteria information and image while in admin site , admin manage to save
and retrieve back the data from database.
47
4.4 Test Result and Analysis
Figure 4.12 : The Login process for admin.
The username and password for admin are already inserted by the developer into
the database. The reason is the developer wants to avoid confusion between user ability
and admin ability while using the application. If there have registration to be an admin,
then every user can be the admin. This issue the developer wants to avoid.
If the username and password are correct, admin can go through to next page after
clicking the Log in button. If the username and password in incorrect, the admin will be
stuck at the login page until admin recheck the data that key in.
48
Figure 4.13 : The Login process for student.
The username and password for student are not inserted by the developer into the
database. There have registration form for student, so it can compare which one student
and admin. This is because student need to register since admin need to know the details
of the students.
If the username and password are correct, student can go through to next page after
clicking the Log in button. If the username and password in incorrect, the student will
be stuck at the login page until student recheck the data that key in.
49
4.4.1 Test Case
Table 4.1 : Test Case for Successful of open the Application.
Test Case for Successful of open the Application
Steps
Test Procedure
Expected Result
1
Open the application of BactFinder.
The splash screen will come out by
showing the the image of the BactFinder
Apps and three button which is button
Getting Started , References and
Contact Us.
Table 4.2 : Test Case for Unsuccessful of open the Application.
Test Case for Successful of open the Application
Steps
Test Procedure
Expected Result
1
Open the application of BactFinder.
The apps will crash by showing the
BactFinder apps cannot be use or
stop immidiately
50
Table 4.3 : Test Case for Successful Login for admin.
Test Case for Successful Login for admin
Steps
Test Procedure
Expected Result
1
Click the button “Admin” to enter
page login admin.
View login page
2
Admin enters the following details:
Suggested input:
Username : admin
Password : admin
3
Admin click “Log in” button
Login page loaded. Login is succesful.
The application will be redirected
Table 4.4 : Test Case for Successful Login for student.
Test Case for Successful Login for admin
Steps
Test Procedure
Expected Result
1
Click the button “Student” to enter
page login admin.
View login page
2
Student enters the following details:
Suggested input:
Username : khairul
Password : khairul
3
Student click “Log in” button
Login page loaded. Login is succesful.
The application will be redirected
51
4.5 Results
The expected result after releasing of the application TrainMap is user should be
able to view bacteria data from the given bacteria result by using the BactFinder
Application. The user also can get their demand’s which is user friendly and innovative
technology to facilitate quick prediction analysis in laboratory will accomplished.
Furthermore, the result that will be expected after finish project development is the
application will assist the user to solve problem by saving the student’s time to search
for certain data and also give to students the correct answer. While on admin site, they
can to view, update or delete the data of the application. The developer also expected
that the system could function well and fulfill the user requirement standard.
4.6 Summary
52
In a nut shell for this chapter, the developer shows the interfaces those developed
for the BactFinder application. The developer also put a few of pop up message after the
user does certain activities. This will help the user alert with the action they act. Next,
testing phase did by the developer by testing the application. This phase also important
because to optimize the application for the high level. A few errors can be identifying,
and the developer fixed to improve the functionality of the system. The developer does
testing from unit testing until integrated testing. If there have an error, the developer
will be fixed it immediately. Finally, the test case necessary to guide the tester to test the
system. The system will repeatedly be tested to minimize the error.
53
CHAPTER V
CONCLUSION AND DISCUSSION
5.1 Conclusion
By the end of this study, “BactFinder Application Using Mobile Apps” project is
expected that application can encourage the students to use the apps as the medium to
get their data in an easy ways by student’s time to search for certain data and also give
to students the correct answer. BactFinder Application is an interactive mobile
application designed to facilitate bacteria identification based on biochemical tests and
bacteria morphology.There are many methods for identifying bacteria. Traditionally
an observational and biochemical approach has been used.The interface less complex
design and easy to use which the student only need to select the the result which they
already have it after done their experiment. Then, the automatic result display. While
in the admin site, this application will help them to view a list of data, update or delete
and insert bacteria data. It can do by using the smartphone and also website.
5.2 Project Contribution
54
“BactFinder Application Using Mobile Apps” project or known as a BactFinder
application that will be applied into schools or university in Malaysia. This application
also contributes toward solving some of the challenging problem due issue dumping
android application in google play store. The application also introduces the new way in
assist the student to get their result in an easy ways and also by saving their time. The
application also contributes to the admin to manage the application . They can manage
the data that relate to bacteria data in an easy ways and systematic. They only need a
smartphone to manage that data and also if they did not bring their smartphone they also
can update the data in the website.
5.3 System Constraints
55
There are few of problems can be found during the process to achieve the project
objectives. The problems during the development of the application as the
following:
I. The android technology is growing very rapidly. The developer must
alert the new update of Android technology. This is because we want to prevent the
application is developed will exist some bug or not compatible with the current
technology. So, the developer must follow the current technology.
II. The data bacteria is huge. There is very difficult the developer to collect
and save the data in short time. Meanwhile, the data of the bacteria frequenly
update due to the research of the scientist in the world who want to get thier name
as the founder of the bacteria.
III. The application needs to the connection of Wi-Fi or coverage of mobile
phone network. This is because the application wants to load the image from server
and also want to have some real time chatting. If there does not has the connection,
then the image will not appear, and the application will be useless. The user must
provide the connection first before using the application.
56
5.4 Suggestion for Improvement
Although the application operates in properly and follows the milestone of project
respectively, there exist some changes can be taken for better performances. The
constraint as described before this can be corrected and improve the quality for the
future. The developer must come up to date with the current technology to ensure the
application that developed will meet the standard. The data of the bacteria can be added
and updated from time to time until it complete. At least the main bacteria that
commonly use in the student’s study already save into database to avoid
disappointment from the user when using this application.
57
5.5 Summary
In a nutshell, “BactFinder Application Using Mobile Apps” project was developed
to assist a variety of student in the university or school to use the apps in an easy. With
development the application, it was systematically the management and planning to
encourage the students to use the apps as the medium to get their data . By doing so, the
user demand’s which is user friendly and innovative technology to facilitate quick
prediction analysis in laboratory will accomplished. These result represented to
achieve the objective of the project which is to design a manual searching process of
bacteria to a computerized system and also to develop an innovative and interactive
laboratory tools for bacterial identification based on biochemical tests and bacteria
morpholog characterization. Furthermore, the result that will be expected after finish
project development is the application will assist the user to solve problem by saving
the student’s time to search for certain data and also give to students the correct
answer. Then, the management on admin site also become easy and systematic in
managing the data. With a smartphone, anytime and anywhere they can manage the data.
Finally, the developer hopes this application can use for business market and
achieve the user expectation. So, the application can give a better solution or suggestion
to them while giving feedback for improving the application in the future.
58
REFERENCES
Atlas of Oral Microbiology, (2015). Techniques for Oral Microbiology -
https://www.sciencedirect.com/topics/biochemistry-genetics-and-molecular-biolo
gy/biochemical-testing
T.L. Pitt, M.R. Barer, in Medical Microbiology (Eighteenth Edition), (2012).
Classification, identification and typing of micro-organisms
https://www.sciencedirect.com/topics/biochemistry-genetics-and-molecular-biolo
gy/biochemical-testing
Samiksha S. Importance of Biochemical Tests of Bacteria -
http://www.yourarticlelibrary.com/experiments/importance-of-biochemical-tests-
of-bacteria/26624
Regnum Prokaryotes(2016) – ABIS Online Bacterial Identification
http://www.tgw1916.net/ABIS/encyclopedia.html
Flores, O. , L.A. Belanche, and A.R. Blanch. (2009) - IDENTAX BacteriaL
Identification - http://www.identax.org/
Tianjin University BioInformatics Centre(2017) - Ori-Finder: A web-based system for
finding oriC s in unannotated bacterial genomes -
https://bmcbioinformatics.biomedcentral.com/articles/10.1186/1471-2105-9-79
59
Kroenke, David (2015). MIS Essentials (Fourth ed.). Boston: Pearson. p. 10. -
https://en.wikipedia.org/wiki/Information_system#cite_note-1
Vladimir Zwass (2011) Information system -
https://www.britannica.com/topic/information-system
Felix Naumann, Dennis Shasha, Gottfried Vossen (2016). Information System -
https://www.journals.elsevier.com/information-systems
Margaret Rouse (2017). Mobile computing (nomadic computing) -
https://searchmobilecomputing.techtarget.com/definition/nomadic-computing
Antonio Regalado (March 1, 2013). Mobile Computing Is Just Getting Started -
https://www.technologyreview.com/s/511766/mobile-computing-is-just-getting-st
arted/
Jesper Kjeldskov. The Encyclopedia of Human-Computer Interaction, 2nd Ed. -
https://www.interaction-design.org/literature/book/the-encyclopedia-of-human-co
mputer-interaction-2nd-ed/mobile-computing