GPS System

 

The system that our team will build as the main project is a global positioning system. Here is a description of its main use cases:

Obtaining GPS driving guidance

Use case name

Obtain GPS driving guidance

Unique use case ID

UC-1

Primary actor(s):

User

Secondary actor(s)

GPS server

Brief description:

This use case is realized by the GPS client, for information. It depends on the use case UC-2.

The user inputs the desired destination into the system. As the user drives the vehicle, the system constantly presents the vehicle’s current position and the directions that have to be followed to reach the destination address.

Preconditions

The initial position of the car is different from the desired destination

Flow of events

  1. The user starts the use case by inputting the destination address into the system
  2. The system:
    1. Establishes a connection to the GPS server
    2. Sends the destination address
    3. Obtains the directions from the GPS server
    4. Display the GPS instructions to the user
    5. Repeat the flow of execution from step 2.d until the vehicle reach its destination
    6. After the final destination is reached, a message is presented to the user and the use case ends

Post conditions

The actual position is equal to the desired address

Priority

High

Alternative flows and exceptions:

Step 2.a If the GPS device can’t establish a connection to a GPS server, it displays an error message informing the situation and the use case ends.

Step 2.d If instead of directions, the system gets some kind of error message from the server, it will try to solve the problem with the information available, or asking new information from the user, depending of the nature of the problem:

  • If the GPS server indicates that he failed to receive the actual position or desired address, the system will

o       resend the required information

o       display a message informing what happened and the current status of the operation

o       offer the user an option to cancel the operation and end the use case

§         if the user picks this option, the system will display an error informing the situation and the use case will end

  • If the GPS server indicates that the destination address does not exist, the system will inform the user that the desired address is not available and will ask for a new one

Assumptions:

There is a GPS server available.

Issues:

The nature of the system GUI has to be decided as soon as possible to determine the level or risk of its implementation.

Since we don’t have a GPS client that can actually send a signal that allows a satellite to identify its position, we have to do a simplification by establishing that the client sends is actual coordinates (is not the Server that identifies the coordinates based on that signal). Nevertheless, the system should provide interfaces carefully defined to make the change from this simulation to an actual system transparent.

Source:

Jaime Rodrigo Oviedo Silva

 

Obtaining GPS information

Use case name

Obtain GPS driving information

Unique use case ID

UC-2

Primary actor(s):

Local GPS system

Secondary actor(s)

None

Brief description:

This use case is realized by the GPS server.

The GPS client starts the use case by requesting the GPS service from the system. Right after the service request is granted, the client sends its current position and the desired destination to the system. As the client changes its position, it constantly sends its actual position to the GPS server, which replies back with where to go next in order to get to the desired destination using the minimum path.

Preconditions

The system has available the map that provides enough information to identify the path between the client’s current position and the desired destination.

Flow of events

  1. The client starts the use requesting a GPS service from the system
  2. The system

a.      Registers the client

b.      Requests the client’s desired destination

  1. The client sends
    1. The desired destination
  2. The GPS server:

a.      Checks that the destination exists

b.      Generates the shortest path from the client’s current location to the desired destination

c.      Obtains the next point the client has to get to, based on its current position

d.      Sends the instructions to the client

  1. The client:

a.      Follows the instructions until it reached the point indicated by the system

b.      When it reaches the indicated spot, it sends an acknowledgement to the server to indicated that it has finished following the instructions

  1. The execution flows continues in step 4.c until the vehicle has reached the final destination, then it continues in step 7
  2. When the client reaches the desired destination, the case use ends

Post conditions

The actual position is equal to the desired address

Priority

High

Alternative flows and exceptions:

Step 4

  • If the system fails to receive the actual position or desired address, it will request the client to resend the missing information
  • If the destination address does not exist, the system will send an error message back to the client informing the situation

5.a If the client does not follow the instructions at some point (for example, the driver makes a wrong turn), the use case’s flow of execution continues in step 3.b

Assumptions:

The system has access to the information of street names, dimensions and intersections

Issues:

We have to find (or build ourselves) some city map that we can use for testing.

Source:

Jaime Rodrigo Oviedo Silva