You are on page 1of 14

Final Year Project

Department of Computer Science


Spring 2012 (Mid Term)

Project Title

Track My Group

Supervisor
Mr. Hasan Tahir

Group Members
Moeed Ahmed
(BC093047)
Muhammad Ahsan Akhtar
(BC093020)
Contents

1.

Objective.............................................................................................................. 2

2.

Description........................................................................................................... 2

3.

End users............................................................................................................. 2

4.

Functional Requirements...................................................................................... 3

5.

4.1.

Group Creation............................................................................................... 3

4.2.

Group Validation............................................................................................ 3

4.3.

Coordinate Mapping....................................................................................... 3

4.4.

Defining Boundaries....................................................................................... 3

4.5.

Distance Calculation...................................................................................... 3

Non-Functional Requirements.............................................................................. 3
5.1.

Time Span...................................................................................................... 3

5.2.

Sending Notifications..................................................................................... 3

5.3.

Maintaining Activity Log.................................................................................3

6.

Use case Diagram................................................................................................ 4

7.

Use case Descriptions.......................................................................................... 5

8.

Project Timeline.................................................................................................. 12

9.

Compatibility & Application Requirements.........................................................12

8.

Scope................................................................................................................. 12

9.

Tools and Development Technology...................................................................12

1 | Page

1. Objective
Our objective is to build an automatic tracking application using
android technology. The problem arises when people need to keep
track of each others location during a trip. Manually, it is being
done by calling each other or asking somebody about specific
person that can waste a lot of time. So, a handy approach to
automatically keep track every member in the group is required.
Our focus is to develop such an android application which can help
in quick tracking of each member. Our final goal is to publish this
application in Android market.

2. Description
The following description shows one of a scenario where this
application can be used:
A group of friends want to go out for hiking (or anywhere else for a
trip). They all need to be in touch by keeping track of each other.
One of the group members takes the role of a supervisor and rest
act as members of group. They all need an android application on
their physical android devices to stay in touch with each other.

3. End users
Suppose a group of school students along with their teacher go for a
trip. In this case:
(i)
Supervisor:can be that teacher.
(ii) Members: are the rest of students.
Suppose an owner of a transport business needs to keep track of all
of his bus drivers:
(i)
Supervisor:can be that owner.
(ii) Members: are all of the drivers.

2 | Page

4. Functional Requirements
The basic functional requirements of our application are highlighted
below:

4.1.

Group Creation
The supervisor can create a group and add all other members in
that group including their names and cell numbers. This list of
members will be stored in a single table of SQLite database.

4.2.

Group Validation
The supervisors device will send requests to all group members.
It will then receive response from all other group members as a
confirmation.

4.3.

Coordinate Mapping
The current coordinates of members will continuously be sent to supervisor device and
vice versa. The locations will be shown by plotting coordinates on Google Maps.

4.4.

Defining Boundaries
The supervisor will define a distance from its location or any
other location. All members are allowed to be in this specified
distance only.

4.5.

Distance Calculation
The supervisor can find distance of each group members device
from its location & vice versa.

5. Non-Functional Requirements
The major non-functional requirements of our application are:

5.1.

Time Span

5.2.

The total time for registering all members to the group will be
less than 30secs.
The time for map loading and plotting indicators on Google map
will also be less than 30secs (depends upon internet connection
speed).
All members locations will be gathered after a time interval of
1min.

Sending Notifications
Any member will be able to send a notification to the supervisor in case of any
emergency.
3 | Page

5.3.

Maintaining Activity Log

A log for distances and locations of all members will continuously be maintained in
SQLite Database on supervisors device.
Log can also be cleared at any time.
Log will be deleted if supervisors device gets inactive.

6. Use case Diagram

4 | Page

7. Use case Descriptions

Use Case Name

Create Group

Use Case Author

Muhammad Ahsan Akhtar

Use Case Number

01

Description

The supervisor can create a group and add all other


members in that group including their names and cell
numbers. This data will be stored on a local database in
supervisors device.

Specifications
Title:
Creation of Group.
Preconditions
1- All participating android devices must be in active state.
2- Only 5 members are allowed at one time.
Post condition
Group must be successfully added in Androids SQL Lite Database.
Actor
Supervisor
Primary Flow
1- Use case begins when supervisor selects to create a group.
2- Name and Contact number will be added to the list.
3- A confirmation message will be send to each added member in a group.
4- The member successfully adds to the group on the reply message from
5 | Page

that specific member.


Exception
1- Mobile device added in group may not be an android centered device.
2- Group will be deleted if supervisors device state inactive.
Priority

