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

e-contact

1. INTRODUCTION

There is a lot of chance that we may face adversity some times in our lives. But we
have no idea when we are going to face it. So to help reach a emergency contact
just with a tap can be life saving. Emergency contact is an app to let an emergency
contact know that we have faced some adversity so that they can do whatever they
can to help.
Many a times when we face accident, we are in a remote place. So to avoid
taking any chances on our life this app helps a lot to inform our loved ones that we
have faced some accident unfortunately.
The system works as follows:

I. Whenever you install the application for the first time, it is mandatory to
enter your details and register yourself by providing your name, contact
number, blood group, emergency contact name and emergency contact
number.
II. An option to update your and your emergency contact details is provided
in the application under the “Settings” option. In case you want to give
your phone to someone, they can update their corresponding details instead
of uninstalling and installing the app again.
III. Feature to contact the emergency contact number is provided under “Help”
option.
IV. Feature to contact rescue hotlines is provided under “SOS” session.
V. Option to send a request for blood group by sending an SMS to all the
contacts, which includes the current location of the user, blood group
required is possible with the “Blood Bank” feature.
VI. Nearest hospitals, Ambulance Service, Fire Station, Police Stations available
can be searched using the corresponding options provided in our application.
1. Objective
I. being in a situation where you are in trouble or you saw someone in
your vicinity in a trouble like an accident – fire,vehicle etc.
II. And you are looking to contact the nearest rescue service to help you to get
out of this tough situation without any hassle?
III. In this case, it is quite possible that you are very tensed and are in a
shock and you cannot communicate effectively to explain your position.

EC-CSE Dept
e-contact

2. LITERATURE SURVEY

2.1. ANDROID STUDIO

Android application development on either of the following operating systems −

I. Microsoft® Windows® 10/8/7/Vista/2003 (32 or 64-bit)

II. Mac® OS X® 10.8.5 or higher, up to 10.9 (Mavericks)

III. GNOME or KDE desktop

Second point is that all the required tools to develop Android applications are open source and
can be downloaded from the Web. Following is the list of software's you will need before you
start your Android application programming.

I. Java JDK5 or later version


II. Java Runtime Environment (JRE)
6 III. Android Studio

Android Studio is the official IDE for android application development. It works based
on IntelliJ IDEA, You can download the latest version of android studio from Android Studio
2.2 Download, If you are new to installing Android Studio on windows, you will find a file,
which is named as android-studio-bundle-143.3101438-windows.exe.So just download and run
on windows machine according to android studio wizard guideline.

If you are installing Android Studio on Mac or Linux, You can download the latest version
from Android Studio Mac Download or Android Studio Linux Download, check the
instructions provided along with the downloaded file for Mac OS and Linux. This tutorial will
consider that you are going to setup your environment on Windows machine having Windows
8.1 operating system.

To test your Android applications, you will need a virtual Android device. So before we
start writing our code, let us create an Android virtual device. Launch Android AVD Manager

EC-CSE Dept
e-contact

Clicking AVD_Manager icon After Click on a virtual device icon, it going to be shown by
default virtual devices which are present on your SDK, or else need to create a virtual device by
clicking Create new Virtual device button.

If your AVD is created successfully it means your environment is ready for Android
application development. If you like, you can close this window using top-right cross button.
Better you re-start your machine and once you are done with this last step, you are ready to
proceed for your first Android example but before that we will see few more important
concepts related to Android Application Development.

2.2. JAVA

Java is a programming language and computing platform first released by Sun


Microsystems in 1995. There are lots of applications and websites that will not work unless you
have Java installed, and more are created every day. Java is fast, secure, and reliable. From
laptops to datacenters, game consoles to scientific supercomputers, cell phones to the Internet,
Java is everywhere!

FEATURES

The primary objective of Java programming language creation was to make it portable, simple
and secure programming language. Apart from this, there are also some excellent features
which play an important role in the popularity of this language. The features of Java are also
known as java buzzwords.

i. Simple
ii. Object-Oriented
iii. Portable
iv. Platform independent
v. Secured
vi. Robust
vii. Architecture neutral
viii. Interpreted

EC-CSE Dept
e-contact

ix. High Performance


x. Multithreaded
xi. Distributed
xii. Dynamic

2.3. XML

XML stands for Extensible Markup Language and is a text-based markup language
derived from Standard Generalized Markup Language (SGML). This tutorial will teach you
the basics of XML. The tutorial is divided into sections such as XML Basics, Advanced XML,
and XML tools. Each of these sections contain related topics with simple and useful examples.

