Software Engineering

p-ISSN: 2162-934X    e-ISSN: 2162-8408

2017;  6(1): 1-7

doi:10.5923/j.se.20170601.01

 

Health Management App for Android Mobile

Ibuomo Ruth Tebepah

Software Engineering Department, Linnet Paul Innovative Institution, Nigeria

Correspondence to: Ibuomo Ruth Tebepah, Software Engineering Department, Linnet Paul Innovative Institution, Nigeria.

Email:

Copyright © 2017 Scientific & Academic Publishing. All Rights Reserved.

This work is licensed under the Creative Commons Attribution International License (CC BY).
http://creativecommons.org/licenses/by/4.0/

Abstract

The main focus of this project is to develop a health management system to be deployed in a mobile device running on android platform and at same time will be able to talk to a web server and also present a detailed researched work on the mobile platform. The application will function as a plug-in, in which case it will be installed manually and run directly from the mobile device. The application is aimed at enabling users to register with a clinic or hospital, book appointment with their personal GP and check their medical history.In other to achieve the above stated goals, the project is sub divided into three major aspects - the mobile, web and database. The mobile and web server aspect involves programming, thus the required API, libraries, compilers were installed and configured. Programs is constantly tested during its implementation and the final testing is carried out using a test plan based on the stated requirement.

Keywords: Mobile, Health

Cite this paper: Ibuomo Ruth Tebepah, Health Management App for Android Mobile, Software Engineering, Vol. 6 No. 1, 2017, pp. 1-7. doi: 10.5923/j.se.20170601.01.

1. Introduction

The use of mobile devices such as handsets, PDAs and pod players had increased in the past few years that it has become a major industry, segmented into service providers, manufacturers, developers and consumers which sometimes make it difficult to determine the major players in the industry. It is certain however, that the mobile phone and other devices has come to stay and relatively becoming impossible to live without. All professions require the use of mobile device in one form and the inclusion of web services within the device had further encouraged its usage. Thus, developers are regularly developing applications that will run on mobile phones. These applications are designed and programmed to meet specific needs and also to run on specific platform.
Mobile phone platforms are important as it predetermines the type of applications and software that will eventually run on it. Phone manufacturers are creating phones that supports 2 platforms and convergence is something that is been advocated for within the industry.
The research attempts to survey Android platform which is a stable UNIX based operating system, and develop an application that will run on it. Report gotten from the research could be used for further research, resulting to a blueprint for mobile platform development. The developed application could be incorporated into already existing health management system in which patients can use their mobile phone to obtain required information. They could access health related information from the internet via mobile phone while on the go instead of using personal computers or physically visiting hospitals without previous booking. Which means the mobile phone will form the client side, interacting with a web server and database.

2. Literature Review

The first mobile phones network originated from the technologies used for mobile phone radio systems such as train caps, radio taxi and like personal computers, mobile phones also run on operating systems. But unlike personal computers, mobile device designers and application developer will always trade off certain features for portability and memory storage, performance (speed) and resources available.
Every hardware (mobile phone manufacturer) prefers and will always want to protect / safe guard closely their hardware trade secrets some of which could be revealed by allowing access to the software level of the device and third party applications only run on memory managed level / layers.
Android OS was initially developed by Android Inc, later bought by Google and now under the Open Handset Alliance Group of hardware and software developers [1] of which Google is a member. Others are Sprint, Nextel HTC, NTT Dcomo and Motorola whose main goal is to create a more open cell phone environment. With Google’s release of Android in November 2007, it came along with a host of free development tools and functionalities to aid developers, and recently Google (2008 / 2009), it has release all Android source code under the Apache license [2].
Android operating system is based on Linux kernel 2.6 but not a conventional Linux distribution and consequently does not support certain Linux features such as window X system and no standard GNU, this makes it difficult to reuse existing Linux application [1]. Features of Android are:
Ÿ Handset layout which adapts to larger VGA, 2D and 3D graphics libraries based on OpenGL ES and traditional Smartphone
Ÿ Storage system that supports SQLite database management
Ÿ Connectivity to all major technologies such as GSM/EDGE, CDMA, UMTS, Bluetooth and WiFi
Ÿ Messaging such as SMS and MMS
Ÿ Web browsing
Ÿ Java for programming applications
Ÿ Media supporting various audio and video formats for example JPEG, MPEG, WAV, BMT etc
Ÿ Additional hardware support for extra services – GPS, Accelerometer, touchscreen
Ÿ Multi touch
Ÿ Developers environment (Eclipse, performance profiling) [2]

