imos rough report
TRANSCRIPT
7/30/2019 iMos Rough Report
http://slidepdf.com/reader/full/imos-rough-report 1/42
1Intelligent Mobile Health Monitoring System
1. INTRODUCTION
Pervasive computing is the concept that incorporates computation in our
working and living environment in such a way so that the interaction between human
and computational devices such as mobile devices or computers becomes extremely
natural and the user can get multiple types of data in a totally transparent manner. The
potential for pervasive computing is evident in almost every aspect of our lives
including the hospital, emergency and critical situations, industry, education, or the
hostile battlefield. The use of this technology in the field of health and wellness is
known as pervasive health care. Mobile computing describes a new class of mobile
computing devices which are becoming omnipresent in everyday life. Handhelds,
phones and manifold embedded systems make information access easily available for
everyone from anywhere at any time. We termed the integration of mobile computing
to pervasive health care as mobile health care. The goal of mobile health care is to
provide health care services to anyone at anytime, overcoming the constraints of
place, time and character. Mobile health care takes steps to design, develop and
evaluate mobile technologies that help citizens participate more closely in their own
health care. In many situations people have medical issues which are known to them
but are unwilling or unable to reliably go to a physician. Obesity, high blood pressure,
irregular heartbeat, or diabetes is examples of such common health problems. In these
cases, people are usually advised to periodically visit their doctors for routine medical
checkups. But if we can provide them with a smarter and more personalized means
through which they can get medical feedback, it will save their valuable time, satisfy
their desire for personal control over their own health, and lower the cost of long termmedical care.
In this paper we present a bio-sensor based mobile health monitoring system
named as "Intelligent Mobile Health Monitoring System (IMHMS)" that uses the
Wearable Wireless Body/Personal Area Network for collecting data from patients,
mining the data, intelligently predicts patient's health status and provides feedback to
patients through their mobile devices. The patients will participate in the health care
process by their mobile devices and thus can access their health information from
Department of Computer Science & Engineering
7/30/2019 iMos Rough Report
http://slidepdf.com/reader/full/imos-rough-report 2/42
2Intelligent Mobile Health Monitoring System
anywhere any time. Moreover, so far there is no automated medical server used in any
of the work related to mobile health care. To maintain the server a large number of
specialist are needed for continuous monitoring. The presence of a large number of
specialists is not always possible. Moreover in the third world countries like ours
specialist without proper knowledge may provide incorrect prescription. That
motivates us to work for an intelligent medical server for mobile health care
applications that will aid the specialists in the health care. As a large amount of
medical data is handled by the server, the server will perform mine and analyze the
data. With the result of mining, analysis and suggestions and information provided by
the specialists in the critical scenarios the server can learn to provide feedback
automatically. Moreover as time grows the server will trained automatically by
mining and analyzing data of all the possible health care scenarios and become a real
intelligent one. Our main contribution here is the Intelligent Medical Server which is a
novel idea in the field of mobile health care.
Department of Computer Science & Engineering
7/30/2019 iMos Rough Report
http://slidepdf.com/reader/full/imos-rough-report 3/42
3Intelligent Mobile Health Monitoring System
2. OBJECTIVES
In intensive care units, there are provisions for continuously monitoring
patients. Their heart rates, temperatures etc. are continuously monitored. But in many
cases, patients get well and come back to home from hospital. But the disease may
return, he may get infected with a new disease, there may be a sudden attack that may
cause his death. So in many cases, patients are released from hospital but still they are
strongly advised to be under rest and observation for some period of time (from
several days to several months). In these cases, IMHMS can be quite handy. Patients
of blood pressure frequently get victimized because of sudden change of pressures. It
cannot be foreseen and also a normal person cannot be kept under medical
observation of a doctor or a hospital all days of a year. Blood pressures change
suddenly and can be life-treating. Using IMHMS, they can get alerts when their blood
pressure just starts to become high or low.
IMHMS collects patient's physiological data through the bio-sensors. The data
is aggregated in the sensor network and a summary of the collected data is transmitted
to a Patient’s personal computer or cell phone/PDA. These devices forward data to the
medical server for analysis. After the data is analyzed, the medical server provides
feedback to the patient's personal computer or cell phone/PDA. The patients can take
necessary actions depending on the feedback.
Health care through mobile devices with a central medical server is not anewconcept for the developed countries. But the medical server used there is mainly
for data storage. But the IMS of IMHMS not only stores data but also use it for
automated medical feedback. So for developed countries all the existing central
storage server can be replaced easily with IMS. So to integrate IMS with the existing
health care services, their central medical server's data needs to be migrated to IMS.
Then IMS can intelligently support all the existing health care services. The people of
the developing countries extensively use mobile devices but they are not familiar with
Department of Computer Science & Engineering
7/30/2019 iMos Rough Report
http://slidepdf.com/reader/full/imos-rough-report 4/42
4Intelligent Mobile Health Monitoring System
mobile device based intelligent services. So IMHMS can be very handy for them by
providing health care services anywhere anytime through their mobile devices. For
developing countries, IMHMS can aid physicians and specialists for better treatment
of the patients as their whole medical data and treatment history is stored in IMS.
Moreover it is not always possible for the patients to avail the services of special care
units like ICU (Intensive Care Unit), CCU (Critical Care Unit) due to limited number
of such units and money. So in these cases IMHMS can help the patients by providing
continuous health monitoring.
Department of Computer Science & Engineering
7/30/2019 iMos Rough Report
http://slidepdf.com/reader/full/imos-rough-report 5/42
5Intelligent Mobile Health Monitoring System
3. SYSTEM ANALYSIS
3.1 EXISTING SYSTEM
During the last few years there has been a significant increase
in the number and variety of wearable health monitoring devices,
ranging from simple pulse monitors, activity monitors, and portable
Holter monitors, to sophisticated and expensive implantable
sensors. Traditionally, personal medical monitoring systems, such
as Holter monitors, have been used only to collect data. Data
processing and analysis are performed offline, making such devices
impractical for continual monitoring and early detection of medical
disorders. Systems with multiple sensors for physical rehabilitation
often feature unwieldy wires between the sensors and the
monitoring system. These wires may limit the patient's activity and
level of comfort and thus negatively influence the measured results.In addition, individual sensors often operate as stand-alone systems
and usually do not offer flexibility and integration with third-party
devices. Finally, the existing systems are rarely made affordable.
MobiHealth project is going on to build a system for collecting vital body
signals and manipulating those in distant health care institutes. The Terva monitoring
system had been introduced to collect data related to health condition like blood
pressure, temperature, sleep conditions, weight, etc., over quite a long time. Here data
has been collected four times a day (morning, noon, evening and night) and saved in
the form a TOD ( time-of-day) matrix and analysed later. The whole system has been
housed in a suitcase that includes a laptop, blood pressure monitor and several other
monitoring devices. As a result, this system loses its mobility and becomes feasible to
be used in a static manner in the home. In traditional health care systems,
Department of Computer Science & Engineering
7/30/2019 iMos Rough Report
http://slidepdf.com/reader/full/imos-rough-report 6/42
6Intelligent Mobile Health Monitoring System
transportation is necessary for patients to get doctor’s review about their present
condition. Taking your own BP using a manual blood pressure monitor is difficult.
3.2 PROPOSED SYSTEM
Intelligent Mobile Health Monitoring System demonstrate the capability of
mobile devices to provide mobile, low-cost, and efficient remote health monitoring
through mobile Web services provisioning approach. The proposed approach shows
an agile, flexible, interoperable, and economical alternative to existing remote health
monitoring systems. IMHMS collects patient's physiological data through the bio-
sensors. The data is aggregated in the sensor network and a summary of the collected
data is transmitted to a Patient’s personal computer or cell phone/PDA. These devices
forward data to the medical server for analysis. After the data is analysed, the medical
server provides feedback to the patient's personal computer or cell phone/PDA. The
patients can take necessary actions depending on the feedback.
Mobile health care takes steps to design, develop and evaluate mobile
technologies that help citizens participate more closely in their own health care. In
many situations people have medical issues which are known to them but are
unwilling or unable to reliably go to a physician. High blood pressure, or diabetes are
examples of such common health problems. In these cases, people are usually advised
to visit their doctors for regular medical checkups. Proposed system will save their
valuable time, satisfy their desire for personal control over their own health, and
lower the cost of long term medical care.
Department of Computer Science & Engineering
7/30/2019 iMos Rough Report
http://slidepdf.com/reader/full/imos-rough-report 7/42
7Intelligent Mobile Health Monitoring System
4. REQUIREMENT SPECIFICATION
4.1 SOFTWARE CONFIGURATION
Platform - Android 2.3
Operating System - Windows XP or above (32-bit or 64-bit)
Database - SQLite
Supported Development
Environment - Eclipse, Android SDK Tool, Eclipse ADT
4.2 HARDWARE REQUIREMENTS
Processor - Intel Pentium 4
CPU Speed - 2GHz
Memory - 128 MB RAMHard Disk Drive - 40 GBytes
4.3 TECHNOLOGY
4.3.1 JAVA
Java is a new object-oriented language that is receiving wide attention from
both industry and academia. Java was developed by James Gosling and his team at
Sun Microsystems in California. The language was based on C and C++ and was
originally intended for writing programs that control consumer appliances such as
toasters, microwave ovens, and others. The language was first called Oak, named after
the oak tree outside of Gosling’s office, but the name was already taken, so the team
renamed it Java. Java is often described as a Web programming language because of
its use in writing programs called applets that run within a Web browser. That is, you
need a Web browser to execute Java applets. Applets allow more dynamic and
flexible dissemination of information on the Internet, and this feature alone makes
Department of Computer Science & Engineering
7/30/2019 iMos Rough Report
http://slidepdf.com/reader/full/imos-rough-report 8/42
8Intelligent Mobile Health Monitoring System
Java an attractive language to learn. However, we are not limited to writing applets in
Java. We can write Java applications also. A Java application is a complete stand-
alone program that does not require a Web browser. A Java application is analogous
to a program we write in other programming languages. We chose Java for this
project mainly for its clean design. The language designers of Java took a minimalist
approach; they included only features that are indispensable and eliminated features
that they considered excessive or redundant. This minimalist approach makes Java a
much easier language to learn than other object-oriented programming languages.
Java is an ideal vehicle for learning the fundamentals of object-oriented programming.
The Java language can be characterized by all of the following features:
• Simple and Powerful
The developer of Java based it on C++ programming language, but removed many of
the language features that are rarely or often used poorly. Specifically, Java differs
from C++ in these ways:
Java does not support the structure, union and pointer data types.
It does not support typedef or #define.
It differs in its handling of certain operators and does not permit operator
overloading.
It handles command line arguments differently from C to C++.
It has a string class as a part of java language package. This differs from the
null terminated array of characters as used in C or C++.
Unlike other programming systems that provide dozens of complicated ways
to perform a simple task, Java provides a small number of clear ways to achieve a
given task.
• Robust
Java has the strong memory allocation and automatic garbage collection
mechanism. It carries out type checking at both compile and runtime making sure that
every data structure has been clearly defined and typed. compiler checks the program
for any error and interpreter checks any run time error that every data structure is
Department of Computer Science & Engineering
7/30/2019 iMos Rough Report
http://slidepdf.com/reader/full/imos-rough-report 9/42
9Intelligent Mobile Health Monitoring System
clearly defined and typed. Java manages the memory automatically by using an
automatic garbage collector. all the above features make Java language robust.
• Secure
Since Java works in networked environments, the issue of security is one
that should be of concern to developers. Java does not use memory pointers
explicitly. All the programs in java are run under an area known as the sand box.
Security manager determines the accessibility options of a class like reading and
writing a file to the local disk. Java uses the public key encryption system to allow
the java applications to transmit over the internet in the secure encrypted form. The
bytecode Verifier checks the classes after loading.
No memory pointers
Programs run inside the virtual machine sandbox.
Array index limit checking
• Object oriented
To be an Object Oriented language, any language must follow at least the four
characteristics:
Inheritance: It is the process of creating the new classes and using the behavior
of the existing classes by extending them just to reuse the existing code
and adding the additional features as needed.
Encapsulation: It is the mechanism of combining the information and
providing the abstraction.
Polymorphism: As the name suggest one name multiple form, Polymorphism
is the way of providing the different functionality by the
functions having the same name based on the signatures of the methods.
Dynamic binding: Sometimes we don't have the knowledge of objects about
their specific types while writing our code. It is the way of providing the
maximum functionality to a program about the specific type at runtime.
Department of Computer Science & Engineering
7/30/2019 iMos Rough Report
http://slidepdf.com/reader/full/imos-rough-report 10/42
10Intelligent Mobile Health Monitoring System
• Architecture neutral
The term architectural neutral seems to be weird, but yes Java is an
architectural neutral language as well. The growing popularity of networks makes
developers think distributed. In the world of network it is essential that the
applications must be able to migrate easily to different computer systems. Not only to
computer systems but to a wide variety of hardware architecture and operating system
architectures as well. The Java compiler does this by generating byte code
instructions, to be easily interpreted on any machine and to be easily translated into
native machine code on the fly. The compiler generates an architecture-neutral object
file format to enable a Java application to execute anywhere on the network and then
the compiled code is executed on many processors, given the presence of the Java
runtime system.
• Platform independent and Portable
The concept of Write-once-run-anywhere (known as the Platform
independent) is one of the important key feature of java language that makes java as
the most powerful language. Not even a single language is idle to this feature but java
is closer to this feature. The programs written on one platform can run on any
platform provided the platform must have the JVM.
• Interpreted
When the Java compiler translates the Java source file to byte codes, this byte
code class file can be run on any machine that has a Java interpreter or a Java enable
browser. This allows the Java code to be written independently of the user’s
platforms. Interpretation also eliminates the compile and run cycle for the client because the byte codes are not specific to a given machine. The byte code can be
interpreted on any system that has a Java Virtual Machine (JVM). Another advantage
of Java as an interpreted language is its error debugging quality. Due to this any error
occurring in the program gets traced. This is how it is different to work with Java.
• Multithreaded
Java was designed to meet the real world requirements of creating
interactive, networked programs. To achieve this, Java support Multithreaded
Department of Computer Science & Engineering
7/30/2019 iMos Rough Report
http://slidepdf.com/reader/full/imos-rough-report 11/42
11Intelligent Mobile Health Monitoring System
programming, which allows the user to write programs that perform many functions
simultaneously. Multithreading means a single program having different threads
executing independently at the same time. Multiple threads execute instructions
according to the program code in a process or a program. Multithreading works the
similar way as multiple processes run on one computer. Multithreading programming
is a very interesting concept in Java. In multithreaded programs not even a single
thread disturbs the execution of other thread. Threads are obtained from the pool of
available ready to run threads and they run on the system CPUs. This is how
multithreading works in Java.
• Dynamic language
Unlike C++ code, which often requires complete recompilation if a parent
class is changed, Java uses a method of interface to relieve this dependency. The
result is that Java programs can allow for new methods and instances variables in
object in library without affecting their dependent client objects.
4.3.2 ANDROID
Android is a mobile operating system that is based on a modified version of Linux. It was originally developed by a startup of the same name, Android, Inc. In
2005, as part of its strategy to enter the mobile space, Google purchased Android and
took over its development work (as well as its development team).
Google wanted Android to be open and free; hence, most of the Android code
was released under the open-source Apache License, which means that anyone who
wants to use Android can do so by downloading the full Android source code.
Moreover, vendors (typically hardware manufacturers) can add their own proprietary
extensions to Android and customize Android to differentiate their products from
others. This simple development model makes Android very attractive and has thus
piqued the interest of many vendors. This has been especially true for companies
affected by the phenomenon of Apple’s iPhone, a hugely successful product that
revolutionized the Smartphone industry. Such companies include Motorola and Sony
Ericsson, which for many years have been developing their own mobile operating
systems. When the iPhone was launched, many of these manufacturers had to
Department of Computer Science & Engineering
7/30/2019 iMos Rough Report
http://slidepdf.com/reader/full/imos-rough-report 12/42
12Intelligent Mobile Health Monitoring System
scramble to find new ways of revitalizing their products. These manufacturers see
Android as a solution — they will continue to design their own hardware and use
Android as the operating system that powers it.
The main advantage of adopting Android is that it offers a unified approach to
application development. Developers need only develop for Android, and their
applications should be able to run on numerous different devices, as long as the
devices are powered using Android. In the world of Smart phones, applications are
the most important part of the success chain. Device manufacturers therefore see
Android as their best hope to challenge the onslaught of the iPhone, which already
commands a large base of applications
• FEATURES OF ANDROID
As Android is open source and freely available to manufacturers for
customization, there are no fixed hardware and software configurations. However,
Android itself supports the following features:
Handset layouts :
The platform is adaptable to larger, VGA, 2D graphics library, 3D
graphics library based on OpenGL ES 2.0 specifications, and traditional
Smartphone layouts.
Storage:
SQLite, a lightweight relational database, is used for Data storage
purposes.
Connectivity:
Android supports connectivity technologies including GSM/EDGE, IDEN,
CDMA, EV-DO, UMTS, Bluetooth, Wi-Fi, and WiMAX.
Messaging:
SMS and MMS are available forms of messaging, including threaded text
messaging and now Android Cloud to Device Messaging Framework (C2DM) is
also a part of Android Push Messaging service.
Web browser:
Department of Computer Science & Engineering
7/30/2019 iMos Rough Report
http://slidepdf.com/reader/full/imos-rough-report 13/42
13Intelligent Mobile Health Monitoring System
The web browser available in Android is based on the open-source Web
Kit layout engine, coupled with Chrome's V8 JavaScript engine. The browser
scores a 93/100 on the Acid3 Test.
Java support:
While Android applications are written in Java, there's no Java Virtual
Machine in the platform and Java byte code is not executed. Java classes get
recompiled into Dalvik executable and run on Dalvik virtual machine. Dalvik is a
specialized virtual machine designed specifically for Android and optimized for
battery powered mobile devices with limited memory and CPU. J2ME support can
be provided via third party-application such as the J2ME MIDP Runner.
Media support:
Android supports the following audio/video/still media formats: H.263,
H.264 (in 3GP or MP4 container), MPEG-4 SP, AMR, AMR-WB (in 3GP
container), AAC, HE-AAC (in MP4 or 3GP container), MP3, MIDI, Ogg Vorbis,
WAV, JPEG, PNG, GIF, and BMP.
Hardware support:
Accelerometer Sensor, Camera, Digital Compass, Proximity Sensor, and
GPS
Streaming media support:
RTP/RTSP streaming (3GPP PSS, ISMA), HTML progressive download
(HTML5 <video> tag). Adobe Flash Streaming (RTMP) is supported through
Adobe Flash Player Plug-in. Apple HTTP Live Streaming is supported through
third party media player (Next streaming NexPlayer). Microsoft Smooth
Streaming is planned to be supported through the awaited port of Sliver light
Plug-in to Android. Adobe Flash HTTP Dynamic Streaming is planned to be
supported through an upgrade of the Flash Plug-in.
Development environment:
Includes a device emulator, tools for debugging, memory and performance
profiling, and a Plug-in for the Eclipse IDE.
Market:
Department of Computer Science & Engineering
7/30/2019 iMos Rough Report
http://slidepdf.com/reader/full/imos-rough-report 14/42
14Intelligent Mobile Health Monitoring System
Like many phone-based application stores, the Android Market is a catalog
of applications that can be downloaded and installed to target hardware over-the-
air, without the use of a PC. Originally only free applications were supported.
Paid-for applications have been available on the Android Market in the United
States since 19 February 2009. The Android Market has been expanding rapidly.
As of August 3, 2010, it had over 100,000 Android applications for download.
There are other markets, such as SlideME and Getjar, but Google's Android
Market is the only one whose downloader is installed on every Google Android
phone.
Multi-touch:
Android has native support for multi-touch which was initially made
available in handsets such as the HTC Hero. The feature was originally disabled at
the kernel level (possibly to avoid infringing Apple's patents on touch-screen
technology).Google has since released an update for the Nexus One and the
Motorola Droid which enables multi-touch natively.
Multi-tasking :
Supports multi-tasking applications.
Bluetooth:
Support for A2DP and AVRCP were added in version 1.5; sending files
(OPP) and accessing the phone book (PBAP) were added in version 2.0; and voice
dialing and sending contacts between phones were added in version 2.2.
Video calling:
Only supported handsets with a front facing camera support video calling
(like the Samsung i9000 GalaxyS). Multitasking of applications is available.
Voice based features:
Google search through Voice is available as Search Input since initial
release. Also launched Voice actions supported on Android 2.2 onwards.
Tethering:
Android supports tethering, which allows a phone to be used as a
wireless/wired hotspot (All 2.2 Froyo phones, unofficial on phones running 1.6 or
higher via applications available in the Android Market, e.g. PdaNet). To allow a
Department of Computer Science & Engineering
7/30/2019 iMos Rough Report
http://slidepdf.com/reader/full/imos-rough-report 15/42
15Intelligent Mobile Health Monitoring System
laptop to share the 3G connection on Android phone software may need to be
installed on both the phone and the laptop.
4.3.3 SQLITE
SQLite is available on every Android device. Using a SQLite database in
Android does not require any database setup or administration. Only need is to define
the SQL statements for creating and updating the database. Afterwards the database is
automatically managed by the Android platform. Access to a SQLite database
involves accessing the file system. This can be slow. Therefore it is recommended to
perform database operations asynchronously, for example inside the AsyncTask class.
If an application creates a database, this database is by default saved in the
directory DATA/data/APP_NAME/databases/FILENAME. The parts of the abovedirectory are constructed based on the following rules. DATA is the path which the
Environment.getDataDirectory() method returns. APP_NAME is the application
name. FILENAME is the name specified in the application code for the database.
SQLITE ARCHITECTURE
• Packages
The package android.database contains all general classes for working
with databases. android.database.sqlite contains the SQLite specific classes.
• SQLiteOpenHelper
To create and upgrade a database in an Android application one usually
needs a subclass SQLiteOpenHelper. In the constructor of the subclass call the
super() method of SQLiteOpenHelper has to be called, specifying the database
name and the current database version.
Department of Computer Science & Engineering
7/30/2019 iMos Rough Report
http://slidepdf.com/reader/full/imos-rough-report 16/42
16Intelligent Mobile Health Monitoring System
In this class developer need to override the onCreate() and onUpgrade()
methods. onCreate() is called by the framework, if the database does not exists.
onUpgrade() is called, if the database version is increased in the
application code. This method allows to update the database schema. Both
methods receive an SQLiteDatabase object as parameter which represents the
database. SQLiteOpenHelper provides the methods getReadableDatabase() and
getWriteableDatabase() to get access to an SQLiteDatabase object; either in read
or write mode. The database tables should use the identifier _id for the primary
key of the table. Several Android functions rely on this standard.
It is best practice to create a separate class per table. This class defines
static onCreate() and onUpgrade() methods. These methods are called in the
corresponding methods of SQLiteOpenHelper. This way the implementation of
SQLiteOpenHelper will stay readable, even if there are several tables.
• SQLiteDatabase
SQLiteDatabase is the base class for working with a SQLite database in
Android and provides methods to open, query, update and close the database.
More specifically SQLiteDatabase provides the insert(), update() and delete()
methods. In addition it provides the execSQL() method, which allows to execute
an SQL statement directly. The object ContentValues allows to define key/values.
The "key" represents the table column identifier and the "value" represents the
content for the table record in this column. ContentValues can be used for inserts
and updates of database entries.
Queries can be created via the rawQuery() and query() methods or via the
SQLiteQueryBuilder class . rawQuery() directly accepts an SQL select statement
as input. query() provides a structured interface for specifying the SQL query.
SQLiteQueryBuilder is a convenience class that helps to build SQL queries.
Department of Computer Science & Engineering
7/30/2019 iMos Rough Report
http://slidepdf.com/reader/full/imos-rough-report 17/42
17Intelligent Mobile Health Monitoring System
5. DESIGN, IMPLEMENTATION & TESTING
5.1 SYSTEM ANALYSIS AND DESIGN
Systems are created to solve problems. One can think of the system approach
as an organized way of dealing with a problem. A collection of components that work
together to realize some objective forms a system. Basically there are three major
components in every system, namely input, processing and output.
Input output
Fig.5.1: System Organized collection of Objects
System analysis and design refers to the process of examining a situation with
the intent of improving it through better procedures and methods. System design is the
process of planning a new system or one to replace or complement an existing system
and determine how computers can best be used to make its operations more effective.
System Analysis then is the process of gathering and interpreting facts,
diagnosing problems and using the information to recommend improvements to the
Department of Computer Science & Engineering
process
ppppocess
7/30/2019 iMos Rough Report
http://slidepdf.com/reader/full/imos-rough-report 18/42
18Intelligent Mobile Health Monitoring System
system. Before development of any project can be pursued, a system study is
conducted to learn the details of the current business situation. Information gathered
through the study forms the basic for creating alternative design strategies.
Management selects strategies pursue.
System Analysis is about understanding situations, not solving problems.
Effective analysis includes investigation and questioning to learn how a system
currently operates and to identify the requirements users have for a new or modified
one. Only after analysis, analysts fully understand the system, and they are able to
analyses it and assemble recommendation for system design.
For designing and development of any good project analysis of an existing
system is a pre-requisite. The existing system is studied to know the extent of
computerization required. Therefore, a detailed analysis of the existing system is
conducted. For this the system is broken down into various subsystems and they are
studied closely, problem areas are identified, information collected with enough
analysis. They improve the manner in which the development occurs and influence
the quality of the final results.
Tools extend the capability of the system Analysis in three ways
1. Improve Productivity
2. Improve Effectiveness
3. Improve Information System Quality
5.1.1 DEFINITION OF PROBLEM
A detailed study about the system was carried out. The study of the system
gives insight into the structure and functioning of the system. The system study gives
an idea of the use and management requirements.
5.1.2 SYSTEM DEVELOPMENT LIFE CYCLE
Department of Computer Science & Engineering
7/30/2019 iMos Rough Report
http://slidepdf.com/reader/full/imos-rough-report 19/42
19Intelligent Mobile Health Monitoring System
The Systems Development Life Cycle (SDLC) is a process of creating or
altering information systems, and the models and methodologies that people use to
develop these systems.
In software engineering the SDLC concept underpins many kinds of software
development methodologies. These methodologies form the framework for planning
and controlling the creation of an information system: the software development
process.
Systems Development Life Cycle (SDLC) is a process used by a systems
analyst to develop an information system, including requirements, validation, training,
and user (stakeholder) ownership. Any SDLC should result in a high quality system
that meets or exceeds customer expectations, reaches completion within time and cost
estimates, works effectively and efficiently in the current and planned Information
Technology infrastructure, and is inexpensive to maintain and cost-effective to
enhance. Computer systems are complex and often (especially with the recent rise of
Service-Oriented Architecture) link multiple traditional systems potentially supplied
by different software vendors. To manage this level of complexity, a number of
SDLC models or methodologies have been created, such as "waterfall"; "spiral";
"Agile software development"; "rapid prototyping"; "incremental"; and "synchronize
and stabilize".
In project management a project can be defined both with a project life cycle
(PLC) and an SDLC, during which slightly different activities occur. According toTaylor (2004) "The Project Life Cycle encompasses all the activities of the project,
while the systems development life cycle focuses on realizing the product
requirements".
5.1.3 SYSTEMS DEVELOPMENT PHASES
Department of Computer Science & Engineering
7/30/2019 iMos Rough Report
http://slidepdf.com/reader/full/imos-rough-report 20/42
20Intelligent Mobile Health Monitoring System
The System Development Life Cycle framework provides a sequence of activities for system designers and developers to follow. It consists of a set of steps or
phases in which each phase of the SDLC uses the results of the previous one. A
Systems Development Life Cycle (SDLC) adheres to important phases that are
essential for developers, such as planning, analysis, design, and implementation. A
number of system development life cycle models like: waterfall, fountain, spiral, build
and fix, rapid prototyping, incremental, and synchronize and stabilize. The oldest of
these, and the best known, is the waterfall model is given below.
System study
Maintenance Feasibility study
Implementation System Analysis
Testing System Design
Coding
Fig. Different phases of Software development Life Cycle
These stages can be characterized and divided up in different ways, including
the following:
Project planning, feasibility study: Establishes a high-level view of
the intended project and determines its goals.
Department of Computer Science & Engineering
Software
development
7/30/2019 iMos Rough Report
http://slidepdf.com/reader/full/imos-rough-report 21/42
21Intelligent Mobile Health Monitoring System
Systems analysis, requirements definition: Defines project goals
into defined functions and operation of the intended application.
Analyzes end-user information needs.
Systems design: Describes desired features and operations in detail,
including screen layouts, business rules, process diagrams, pseudo
code and other documentation.
Implementation: The real code is written here.
Integration and testing: Brings all the pieces together into a special
testing environment, then checks for errors, bugs and
interoperability.
Acceptance, installation, deployment: The final stage of initial
development, where the software is put into production and runs
actual business.
Maintenance: changes, correction, additions, moves to a differentcomputing platform and more. This is the least glamorous and
perhaps most important step of all, goes on seemingly forever.
5.2. DATABASE DESIGN
Database design is the process of producing a detailed data model of database.
This logical data model contains all the needed logical and physical design choices
and physical storage parameters needed to generate a design in a Data Definition
Language, which can then be used to create a database. A fully attributed data model
contains detailed attributes for each entity.
The term database design can be used to describe many different parts of the
design of an overall database system. Principally, and most correctly, it can be
thought of as the logical design of the base data structures used to store the data. In
Department of Computer Science & Engineering
7/30/2019 iMos Rough Report
http://slidepdf.com/reader/full/imos-rough-report 22/42
22Intelligent Mobile Health Monitoring System
the relational model these are the tables and views. In an object database the entities
and relationships map directly to object classes and named relationships. However,
the term database design could also be used to apply to the overall process of
designing, not just the base data structures, but also the forms and queries used as part
of the overall database application within the database management system (DBMS).
The process of doing database design generally consists of a number of steps
which will be carried out by the database designer. Usually, the designer must:
Determine the relationships between the different data elements.
Superimpose a logical structure upon the data on the basis of these
relationships
5.2.1 THE DESIGN PROCESS
The design process consists of the following steps:
Determine the purpose of your database - This helps prepare you for
the remaining steps.
Find and organize the information required - Gather all of the types
of information you might want to record in the database, such as
product name and order number.
Divide the information into tables - Divide your information items
into major entities or subjects, such as Products or Orders. Each
subject then becomes a table.
Turn information items into columns - Decide what information you
want to store in each table. Each item becomes a field, and is
displayed as a column in the table. For example, an Employees table
might include fields such as Last Name and Hire Date.
Department of Computer Science & Engineering
7/30/2019 iMos Rough Report
http://slidepdf.com/reader/full/imos-rough-report 23/42
23Intelligent Mobile Health Monitoring System
Specify primary keys - Choose each table’s primary key. The
primary key is a column that is used to uniquely identify each row.
An example might be Product ID or Order ID.
Set up the table relationships - Look at each table and decide how
the data in one table is related to the data in other tables. Add fields
to tables or create new tables to clarify the relationships, as
necessary.
Refine your design - Analyze your design for errors. Create the
tables and add a few records of sample data. See if you can get the
results you want from your tables. Make adjustments to the design,
as needed.
Apply the normalization rules - Apply the data normalization rules
to see if your tables are structured correctly. Make adjustments to
the tables.
Normalization
Normalization is essentially the process of taking a wide table with lots of
columns but few rows and redesigning it as several narrow tables with fewer columns
but more rows.
Forms of Normalization: Relational database theorists have divided normalization
into several rules called normal forms.
First Normal form
Moving data into separate table where the data in each table is of similar type
and giving each table a primary key do the eliminates repeating groups of data.
Second Normal Form
First normal form table can be converted to second normal form by taking out
data that is only dependent on a part of the key.
Department of Computer Science & Engineering
7/30/2019 iMos Rough Report
http://slidepdf.com/reader/full/imos-rough-report 24/42
24Intelligent Mobile Health Monitoring System
Third Normal Form
Third normal form means getting ride on of anything in the table that does not
d depend solely on primary key.
5.3 SYSTEM IMPLEMENTATION
The purpose of Prepare for System Implementation is to take all possible steps
to ensure that the upcoming system deployment and transition occurs smoothly,
efficiently, and flawlessly. In the implementation of any new system, it is necessary to
ensure.
During System Implementation it is essential that everyone involved be
absolutely synchronized with the deployment plan and with each other. Often the
performance of deployment efforts impacts many of the Performing Organization’s
normal business operations.
A smooth deployment requires strong leadership, planning, and
communications. By this point in the project lifecycle, the team will have spent
countless hours devising and refining the steps to be followed. During this preparation
process the Project Manager must verify that all conditions that must be met prior to
initiating deployment activities have been met, and that the final ‘green light’ is on for
the team to proceed.
5.3.1 Characteristics of Implementation
Abstraction
Abstraction deals with the ability of an implementation to allow the
programmer to ignore the portion of details that is not important at the current
level consideration. Each of the three Kinds of abstraction control, data and process
should present in the code.
Modularization
It requires as partitioning the implementation, with each abstraction
occupying its own separate and identifiable unit.
Department of Computer Science & Engineering
7/30/2019 iMos Rough Report
http://slidepdf.com/reader/full/imos-rough-report 25/42
25Intelligent Mobile Health Monitoring System
System Management
The Remote System Administration service offers an attractive alternative. It
reduces or may even eliminate the need for on-site support staff by performing the
entire spectrum of system management functions, remotely, or by providing any
combination of on-site and remote services that fits to business needs.
A Cost-Effective Management Solution
System Administration is a cost-effective way to solve in IT management
issues. Whether the lack an in-house system administrator, have a system
administrator without skills, or simply find that there are too many tasks for too few
staff members, Remote System Administration provides an efficient solution.
Maximize System Availability with Proactive Problem Detection
Remote diagnostics package enables admin to gather the system functions
and proactively address. The technology that monitor machine to detect its current
conditions, It is not only for a single system or group of systems environmental
conditions. This leverages to maximize system availability and support specialists
monitor login attempts, user processes, and the performance and availability of
designated systems.
Detailed Reporting for More Effective System Administration
Contract Remote System Administration customers receive weekly reports
documenting day-to-day system activity to give insight into system usage and
performance patterns. Reports include system trend analysis, call volume, downtime patterns, security break-ins, failed logins, system availability, load peaks, resource
shortages, and performance measurements.
Thorough Pre-Implementation Assessment
A thorough site assessment to determine specific requirements is
completed prior to initiating System Administration. Engineers discuss all procedures
with admin before implementation begins. They then install necessary hardware and
software, performing whatever reconfigurations.System implementation is the process
Department of Computer Science & Engineering
7/30/2019 iMos Rough Report
http://slidepdf.com/reader/full/imos-rough-report 26/42
26Intelligent Mobile Health Monitoring System
of making the newly designed system fully operational and consistent in performance.
The following step has been followed in the implementation of the system.
Department of Computer Science & Engineering
7/30/2019 iMos Rough Report
http://slidepdf.com/reader/full/imos-rough-report 27/42
27Intelligent Mobile Health Monitoring System
5.4 TESTING
Software testing is an investigation conducted to provide stakeholders withinformation about the quality of the product or service under test. Software testing can
also provide an objective, independent view of the software to allow the business to
appreciate and understand the risks of software implementation. Test techniques
include, but are not limited to, the characteristics.
Software testing, depending on the testing method employed, can be
implemented at any time in the development process. However, most of the test effort
occurs after the requirements have been defined and the coding process has beencompleted. As such, the methodology of the test is governed by the software
development methodology adopted.
5.4.1 TESTING LEVELS
Unit Testing
Unit testing also known as component testing, refers to tests that verify the
functionality of a specific section of code, usually at the function level. In an object-
oriented environment, this is usually at the class level, and the minimal unit tests
include the constructors and destructors.
These types of tests are usually written by developers as they work on code, to
ensure that the specific function is working as expected. One function might have
multiple tests, to catch corner cases or other branches in the code. Unit testing alone
cannot verify the functionality of a piece of software, but rather is used to assure that
the building blocks the software uses work independently of each other.
Integration testing
Integration testing is any type of software testing that seeks to verify the
interfaces between components against a software design. Integration works to expose
defects in the interfaces and interaction between integrated components (modules).
Progressively larger groups of tested software components corresponding to element
Department of Computer Science & Engineering
7/30/2019 iMos Rough Report
http://slidepdf.com/reader/full/imos-rough-report 28/42
28Intelligent Mobile Health Monitoring System
of the architectural design are integrated and tested until the software works as a
system.
System Testing
System testing tests a completely integrated system to verify that it meets its
requirements. System verifies that a system is integrated to any external or third-party
systems defined in the system requirements.
Acceptance Testing
Acceptance testing can mean one of two things:
A smoke test is used as an acceptance test prior to introducing a new
build to the main testing process, i.e. before integration or regression.
Acceptance testing performed by the customer, often in their lab
environment on their own hardware, is known as user acceptance
testing (UAT). Acceptance testing may be performed as part of the
hand-off process between any two phases of development
Alpha testing
Alpha testing is simulated or actual operational testing by potential
users/customers or an independent test team at the developers' site. Alpha testing is
often employed for off-the-shelf software as a form of internal acceptance testing,
before the software goes to beta testing.
Beta testing
Beta testing comes after alpha testing and can be considered a form of external
user acceptance testing. Versions of the software, known as beta versions, are released
to a limited audience outside of the programming team. The software is released to
groups of people so that further testing can ensure the product has few faults or bugs.
6. DATA FLOW DIAGRAMS
Department of Computer Science & Engineering
7/30/2019 iMos Rough Report
http://slidepdf.com/reader/full/imos-rough-report 29/42
29Intelligent Mobile Health Monitoring System
Data flow diagram is a structured, diagrammatic technique for showing the
functions performed by a system and the data flowing into, out of, and within it. The
technique exploits a method called top-down expansion to conduct the analysis in a
targeted way. There are only four symbols. They are:
External entity
An external entity is a source or destination of a data flow, which is
outside the area of study. The symbol used is an oval containing a meaningful and
unique identifier.
Process
A process shows a transformations or manipulation of data flows within
the system. The symbol used is a rectangular box, which contains 4 descriptive
elements.
Data Flow
A data flow shows the flow of information from its source to its destination. A
data flow is represented by a line, with arrowheads showing the direction of flow.
Each data flow may be referenced by the processes or data stores at its head and tail,
or by a description of its contents.
Data Store
A data store is a holding place for information within the system: It is
represented by an open ended narrow rectangle.
A Data Flow diagram (DFD) consists of a series of bubbles joined by lines. In
the normal Convention, a DFD has four major symbols.
Circle
A process shows a transformation or manipulation of data
flows within the system. The symbol used is a circle, which contains 3
descriptive elements. An identification number appears in the upper
left hand corner. The is allocated arbitrarily at the top level and serves
Department of Computer Science & Engineering
7/30/2019 iMos Rough Report
http://slidepdf.com/reader/full/imos-rough-report 30/42
30Intelligent Mobile Health Monitoring System
as a unique reference. A location appears to the right of the identifier
and describes where in the system the process takes place. A
descriptive title is placed in the center of the box.
Arrow
A data flow shows the flow of information from its source to its
destination. A data flow is represented by a line, with arrowheads
showing the direction of flow
Rectangle
An external entity is a source or destination of a data flow,
which is outside the area of study. The symbol used is an oval
containing a meaningful and unique identifier.
Database
A data store is a holding place for information within the
system. It is represented by an open ended narrow rectangle.
In the proposed project there are three levels of diagram has been drawn to
describe the concept of the project. They are Level 0,Level 1, and Level 2 DFD.
Department of Computer Science & Engineering
7/30/2019 iMos Rough Report
http://slidepdf.com/reader/full/imos-rough-report 31/42
31Intelligent Mobile Health Monitoring System
6.1 LEVEL 0
Fig.6.1 Level 0
6.2 LEVEL 1
Department of Computer Science & Engineering
7/30/2019 iMos Rough Report
http://slidepdf.com/reader/full/imos-rough-report 32/42
32Intelligent Mobile Health Monitoring System
Fig.6.2 Level 1
6.3 LEVEL 2
Department of Computer Science & Engineering
7/30/2019 iMos Rough Report
http://slidepdf.com/reader/full/imos-rough-report 33/42
33Intelligent Mobile Health Monitoring System
Fig.6.3 Level 2
Department of Computer Science & Engineering
7/30/2019 iMos Rough Report
http://slidepdf.com/reader/full/imos-rough-report 34/42
34Intelligent Mobile Health Monitoring System
7. MODULES
7.1 SCREENS AND DESIGNS
This module deals with the apps home screen and entire app user interface
designs. Android's system UI provides the framework on top of which we build the
app. Important aspects include the Home screen experience, global device navigation,
and notifications.
• Home screen
Home is a customizable space that houses app shortcuts, folders and widgets.
Navigate between different home screen panels by swiping left and right. The
Favorites Tray at the bottom always keeps your most important shortcuts and folders
in view regardless of which panel is currently showing. Access the entire collection of
apps and widgets by touching the All Apps button at the center of the Favorites Tray.
• All apps screen
The All Apps screen lets you browse the entire set of apps and widgets that are
installed on your device. Users can drag an app or widget icon from the All Apps
screen and place it in any empty location on any Home screen.
• Recents screen
Recents provides an efficient way of switching between recently used
applications. It provides a clear navigation path between multiple ongoing tasks. The
Recents button at the right side of the navigation bar displays the apps that the user
has interacted with most recently. They are organized in reverse chronological order
with the most recently used app at the bottom. Switch to an app by touching it.
Remove an item by swiping left or right.
• System Bars
The system bars are screen areas dedicated to the display of notifications,
communication of device status, and device navigation. Typically the system bars are
displayed concurrently with your app. Apps that display immersive content, such as
movies or images, can temporarily hide the system bars to allow the user to enjoy full
screen content without distraction. The typical system bars that are displayed
concurrently with our app are Status bar, Navigation bar, Combined bar.
Department of Computer Science & Engineering
7/30/2019 iMos Rough Report
http://slidepdf.com/reader/full/imos-rough-report 35/42
35Intelligent Mobile Health Monitoring System
• Common App UI
A typical Android app consists of action bars and the app content area. The
action bar is a dedicated piece of real estate at the top of each screen that is generally
persistent throughout the app.
7.2 USER AUTHENTICATION
Patient will be authenticated with help of online medical server module. After
the successful authentication the patient can enter to the system from there he chose
the test from the mobile device.
7.3 TEST SELECTIVITY LIST
With the help of a list activity the patient can choose the type of test he is
going to take. At a time he can only choose only one test. That means either blood
pressure test or blood sugar test.
7.4 GEO-LOCATION RETRIEVAL
The geo-location of the patients mobile will be taken during the test time so
that the latitude and longitude of the mobile phone device is taken from the GPS
module of the android mobile system. These coordinates are used for geo-coding so
that patient’s location can be determined and saved.
7.5 SENDING THE DATA THROUGH INTERNET
Data including the test data and geo-location will be taken and if the mobile
device is in online mode it will be uploaded to the medical server. If the mobile is in
offline mode all the data collected has to be saved inside a local database (SQLite).
When the system becomes online the data will be uploaded
7.6 DISPLAY QUESTIONNAIRE
A questionnaire related to blood pressure and blood sugar is displayed. The
answers of these questions are saved to the user session so that on later these data can
be persisted.
Department of Computer Science & Engineering
7/30/2019 iMos Rough Report
http://slidepdf.com/reader/full/imos-rough-report 36/42
36Intelligent Mobile Health Monitoring System
7.7 BLUETOOTH PAIRING AND RETRIEVING TEST DATA
After conducting the test the result will generated in the medical device. The
Bluetooth module of the medical devices will be activated and the patients mobile
will scan and will pair with the medical device if found. Once the paring is done the
test data has to be pulled out from the medical device and saved to the user session.
7.8 DOCTOR MODULE
Handles all the administration functions who can add and delete patients anddoctors. The doctor can select and view the patients medical history. Send email feed
back to the particular patient
Department of Computer Science & Engineering
7/30/2019 iMos Rough Report
http://slidepdf.com/reader/full/imos-rough-report 37/42
37Intelligent Mobile Health Monitoring System
8.ADVANTAGES AND DISADVANTAGES
8.1 ADVANTAGES
The benefits behind deploying health monitoring technology are associated to
reducing medical error, availability of service and to issues related the problem of
constant shortage in medical staff. The other advantages are:
• Not necessary to schedule appointments for visiting
The patients need not to travel and perform registrations each
time they wish to make doctor’s appointment.
• Simplicity and Convenience of use
The system architecture of IMHMS is a simple one with no complex
system or communication architecture.
• Cost Effective
IMHMS is cost effective. WBSN setup consists of some low cost bio-
sensors. The communication from WBSN is also cheap due to the use of low
cost Bluetooth or ZigBee adapters.
8.2 DISADVANTAGES
The disadvantages of iMoS are:
• Card Guard devices can be affected by a lot of factors such as weak batteries,
incorrect arm cuff fitting, improper arm position
• Wi-Fi/3G Connection is required for diagnosis
• GPS Based Android Phone required for getting location status
Department of Computer Science & Engineering
7/30/2019 iMos Rough Report
http://slidepdf.com/reader/full/imos-rough-report 38/42
38Intelligent Mobile Health Monitoring System
9.FUTURE ENHANCEMENT
The whole system of mobile health care using biosensor network places
forward some future works such as finding the most effective mechanism for ensuring
security in biosensors considering the severe restrictions of memory and energy,
representing the collected data in the most informative manner with minimal storage
and user interaction, modelling of data so that the system will not represent all the
data but only relevant information thus saving memory. With the advancement of
sensor technologies it is not far enough when the bio-sensors itself can take necessary
actions. A patient needed glucose does not need to take it manually rather the bio-
sensors can push the glucose to the patient's body depending on the feedback from the
IMS. It seems to be impossible to achieve by everybody. But nothing is impossible.
Department of Computer Science & Engineering
7/30/2019 iMos Rough Report
http://slidepdf.com/reader/full/imos-rough-report 39/42
39Intelligent Mobile Health Monitoring System
10. CONCLUSION
Networking multiple smart sensors into an application-specific solution to
combat disease is a promising approach, which will require research with a different
perspective to resolve an array of novel and challenging problems. As wireless
networks of sensors are developed for biomedical applications, the knowledge gained
from these implementations should be used to facilitate the development of sensor
networks for new applications. Expeditious development of implanted smart sensors
to remedy medical problems presents clear benefits to individuals as well as society as
a whole. There is the obvious benefit to persons with debilitating diseases and their
families as these patients gain an enhanced quality of life. Biomedical implants that
monitor for cancer will help recovering patients maintain their health. Not only will
these individuals personally benefit from their improved health and well-being, but
society will also benefit from their increased productivity and societal contributions.
Once the technology is refined, medical costs for correcting chronic medical
conditions will be reduced. As the world population increases, the demand for these
system will only increase. We are implementing the iMoS to help the individuals as
well as the whole humanity. Our goals will be fulfilled if the iMoS can help a single
individual by monitoring his or her health and cautions him to take necessary actions
against any upcoming serious diseases.
Department of Computer Science & Engineering
7/30/2019 iMos Rough Report
http://slidepdf.com/reader/full/imos-rough-report 40/42
40Intelligent Mobile Health Monitoring System
APPENDIX
SCREENSHOTS
Department of Computer Science & Engineering
7/30/2019 iMos Rough Report
http://slidepdf.com/reader/full/imos-rough-report 41/42
41Intelligent Mobile Health Monitoring System
Department of Computer Science & Engineering
7/30/2019 iMos Rough Report
http://slidepdf.com/reader/full/imos-rough-report 42/42
42Intelligent Mobile Health Monitoring System
REFERENCES
•
A. Milenkovic, C. Otto, and E. Jovanovich. Wireless sensor networks for personal health monitoring: Issues and an implementation. Elsevier, 29(13-
14):2521-2533, Oct 2009
• I. Korhonen, R. Lappalainen: wellness monitoring system. Engineering in
Medicine and Biology Society, 20th Annual International Conference.
• Centre for Pervasive Healthcare. http://www.pervasivehealtcare.dk/
• Centre for Future Health. http://www.centerforfuturehealth.org