This reference has been prepared for beginners to help them understand the basic to advanced
concepts related to XML. This tutorial will give you enough understanding on XML from
where you can take yourself to a higher level of expertise.
Before proceeding with this tutorial, you should have basic knowledge of HTML and
JavaScript.

XML tags identify the data and are used to store and organize the data, rather than specifying
how to display it like HTML tags, which are used to display the data. XML is not going to
replace HTML in the near future, but it introduces new possibilities by adopting many
successful features of HTML.

There are three important characteristics of XML that make it useful in a variety of systems and
solutions −

 XML is extensible − XML allows you to create your own self-descriptive tags, or
language, that suits your application.

 XML carries the data, does not present it − XML allows you to store the data irrespective
of how it will be presented.

 XML is a public standard − XML was developed by an organization called the World
Wide Web Consortium (W3C) and is available as an open standard.

XML Usage
A short list of XML usage says it all −

EC-CSE Dept
e-contact

 XML can work behind the scene to simplify the creation of HTML documents for large
web sites.

 XML can be used to exchange the information between organizations and systems.

 XML can be used for offloading and reloading of databases.

 XML can be used to store and arrange the data, which can customize your data handling
needs.

 XML can easily be merged with style sheets to create almost any desired output.

 Virtually, any type of data can be expressed as an XML document.

What is Markup?
XML is a markup language that defines set of rules for encoding documents in a format that is
both human-readable and machine-readable. So what exactly is a markup language?Markup is
information added to a document that enhances its meaning in certain ways, in that it identifies
the parts and how they relate to each other. More specifically, a markup language is a set of
symbols that can be placed in the text of a document to demarcate and label the parts of that
document.

A programming language consists of grammar rules and its own vocabulary which is used to
create computer programs. These programs instruct the computer to perform specific tasks.
XML does not qualify to be a programming language as it does not perform any computation or
algorithms. It is usually stored in a simple text file and is processed by special software that is
capable of interpreting XML.

XML Database is used to store huge amount of information in the XML format. As the use
of XML is increasing in every field, it is required to have a secured place to store the XML
documents. The data stored in the database can be queried using XQuery, serialized, and
exported into a desired format.

XML Database Types


There are two major types of XML databases −

 XML- enabled
 Native XML (NXD)

EC-CSE Dept
e-contact

XML - Enabled Database


XML enabled database is nothing but the extension provided for the conversion of XML
document. This is a relational database, where data is stored in tables consisting of rows and
columns. The tables contain set of records, which in turn consist of fields.

Native XML Database


Native XML database is based on the container rather than table format. It can store large
amount of XML document and data. Native XML database is queried by the XPath-expressions.

Native XML database has an advantage over the XML-enabled database. It is highly capable to
store, query and maintain the XML document than XML-enabled database.

2.4. SQLite

SQLite is a software library that implements a self-contained, serverless, zero-


configuration, transactional SQL database engine. SQLite is the most widely deployed SQL
database engine in the world. The source code for SQLite is in the public domain. This tutorial
will give you a quick start with SQLite and make you comfortable with SQLite programming.

This chapter helps you understand what is SQLite, how it differs from SQL, why it is needed
and the way in which it handles the applications Database.

SQLite is a software library that implements a self-contained, serverless, zero-configuration,


transactional SQL database engine. SQLite is one of the fastest-growing database engines
around, but that's growth in terms of popularity, not anything to do with its size. The source
code for SQLite is in the public domain.

What is SQLite?
SQLite is an in-process library that implements a self-contained, serverless, zero-configuration,
transactional SQL database engine. It is a database, which is zero-configured, which means like
other databases you do not need to configure it in your system.

SQLite engine is not a standalone process like other databases, you can link it statically or
dynamically as per your requirement with your application. SQLite accesses its storage
files directly.

EC-CSE Dept
e-contact

Why SQLite?
 SQLite does not require a separate server process or system to operate (serverless).

 SQLite comes with zero-configuration, which means no setup or administration needed.

 A complete SQLite database is stored in a single cross-platform disk file.

 SQLite is very small and light weight, less than 400KiB fully configured or less than
250KiB with optional features omitted.

 SQLite is self-contained, which means no external dependencies.

 SQLite transactions are fully ACID-compliant, allowing safe access from multiple