3. Current Issues on Mobile Applications

The support for multiple platform and convergence of mobile technology especially as the industry gradually move from 3G to 4G and WiMAX, has been the focus for phone manufacturers. The reason been that more and more features are been added to mobile phone hard making it more complicated and complex for application developers to develop applications for platforms. Having a multi-application platform will distribute [3] the processing amongst the platform there by conserving battery life and processing time.
If this is the case, then more platforms will be required which may affect the cost mobile phone (reduced cost) but at same create interoperability issues especially if the platforms are based on different architectures.
The increasing demand quick and faster response time for multimedia application [4] and concurrently response to internet application with any technical problems has also made manufacturers to go back to the drawing board to ascertain how this could be achieved. The initial purpose of mobile phone was voice communication, but like most other technological aided devices, it has gone way beyond the expectation of the original concept. Thus there is still a huge market for companies and organisations that are willing to invest in mobile platform development.
Linux been an open operating system, had opened doors of opportunities for companies that may want to get involve. It has real time embedding features, free browser and convergence compliant [5], making it the most suitable platform for development. Already, there are Linux based mobile platform which are stable in relation to performance and response time. It also provides direct access to device hardware making programming much easier [6]. On the other hand, it may be prone to attack and crash of the OS if proper security measures are not put in place such as encryption, creating a virtual environment for developers to work, thereby preventing direct access to core hardware.
The development of mobile application in the area of health is growing rapidly and government of countries are getting involved. The eGoverment introduced a different kind of government administration that has saved government’s time and resources but also cost some individuals their jobs.
One of the recent developments is that of individual monitoring and proactive health care [7] which aims at, mobile phone users to be involved in regularly checking their health status. This will reduce the vulnerability of patients increasing their blood pressure without knowing or have abnormal body mass. Although not a common application, it has already created a new life style among health conscious people in Japan [8] and the introducing such in other countries will assist in controlling the spread of communicable related illness.
Mobile phone applications are also used in real time scenario where caloric balance is checked and self-monitoring is carried out [9] to control obesity and eat healthy. Medical data could be accessed using patent keeper [10] which allows medical officers (doctors) to update patients’ record via mobile phone, send or transfer vital signs such as electrocardiogram [11] and patients to view their medical status.
It is imperative that health application on mobile phone is relevant and prevent untold disaster if it becomes readily available and used by all concern.

4. Current System Assessment

The Bayelsa state ministry of health currently operates a hard file based filing system in which medical records of patients and staff are filled up in various cabinets in an alphabetical order. Records are stored in 2 different locations:
1. The health centres / clinics and hospitals
2. The administrative units of ministry of health
The health centres keep records of patients – both in and out patients. The typical scenario is a patient walks through the door into the clinic. They are asked to wait and handed several forms to complete which will take about 15-30 minutes depending on if the patient is covered by the state health insurance scheme or not and how fast the person is able to write. Assuming all the details are correct and required documents are available, the patient now waits to see the doctor. The duration of waiting is solely dependent on the number of doctors available to see patients for that day and the number of patients attending clinic. On successful seeing of the doctor, the medical card is left at the reception desk and filed later. On a second visit, the patient presents a small card showing that he / she had been registered. The nurse or receptionist goes into the filing cabinet and try to locate the patient’s medical card. If you medical record could not be traced, you will be expected to complete another set of forms.
There are computers in some of the clinics / hospitals but they are only used for administrative jobs such as typing official letters, memos, minutes of meetings, proposals etc and not for keeping medical records. There is little or no form of electronic data storage system in the clinics. There could be several reasons for this but that is not our area of interest in this project.

5. Proposed System

The proposed system is aimed to redress the major weaknesses of the old system such as the large turn up of patients on clinic days. Instead, the proposed system has the feature of appointment booking, in which every patient books appointment to see specialist or GP. Medical staff then prepares the list and are aware ahead of time the total number of patients expected to be at the clinic on specific days, thereby making the necessary provision for medical staff and medical disposables.

6. Requirement

i. It should be able to allow users to check their health status, perform initial registration such as entering their details into the system with a hospital / clinic, and book appointment to see GP
ii. It should be user friendly with pointers such as brief description of icons and menus, easy recognisable navigation buttons
iii. The application should be able to run on any android mobile device
iv. Application should be robust and have extensible features such as including additional functionalities and features if the need arises
v. Application should have error checking mechanism such as if the customer makes multiple clicks, clicks a button such as close / exit, it should attempt to get confirmation from user before performing the action
vi. It should be able to access a database

