Final Report - Template

You might also like

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 64

Collaborative-Hadoop

By

Arooj Sajid NUST201307456BSEECS60613F


Usama Bin Tariq NUST201306057BSEECS60613F

A PROJECT REPORT SUBMITTED IN PARTIAL FULFILLMENT


OF THE REQUIREMENT FOR THE DEGREE OF
Bachelors in Computer Science

Department of Computing

School of Electrical Engineering & Computer Science


National University of Sciences & Technology
Islamabad, Pakistan
2017

i|Page
CERTIFICATE

It is certified that the contents and the form of this report titled
“Collaborative-Hadoop” submitted by Arooj Sajid
(NUST201307456BSEECS60613F) & Usama Bin Tariq
(NUST201306057BSEECS60613F) have been found satisfactory for the
requirement of degree.

Advisor: _______________________________________
(Mr. Fahad Ahmed Satti)

Co-Advisor: ___________________________________
(Dr. Shahzad Saleem)

ii | P a g e
DECLARATION

We hereby declare that the project work entitled “Collaborative-Hadoop”


submitted to the SEECS-NUST, is a record of an original work done under
the guidance of Mr. Fahad Ahmed Satti and Dr. Shahzad Saleem, and this
project work is submitted in the partial fulfillment of the requirements for
the award of the degree of Bachelors of Science in Computer Science.

Team members:

Arooj Sajid

________________________

BSCS-3B NUST201307456BSEECS60613F

Usama Bin Tariq

________________________

BSCS-3B NUST201306057BSEECS60613F

Supervisor:
Mr. Fahad Ahmed Satti

________________________

iii | P a g e
DEDICATION

To Allah the Almighty

&

To our Parents, Faculty Advisors and KTH-Lab

iv | P a g e
ACKNOWLEDGEMENT

First and foremost, we would like to express our sincere thanks to the Almighty
ALLAH for the gift of life, wisdom and understanding he had given to us, a reason for
our existence. And to our families for the love and support they had provided throughout
our life.

Mr. Fahad Ahmed Satti and Dr. Shahzad Saleem whom we regard as our
mentor and supervisor, we thank them for the expertise and intelligence they have
displayed while supervising this project. We believe this work is a result of their good
guidance and cooperation.

We cannot forget our friends in the Faculty of Computing for the academic
interactions and company they have accorded to us.

Lastly, we would like to convey our gratitude to the lecturers in our faculty for the
good job done during the 4 year period of our course. May the good lord bless them and
keep them safe.

v|Page
LIST OF ABBREVIATIONS

Terminology Meaning
ERD Entity Relation Diagram
ERM Entities Relationship Model
RAM Random Access Memory
ERM Electronic record managements
MYSQL My Structured Query Language
IT Information Technology
HTML Hyper Text Makeup Language
OLP on Line Password
ERD Entity Relation Diagram
DFD Data Flow Diagram
PIMS Pakistan Institute of Medical Sciences

GUI Graphical User Interface


DBMS Database Management System
CDs Compact Disks
JDBC Java Database Connectivity
MB Mega Bit
GHZ Giga Hertz

IV | P a g e
Table of Contents

CHAPTER 1......................................................................................................................................1

GENERAL INTRODUCTION...............................................................................................................1

1 Introduction.............................................................................................................................1
1.1 Background of the Study.......................................................................................................1
1.2 Problem Statement...............................................................................................................2
1.3.1 Main Objectives.................................................................................................................2
1.4 Scope..............................................................................................................................3
CHAPTER 2......................................................................................................................................5

LITERATURE REVIEW.......................................................................................................................5

Introductions..............................................................................................................................5
2.1 The state of Pakistan’s health Sector....................................................................................5
2.2 Why HIMS are not successful?..............................................................................................6
2.3 Already Present Solutions.....................................................................................................6
2.3.1 HOPe..................................................................................................................................6
2.3.2 Problems with HOPe..........................................................................................................6
2.3.3 Care2x................................................................................................................................7
2.3.4 Problems with Care2x........................................................................................................7
2.4 Qualities of a Good Information System...................................................................................7

2.4.1 Efficiency:...........................................................................................................................7
2.4.2 Effectiveness:.......................................................................................................................

V|Page
7
2.4.3 Performance:.....................................................................................................................8
2.5 Disadvantages of current HIMS................................................................................................8

FUNCTIONALITY AND DESIGN.......................................................................................................10

3 Introduction...........................................................................................................................10
3.1 Approach for the Development of SE-HIMAS.....................................................................10
3.1.1 Data Collection Methods.................................................................................................11
3.2.1 Patient Registration and Scheduling....................................................................................12

3.2.2 Diagnosis and Prescription:..................................................................................................12

3.2.3 Report Generation:..............................................................................................................12

3.2.5 HL-7 Standards & Data Sharing:...........................................................................................13

3.3 Tools and Techniques:............................................................................................................13

3.6 Spring Framework..................................................................................................................14


3.8 Model View Controller:..........................................................................................................18
3.10 MySQL...................................................................................................................................21

3.11 Database Design...............................................................................................................21


3.12 Systems Testing and Validation........................................................................................22
CHAPTER 4....................................................................................................................................23

4.0 Introduction........................................................................................................................23
4.2.4 System development.......................................................................................................24
4.6 Problems Faced...................................................................................................................37
4.7 System Screenshots............................................................................................................38
CONCLUSION & RECCOMENDATIONS...........................................................................................41

5.5 Limitations..............................................................................................................................42

VI | P a g e
LIST OF FIGURES

Figure 3-1 System Architecture__________________________________________________14


