SlideShare a Scribd company logo
1 of 87
Download to read offline
madeehasaeed.sa@gmail.com
Abuse Prevention App
By
Madeeha Saeed
(16-Arid-712)
Supervised by
Dr. Yaser Hafeez
UNIVERSITY INSTITUTE OF INFORMATION TECHNOLOGY
PMAS ARID AGRICULTURE UNIVERSITY
RAWALPINDI
2020
I
Abuse Prevention App
By
Madeeha Saeed
(16-Arid-712)
Supervised by
Dr. Yaser Hafeez
A PROJECT SUBMITTED IN PARTIAL FULFILLMENT OF THE
REQUIREMENTS OF THE DEGREE OF
BACHELOR OF SCIENCE IN COMPUTER SCIENCE ENGINEERING
(BSCS)
UNIVERSITY INSTITUTE OF INFORMATION TECHNOLOGY
PMAS ARID AGRICULTURE UNIVERSITY
RAWALPINDI
2020
II
Dedicated to my beloved parents, Teachers, Seniors, and Dr.
Yaser Hafeez, for their endless support, affection, trust, and
encouragement and to all those, whose prayers always paved
the way to success for us.
Dr. Yaser Hafeez has been the ideal FYP supervisor.
His sage advice, insightful criticisms, and patient
encouragement aided the writing of this documentation and
project performance in innumerable ways. I would like to
thank him for his steadfast support for this project as it was
greatly needed and deeply appreciated.
III
PROJECT IN BRIEF
Project Title: Abuse Prevention App
Organization: University Institute of Information Technology UIIT
Undertaken By: Madeeha Saeed (16-ARID-712)
Supervised by: Dr. Yaser Hafeez
Date Started: 15th
October 2019
Date Completed: 20th
JULY 2020
Technology Used: Java
Operating System: Windows 10 Pro
System Used: Intel Core i7 Laptop, 16 GB RAM, 250 GB NTFS SSD
IV
ACKNOWLEDGMENT
I can't thank enough ALLAH THE ALMIGHTY, who let us complete our project on time
while 2020 has been so unkind and abrupt for us in so many ways. It was way too tough
for all of us; students & teachers both to stay on the track while in lockdown due to the
COVID-19 pandemic. Meanwhile, I are grateful to our parents, seniors, and teachers for
all the support, encouragement, guidance, and motivation to complete our project on time,
regardless of all the discreteness of the times.
I would like to thank our supervisor Dr. Yaser Hafeez, who continuously guided us on
zoom classes and discussed with us all the ups & downs of the development, which I had
been facing since lockdown has been declared. It would have been impossible for us to
keep our FYP Coding journey continued while in lockdown without any stimulus or
guidance, but Sir Yaser kept us on the path by giving his guidance 24/7.
Last but not the least, I would like to thank all the faculty members of UIIT; especially
Dr. Kashif Sattar for his work and help during this hard time, He managed to save our
year from getting wasted and given his support to all the final year students who had been
stuck elsewhere and was not able to continue their academic activities due to so many
reasons. He came up with suitable planning for all the students differently and did not let
any student stay behind in the race of development. I just cannot thank enough for his
services as a Final Year Project Coordinator and I owe him my whole FYP. Without him,
it would not have been possible.
Madeeha Saeed
(16-ARID-712)
V
DECLARATION
I hereby declare that this project, neither whole nor as a part has been copied out from
any source. It is further declared that I have developed this project and accompanied the
report entirely based on our efforts. If any part of this project is proved to be copied out
from any source or found to be a reproduction of some other. I will stand by the
consequences. No portion of the work presented has been submitted of any application
for any other degree or qualification of this or any other university or institute of learning.
Madeeha Saeed
(16-ARID-712)
VI
CERTIFICATION
It is certified that the contents and form of the project entitled “Abuse Prevention App”
submitted by Madeeha Saeed (16-ARID-712) has been found satisfactory for the
requirements of
PMAS – Arid Agriculture University, Rawalpindi
For the award of the degree of
BACHELOR OF SCIENCE IN COMPUTER SCIENCE ENGINEERING (BSCS)
Supervisor: ________________________
Dr. Yaser Hafeez
Examiner 1: ________________________
Ms. Sarfaraz Bibi
Examiner 2: ________________________
Ms. Irum Rubab
Dated: ________________________
Administrator: ________________________
Dr. Yaser Hafeez
VII
ABSTRACT
Women’s security is a critical issue in today’s world and it’s very much needed for every
individual to be acting over such an issue. Our App, “Abuse Prevention App” provides
Realtime self-defense to the user by giving an option of “Alerts”, which uses in-built GPS
& GSM of an android device and sends a distress message with a user’s current location
to the 2 contacts selected by a user. Nowadays due to recently happened cases such as
rape by drivers or colleagues, burglary, etc., women's security has been compromised.
The system uses the Global Positioning System (GPS) technology to find out the location
of women & also uses GSM (Global System for Mobile) to access mobile’s inbuilt
messenger to send alerts to the prospects with the usage of user’s mobile sim. The
prospects will receive a distress message along with user’s (fine) current location; Which
will look like this: “I'm in danger. HELP! My location is: http: // maps. google. com
/?q=33.7112448,73.0751833”. Then, the user’s location provided by the device can be
viewed on Google maps using the Internet or specialized software from an app store i.e.
Google Maps/Foursquare. Our app will be the ultimate tool to deal with the problem like
women security for women working in night shifts and traveling alone, etc.
Keywords: Abuse prevention, Women safety & security, Smartphone, Registered
contacts, Database, GPS (Global Positioning System), GSM (Global System for Mobile).
2
TABLE OF CONTENTS
ACKNOWLEDGMENT ................................................................................................IV
DECLARATION............................................................................................................. V
CERTIFICATION ..........................................................................................................VI
ABSTRACT...................................................................................................................VII
TABLE OF CONTENTS.................................................................................................. 2
LIST OF FIGURES .......................................................................................................... 8
LIST OF TABLES.......................................................................................................... 11
Chapter 1 ...................................................................................................................... 112
INTRODUCTION .......................................................................................................... 12
1.1. PROJECT OVERVIEW........................................................................................... 12
1.2. PROJECT AIM ........................................................................................................ 12
1.3. PROJECT OBJECTIVES ........................................................................................ 12
1.4. PROJECT SCOPE ................................................................................................... 13
1.5. PROBLEM STATEMENT ...................................................................................... 13
1.6. PROPOSED SOLUTION ........................................................................................ 14
1.7. PROPOSED SYSTEM OUTPUT............................................................................ 15
1.8. METHODOLOGY AND SOFTWARE LIFECYCLE FOR THIS PROJECT: ..... 15
1.9. TOOLS AND TECHNOLOGY USE: .................................................................... 16
1.10. DELIVERABLES AND DEVELOPMENT REQUIREMENTS.......................... 17
1.11. CHAPTER SUMMARY........................................................................................ 18
Chapter 2 ........................................................................................................................ 19
REQUIREMENT ANALYSIS....................................................................................... 19
2.1 SOFTWARE REQUIREMENT SPECIFICATION................................................ 19
2.2 FUNCTIONAL REQUIREMENTS ........................................................................ 21
3
2.3 NON-FUNCTIONAL REQUIREMENTS .............................................................. 23
2.3.1 Usability .......................................................................................................... 24
2.3.2 Reliability........................................................................................................ 24
2.3.4 Performance .................................................................................................... 24
2.4 EXTERNAL INTERFACE REQUIREMENTS...................................................... 25
2.4.1 Cloud Database ...................................................................................................... 25
2.5 PERFORMANCE REQUIREMENTS .................................................................... 25
2.5.1 Battery Charging.............................................................................................. 25
2.5.2 Load Time........................................................................................................ 25
2.5.3 Queries Processing........................................................................................... 25
2.6 OPERATING ENVIRONMENT............................................................................. 25
2.6.1 DB Management System: Cloud-based database ............................................ 26
2.6.2 Architecture: Peer-to-peer................................................................................ 26
2.6.3 Operating System: Windows/Android............................................................. 26
2.6.4 Database: Cloud NoSQL.................................................................................. 26
2.6.5 Platform: Java/XML ........................................................................................ 26
Chapter 3 ........................................................................................................................ 27
SOFTWARE DESIGN ................................................................................................... 27
3.1. USE CASES (FULLY DRESSED) ........................................................................ 27
3.1.1 Registration ..................................................................................................... 27
3.1.2 Login ............................................................................................................... 27
3.1.3 Alerts ............................................................................................................... 29
3.1.4 Set GPS On...................................................................................................... 29
3.1.5 Sync Emergency Contacts............................................................................... 30
3.1.6 Profile.............................................................................................................. 31
4
3.1.7 Self-Defense Guide/Awareness....................................................................... 32
3.2. USE CASE DIAGRAM........................................................................................... 33
3.3. CLASS DIAGRAM ................................................................................................. 34
3.4. SEQUENCE DIAGRAMS....................................................................................... 35
3.4.1. Registration .................................................................................................... 35
3.4.2. Alerts .............................................................................................................. 36
3.4.3. Maps............................................................................................................... 37
3.4.4. Self-Defense Guide/Awareness...................................................................... 38
3.4.5. Profile............................................................................................................. 39
3.5. ACTIVITY DIAGRAMS......................................................................................... 40
3.5.1. App Activity................................................................................................... 40
3.5.2. Alerts Activity................................................................................................ 41
3.5.3. Login Activity ................................................................................................ 42
3.6. COMPONENT DIAGRAM..................................................................................... 43
3.7. DEPLOYMENT DIAGRAM................................................................................... 44
3.8. COLABORATION DIAGRAM.............................................................................. 45
3.9 CHAPTER SUMMARY........................................................................................... 45
Chapter 4 ........................................................................................................................ 46
PROJECT MANAGEMENT.......................................................................................... 46
4.1. MILESTONES......................................................................................................... 46
Before Mid-Term ........................................................................................................ 46
4.1.1. Milestone 1..................................................................................................... 46
4.1.2. Milestone 2..................................................................................................... 46
4.1.3. Milestone 3..................................................................................................... 46
After Mid-Term........................................................................................................... 47
5
4.1.4. Milestone 4..................................................................................................... 47
4.1.5. Milestone 5..................................................................................................... 47
4.1.6. Milestone 6..................................................................................................... 47
4.1.7. Milestone 7..................................................................................................... 47
4.1.8. Milestone 8..................................................................................................... 47
4.1.9. Milestone 9..................................................................................................... 48
4.1.10. Milestone 10................................................................................................. 48
4.1.11. Milestone 11................................................................................................. 48
4.2. PROJECT CLOSEOUT REPORT........................................................................... 48
4.3. OPERATION AND MANAGEMENT PLAN ........................................................ 49
4.4. PROJECT RESOURCE........................................................................................... 49
4.5. RISK MANAGEMENT........................................................................................... 51
4.6. RISK ANALYSIS.................................................................................................... 51
4.6.1. RISK IDENTIFICATION................................................................................ 51
4.6.2. RISK RESPONSE ........................................................................................... 52
4.6.3. GRAPHICAL REPRESENTATION OF RISKS ............................................ 54
4.7. CHAPTER SUMMARY.......................................................................................... 54
Chapter 5 ........................................................................................................................ 56
PROJECT IMPLEMENTATION................................................................................... 56
5.1. PROGRAMMING LANGUAGE ............................................................................ 56
5.2. FRAMEWORK........................................................................................................ 56
5.3. SYSTEM REQUIREMENTS.................................................................................. 56
5.3.1. Hardware Requirements................................................................................. 56
5.3.2. Software Requirements .................................................................................. 57
5.4. CHAPTER SUMMARY.......................................................................................... 57
6
Chapter 6 ........................................................................................................................ 58
SOFTWARE TESTING ................................................................................................. 58
6.1. DERIVING TEST.................................................................................................... 58
6.2. TEST ENVIRONMENT.......................................................................................... 58
6.2.1. Software ......................................................................................................... 58
6.2.2. Hardware ........................................................................................................ 58
6.3. TESTING IDENTIFICATION................................................................................ 58
6.4. TEST PROCEDURE ............................................................................................... 59
6.4.1. Unit Testing.................................................................................................... 59
6.4.2. Setting GPS On ............................................................................................... 59
6.4.4. Permitting Mobile’s GSM............................................................................... 59
6.4.5. System Testing ............................................................................................... 59
6.4.6. Integrate Testing............................................................................................. 59
6.4.7. Performance Testing ...................................................................................... 60
6.4.8. Stress Testing ................................................................................................. 60
6.5. TEST CASES........................................................................................................... 60
6.5.1. Test Case 2: Sending Location....................................................................... 61
6.5.2. Test Case 3: GSM Activation......................................................................... 62
6.6. CHAPTER SUMMARY.......................................................................................... 62
Chapter 7 ........................................................................................................................ 63
CONCLUSION AND FUTURE WORK ....................................................................... 63
7.1. DISCUSSION .......................................................................................................... 63
7.2. CONCLUSION........................................................................................................ 63
7.3. FUTURE WORK..................................................................................................... 65
Chapter 8 ........................................................................................................................ 66
7
USER GUIDE................................................................................................................. 66
8.1. APP LAUNCH PAGE 01 ........................................................................................ 66
8.2. SIGNUP SCREEN................................................................................................... 67
8.3. MAIN SCREEN....................................................................................................... 67
8.4. APP LAUNCH PAGE 02 ........................................................................................ 68
8.5. ALERTS................................................................................................................... 68
8.6. PROFILE SCREEN ................................................................................................. 69
8.7. LOGIN SCREEN..................................................................................................... 69
8.8. MAPS SCREEN....................................................................................................... 70
8.9. INTRO SLIDERS SCREENS.................................................................................. 71
8.10. AWARENESS SCREENS..................................................................................... 74
8.11. PERMISSION SCREENS ..................................................................................... 77
LIST OF ABBREVATIONS.......................................................................................... 79
REFERENCES ............................................................................................................... 80
8
LIST OF FIGURES
Figure 1.6.1: Block Diagram .......................................................................................... 14
Figure 1.8.1: Agile Development Cycle ......................................................................... 16
Figure 1.10.1: Project Plan ............................................................................................. 17
Figure 2.1.1: Java Structure ............................................................................................ 20
Figure 2.2.1: Cloud NoSQL Database (Firebase)........................................................... 22
Figure 2.2.2: Peer-to-peer Architecture .......................................................................... 23
Figure 2.4.1: Cloud Database ......................................................................................... 25
Figure 3.1.1: Registration Use Case ............................................................................... 27
Figure 3.1.2: Medicine Schedule Use Case .................................................................... 28
Figure 3.1.3: Alerts Use Case ......................................................................................... 29
Figure 3.1.4: Display Information Use Case .................................................................. 30
Figure 3.1.5: Send Alerts Use Case ................................................................................ 31
Figure 3.1.6: Profile Use Case........................................................................................ 31
Figure 3.1.7: Self-Defense Guide/Awareness Use Case................................................. 32
Figure 3.2.1: Use Case Diagram..................................................................................... 33
Figure 3.3.1: Class Diagram ........................................................................................... 34
Figure 3.4.1: Registration’s Sequence Diagram ............................................................. 35
Figure 3.4.2: Alerts Sequence Diagram.......................................................................... 36
Figure 3.4.3: Maps Sequence Diagram........................................................................... 37
Figure 3.4.4: Self-Defense Guide/Awareness Sequence Diagram ................................. 38
Figure 3.4.5: Profile Sequence Diagram......................................................................... 39
Figure 3.5.1: App’s Activity Diagram............................................................................ 40
Figure 3.5.2: Alerts Activity Diagram............................................................................ 41
9
Figure 3.5.3: Login Activity Diagram ............................................................................ 42
Figure 3.6.1: Component Diagram ................................................................................. 43
Figure 3.7.1: Deployment Diagram ................................................................................ 44
Figure 3.8.1: Collaboration Diagram.............................................................................. 45
Figure 4.4.1: Project Resources ...................................................................................... 49
Figure 4.6.3: Risk Response Graphs............................................................................... 54
Figure 5.3.2: Software Requirements ............................................................................. 57
Figure 8.1.1: App Launch 01 UI..................................................................................... 66
Figure 8.2.1: Signup UI .................................................................................................. 67
Figure 8.3.1: Home Screen UI........................................................................................ 67
Figure 8.4.1: Launch Page 02 UI.................................................................................... 68
Figure 8.5.1: Alerts UI.................................................................................................... 68
Figure 8.6.1: Profile UI................................................................................................... 69
Figure 8.7.1: Login UI .................................................................................................... 69
Figure 8.8.1: Maps UI..................................................................................................... 70
Figure 8.9.1: Slider 01 UI ............................................................................................... 71
Figure 8.9.2: Slider 02 UI ............................................................................................... 71
Figure 8.9.3: Slider 03 UI ............................................................................................... 72
Figure 8.9.4: Slider 04 UI ............................................................................................... 72
Figure 8.9.5: Slider 05 UI ............................................................................................... 73
Figure 8.9.6: Slider 06 UI ............................................................................................... 73
Figure 8.10.1: 01 UI........................................................................................................ 74
Figure 8.10.2: 02 UI........................................................................................................ 74
Figure 8.10.3: 03 UI........................................................................................................ 75
Figure 8.10.4: 04 UI........................................................................................................ 75
10
Figure 8.10.5: 05 UI........................................................................................................ 76
Figure 8.10.6: 06 UI........................................................................................................ 76
Figure 8.10.7: 07 UI........................................................................................................ 77
Figure 8.11.1: GSM UI................................................................................................... 77
Figure 8.11.2: GPS UI .................................................................................................... 78
11
LIST OF TABLES
Table 4.2.1: Deliverables Plan........................................................................................ 48
Table 4.4.1: Table of Project Responsibilities................................................................ 50
Table 4.6.1: Risk Identification Table ............................................................................ 51
Table 4.6.2: Risk Response Table .................................................................................. 52
Table 5.3.1: Hardware Requirements ............................................................................. 56
Table 6.5.1: Sending Alert Test Case ............................................................................. 60
Table 6.5.2: Sending Location Test Case ....................................................................... 61
Table 6.5.3: GSM Activation Test Case......................................................................... 62
12
Chapter 1
INTRODUCTION
1.1. PROJECT OVERVIEW
Women’s security is a critical issue in today’s world and it’s very much needed for every
individual to be acting over such an issue. Our App, “Abuse Prevention App” provides
Realtime self-defense to the user by giving an option of “Alerts”, which uses in-built GPS
& GSM of an android device and sends a distress message with a user’s current location
to the 2 contacts selected by a user. Nowadays due to recently happened cases such as
rape by drivers or colleagues, burglary, etc., women's security has been compromised.
The system uses the Global Positioning System (GPS) technology to find out the location
of women. Then, the user’s location provided by the device can be viewed on Google
maps using the Internet or specialized software from an app store. Our app will be the
ultimate tool to deal with the problem like women security for women working in night
shifts and traveling alone, etc.
1.2. PROJECT AIM
Our primary goal is to ensure every woman in our society to feel safe and secured. The
core aim is to provide safety to women from sexual abuse and crime by using Information
technology. The project idea is to have a software/Information technology layer between
women and her circle. User does require to have a Smart Phone having GPS and 2G/3G
internet and a mobile sim (GSM).
1.3. PROJECT OBJECTIVES
The project's objectives are as follows:
• To make an alert system for Women safety detection.
• To make a system that provides realizable and efficient processing.
• To make an app where users should not need external hardware or software to use this
application.
13
1.4. PROJECT SCOPE
The system comprises of 2 major modules as follows:
1.4.1. Admin Module:
• Add Personal Details
• Add Instructions
• View Registered Users
• Add Geo Map Via GPS/GSM
1.4.2 User Module:
• Register (With Details like Username, Phone-Numbers (Emergency Contacts)
and Email ID, etc.)
• Sign Up
• Sign In
• View Instructions
• Add 2-3 Mobile Numbers (Emergency Contacts) of Close
Relatives/Friends/Family Members
1.4.3 Send Immediate Distress Message Via App: SMS will be sent to chosen
associates with the User’s locality.
1.4.4 Awareness: Here users can learn Realtime self-defense techniques in a short time.
1.4.5 User-Profile: The option where the user can view her username & Emergency
contacts, edit/update it, and can see other account details.
1.4.6 Sign Out: Signs the user out of the system.
1.5. PROBLEM STATEMENT
Currently, few systems provide the functionality of Abuse prevention but these systems
have many issues, which prevent them from being ideal apps for users. There is no proper
fully automated mobile application that is user-friendly up to the level that a layman user
can operate it without having any prior knowledge. The process of sending alert to
selected associates is either too slow or gives errors on different operating systems.
Secondly, they don’t aware users about how they should deal with security invasion, or
how they can reduce the probability of abuse. Such a security alert systems for females
are in lag due to buggy coding and imprecise algorithms.
14
1.6. PROPOSED SOLUTION
Instead of the internet, GPS tracking systems have been used for tracking one’s locations
and GSM technology has been used for sending security alerts. It is simple and easy to
use and equipped with various functionalities. The app is built to intimidate the instant
location and a distress message to 2 to 3 family members or close friends and the pre-set
numbers, so that unfortunate incident can be averted and to provide real-time evidence
for the action against the perpetrators of crime against women. Later on, as the technology
emerges, it is possible to upgrade the system and can be made adaptable to the desired
environment because it is based on object-oriented design, any further changes can be
easily adaptable. Based on future security issues, security can be improved using
emerging technologies e.g. a microcontroller, sensor, fiber optics, etc. Moreover, the
application will be made easier to use for all the women and have been made in a normal
budget. This application would be free for the user or won’t be inexpensive, anyway.
Figure 1.6.1: Block Diagram
15
1.7.PROPOSED SYSTEM COMPONENTS
The proposed system components are:
• A web-based database named “Firebase”
• An in-built message app
• GSM Based technology; Mobile Phone Sim
• Admin Module
• User Registration on Smart Phone
• Google Maps
• User Authentication
1.8. PROPOSED SYSTEM OUTPUT
The user will use the “Alert” option to send a distress message & current location link to
the 3 selected associates and the sent message can be seen in the in-built message app of
the user’s phone. Rest, profile, current location, and self-defense guide can be seen on the
android app’s “HOME” page.
1.9. METHODOLOGY AND SOFTWARE LIFECYCLE FOR THIS PROJECT:
We have used agile methodology for the development of our project as our requirements
were constantly changing. The agile model helped us to change our requirement
specifications easily as per need. Our project was developed in incremental, rapid cycles
and we had a weekly meeting with our supervisor and in each meeting, changes were
discussed and new features were added or removed based on the supervisor’s opinion.
16
Figure 1.9.1: Agile Development Cycle
1.10. TOOLS AND TECHNOLOGY USE:
i) Java
ii) Android Studio
17
1.11. DELIVERABLES AND DEVELOPMENT REQUIREMENTS
The project plan comprises of following steps.
Figure 1.11.1: Project Plan
1.11.1. PROJECT BACKGROUND/ LITERATURE REVIEW
The idea came from women's safety as a whole. The basic approach is to intimidate the
instant location and a distress message to 2 to 3 family members or close friends and the
pre-set numbers, so that unfortunate incident can be averted and to provide real-time
evidence for the action against the perpetrators of crime against women. The user has to
register herself and allow GPS to use her location and click on the “Alert” button to send
a distress message along with location to her selected associates.
Every day, women are assaulted, molested, and violated on the streets of their cities.
Violence against women happens all over the world, particularly in developing countries
like Pakistan. This violence can take many forms: physical, sexual, or psychological.
Physical assault on women involves the use of force to injure or endanger them. So, the
aim of this project, therefore, is to effectively build a strong platform for women
empowerment in our society. We endeavored to achieve this by creating a mobile
application that:
18
• Has a straightforward user interface for speedy use
• Ensures the alert message is sent to the trusted people
• Allows the user to activate said alert discreetly
• Monitors locations where crises are taking place and reports the same to the
trusted people (who in turn notify the user’s emergency contacts)
Beforehand, many women safety apps have been built all over the world including
Eyewatch SOS for Women, Shake2Safety, Trakie, My SafetyPin, Circle Of 6, etc.
1.12. CHAPTER SUMMARY
The whole chapter describes the basic functionality and literature review of the project.
This whole project is based on women's safety and security. Where women can use this
app to save themselves from any unwanted security invasion on time. The entire
discussion is about the issue of the present-day and past day about abuse prevention
against women.
19
Chapter 2
REQUIREMENT ANALYSIS
The specifications are used to specify the requirements for the initial implementation of
the system and update the system in the future. The software requirement specification
bridges the gap between client/user and the system developer. This is the document that
describes the user needs accurately.
2.1 SOFTWARE REQUIREMENT SPECIFICATION
This system compromises an Android Operating System, using Java has a core language,
with Android SDK has its latest version, Implementation of the Front end is done by XML
and we have used Firebase i.e. Cloud NoSQL Database for storing user data, the
documentation of this system is done using MS-Office 2019.
Let’s pin them in number bullets:
2.1.1 Android Studio
Android studio for application development. This software is an essential
requirement for developing the Android application. Android is an operating
system based on Linux with a Java programming interface. The Android Software
Development Kit (Android SDK) provides all the necessary tools to develop
Android applications. This includes a compiler, debugger, and a device emulator,
as well as its virtual machine to run Android programs. Android is primarily
developed by Google. Android allows background processing, provides a rich
user interface library, supports 2-D and 3-D graphics using the OpenGL libraries,
access to the file system, and provides an embedded SQLite database. The android
application consists of different components and can re-use components of other
applications. This leads to the concept of a task in Android; an application can be
reused by other Android components to archive a task.
2.1.2 Java Development Kit (JDK) 8.2
Java Development Kit (JDK); A Java platform is the software environment in
which a program runs. The Java platform differs from most other platforms in that
it's a software-only platform that runs on top of other, hardware-based platforms.
20
Most other platforms are described as a combination of hardware and operating
system. The Java platform has two components: The Java Virtual Machine (Java
VM) and The Java Application Programming Interface (Java API) Java VM is the
base for the Java platform and is ported onto various hardware-based platforms.
The Java API is a large collection of ready-made software components that
provide many useful capabilities, such as graphical user interface (GUI) widgets.
The Java API is grouped into libraries (packages) of related components. The
following figure of Java Structure depicts a Java program, such as an application
or applet, that's running on the Java platform. As the figure shows, the Java API
and Virtual Machine insulate the Java program from hardware dependencies. As
a platform-independent environment, Java can be a bit slower than native code.
However, smart compilers, well-tuned interpreters, and just-in-time byte code
compilers can bring Java's performance close to that of native code without
threatening portability.
Figure 2.1.1: Java Structure
2.1.3 XML for Frontend
Java Program
Java API
Java Virtual Machine
Hardware
21
Implementation of the Front end is done by XML. Extensible Markup Language
(XML) is used to describe data. The XML standard is a flexible way to create
information formats and electronically share structured data via the public
Internet, as well as via corporate networks.
2.1.4 Firebase for Backend
The Firebase Realtime Database is cloud-hosted. Data is stored as JSON and
synchronized in real-time to every connected client. It does store and sync data
with the NoSQL cloud database. Data is synced across all clients in Realtime and
remains available even if the app goes offline.
2.1.5 Media Support
Media support for common audio, video, and still image formats (MPEG4, H.264,
MP3, AAC, AMR, JPG, PNG, and GIF).
2.1.6 MS Office
The documentation of this system will be done using MS-Office.
2.1.7 Edraw Max V9.4
This is used for making UML diagrams.
2.2 FUNCTIONAL REQUIREMENTS
The project's functional requirements would be as follows.
2.2.1 Register User
The system shall allow the user to register using a unique user id and password.
The system shall provide the facility of adding personal information. On the
registration page, a user will be able to enter the user details; this would contain
details such as Name of the user, email address of the user, and password. These
details are saved by clicking on the save button. It has been designed by keeping
all the constraints in mind like the username should not contain special characters
and should only be written in English alphabets, and the email-id is set using a
standard email-id format, if a user enters some wrong format or misses @ or .com
then it flashes an error.
22
2.2.2 Alerts
The system shall send alerts to family and friends in case of an emergency.
2.2.3 Self Defense Technique/Awareness
The system shall provide some self-defense techniques to women for future
harassment problem management and also can apply them on spot.
2.2.4 GPS Tracking System
The system should provide the facility of a location tracking system. Immediately
send the location of the victim to the family members or friends. The GPS
information (GPS information can be in the form of the Co-ordinates or the URL
which leads to the location of the person any stock map application in the likes of
third-party application like Google, Nokia, etc.) to the registered contacts at danger
times or when the person is needed to be rescued. This step is followed only when
the alert button is pressed in an application. The whole process of this step is done
only when the device is connected to the proper mobile network, GSM Technology
i.e. usage of installed sim and location service in the device is switched on (GPS).
2.2.5 Cloud NoSQL Database
A “cloud database” is a NoSQL database installed and running on a cloud virtual
machine (be it public cloud, private cloud, or hybrid cloud platforms), or a cloud
provider's fully managed database-as-a-service (DBaaS) offering.
Figure 2.2.1: Cloud NoSQL Database (Firebase)
23
2.2.6 Peer-To-Peer Architecture
The app will be using P2P Architecture. In a peer-to-peer architecture the nodes
self-configure into an integrated network using distributed control, and the
connection between any two nodes in the network consists of one or more peer-to-
peer communication links. Wi-Fi Direct allows two devices to establish a direct,
peer-to-peer Wi-Fi connection without requiring a wireless router. Wi-Fi becomes
a way of communicating wirelessly, like Bluetooth. Wi-Fi Direct is similar in
concept to “ad-hoc” Wi-Fi mode. The Wi-Fi peer-to-peer (P2P) APIs allow
applications to connect to nearby devices without needing to connect to a network
or hotspot.
Figure 2.2.2: Peer-to-peer Architecture
2.3 NON-FUNCTIONAL REQUIREMENTS
Nonfunctional requirements are the functions offered by the system. It includes
time constraints and constraints on the development process and standards. The
non-functional requirements are as follows:
24
2.3.1 Usability
Our project is quite usable and implementable in every kind of environment. It
has a simple user interface and easily understandable for the common user.
2.3.2 Reliability
Our project is reliable for every type of user and it will require an android device.
The project will be calibrated with a standard device to make the tracking system
reliable.
2.3.3 Integrity
Only the system developer has the right to make any changes to the system.
2.3.4 Performance
The efficiency of any system is concerned with the minimum processing time as
well as the optimal use of the system resources is designing the proposed system.
The efficiency factor has been taken well into consideration.
2.3.5 Speed
The system should process the given input into output within an appropriate time.
2.3.6 Ease of use
The software should be user friendly. Then the customers can use it easily, so it
doesn’t require much training time.
2.3.7 Reliability
The rate of failures should be less then only the system is more reliable.
2.3.8 Portability
It would be easy to implement in any system because we are using an object-
oriented approach.
25
2.4 EXTERNAL INTERFACE REQUIREMENTS
2.4.1 Cloud Database
We have used a cloud database, a database that typically runs on a cloud
computing platform, and access to the database is provided as-a-service. Database
services take care of scalability and high availability of the database. app.
Figure 2.4.1: Cloud Database
2.5 PERFORMANCE REQUIREMENTS
2.5.1 Battery Charging
The project performance requires a battery charging after a specific time
to make the device alive.
2.5.2 Load Time
The load time for user interface screens shall take no longer than five
seconds.
2.5.3 Queries Processing
Queries shall return results within five seconds.
2.6 OPERATING ENVIRONMENT
Operating environment for the Abuse Prevention App is as listed below:
26
2.6.1 DB Management System: Cloud-based database
2.6.2 Architecture: Peer-to-peer
2.6.3 Operating System: Windows/Android
2.6.4 Database: Cloud NoSQL
2.6.5 Platform: Java/XML
2.7 CHAPTER SUMMARY
The problem of the women safety is increased rapidly in this environment, so we have
made an effective Android application to prevent such type of suspicious or natural
disaster, by alerting the concerned authorities using the android mobile phone, which
helps to stop such type of illegal activates and to trace the concern.
In this chapter, we came to know about the performance, efficiency, and accuracy of the
project that either project is fast, efficient, and useful in saving the suspect from the
security breach, harassment, invasion in personal space, and women safety. Features like
GPS/GSM will be used to improve the efficiency and performance of this system and the
whole output of the system will be good.
For future enhancements, this mobile application can be helpful in future when any
problem arises in traveling or any kind of situations, e.g. as the technology emerges, it is
possible to upgrade the system and can be adaptable to the desired environment because
it is based on object-oriented design, any further changes can be easily adaptable. Plus, it
is based on future security issues, security can be improved using emerging technologies.
27
Chapter 3
SOFTWARE DESIGN
3.1. USE CASES (FULLY DRESSED)
3.1.1 Registration
Actor:
User
Pre-condition:
The application is running.
Postcondition:
A user account is created.
Use case:
Figure 3.1.1: Registration Use Case
Description:
Users will create an account.
3.1.2 Login
Actor:
User
Pre-condition:
The app is running.
28
Postcondition:
User has been logged in
Use case:
Figure 3.1.2: Medicine Schedule Use Case
Description:
After the user account is created user can log in through the app.
29
3.1.3 Alerts
Actor:
User
Pre-condition:
The app is running.
Postcondition:
The user clicked on the “Alerts” button.
Use case:
Figure 3.1.3: Alerts Use Case
Description:
Alerts will be constituted of “Distress Message & Location Link” of the user, would be
sent to selected associates.
3.1.4 Set GPS On
Actor:
User, GPS Tracker
Pre-condition:
The app is running.
Postcondition:
30
The app will ask for permissions regarding “Allow your GPS” from the user and the user
has to allow to let the app do its work later on. It will only be asked for the first time when
the user will install an app and runs it.
Use case:
Figure 3.1.4: Display Information Use Case
Description:
The app will send location links to selected associates upon user’s click on the “Alert”
button.
3.1.5 Sync Emergency Contacts
Actor:
User, Phone Book
Pre-condition:
The application is running.
Postcondition:
The App will ask for permission to access contacts from the phone book.
31
Use case:
Figure 3.1.5: Send Alerts Use Case
3.1.6 Profile
Actor:
User
Pre-condition:
The application is running.
Postcondition:
User view or edit profile and can sign out as well.
Use case:
Figure 3.1.6: Profile Use Case
32
3.1.7 Self-Defense Guide/Awareness
Actor:
User
Pre-condition:
The application is running.
Postcondition:
Users can learn self-defense techniques about how to tackle abuse.
Use case:
Figure 3.1.7: Self-Defense Guide/Awareness Use Case
33
3.2. USE CASE DIAGRAM
A use case diagram captures the actors and the role or functions they perform in the
system. There are three actors which include; User, GPS Tracker, and User’s Phone Book.
Figure 3.2.1: Use Case Diagram
34
3.3. CLASS DIAGRAM
Figure 3.3.1: Class Diagram
35
3.4. SEQUENCE DIAGRAMS
● The sequence diagram is one kind of interaction diagrams, which shows
interaction among a set of objects and their relationships.
● There may be multiple sequence diagrams per use case, one per use case scenario.
3.4.1. Registration
Figure 3.4.1: Registration’s Sequence Diagram
36
3.4.2. Alerts
Figure 3.4.2: Alerts Sequence Diagram
37
3.4.3. Maps
Figure 3.4.3: Maps Sequence Diagram
38
3.4.4. Self-Defense Guide/Awareness
Figure 3.4.4: Self-Defense Guide/Awareness Sequence Diagram
39
3.4.5. Profile
Figure 3.4.5: Profile Sequence Diagram
40
3.5. ACTIVITY DIAGRAMS
3.5.1. App Activity
Figure 3.5.1: App’s Activity Diagram
41
3.5.2. Alerts Activity
Figure 3.5.2: Alerts Activity Diagram
42
3.5.3. Login Activity
Figure 3.5.3: Login Activity Diagram
43
3.6. COMPONENT DIAGRAM
Component diagrams are different in terms of nature and behavior. Component diagrams
are used to model the physical aspects of a system.
Figure 3.6.1: Component Diagram
44
3.7. DEPLOYMENT DIAGRAM
Figure 3.7.1: Deployment Diagram
45
3.8. COLABORATION DIAGRAM
Figure 3.8.1: Collaboration Diagram
3.9 CHAPTER SUMMARY
In this chapter detailed description of project requirements related to its working. Here
we define the all working component that we use in this project and diagrams description
which specifies how the project is working. Each diagram defines each working unit of
the project.
46
Chapter 4
PROJECT MANAGEMENT
Project management is the practice of initiating, planning, executing, controlling, and
closing the work of a team to achieve specific goals and meet specific success criteria at
the specified time. The primary challenge of project management is to achieve all of the
project goals within the given constraints.
4.1. MILESTONES
Milestones are tools used in project management to mark specific points along a project
timeline. These points may signal anchors such as a project start and end date, or a need
for external review or input and budget checks. In many instances, milestones do not
impact project duration. In other words, it is a management tool that is used to delineate
a point in a project schedule.
Before Mid-Term
4.1.1. Milestone 1
● Proposal discussion with faculty: Proposal discussed with faculty about its scope
and how the development will go.
● Approval of proposal: The proposal was submitted for approval.
4.1.2. Milestone 2
● Functional requirements: This is the phase where we’ve identified all the
functional requirements of our project.
● Non-functional requirements: Non-functional requirements of the project are
identified and documented.
4.1.3. Milestone 3
● Use case diagram: Use case diagram of the project was developed.
● Fully dressed use cases: Fully dressed use cases were documented.
● Submitted for review: Use case diagram was submitted to the supervisor for
review.
47
● Approval of use case diagram and fully dressed use cases.
After Mid-Term
4.1.4. Milestone 4
● Development of class diagram.
● Sequence diagrams were prepared and documented.
● Collaboration diagrams were prepared and documented
● Activity diagrams were prepared and documented.
● The components diagram was prepared.
● The deployment diagram was prepared.
● All diagrams were submitted to the supervisor for review.
4.1.5. Milestone 5
● The project interface was developed and submitted for review.
● Registration form: GUI was prepared and submitted for approval.
4.1.6. Milestone 6
● Database connection establishment
● Firebase; Cloud NoSQL based Database creation
● Testing of database connection
4.1.7. Milestone 7
● Connection of registration form with a database.
● Testing of the registration form.
4.1.8. Milestone 8
● Development of Abuse Prevention App.
● Coding Done.
● Testing of Abuse Prevention App.
48
4.1.9. Milestone 9
● Development of admin module.
● Development of all user interfaces.
● Testing of interfaces.
4.1.10. Milestone 10
● Development of Registration module.
● Development of the Login module.
● Development of the “Alerts” module.
● Development of Self-Defense Guide/Awareness module.
● Development of Current Location/Maps module.
● Development of GPS Permission Management module.
4.1.11. Milestone 11
● Complete testing of a project
4.2. PROJECT CLOSEOUT REPORT
All the project deliverables are listed below with the date.
Table 4.2.1: Deliverables Plan
Deliverable Date
Proposal October 15, 2019
Requirements Specification November 07, 2019
Design January 1, 2020
Development May 28, 2020
Testing June 10, 2020
Debugging June 15, 2020
49
Code Review June 25, 2020
Documentation July 15, 2020
4.3. OPERATION AND MANAGEMENT PLAN
In this part of the project, the operations are tested whether they are fulfilling the fixed
objectives or not. The system can perform multiple operations with the good response
time.
The maintenance services of the system include: -
● The database should be available 24/7.
● User privacy ensures.
● User Private data security.
● No Third-party app interference.
● A backup of data should be available.
● The system should be secure.
● Application Enhancements & Performance Enhancements.
● Post-release Support, Operational, and Helpdesk Support.
● Corrective maintenance and bug fixation.
● The facility of real-time communication.
4.4. PROJECT RESOURCE
Figure 4.4.1: Project Resources
Resources (name the resource used) Person or organization who received
resource
Project Team UIIT
Madeeha Saeed __
50
Equipment
Laptop Group
Android Phone __
Software Tools UIIT
Android Software Development Kit
(SDK) and Android Studio
__
Cloud NoSQL Database (Firebase)
Android Operating System
Windows 10 Pro
MS Office 2016
Hardware UIIT
Absent __
Table 4.4.1: Table of Project Responsibilities
Division of responsibilities
Individual Responsibility
Madeeha Saeed Requirement Analysis, UMLs, UI Designing & XML, Full-
Documentation, All Modules Coding, Testing, Software Development
51
4.5. RISK MANAGEMENT
Risk Management is all about managing the risks that can probably occur in the project.
The existence of risks in any project is normal but how they are controlled is more
important. They must be handled efficiently to increase the worth of the project. All the
possible situations should be kept in mind because the knowledge level of every user
could be dissimilar. If the risk is not handled correctly it might happen very intolerable to
the user, so this is a very significant phase of the project. Risk Management is about:
● Identifying and accessing the key risk.
● Designing and implementing the process by which that risk can be minimized.
4.6. RISK ANALYSIS
● Internet & GPS connection fails.
● Android App not working failure chances.
● Application may not detect 100% gesture/emergency trigger.
● Fail to send the distress message to 2 to 3 relatives.
● The caretaker’s phone fails to send GPS location.
● The application may send multiple distress messages without user input.
● Possibility of battery damage.
4.6.1 RISK IDENTIFICATION
Table 4.6.1: Risk Identification Table
#No. Name Probability
of
Occurrence
Severity
level
Description
1. Internet Connection
Fails
Low High App’s
functionality
nullifies/ Internet
& GPS connection
fails.
52
2. Android App Not
Working
Low High System Crash/
Android App not
working failure
chances.
3. Gesture/Emergency
Trigger
Moderate High Application may
not detect 100%
gesture/emergency
trigger.
4. Distress Message Moderate High Fail to send the
distress message to
2 to 3 relatives.
5. GPS/GSM Low High The caretaker’s
phone fails to send
GPS location.
6. Messages Without
Input
Low Low An application
may send multiple
distress messages
without user input.
7. Battery Low Low Possibility of
battery damage.
4.6.2. RISK RESPONSE
Table 4.6.2: Risk Response Table
53
Priority #No. Name Responsible
Person/Source
Risk
Mitigation
Action
Response
High 1. Internet Connection
Fails
Internet Itself User’s
Mobile Data
Initiation
It will be
ensured that
before using
the app or if
the user has an
intention to
use the app,
then internet
availability is a
must-have.
High 2. Android App Not
Working
Software Software
Testing
The bugs will
be fixed out in
the testing
period to
ensure no
software crash
in future.
3. Gesture/Emergency
Trigger
Algorithm - -
High 4. Distress Message Software Software
Testing
The bugs will
be fixed out in
the testing
period; ensures
no software
crashes in the
future.
54
High 5. GPS/GSM Internet Mobile Data Re-
establishing
Internet
connection.
6. Messages without
input
Algorithm - -
7. Battery User/Device - -
4.6.3. GRAPHICAL REPRESENTATION OF RISKS
Figure 4.6.1: Risk Response Graphs
4.7. CHAPTER SUMMARY
In this chapter, first, we assigned a milestone to our project per our project analysis. We
also provided a very short description of each milestone of our project from requirement
gathering to the project testing phase. After assigning milestones to our project, we
prepared a project closeout report, in the short deliverables of our project. We provided
each deliverable of our project with the time to be delivered. Then, we covered the
operation and the management plan phase. In this phase, we described how our project
can be managed to perform well and how to detect errors and maintain them for future
purposes. Also, we described the proper functioning of the project. After this, we describe
55
the important resources which are used in our project and which can affect these
resources. We covered almost all the important resources that we are going to integrate.
In the second phase of this chapter, we described risk management, how it is important
to each project, and how we can handle all the risk which can occur in our project. So, to
do this, first, we analyzed the risks which may occur in our project. We described each
risk factor that may occur after doing risk analysis. After this, we described the risk
response factor in our project which tells about the risk information.
56
Chapter 5
PROJECT IMPLEMENTATION
5.1. PROGRAMMING LANGUAGE
We are using Java as a programming language in android studio to do all the necessary
tasks and operations that are required to achieve the proposed solution of our project. We
have used Android version 3.6.3 and API level 29 to develop our application.
5.2. FRAMEWORK
● Android Studio 3.6.3
It is used to develop an android application.
● Java Development Kit (JDK)
It is used as a Java Platform.
● Microsoft Office 2016
This is used for making documentation of this project.
● Edraw Max V9.4
This is used for making UML diagrams.
5.3. SYSTEM REQUIREMENTS
5.3.1. Hardware Requirements
Table 5.3.1: Hardware Requirements
Criterion Description
OS version Windows 7 or later
RAM 3 GB RAM minimum, 4
GB RAM recommended
Disk Space 500 MB disk space
57
Space for Android SDK At least 1 GB for Android
SDK, emulator system
images, and caches
JDK Version Java Development Kit
(JDK) 7 or higher
5.3.2. Software Requirements
Figure 5.3.1: Software Requirements
Language XML, Java
Platform Android Studio
Tools Edraw Max
Android studio
Java Development Kit (JDK)
5.4. CHAPTER SUMMARY
This chapter captures the design architecture of the project, the language, and other
different tools used to develop this project. It describes the functionality of the framework
which we are using in this project. Also, it describes the hardware and software
requirements of the project along with their working.
58
Chapter 6
SOFTWARE TESTING
6.1. DERIVING TEST
After completion of each phase, verification was done. To verify the requirements the
completed phase was fully tested. Against the requirement, all the units were found to be
completely satisfactory. As the system should be verified at each stage of the software
process using documents produced during the previous stage. Therefore, we started
verification with the requirements reviews and continued through design and code review
for product testing. This is an activity to verify whether we have built the system right or
not in the development life cycle.
6.2. TEST ENVIRONMENT
The following elements are required to support the overall testing effort at all levels.
6.2.1. Software
● Window 10 Pro
● Android studio
● Microsoft word 2019
● Edraw Max V9.4
6.2.2. Hardware
● Android Device (8.0 and above)
6.3. TESTING IDENTIFICATION
Specific testing is a plan for every test level to test all system components. The procedure
is designed in detail so that the system meets all user requirements.
The system can be divided into the following modules:
● Connectivity of device with a mobile phone.
● Connectivity of Victim phone with the family phone.
● Sending Alerts to the selected associates.
● Setting Mobile GPS On.
59
● Permitting Mobile’s Sim to send messages via GSM.
6.4. TEST PROCEDURE
The following testing procedures are done.
6.4.1. Unit Testing
The goal of unit testing is to separate each part of the program and show that the
individual parts are correct. Unit testing provides a strict, written contract the piece
of code must satisfy. As a result, it affords several benefits. Unit testing allows the
programmer to refactor code at a later date, and make sure the module still works
correctly. This encourages the programmer to make changes to the code. Unit testing
will be done for the following units:
6.4.2. Setting GPS On
Testing the GPS on so that application can send a location to selected associates and
also updates the current location of the user.
6.4.3. Sending Alerts
Testing that Alerts have been sent to selected associates.
6.4.4. Permitting Mobile’s GSM
Testing that mobile’s sim is permitted by the user to access the message app and
distress messages.
6.4.5. System Testing
System testing involves the set of tests that the entire system performs according to
specification.
6.4.6. Integrate Testing
Integration testing is the phase in software testing in which individual software
modules are combined and tested as a group. It occurs after unit testing and before
system testing. The test conducted to ensure that the components are integrated to
perform together.
● Integration of GPS and testing the interface functionality.
60
● Integrate whether Alerts have been sent to selected associates
● Integrate whether the that mobile’s sim is permitted by the user to access the
messaging app and send distress messages.
● Integrate application show sent messages in the app and delivery status is shown.
6.4.7. Performance Testing
Performance testing can be applied to understand the application’s scalability.
6.4.8. Stress Testing
A system is evaluated under normal conditions in all previous testing techniques, and
so conditions where can fail tested. Stress testing evaluates the system under abnormal
conditions.
6.5. TEST CASES
Table 6.5.1: Sending Alert Test Case
Tested By:
Madeeha Saeed
Test Type:
Unit Testing
Test Case Number:
Test1
Test Case Name:
Sending Alert
Actual Result Pass
Test Case Description:
This test verifies that the application is
successfully sent alert to
family/friends’ phone
Items To Be Tested
1.
Sending Alerts to the selected associates.
Specifications
Input
Expected Output/Result
61
1.
Clicking “Alerts” Button 1. Alert sent to emergency contacts in
case of harassment or abuse.
6.5.1. Test Case 2: Sending Location
Table 6.5.2: Sending Location Test Case
Tested By:
Madeeha Saeed
Test Type:
Unit Testing
Test Case Number:
Test2
Test Case Name:
Sending Location
Actual Result Pass
Test Case Description:
This test verifies that the application is
successfully sent a Location Link to
emergency contacts.
Items To Be Tested
1.
Sending location to emergency contacts.
Specifications
Input
Expected Output/Result
1.
Setting Mobile GPS On by
Tapping On “Allow” Pop UP
1. GPS Set On & Current Location
Can Be Shown on Maps.
2.
Clicking “Alerts” Button 2. Alert sent to emergency contacts in
case of harassment or abuse.
62
6.5.2. Test Case 3: GSM Activation
Table 6.5.3: GSM Activation Test Case
Tested By:
Madeeha Saeed
Test Type:
Unit Testing
Test Case Number:
Test3
Test Case Name:
GSM Activation
Actual Result Pass
Test Case Description:
This test verifies that GSM Has access
to the application and messages can be
send using mobile’s sim.
Specifications
Input
Expected Output/Result
1.
Clicking the “Alerts” button. 1. Alert sent to emergency contacts in
case of harassment or abuse and
sent messages can be seen in the
mobile’s messages app.
6.6. CHAPTER SUMMARY
This chapter is about testing the different phases of the project. We have tested our app
by using different testing processes like Unit testing, Integrated testing, System testing,
etc.
63
Chapter 7
CONCLUSION AND FUTURE WORK
7.1. DISCUSSION
The idea came from women's safety as a whole. The basic approach is to intimidate the
instant location and a distress message to 2 to 3 family members or close friends and the
pre-set numbers, so that unfortunate incident can be averted and to provide real-time
evidence for the action against the perpetrators of crime against women. The user has to
register herself and allow GPS to use her location and click on the “Alert” button to send
a distress message along with location to her selected associates.
Every day, women are assaulted, molested, and violated on the streets of their cities.
Violence against women happens all over the world, particularly in developing countries
like Pakistan. This violence can take many forms: physical, sexual, or psychological.
Physical assault on women involves the use of force to injure or endanger them. So, the
aim of this project, therefore, is to effectively build a strong platform for women
empowerment in our society.
Beforehand, many women safety apps have been built all over the world including
Eyewatch SOS for Women, Shake2Safety, Trakie, My SafetyPin, Circle Of 6, etc.
7.2. CONCLUSION
Before starting development, we have planned the abstract about how our app should look
alike. We opted to follow the agile model for the app's development. Right after, our
proposal had been accepted, we started working on XMLs and made them in three phases;
in first phases, we asked our supervisor to rate them and after that, we changed them
according to our aesthetics, keeping in mind it is about women's safety, so we kept making
interface according to feminine themes, so the ideas should be glimpsed on the first look.
Later on, during the coding phase, we changed XMLs bit more to sync them up with the
android OS.
We used broadcast receiver coding for sending messages along with GSM technology,
GPS to track location using Foursquare Google Maps API, and Firebase i.e. Cloud-based
64
NoSQL database to maintain user data. Our app will give Realtime functioning including,
an awareness which shows self-defense guide to the user to learn self-defense on the spot,
Alert option to send distress messages along with location link to the selected
associates/emergency contacts, shows updated current location of the user while user
using the app and also give a user-profile show to the user as well.
Firstly, the user has to register herself and then should log in. After login, the user will be
asked to give permissions regarding access to Mobile's GPS and GSM, where the user
has to tap “Allow”. After that, the user can click "Alert" Button to send alerts i.e. distress
message saying "I'm in danger. HELP! My Location is: (Location Link)" to the
emergency contacts. The sent message can be seen in the mobile's messages app. Users
must have internet and sim with a significant balance to let this work. Moreover, users
can learn self-defense through awareness option, can see current location through app,
view & edit profile, and can signs out as applicable.
7.3. LIMITATIONS
The project we have developed is made keeping in mind that it would not only be unique
of its kind but also it would be helpful in real-life. The stimulus came from lots of bad
news coming daily about rapes and kidnappings of kids and women. The app is made by
using object-oriented design, so it can be improved later on. Our app might have some
tasteless designing or buggy coding at some point, as it was our first time learning the
development of an android app and it is also the first version as well. I have tried our best
to make it up to the mark, though, some problems may exist.
During the design phase I learned:
● Writing documentation and designing of software through different graphic
designing apps and also through coding i.e. XML.
During the testing and implementation phase I learned:
● Finding bugs and its fixture.
During the coding phase I learned:
• Java Programming
65
7.4. FUTURE WORK
Our project can later be used as a big project for women's safety at a national level. The
period was about 12-14 months to complete this project for one person alone, as, I learned
these tools and technologies during this tenure. Many features can be added to this project
which I’ve been unable to do because of lack of time. Future work can be done on
improving the app by adding more vulnerable options like sending distress alerts to the
nearest police station or adding multiple sirens to alert people in the surrounding. Also,
more services can be added according to the need of time.
66
Chapter 8
USER GUIDE
8.1. APP LAUNCH PAGE 01
Figure 8.1.1: App Launch 01 UI
67
8.2. SIGNUP SCREEN
Figure 8.2.1: Signup UI
8.3. MAIN SCREEN
Figure 8.3.1: Home Screen UI
68
8.4. APP LAUNCH PAGE 02
Figure 8.4.1: Launch Page 02 UI
8.5. ALERTS
Figure 8.5.1: Alerts UI
69
8.6. PROFILE SCREEN
Figure 8.6.1: Profile UI
8.7. LOGIN SCREEN
Figure 8.7.1: Login UI
70
8.8. MAPS SCREEN
Figure 8.8.1: Maps UI
71
8.9. INTRO SLIDERS SCREENS
Figure 8.9.1: Slider 01 UI
Figure 8.9.2: Slider 02 UI
72
Figure 8.9.3: Slider 03 UI
Figure 8.9.4: Slider 04 UI
73
Figure 8.9.5: Slider 05 UI
Figure 8.9.6: Slider 06 UI
74
8.10. AWARENESS SCREENS
Figure 8.10.1: 01 UI
Figure 8.10.2: 02 UI
75
Figure 8.10.3: 03 UI
Figure 8.10.4: 04 UI
76
Figure 8.10.5: 05 UI
Figure 8.10.6: 06 UI
77
Figure 8.10.7: 07 UI
8.11. PERMISSION SCREENS
Figure 8.11.1: GSM UI
78
Figure 8.11.2: GPS UI
79
LIST OFABBREVATIONS
Global Positioning System (GPS)
Global System for Mobile Communications (GSM)
Android Software Development Kit (SDK)
Java Development Kit (JDK)
Java Virtual Machine (JVM)
Extensible Markup Language (XML)
Graphical User Interface (GUI)
Database-as-a-service (DBaaS)
Final Year Project (FYP)
University Institute of Information Technology (UIIT)
80
REFERENCES
[1] https://tribune.com.pk/story/1348833/93-pakistani-women-experience-sexual-
violence/
[2] http://www.ijcstjournal.org/volume-5/issue-2/IJCST-V5I2P51.pdf
[3] https://pdfs.semanticscholar.org/2e31/148a2fe83d60faeb0c2bafa5d540d79c5a7
8.pdf
[4] http://ijarcet.org/wp-content/uploads/IJARCET-VOL-5-ISSUE-3-725-729.pdf
[5] ROGER S. Pressman, “Software Engineering: A Practitioner's Approach”,
SEVENTH EDITION McGraw-Hill International edition, Page No.1-888, 2010
[6] WOMEN’S SECURITY, Android App developed by AppSoftIndia,
December17, 2013
[7] Suraksha, A device to help women in distress: An initiative by a student of ITM
University Gurgaon, efytimes.com, 2013.
[8] https://www.researchgate.net/publication/287201587_Abhaya_An_Android_Ap
p_For_The_Safety_Of_Women
[9] Ajit, Arjun, A Software Engineering Project on Women Safety-Information
System Development, 10.13140/RG.2.1.4850.3449, 2016
[10] ttps://www.researchgate.net/publication/297549148_A_Software_Engine
ering_Project_On_Women_Safety-Information_System_Development
[11] https://projectworlds.in/android-projects-with-source-code/women-
safety-app-android-project-source-code/
[12] https://www.kashipara.com/project/android/1670/women-safety-app
[13] https://appsagainstabuse.devpost.com/submissions/4900-circle-of-6
The End