7. Combined Approach

This approach requires investing considerable time in producing accurate and detail document for each phase [3] before going on to execute. Alterations could be accommodated and it is flexible enough to effect changes without distorting the flow of events. The agile approach was also used in the later part because each component could not be fully analyzed before implementation due to time constraint.
Figure 1. Java EE platform API Architecture

8. Tools Selection

In selecting developing tools for the project, cost, compatibility, portability of code, knowledge base and installation requirement were used as the criterion for selection which will be used for programming and database (coding phase). The choice of Java Enterprise edition is based on its robustness, distributed multitier application model, portability to a wide variety of security implementations, component structure, scalability accessibility and manageability required in an enterprise scenario [4]. The basis of an application model is the ability of developers to design and develop an application that could be widely supported by other platforms. Java Enterprise has four different tier levels, which are:
i. Client tier components for client machine
ii. Web tier components to run on the Java EE server
iii. Business tier component to run on the Java EE server
iv. Enterprise Information System (EIS) tier software runs on EIS server.
This provides varieties of choices as each business tailors the application to suite its business requirements without necessarily undermining the flexibility and security mechanisms provided by the application.
The web component for instance provides dynamic extension to web server enabling web programmers to manipulation and use tools either concurrently or as individual tools. JSPs can be used alongside with servlet without setbacks. The fact that each programmed code is compiled and assembled in similar way makes it easier to use. The only difference is that component has to comply with the Java EE specification and is deployed to run and be managed by the java EE server. However, codes written in Java standard can be reused.
Java Servlet which is part of the web container will be used in developing the backend running on Apache web server. This is consistent with write ones and run anywhere policy. Also, the Android IDE is Eclipse which has inbuilt Java EE, making installation and configuration much easier. At the front end simple html format will be used. The web pages are not expected to graphically superfluous; rather it will contain elements of simple but structured designs – no complexity.
The mobile platform will be on Android which will be installed on top of eclipse on windows. This has in build support for languages such as C, Java and g++. The eclipse IDE will be used as the developing environment and the necessary plug-in files will be installed.

9. Database Functions

The database aspect of the application will be created using derby. This is a relational database management system that comes free with eclipse and can also be downloaded free from the web. Derby configuration is basic and follows the standard rules of SQL statements.
The database is made of data objects called table and each table is named based on the type of data it is expected to store. For example the table that will store all patient details when they fill a form is known as registration (Patient Details) table. Each table is made up of fields which also reflect the data type and data it will be holding or storing and a user is said to have a record when they have successfully entered all the required information. The users however will not have direct access to the tables. They will interact (enter and retrieve data) using interfaces linked to the database through the java servlet / jsp. Also, they are restricted to only viewing content regarding to them with no privilege of changing the data. As such patients will not be created as users of the database. Same applies to the medical officers except with regarding update. Medical officers have the privilege of updating their patient’s medical record only when they have come for medical checkups (appointment). The system administrator is responsible for maintaining the database and the entire software.

10. Algorithm Design of Selected Base Cases

Problem summary: Improve medical record keeping process and access of health application by patients using a mobile phone
Objectives: To incorporate a mobile health application to the already existing health management system.
Rules:
Ÿ Application functions are enabled one at a time
Ÿ Mobile device to run on android
Ÿ Mobile device is web/internet enabled
Base Case 1:
Name: Registration
Input: the user clicks on the registration icon on the menu screen
Output: a form is displayed and user enters the entire required field and clicks on the button for the data to be entered into the patients table in the database and a success message is displayed on the screen.
Description: registration component is used to register new patients and updates the patient details table.
Logical process:
1. Clicks on the registration icon
2. Registration form is displayed
3. Enters all the required field
Base Case 2:
Name: Record
Input: the user clicks on the record retrieve icon on the menu screen
Output: displays a prompt for enter registration id
Description: record component is used retrieve records from the Record table.
Logical process:
1. Clicks on the record icon
2. Prompts for registration id
3. Sql statement is executed to retrieve a record based on the regid enter
Base Case 3:
Name: Appointment
Input: the user clicks on the appointment icon on the menu screen
Output: a prompt for registration id is displayed
Description: appointment component is used to book appointments and same time updates the appointment table in the database.
Logical process:
1. Clicks on the appointment icon
2. Prompts for registration id
3. Authentication is made by executing a sql statement to confirm the existence of the registration id that had been entered by the user.
Base Case 4:
Name: Medical Staff
Input: the user clicks on the medStaff icon on the menu screen
Output: it displays prompts for username and password
Description: this component is used by the medical staff and is used to display the menu screen is displayed
Logical process:
1. Clicks on the medStaff icon
2. Displays a prompting for a username and password
3. Enters username and password
Base Case 5:
Name: Admin
Input: the user clicks on the admin icon on the menu screen
Output: it displays prompts for username and password
Description: this component is used by the system administrator and is used to display the menu screen is displayed
Logical process:
1. Clicks on the admin icon
2. Displays a prompting for a username and password
3. Enters username and password