Figure 3-2 Spring Architecture___________________________________________________15
Figure 3-3 MVC Design________________________________________________________19
Figure 3-4 Http Request Header__________________________________________________21
Figure 3-5 Http Response Header_________________________________________________21
Figure 3-6 Database ___________________________________________________________22
Figure 4-1 Module Diagram_____________________________________________________25
Figure 4-2 ERD for treating Acute Lympho Blastic Leukemia__________________________26
Figure 4-3 ALL Use case diagram________________________________________________27
Figure 4-4 Use case diagram for Hodgkin cancer____________________________________28
Figure 4-5 Use case diagram for Ratino blastoma____________________________________29
Figure 4-6 Use case diagram for Wilm’s tumor _____________________________________30
Figure 4-7 State Diagram_______________________________________________________31
Figure 4-8 Activity Diagram____________________________________________________32
Figure 4-9 ERD for Role Based Auth_____________________________________________34
Figure 4-10 Showing List of Users_______________________________________________35
Figure 4-11 Editing a Permission_________________________________________________35
Figure 4-12 List Showing the Roles Permissions_____________________________________36
Figure 4-13 Editing User Details_________________________________________________36
Figure 4-14 Header Showing CSRF token__________________________________________37
Figure 4-15 Login Screen_______________________________________________________38
Figure 4-16 Cancers Dashboard__________________________________________________38
Figure 4-17 CBC View________________________________________________________39
Figure 4-18 Acute lymphoblastic leukemia Dashborad_______________________________39
Figure 4-19 Data Visualization__________________________________________________40

VII | P a g e
ABSTRACT

Public Hospitals in Pakistan suffer from lack of funds, low level of staff and bulk of
patients to be treated at one time and they do not have any automated system to treat
patients expediitiously and efficiently and are lagging behind in providing quality health
services to the patients. Currently there is no proper mechanism to maintain and share the
patient data and no standards are being followed in this regard and there is no availability
of health data as needed by private and government bodies like Insurance providers,
Government agencies, College & Universities , Pharmaceutical Companies etc.

As for now the registration of a patient,profiling,history maintanence is done


using paper which results in a bundles of paper files which is extremley hectic and
difficult to maintain by the hospital administration, there is no mechanism for sharing of
data in inter-hospital or intra-hospital departments, the process is slow as well, more
importantly the data generated in manual form is huge and it is not used for data analysis
for improving health standards which can lead to new search domains in medical field.

Pediatric Oncology department in PIMS suffers the same problems we intend to


solve this problem by developing a standard compliant and fully automated system which
will be divided in modules handling every phase of the patient treatment starting from
patient registration till the diagnoses.

The server side of the system will be implemented using J2EE, Spring, Hibernate
which are amongst the most advanced technologies in web domain.Front side of the
system will use AngularJs which allows implementation of flat client applications, these
applications reduce the work load on server side which is a cutting edge to use this
framework on client side.

VII | P a g e
DEFINITION OF OPERATIONAL TERMS

Hospital: is defined as the entity that provides the medical services to the patient in
questioned at a given period of time which is basically curative and preventive and is
offered in clinic unit x-ray/ ultra sound, laboratory and dental unit in the hospital.

Patient Record Management System: It is a system that can manage multiple


administrators and can have the track of the right assigned to them. It makes sure that all
the Administrators function with the system as per the rights assigned to them and they
can get their work done in efficient manner.

Medical Form: it refers to the medical document describing the patient initials,
diagnoses and treatment of a particular patient in question that can be used for future
reference in case of no improvement in the health condition of the patient hence changes
can be carried out accordingly.

VII | P a g e
CHAPTER 1

GENERAL INTRODUCTION

1 Introduction

Automation plays an important role in the global economy and in daily experience.
Engineers strive to combine automated devices with mathematical and organizational
tools to create complex systems for a rapidly expanding range of applications.

The SE-HIMAS (Standard Electronic Health Information Management & Analysis System) is
an automated system that is used to manage patient information and its administration. It
is meant to provide the Administration and Staff, with information in real-time to make
their work more interesting and less stressing.

Oncology clinic at PIMS has four cancers treatable for now, namely Acute
lymphoblastic leukemia, Ratino blasotma, Hodgkens Disease, Wilms Tumor. Each
cancer follows a different protocol to treat the patient, doctors find it hard to fill the
protocol form manually and treat the patient manually. SE-HIMAS will solve the
problem by automating the whole medical procedures for treating the patients.

1.1 Background of the Study


Public Hospitals in Pakistan suffer from lack of funds, low level of staff and bulk of
patients to be treated at one time and they do not have any automated system to treat
patients expediitiously and efficiently and are lagging behind in providing quality health
services to the patients. Currently there is no proper mechanism to maintain and share the
patient data and no standards are being followed in this regard and there is no availability

1|Page
of health data as needed by private and government bodies like Insurance providers,
Government agencies, College & Universities , Pharmaceutical Companies etc.

As for now the registration of a patient,profiling,history maintanence is done using paper


which results in a bundles of paper files which is extremley hectic and difficult to
maintain by the hospital administration, there is no mechanism for sharing of data in
inter-hospital or intra-hospital departments, the process is slow as well, more importantly
the data generated in manual form is huge and it is not used for data analysis for
improving health standards which can lead to new search domains in medical field.

1.2 Problem Statement

Patients now a days in hospitals have to follow tiresome procedures to avail hospital
services and it requires a lot of paperwork which is a headache for the hospital
administration and leading to waste of time and other resources. It also causes lag in
provisioning of required data in emergency situations which sometimes results in miss-
exchange of reports with the wrong person and other mishaps. And hospital data set
cannot be used efficiently for research purposes.