More Related Content

Similar to Abuse Prevention App - Documentation (Engr. Madeeha Saeed)

Star Contributor of the Month for February - SunGard
Star Contributor of the Month for February - SunGardStar Contributor of the Month for February - SunGard
Star Contributor of the Month for February - SunGardAravind Deivendran
 
Software Engineering Final Year Project Report
Software Engineering Final Year Project ReportSoftware Engineering Final Year Project Report
Software Engineering Final Year Project Reportjudebwayo
 
SNAP Bulletin of 2016 (Exam Dates, Summary & Information)
 SNAP Bulletin of 2016 (Exam Dates, Summary & Information) SNAP Bulletin of 2016 (Exam Dates, Summary & Information)
SNAP Bulletin of 2016 (Exam Dates, Summary & Information)Exam Relative
 
Mohamed Marei 120126864 Dissertation Design and Construction of Hardware Add-...
Mohamed Marei 120126864 Dissertation Design and Construction of Hardware Add-...Mohamed Marei 120126864 Dissertation Design and Construction of Hardware Add-...
Mohamed Marei 120126864 Dissertation Design and Construction of Hardware Add-...Mohamed Marei
 
Faiz Aldalbhi CV English dated 17 Nov 15
Faiz Aldalbhi CV English dated 17 Nov 15Faiz Aldalbhi CV English dated 17 Nov 15
Faiz Aldalbhi CV English dated 17 Nov 15Faiz Aldalbhi
 