11. Sample Screen Shot Results

Registration Form Display
Booking Appointment Display

12. Discussion

The application is capable of accepting and displaying the Health App System menu through which patients and other users (medical officer and admin) could access the rest of the application. Clicking on the any of the application icon will display the required screen enabling users to register, check medical records (retrieve) and book appointments. It saves the time of the patient and that of the medical officer. Appointments are booked based on doctor’s availability relation to date and time.
In retrieving records, every honored appointment, the medical officer directly update the medical record history, thus patients records are always up to date and could be accessed with ease. Also, records are electronically kept safeguarding from loss and unauthorized access.
Medical staff could also check the appointment table to see if they have pre booked appointment and update the record after attending to a patient.
The administrator could assess the tables within the database directly, create new users and generally manage the application. The menu screen enables to browse through the application by clicking on each of the menu buttons.
The application is also designed in such a way that it could be accessed directly using the internet. Simple html files are created which are linked to java Servlets at the backend. The Servlets are connected to a database if a record is required or an update is made.
Though not fully implemented, it forms the basis for further research and implementation of additional features.
This I believe is a step closer to having a decent and well-structured health system devoid of time and resource wastage of both medical personnel and the patient. And the fact that most mobile devices are smart, carrying out the basic routine of booking appointment and registration of once self is easy.
However, we should not forget the possible challenges of power supply and patient’s computer literacy level which may likely affect the efficiency of the new system.
On the whole, it’s a worthwhile venture that will surely improve healthcare delivery in Bayelsa State.

References

[1]  Yun Chan Cho, Current Platforms on Mobile Phone, Control, Automation and System 2007, ICCAS, Oct 2007, IEEE Conference.
[2]  Nakamoto Y, Toward Mobile Phone Linux, Design Automation conference 2004, preceedings fo the ASP-DAC 2004.
[3]  I. Albianali, F. Gniacly, C. Hartma, Understanding energy consumption of sensor enabled applications on Mobile phone, Engineering in medicine and biology society 2009, Annual International conference of IEEE.
[4]  Yamauchi K Wenxi Chen, A study on Japanese Mobile Phone Market and its Applications, Computer and Information Technology 2004, 4th International conference, IEEE Conference.
[5]  Tsai Christopher C Lee, Gunny Raab, Fred Norma, Usability and Feasibility of PMEB: A Mobile Phone Application for monitoring real time caloric balance, Pervasive Health Conf and workshop 2006.
[6]  Zarka N Hinnmawi, MF Dardai, A Tayyan, Patient Keeper Medical Application on Mobile Phone, Information and Communication Technology, proceedings of IEEE Conference 2004.
[7]  Yamauchi K Chen, W Wei, 3G Mobile Phone Applications in TeleMedicine- a survey, Computer and Information Technology, IEEE Conference 2005.
[8]  Tahat, A.A., Mobile personal electrocardiogram monitoring system and transmission S using MM Devices, Circuits and Systems, 2008. ICCDCS 2008. 7th International.
[9]  Chen xin, Cross-Platform Mobile Phone game development environment, Industrial and Information system 2009, IIS 09, International conference.
[10]  Scott W Amber, Comparing Approaches to Budgeting and Estimating software Development, http://www.ambysoftcon/essays/comparingestimatingapproaches.html.
[11]  http://www.codingthearchitecture.com/pages/book/architectural-constructs.html
[12]  Ida M Pu, Software engineering, algorithm design and analysis (vol.2) Department of Computing, Goldsmiths College, University of London, https://0x9.me/8cHzE.
[13]  Yamauchi K Wenxi Chen, A study on Japanese Mobile Phone Market and its Applications, Computer and Information Technology 2004, 4th International conference, IEEE Conference.