There is a dire need of a dedicated software following health (HL-7) & WHO (World
health organization) and technology standards to cater the hospital and common people
needs. It will open new research domains in Medical Sector. The solution would be built
to help administration of the hospital to go paperless & saving the patients from going
through a hectic & tiresome process. It will also provide medical trends and stats that will
help in study of cure and diseases behavior in different areas of Pakistan.

1.3 Objectives of the Study

2|Page
1.3.1 Main Objectives

Our major objective is to develop an operational Patient Information Management


System using medical Standards with for Pediatric Oncology clinic at PIMS
Hospital.

1.3.2 Specific Objectives

1) To review literature on related systems and analyze the existing


manual system.

2) To collect data and identify the system’s requirements

3) To design an automated Patient Information Management system.

4) To implement the system.

5) To test and validate the system.


1.4 Scope

This project is basically designed for Pediatric Oncology clinic at PIMS Hospital. This
hospital provides a lot of services to patients which includes; Daily treatment of patients,
Admission of patients, Keeps records about inpatients and outpatients respectively,
Billing of patients by use of a billing system and other services, with departments that
include radiography and ultra sound, pathology, pharmacy, inpatient and outpatient,
causality and dental which information will be used for making reports for researchers in

3|Page
various departments, drug/ stock taking unit at the central pharmacy and medical
practitioners.

1.5 Motivation to pursue this project

Health care has a lot of scope in upcoming technological era, new methodologies have
been introduced to ease the treatment process, by the advancement in technology and
medical standards, it is highly recommended that a computer scientist should equipped
himself/herself with the work being conducted in healthcare and use his/her knowledge to
devise ways to ease up the medical process, our project is an outcome of one such
aspect , we found out the problem, gathered requirement we needed to solve the problem.
This initiative can lead to many opportunities in health sector research especially the data
analytics and data visualization part of our project has prime importance to generate
trends and help doctors in the medical field where big data and medical research cross
their paths.

1.6 Significance of the Study

Currently the hospital operates a manual records system. With the introduction of an
automated system the following will be achieved;

1) The system is a land mark in the field of modern technology since its automated it
becomes a quick access to the required information as it is only one click away.

4|Page
2) In the field of ICT, decision support and information availability which is
required by the administration. This is because it is able to generate reports daily,
monthly and yearly. This makes it simple for managers to make decisions.

3) Electronic security is maintained as the staff and management are able to login
and access the system depending on their privileges. They are also able to work
on the policies and claims more effectively and efficiently.

1.7 How is our solution different ?


1) Standard electronic health information management & analysis system will be
built in compliance with HL-7 and WHO standards
2) Automation of patient registration will be done by using bar code and in the future
this module will be replaced by Smart card (NADRA)
3) Developing the system with a mutual consultation of users (doctors) will help in
building a system which is more user friendly with multi language support.
4) Disease classification and coding system.
5) Use of visualization techniques and HCI

5|Page
CHAPTER 2

LITERATURE REVIEW

Introductions

In this section the research, location and analysis of the existing knowledge related to the
subject of inquiry are explored and cited. It also sells at the relationship of the proposed
research for purposes of good representation and critical review of the existing literature.

Given the current situation, there is much that needs to be done, possibly in every domain
of the health sector. There is a dire need for aggressive intervention to strengthen the
network of health services, expand the outreach of health programs, and introduce
technologies to better monitor and strengthen the health programs in place. And we
believe that a good hospital information and management system (HIMS) can contribute
a lot to improve health sector in Pakistan.

2.1 The state of Pakistan’s health Sector


Pakistan’s health indicators, as acknowledged in the National Health Policy 2010,
remain amongst the worst in South Asia and, indeed, the world. Communicable diseases,
reproductive health problems and malnutrition constitute about half the national burden
of disease.

1) Respiratory infections and diarrheal diseases remain the major killer diseases in
Pakistan despite the fact that they could be prevented at relatively low costs.
2) Pakistan is one of the four remaining countries where polio remains endemic and
has the seventh highest tuberculosis burden in the world.
3) Hepatitis is endemic in the general population with 12 million people being
infected with the hepatitis B or C virus. Poor and vulnerable sections of the
population - in particular, poor women and children - are particularly badly
affected.

6|Page
4) Pakistan’s under-five mortality is the highest in South Asia except for
Afghanistan. Nearly 11,000 women die annually while giving birth – among the
highest, in the region.
5) Malnutrition remains widespread and its rates have not changed significantly over
the last two decades. There are nine million malnourished children in Pakistan
which constitutes as the second highest prevalence of underweight children in
South Asia.

As you can see from above facts that the state of health sector in Pakistan is very bad and
it needs vast improvement.

2.2 Why HIMS are not successful?


1) No understanding of the role of HMIS in organization management
2) HMIS not considered as an important/priority issue by leadership
3) Lack of organizational culture to base decision-making on facts and figures;
4) Lack of motivation to plan and develop HMIS
5) Lack of properly qualified and trained human resources to plan and develop
HMIS
6) Lack of financial support for the development of HMIS
7) Inadequate support services infrastructure for the development of HMIS

2.3 Already Present Solutions


At present, most, if not all, of the government healthcare organizations do not
have any HIS or it is of limited scope. The situation is a little better in private
sector. Some, institutions, such as, The Aga Khan University Hospital, Karachi,
and Shaukat Khanum Cancer Memorial Hospital, Lahore, have developed their
own HIS.