High

Use Case Name

View Location

Use Case Author

Moeed Ahmed

Use Case Number

02

Description

The supervisor views the location of each group member on


a google map all the time.

Specifications
Title:
Viewing Location.
Preconditions
1- All participating android devices must be in active state.
2- Every member is given a unique color as indicator to be plotted on the
google map.
Post condition
All members are informed about their color indicators and confirmation of
being viewed on the map.
Actor
Supervisor
Primary Flow
1- The location of each member is shown on the supervisor device after
the creation of group.
Exception
6 | Page

Any devicesstate inactive.


Priority

Use Case Name

High

View Location

Use Case Author

Muhammad Ahsan Akhtar

Use Case Number

03

Description

The member views the location of supervisor and each other


group member on a google map all the time.

Specifications
Title:
Viewing Location.
Preconditions
1- All participating android devices must be in active state.
2- Every group member is given a unique color as indicator to be plotted
on the google map.
Post conditions
The member is only informed about the color indicator of his/her device of
being viewed on the map.
Actor
Member
Primary Flow
1- The location of supervisor and every other group member is shown on
the each device.
7 | Page

Exception
Any devicesstate inactive.
Priority

Use Case Name

High

Define Boundary Range

Use Case Author

Moeed Ahmed

Use Case Number

04

Description

The supervisor can define a boundary from a location of any


member for a provided distance.

Specifications
Title:
Defining a Boundary.
Preconditions
1- All participating android devices must be in active state.
2- All members are located on map.
Post conditions
1- Boundary distance is informed to all members from the supervisor
device.
2- All members are required to be in that defined distance otherwise
notification will be send to the supervisor device.
Actor
Supervisor
Primary Flow
1- Use case begins when supervisor selects the location of any member
8 | Page

2- Provide the distance (in meters or kilometer) from that specific member
3- Defined boundary will be then send to all other group members
Exception
If the defined distance is less than one kilometer.
Priority

High

Use Case Name

Find Distance

Use Case Author

Moeed Ahmed

Use Case Number

05

Description

The supervisor can find a distance from his device to any


other group members device at any time.

Specifications
Title:
Finding Distance.
Preconditions
1- All participating android devices must be in active state.
2- All members are located on map.
Post condition
The distance is maintained in log against each member on supervisor device
for each time.
Actor
Supervisor
Primary Flow
1- Use case begins when supervisor selects to find distance
9 | Page

2- Choose any member to calculate distance from his device (in meters or
kilometer)
Exception
If the calculated distance is less than one kilometer.
Priority

Use Case Name

High

Find Distance

Use Case Author

Muhammad Ahsan Akhtar

Use Case Number

06

Description

The member can find a distance from his device to


supervisor or any other group members device at any time.

Specifications
Title:
Finding Distance.
Preconditions
1- All participating android devices must be in active state.
2- All members are located on map.
Post conditions
Actor
Members
Primary Flow
1- Use case begins when any member selects to find distance
2- Choose any other member or supervisor to calculate distance from his
device (in meters or kilometer)
Exception
10 | P a g e

If the calculated distance is less than one kilometer.


Priority

Use Case Name

High

Send Notification

Use Case Author

Moeed Ahmed

Use Case Number

07

Description

The member can send notification in case of any emergency


to the supervisor at any time.

Specifications
Title:
Sending Notification.
Precondition
The specific android device is in active state.
Post conditions
Actor
Member
Primary Flow
1. The member chooses to send notification to the supervisor device.
2. A notification will be shown on supervisors device from that specific
member.
Exception
11 | P a g e

Supervisors device stateinactive.


Priority

Medium

8. Project Timeline

Till Fall 2012-13 Midterm


Making group and adding members on supervisor device.
Till Fall 2012-13 Final
Message parsing during sending and receiving as well as
showingGoogle maps in application.
Till Spring 2013 Midterm
Complete mapping of co-ordinates, distance calculation and
applying limitations on distance ranges.
Till Spring 2013 Final
Complete documentation and fully working and tested project

The testing will be carried out regularly while developing during


each phase.

9. Compatibility & Application Requirements


Compatible with android devices having minimum Android OS version
2.1 (or higher).
Internet access or data connection for Google Map loading.

12 | P a g e

1. Scope
The supervisor and each other group member will need an android
device having Track My Group android application installed and
running on it. All devices are required to have internet access or data
connection for running the Google maps.

2. Tools and Development Technology


Development Environment:Eclipse IDE
Platform:Android
Language:JAVA

13 | P a g e