processes or threads.

 SQLite supports most of the query language features found in SQL92 (SQL2) standard.

 SQLite is written in ANSI-C and provides simple and easy-to-use API.

 SQLite is available on UNIX (Linux, Mac OS-X, Android, iOS) and Windows (Win32,
WinCE, WinRT).

SQLite A Brief History


 2000 - D. Richard Hipp designed SQLite for the purpose of no administration required
for operating a program.

 2000 - In August, SQLite 1.0 released with GNU Database Manager.

 2011 - Hipp announced to add UNQl interface to SQLite DB and to develop UNQLite
(Document oriented database).
he standard SQLite commands to interact with relational databases are similar to SQL. They are
CREATE, SELECT, INSERT, UPDATE, DELETE and DROP. These commands can be
classified into groups based on their operational nature.

EC-CSE Dept
e-contact

3. SYSTEM ANALYSIS

3.1. Existing System

I. being in a situation where you are in trouble or you saw someone in your vicinity in a
trouble like an accident – fire, vehicle etc. and you are looking to contact the nearest
rescue service to help you to get out of this tough situation without any hassle?
II. In this case, it is quite possible that you are very tensed and are in a shock and you
cannot communicate effectively to explain your position.

3.2. Proposed System

I. To avoid such a situation, we planned to come out with an application, which helps
any individual to immediately contact the nearest police station/hospital/ambulance
service/fire station by acting appropriately and getting the contact details of them.
II. The bottom line is that the main idea behind this project was to create an
android application that could be of great use in times of emergency.
III. Our goal is to help set an official guideline to assist Emergency Response Teams in
their efforts to save time and lives in the event of an emergency and help people in
times of emergency.

3.3. Feasibility Study

The feasibility of the project is analyzed in this phase and business proposal is put forth
with a very general plan for the project and some cost estimates. During system analysis the
feasibility study of the proposed system is to be carried out. This is to ensure that the proposed
system is not a burden to the company. For feasibility analysis, some understanding of the major
requirements for the system is essential.

Three key considerations involved in the feasibility analysis are

i. Economical Feasibility
ii. Technical Feasibility
iii. Social Feasibility

3.3.1. Economical Feasibility

This study is carried out to check the economic impact that the system will have on the
organization. The amount of fund that the company can pour into the research and development

EC-CSE Dept
e-contact

of the system is limited. The expenditures must be justified. Thus the developed system as well
within the budget and this was achieved because most of the technologies used are freely
available. Only the customized products had to be purchased.

3.3.2. Technical Feasibility

This study is carried out to check the technical feasibility, that is, the technical
requirements of the system. Any system developed must not have a high demand on the available
technical resources. This will lead to high demands on the available technical resources. This
will lead to high demands being placed on the client. The developed system must have a modest
requirement, as only minimal or null changes are required for implementing this system.

3.3.3. Social Feasibility

The aspect of study is to check the level of acceptance of the system by the user. This
includes the process of training the user to use the system efficiently. The user must not feel
threatened by the system, instead must accept it as a necessity. The level of acceptance by the
users solely depends on the methods that are employed to educate the user about the system and
to make him familiar with it. His level of confidence must be raised so that he is also able to
make some constructive criticism, which is welcomed, as he is the final user of the system.

EC-CSE Dept
e-contact

3.4. Requirements Specification

3.4.1. Functional Requirements


There would also be functionalities that would allow quick access to all relevant information that
would be required at the times of an emergency. Thus, with only one click on your screen, we
can send SMS alerts to all your saved contacts, call rescue workers. Thus, this application could
be a LIFE SAVER in times of a calamity.

3.4.1.1. Feedback
Now-a-days taking feedback became a big task and generating aggregate from that has
been a challenging task for both the user and also for the e-contact.

3.4.2. Non-Functional Requirements

They specify criteria that judge the operation of a system, rather than specific behaviours.
The non - functional requirements provide specific measurements that the software must meet.
The maximum number of seconds it must take to perform a task, the maximum size of a database
on disk, the number of hours per day a system must be available, and the number of concurrent
users supported are examples of requirements that the software must implement but do not
change its behaviour.

3.4.2.1. Availability

Our project achieves availability as the amount of time the system is operational and
available for use depends on the availability of network. The speed of the network plays a key
role in the availability of the system. This is specified because some systems are designed with
expected down - time for activities like database upgrades and backups.

3.4.2.2. Usability