2.3.1 HOPe
HOPe (Hospital Operations Program) at Shaukat Khanum Cancer
Memorial Hospital. A team of about 20 staff members developed the system over
a period of 5 years. The team keep on adding modules to this as need arises and
standards are followed in this system e.g. ICD9 coding scheme is used for disease
encoding. The system is fully developed in Oracle.

7|Page
2.3.2 Problems with HOPe
When you are making system in oracle, the integration problems are
reduced to a minimum and development is relatively easy. But the important
aspect that should be taken into account is the cost. Purchasing Oracle license for
the first time, costs approximately 5 million rupees. Subsequent yearly renewal
cost is approximately 1million rupees which is not feasible for every organization
to afford.

2.3.3 Care2x
Another open source, generic, multi-language HIS is Care2x. The project
was started in May 2002 with the release of the first beta version of Care2x by a
nurse who was dissatisfied with the HIS in the hospital where she was working.
Since then, the development team has grown to over 100 members from over 20
countries. The scripting language Php and Mysql database is used in care2x.

2.3.4 Problems with Care2x


1) Lack of structured documentation, unorganized code and poor naming
conventions
2) It does not encapsulate the broad scoped, widely accepted healthcare
standard. Broad scoped standard in this context means a standard embracing
almost the entire domain in the healthcare arena (as hl7).
3) It uses PHP. There is great controversy about PHP’s capabilities in large
scale enterprise applications including scalability, security and reliability.

2.4 Qualities of a Good Information System

According to Comptroller (1995), an information system includes the following:

8|Page
2.4.1 Efficiency: a good information system should allow for input and output by
providing an objective for recording and aggregation information. It

Should be able to quickly collect and edit data, summarize results, and adjust as well as
correct errors promptly.

2.4.2 Effectiveness: a good information system should be able to attain its goals or the
goals of the organization. To simplify prompt decision making, an organization’s
information system should be capable of providing current information to appropriate
users.

2.4.3 Performance: A good information system should be able to enhance


communication among employees, deliver complex material throughout an organization.

2.4.4 Time lines: Information system should be designed to expedite capturing, storing
and reporting information in a real time scale when needed.

2.4.5 Consistency: A good information system should be reliable. Data should be


processed and compiled with consistency and uniformity. Variations in how data is
collected and reported can distort information and trend analysis.

2.5 Disadvantages of current HIMS


The National Health Policy acknowledges that the national health system is currently
failing to deliver the necessary health outcomes and to meet the pressing health needs of
the population. Pakistan faces many challenges in improving health outcomes -
particularly for the poor and marginalized who bear the major burden of diseases

A World Health Organization (WHO) report on the status of National Health


Management Information Systems in countries of the WHO Eastern Mediterranean
Region mentions a lack of motivation, over-recording, over-reporting, poor quality of

9|Page
data, limited use of information and low importance of HMIS as some of the main
problems prevailing in these countries.

The main problems are as follows:

1) Systemic weaknesses in the management and governance of the public health


system. An endemic culture of political interference and patronage at all levels
undermines effective health service management and delivery.
2) An inadequate level of public sector expenditure, insufficiently targeted to tackle
health inequities and meet the needs of the poor, vulnerable and marginalized
sections of the population. According to WHO, government expenditure on
health in 2006 amounted to only 1.4% of total government expenditure.
3) Limited capacity and resources for health research, in particular, health policy
and systems research to guide evidence-based policy and planning.
1) An expansive infrastructure that is nonetheless poorly located, inadequately
equipped and maintained, and which provides inadequate coverage and access to
essential basic services.
2) A private health sector, particularly in urban areas, which continues to expand in
an unregulated manner without a system for accreditation, not enforcing
standards.
3) Disease classification and coding system did not exist. The credibility of the
collected data was poor because it was not being collected through an organized
system.
4) Data collection and information management staff is either non-existent or not
trained to perform the job properly.
5) There is no concept of confidentiality. Medical record departments are either
non-existent or are in extremely bad shape. Data collection in health facilities is
poorly organized
6) Poorly organized data collection facilities
7) Lack of coherence between the information collected and information needed
8) Reliability issues of the collected information
9) Overall health information management system is poor
10) Existing indicators do not always respond to specific information needs
10 | P a g e
11) Information flows are fragmented
12) With a few exceptions, data consolidation and processing is done manually
13) Use of information generated is greatly limited.

11 | P a g e
CHAPTER 3

FUNCTIONALITY AND DESIGN

3 Introduction

This is a description of methods chosen to achieve the objectives of the proposed system.
It will go on to describe the techniques of data collection that will be employed in the
research study of the proposed systems.

The methods that will be applied to achieve the specific objectives are namely: Literature
review, Oral interviews, system analysis, system design, Data modeling and Black box
testing. The tools that will be used to implement the system are MySQL, HTML and
JAVA.

3.1 Approach for the Development of SE-HIMAS

The system development life cycle (SDLC) we chose is the iterative incremental model.
In this model, the system follows a series of events from the requirement definition,
system and software design, implementation and unit testing, integration and system
testing and operational maintenance. We also used different aspects from other models
12 | P a g e
like prototyping which helped us come up with system definition and analysis, data flow
diagrams (DFD) and entity relationship diagram (ERD). The ERD was used to show the
relationship between entities while the Data Flow Diagrams were used to show the flow
of data in the system.