Faiz Aldalbhi CV English dated 17 Nov 15
Faiz Aldalbhi CV English dated 17 Nov 15Faiz Aldalbhi CV English dated 17 Nov 15
Faiz Aldalbhi CV English dated 17 Nov 15Faiz Aldalbhi
 
Faiz Aldalbhi CV English dated 17 Nov 15
Faiz Aldalbhi CV English dated 17 Nov 15Faiz Aldalbhi CV English dated 17 Nov 15
Faiz Aldalbhi CV English dated 17 Nov 15Faiz Aldalbhi
 
Faiz Aldalbhi CV English dated 17 Nov 15
Faiz Aldalbhi CV English dated 17 Nov 15Faiz Aldalbhi CV English dated 17 Nov 15
Faiz Aldalbhi CV English dated 17 Nov 15Faiz Aldalbhi
 
Forecasting a Student's Education Fulfillment using Regression Analysis
Forecasting a Student's Education Fulfillment using Regression AnalysisForecasting a Student's Education Fulfillment using Regression Analysis
Forecasting a Student's Education Fulfillment using Regression AnalysisRam G Athreya
 
Sudarsh-Nanjappa-Reference-Letter-Ala-WMU
Sudarsh-Nanjappa-Reference-Letter-Ala-WMUSudarsh-Nanjappa-Reference-Letter-Ala-WMU
Sudarsh-Nanjappa-Reference-Letter-Ala-WMUSudarsh Nanjappa
 