Our goal is to help set an official guideline to assist Emergency Response Teams in their efforts
to save time and lives in the event of an emergency and help people in times of emergency.

3.4.2.3. Reliability

The system will be reliable because of the qualities.

EC-CSE Dept
e-contact

3.4.2.4. Supportability

We have developed the application incrementally to make sure we have a working app at
all times. Even when we were unable to provide the maps for the demo, we had a running app
without app.

3.4.2.5. Implementation

The project involved the use of SQLLite as the database for storing information. It
implements a server less, transactional SQL database engine. Android simulator was used to
check the working of the application and the app was checked for compatibility with API 10
as the target API. Google maps API is used to locate the nearest service points.

3.4.2.6. Interface

the main idea behind this project was to create an android application that could be of
great use in times of emergency. The interface design is aimed at flexible front-end
communication to provide the user with clear information in navigating a user-friendly interface.

3.4.3. Software Requirements

Technology : Android

Frontend : XML

IDE : Android Studio


EC-CSE Dept
Database : SQLite

Operating System : Windows

3.4.4. Hardware Requirements

Processor : Intel Core i3 or above

RAM : 4 GB

Hard Disk : 20 GB
e-contact

4. SYSTEM DESIGN

4.1. System Architecture

EMERGENCY
CONTACT
USER

DATABASE

Fig 4.1. System Architecture

The development of the proposed model is not only depending on how the system works.
It also depends on the working flow process that being identified and need to be implemented
and followed. The proposed “E-contact” is a application which is intended to produce an
automated solution for society.

EC-CSE Dept
e-contact

5. IMPLEMENTATION

5.1. MODULES

The various modules in this project are as follows:

1. USER

5.1.1. User

The registration module is used to collect user details as well as the emergency contacts
information and stores them. The maps module dynamically retrieves location coordinate
information from the google maps API. The modules dynamically retrieve location from the
google maps server and use them to provide related information to the user with respect to the
service the user has requested. There are other features like the broadcast blood donation
request that broadcast bulk SMSs to all the emergency contacts in the user’s database.

5.3. Dashboard Algorithm

Algorithm for a Login Scenario

Step :

Start

I. To obtain API Key for Google Maps Android API v2 service, you have to create API
Project and obtain your API Key in Google APIs Console.
II. To obtain your Android API Key, we need to use SHA1 Certificate fingerprint
value from the key store used to build the apk.
III. The Android key obtained from Google API Console needs to be updated in the
manifest.xml to maps.

V. We need to add all the relevant permissions to access internet and to fetch the locations.

EC-CSE Dept
e-contact

5.4. Front End Code

<?xml version="1.0"?>
<RelativeLayout tools:context=".MainActivity" android:layout_height="match_parent"
android:layout_width="match_parent" xmlns:tools="http://schemas.android.com/tools"
xmlns:android="http://schemas.android.com/apk/res/android"><ImageButton
android:layout_height="wrap_content" android:layout_width="wrap_content"
android:src="@drawable/m" android:onClick="onClick" android:layout_marginTop="28dp"
android:layout_below="@+id/sos_button" android:layout_alignLeft="@+id/hospital_button"
android:id="@+id/police_button"/><TextView android:layout_height="wrap_content"
android:layout_width="wrap_content" android:layout_below="@+id/hospital_button"
android:layout_alignLeft="@+id/hospital_button" android:id="@+id/textView1"
android:textAppearance="?android:attr/textAppearanceSmall" android:text="Hospital"
android:layout_marginLeft="16dp"/><TextView android:layout_height="wrap_content"
android:layout_width="wrap_content" android:layout_below="@+id/sos_button"
android:id="@+id/TextView01" android:textAppearance="?android:attr/textAppearanceSmall"
android:text="SOS" android:layout_centerHorizontal="true"/><TextView
android:layout_height="wrap_content" android:layout_width="wrap_content"
android:id="@+id/TextView02" android:textAppearance="?android:attr/textAppearanceSmall"
android:text="Fire Station" android:layout_alignRight="@+id/firestation_button"
android:layout_alignBottom="@+id/TextView01"
android:layout_alignBaseline="@+id/TextView01"/><TextView android:layout_height="wrap_content"
android:layout_width="wrap_content" android:layout_below="@+id/police_button"
android:layout_alignLeft="@+id/textView1" android:id="@+id/TextView03"
android:textAppearance="?android:attr/textAppearanceSmall" android:text="Police"/><TextView
android:layout_height="wrap_content" android:layout_width="wrap_content"
android:layout_below="@+id/ambulance_button" android:layout_alignLeft="@+id/TextView03"
android:id="@+id/TextView06" android:textAppearance="?android:attr/textAppearanceSmall"
android:text="Ambulance"/><TextView android:layout_height="wrap_content"
android:layout_width="wrap_content" android:layout_below="@+id/police_button"
android:id="@+id/TextView05" android:textAppearance="?android:attr/textAppearanceSmall"
android:text="Emergency Contact" android:layout_alignParentRight="true"/><TextView