Iterative incremental model divides the system development lifecycle into phases. During
each phase of the, a set of well-defined activities are carried out for instance at the
Analysis stage (structured analysis of requirement) was specifically carried out in focus
of the functionality of dataflow at PIMS Hospital. The system and structured analysis was
then transformed into software design (software architecture to decompose the system
into modules and representation of relationships among the modules, data structures and
algorithms for the modules to be designed.

3.1.1 Data Collection Methods

We used the following methods during data collection: Observation, Interviewing and
Questionnaires as our research methods. Through this we were able to collect raw data at
PIMS Hospital where existing reports on the current system were obtained. Verbal
interview techniques were used to interview employees from the hospital.

3.1.2 Observation
We went to the hospital and observed their daily as regards their current system and they
were manually recording the patients‟ records as specified by the receptionists, doctors,
pharmacist and cashier. A follow up was made to determine the time it took to carry out
the patient record management. We observed the system’s weaknesses like it was
vulnerable to errors.

3.1.3 Interviewing
13 | P a g e
In this method, there was interaction between us, the researchers and the Staff. Interviews
will be conducted with the medical supridendant and some potential employees to find
out what difficulties they encountered with the existing system. These interviews were
held to verify the information collected using the questionnaires since there was room to
search for further information during the interview.

3.1.4 Questionnaires
The efficiencies and inefficiencies of the current system were reviewed by issuing
questionnaires to the users of the system. This helped us to establish the requirements of
the proposed system.

3.2 Functionality:

Standard electronic health information and analysis system (SE-HIMAS) will be


developed according to Software engineering principles, following health systems
interoperability standards HL-7 & Pediatric Oncology Daignostic standards by World
Health Organization (WHO).Following will be the core modules of the system

1. Patient Registration and Scheduling


2. Diagnosis and Prescription
3. Report Generation
4. Tumor Diagnostics (ICD-10 Implementaton)
5. Data Sharing
6. HL-7 Standards
7. Data Analysis
8. Logging

3.2.1 Patient Registration and Scheduling


Patient will be registered in the system using bio data, a card will be generated
comprising of a bar code and user patient data to help identify the patient and make
information reterival from the system fast and reliable.

After the patient has been registered the appointment with the doctor will be scheduled
via scheduling module this module will keep in check the already enqued
14 | P a g e
patients,available doctors.Patient and Doctor profile will be maintained effective filtering
of appointments and later availability of data.

3.2.2 Diagnosis and Prescription:


This module will let the doctor to record diaganosis of patients.. Similary doctor will
prescribe medicing in the prescription section. It will help in easy information recording
by giving suggestion while typing.

3.2.3 Report Generation:


It will record lab test diagnosis data and a report will be generated using the above
modules and keeping in account the previous history of the patient if any.

3.2.4 Tumor Diagnostics:

The data from above modules will be fed to this tumor diagnostics and tumor will be
diagnosed using ICD-10 guides for classfication and rating of tumors issued by WHO.

3.2.5 HL-7 Standards & Data Sharing:


The function of this module is to share data across different departments and even
different hospitals wherever the data is needed, data sharing standards implemented by
HL-7 will be followed which is helpful in seemless transportaion of data.

3.2.6 Data Analysis and Visualization:

Analysis on the data generated by the SE-HIMAS and turning into a graphical visual
reprsentations are part of this module.

Some extra features that will be the part of overall system are.

1. Privacy & Security


2. Role (Permissions) based authentication system
3. Password hashing using spring security.

15 | P a g e
3.3 Tools and Techniques:
The server side of the system will be implemented using J2EE, Spring, Hibernate which
are amongst the most advanced technologies in web domain.

Front side of the system will use AngularJs which allows implementation of flat client
applications, these applications reduce the work load on server side which is a cutting
edge to use this framework on client side.

3.4 Tools:

Spring Tool Suite (STS), HAPI, Star UML, phpMyAdmin.

3.5 System Architecture

This gives a high level view of the new system with the main components of the system
and the services they provide and how they communicate. The system is implemented
using a three-tier architecture that comprises of user interface, process management and
DBMS as illustrated below.

1) Client Side:
a. Client side has been implemented using HTML, CSS, JQuery, AngularJS,
we have followed restful architecture, the development of API’z and for
their consumption the client was developed using AngularJS
2) Server Side:

16 | P a g e
a. Server side has been developed using spring, Hibernate and JSPS,
Hibernate has been used as an ORM, used to map objects over tables. Role
and permission based authentication has been implemented using MVC
approach, whereas patient treatment module has been implemented using
Restful architecture.

Figure 3-1 System Architecture

3.6 Spring Framework


The Spring Framework is an application framework and inversion of control container for
the Java platform. The framework's core features can be used by any Java application, but
there are extensions for building web applications on top of the Java EE platform.
Although the framework does not impose any specific programming model, it has
become popular in the Java community as an alternative to, replacement for, or even
addition to the Enterprise JavaBeans (EJB) model. The Spring Framework is open source.

The core features of the Spring Framework can be used in developing any Java
application, but there are extensions for building web applications on top of the Java EE
platform. Spring framework targets to make J2EE development easier to use and promote
good programming practice by enabling a POJO-based programming model.

17 | P a g e
Figure 3-2 Spring Architecture

3.6.1 Why use Spring Framework?


1) Following is the list of few of the great benefits of using Spring Framework:
2) Spring enables developers to develop enterprise-class applications using POJOs.
The benefit of using only POJOs is that you do not need an EJB container
product such as an application server but you have the option of using only a
robust servlet container such as Tomcat or some commercial product.