Universities Partner with GCORE to Manage 'Off-Site' Risks
Universities Partner with GCORE to Manage 'Off-Site' RisksUniversities Partner with GCORE to Manage 'Off-Site' Risks
Universities Partner with GCORE to Manage 'Off-Site' RisksScott Flower PhD
 
EVOLVING RANSOMWARE ATTACKS ON HEALTHCARE PROVIDERS
EVOLVING RANSOMWARE ATTACKS ON HEALTHCARE PROVIDERSEVOLVING RANSOMWARE ATTACKS ON HEALTHCARE PROVIDERS
EVOLVING RANSOMWARE ATTACKS ON HEALTHCARE PROVIDERSAyed Al Qartah
 
Comparative Study and Analysis of Multiplatform Mobile Application Development
Comparative Study and Analysis of Multiplatform Mobile Application DevelopmentComparative Study and Analysis of Multiplatform Mobile Application Development
Comparative Study and Analysis of Multiplatform Mobile Application DevelopmentIJMTST Journal
 

Similar to Abuse Prevention App - Documentation (Engr. Madeeha Saeed) (20)

Star Contributor of the Month for February - SunGard
Star Contributor of the Month for February - SunGardStar Contributor of the Month for February - SunGard
Star Contributor of the Month for February - SunGard
 
Software Engineering Final Year Project Report
Software Engineering Final Year Project ReportSoftware Engineering Final Year Project Report
Software Engineering Final Year Project Report
 
SNAP Bulletin of 2016 (Exam Dates, Summary & Information)
 SNAP Bulletin of 2016 (Exam Dates, Summary & Information) SNAP Bulletin of 2016 (Exam Dates, Summary & Information)
SNAP Bulletin of 2016 (Exam Dates, Summary & Information)
 
Darshan Patel_final thesis
Darshan Patel_final thesisDarshan Patel_final thesis
Darshan Patel_final thesis
 
Mohamed Marei 120126864 Dissertation Design and Construction of Hardware Add-...
Mohamed Marei 120126864 Dissertation Design and Construction of Hardware Add-...Mohamed Marei 120126864 Dissertation Design and Construction of Hardware Add-...
Mohamed Marei 120126864 Dissertation Design and Construction of Hardware Add-...
 
Faiz Aldalbhi CV English dated 17 Nov 15
Faiz Aldalbhi CV English dated 17 Nov 15Faiz Aldalbhi CV English dated 17 Nov 15
Faiz Aldalbhi CV English dated 17 Nov 15
 
Faiz Aldalbhi CV English dated 17 Nov 15
Faiz Aldalbhi CV English dated 17 Nov 15Faiz Aldalbhi CV English dated 17 Nov 15
Faiz Aldalbhi CV English dated 17 Nov 15
 
Faiz Aldalbhi CV English dated 17 Nov 15
Faiz Aldalbhi CV English dated 17 Nov 15Faiz Aldalbhi CV English dated 17 Nov 15
Faiz Aldalbhi CV English dated 17 Nov 15
 
Faiz Aldalbhi CV English dated 17 Nov 15
Faiz Aldalbhi CV English dated 17 Nov 15Faiz Aldalbhi CV English dated 17 Nov 15
Faiz Aldalbhi CV English dated 17 Nov 15
 
Forecasting a Student's Education Fulfillment using Regression Analysis
Forecasting a Student's Education Fulfillment using Regression AnalysisForecasting a Student's Education Fulfillment using Regression Analysis
Forecasting a Student's Education Fulfillment using Regression Analysis
 
Akash rm prj.
Akash rm prj.Akash rm prj.
Akash rm prj.
 
Sudarsh-Nanjappa-Reference-Letter-Ala-WMU
Sudarsh-Nanjappa-Reference-Letter-Ala-WMUSudarsh-Nanjappa-Reference-Letter-Ala-WMU
Sudarsh-Nanjappa-Reference-Letter-Ala-WMU
 
Universities Partner with GCORE to Manage 'Off-Site' Risks
Universities Partner with GCORE to Manage 'Off-Site' RisksUniversities Partner with GCORE to Manage 'Off-Site' Risks
Universities Partner with GCORE to Manage 'Off-Site' Risks
 
Project report on Health & Safety
Project report on Health & Safety Project report on Health & Safety
Project report on Health & Safety
 
Ravindra industrial training
Ravindra industrial trainingRavindra industrial training
Ravindra industrial training
 
