Public Transit

The public transit feature keeps you updated about departure times of trams and busses.

Implementation

If you are interested in the implementation, lets dive into it with following quicklinks:

  • <Android>

  • <Backend>

  • <iOS>

Functional Requirements

PT-1 Transit stop information

Priority

high

Status

determined

Involved stakeholders

Development Team

Implemented in

backend 1.0.0 , android 1.0.0, ios 1.0.0

Dependency

Description

A public transit stop shall contain an identifier, a name, and the geospatial position using latitude and longitude coordinates.

PT-2 Departure information

Priority

high

Status

determined

Involved stakeholders

Development Team

Implemented in

backend 1.0.0 , android 1.0.0, ios 1.0.0

Dependency

PT-1

Description

Departure information for a bus stop shall consist of bus/tram route number, platform name, direction string, and the countdown time in minutes until the vehicle leaves this stop.

PT-3 Stop list

Priority

high

Status

determined

Involved stakeholders

Development Team

Implemented in

backend 1.0.0 , android 1.0.0, ios 1.0.0

Dependency

Description

The system shall list all transit stops in the Ulm city region by querying the DING API service. The system shall be capable of filtering the bus stops by entering a search string, or filtering the nearest bus stops by device location proximity.

PT-4 Departure list

Priority

high

Status

determined

Involved stakeholders

Development Team

Implemented in

backend 1.0.0 , android 1.0.0, ios 1.0.0

Dependency

PT-2

Description

The system shall list the next 20 departures, sorted by ascending countdown time, of a specific transit stop, by default for the stop “Universität Süd”, by querying the DING API service. The system shall be capable of filtering the departures of a stop by route number or direction string.

PT-5 Favorite stops

Priority

high

Status

determined

Involved stakeholders

Development Team

Implemented in

backend 1.0.0 , android 1.0.0, ios 1.0.0

Dependency

PT-3, PT-6

Description

The users shall be able to select their favorite stops by selecting a star icon. The currently selected filters shall then be saved with the current stop. The GUI shall display the star icon in the menu bar. If the star is filled out then (and only then) the current stop and filters are a favorite. If it is not filled out they are not a favorite. The favorite stops are only stored on the front end and are not transferred to the back end. When the search icon is clicked, a list of the favorite stops is displayed in order of the last access (most recently used first). This list disappears, when the user enters the search text field.

PT-6 Last searches

Priority

high

Status

determined

Involved stakeholders

Development Team

Implemented in

Dependency

PT-5

Motivation/Reason

Typically, users search for the same stops within short periods of time. The following scenario will illustrate this. Suppose you want to visit a friend by public transport. You quickly look up how to get there and at what times the buses leave. Two hours later you leave and want to check the bus schedule again. In this case, it is very convenient if you can simply use the results of your last search.

Description

The users shall be able to select their last five searches quickly. Despite the possibility to define favorites, the front end shall present the last five searches to the user.

When the user clicks the search icon, a list of the last five searches is shown. The entries are displayed in the order of the last access (most recently used first). If there are two lists (due to PT-5), the entries of these two lists are ordered separately and somehow visually separated, e.g.:

  1. list of favorites (ordered),

  2. strong line as separator,

  3. last searches (ordered).

All lists disappear when the user enters the search text field. The stop selected after a search is saved into the list of last used searches (not the string itself!). This list must not have more than five entries.

PT-7 Default bus stop

Priority

medium

Status

determined

Involved stakeholders

Development Team

Implemented in

backend 1.0.0 , android 0.4.3

Dependency

PT-5

Motivation/Reason

As a user I want to be able to change my default bus stop in order to save time as I don’t have to repeat the same search all the time.

Description

As a user I therefore have the option in the settings where I can choose my default bus stop from my saved favorites. This default shall include the bus stop and the according filters. When the user navigates to the bus fragment the set default values shall be used as the initially displayed bus stop and filters. In preference shall include a line for the bus stop and underneath a line for the filters. In the list of options for the default every option shall also show a radioButtion which implies which option is the currently set value.