18 | P a g e
3) Spring is organized in a modular fashion. Even though the number of packages
and classes are substantial, you have to worry only about ones you need and
ignore the rest.
4) Spring does not reinvent the wheel instead, it truly makes use of some of the
existing technologies like several ORM frameworks, logging frameworks, JEE,
Quartz and JDK timers, other view technologies.
5) Testing an application written with Spring is simple because environment-
dependent code is moved into this framework. Furthermore, by using JavaBean-
style POJOs, it becomes easier to use dependency injection for injecting test data.
6) Spring's web framework is a well-designed web MVC framework, which
provides a great alternative to web frameworks such as Struts or other over
engineered or less popular web frameworks.
7) Spring provides a convenient API to translate technology-specific exceptions
(thrown by JDBC, Hibernate, or JDO, for example) into consistent, unchecked
exceptions.
8) Lightweight IoC containers tend to be lightweight, especially when compared to
EJB containers, for example. This is beneficial for developing and deploying
applications on computers with limited memory and CPU resources.
9) Spring provides a consistent transaction management interface that can scale
down to a local transaction (using a single database, for example) and scale up to
global transactions (using JTA, for example).
10) One other great benefit of using spring framework is that it gives you option of
dependency injection and aspect oriented programming (AOP).

3.7 Angular JS

AngularJS is a JavaScript framework by Google, designed to make your front-end


development as easy as possible.

3.7.1 Why Use Angular JS

1) REST Easy. RESTful actions are quickly becoming the standard for


communicating from the server to the client. In one line of JavaScript, you can

19 | P a g e
quickly talk to the server and get the data you need to interact with your web
pages. AngularJS turns this into a simple JavaScript object, as Models, following
the MVVM (Model View View-Model) pattern.
2) MVVM to the Rescue! Models talk to ViewModel objects (through something
called the $scopeobject), which listen for changes to the Models. These can then be
delivered and rendered by the Views, which is the HTML that expresses your
code. Views can be routed using the $routeProviderobject, so you can deep-link
and organize your Views and Controllers, turning them into navigable URLs.
AngularJS also provides stateless controllers, which initialize and control

the  $scope  object.

3) Data Binding and Dependency Injection. Everything in the MVVM pattern is


communicated automatically across the UI whenever anything changes. This
eliminates the need for wrappers, getters/setters or class declarations. AngularJS
handles all of this, so you can express your data as simply as with JavaScript
primitives, like arrays, or as complex as you wish, through custom types. Since
everything happens automatically, you can ask for your dependencies as

parameters in AngularJS service functions, rather than one giant  main()  call to

execute your code.

4) Extends HTML. Most websites built today are a giant series of  <div>  tags with

little semantic clarity. You need to create extensive and exhaustive CSS classes to
express the intention of each object in the DOM. With Angular, you can operate
your HTML like XML, giving you endless possibilities for tags and attributes.
Angular accomplishes this, via its HTML compiler and the use of directives to
trigger behaviors based on the newly-created syntax you write.
5) Enterprise-level Testing.  AngularJS requires no additional frameworks or
plugins, including testing. If you're familiar with projects, like QUnit, Mocha
or Jasmine, then you'll have no trouble learning Angular's unit-testing API
and Scenario Runner, which guides you through executing your tests in as close to
the actual state of your production application as possible.

20 | P a g e
3.8 Model View Controller:
In object-oriented programming development, model-view-controller (MVC) is the name
of a methodology or design pattern for successfully and efficiently relating the user
interface to underlying data models. The MVC pattern is widely used in program
development with programming languages such as Java, Smalltalk, C, and C++.

The MVC pattern has been heralded by many developers as a useful pattern for the reuse
of object code and a pattern that allows them to significantly reduce the time it takes to
develop applications with user interfaces.

The model-view-controller pattern proposes three main components or objects to be used


in software development:

1) A Model, which represents the underlying, logical structure of data in a software


application and the high-level class associated with it. This object model does not
contain any information about the user interface.

2) A View , which is a collection of classes representing the elements in the user


interface (all of the things the user can see and respond to on the screen, such as
buttons, display boxes, and so forth)

3) A Controller, which represents the classes connecting the model and the view,
and is used to communicate between classes in the model and view.

21 | P a g e
Figure 3-3 MVC Design

3.9 Restful Web Design

More than a decade after its introduction, REST has become one of the most
important technologies for Web applications. Its importance is likely to continue
growing quickly as all technologies move towards an API orientation. Every major
development language now includes frameworks for building RESTful Web services.
As such, it is important for Web developers and architects to have a clear
understanding of REST and RESTful services. This tutorial explains REST
architecturally, then dives into the details of using it for common API-based tasks.

While REST stands for Representational State Transfer, which is an architectural


style for networked hypermedia applications, it is primarily used to build Web
services that are lightweight, maintainable, and scalable. A service based on REST is
called a RESTful service. REST is not dependent on any protocol, but almost every
RESTful service uses HTTP as its underlying protocol

3.9.1 Features of a RESTful Services

Every system uses resources. These resources can be pictures, video files, Web pages,
business information, or anything that can be represented in a computer-based
system. The purpose of a service is to provide a window to its clients so that they can
access these resources. Service architects and developers want this service to be easy
to implement, maintainable, extensible, and scalable. A RESTful design promises that

22 | P a g e
and more. In general, RESTful services should have following properties and
features, which I'll describe in detail:

1) Representations

2) Messages

3) URIs

4) Uniform interface

5) Stateless

6) Links between resources

7) Caching

3.9.2 Representations

If you are building Web services that will be used by Web pages for AJAX calls, then
JSON is a good choice. For example a resource called "Person" can be represented as:

"ID": "1",

"Name": "M Chris",

"Email": "m.chris@gmail.com",

"Country": "Russia"

3.9.3 Messages

The client and service talk to each other via messages. Clients send a request to the
server, and the server replies with a response. Apart from the actual data, these
messages also contain some metadata about the message. It is important to have some
background about the HTTP 1.1 request and response formats for designing RESTful
Web services.