EC-CSE Dept
e-contact

android:layout_height="wrap_content" android:layout_width="wrap_content"
android:layout_alignLeft="@+id/bloodbank_button" android:id="@+id/TextView04"
android:textAppearance="?android:attr/textAppearanceSmall" android:text="Blood Bank"
android:layout_above="@+id/home_button"/><ImageButton android:layout_height="wrap_content"
android:layout_width="wrap_content" android:src="@drawable/k" android:onClick="onClick"
android:id="@+id/hospital_button" android:layout_above="@+id/police_button"
android:layout_toLeftOf="@+id/bloodbank_button"
android:layout_marginRight="15dp"/><ImageButton android:layout_height="wrap_content"
android:layout_width="wrap_content" android:src="@drawable/red" android:onClick="onClick"
android:layout_marginTop="18dp" android:id="@+id/sos_button"
android:layout_alignRight="@+id/bloodbank_button"
android:layout_alignParentTop="true"/><ImageButton android:layout_height="wrap_content"
android:layout_width="wrap_content" android:src="@drawable/amn" android:onClick="onClick"
android:id="@+id/bloodbank_button" android:layout_centerHorizontal="true"
android:layout_alignBottom="@+id/police_button"/><ImageButton
android:layout_height="wrap_content" android:layout_width="wrap_content"
android:src="@drawable/ambulance" android:onClick="onClick"
android:layout_alignLeft="@+id/police_button" android:id="@+id/ambulance_button"
android:layout_alignBottom="@+id/settings_button"/><TextView
android:layout_height="wrap_content" android:layout_width="wrap_content"
android:layout_below="@+id/settings_button" android:id="@+id/TextView07"
android:textAppearance="?android:attr/textAppearanceSmall" android:text="Settings"
android:layout_centerHorizontal="true"/><ImageButton android:layout_height="wrap_content"
android:layout_width="wrap_content" android:src="@drawable/icon_settings1"
android:onClick="onClick" android:layout_alignLeft="@+id/TextView04"
android:id="@+id/settings_button" android:layout_alignTop="@+id/home_button"/><TextView
android:layout_height="wrap_content" android:layout_width="wrap_content"
android:layout_below="@+id/home_button" android:id="@+id/TextView08"
android:textAppearance="?android:attr/textAppearanceSmall" android:text="Home"
android:layout_marginLeft="37dp" android:layout_toRightOf="@+id/settings_button"/><ImageButton
android:layout_height="wrap_content" android:layout_width="wrap_content"
android:src="@drawable/help_th" android:onClick="onClick"

EC-CSE Dept
e-contact

android:id="@+id/emergencycontact_button" android:layout_marginLeft="14dp"
android:layout_above="@+id/TextView05"

android:layout_toRightOf="@+id/bloodbank_button"/><ImageButton
android:layout_height="wrap_content" android:layout_width="wrap_content"
android:src="@drawable/fp__lg_fire" android:onClick="onClick"
android:layout_alignLeft="@+id/emergencycontact_button" android:id="@+id/firestation_button"
android:layout_alignTop="@+id/sos_button"/><ImageButton android:layout_height="wrap_content"
android:layout_width="wrap_content" android:src="@drawable/imag" android:onClick="onClick"
android:layout_marginTop="28dp" android:layout_below="@+id/TextView05"
android:layout_alignLeft="@+id/emergencycontact_button" android:id="@+id/home_button"
android:layout_alignRight="@+id/emergencycontact_button"/></RelativeLayout>

EC-CSE Dept
e-contact

5.5. Back End Code


package aaa.sss.aaa;

import android.net.Uri;
import android.os.Bundle;
import android.app.Activity;
import android.content.ActivityNotFoundException;
import android.content.Intent; import
android.util.Log;
import android.view.Menu;
import android.view.View;