RHouraniDSFinalPaper
RHouraniDSFinalPaperRHouraniDSFinalPaper
RHouraniDSFinalPaper
 
Project documentaion sample.docx
Project documentaion sample.docxProject documentaion sample.docx
Project documentaion sample.docx
 
EVOLVING RANSOMWARE ATTACKS ON HEALTHCARE PROVIDERS
EVOLVING RANSOMWARE ATTACKS ON HEALTHCARE PROVIDERSEVOLVING RANSOMWARE ATTACKS ON HEALTHCARE PROVIDERS
EVOLVING RANSOMWARE ATTACKS ON HEALTHCARE PROVIDERS
 
Comparative Study and Analysis of Multiplatform Mobile Application Development
Comparative Study and Analysis of Multiplatform Mobile Application DevelopmentComparative Study and Analysis of Multiplatform Mobile Application Development
Comparative Study and Analysis of Multiplatform Mobile Application Development
 
LOR - Anuj Chauhan
LOR - Anuj ChauhanLOR - Anuj Chauhan
LOR - Anuj Chauhan
 

More from Madeeha Saeed

Abuse Prevention App PPT (Engr. Madeeha Saeed]
Abuse Prevention App PPT (Engr. Madeeha Saeed]Abuse Prevention App PPT (Engr. Madeeha Saeed]
Abuse Prevention App PPT (Engr. Madeeha Saeed]Madeeha Saeed
 
Muslim Women Pioneers All Over The World (Past & Present)
Muslim Women Pioneers All Over The World (Past & Present)Muslim Women Pioneers All Over The World (Past & Present)
Muslim Women Pioneers All Over The World (Past & Present)Madeeha Saeed
 
Greece market environment analysis
Greece market environment analysisGreece market environment analysis
Greece market environment analysisMadeeha Saeed
 
NetSol Inc Report writing example (professional ethics)
NetSol Inc Report writing example (professional ethics)NetSol Inc Report writing example (professional ethics)
NetSol Inc Report writing example (professional ethics)Madeeha Saeed
 
Customer analysis report (intro to marketing)
Customer analysis report (intro to marketing)Customer analysis report (intro to marketing)
Customer analysis report (intro to marketing)Madeeha Saeed
 
Management Functions In Decisions Making
Management Functions In Decisions MakingManagement Functions In Decisions Making
Management Functions In Decisions MakingMadeeha Saeed
 
Pakistan And World From Another Side!
Pakistan And World From Another Side!Pakistan And World From Another Side!
Pakistan And World From Another Side!Madeeha Saeed
 
Renowned maritime patrol aircrafts
Renowned maritime patrol aircraftsRenowned maritime patrol aircrafts
Renowned maritime patrol aircraftsMadeeha Saeed
 
Renowned maritime-patrol-aircrafts
Renowned maritime-patrol-aircraftsRenowned maritime-patrol-aircrafts
Renowned maritime-patrol-aircraftsMadeeha Saeed
 
The Proficient Super Mushak - PAF
The Proficient Super Mushak - PAFThe Proficient Super Mushak - PAF
The Proficient Super Mushak - PAFMadeeha Saeed
 
Pakistan And Its Relations With Central Asia
Pakistan And Its Relations With Central AsiaPakistan And Its Relations With Central Asia
Pakistan And Its Relations With Central AsiaMadeeha Saeed
 

More from Madeeha Saeed (14)

Abuse Prevention App PPT (Engr. Madeeha Saeed]
Abuse Prevention App PPT (Engr. Madeeha Saeed]Abuse Prevention App PPT (Engr. Madeeha Saeed]
Abuse Prevention App PPT (Engr. Madeeha Saeed]
 
Muslim Women Pioneers All Over The World (Past & Present)
Muslim Women Pioneers All Over The World (Past & Present)Muslim Women Pioneers All Over The World (Past & Present)
Muslim Women Pioneers All Over The World (Past & Present)
 
Greece market environment analysis
Greece market environment analysisGreece market environment analysis
Greece market environment analysis
 
NetSol Inc Report writing example (professional ethics)
NetSol Inc Report writing example (professional ethics)NetSol Inc Report writing example (professional ethics)
NetSol Inc Report writing example (professional ethics)
 
Customer analysis report (intro to marketing)
Customer analysis report (intro to marketing)Customer analysis report (intro to marketing)
Customer analysis report (intro to marketing)
 
Management Functions In Decisions Making
Management Functions In Decisions MakingManagement Functions In Decisions Making
Management Functions In Decisions Making
 
Pakistan And World From Another Side!
Pakistan And World From Another Side!Pakistan And World From Another Side!
Pakistan And World From Another Side!
 
Renowned maritime patrol aircrafts
Renowned maritime patrol aircraftsRenowned maritime patrol aircrafts
Renowned maritime patrol aircrafts
 
Renowned maritime-patrol-aircrafts
Renowned maritime-patrol-aircraftsRenowned maritime-patrol-aircrafts
Renowned maritime-patrol-aircrafts
 
Scorpion Recce Jet
Scorpion Recce JetScorpion Recce Jet
Scorpion Recce Jet
 
The Proficient Super Mushak - PAF
The Proficient Super Mushak - PAFThe Proficient Super Mushak - PAF
The Proficient Super Mushak - PAF
 
Essay Structure
Essay StructureEssay Structure
Essay Structure
 
Writing Skills
Writing SkillsWriting Skills
Writing Skills
 
Pakistan And Its Relations With Central Asia
Pakistan And Its Relations With Central AsiaPakistan And Its Relations With Central Asia
Pakistan And Its Relations With Central Asia
 

Recently uploaded

办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样umasea
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...gurkirankumar98700
 
What is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWhat is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWave PLM
 
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxKnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxTier1 app
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureDinusha Kumarasiri
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...MyIntelliSource, Inc.
 
EY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityEY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityNeo4j
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...stazi3110
 
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmSujith Sukumaran
 
Asset Management Software - Infographic
Asset Management Software - InfographicAsset Management Software - Infographic
Asset Management Software - InfographicHr365.us smith
 
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...soniya singh
 
Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software DevelopersVinodh Ram
 
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataAdobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataBradBedford3
 
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideBuilding Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideChristina Lin
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)OPEN KNOWLEDGE GmbH
 
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio, Inc.
 
buds n tech IT solutions
buds n  tech IT                solutionsbuds n  tech IT                solutions
buds n tech IT solutionsmonugehlot87
 
Cloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackCloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackVICTOR MAESTRE RAMIREZ
 
Unit 1.1 Excite Part 1, class 9, cbse...
Unit 1.1 Excite Part 1, class 9, cbse...Unit 1.1 Excite Part 1, class 9, cbse...
Unit 1.1 Excite Part 1, class 9, cbse...aditisharan08
 
What are the features of Vehicle Tracking System?
What are the features of Vehicle Tracking System?What are the features of Vehicle Tracking System?
What are the features of Vehicle Tracking System?Watsoo Telematics
 

Recently uploaded (20)

办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
 
What is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWhat is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need It
 
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxKnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with Azure
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
 
EY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityEY_Graph Database Powered Sustainability
EY_Graph Database Powered Sustainability
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
 
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalm
 
Asset Management Software - Infographic
Asset Management Software - InfographicAsset Management Software - Infographic
Asset Management Software - Infographic
 
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
 
Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software Developers
 
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataAdobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
 
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideBuilding Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)
 
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
 
buds n tech IT solutions
buds n  tech IT                solutionsbuds n  tech IT                solutions
buds n tech IT solutions
 
Cloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackCloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStack
 
Unit 1.1 Excite Part 1, class 9, cbse...
Unit 1.1 Excite Part 1, class 9, cbse...Unit 1.1 Excite Part 1, class 9, cbse...
Unit 1.1 Excite Part 1, class 9, cbse...
 
What are the features of Vehicle Tracking System?
What are the features of Vehicle Tracking System?What are the features of Vehicle Tracking System?
What are the features of Vehicle Tracking System?
 