23 | P a g e
HTTP Request

Figure 3-4 Http Request Header

HTTP Response

Figure 3-5 Http Response Header

3.10 MySQL
MySQL is the world's most popular open source database. With its proven performance,
reliability and ease-of-use, MySQL has become the leading database choice for web-
based applications, covering the entire range from personal projects and websites, via e-
commerce and information services, all the way to high profile web properties including
Facebook, Twitter, YouTube, Yahoo! and many more..

3.11 Database Design.

A relational database design was used to design the database. A relational database
management system (RDBMS) is an excellent tool for organizing large amount of data
and defining the relationship between the datasets in a consistent and understandable
way. A RDBMS provides a structure which is flexible enough to accommodate almost
any kind of data. Relationships between the tables were defined by creating special

24 | P a g e
columns (keys), which contain the same set of values in each table. The tables can be
joined in different combinations to extract the needed data.

A RDBMS also offered flexibility that enabled redesign and regeneration of reports from
the database without need to re-enter the data.

3.11.1 Database Screenshots

25 | P a g e
Figure 3-6 Database

3.12 Systems Testing and Validation

Testing was done after the system was put in place. This was done in two ways.
Implementation and Unit testing was carried out on individual modules of the system to
ensure that they are fully functional units. The success of each individual unit gave us the
go ahead to carryout integration testing. All identified errors were dealt with.

As one of the final specific objectives of this study, validation of the system was
very important. Validation of the system was done by comparing it to the questions asked
by the users at hospital. Most of their answers matched what the system can do.

26 | P a g e
CHAPTER 4

Implementation and Result Discussion

4.0 Introduction

The chapter describes how the solution has been implemented and what are the main
challenges encountered in development of the system and what are the key results found
during implementation

4.1 System Analysis & Challenges

During the system study phase, requirements of PIMS were categorized into user
requirements, system and hardware requirements.

27 | P a g e
4.1.2 Requirements Specifications

After analyzing the data collected, number of requirements were formulated namely user
requirement, system hardware software attribute. These were grouped as user, functional,
non-functional and systems requirements.

4.2.3 User Requirement

During data collection, then requirements were investigated and found out how the
current system operates, not only that but also tried out which problems are faced and
how best they can be settled. The users described some of the basic requirements of the
system this includes Search for patients, Register staff, Update, staff records, patients and
View all types of reports
4.2.4 System development
After system analysis and requirement gathering our major challenge was to setup the
spring environment for the development of SE-HIMAS, the version being used for the
spring development is 4.0 with java 7, the container being used is Apache tomcat 7.
Deciding about the development of API’s was another challenge, we followed
AOP structure for the development of API’s, all the business logic has been implemented
in the controller while the interaction with the database has been implemented in the
service layer and Dao layer.

4.3 DIAGRAMS

4.3.1 Basic Modules

Registration Scheduling Prediction

28 | P a g e
Test Diagnosis
Profiling

Tumor Diagnostic Report Generation Prescription

Data Sharing

Data Analysis Logging

Communication

Figure 4-1 Module Diagram

4.3.2 ERD Diagram

29 | P a g e
Figure 4-2 ERD for treating Acute Lympho Blastic Leukemia

30 | P a g e
4.3.3 Use Cases Diagram

Figure 4-3 ALL Use case diagram

31 | P a g e
Figure 4-4 Use case diagram for Hodgkin cancer

32 | P a g e
Figure 4-5 Use case diagram for Ratino blastoma

33 | P a g e
Figure 4-6 Use case diagram for Wilm’s tumor

34 | P a g e
4.3.4 State Diagram

35 | P a g e
A state diagram for hospital management system

Go to Reception

Paying fees [Not paying] pay fees first

Getting appoinment

Wait for turn

Cheking Prescribing

Admiting

Tests or under go opn.

Discharging

[If patint good]

Discharged

Go to madical

Buying drug

Buyed

Figure 4-7 State Diagram

36 | P a g e
4.3.5 Activity Diagram

An activity diagram for hospital management system

Go to Reception

[Pay fees of docyor]

Get appoinment for doctor

Waiting for turn

Check up

[normal disease]
Prescription

Admit

Tests or Under go opn.

[If patient good]

Discharge

Go to medical

Buy drug

[Pay money]

Buy

37 | P a g e
Figure 4-8 Activity Diagram

4.4 Role Based Authentication


1) Roles are roles. They always mean the same. Roles are basically strings that
can be used to grant or deny access to URLs or methods. By default, roles in
Spring must start with ROLE_ so that Spring can distinguish them from other
authorities such as "IS_AUTHENTICATED_FULLY" when they are stored
together inside a list of Granted Authorities.
2) Granted Authority is a simple interface that does little more than wrapping a
String value that represents a role or other security-related strings like
IS_AUTHENTICATED_ANONYMOUSLY. So a Granted Authority is really
just a generic wrapper for either roles or different authentication strings.
3) Permissions are two things in the Spring Security documentation. First, the
word permission is used very often to simply indicate a permission in the
general sense of the word. In the context of complex authentication using
ACLs a permission is a string representation of the right to perform a specific
operation on a domain object. When reading the word "permission" you
should be aware of the context. In most cases it is just used in the general
sense of the word.

4.4.1 Basic Roles in Our System

1) Doctor

2) Nurse

3) Admin
38 | P a g e
There are basically three components in this module.

1) Users

Add New User, Edit / Delete User, View User List

2) Roles

Add New Roles, Edit / Delete Role, View Role List

3) Permissions

