A Project Report On "A Digital Step For ASHA - National Rural Health Mission"
A Project Report On "A Digital Step For ASHA - National Rural Health Mission"
Project Report
On
Submitted By
Acadamic Year
2019-2020
CERTIFICATE
This is to certify that the project entitled, “A Digital Step for ASHA –
National Rural Health Mission” submitted by Miss. Rathod Shivyani Balaji,
Miss. Akanksha Suryakant Wadewale, Mr. Mogadpally Sameer
Laminarayan, Mr. Phulari Hrishikesh Nagesh to Maharashtra State Board Of
Technical Education Mumbai as Partial fulfillment of Diploma in Computer
Engineering is record of bonafied work carried out by him under my supervision
and guidance. The matter contained in thin project work has not been submitted to
any other institute for award of any Degree or Diploma.
Principal
Following team has done appropriate work related to the “A Digital Step
for ASHA – National Rural Health Mission” in partial fulfillment for the award
of Diploma in Computer Engineering of ―MSBTE‖ and is being submitted to
Gramin Polytechnic Vishnupuri, Nanded.
Project Teacher
Acknowledgement
We would like to thank our scheme, faculties and mentors for giving us the
opportunity to work under their guidance and help us in our final project. I would like to thank
our beloved principal Dr. Pawar V.S. who is the force behind this project. My sincere thanks to
Ms. Dudhmal M.N. as our internal project guide for giving us valuable inputs and ideas right
from the selection of topic for project till its successful completion.
I thank Mr. Wahi G.S (HOD of computer department) for his ongoing support and
encouragement in every aspect Last but not the least entire staff of Department of Computer
Engineering for guiding their thoughts and vision.
The successful completion of our final project report would not have been possible
without the dedicated support from all our mentors, family and friends.
Finally, yet importantly I would like to express my heartfelt thanks to my beloved parents
for their blessings, my friends, and all those who supported me directly or indirectly for their
help and wishes for successful completion of this project.
This is an open source Android application developed specifically for frontline health
workers in India. It’s is an all-in-one job aid and electronic medical record system that replaces
multiple paper-based tools and helps health workers gain access to the most up-to-date training
and information in easy-to-understand, convenient formats that work for them. With this
application, health workers such as India’s ASHAs—which stands for Accredited Social Health
Activists—can use their smartphones to update skills, stay in touch with supervisors, and track
and report crucial data about health issues in their communities.
The National Rural Health Mission (NRHM) was launched on 12th April 2005 with an
objective to provide effective health care to the rural population with emphasis on poor women
& children. One of the key components of the NRHM is to provide every village in the country
with a trained female community health activist i.e. Accredited Social Health Activist (ASHA).
The ASHA is expected to be an interface between the community and the public health system.
The main objective of having ASHA’s is to determine the health awareness among rural
population.
ASHA is one of the core strategy proposed by NRHM. ASHA refers to the women
health workers of village level who works to improve the condition of health at grass root level
of mothers, infants, and old aged, sick and disabled people. Each ASHA is set up over 1000
population. ASHA acts as a link between a community and the health provider. The main aim of
having ASHA’s in our country was to reduce the Maternal Women and Babies death rate.
ASHA mainly works under PHC (Primary Health Center) which is a primary health
center which is available in each 5000 to 10000 people. All these record can be maintained in
this application which will provide simple way for ASHA’s.
Index
Introduction
This is an open source Android application developed specifically for frontline health
workers in India. It’s is an all-in-one job aid and electronic medical record system that replaces
multiple paper-based tools and helps health workers gain access to the most up-to-date training
and information in easy-to-understand, convenient formats that work for them. With this
application, health workers such as India’s ASHAs—which stands for Accredited Social Health
Activists—can use their smartphones to update skills, stay in touch with supervisors, and track
and report crucial data about health issues in their communities. They can use the app to teach
new parents how to protect their babies from infection or dehydration, how to breastfeed, and
how to identify symptoms of serious illness. If a mother or baby needs medical attention, an
ASHA can use this app to quickly refer them to a doctor who can help.
The National Rural Health Mission (NRHM) was launched on 12th April 2005 with an
objective to provide effective health care to the rural population with emphasis on poor women
& children. One of the key components of the NRHM is to provide every village in the country
with a trained female community health activist i.e. Accredited Social Health Activist (ASHA).
ASHA is a health activist in the community, who will create awareness on health and its
determinants and mobilize the community towards local health planning and increased utilization
and accountability of the existing health services. The ASHA is expected to be an interface
between the community and the public health system. The main objective of having ASHA’s is
to determine the health awareness among rural population.
Health is a function, not only of medical care but also of the overall integrated
development of society, cultural, economic, educational, social and political; each of these
aspects has a deep influence on health, which in turn influences all these aspects. Hence, it is not
possible to raise the health status and quality of life of people unless such efforts are integrated
with the wider efforts to bring about the overall transformation of a society. Good health and
society go together. ASHA will be chosen through a rigorous process of selection involving
various community groups, self-help groups, Anganwadi Institutions, the Block Nodal officer,
District Nodal office, the village Health Committee and the Gram Sabha.
ASHA is one of the core strategy proposed by NRHM. ASHA refers to the women
health workers of village level who works to improve the condition of health at grass root level
of mothers, infants, and old aged, sick and disabled people. The success of NRHM lies,
according to ASHAs functioning. Each ASHA is set up over 1000 population. ASHA acts as a
link between a community and the health provider. Earlier ASHA was established in almost 18
states of India as the government has focused on these states to improve the health conditions
and infrastructure but now, National Rural Health Mission has fulfilled its promise of one ASHA
in every village of the high focus states. ASHAs in the programme, there is one for every 1000
population in almost every part of the country.
ASHA stands for Accredited Social Health Activist. The main aim of having ASHA’s
in our country was to reduce the Maternal Women and Babies death rate. ASHA’ s main work
is to maintain each and every record of her corresponding 1000 people. To maintain their family
details like family members, how many are of above 30 age, how many of under 0 to 5 years,
how many persons having diseases and which ones, which treatment they received till date, if not
then concern them to a doctor or PHC i.e. Primary Health Centre. ASHA mainly works under
PHC which is a primary health center which is available in each 5000 to 10000 people. All these
record can be maintained in this application which will provide simple way for ASHA’s.
Background:
With 56,000 maternal and 876,000 newborn deaths each year, India accounts for 19% of
all maternal and 29% of newborn deaths globally. Accredited social health activists (ASHAs), a
new cadre of community health workers (CHWs) instituted as part of India's National Rural
Health 3 Mission (NRHM), can prevent many of these deaths by helping women and their
families recognize maternal and neonatal danger signs and promptly seek care. However, a
majority of ASHAs are low-literate village women, and they face significant operational
challenges in conducting routine maternal, newborn, and child health (MNCH) activities and in
keeping their skills updated. In particular, ASHAs' lack of access to health care information,
refresher training, supportive supervision, and user-friendly job aids compromise their ability to
contribute to 4, 5 improved maternal and newborn health outcomes. Existing paper-based job
aids include text-heavy reference materials, bulky counseling flipbooks, complex newborn care
checklists, and reporting formats that are not suitable for low-literate ASHAs. However, the near
ubiquity of mobile phones throughout the developing world, including India, has led to the
emergence of mHealth applications that are potentially effective tools for supporting CHWs
across a range of activities.
Chapter 2
Area of Use
Area of use for this android application is at every ASHA’s android phone or
smartphone. India’s primary healthcare system is based on the Primary Health Centre (PHC)
and these PHCs provide treatment free of cost. These are the government hospitals which
provides free of cost treatments to the rural area people for their betterment. ASHAs work under
these PHCs. They give all the reports to their corresponding PHCs. So with using this application
ASHAs can store all the data with the help of this app and communicate with the superiors and
PHCs who sanctions their payments according to their work. So this application can be used by
each ASHA workers for easy going efforts. PHP’s are present all over the India that’s why it’s
not like we can use this application only in Maharashtra but we may also use this all over the
India, because ASHA’s are present all over the country. They provide all the services to rural
people free of cost. It includes so many missions provided by government. The task of ASHA is
to provide these facilities to the ground level people from count one. And maintaining these
records is not easy so this application will be really helpful for them.
Chapter 3
System Analysis
In our country means in Indian states like Uttarakhand, Uttar Pradesh, Gujrat this kind
of applications for ASHA workers are developed and already used. It really helped all the
ASHAs to work with an application. The manual work which they used to do in registers or
paper way instead they used application and it really made it simple and easy. But in
Maharashtra no such application still is in use or yet no ASHAs are using this kind of
applications. So, that we thought to develop something which will be really helpful for rural
people. It is very mandatory nowadays in Maharashtra to provide such kind of tools and facilities
to ASHA workers because all the information they store is manually done in registers or in write
up way. It is very time consuming and it requires very efforts and also there are chances of
mistakes. This we can reduce by such applications.
Our android application provides simple visual way to the workers. Because ASHAs
education criteria is minimum 10th pass that means they are not very educated but they can surely
understand how to use an application. It stores all the records of each person and regarding their
health and again their treatments, again if there is a child then their immunization, follow ups
from doctors, how many visits she has given to a particular house this month, etc., ASHA stores
and maintains her data in registers. It is very difficult to maintain such a data in write format or
on pages. Then she gives the hard copies to her supervisor and on the basis of the work, her
payment get sanctioned. Performance based payment system is there for ASHAs. So this is
manually done but with the help of this application all this problems will get solved.
In this project we are providing one android application for ASHA workers which will
provide basic and good functionalities of storing data and also providing it to Block Facilitator. It
will contain many sub modules or pages which are the responsibilities of ASHA worker. These
pages provide them a simple visual way in their convenient language so that they can add very
comfortably.
Also with an android application the project contain a website for admin which is block
facilitator in this case. We are using Bootstrap which provides a responsive and flexible user
interface to the admin. By which he or she can easily track the information of people as well as
ASHA’s using this website. With this system the work of ASHA becomes very easy and simple.
Chapter 4
System Environment
Android is a Linux-based operating system for mobile devices such as smartphones and
tablet computers. It is developed by the Open Handset Alliance led by Google . Android has a
large community of developers writing applications ("apps") that extend the functionality of the
devices. Developers write primarily in a customized version of Java.
However, in September 2010, Linux kernel developer Rafael J. Wysocki added a patch
that improved the mainline Linux wakeup events framework. He said that Android device drivers
that use wakelocks can now be easily merged into mainline Linux, but that Android's
opportunistic suspend features should not be included in the mainline kernel. In 2011 Linus
Torvalds said that "eventually Android and Linux would come back to a common kernel, but it
will probably not be for four to five years".
In December 2011, Greg Kroah-Hartman announced the start of the Android Mainlining
Project, which aims to put some Android drivers, patches and features back into the Linux
kernel, starting in Linux 3.3. further integration being expected for Linux Kernel 3.4.
4.1.2 Application Framework:
Developers have full access to the same framework APIs used by the core applications.
The application architecture is designed to simplify the reuse of components; any application can
publish its capabilities and any other application may then make use of those capabilities (subject
to security constraints enforced by the framework). This same mechanism allows components to
be replaced by the user.
A rich and extensible set of Views that can be used to build an application, including
lists, grids, text boxes, buttons, and even an embeddable web browser
Content Providers that enable applications to access data from other applications (such as
Contacts), or to share their own data
A Resource Manager, providing access to non-code resources such as localized strings,
graphics, and layout files
A Notification Manager that enables all applications to display custom alerts in the status
bar
An Activity Manager that manages the lifecycle of applications and provides a common
navigation backstack
4.1.3 Libraries:
Android includes a set of C/C++ libraries used by various components of the Android
system. These capabilities are exposed to developers through the Android application
framework. Some of the core libraries are listed below:
System C library - a BSD-derived implementation of the standard C system library
(libc), tuned for embedded Linux-based devices
Media Libraries - based on PacketVideo's OpenCORE; the libraries support playback
and recording of many popular audio and video formats, as well as static image files,
including MPEG4, H.264, MP3, AAC, AMR, JPG, and PNG
Surface Manager - manages access to the display subsystem and seamlessly composites
2D and 3D graphic layers from multiple applications
LibWebCore - a modern web browser engine which powers both the Android browser
and an embeddable web view
SGL - the underlying 2D graphics engine
3D libraries - an implementation based on OpenGL ES 1.0 APIs; the libraries use either
hardware 3D acceleration (where available) or the included, highly optimized 3D
software rasterizer
FreeType - bitmap and vector font rendering
SQLite - a powerful and lightweight relational database engine available to all
applications
Android relies on Linux version 2.6 for core system services such as security, memory
management, process management, network stack, and driver model. The kernel also acts as an
abstraction layer between the hardware and the rest of the software stack.
You should update to the latest tools or platform using the Android SDK and AVD Manager,
rather than downloading a new SDK starter package.
http://dl.google.com/android/android-sdk_r16-macosx.zip
Here's an overview of the steps you must follow to set up the Android SDK:
1. Prepare your development computer and ensure it meets the system requirements.
2. Install the SDK starter package from the table above. (If you're on Windows, download
the installer for help with the initial setup.)
3. Install the ADT Plugin for Eclipse (if you'll be developing in Eclipse).
4. Add Android platforms and other components to your SDK.
5. Explore the contents of the Android SDK (optional).
Eclipse IDE
Eclipse 3.6 (Helios) or greater
Note: Eclipse 3.5 (Galileo) is no longer supported with the latest version of ADT.
Eclipse JDT plugin (included in most Eclipse IDE packages)
Several types of Eclipse packages are available for each platform. For developing
Android applications, we recommend that you install one of these packages:
o Eclipse IDE for Java Developers
o Eclipse Classic
o Eclipse IDE for Java EE Developers
JDK 5 or JDK 6 (JRE alone is not sufficient)
Android Development Tools plugin (recommended)
Not compatible with Gnu Compiler for Java (gcj)
Note that the disk-space requirements above are in addition to those of the Eclipse IDE, JDK, or
other prerequisite tools that you may need to install on your development computer.
Make a note of the name and location of the SDK directory on your system—you will
need to refer to the SDK directory later, when setting up the ADT plugin and when using the
SDK tools from the command line.
If you prefer to work in a different IDE, you do not need to install Eclipse or ADT. Instead, you
can directly use the SDK tools to build and debug your application. The Introduction to Android
application development outlines the major steps that you need to complete when developing in
Eclipse or other IDEs.
The last step in setting up your SDK is using the Android SDK and AVD Manager (a tool
included in the SDK starter package) to download essential SDK components into your
development environment.
The SDK uses a modular structure that separates the major parts of the SDK—Android
platform versions, add-ons, tools, samples, and documentation—into a set of separately
installable components. The SDK starter package, which you've already downloaded, includes
only a single component: the latest version of the SDK Tools. To develop an Android
application, you also need to download at least one Android platform and the associated platform
tools. You can add other components and platforms as well, which is highly recommended.
If you used the Windows installer, when you complete the installation wizard, it will
launch the Android SDK and AVD Manager with a default set of platforms and other
components selected for you to install. Simply click Install to accept the recommended set of
components and install them. You can then skip to Step 5, but we recommend you first read the
section about the Available Components to better understand the components available from the
Android SDK and AVD Manager.
You can launch the Android SDK and AVD Manager in one of the following ways:
From within Eclipse, select Window > Android SDK and AVD Manager.
On Windows, double-click the SDK Manager.exe file at the root of the Android SDK
directory.
On Mac or Linux, open a terminal and navigate to the tools/ directory in the Android
SDK, then execute:
android
To download components, use the graphical UI of the Android SDK and AVD Manager to
browse the SDK repository and select new or updated components (see figure 1). The Android
SDK and AVD Manager installs the selected components in your SDK environment. For
information about which components you should download, see Recommended Components.
Figure1. The Android SDK and AVD Manager's Available Packages panel, which shows the
SDK components that are available for you to download into your environment.
By default, there are two repositories of components for your SDK: Android Repository and
Third party Add-ons.
SDK Tools — Contains tools for debugging and testing your application and other utility
tools. These tools are installed with the Android SDK starter package and receive
periodic updates. You can access these tools in the <sdk>/tools/ directory of your SDK.
To learn more about them, see SDK Tools in the developer guide.
SDK Platform-tools — Contains platform-dependent tools for developing and
debugging your application. These tools support the latest features of the Android
platform and are typically updated only when a new platform becomes available. You can
access these tools in the <sdk>/platform-tools/ directory. To learn more about them, see
Platform Tools in the developer guide.
Android platforms — An SDK platform is available for every production Android
platform deployable to Android-powered devices. Each SDK platform component
includes a fully compliant Android library, system image, sample code, and emulator
skins. To learn more about a specific platform, see the list of platforms that appears under
the section "Downloadable SDK Components" on the left part of this page.
USB Driver for Windows (Windows only) — Contains driver files that you can install
on your Windows computer, so that you can run and debug your applications on an actual
device. You do not need the USB driver unless you plan to debug your application on an
actual Android-powered device. If you develop on Mac OS X or Linux, you do not need
a special driver to debug your application on an Android-powered device. See Using
Hardware Devices for more information about developing on a real device.
Samples — Contains the sample code and apps available for each Android development
platform. If you are just getting started with Android development, make sure to
download the samples to your SDK.
Documentation — Contains a local copy of the latest multiversion documentation for the
Android framework API.
The Third party Add-ons provide components that allow you to create a development
environment using a specific Android external library (such as the Google Maps library) or a
customized (but fully compliant) Android system image. You can add additional Add-on
repositories by clicking Add Add-on Site.
The SDK repository contains a range of components that you can download. Use the
table below to determine which components you need, based on whether you want to set up a
basic, recommended, or full development environment:
Environment SDK Component Comments
Basic SDK Tools If you've just installed the SDK starter package,
then you already have the latest version of this
component. The SDK Tools component is required
to develop an Android application. Make sure you
keep this up to date.
SDK Platform- This includes more tools that are required for
tools application development. These tools are platform-
dependent and typically update only when a new
SDK platform is made available, in order to support
new features in the platform. These tools are always
backward compatible with older platforms, but you
must be sure that you have the latest version of
these tools when you install a new SDK platform.
Full Google APIs The Google APIs add-on gives your application
(plus access to the Maps external library, which makes it
Recommended) easy to display and manipulate Maps data in your
application.
Once you've installed at least the basic configuration of SDK components, you're ready to
start developing Android apps. The next section describes the contents of the Android SDK to
familiarize you with the components you've just installed.
Once you've installed the SDK and downloaded the platforms, documentation, and add-
ons that you need, we suggest that you open the SDK directory and take a look at what's inside.
The table below describes the full SDK directory contents, with components installed.
Name Description
add-ons/ Contains add-ons to the Android SDK development environment, which let
you develop against external libraries that are available on some devices.
platforms/ Contains a set of Android platform versions that you can develop
applications against, each in a separate directory.
<platform>/ Platform version directory, for example "android-11". All platform version
directories contain a similar set of files and subdirectory structure. Each
platform directory also includes the Android library (android.jar) that is used
to compile applications against the platform version.
samples/ Sample code and apps that are specific to platform version.
tools/ Contains the set of development and profiling tools that are platform-
independent, such as the emulator, the Android SDK and AVD Manager,
ddms, hierarchyviewer and more. The tools in this directory may be updated
at any time using the Android SDK and AVD Manager and are independent
of platform releases.
SDK Readme.txt A file that explains how to perform the initial setup of your SDK, including
how to launch the Android SDK and AVD Manager tool on all platforms.
SDK Windows SDK only. A shortcut that launches the Android SDK and AVD
Manager.exe Manager tool, which you use to add components to your SDK.
Optionally, you might want to add the location of the SDK's tools/ and platform-tools to
your PATH environment variable, to provide easy access to the tools.
4.2 Android's Features:
Handset layouts
o 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
o SQLite, a lightweight relational database, is used for data storage purposes.
Connectivity
o Android supports connectivity technologies including GSM/EDGE, IDEN,
CDMA, EV-DO, UMTS, Bluetooth, Wi-Fi, LTE, NFC and WiMAX.
Messaging
o SMS and MMS are available forms of messaging, including threaded text
messaging and now Android Cloud To Device Messaging (C2DM) is also a part
of Android Push Messaging service.
Multiple language support
o Android supports multiple languages.
Web browser
o The web browser available in Android is based on the open-source WebKit layout
engine, coupled with Chrome's V8 JavaScript engine. The browser scores
100/100 on the Acid3 test on Android 4.0.
Java support
o While most Android applications are written in Java, there is no Java Virtual
Machine in the platform and Java byte code is not executed. Java classes are
compiled into Dalvik executables and run on Dalvik, 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 applications.
Media support
o Android supports the following audio/video/still media formats: WebM, 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,
FLAC, WAV, JPEG, PNG, GIF, BMP.[71]
Streaming media support
o RTP/RTSP streaming (3GPP PSS, ISMA), HTML progressive download
(HTML5 <video> tag). Adobe Flash Streaming (RTMP) and HTTP Dynamic
Streaming are supported by the Flash plugin. Apple HTTP Live Streaming is
supported by RealPlayer for Android, and by the operating system in Android 3.0
(Honeycomb).
Additional hardware support
o Android can use video/still cameras, touchscreens, GPS, accelerometers,
gyroscopes, barometers, magnetometers, dedicated gaming controls, proximity
and pressure sensors, thermometers, accelerated 2D bit blits (with hardware
orientation, scaling, pixel format conversion) and accelerated 3D graphics.
Multi-touch
o 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 at
the time). Google has since released an update for the Nexus One and the
Motorola Droid which enables multi-touch natively.
Bluetooth
o Supports A2DP, AVRCP, sending files (OPP), accessing the phone book (PBAP),
voice dialing and sending contacts between phones. Keyboard, mouse and
joystick (HID) support is available in Android 3.1+, and in earlier versions
through manufacturer customizations and third-party applications.
Video calling
o Android does not support native video calling, but some handsets have a
customized version of the operating system that supports it, either via the UMTS
network (like the Samsung Galaxy S) or over IP. Video calling through Google
Talk is available in Android 2.3.4 and later. Gingerbread allows Nexus S to place
Internet calls with a SIP account. This allows for enhanced VoIP dialing to other
SIP accounts and even phone numbers. Skype 2.1 offers video calling in Android
2.3, including front camera support.
Multitasking
o Multitasking of applications is available.
Voice based features
o Google search through voice has been available since initial release. Voice actions
for calling, texting, navigation, etc. are supported on Android 2.2 onwards.
Tethering
o Android supports tethering, which allows a phone to be used as a wireless/wired
Wi-Fi hotspot. Before Android 2.2 this was supported by third-party applications
or manufacturer customizations.
Screen capture
o Android supports capturing a screenshot by pressing the power and volume-down
buttons at the same time. Prior to Android 4.0, the only methods of capturing a
screenshot were through manufacturer and third-party customizations or
otherwise by using a PC connection (DDMS developer's tool). These alternative
methods are still available with the latest Android.
External storage
o Most Android devices include microSD slot and can read microSD cards
formatted with FAT32, Ext3fs or Ext4fs file system. To allow use of high-
capacity storage media such as USB flash drives and USB HDDs, many Android
tablets also include USB 'A' receptacle. Storage formatted with FAT32 is handled
by Linux Kernel VFAT driver, while 3rd party solutions are required to handle
other popular file systems such as NTFS, HFS Plus and exFAT.
4.3 Version history:
Android has seen a number of updates since its original release, each fixing bugs and adding
new features. Each version is named, in alphabetical order, after a dessert.
Cupcake
Donut
Eclair
Froyo
Gingerbread
Honeycomb
3.1 Honeycomb, released in May 2011, added support for extra input devices, USB
host mode for transferring information directly from cameras and other devices, and
the Google Movies and Books apps.
3.2 Honeycomb, released in July 2011, added optimization for a broader range of
screen sizes, new "zoom-to-fill" screen compatibility mode, loading media files
directly from SD card, and an extended screen support API. Huawei MediaPad is the
first 7 inch tablet to use this version.
Ice Cream Sandwich
Jelly Bean
KitKat
Lollipop
Marshmallow
Nougat
Oreo
Pie
Android 10
Chapter 5
System Design
TC_4 To verify working of Clicking on Family It should Display Displaying Data Pass
Family survey sub survey sub module Data of family of family survey
module survey
TC_5 To verify working of Clicking on Total It should Display Displaying Data Pass
Total immunization immunization sub Data of of immunization
sub module module immunization
TC_6 To verify working of Clicking on Total It should display Displaying data Pass
Total Tuberculosis Tuberculosis patients data of of Tuberculosis
patients sub module sub module Tuberculosis patients
patients
TC_7 To verify working of Clicking on Total It should display Displaying Total Pass
Total Adolescent Adolescent girls sub Total Adolescent Adolescent girls
girls sub module module girls
TC_8 To verify working of Clicking on Total It should display Displaying Total Pass
Total Pregnant lady Pregnant lady sub Total Pregnant Pregnant lady
sub module module lady
TC_9 To verify working of Clicking on Total By It should display Displaying Total Pass
Total By birth low birth low weight Total By birth By birth low
weight badies sub badies sub module low weight weight badies
module badies girls
TC_10 To verify working of Clicking on Total It should display Displaying Total Pass
Total Birth and Birth and Death record Total Birth and Birth and Death
Death record sub sub module Death record record
module
TC_11 To verify working of Clicking on Total It should display Displaying Total Pass
Total Prerna Prerna prakalpa sub Total Prerna Prerna prakalpa
prakalpa sub module module prakalpa data. data.
TC_12 To verify working of Clicking on Admin It should display Displaying Pass
Admin Change Change Password sub Changing Changing
Password sub module password page password page
module
TC_13 To verify working of Clicking on Logout Admin should Admin is logged Pass
Logout get logged out out and
and display Displaying Login
Login page Page
ASHA worker Test Cases:
Modules
6.1 Module – 1:
Module 1 consists of Admin phase. We have developed a website for Admin Side. Role
of admin in this project plays Block Facilitator. Block Facilitators are the supervisors of ASHA
workers of their corresponding PHC’s. PHC stands for Primary Health Center. Primary Health
Centers are present all over the India for every 5000 to 10000 people. Primary Health Centers
have Block Facilitator who is the supervisors of ASHA workers. They monitor all the ASHA’s,
their work, their details like personal details, their performance, etc. Block Facilitator sees their
performance and according to that ASHA’s payments get sanctioned with the sign of Medical
Officer which is the in-charge of PHP i.e. Primary Health Center. So supervisor will have to be
disciplined and their work should be in proper way that’s why this website will help them to
control all the working of ASHA’s and also see their performance.
1. Login Page: This page will contain the login of admin i.e. Block Facilitator. It will ask
username and password of admin for logging it and it will check the username and
password from database whether it is correct or not and after successful logging it will
redirect him or her to home page.
2. Home: This page will contain the homepage of the website. It will have all sections
being displayed to the admin whichever he wanted to choose he will go for it. He can
control all the details of ASHA’s from this website.
3. Block Facilitator Profile: This page will contain the profile of Block Facilitator. His
personal details, work details all of them. He can also modify it.
4. ASHA workers: This page will contain the all details of available all ASHA’s of their
area. Their personal as well as work details of ASHA’s. Also listing of all ASHA’s.
5. Approve and reject Requests: This will contain the new and pending requests of
ASHA’s new registration or old registration which had been deactivated. This will also
contain activate deactivate options so that any person cannot login or use android
application only ASHA’s can use it.
6. Admin Change Password: This will contain the password changing options. If
admin wants to change his or her password he can change it from this.
7. Pending ASHA requests: This will contain pending ASHA requests which has not
been activated or deactivated. Only admin can activate or deactivate them till then ASHA
cannot use the application.
8. Family Survey: This will contain and display the details of each and every family
details of their corresponding area. It will display family details which has done the
survey of it from ASHA.
9. Total Immunization: This will contain the details of baby immunization. All doses
and also their dates of each baby or child it will store. And also display it to admin.
10. Total Tuberculosis Details: This will contain the details of tuberculosis patients
present in their area and also their treatment details. Also their doses.
11. Pregnant Ladies: This will contain the detailed information of pregnant ladies also
their ante natal and post natal care details. Also contain the pre-delivery and post-delivery
and pre pregnancy and post pregnancy details.
12. Adolescent Girls: This will contain the detailed information of adolescent girls or
teenager girls. Whether they have been provided iron folic tablets and sanitary napkins
etc., their personal details also.
13. By birth low weight Babies: This will contain the information of low weight babies
from birth. It has their all details their treatments, doses, diet, follow ups, their weight
growth.
14. Birth and Death Records: This will contain the details of birth and death records of
people having in their area.
15. Prerna Prakalpa: This will contain the details of farmer which was filled by
ASHA’s. Their answers from the different-different questions and also the score from it
for their psychological pressure.
6.2 Module – 2
ASHA worker:
This is the second module of the project having an android application for ASHA’s which
stands for accredited social health activist. The application is having all facilities of working
which they used to do in registers or in write way or paper based. This app will reduce the
complexity of word also reduce the time and effort which they give in their work completion.
This will make ASHA’s very digital and provide them a platform from which they can do their
work very fast and in simple way.
1. Welcome Page: This will contain the welcome page and some instructions regarding
to the application when user first time install it these fragments get displayed. They give
them some brief information about how this app should be used. Next time while logging
these pages will not be displayed.
2. Login: This will contain the login details and page of ASHA’s. It will ask them to enter
mobile number and password which they have created while doing registration. If he she
is new she can click on new registration and register herself. After successful login it will
redirect the control on next page which will be home.
3. New Registration: This will contain ask ASHA to enter her details step by step to
register herself. After successful registration it will generate one request to the admin for
activating her. After that she can login and use the application.
4. Home: This will contain the homepage of the application which is having many options
or buttons for separate tasks. Whatever she wants to choose she can and do her work.
5. Family Survey: This will have multiple fields asking ASHA to enter detailed
information about the family of her area. It will store the entered data into the database so
the admin will be able to access it.
6. Immunization: This will contain the fields asking about immunization details of baby
and also baby details. It will store the details to the database.
7. Pregnant Lady: This will contain the two buttons inside it i.e. pre pregnancy details
and after pregnancy details. It will again contain the details of the lady of corresponding
subject.
8. Adolescent Girls: This will contain the fields regarding to the adolescent girls about
their sanitary napkins , iron folic tablets, personal details, etc.,
9. Tuberculosis: This will contain the details about tuberculosis patients, their details,
treatment details, etc., and it will store the filled data to the database.
10. By birth low Weight babies: This will contain the fields asking about the by birth
having low weight baby’s details, their treatments, their weight after particular periods,
etc., It will store it into database.
11. Birth and Death record: This will ask them to enter the birth and death records of
people. It will store it into database.
12. Prerna Prakalpa: This will have the fields of Prerna Prakalpa. It is the scheme
having detailed questions which has to be asked to the farmers of their area and according
to the score it will calculate their mind pressure of their financial condition. It will help
them to evaluate the suicide rate.
Chapter 7
System Implementation
7.1 Coding:
index.php
<?php
require_once 'php_action/db_connect.php';
session_start();
if(isset($_SESSION['userId'])) {
header('location:http://localhost/asha/admin/dashboard.php');
$errors = array();
if($_POST) {
$username = $_POST['username'];
$password = md5($_POST['password']);
if(empty($username) || empty($password)) {
if($username == "") {
if($password == "") {
} else {
$result = $connect->query($sql);
if($result->num_rows == 1) {
// exists
$mainResult = $connect->query($mainSql);
if($mainResult->num_rows>0) {
$value = $mainResult->fetch_assoc();
$user_id = $value['ID'];
// set session
$_SESSION['userId'] = $user_id;
$_SESSION['alogin']=$username;
header('location: http://localhost/asha/admin/dashboard.php');
} else{
} // /else
} else {
$errors[] = "Username doesnot exists";
} // /else
} // /if $_POST
?>
<!DOCTYPE HTML>
<html>
<head>
<title>ASHA</title>
<!-- Favicon-->
<script src="js/jquery-2.1.1.min.js"></script>
<!--icons-css-->
<!--Google Fonts-->
<!--static chart-->
</head>
<body>
<div class="container">
<div class="login-page">
<div class="panel-heading">
</div>
<div class="panel-body">
<div class="messages">
<?php if($errors) {
'.$value.'</div>';
} ?>
</div>
<fieldset>
<div class="form-group">
<div class="col-sm-10">
</div>
</div>
<div class="form-group">
<div class="col-sm-10">
</div>
</div>
<div class="form-group">
</div>
</div>
</fieldset>
</form>
</div>
</div>
</div>
</div>
</body>
<!--scrolling js-->
<script src="js/jquery.nicescroll.js"></script>
<script src="js/scripts.js"></script>
<!--//scrolling js-->
</body>
</html>
dashboard.php:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>ASHA | Dashboard</title>
<script src="js/modernizr/modernizr.min.js"></script>
</head>
<body class="top-navbar-fixed">
<div class="main-wrapper">
<?php include('includes/topbar.php');?>
<div class="content-wrapper">
<div class="content-container">
<?php include('includes/leftbar.php');?>
<div class="main-page">
<div class="container-fluid">
<div class="col-sm-6">
<h2 class="title">Dashboard</h2>
</div>
</div>
<!-- /.row -->
</div>
<section class="section">
<div class="container-fluid">
<div class="row">
$result=$connect->query($sql);
$data=$result->fetch_assoc();
?>
</a>
</div>
$result=$connect->query($sql);
$data=$result->fetch_assoc();
?>
</a>
</div>
$result=$connect->query($sql);
$data=$result->fetch_assoc();
?>
<span class="number counter"><?php echo $data['count(id)'];
?></span>
</a>
</div>
$result=$connect->query($sql);
$data=$result->fetch_assoc();
?>
</a>
</div>
</div>
<br>
<div class="container-fluid">
<div class="row">
$result=$connect->query($sql);
$data=$result->fetch_assoc();
?>
</a>
</div>
$result=$connect->query($sql);
$data=$result->fetch_assoc();
?>
</a>
</div>
$result=$connect->query($sql);
$data=$result->fetch_assoc();
?>
</a>
</div>
$result=$connect->query($sql);
$data=$result->fetch_assoc();
?>
</a>
</div>
</div>
<!-- /.row -->
</div>
<br>
<div class="container-fluid">
<div class="row">
$result=$connect->query($sql);
$data=$result->fetch_assoc();
?>
</a>
</div>
</div>
<!-- /.row -->
</div>
</section>
</div>
</div>
</div>
</div>
<script src="js/jquery/jquery-2.2.4.min.js"></script>
<script src="js/jquery-ui/jquery-ui.min.js"></script>
<script src="js/bootstrap/bootstrap.min.js"></script>
<script src="js/pace/pace.min.js"></script>
<script src="js/lobipanel/lobipanel.min.js"></script>
<script src="js/iscroll/iscroll.js"></script>
<script src="js/prism/prism.js"></script>
<script src="js/waypoint/waypoints.min.js"></script>
<script src="js/counterUp/jquery.counterup.min.js"></script>
<script src="js/amcharts/amcharts.js"></script>
<script src="js/amcharts/serial.js"></script>
<script src="js/amcharts/plugins/export/export.min.js"></script>
<script src="js/amcharts/themes/light.js"></script>
<script src="js/toastr/toastr.min.js"></script>
<script src="js/icheck/icheck.min.js"></script>
<script src="js/main.js"></script>
<script src="js/production-chart.js"></script>
<script src="js/traffic-chart.js"></script>
<script src="js/task-list.js"></script>
<script>
$(function(){
delay: 10,
time: 1000
});
// Welcome notification
toastr.options = {
"closeButton": true,
"debug": false,
"newestOnTop": false,
"progressBar": false,
"positionClass": "toast-top-right",
"preventDuplicates": false,
"onclick": null,
"showDuration": "300",
"hideDuration": "1000",
"timeOut": "5000",
"extendedTimeOut": "1000",
"showEasing": "swing",
"hideEasing": "linear",
"showMethod": "fadeIn",
"hideMethod": "fadeOut"
}
});
</script>
</body>
</html>
ActivityRegister.java:
package com.asha.activities;
import android.app.Activity;
import android.app.AlertDialog;
import android.app.ProgressDialog;
import android.content.DialogInterface;
import android.content.Intent;
import android.content.pm.PackageManager;
import android.graphics.Bitmap;
import android.net.Uri;
import android.os.Bundle;
import android.os.Environment;
import android.provider.MediaStore;
import android.support.v7.app.AppCompatActivity;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.ImageView;
import android.widget.Toast;
import com.android.volley.DefaultRetryPolicy;
import com.android.volley.Request;
import com.android.volley.RequestQueue;
import com.android.volley.Response;
import com.android.volley.RetryPolicy;
import com.android.volley.VolleyError;
import com.android.volley.toolbox.StringRequest;
import com.android.volley.toolbox.Volley;
import com.asha.R;
import com.asha.utilities.Base64;
import com.asha.utilities.Config;
import com.asha.utilities.Utility;
import org.json.JSONException;
import org.json.JSONObject;
import java.io.ByteArrayOutputStream;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.HashMap;
import java.util.Map;
ImageView ivuserimage;
Bitmap thumbnail;
@Override
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_register);
ivuserimage = (ImageView) findViewById(R.id.ivuser);
mProgress.setTitle("Processing...");
mProgress.setMessage("Please wait...");
mProgress.setCancelable(false);
mProgress.setIndeterminate(true);
etname = findViewById(R.id.etname);
etmbno = findViewById(R.id.etmbno);
etaddress = findViewById(R.id.etaddress);
etvillage = findViewById(R.id.etvillage);
ettaluka = findViewById(R.id.ettaluka);
etpassword = findViewById(R.id.etpassword);
etreconfirmpassword = findViewById(R.id.etreconfirmpassword);
btakephoto = findViewById(R.id.baddphoto);
bregister = findViewById(R.id.bregister);
bregister.setOnClickListener(new View.OnClickListener() {
@Override
name = etname.getText().toString();
mbno = etmbno.getText().toString();
address = etaddress.getText().toString();
village = etvillage.getText().toString();
taluka = ettaluka.getText().toString();
password = etpassword.getText().toString();
repassword = etreconfirmpassword.getText().toString();
if (name.equals(""))
etname.setError("Enter Name");
else if (mbno.equals(""))
else if (address.equals(""))
etaddress.setError("Enter address");
else if (village.equals(""))
etvillage.setError("Enter Village");
else if (taluka.equals(""))
ettaluka.setError("Enter Taluka");
else if (password.equals(""))
etpassword.setError("Enter Password");
else if (repassword.equals(""))
else if (!(password.equals(repassword)))
else if (imagename.equals(""))
showAlertBox("Error", "Please Upload image");
else {
registerData();
});
btakephoto.setOnClickListener(new View.OnClickListener() {
@Override
selectImage();
});
"Cancel"};
builder.setTitle("Add Photo!");
@Override
if (items[item].equals("Take Photo")) {
if (result)
cameraIntent();
if (result)
galleryIntent();
} else if (items[item].equals("Cancel")) {
dialog.dismiss();
});
builder.show();
mProgress.show();
@Override
try {
mProgress.dismiss();
if (json.getString("success").equals("true")) {
showAlertBox(json.getString("success"), json.getString("message"));
} else if (json.getString("success").equals("false")) {
showAlertBox(json.getString("success"), json.getString("message"));
} catch (JSONException e) {
e.printStackTrace();
},
new Response.ErrorListener() {
@Override
error.printStackTrace();
Toast.makeText(ActivityRegister.this, error.toString(),
Toast.LENGTH_LONG).show();
mProgress.dismiss();
}) {
@Override
params.put("name", name);
params.put("mbno", mbno);
params.put("address", address);
params.put("village", village);
params.put("taluka", taluka);
params.put("profilepic", img);
params.put("imagename", imagename);
params.put("password", password);
return params;
};
stringRequest.setRetryPolicy(policy);
requestQueue.add(stringRequest);
@Override
switch (requestCode) {
case Utility.MY_PERMISSIONS_REQUEST_READ_EXTERNAL_STORAGE:
if (userChoosenTask.equals("Take Photo"))
cameraIntent();
galleryIntent();
} else {
break;
}
}
alert.setMessage(msg);
if (s.equals("true"))
alert.setTitle(R.string.congrats);
else if (s.equals("false"))
alert.setTitle(R.string.error);
else if (s.equals("Error"))
alert.setTitle("Error");
alert.setCancelable(false);
@Override
if (s.equals("true")) {
} else if (s.equals("false")) {
dialogInterface.dismiss();
});
alert.create().show();
intent.setType("image/*");
intent.setAction(Intent.ACTION_GET_CONTENT);//
startActivityForResult(intent, REQUEST_CAMERA);
@Override
if (resultCode == Activity.RESULT_OK) {
if (requestCode == SELECT_FILE) {
onSelectFromGalleryResult(data);
onCaptureImageResult(data);
}
System.currentTimeMillis() + ".jpg");
imagename = destination.getName();
FileOutputStream fo;
try {
destination.createNewFile();
fo = new FileOutputStream(destination);
fo.write(bytes.toByteArray());
fo.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
ivuserimage.setImageBitmap(thumbnail);
img = convertBitmapToString(thumbnail);
return imageStr;
@SuppressWarnings("deprecation")
if (data != null) {
try {
thumbnail =
MediaStore.Images.Media.getBitmap(getApplicationContext().getContentResolver(),
data.getData());
} catch (IOException e) {
e.printStackTrace();
ivuserimage.setImageBitmap(thumbnail);
img = convertBitmapToString(thumbnail);
7.2 Result:
Screenshots of Website:
Screenshots of Database:
Screenshots of Android Application:
Chapter 8
Software Testing
Testing is the process of evaluating a system or its component(s) with the intent to find
whether it satisfies the specified requirements or not.
In the IT industry, large companies have a team with responsibilities to evaluate the
developed software in context of the given requirements. Moreover, developers also conduct
testing which is called Unit Testing. In most cases, the following professionals are involved in
testing a system within their respective capacities −
Software Tester
Software Developer
Project Lead/Manager
End User
Different companies have different designations for people who test the software on the
basis of their experience and knowledge such as Software Tester, Software Quality Assurance
Engineer, QA Analyst, etc.
Cost Effective Development - Early testing saves both time and cost in many aspects,
however reducing the cost without testing may result in improper design of a software
application rendering the product useless.
Quality Check - Software testing helps in determining following set of properties of any
software such as
o Functionality
o Reliability
o Usability
o Efficiency
o Maintainability
o Portability
Advantages
Improves frontline workers’ ability to communicate with the communities they serve and
pull/push information to/from their support networks
Remains open for customizations needed to respond to the evolving needs of frontline
workers, communities, and government officials
Offers flexibility due to its modular design and IntraHealth’s deployment approach
Helps improve relevant health outcomes and is compatible with metrics health surveys
regularly track
Helps ASHAs to store and maintain their records regarding people, their health issues etc.
Helps them to communicate with the Block Facilitator for their updates.
Improves ability of ASHA’s regarding their work and provides flexibility to their work.
Provides various pages with partitions regarding to ASHA’s responsibilities.
Reduces more time and effort of ASHA workers.
Chapter 10
System Requirements
Programming : Java
Database : MySQL
Tool : XAMPP
Processor : i3
Hard Disk : 50 GB
RAM : 4 GB
Android Device
Chapter 11
Conclusion
A Digital Step for ASHA – National Rural Health Mission is an android application
which provides simple visual way and three basic languages to an application for ASHAs for
their convenience. Real-time data sharing by ASHAs to the HWC will bring in a sea change into
the healthcare delivery system and it is essential. There are various innovative mobile
technologies used in different states and ASHAs are trained to use them. ASHA workers are the
connecting link between the community and primary healthcare and have a significant role to
improve overall community health outcomes.so it’s important to provide them a facility of
digitalization. So that it will be easy for them to store and get notified about their data and work.
Compared with existing paper-based job aids, our application is a more user-friendly and
effective ASHA job aid for a range of activities, including self-learning, counseling, and
newborn assessment. Mobile applications may be an important tool to support ASHAs in
improving maternal and newborn health outcomes
Chapter 12
Bibliography
12.1 References:
https://www.expresshealthcare.in/healthcare-it/a-digital-disruption-for-asha-workers
https://nhm.gov.in/index1.php
https://www.omicsonline.org/open-access/role-of-accredited-social-health-activists-
ashas-in-the-improvement-ofhealth-status-of-villagers-under-nrhm-in-kolhapur-district-
m-2161-0711-1000416.php?aid=72569
12.2 Books:
ASHA Swayamsevika Yojana.
Prerna Prakalp – Sarvekshan Ahawal
PMMVY (Pradhanmantri Matruvandan Yojana) form
HBNC (Home Based Neonatal Care) form
Tally Sheet for Leprosy Patients
ASHA interview form