Abuse Prevention App - Documentation (Engr. Madeeha Saeed)

  • 1. madeehasaeed.sa@gmail.com Abuse Prevention App By Madeeha Saeed (16-Arid-712) Supervised by Dr. Yaser Hafeez UNIVERSITY INSTITUTE OF INFORMATION TECHNOLOGY PMAS ARID AGRICULTURE UNIVERSITY RAWALPINDI 2020
  • 2. I Abuse Prevention App By Madeeha Saeed (16-Arid-712) Supervised by Dr. Yaser Hafeez A PROJECT SUBMITTED IN PARTIAL FULFILLMENT OF THE REQUIREMENTS OF THE DEGREE OF BACHELOR OF SCIENCE IN COMPUTER SCIENCE ENGINEERING (BSCS) UNIVERSITY INSTITUTE OF INFORMATION TECHNOLOGY PMAS ARID AGRICULTURE UNIVERSITY RAWALPINDI 2020
  • 3. II Dedicated to my beloved parents, Teachers, Seniors, and Dr. Yaser Hafeez, for their endless support, affection, trust, and encouragement and to all those, whose prayers always paved the way to success for us. Dr. Yaser Hafeez has been the ideal FYP supervisor. His sage advice, insightful criticisms, and patient encouragement aided the writing of this documentation and project performance in innumerable ways. I would like to thank him for his steadfast support for this project as it was greatly needed and deeply appreciated.
  • 4. III PROJECT IN BRIEF Project Title: Abuse Prevention App Organization: University Institute of Information Technology UIIT Undertaken By: Madeeha Saeed (16-ARID-712) Supervised by: Dr. Yaser Hafeez Date Started: 15th October 2019 Date Completed: 20th JULY 2020 Technology Used: Java Operating System: Windows 10 Pro System Used: Intel Core i7 Laptop, 16 GB RAM, 250 GB NTFS SSD
  • 5. IV ACKNOWLEDGMENT I can't thank enough ALLAH THE ALMIGHTY, who let us complete our project on time while 2020 has been so unkind and abrupt for us in so many ways. It was way too tough for all of us; students & teachers both to stay on the track while in lockdown due to the COVID-19 pandemic. Meanwhile, I are grateful to our parents, seniors, and teachers for all the support, encouragement, guidance, and motivation to complete our project on time, regardless of all the discreteness of the times. I would like to thank our supervisor Dr. Yaser Hafeez, who continuously guided us on zoom classes and discussed with us all the ups & downs of the development, which I had been facing since lockdown has been declared. It would have been impossible for us to keep our FYP Coding journey continued while in lockdown without any stimulus or guidance, but Sir Yaser kept us on the path by giving his guidance 24/7. Last but not the least, I would like to thank all the faculty members of UIIT; especially Dr. Kashif Sattar for his work and help during this hard time, He managed to save our year from getting wasted and given his support to all the final year students who had been stuck elsewhere and was not able to continue their academic activities due to so many reasons. He came up with suitable planning for all the students differently and did not let any student stay behind in the race of development. I just cannot thank enough for his services as a Final Year Project Coordinator and I owe him my whole FYP. Without him, it would not have been possible. Madeeha Saeed (16-ARID-712)
  • 6. V DECLARATION I hereby declare that this project, neither whole nor as a part has been copied out from any source. It is further declared that I have developed this project and accompanied the report entirely based on our efforts. If any part of this project is proved to be copied out from any source or found to be a reproduction of some other. I will stand by the consequences. No portion of the work presented has been submitted of any application for any other degree or qualification of this or any other university or institute of learning. Madeeha Saeed (16-ARID-712)
  • 7. VI CERTIFICATION It is certified that the contents and form of the project entitled “Abuse Prevention App” submitted by Madeeha Saeed (16-ARID-712) has been found satisfactory for the requirements of PMAS – Arid Agriculture University, Rawalpindi For the award of the degree of BACHELOR OF SCIENCE IN COMPUTER SCIENCE ENGINEERING (BSCS) Supervisor: ________________________ Dr. Yaser Hafeez Examiner 1: ________________________ Ms. Sarfaraz Bibi Examiner 2: ________________________ Ms. Irum Rubab Dated: ________________________ Administrator: ________________________ Dr. Yaser Hafeez
  • 8. VII ABSTRACT Women’s security is a critical issue in today’s world and it’s very much needed for every individual to be acting over such an issue. Our App, “Abuse Prevention App” provides Realtime self-defense to the user by giving an option of “Alerts”, which uses in-built GPS & GSM of an android device and sends a distress message with a user’s current location to the 2 contacts selected by a user. Nowadays due to recently happened cases such as rape by drivers or colleagues, burglary, etc., women's security has been compromised. The system uses the Global Positioning System (GPS) technology to find out the location of women & also uses GSM (Global System for Mobile) to access mobile’s inbuilt messenger to send alerts to the prospects with the usage of user’s mobile sim. The prospects will receive a distress message along with user’s (fine) current location; Which will look like this: “I'm in danger. HELP! My location is: http: // maps. google. com /?q=33.7112448,73.0751833”. Then, the user’s location provided by the device can be viewed on Google maps using the Internet or specialized software from an app store i.e. Google Maps/Foursquare. Our app will be the ultimate tool to deal with the problem like women security for women working in night shifts and traveling alone, etc. Keywords: Abuse prevention, Women safety & security, Smartphone, Registered contacts, Database, GPS (Global Positioning System), GSM (Global System for Mobile).
  • 9. 2 TABLE OF CONTENTS ACKNOWLEDGMENT ................................................................................................IV DECLARATION............................................................................................................. V CERTIFICATION ..........................................................................................................VI ABSTRACT...................................................................................................................VII TABLE OF CONTENTS.................................................................................................. 2 LIST OF FIGURES .......................................................................................................... 8 LIST OF TABLES.......................................................................................................... 11 Chapter 1 ...................................................................................................................... 112 INTRODUCTION .......................................................................................................... 12 1.1. PROJECT OVERVIEW........................................................................................... 12 1.2. PROJECT AIM ........................................................................................................ 12 1.3. PROJECT OBJECTIVES ........................................................................................ 12 1.4. PROJECT SCOPE ................................................................................................... 13 1.5. PROBLEM STATEMENT ...................................................................................... 13 1.6. PROPOSED SOLUTION ........................................................................................ 14 1.7. PROPOSED SYSTEM OUTPUT............................................................................ 15 1.8. METHODOLOGY AND SOFTWARE LIFECYCLE FOR THIS PROJECT: ..... 15 1.9. TOOLS AND TECHNOLOGY USE: .................................................................... 16 1.10. DELIVERABLES AND DEVELOPMENT REQUIREMENTS.......................... 17 1.11. CHAPTER SUMMARY........................................................................................ 18 Chapter 2 ........................................................................................................................ 19 REQUIREMENT ANALYSIS....................................................................................... 19 2.1 SOFTWARE REQUIREMENT SPECIFICATION................................................ 19 2.2 FUNCTIONAL REQUIREMENTS ........................................................................ 21
  • 10. 3 2.3 NON-FUNCTIONAL REQUIREMENTS .............................................................. 23 2.3.1 Usability .......................................................................................................... 24 2.3.2 Reliability........................................................................................................ 24 2.3.4 Performance .................................................................................................... 24 2.4 EXTERNAL INTERFACE REQUIREMENTS...................................................... 25 2.4.1 Cloud Database ...................................................................................................... 25 2.5 PERFORMANCE REQUIREMENTS .................................................................... 25 2.5.1 Battery Charging.............................................................................................. 25 2.5.2 Load Time........................................................................................................ 25 2.5.3 Queries Processing........................................................................................... 25 2.6 OPERATING ENVIRONMENT............................................................................. 25 2.6.1 DB Management System: Cloud-based database ............................................ 26 2.6.2 Architecture: Peer-to-peer................................................................................ 26 2.6.3 Operating System: Windows/Android............................................................. 26 2.6.4 Database: Cloud NoSQL.................................................................................. 26 2.6.5 Platform: Java/XML ........................................................................................ 26 Chapter 3 ........................................................................................................................ 27 SOFTWARE DESIGN ................................................................................................... 27 3.1. USE CASES (FULLY DRESSED) ........................................................................ 27 3.1.1 Registration ..................................................................................................... 27 3.1.2 Login ............................................................................................................... 27 3.1.3 Alerts ............................................................................................................... 29 3.1.4 Set GPS On...................................................................................................... 29 3.1.5 Sync Emergency Contacts............................................................................... 30 3.1.6 Profile.............................................................................................................. 31
  • 11. 4 3.1.7 Self-Defense Guide/Awareness....................................................................... 32 3.2. USE CASE DIAGRAM........................................................................................... 33 3.3. CLASS DIAGRAM ................................................................................................. 34 3.4. SEQUENCE DIAGRAMS....................................................................................... 35 3.4.1. Registration .................................................................................................... 35 3.4.2. Alerts .............................................................................................................. 36 3.4.3. Maps............................................................................................................... 37 3.4.4. Self-Defense Guide/Awareness...................................................................... 38 3.4.5. Profile............................................................................................................. 39 3.5. ACTIVITY DIAGRAMS......................................................................................... 40 3.5.1. App Activity................................................................................................... 40 3.5.2. Alerts Activity................................................................................................ 41 3.5.3. Login Activity ................................................................................................ 42 3.6. COMPONENT DIAGRAM..................................................................................... 43 3.7. DEPLOYMENT DIAGRAM................................................................................... 44 3.8. COLABORATION DIAGRAM.............................................................................. 45 3.9 CHAPTER SUMMARY........................................................................................... 45 Chapter 4 ........................................................................................................................ 46 PROJECT MANAGEMENT.......................................................................................... 46 4.1. MILESTONES......................................................................................................... 46 Before Mid-Term ........................................................................................................ 46 4.1.1. Milestone 1..................................................................................................... 46 4.1.2. Milestone 2..................................................................................................... 46 4.1.3. Milestone 3..................................................................................................... 46 After Mid-Term........................................................................................................... 47
  • 12. 5 4.1.4. Milestone 4..................................................................................................... 47 4.1.5. Milestone 5..................................................................................................... 47 4.1.6. Milestone 6..................................................................................................... 47 4.1.7. Milestone 7..................................................................................................... 47 4.1.8. Milestone 8..................................................................................................... 47 4.1.9. Milestone 9..................................................................................................... 48 4.1.10. Milestone 10................................................................................................. 48 4.1.11. Milestone 11................................................................................................. 48 4.2. PROJECT CLOSEOUT REPORT........................................................................... 48 4.3. OPERATION AND MANAGEMENT PLAN ........................................................ 49 4.4. PROJECT RESOURCE........................................................................................... 49 4.5. RISK MANAGEMENT........................................................................................... 51 4.6. RISK ANALYSIS.................................................................................................... 51 4.6.1. RISK IDENTIFICATION................................................................................ 51 4.6.2. RISK RESPONSE ........................................................................................... 52 4.6.3. GRAPHICAL REPRESENTATION OF RISKS ............................................ 54 4.7. CHAPTER SUMMARY.......................................................................................... 54 Chapter 5 ........................................................................................................................ 56 PROJECT IMPLEMENTATION................................................................................... 56 5.1. PROGRAMMING LANGUAGE ............................................................................ 56 5.2. FRAMEWORK........................................................................................................ 56 5.3. SYSTEM REQUIREMENTS.................................................................................. 56 5.3.1. Hardware Requirements................................................................................. 56 5.3.2. Software Requirements .................................................................................. 57 5.4. CHAPTER SUMMARY.......................................................................................... 57
  • 13. 6 Chapter 6 ........................................................................................................................ 58 SOFTWARE TESTING ................................................................................................. 58 6.1. DERIVING TEST.................................................................................................... 58 6.2. TEST ENVIRONMENT.......................................................................................... 58 6.2.1. Software ......................................................................................................... 58 6.2.2. Hardware ........................................................................................................ 58 6.3. TESTING IDENTIFICATION................................................................................ 58 6.4. TEST PROCEDURE ............................................................................................... 59 6.4.1. Unit Testing.................................................................................................... 59 6.4.2. Setting GPS On ............................................................................................... 59 6.4.4. Permitting Mobile’s GSM............................................................................... 59 6.4.5. System Testing ............................................................................................... 59 6.4.6. Integrate Testing............................................................................................. 59 6.4.7. Performance Testing ...................................................................................... 60 6.4.8. Stress Testing ................................................................................................. 60 6.5. TEST CASES........................................................................................................... 60 6.5.1. Test Case 2: Sending Location....................................................................... 61 6.5.2. Test Case 3: GSM Activation......................................................................... 62 6.6. CHAPTER SUMMARY.......................................................................................... 62 Chapter 7 ........................................................................................................................ 63 CONCLUSION AND FUTURE WORK ....................................................................... 63 7.1. DISCUSSION .......................................................................................................... 63 7.2. CONCLUSION........................................................................................................ 63 7.3. FUTURE WORK..................................................................................................... 65 Chapter 8 ........................................................................................................................ 66
  • 14. 7 USER GUIDE................................................................................................................. 66 8.1. APP LAUNCH PAGE 01 ........................................................................................ 66 8.2. SIGNUP SCREEN................................................................................................... 67 8.3. MAIN SCREEN....................................................................................................... 67 8.4. APP LAUNCH PAGE 02 ........................................................................................ 68 8.5. ALERTS................................................................................................................... 68 8.6. PROFILE SCREEN ................................................................................................. 69 8.7. LOGIN SCREEN..................................................................................................... 69 8.8. MAPS SCREEN....................................................................................................... 70 8.9. INTRO SLIDERS SCREENS.................................................................................. 71 8.10. AWARENESS SCREENS..................................................................................... 74 8.11. PERMISSION SCREENS ..................................................................................... 77 LIST OF ABBREVATIONS.......................................................................................... 79 REFERENCES ............................................................................................................... 80
  • 15. 8 LIST OF FIGURES Figure 1.6.1: Block Diagram .......................................................................................... 14 Figure 1.8.1: Agile Development Cycle ......................................................................... 16 Figure 1.10.1: Project Plan ............................................................................................. 17 Figure 2.1.1: Java Structure ............................................................................................ 20 Figure 2.2.1: Cloud NoSQL Database (Firebase)........................................................... 22 Figure 2.2.2: Peer-to-peer Architecture .......................................................................... 23 Figure 2.4.1: Cloud Database ......................................................................................... 25 Figure 3.1.1: Registration Use Case ............................................................................... 27 Figure 3.1.2: Medicine Schedule Use Case .................................................................... 28 Figure 3.1.3: Alerts Use Case ......................................................................................... 29 Figure 3.1.4: Display Information Use Case .................................................................. 30 Figure 3.1.5: Send Alerts Use Case ................................................................................ 31 Figure 3.1.6: Profile Use Case........................................................................................ 31 Figure 3.1.7: Self-Defense Guide/Awareness Use Case................................................. 32 Figure 3.2.1: Use Case Diagram..................................................................................... 33 Figure 3.3.1: Class Diagram ........................................................................................... 34 Figure 3.4.1: Registration’s Sequence Diagram ............................................................. 35 Figure 3.4.2: Alerts Sequence Diagram.......................................................................... 36 Figure 3.4.3: Maps Sequence Diagram........................................................................... 37 Figure 3.4.4: Self-Defense Guide/Awareness Sequence Diagram ................................. 38 Figure 3.4.5: Profile Sequence Diagram......................................................................... 39 Figure 3.5.1: App’s Activity Diagram............................................................................ 40 Figure 3.5.2: Alerts Activity Diagram............................................................................ 41
  • 16. 9 Figure 3.5.3: Login Activity Diagram ............................................................................ 42 Figure 3.6.1: Component Diagram ................................................................................. 43 Figure 3.7.1: Deployment Diagram ................................................................................ 44 Figure 3.8.1: Collaboration Diagram.............................................................................. 45 Figure 4.4.1: Project Resources ...................................................................................... 49 Figure 4.6.3: Risk Response Graphs............................................................................... 54 Figure 5.3.2: Software Requirements ............................................................................. 57 Figure 8.1.1: App Launch 01 UI..................................................................................... 66 Figure 8.2.1: Signup UI .................................................................................................. 67 Figure 8.3.1: Home Screen UI........................................................................................ 67 Figure 8.4.1: Launch Page 02 UI.................................................................................... 68 Figure 8.5.1: Alerts UI.................................................................................................... 68 Figure 8.6.1: Profile UI................................................................................................... 69 Figure 8.7.1: Login UI .................................................................................................... 69 Figure 8.8.1: Maps UI..................................................................................................... 70 Figure 8.9.1: Slider 01 UI ............................................................................................... 71 Figure 8.9.2: Slider 02 UI ............................................................................................... 71 Figure 8.9.3: Slider 03 UI ............................................................................................... 72 Figure 8.9.4: Slider 04 UI ............................................................................................... 72 Figure 8.9.5: Slider 05 UI ............................................................................................... 73 Figure 8.9.6: Slider 06 UI ............................................................................................... 73 Figure 8.10.1: 01 UI........................................................................................................ 74 Figure 8.10.2: 02 UI........................................................................................................ 74 Figure 8.10.3: 03 UI........................................................................................................ 75 Figure 8.10.4: 04 UI........................................................................................................ 75
  • 17. 10 Figure 8.10.5: 05 UI........................................................................................................ 76 Figure 8.10.6: 06 UI........................................................................................................ 76 Figure 8.10.7: 07 UI........................................................................................................ 77 Figure 8.11.1: GSM UI................................................................................................... 77 Figure 8.11.2: GPS UI .................................................................................................... 78
  • 18. 11 LIST OF TABLES Table 4.2.1: Deliverables Plan........................................................................................ 48 Table 4.4.1: Table of Project Responsibilities................................................................ 50 Table 4.6.1: Risk Identification Table ............................................................................ 51 Table 4.6.2: Risk Response Table .................................................................................. 52 Table 5.3.1: Hardware Requirements ............................................................................. 56 Table 6.5.1: Sending Alert Test Case ............................................................................. 60 Table 6.5.2: Sending Location Test Case ....................................................................... 61 Table 6.5.3: GSM Activation Test Case......................................................................... 62
  • 19. 12 Chapter 1 INTRODUCTION 1.1. PROJECT OVERVIEW Women’s security is a critical issue in today’s world and it’s very much needed for every individual to be acting over such an issue. Our App, “Abuse Prevention App” provides Realtime self-defense to the user by giving an option of “Alerts”, which uses in-built GPS & GSM of an android device and sends a distress message with a user’s current location to the 2 contacts selected by a user. Nowadays due to recently happened cases such as rape by drivers or colleagues, burglary, etc., women's security has been compromised. The system uses the Global Positioning System (GPS) technology to find out the location of women. Then, the user’s location provided by the device can be viewed on Google maps using the Internet or specialized software from an app store. Our app will be the ultimate tool to deal with the problem like women security for women working in night shifts and traveling alone, etc. 1.2. PROJECT AIM Our primary goal is to ensure every woman in our society to feel safe and secured. The core aim is to provide safety to women from sexual abuse and crime by using Information technology. The project idea is to have a software/Information technology layer between women and her circle. User does require to have a Smart Phone having GPS and 2G/3G internet and a mobile sim (GSM). 1.3. PROJECT OBJECTIVES The project's objectives are as follows: • To make an alert system for Women safety detection. • To make a system that provides realizable and efficient processing. • To make an app where users should not need external hardware or software to use this application.
  • 20. 13 1.4. PROJECT SCOPE The system comprises of 2 major modules as follows: 1.4.1. Admin Module: • Add Personal Details • Add Instructions • View Registered Users • Add Geo Map Via GPS/GSM 1.4.2 User Module: • Register (With Details like Username, Phone-Numbers (Emergency Contacts) and Email ID, etc.) • Sign Up • Sign In • View Instructions • Add 2-3 Mobile Numbers (Emergency Contacts) of Close Relatives/Friends/Family Members 1.4.3 Send Immediate Distress Message Via App: SMS will be sent to chosen associates with the User’s locality. 1.4.4 Awareness: Here users can learn Realtime self-defense techniques in a short time. 1.4.5 User-Profile: The option where the user can view her username & Emergency contacts, edit/update it, and can see other account details. 1.4.6 Sign Out: Signs the user out of the system. 1.5. PROBLEM STATEMENT Currently, few systems provide the functionality of Abuse prevention but these systems have many issues, which prevent them from being ideal apps for users. There is no proper fully automated mobile application that is user-friendly up to the level that a layman user can operate it without having any prior knowledge. The process of sending alert to selected associates is either too slow or gives errors on different operating systems. Secondly, they don’t aware users about how they should deal with security invasion, or how they can reduce the probability of abuse. Such a security alert systems for females are in lag due to buggy coding and imprecise algorithms.
  • 21. 14 1.6. PROPOSED SOLUTION Instead of the internet, GPS tracking systems have been used for tracking one’s locations and GSM technology has been used for sending security alerts. It is simple and easy to use and equipped with various functionalities. The app is built to intimidate the instant location and a distress message to 2 to 3 family members or close friends and the pre-set numbers, so that unfortunate incident can be averted and to provide real-time evidence for the action against the perpetrators of crime against women. Later on, as the technology emerges, it is possible to upgrade the system and can be made adaptable to the desired environment because it is based on object-oriented design, any further changes can be easily adaptable. Based on future security issues, security can be improved using emerging technologies e.g. a microcontroller, sensor, fiber optics, etc. Moreover, the application will be made easier to use for all the women and have been made in a normal budget. This application would be free for the user or won’t be inexpensive, anyway. Figure 1.6.1: Block Diagram
  • 22. 15 1.7.PROPOSED SYSTEM COMPONENTS The proposed system components are: • A web-based database named “Firebase” • An in-built message app • GSM Based technology; Mobile Phone Sim • Admin Module • User Registration on Smart Phone • Google Maps • User Authentication 1.8. PROPOSED SYSTEM OUTPUT The user will use the “Alert” option to send a distress message & current location link to the 3 selected associates and the sent message can be seen in the in-built message app of the user’s phone. Rest, profile, current location, and self-defense guide can be seen on the android app’s “HOME” page. 1.9. METHODOLOGY AND SOFTWARE LIFECYCLE FOR THIS PROJECT: We have used agile methodology for the development of our project as our requirements were constantly changing. The agile model helped us to change our requirement specifications easily as per need. Our project was developed in incremental, rapid cycles and we had a weekly meeting with our supervisor and in each meeting, changes were discussed and new features were added or removed based on the supervisor’s opinion.
  • 23. 16 Figure 1.9.1: Agile Development Cycle 1.10. TOOLS AND TECHNOLOGY USE: i) Java ii) Android Studio
  • 24. 17 1.11. DELIVERABLES AND DEVELOPMENT REQUIREMENTS The project plan comprises of following steps. Figure 1.11.1: Project Plan 1.11.1. PROJECT BACKGROUND/ LITERATURE REVIEW The idea came from women's safety as a whole. The basic approach is to intimidate the instant location and a distress message to 2 to 3 family members or close friends and the pre-set numbers, so that unfortunate incident can be averted and to provide real-time evidence for the action against the perpetrators of crime against women. The user has to register herself and allow GPS to use her location and click on the “Alert” button to send a distress message along with location to her selected associates. Every day, women are assaulted, molested, and violated on the streets of their cities. Violence against women happens all over the world, particularly in developing countries like Pakistan. This violence can take many forms: physical, sexual, or psychological. Physical assault on women involves the use of force to injure or endanger them. So, the aim of this project, therefore, is to effectively build a strong platform for women empowerment in our society. We endeavored to achieve this by creating a mobile application that:
  • 25. 18 • Has a straightforward user interface for speedy use • Ensures the alert message is sent to the trusted people • Allows the user to activate said alert discreetly • Monitors locations where crises are taking place and reports the same to the trusted people (who in turn notify the user’s emergency contacts) Beforehand, many women safety apps have been built all over the world including Eyewatch SOS for Women, Shake2Safety, Trakie, My SafetyPin, Circle Of 6, etc. 1.12. CHAPTER SUMMARY The whole chapter describes the basic functionality and literature review of the project. This whole project is based on women's safety and security. Where women can use this app to save themselves from any unwanted security invasion on time. The entire discussion is about the issue of the present-day and past day about abuse prevention against women.
  • 26. 19 Chapter 2 REQUIREMENT ANALYSIS The specifications are used to specify the requirements for the initial implementation of the system and update the system in the future. The software requirement specification bridges the gap between client/user and the system developer. This is the document that describes the user needs accurately. 2.1 SOFTWARE REQUIREMENT SPECIFICATION This system compromises an Android Operating System, using Java has a core language, with Android SDK has its latest version, Implementation of the Front end is done by XML and we have used Firebase i.e. Cloud NoSQL Database for storing user data, the documentation of this system is done using MS-Office 2019. Let’s pin them in number bullets: 2.1.1 Android Studio Android studio for application development. This software is an essential requirement for developing the Android application. Android is an operating system based on Linux with a Java programming interface. The Android Software Development Kit (Android SDK) provides all the necessary tools to develop Android applications. This includes a compiler, debugger, and a device emulator, as well as its virtual machine to run Android programs. Android is primarily developed by Google. Android allows background processing, provides a rich user interface library, supports 2-D and 3-D graphics using the OpenGL libraries, access to the file system, and provides an embedded SQLite database. The android application consists of different components and can re-use components of other applications. This leads to the concept of a task in Android; an application can be reused by other Android components to archive a task. 2.1.2 Java Development Kit (JDK) 8.2 Java Development Kit (JDK); A Java platform is the software environment in which a program runs. The Java platform differs from most other platforms in that it's a software-only platform that runs on top of other, hardware-based platforms.
  • 27. 20 Most other platforms are described as a combination of hardware and operating system. The Java platform has two components: The Java Virtual Machine (Java VM) and The Java Application Programming Interface (Java API) Java VM is the base for the Java platform and is ported onto various hardware-based platforms. The Java API is a large collection of ready-made software components that provide many useful capabilities, such as graphical user interface (GUI) widgets. The Java API is grouped into libraries (packages) of related components. The following figure of Java Structure depicts a Java program, such as an application or applet, that's running on the Java platform. As the figure shows, the Java API and Virtual Machine insulate the Java program from hardware dependencies. As a platform-independent environment, Java can be a bit slower than native code. However, smart compilers, well-tuned interpreters, and just-in-time byte code compilers can bring Java's performance close to that of native code without threatening portability. Figure 2.1.1: Java Structure 2.1.3 XML for Frontend Java Program Java API Java Virtual Machine Hardware
  • 28. 21 Implementation of the Front end is done by XML. Extensible Markup Language (XML) is used to describe data. The XML standard is a flexible way to create information formats and electronically share structured data via the public Internet, as well as via corporate networks. 2.1.4 Firebase for Backend The Firebase Realtime Database is cloud-hosted. Data is stored as JSON and synchronized in real-time to every connected client. It does store and sync data with the NoSQL cloud database. Data is synced across all clients in Realtime and remains available even if the app goes offline. 2.1.5 Media Support Media support for common audio, video, and still image formats (MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, and GIF). 2.1.6 MS Office The documentation of this system will be done using MS-Office. 2.1.7 Edraw Max V9.4 This is used for making UML diagrams. 2.2 FUNCTIONAL REQUIREMENTS The project's functional requirements would be as follows. 2.2.1 Register User The system shall allow the user to register using a unique user id and password. The system shall provide the facility of adding personal information. On the registration page, a user will be able to enter the user details; this would contain details such as Name of the user, email address of the user, and password. These details are saved by clicking on the save button. It has been designed by keeping all the constraints in mind like the username should not contain special characters and should only be written in English alphabets, and the email-id is set using a standard email-id format, if a user enters some wrong format or misses @ or .com then it flashes an error.
  • 29. 22 2.2.2 Alerts The system shall send alerts to family and friends in case of an emergency. 2.2.3 Self Defense Technique/Awareness The system shall provide some self-defense techniques to women for future harassment problem management and also can apply them on spot. 2.2.4 GPS Tracking System The system should provide the facility of a location tracking system. Immediately send the location of the victim to the family members or friends. The GPS information (GPS information can be in the form of the Co-ordinates or the URL which leads to the location of the person any stock map application in the likes of third-party application like Google, Nokia, etc.) to the registered contacts at danger times or when the person is needed to be rescued. This step is followed only when the alert button is pressed in an application. The whole process of this step is done only when the device is connected to the proper mobile network, GSM Technology i.e. usage of installed sim and location service in the device is switched on (GPS). 2.2.5 Cloud NoSQL Database A “cloud database” is a NoSQL database installed and running on a cloud virtual machine (be it public cloud, private cloud, or hybrid cloud platforms), or a cloud provider's fully managed database-as-a-service (DBaaS) offering. Figure 2.2.1: Cloud NoSQL Database (Firebase)
  • 30. 23 2.2.6 Peer-To-Peer Architecture The app will be using P2P Architecture. In a peer-to-peer architecture the nodes self-configure into an integrated network using distributed control, and the connection between any two nodes in the network consists of one or more peer-to- peer communication links. Wi-Fi Direct allows two devices to establish a direct, peer-to-peer Wi-Fi connection without requiring a wireless router. Wi-Fi becomes a way of communicating wirelessly, like Bluetooth. Wi-Fi Direct is similar in concept to “ad-hoc” Wi-Fi mode. The Wi-Fi peer-to-peer (P2P) APIs allow applications to connect to nearby devices without needing to connect to a network or hotspot. Figure 2.2.2: Peer-to-peer Architecture 2.3 NON-FUNCTIONAL REQUIREMENTS Nonfunctional requirements are the functions offered by the system. It includes time constraints and constraints on the development process and standards. The non-functional requirements are as follows:
  • 31. 24 2.3.1 Usability Our project is quite usable and implementable in every kind of environment. It has a simple user interface and easily understandable for the common user. 2.3.2 Reliability Our project is reliable for every type of user and it will require an android device. The project will be calibrated with a standard device to make the tracking system reliable. 2.3.3 Integrity Only the system developer has the right to make any changes to the system. 2.3.4 Performance The efficiency of any system is concerned with the minimum processing time as well as the optimal use of the system resources is designing the proposed system. The efficiency factor has been taken well into consideration. 2.3.5 Speed The system should process the given input into output within an appropriate time. 2.3.6 Ease of use The software should be user friendly. Then the customers can use it easily, so it doesn’t require much training time. 2.3.7 Reliability The rate of failures should be less then only the system is more reliable. 2.3.8 Portability It would be easy to implement in any system because we are using an object- oriented approach.
  • 32. 25 2.4 EXTERNAL INTERFACE REQUIREMENTS 2.4.1 Cloud Database We have used a cloud database, a database that typically runs on a cloud computing platform, and access to the database is provided as-a-service. Database services take care of scalability and high availability of the database. app. Figure 2.4.1: Cloud Database 2.5 PERFORMANCE REQUIREMENTS 2.5.1 Battery Charging The project performance requires a battery charging after a specific time to make the device alive. 2.5.2 Load Time The load time for user interface screens shall take no longer than five seconds. 2.5.3 Queries Processing Queries shall return results within five seconds. 2.6 OPERATING ENVIRONMENT Operating environment for the Abuse Prevention App is as listed below:
  • 33. 26 2.6.1 DB Management System: Cloud-based database 2.6.2 Architecture: Peer-to-peer 2.6.3 Operating System: Windows/Android 2.6.4 Database: Cloud NoSQL 2.6.5 Platform: Java/XML 2.7 CHAPTER SUMMARY The problem of the women safety is increased rapidly in this environment, so we have made an effective Android application to prevent such type of suspicious or natural disaster, by alerting the concerned authorities using the android mobile phone, which helps to stop such type of illegal activates and to trace the concern. In this chapter, we came to know about the performance, efficiency, and accuracy of the project that either project is fast, efficient, and useful in saving the suspect from the security breach, harassment, invasion in personal space, and women safety. Features like GPS/GSM will be used to improve the efficiency and performance of this system and the whole output of the system will be good. For future enhancements, this mobile application can be helpful in future when any problem arises in traveling or any kind of situations, e.g. as the technology emerges, it is possible to upgrade the system and can be adaptable to the desired environment because it is based on object-oriented design, any further changes can be easily adaptable. Plus, it is based on future security issues, security can be improved using emerging technologies.
  • 34. 27 Chapter 3 SOFTWARE DESIGN 3.1. USE CASES (FULLY DRESSED) 3.1.1 Registration Actor: User Pre-condition: The application is running. Postcondition: A user account is created. Use case: Figure 3.1.1: Registration Use Case Description: Users will create an account. 3.1.2 Login Actor: User Pre-condition: The app is running.
  • 35. 28 Postcondition: User has been logged in Use case: Figure 3.1.2: Medicine Schedule Use Case Description: After the user account is created user can log in through the app.
  • 36. 29 3.1.3 Alerts Actor: User Pre-condition: The app is running. Postcondition: The user clicked on the “Alerts” button. Use case: Figure 3.1.3: Alerts Use Case Description: Alerts will be constituted of “Distress Message & Location Link” of the user, would be sent to selected associates. 3.1.4 Set GPS On Actor: User, GPS Tracker Pre-condition: The app is running. Postcondition:
  • 37. 30 The app will ask for permissions regarding “Allow your GPS” from the user and the user has to allow to let the app do its work later on. It will only be asked for the first time when the user will install an app and runs it. Use case: Figure 3.1.4: Display Information Use Case Description: The app will send location links to selected associates upon user’s click on the “Alert” button. 3.1.5 Sync Emergency Contacts Actor: User, Phone Book Pre-condition: The application is running. Postcondition: The App will ask for permission to access contacts from the phone book.
  • 38. 31 Use case: Figure 3.1.5: Send Alerts Use Case 3.1.6 Profile Actor: User Pre-condition: The application is running. Postcondition: User view or edit profile and can sign out as well. Use case: Figure 3.1.6: Profile Use Case
  • 39. 32 3.1.7 Self-Defense Guide/Awareness Actor: User Pre-condition: The application is running. Postcondition: Users can learn self-defense techniques about how to tackle abuse. Use case: Figure 3.1.7: Self-Defense Guide/Awareness Use Case
  • 40. 33 3.2. USE CASE DIAGRAM A use case diagram captures the actors and the role or functions they perform in the system. There are three actors which include; User, GPS Tracker, and User’s Phone Book. Figure 3.2.1: Use Case Diagram
  • 41. 34 3.3. CLASS DIAGRAM Figure 3.3.1: Class Diagram
  • 42. 35 3.4. SEQUENCE DIAGRAMS ● The sequence diagram is one kind of interaction diagrams, which shows interaction among a set of objects and their relationships. ● There may be multiple sequence diagrams per use case, one per use case scenario. 3.4.1. Registration Figure 3.4.1: Registration’s Sequence Diagram
  • 43. 36 3.4.2. Alerts Figure 3.4.2: Alerts Sequence Diagram
  • 44. 37 3.4.3. Maps Figure 3.4.3: Maps Sequence Diagram
  • 45. 38 3.4.4. Self-Defense Guide/Awareness Figure 3.4.4: Self-Defense Guide/Awareness Sequence Diagram
  • 46. 39 3.4.5. Profile Figure 3.4.5: Profile Sequence Diagram
  • 47. 40 3.5. ACTIVITY DIAGRAMS 3.5.1. App Activity Figure 3.5.1: App’s Activity Diagram
  • 48. 41 3.5.2. Alerts Activity Figure 3.5.2: Alerts Activity Diagram
  • 49. 42 3.5.3. Login Activity Figure 3.5.3: Login Activity Diagram
  • 50. 43 3.6. COMPONENT DIAGRAM Component diagrams are different in terms of nature and behavior. Component diagrams are used to model the physical aspects of a system. Figure 3.6.1: Component Diagram
  • 51. 44 3.7. DEPLOYMENT DIAGRAM Figure 3.7.1: Deployment Diagram
  • 52. 45 3.8. COLABORATION DIAGRAM Figure 3.8.1: Collaboration Diagram 3.9 CHAPTER SUMMARY In this chapter detailed description of project requirements related to its working. Here we define the all working component that we use in this project and diagrams description which specifies how the project is working. Each diagram defines each working unit of the project.
  • 53. 46 Chapter 4 PROJECT MANAGEMENT Project management is the practice of initiating, planning, executing, controlling, and closing the work of a team to achieve specific goals and meet specific success criteria at the specified time. The primary challenge of project management is to achieve all of the project goals within the given constraints. 4.1. MILESTONES Milestones are tools used in project management to mark specific points along a project timeline. These points may signal anchors such as a project start and end date, or a need for external review or input and budget checks. In many instances, milestones do not impact project duration. In other words, it is a management tool that is used to delineate a point in a project schedule. Before Mid-Term 4.1.1. Milestone 1 ● Proposal discussion with faculty: Proposal discussed with faculty about its scope and how the development will go. ● Approval of proposal: The proposal was submitted for approval. 4.1.2. Milestone 2 ● Functional requirements: This is the phase where we’ve identified all the functional requirements of our project. ● Non-functional requirements: Non-functional requirements of the project are identified and documented. 4.1.3. Milestone 3 ● Use case diagram: Use case diagram of the project was developed. ● Fully dressed use cases: Fully dressed use cases were documented. ● Submitted for review: Use case diagram was submitted to the supervisor for review.
  • 54. 47 ● Approval of use case diagram and fully dressed use cases. After Mid-Term 4.1.4. Milestone 4 ● Development of class diagram. ● Sequence diagrams were prepared and documented. ● Collaboration diagrams were prepared and documented ● Activity diagrams were prepared and documented. ● The components diagram was prepared. ● The deployment diagram was prepared. ● All diagrams were submitted to the supervisor for review. 4.1.5. Milestone 5 ● The project interface was developed and submitted for review. ● Registration form: GUI was prepared and submitted for approval. 4.1.6. Milestone 6 ● Database connection establishment ● Firebase; Cloud NoSQL based Database creation ● Testing of database connection 4.1.7. Milestone 7 ● Connection of registration form with a database. ● Testing of the registration form. 4.1.8. Milestone 8 ● Development of Abuse Prevention App. ● Coding Done. ● Testing of Abuse Prevention App.
  • 55. 48 4.1.9. Milestone 9 ● Development of admin module. ● Development of all user interfaces. ● Testing of interfaces. 4.1.10. Milestone 10 ● Development of Registration module. ● Development of the Login module. ● Development of the “Alerts” module. ● Development of Self-Defense Guide/Awareness module. ● Development of Current Location/Maps module. ● Development of GPS Permission Management module. 4.1.11. Milestone 11 ● Complete testing of a project 4.2. PROJECT CLOSEOUT REPORT All the project deliverables are listed below with the date. Table 4.2.1: Deliverables Plan Deliverable Date Proposal October 15, 2019 Requirements Specification November 07, 2019 Design January 1, 2020 Development May 28, 2020 Testing June 10, 2020 Debugging June 15, 2020
  • 56. 49 Code Review June 25, 2020 Documentation July 15, 2020 4.3. OPERATION AND MANAGEMENT PLAN In this part of the project, the operations are tested whether they are fulfilling the fixed objectives or not. The system can perform multiple operations with the good response time. The maintenance services of the system include: - ● The database should be available 24/7. ● User privacy ensures. ● User Private data security. ● No Third-party app interference. ● A backup of data should be available. ● The system should be secure. ● Application Enhancements & Performance Enhancements. ● Post-release Support, Operational, and Helpdesk Support. ● Corrective maintenance and bug fixation. ● The facility of real-time communication. 4.4. PROJECT RESOURCE Figure 4.4.1: Project Resources Resources (name the resource used) Person or organization who received resource Project Team UIIT Madeeha Saeed __
  • 57. 50 Equipment Laptop Group Android Phone __ Software Tools UIIT Android Software Development Kit (SDK) and Android Studio __ Cloud NoSQL Database (Firebase) Android Operating System Windows 10 Pro MS Office 2016 Hardware UIIT Absent __ Table 4.4.1: Table of Project Responsibilities Division of responsibilities Individual Responsibility Madeeha Saeed Requirement Analysis, UMLs, UI Designing & XML, Full- Documentation, All Modules Coding, Testing, Software Development
  • 58. 51 4.5. RISK MANAGEMENT Risk Management is all about managing the risks that can probably occur in the project. The existence of risks in any project is normal but how they are controlled is more important. They must be handled efficiently to increase the worth of the project. All the possible situations should be kept in mind because the knowledge level of every user could be dissimilar. If the risk is not handled correctly it might happen very intolerable to the user, so this is a very significant phase of the project. Risk Management is about: ● Identifying and accessing the key risk. ● Designing and implementing the process by which that risk can be minimized. 4.6. RISK ANALYSIS ● Internet & GPS connection fails. ● Android App not working failure chances. ● Application may not detect 100% gesture/emergency trigger. ● Fail to send the distress message to 2 to 3 relatives. ● The caretaker’s phone fails to send GPS location. ● The application may send multiple distress messages without user input. ● Possibility of battery damage. 4.6.1 RISK IDENTIFICATION Table 4.6.1: Risk Identification Table #No. Name Probability of Occurrence Severity level Description 1. Internet Connection Fails Low High App’s functionality nullifies/ Internet & GPS connection fails.
  • 59. 52 2. Android App Not Working Low High System Crash/ Android App not working failure chances. 3. Gesture/Emergency Trigger Moderate High Application may not detect 100% gesture/emergency trigger. 4. Distress Message Moderate High Fail to send the distress message to 2 to 3 relatives. 5. GPS/GSM Low High The caretaker’s phone fails to send GPS location. 6. Messages Without Input Low Low An application may send multiple distress messages without user input. 7. Battery Low Low Possibility of battery damage. 4.6.2. RISK RESPONSE Table 4.6.2: Risk Response Table
  • 60. 53 Priority #No. Name Responsible Person/Source Risk Mitigation Action Response High 1. Internet Connection Fails Internet Itself User’s Mobile Data Initiation It will be ensured that before using the app or if the user has an intention to use the app, then internet availability is a must-have. High 2. Android App Not Working Software Software Testing The bugs will be fixed out in the testing period to ensure no software crash in future. 3. Gesture/Emergency Trigger Algorithm - - High 4. Distress Message Software Software Testing The bugs will be fixed out in the testing period; ensures no software crashes in the future.
  • 61. 54 High 5. GPS/GSM Internet Mobile Data Re- establishing Internet connection. 6. Messages without input Algorithm - - 7. Battery User/Device - - 4.6.3. GRAPHICAL REPRESENTATION OF RISKS Figure 4.6.1: Risk Response Graphs 4.7. CHAPTER SUMMARY In this chapter, first, we assigned a milestone to our project per our project analysis. We also provided a very short description of each milestone of our project from requirement gathering to the project testing phase. After assigning milestones to our project, we prepared a project closeout report, in the short deliverables of our project. We provided each deliverable of our project with the time to be delivered. Then, we covered the operation and the management plan phase. In this phase, we described how our project can be managed to perform well and how to detect errors and maintain them for future purposes. Also, we described the proper functioning of the project. After this, we describe
  • 62. 55 the important resources which are used in our project and which can affect these resources. We covered almost all the important resources that we are going to integrate. In the second phase of this chapter, we described risk management, how it is important to each project, and how we can handle all the risk which can occur in our project. So, to do this, first, we analyzed the risks which may occur in our project. We described each risk factor that may occur after doing risk analysis. After this, we described the risk response factor in our project which tells about the risk information.
  • 63. 56 Chapter 5 PROJECT IMPLEMENTATION 5.1. PROGRAMMING LANGUAGE We are using Java as a programming language in android studio to do all the necessary tasks and operations that are required to achieve the proposed solution of our project. We have used Android version 3.6.3 and API level 29 to develop our application. 5.2. FRAMEWORK ● Android Studio 3.6.3 It is used to develop an android application. ● Java Development Kit (JDK) It is used as a Java Platform. ● Microsoft Office 2016 This is used for making documentation of this project. ● Edraw Max V9.4 This is used for making UML diagrams. 5.3. SYSTEM REQUIREMENTS 5.3.1. Hardware Requirements Table 5.3.1: Hardware Requirements Criterion Description OS version Windows 7 or later RAM 3 GB RAM minimum, 4 GB RAM recommended Disk Space 500 MB disk space
  • 64. 57 Space for Android SDK At least 1 GB for Android SDK, emulator system images, and caches JDK Version Java Development Kit (JDK) 7 or higher 5.3.2. Software Requirements Figure 5.3.1: Software Requirements Language XML, Java Platform Android Studio Tools Edraw Max Android studio Java Development Kit (JDK) 5.4. CHAPTER SUMMARY This chapter captures the design architecture of the project, the language, and other different tools used to develop this project. It describes the functionality of the framework which we are using in this project. Also, it describes the hardware and software requirements of the project along with their working.
  • 65. 58 Chapter 6 SOFTWARE TESTING 6.1. DERIVING TEST After completion of each phase, verification was done. To verify the requirements the completed phase was fully tested. Against the requirement, all the units were found to be completely satisfactory. As the system should be verified at each stage of the software process using documents produced during the previous stage. Therefore, we started verification with the requirements reviews and continued through design and code review for product testing. This is an activity to verify whether we have built the system right or not in the development life cycle. 6.2. TEST ENVIRONMENT The following elements are required to support the overall testing effort at all levels. 6.2.1. Software ● Window 10 Pro ● Android studio ● Microsoft word 2019 ● Edraw Max V9.4 6.2.2. Hardware ● Android Device (8.0 and above) 6.3. TESTING IDENTIFICATION Specific testing is a plan for every test level to test all system components. The procedure is designed in detail so that the system meets all user requirements. The system can be divided into the following modules: ● Connectivity of device with a mobile phone. ● Connectivity of Victim phone with the family phone. ● Sending Alerts to the selected associates. ● Setting Mobile GPS On.
  • 66. 59 ● Permitting Mobile’s Sim to send messages via GSM. 6.4. TEST PROCEDURE The following testing procedures are done. 6.4.1. Unit Testing The goal of unit testing is to separate each part of the program and show that the individual parts are correct. Unit testing provides a strict, written contract the piece of code must satisfy. As a result, it affords several benefits. Unit testing allows the programmer to refactor code at a later date, and make sure the module still works correctly. This encourages the programmer to make changes to the code. Unit testing will be done for the following units: 6.4.2. Setting GPS On Testing the GPS on so that application can send a location to selected associates and also updates the current location of the user. 6.4.3. Sending Alerts Testing that Alerts have been sent to selected associates. 6.4.4. Permitting Mobile’s GSM Testing that mobile’s sim is permitted by the user to access the message app and distress messages. 6.4.5. System Testing System testing involves the set of tests that the entire system performs according to specification. 6.4.6. Integrate Testing Integration testing is the phase in software testing in which individual software modules are combined and tested as a group. It occurs after unit testing and before system testing. The test conducted to ensure that the components are integrated to perform together. ● Integration of GPS and testing the interface functionality.
  • 67. 60 ● Integrate whether Alerts have been sent to selected associates ● Integrate whether the that mobile’s sim is permitted by the user to access the messaging app and send distress messages. ● Integrate application show sent messages in the app and delivery status is shown. 6.4.7. Performance Testing Performance testing can be applied to understand the application’s scalability. 6.4.8. Stress Testing A system is evaluated under normal conditions in all previous testing techniques, and so conditions where can fail tested. Stress testing evaluates the system under abnormal conditions. 6.5. TEST CASES Table 6.5.1: Sending Alert Test Case Tested By: Madeeha Saeed Test Type: Unit Testing Test Case Number: Test1 Test Case Name: Sending Alert Actual Result Pass Test Case Description: This test verifies that the application is successfully sent alert to family/friends’ phone Items To Be Tested 1. Sending Alerts to the selected associates. Specifications Input Expected Output/Result
  • 68. 61 1. Clicking “Alerts” Button 1. Alert sent to emergency contacts in case of harassment or abuse. 6.5.1. Test Case 2: Sending Location Table 6.5.2: Sending Location Test Case Tested By: Madeeha Saeed Test Type: Unit Testing Test Case Number: Test2 Test Case Name: Sending Location Actual Result Pass Test Case Description: This test verifies that the application is successfully sent a Location Link to emergency contacts. Items To Be Tested 1. Sending location to emergency contacts. Specifications Input Expected Output/Result 1. Setting Mobile GPS On by Tapping On “Allow” Pop UP 1. GPS Set On & Current Location Can Be Shown on Maps. 2. Clicking “Alerts” Button 2. Alert sent to emergency contacts in case of harassment or abuse.
  • 69. 62 6.5.2. Test Case 3: GSM Activation Table 6.5.3: GSM Activation Test Case Tested By: Madeeha Saeed Test Type: Unit Testing Test Case Number: Test3 Test Case Name: GSM Activation Actual Result Pass Test Case Description: This test verifies that GSM Has access to the application and messages can be send using mobile’s sim. Specifications Input Expected Output/Result 1. Clicking the “Alerts” button. 1. Alert sent to emergency contacts in case of harassment or abuse and sent messages can be seen in the mobile’s messages app. 6.6. CHAPTER SUMMARY This chapter is about testing the different phases of the project. We have tested our app by using different testing processes like Unit testing, Integrated testing, System testing, etc.
  • 70. 63 Chapter 7 CONCLUSION AND FUTURE WORK 7.1. DISCUSSION The idea came from women's safety as a whole. The basic approach is to intimidate the instant location and a distress message to 2 to 3 family members or close friends and the pre-set numbers, so that unfortunate incident can be averted and to provide real-time evidence for the action against the perpetrators of crime against women. The user has to register herself and allow GPS to use her location and click on the “Alert” button to send a distress message along with location to her selected associates. Every day, women are assaulted, molested, and violated on the streets of their cities. Violence against women happens all over the world, particularly in developing countries like Pakistan. This violence can take many forms: physical, sexual, or psychological. Physical assault on women involves the use of force to injure or endanger them. So, the aim of this project, therefore, is to effectively build a strong platform for women empowerment in our society. Beforehand, many women safety apps have been built all over the world including Eyewatch SOS for Women, Shake2Safety, Trakie, My SafetyPin, Circle Of 6, etc. 7.2. CONCLUSION Before starting development, we have planned the abstract about how our app should look alike. We opted to follow the agile model for the app's development. Right after, our proposal had been accepted, we started working on XMLs and made them in three phases; in first phases, we asked our supervisor to rate them and after that, we changed them according to our aesthetics, keeping in mind it is about women's safety, so we kept making interface according to feminine themes, so the ideas should be glimpsed on the first look. Later on, during the coding phase, we changed XMLs bit more to sync them up with the android OS. We used broadcast receiver coding for sending messages along with GSM technology, GPS to track location using Foursquare Google Maps API, and Firebase i.e. Cloud-based
  • 71. 64 NoSQL database to maintain user data. Our app will give Realtime functioning including, an awareness which shows self-defense guide to the user to learn self-defense on the spot, Alert option to send distress messages along with location link to the selected associates/emergency contacts, shows updated current location of the user while user using the app and also give a user-profile show to the user as well. Firstly, the user has to register herself and then should log in. After login, the user will be asked to give permissions regarding access to Mobile's GPS and GSM, where the user has to tap “Allow”. After that, the user can click "Alert" Button to send alerts i.e. distress message saying "I'm in danger. HELP! My Location is: (Location Link)" to the emergency contacts. The sent message can be seen in the mobile's messages app. Users must have internet and sim with a significant balance to let this work. Moreover, users can learn self-defense through awareness option, can see current location through app, view & edit profile, and can signs out as applicable. 7.3. LIMITATIONS The project we have developed is made keeping in mind that it would not only be unique of its kind but also it would be helpful in real-life. The stimulus came from lots of bad news coming daily about rapes and kidnappings of kids and women. The app is made by using object-oriented design, so it can be improved later on. Our app might have some tasteless designing or buggy coding at some point, as it was our first time learning the development of an android app and it is also the first version as well. I have tried our best to make it up to the mark, though, some problems may exist. During the design phase I learned: ● Writing documentation and designing of software through different graphic designing apps and also through coding i.e. XML. During the testing and implementation phase I learned: ● Finding bugs and its fixture. During the coding phase I learned: • Java Programming
  • 72. 65 7.4. FUTURE WORK Our project can later be used as a big project for women's safety at a national level. The period was about 12-14 months to complete this project for one person alone, as, I learned these tools and technologies during this tenure. Many features can be added to this project which I’ve been unable to do because of lack of time. Future work can be done on improving the app by adding more vulnerable options like sending distress alerts to the nearest police station or adding multiple sirens to alert people in the surrounding. Also, more services can be added according to the need of time.
  • 73. 66 Chapter 8 USER GUIDE 8.1. APP LAUNCH PAGE 01 Figure 8.1.1: App Launch 01 UI
  • 74. 67 8.2. SIGNUP SCREEN Figure 8.2.1: Signup UI 8.3. MAIN SCREEN Figure 8.3.1: Home Screen UI
  • 75. 68 8.4. APP LAUNCH PAGE 02 Figure 8.4.1: Launch Page 02 UI 8.5. ALERTS Figure 8.5.1: Alerts UI
  • 76. 69 8.6. PROFILE SCREEN Figure 8.6.1: Profile UI 8.7. LOGIN SCREEN Figure 8.7.1: Login UI
  • 77. 70 8.8. MAPS SCREEN Figure 8.8.1: Maps UI
  • 78. 71 8.9. INTRO SLIDERS SCREENS Figure 8.9.1: Slider 01 UI Figure 8.9.2: Slider 02 UI
  • 79. 72 Figure 8.9.3: Slider 03 UI Figure 8.9.4: Slider 04 UI
  • 80. 73 Figure 8.9.5: Slider 05 UI Figure 8.9.6: Slider 06 UI
  • 81. 74 8.10. AWARENESS SCREENS Figure 8.10.1: 01 UI Figure 8.10.2: 02 UI
  • 82. 75 Figure 8.10.3: 03 UI Figure 8.10.4: 04 UI
  • 83. 76 Figure 8.10.5: 05 UI Figure 8.10.6: 06 UI
  • 84. 77 Figure 8.10.7: 07 UI 8.11. PERMISSION SCREENS Figure 8.11.1: GSM UI
  • 86. 79 LIST OFABBREVATIONS Global Positioning System (GPS) Global System for Mobile Communications (GSM) Android Software Development Kit (SDK) Java Development Kit (JDK) Java Virtual Machine (JVM) Extensible Markup Language (XML) Graphical User Interface (GUI) Database-as-a-service (DBaaS) Final Year Project (FYP) University Institute of Information Technology (UIIT)
  • 87. 80 REFERENCES [1] https://tribune.com.pk/story/1348833/93-pakistani-women-experience-sexual- violence/ [2] http://www.ijcstjournal.org/volume-5/issue-2/IJCST-V5I2P51.pdf [3] https://pdfs.semanticscholar.org/2e31/148a2fe83d60faeb0c2bafa5d540d79c5a7 8.pdf [4] http://ijarcet.org/wp-content/uploads/IJARCET-VOL-5-ISSUE-3-725-729.pdf [5] ROGER S. Pressman, “Software Engineering: A Practitioner's Approach”, SEVENTH EDITION McGraw-Hill International edition, Page No.1-888, 2010 [6] WOMEN’S SECURITY, Android App developed by AppSoftIndia, December17, 2013 [7] Suraksha, A device to help women in distress: An initiative by a student of ITM University Gurgaon, efytimes.com, 2013. [8] https://www.researchgate.net/publication/287201587_Abhaya_An_Android_Ap p_For_The_Safety_Of_Women [9] Ajit, Arjun, A Software Engineering Project on Women Safety-Information System Development, 10.13140/RG.2.1.4850.3449, 2016 [10] ttps://www.researchgate.net/publication/297549148_A_Software_Engine ering_Project_On_Women_Safety-Information_System_Development [11] https://projectworlds.in/android-projects-with-source-code/women- safety-app-android-project-source-code/ [12] https://www.kashipara.com/project/android/1670/women-safety-app [13] https://appsagainstabuse.devpost.com/submissions/4900-circle-of-6 The End