Add New permissions, Edit / Delete Permission, View Permission List

39 | P a g e
Figure 4-9 ERD for Role Based Auth.

4.4.2 Screenshots
40 | P a g e
Figure 4-10 Showing List of Users

Figure 4-11 Editing a Permission

41 | P a g e
Figure 4-12 List Showing the Roles Permissions

Figure 4-13 Editing User Details


4.5 How we made Rest Web Services Secure?

We used Synchronizer Token Pattern technique to make the Rest Web Services Secure. In
this technique each request requires, in addition to session cookie, a randomly generated
token as an HTTP parameter. When a request is submitted, the server must look up the
expected value for the parameter and compare it against the actual value in the request. If
the values do not match, the request should fail. Token is randomly generated every time
user logged into system

42 | P a g e
Figure 4-14 Header Showing CSRF token

4.6 Problems Faced

1) Spring framework: We encountered difficulties related to Spring framework.


How MVC design pattern works. How controller models and views work and
their dependencies between them. There were annotations problem while
working on this project. And also some problems related to DAO classes and
DAO Implementation.

2) Rest Web Services: We have used Rest web services in our system were used
as main target. In Spring MVC, lots of problems were faced while making rest
web services like what type of data the rest service take and response. The
major difficulty was how to consume the web services.

3) Hibernate: Hibernate is most popular ORM in java. While working on it there


were problems while integrate in with spring mvc. Difficulties were faced

43 | P a g e
while creating one too many relationships, many to many relationships and
also when inserting and retrieving data.

4) Standards Implementation: We faced difficulties in implementing HL-7 and


ICD-10 Health standards. How they should be incorporated in our system and
how to implement them.

4.7 System Screenshots

Figure 4-15 Login Screen

Figure 4-16 Cancers Dashboard

44 | P a g e
Figure 4-17 CBC View

45 | P a g e
Figure 4-18 Acute lymphoblastic leukemia Dashborad

Figure 4-19 Data Visualization

46 | P a g e
CHAPTER 5

CONCLUSION & RECCOMENDATIONS

47 | P a g e
5.1 Conclusion

The core reason for the establishment of computerizing patient records management
system is to enable the hospital administrators in a convenient, fair and timely manner.
This system has automated the medical and administrative procedures at oncology clinic
in PIMS.The most important thing is that the doctors and staff are satisfied with the
system. This system will increase the efficiency of doctors and paperless environment
will be created. The data gathered through this system can be used for the research and
studying trends in cancer patients.

5.2 How does this project impact our society?

Health care has a vital role for both the IT and Medical fields, SE-HIMAS has a great
impact on the society the system has been automated which facilitates the doctors and
admin in treatment process, also the data which will be generated using SE-HIMAS can
be fed to different analytical algorithm to study the trends and analysis can be done on
this data to make the improvements in cancer patients treatment.

5.3 How does this project improve our current understanding?

By making this system we have learned a lot. We got to deeply understand the spring
framework and its architecture, how REST web services works in spring. We also get to
understand how the Health management systems are made and what are the factors that
have to be considered while making a health management system. This was effectively
48 | P a g e
done through reading of literature and research. We also learned a lot about health
standards like ICD-10 and HL-7 and how much they are important in health management
systems. The whole process of developing the system was an opportunistic challenge.
Seeing the system into a tangible system was a rewarding exercise.

5.4 Recommendations

Training of all the members of the staff in the hospital to get accustomed to the system
will be a priority. This being a new system, some members of the staff’s management
will get threatened that the computerized patient records management system will replace
their jobs. We would recommend that management of the hospital educates the staff of
how this system will operate and how it will supplement their efforts.

5.5 Limitations
1) The system is for internal users only, and will be deployed on the closed network
for the concern of security issues, doctor or any other system user cannot access
the system outside of the network.
2) By the permission of concerning authorities system can be deployed on the public
network to allow access from outside of the network. System lacks the displaying
of MRI records on the computer screen that can lead to a new area of work,
implementing DICOM standards for MRI reports and X-Rays
3) The system is not generic it is specifically made for the oncology clinic at PIMS.

5.6 Future Recommendations

There is always room for improvement we believe in evolution of a system resulting in


improved efficiency of a design, moreover the software is always evolving, and to meet
the need of modern medical health care system has to be improved over the period of
49 | P a g e
time. Following can be the future recommendations to that can be hold as a ground to
work upon.

1) Mobile application for the whole system to facilitate the doctors and
administration
2) Improved user interface for the doctors according to HCI principles and standards
3) Smart card integration
4) Incorporating future health standards (Improvement in HL7 and ICD-10)
5) Data analytics and data visualization for studying the trends in the medical
field.

REFERENCES

1) Mennel, P.A (2006) “management information systems”Figure 1 information


management vs. decision making. Loudon.

2) Ervin, J. R (2000) “Dynamic delivery of information via the world wide web”
library Hi tech 18, 1:55-60.

3) Bapco, W. (2008) “information management breakdown”


information management in organizations
4) http://devnet.org.pk/improving-healthcare-information-system-in-pakistan/
5) http://www.jica.go.jp/pakistan/english/activities/activity02_03.ht
6) http://icd10.uchc.edu/pdfs/2015/oncology.pdf
7) http://www.who.int/classifications/icd/en/
50 | P a g e
8) http://apps.who.int/classifications/icd10/
9) http://www.hl7.org/
10) http://hl7api.sourceforge.net/
11) https://docs.spring.io/spring-security/site/docs/3.0.x/reference/springsecurity.html

51 | P a g e
52 | P a g e
53 | P a g e

You might also like