public class MainActivity extends Activity {

private static final int HOSPITAL = 1;


private static final int POLICE = 2;
private static final int FIRESTATION = 3;
private static final int AMBULANCE = 4;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);

if(Preferences.readString(this, Preferences.NAME) == null){


startActivity(new Intent(this, Registration.class));
if(Preferences.readString(this, Preferences.NAME) == null){
this.finish();
}
} else {
setContentView(R.layout.activity_main);
}
}

@Override
public boolean onCreateOptionsMenu(Menu menu) {

getMenuInflater().inflate(R.menu.activity_main, menu);
return true;
}

public void onClick(View v) {


int id = v.getId();
if (id == R.id.sos_button) {
startActivity(new Intent(this, Sos.class));
} else if (id == R.id.firestation_button) {
Intent firestation = new Intent(this, Maps.class);
firestation.putExtra("key", FIRESTATION);
startActivity(firestation);
} else if (id == R.id.hospital_button) {
Intent hospital = new Intent(this,
Maps.class); hospital.putExtra("key",
HOSPITAL); startActivity(hospital);
} else if (id == R.id.ambulance_button) {
Intent ambulance = new Intent(this,
Maps.class); ambulance.putExtra("key",
AMBULANCE); startActivity(ambulance);
} else if (id == R.id.police_button) {
Log.v("XYZ", "Police");
Intent police = new Intent(this, Maps.class);

EC-CSE Dept
e-contact

police.putExtra("key", POLICE);
startActivity(police);
} else if (id == R.id.bloodbank_button)
{ Log.v("XYZ", "BloodBank"); startActivity(new
Intent(this,BloodBank.class));
} else if (id == R.id.emergencycontact_button) {
try{
StringBuilder number = new StringBuilder(); number.append("tel:");
number.append(Preferences.readString(this, Preferences.EM_NUMBER));
Intent callIntent = new Intent (Intent.ACTION_CALL);
callIntent.setData(Uri.parse(number.toString()));
startActivity(callIntent);

}catch (ActivityNotFoundException activityException) {


Log.e("First Response", "Call failed");
}
} else if (id == R.id.home_button) {
try{
StringBuilder number = new StringBuilder();
number.append("tel:");
number.append(Preferences.readString(this, Preferences.PHONE_NUMBER));
Intent callIntent = new Intent (Intent.ACTION_CALL);

callIntent.setData(Uri.parse(number.toString()));
startActivity(callIntent);
}catch (ActivityNotFoundException activityException) {
Log.e("First Response", "Call failed");
}
} else if (id == R.id.settings_button)
{ startActivity(new Intent(this,Settings.class));
}
}

public void onResume(){


super.onResume();
Log.v(null, "MainActivity's onResume Method !!!");
}

public void onPause(){


super.onPause();
Log.v(null, "MainActivity's onPause Method !!!");
}

protected void onSaveInstanceState (Bundle outState)


{ super.onSaveInstanceState(outState);

protected void onRestoreInstanceState (Bundle savedInstanceState){


super.onRestoreInstanceState(savedInstanceState);

}
}

EC-CSE Dept
e-contact

6. SYSTEM TESTING

6.1. Testing

The purpose of testing is to discover errors. Testing is the process of trying to discover
every conceivable fault or weakness in a work product. It is the process of exercising software
with the intent of ensuring that the Software system meets its requirements and user expectations
and does not fail in an unacceptable manner. There are various types of test. Each test type
addresses a specific testing requirement.

6.1.1. Black Box Testing

In this system black box testing is performed by giving random inputs to the
functionalities and verified whether expected results are obtained. For example random inputs
are given to a login page and verified whether it’s accepting even the wrong credentials. When
these kinds of bugs are detected then these are fortified. In this testing we verified whether our
application is according to the requirement specification. Any missing functionalities can be
detected in this phase.

6.1.2. White Box Testing

White box testing is performed by verifying the internal code of the application. Syntactic
errors, Decisions, Control Flow and statements of the code are verified line by line for all the
modules involved in our system such as User. We could detect control flow errors such as wrong
redirection using white box testing.

EC-CSE Dept
e-contact

6.2. Level Of Testing

6.2.1. Component Testing

This system has 3 Modules i.e. User Module. The module is independently tested by
isolating other module. Each functionality of the Modules is verified. All the individual like
Update information, Map etc. are verified whether the input data is forwarded to action page.

6.2.2. Unit Testing

Each functionality is verified if it is according to the specified requirements or not.


