17
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)

Design Project - 1 (Mid)

Embed Size (px)

DESCRIPTION

tth

Citation preview

Final Year ProjectDepartment of Computer Science Spring 2012 (Mid Term)

Project TitleTrack My Group

SupervisorMr. Hasan Tahir

Group MembersMoeed Ahmed(BC093047)Muhammad Ahsan Akhtar(BC093020)Contents1.Objective22.Description23.End users24.Functional Requirements34.1.Group Creation34.2.Group Validation34.3.Coordinate Mapping34.4.Defining Boundaries34.5.Distance Calculation35.Non-Functional Requirements35.1.Time Span35.2.Sending Notifications35.3.Maintaining Activity Log36.Use case Diagram47.Use case Descriptions58.Project Timeline129.Compatibility & Application Requirements128.Scope129.Tools and Development Technology12

1. ObjectiveOur 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. DescriptionThe 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 usersSuppose 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.

4. Functional RequirementsThe basic functional requirements of our application are highlighted below:4.1. Group CreationThe 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 ValidationThe 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 MappingThe 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 BoundariesThe 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 CalculationThe supervisor can find distance of each group members device from its location & vice versa.

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

5.1. Time Span 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. 5.2. Sending NotificationsAny member will be able to send a notification to the supervisor in case of any emergency.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

7. Use case Descriptions

Use Case NameCreate Group

Use Case AuthorMuhammad Ahsan Akhtar

Use Case Number01

DescriptionThe 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.

SpecificationsTitle:Creation of Group.

Preconditions1- All participating android devices must be in active state.2- Only 5 members are allowed at one time.

Post conditionGroup must be successfully added in Androids SQL Lite Database.

ActorSupervisor

Primary Flow1- 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 that specific member.

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

PriorityHigh

Use Case NameView Location

Use Case AuthorMoeed Ahmed

Use Case Number02

DescriptionThe supervisor views the location of each group member on a google map all the time.

SpecificationsTitle:Viewing Location.

Preconditions1- 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 conditionAll members are informed about their color indicators and confirmation of being viewed on the map.

ActorSupervisor

Primary Flow1- The location of each member is shown on the supervisor device after the creation of group.

ExceptionAny devicesstate inactive.

PriorityHigh

Use Case NameView Location

Use Case AuthorMuhammad Ahsan Akhtar

Use Case Number03

DescriptionThe member views the location of supervisor and each other group member on a google map all the time.

SpecificationsTitle:Viewing Location.

Preconditions1- 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 conditionsThe member is only informed about the color indicator of his/her device of being viewed on the map.

ActorMember

Primary Flow1- The location of supervisor and every other group member is shown on the each device.

ExceptionAny devicesstate inactive.

PriorityHigh

Use Case NameDefine Boundary Range

Use Case AuthorMoeed Ahmed

Use Case Number04

DescriptionThe supervisor can define a boundary from a location of any member for a provided distance.

SpecificationsTitle:Defining a Boundary.

Preconditions1- All participating android devices must be in active state.2- All members are located on map.

Post conditions1- 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.

ActorSupervisor

Primary Flow1- Use case begins when supervisor selects the location of any member2- Provide the distance (in meters or kilometer) from that specific member3- Defined boundary will be then send to all other group members

ExceptionIf the defined distance is less than one kilometer.

PriorityHigh

Use Case NameFind Distance

Use Case AuthorMoeed Ahmed

Use Case Number05

DescriptionThe supervisor can find a distance from his device to any other group members device at any time.

SpecificationsTitle:Finding Distance.

Preconditions1- All participating android devices must be in active state.2- All members are located on map.

Post conditionThe distance is maintained in log against each member on supervisor device for each time.

ActorSupervisor

Primary Flow1- Use case begins when supervisor selects to find distance2- Choose any member to calculate distance from his device (in meters or kilometer)

ExceptionIf the calculated distance is less than one kilometer.

PriorityHigh

Use Case NameFind Distance

Use Case AuthorMuhammad Ahsan Akhtar

Use Case Number06

DescriptionThe member can find a distance from his device to supervisor or any other group members device at any time.

SpecificationsTitle:Finding Distance.

Preconditions1- All participating android devices must be in active state.2- All members are located on map.

Post conditions

ActorMembers

Primary Flow1- Use case begins when any member selects to find distance2- Choose any other member or supervisor to calculate distance from his device (in meters or kilometer)

ExceptionIf the calculated distance is less than one kilometer.

PriorityHigh

Use Case NameSend Notification

Use Case AuthorMoeed Ahmed

Use Case Number07

DescriptionThe member can send notification in case of any emergency to the supervisor at any time.

SpecificationsTitle:Sending Notification.

PreconditionThe specific android device is in active state.Post conditions

ActorMember

Primary Flow1. The member chooses to send notification to the supervisor device.2. A notification will be shown on supervisors device from that specific member.

ExceptionSupervisors device stateinactive.

PriorityMedium

8. Project Timeline Till Fall 2012-13 MidtermMaking group and adding members on supervisor device. Till Fall 2012-13 FinalMessage parsing during sending and receiving as well as showingGoogle maps in application. Till Spring 2013 MidtermComplete mapping of co-ordinates, distance calculation and applying limitations on distance ranges. Till Spring 2013 FinalComplete 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.

ScopeThe 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.

Tools and Development Technology

Development Environment:Eclipse IDEPlatform:Android

Language:JAVA

12 | Page