Sometimes input validations are missed, these are solved in unit testing. For example User
registration needs detail information.

6.2.3. Integration Testing

Our system has different modules involved i.e. User. Though component testing is
performed on each module sometimes error generate due to incompatibility between the
interfaces. This kind of errors can be detected in Integration Testing and resolved.

Test Results: All the test cases mentioned above passed successfully. No defects encountered.

EC-CSE Dept
e-contact

6.3. Test Cases

I. Whenever you install the application for the first time, it is mandatory to enter
your details and register yourself by providing your name, contact number, blood
group, emergency contact name and emergency contact number.
II. An option to update your and your emergency contact details is provided in the
application under the “Settings” option. Incase you want to give your phone to
someone, they can update their corresponding details instead of uninstalling and
installing the app again.
III. Feature to contact the emergency contact number is provided under “Help” option.
IV.Feature to contact rescue hotlines is provided under “SOS” session.
V. Option to send a request for blood group by sending an SMS to all the contacts,
which includes the current location of the user, blood group required is possible
with the “Blood Bank” feature.
VI. Nearest hospitals, Ambulance Service, Fire Station, Police Stations available can be
searched using the corresponding options provided in our application.

Test case format

Test Cases usually have the following components

i. Test Case Summary


ii. Initial Condition
iii. Steps to run the test case
iv. Expected behavior/outcome
6.3.1.Test case 1

Test Aspect user enters his login details

Test Aspect User enters his login details

Intial condition Review data

Steps to run Fill the login details in the page and click SUBMIT button

Expected Output It should open the home page

Actual Output It opens home page as shown below

Table 6.3.1. 1. Test case 1

EC-CSE Dept
e-contact

Fig 6.3.1.1. User Login Page

EC-CSE Dept
e-contact

6.3.2. Test case 2

Test Aspect user enters his invalid login details

Test Aspect user enters his invalid information details

Intial condition Review data

Steps to run Fill the invalid details in the page and click SUBMIT button

Expected Output It should show error message

Actual Output It displays an error message in the login page

Table 6.3.2.1. Test case 2

EC-CSE Dept
e-contact

Fig 6.3.2.1. User Login’s With Invalid information

Invalid Login

EC-CSE Dept
e-contact

6.3.3. Test case 3

Test Aspect Customers enter their credentials

Intial condition Review data

Steps to run Enter the credentials

Expected Output It should show that user has successfully logged in

Actual Output In the figure below

Table 6.3.3.1. Test case 3

Fig 6.3.3.1. After user login page

EC-CSE Dept
e-contact

7. INPUT OUTPUT SCREENS

Setting:

EC-CSE Dept
e-contact

Police station:

EC-CSE Dept
e-contact

Fire station:

EC-CSE Dept
e-contact

Hospital:

EC-CSE Dept
e-contact

CONCLUSION

This system is aimed at providing a cheaper and secured way of maintain the details of
the User as well as the emergency. It helps the users to find the police station and the
corresponding services as per their requirement in less time and without any problem and also
the needed help. I will be improving the application by getting the hotline numbers dynamically
based on the location in which the user is present. With this feature incorporated, it would easy
for customer outside USA to use our application. As part of further development, we are also
planning to incorporate a feature to send a text message to 911.

EC-CSE Dept
e-contact

10. FUTURE ENHANCEMENT

I. I will be improving the application by getting the hotline numbers dynamically based
on the location in which the user is present.
II. With this feature incorporated, it would easy for customer outside USA to use
our application. As part of further development, we are also planning to
incorporate a feature to send a
III. text message to 911.

EC-CSE Dept
e-contact

11. REFERENCES

http://www.w3schools.com/sql/
http://www.w3schools.com/php/

https://support.rackspace.com/white-paper/understanding-the-cloud-computing-stack-saas-paas-
iaas/
http://www.iisjaipur.org/iiim-current-
08/mca_iv_sem_pro_eva/15.project%20attendence%20managemnt%20system.pdf

http://en.wikipedia.org/wiki/Symbian Symbian

Developer Community wiki

http://christoph33r.com/groupproject/techni cal.html

http://www.iisjaipur.org/iiim-current-08/MCA_IV_Sem_Pro_Eva/15.Project%20
Attendence%20managemnt%20system.pdf
https://edupediapublications.org/journals/index.php/IJR/article/view/7357/7137
https://www.projectworld.com

https://www.tutorialspoint.com

EC-CSE Dept

You might also like