mlw mobile use cases · web viewmlw web development.docx actors actor description mlw user...

43
European Environment Agency (EEA) Deliverable – Use Cases for Marine LitterWatch (MLW) mobile applications (Android & iOS) This document will list and describe user interaction of MLW mobile application for Android and iOS. Platform Date 0.2 23/06/2014 Date: 14/05/2014 Page 1 of 43

Upload: lengoc

Post on 12-Mar-2018

219 views

Category:

Documents


6 download

TRANSCRIPT

Page 1: MLW Mobile Use Cases · Web viewMLW Web Development.docx Actors Actor Description MLW User Marine LitterWatch application user. Administrators Marine LitterWatch system administrators

European Environment Agency (EEA)

Deliverable – Use Cases for Marine LitterWatch (MLW) mobile applications (Android & iOS)

This document will list and describe user interaction of MLW mobile application for Android and iOS.

Platform Date

0.2 23/06/2014

Date: 14/05/2014 Page 1 of 38

Page 2: MLW Mobile Use Cases · Web viewMLW Web Development.docx Actors Actor Description MLW User Marine LitterWatch application user. Administrators Marine LitterWatch system administrators

Document HistoryPlatform Date Name(s) Description

0.1 04/05/2014 Alberto Telletxea Android

0.2 26/06/2014 Alberto Telletxea Includes iOS and revision

Page 2 of 38

Page 3: MLW Mobile Use Cases · Web viewMLW Web Development.docx Actors Actor Description MLW User Marine LitterWatch application user. Administrators Marine LitterWatch system administrators

Table of contents1 Introduction..........................................................................................................................5

1.1 Scope......................................................................................................................................5

1.2 References..............................................................................................................................5

2 Actors...................................................................................................................................5

3 User Cases............................................................................................................................6

3.1 Login.......................................................................................................................................63.1.1 Login...............................................................................................................................63.1.2 Logout.............................................................................................................................7

3.2 Community Management......................................................................................................83.2.1 View Community List......................................................................................................83.2.2 Join Community..............................................................................................................93.2.3 Leave Community.........................................................................................................10

3.3 Beach Management.............................................................................................................113.3.1 View Beach List.............................................................................................................113.3.2 View Beach...................................................................................................................123.3.3 Create Beach.................................................................................................................133.3.4 Edit Beach.....................................................................................................................143.3.5 Delete Beach.................................................................................................................16

3.4 Event Management..............................................................................................................173.4.1 View Event List..............................................................................................................173.4.2 View Event....................................................................................................................183.4.3 Create Event.................................................................................................................193.4.4 Edit Event......................................................................................................................203.4.5 Delete Event.................................................................................................................21

3.5 Survey Management............................................................................................................223.5.1 View Survey List............................................................................................................223.5.2 View Survey..................................................................................................................233.5.3 Create Survey................................................................................................................243.5.4 Edit Survey....................................................................................................................263.5.5 Delete Survey................................................................................................................273.5.6 Add/Remove item.........................................................................................................28

Page 3 of 38

Page 4: MLW Mobile Use Cases · Web viewMLW Web Development.docx Actors Actor Description MLW User Marine LitterWatch application user. Administrators Marine LitterWatch system administrators

3.5.7 Search item...................................................................................................................28

3.6 Wizard..................................................................................................................................29

4 Database model..................................................................................................................31

4.1 Server...................................................................................................................................314.1.1 Server tables.................................................................................................................32

4.2 Client (Android and iOS).......................................................................................................344.2.1 CATEGORY.....................................................................................................................354.2.2 CATEGORY_DESC..........................................................................................................354.2.3 ITEM..............................................................................................................................354.2.4 ITEM_DESC...................................................................................................................354.2.5 LANGUAGE....................................................................................................................354.2.6 SURVEY.........................................................................................................................364.2.7 SURVEY_ITEMS.............................................................................................................364.2.8 USER..............................................................................................................................36

Page 4 of 38

Page 5: MLW Mobile Use Cases · Web viewMLW Web Development.docx Actors Actor Description MLW User Marine LitterWatch application user. Administrators Marine LitterWatch system administrators

1 IntroductionThe aim of this document is to give a clear understanding of the functional capabilities that the MLW mobile application for Android and iOS provide to end users. The functionalities are described as use cases.

1.1 ScopeThe objective of this document is to have a centralised place where to consult and maintain the functional specifications of the document. This document will be Platformed and stored in the SVN repository for the MLW project:https://svn.eionet.europa.eu/repositories/EyeOnEarth/LitterWatch/Documentation/

1.2 ReferencesThese are reference documents taken into account to create the document.

Reference document File

Document with the previous design of what the mobile application should cover. Created by Peter Kjeld

MLW Web Development.docx

2 Actors

Actor Description

MLW User Marine LitterWatch application user.

Administrators Marine LitterWatch system administrators.

Page 5 of 38

Page 6: MLW Mobile Use Cases · Web viewMLW Web Development.docx Actors Actor Description MLW User Marine LitterWatch application user. Administrators Marine LitterWatch system administrators

3 User Cases

3.1 Loginuc Login

MLW User

Marine LitterWatch Application

Login

Logout

Facebook Login

Twitter Login

Google Login

«extends»

«extends»

«extends»

3.1.1 Login

ID UC_Login

Name Login

Platform Android and iOS

Author Bilbomatica

Date 05/05/2014

Summary This use case describes how a user logs into Marine LitterWatch application.

Basic Path 1. The user opens Marine LitterWatch application.

2. The system displays 3 federated login options through social networks:

a. Google

b. Twitter

c. Facebook

Page 6 of 38

Page 7: MLW Mobile Use Cases · Web viewMLW Web Development.docx Actors Actor Description MLW User Marine LitterWatch application user. Administrators Marine LitterWatch system administrators

3. The user selects a social network.

4. The system requests the user to enter his/her corresponding credentials.

5. The user enters his/her credentials.

6. A ‘login successful’ message is displayed and the user is tagged as the current logged user by the system.

7. The user is logged into the system.

Alternative Paths

Invalid CredentialsIf user enters wrong credentials, the system displays an error message and requests the credentials again.User already loggedIf the user is already tagged as the current logged user by the system, as soon as the user opens the application he/she is logged into the system.

Pre-Conditions

None

Post-Conditions

The user is logged into the system

3.1.2 Logout

ID UC_Logout

Name Logout

Platform Android and iOS

Author Bilbomatica

Date 05/05/2014

Summary This use case describes how a user logouts from Marine LitterWatch application.

Basic Path 1. The user selects the ‘logout’ option.

2. The user is logged out from the system and it is untagged as the current logged user.

Alternative Paths

None

Pre-Conditions

The user is logged into Marine LitterWatch application.

Post- The user is logged out from the system

Page 7 of 38

Page 8: MLW Mobile Use Cases · Web viewMLW Web Development.docx Actors Actor Description MLW User Marine LitterWatch application user. Administrators Marine LitterWatch system administrators

Conditions

3.2 Community Managementuc Community Management

Join / Leave

«abstract»Community

Management

Join Community

Leav e Community

View Community List

MLW User

Marine LitterWatch Application

3.2.1 View Community List

ID UC_Community_List

Name View Community List

Platform Android and iOS

Author Bilbomatica

Date 05/05/2014

Summary This use case describes how a user views the community list of Marine LitterWatch application.

Basic Path 1. The user selects the ‘communities’ option.

2. The system displays the community list.

a. Ordered by an index specified by administrators

Page 8 of 38

Page 9: MLW Mobile Use Cases · Web viewMLW Web Development.docx Actors Actor Description MLW User Marine LitterWatch application user. Administrators Marine LitterWatch system administrators

i. The show order is descendent, lower index are shown first.

ii. If the index is 0 or less (negative) the community is not displayed.

b. Community name and description is displayed

c. Clicking on a community opens the community URL

Alternative Paths

None

Pre-Conditions

None

Post-Conditions

The community list is displayed.

3.2.2 Join Community

ID UC_Join_Community

Name Join Community

Platform Android and iOS

Author Bilbomatica

Date 05/05/2014

Summary This use case describes how a user joins a community.

Basic Path 1. The user selects the ‘my profile’ option.

2. The system displays the user profile data:

a. User

b. Community: <empty>

c. Social network

3. The user clicks on ‘join’ button.

4. The system requests the user to enter a community code.

5. The user enters a community code.

6. The system validates the community code and the user is added to the community membership.

7. The system displays a successful community update message.

Alternative Invalid community code

Page 9 of 38

Page 10: MLW Mobile Use Cases · Web viewMLW Web Development.docx Actors Actor Description MLW User Marine LitterWatch application user. Administrators Marine LitterWatch system administrators

Paths If the user enters an invalid community code the system displays an error message.HelpIf the user clicks on the help icon next to the ‘join’ button, the system will display help message including an email address to contact the EEA.

Pre-Conditions

The user is not a member of a community.

Post-Conditions

The user is added to a community membership.

3.2.3 Leave Community

ID UC_Leave_Community

Name Leave Community

Platform Android and iOS

Author Bilbomatica

Date 05/05/2014

Summary This use case describes how a user leaves the community he/she joined.

Basic Path 1. The user selects the ‘my profile’ option.

2. The system displays the user profile data:

a. User

b. Community: <current community>

c. Social network

3. The user clicks on ‘quit’ button.

4. The user is removed from the community membership.

5. The system displays a successful community update message.

Alternative Paths

None

Pre-Conditions

The user is a member of a community.

Post-Conditions

The user leaves the community he/she was member of.

Page 10 of 38

Page 11: MLW Mobile Use Cases · Web viewMLW Web Development.docx Actors Actor Description MLW User Marine LitterWatch application user. Administrators Marine LitterWatch system administrators

3.3 Beach Managementuc Beach Management

CRUD

Create Beach

Edit Beach

View Beach

«abstract»Beach Management

Delete Beach

View Beach List

Marine LitterWatch Application

MLW User

3.3.1 View Beach List

ID UC_Beach_List

Name View Beach List

Platform Android and iOS

Author Bilbomatica

Date 05/05/2014

Summary This use case describes how a user views the beach list of Marine LitterWatch application.

Basic Path 1. The user selects the ‘beaches’ option.

2. The system displays the beach list. For each beach item ‘beach name’ and ‘beach code’ is displayed.

a. Beaches created by the user

Page 11 of 38

Page 12: MLW Mobile Use Cases · Web viewMLW Web Development.docx Actors Actor Description MLW User Marine LitterWatch application user. Administrators Marine LitterWatch system administrators

b. Beaches created by other users but belonging to the community the user is member of.

3. A “New Beach” button is shown to create a new beach UC_Create_Beach.

Note: In the iOS application it is only shown the list of beaches created by the user.

This will be modified as the Android version behaves in a new version of the app.

Alternative Paths

No internet connectionThe system displays an error message when the user tries to access ‘beaches’ option with no internet connection.

Pre-Conditions

None

Post-Conditions

The beach list is displayed.

3.3.2 View Beach

ID UC_View_Beach

Name View Beach

Platform Android and iOS

Author Bilbomatica

Date 08/04/2014

Summary This use case describes how a user views a beach using Marine LitterWatch application.

Basic Path 1. The user clicks on a beach.

2. The beach form (with all the related data) is displayed in read-only mode.

a. Code: beach code.

b. Name (mandatory): free text.

c. Length: beach distance in meters automatically calculated from the map points.

d. Survey Location: free text.

e. Beach Type: drop down list.

i. <empty>

ii. Pebbels

iii. Sandy

Page 12 of 38

Page 13: MLW Mobile Use Cases · Web viewMLW Web Development.docx Actors Actor Description MLW User Marine LitterWatch application user. Administrators Marine LitterWatch system administrators

iv. Rocky

v. Other (mixed)

f. Beach Location: drop down list.

i. <empty>

ii. Urban

iii. Rural

iv. Near river mouth

g. Security Info: free text.

h. Map (2 points mandatory): arcgis map.

i. A ‘New event’ button is also displayed, which redirects the user to UC_Create_Event with the viewed Beach selected (this option is only shown in the Android app).

Alternative Paths

None

Pre-Conditions

The user in on the Beach List view.

Post-Conditions

The selected beach is displayed.

3.3.3 Create Beach

ID UC_Create_Beach

Name Create Beach

Platform Android and iOS

Author Bilbomatica

Date 08/04/2014

Summary This use case describes how a user creates a beach using Marine LitterWatch application.

Basic Path 1. User clicks on ‘New beach’ button.

2. Beach form is displayed:

a. Name (mandatory): free text.

b. Length: beach distance in meters automatically calculated from the map points.

Page 13 of 38

Page 14: MLW Mobile Use Cases · Web viewMLW Web Development.docx Actors Actor Description MLW User Marine LitterWatch application user. Administrators Marine LitterWatch system administrators

c. Survey Location: free text.

d. Beach Type: drop down list.

i. <empty>

ii. Pebbels

iii. Sandy

iv. Rocky

v. Other (mixed)

e. Beach Location: drop down list.

i. <empty>

ii. Urban

iii. Rural

iv. Near river mouth

f. Security Info: free text.

g. Map (2 points mandatory): The user will tap in the map to create two points.

3. User fills the form and clicks on ‘Submit’ button.

4. The beach is stored on the remote database.

5. The system displays a successful beach creation message.

6. The system displays a message where the user is prompted to create an event from the beach created, UC_Create_Event.

Alternative Paths

Mandatory fields not filledThe system displays an error message informing the user about mandatory fields not filled up.

Pre-Conditions

The user in on the Beach List view.

Post-Conditions

A beach is created.

3.3.4 Edit Beach

ID UC_Edit_Beach

Name Edit Beach

Platform Android and iOS

Page 14 of 38

Page 15: MLW Mobile Use Cases · Web viewMLW Web Development.docx Actors Actor Description MLW User Marine LitterWatch application user. Administrators Marine LitterWatch system administrators

Author Bilbomatica

Date 08/04/2014Summary This use case describes how a user edits a beach using Marine LitterWatch

application.

Basic Path 1. User clicks on ‘Edit’ button.

a. The beach must have been created by the user.

2. Beach form is displayed with the corresponding fields filled up:

a. Code: read-only beach code.

b. Name (mandatory): free text.

c. Length: beach distance in meters automatically calculated from the map points.

d. Survey Location: free text.

e. Beach Type: drop down list.

i. <empty>

ii. Pebbels

iii. Sandy

iv. Rocky

v. Other (mixed)

f. Beach Location: drop down list.

i. <empty>

ii. Urban

iii. Rural

iv. Near river mouth

g. Security Info: free text.

h. Map (2 points mandatory): arcgis map.

3. User edits the form and clicks on ‘Submit’ button.

4. The beach is updated on the remote database.

5. The system displays a successful beach update message.

6. The system displays a message where the user is prompted to create an event from the beach created, UC_Create_Event.

Alternative Paths

Mandatory fields not filled

Page 15 of 38

Page 16: MLW Mobile Use Cases · Web viewMLW Web Development.docx Actors Actor Description MLW User Marine LitterWatch application user. Administrators Marine LitterWatch system administrators

The system displays an error message informing the user about mandatory fields not filled up.User is not the owner of the beachThe system displays an error message informing the user that he/she can not edit or delete the selected beach.

Pre-Conditions

The user in on the Beach List view.

Post-Conditions

The selected beach is updated.

3.3.5 Delete Beach

ID UC_Delete_Beach

Name Delete Beach

Platform Android and iOS

Author Bilbomatica

Date 08/04/2014

Summary This use case describes how a user deletes a beach using Marine LitterWatch application.

Basic Path 1. User clicks on ‘Delete’ button.

a. The beach must have been created by the user.

2. The system asks the user to confirm the deletion.

3. The user confirms the beach deletion.

4. The beach is deleted on the remote database.

5. The system displays a successful beach deletion message.

Alternative Paths

User is not the owner of the beachThe system displays an error message informing the user that he/she can not edit or delete the selected beach.User does not confirm the deletionThe beach deletion is cancelled.

Pre-Conditions

The user in on the Beach List view.

Post-Conditions

The selected beach is deleted.

Page 16 of 38

Page 17: MLW Mobile Use Cases · Web viewMLW Web Development.docx Actors Actor Description MLW User Marine LitterWatch application user. Administrators Marine LitterWatch system administrators

3.4 Event Managementuc Ev ent Management

Create Ev ent

Delete Ev ent

Edit Ev ent

View Ev ent

«abstract»Ev ent Management

CRUD

View Ev ent List

Marine LitterWatch Application

MLW User

3.4.1 View Event List

ID UC_Event_List

Name View Event List

Platform Android and iOS

Author Bilbomatica

Date 08/04/2014

Summary This use case describes how a user views the event list of Marine LitterWatch application.

Basic Path 1. The user selects the ‘events’ option.

2. The system displays the event list. For each event item ‘beach name’ and ‘event

Page 17 of 38

Page 18: MLW Mobile Use Cases · Web viewMLW Web Development.docx Actors Actor Description MLW User Marine LitterWatch application user. Administrators Marine LitterWatch system administrators

date’ is displayed.

a. Events created by the user

3. A “New Event” button is shown to create a new event UC_Create_Event.

Alternative Paths

No internet connectionThe system displays an error message when the user tries to access ‘events’ option with no internet connection.

Pre-Conditions

None

Post-Conditions

The event list is displayed.

3.4.2 View Event

ID UC_View_Event

Name View Event

Platform Android and iOS

Author Bilbomatica

Date 08/04/2014

Summary This use case describes how a user views an event using Marine LitterWatch application.

Basic Path 1. The user clicks on an event.

2. The event form (with the related data) is displayed in read-only mode.

In the iOS app the event is viewed in edit mode.

a. Code: event code (not editable from iOS).

b. Beach (mandatory): drop down list.

i. Beaches created by the user for the Android and the iOS app.

ii. For the Android app, beaches created by other users but belonging to the community the user is member of.

c. Date (mandatory): date picker.

d. Start time (mandatory): time picker.

e. End time: time picker.

f. Visibility: radio button.

i. Public

Page 18 of 38

Page 19: MLW Mobile Use Cases · Web viewMLW Web Development.docx Actors Actor Description MLW User Marine LitterWatch application user. Administrators Marine LitterWatch system administrators

ii. Private

g. Event information: free text.

h. Number of People Attended: integer.

i. Event summary: free text.

j. A ‘New survey’ button is also displayed, which redirects the user to UC_Create_Survey with the viewed Event selected.

Alternative Paths

None

Pre-Conditions

The user in on the Event List view.

Post-Conditions

The selected event is displayed.

3.4.3 Create Event

ID UC_Create_Event

Name Create Event

Platform Android and iOS

Author Bilbomatica

Date 08/04/2014

Summary This use case describes how a user creates an event using Marine LitterWatch application.

Basic Path 1. User clicks on ‘New event’ button.

2. Event form is displayed:

a. Beach (mandatory): drop down list.

i. Beaches created by the user

ii. Beaches created by other users but belonging to the community the user is member of (only for the Android app).

iii. <New Beach> option. The user is redirected to UC_Create_Beach (step 2) and after the Beach is created the Event form is displayed again with the recently created beach selected (only for the Android app).

b. Date (mandatory): date picker.

c. Start time (mandatory): time picker.

Page 19 of 38

Page 20: MLW Mobile Use Cases · Web viewMLW Web Development.docx Actors Actor Description MLW User Marine LitterWatch application user. Administrators Marine LitterWatch system administrators

d. End time: time picker.

e. Visibility: radio button.

i. Public

ii. Private

f. Event information: free text.

g. Number of People Attended: integer.

h. Event summary: free text.

3. User fills the form and clicks on ‘Submit’ button.

4. The event is stored on the remote database.

5. The system displays a successful event creation message.

6. The system displays a message where the user is prompted to create a survey from the event created, UC_Create_Survey.

Alternative Paths

Mandatory fields not filledThe system displays an error message informing the user about mandatory fields not filled up.

Pre-Conditions

The user in on the Event List view.

Post-Conditions

An event is created.

3.4.4 Edit Event

ID UC_Edit_Event

Name Edit Event

Platform Android and iOS

Author Bilbomatica

Date 08/04/2014

Summary This use case describes how a user edits an event using Marine LitterWatch application.

Basic Path 1. User clicks on ‘Edit’ button.

2. Event form is displayed with the corresponding fields filled up:

a. Code: read-only event code.

b. Beach (mandatory): drop down list.

Page 20 of 38

Page 21: MLW Mobile Use Cases · Web viewMLW Web Development.docx Actors Actor Description MLW User Marine LitterWatch application user. Administrators Marine LitterWatch system administrators

i. Beaches created by the user

ii. Beaches created by other users but belonging to the community the user is member of (only for the Android app).

c. Date (mandatory): date picker.

d. Start time (mandatory): time picker.

e. End time: time picker.

f. Visibility: radio button.

i. Public

ii. Private

g. Event information: free text.

h. Number of People Attended: integer.

i. Event summary: free text.

3. User edits the form and clicks on ‘Submit’ button.

4. The event is updated on the remote database.

5. The system displays a successful event update message.

6. The system displays a message where the user is prompted to create a survey from the event created, UC_Create_Survey.

Alternative Paths

Mandatory fields not filledThe system displays an error message informing the user about mandatory fields not filled up.

Pre-Conditions

The user in on the Event List view.

Post-Conditions

The selected event is updated.

3.4.5 Delete Event

ID UC_Delete_Event

Name Delete Event

Platform 1

Author Bilbomatica

Date 08/04/2014

Summary This use case describes how a user deletes an event using Marine LitterWatch

Page 21 of 38

Page 22: MLW Mobile Use Cases · Web viewMLW Web Development.docx Actors Actor Description MLW User Marine LitterWatch application user. Administrators Marine LitterWatch system administrators

application.

Basic Path 1. User clicks on ‘Delete’ button.

2. The system asks the user to confirm the deletion.

3. The user confirms the event deletion.

4. The event is deleted on the remote database.

5. The system displays a successful event deletion message.

Alternative Paths

User does not confirm the deletionThe event deletion is cancelled.

Pre-Conditions

The user in on the Event List view.

Post-Conditions

The selected event is deleted.

3.5 Survey Managementuc Surv ey Management

Create Surv ey

Edit Surv ey

Delete Surv ey

View Surv ey

«abstract»Surv ey Management

CRUD

View Surv ey List

Marine LitterWatch Application

MLW User

Add/Remov e Item

Search Item«include»

«include»

«include»

«include»

3.5.1 View Survey List

ID UC_Survey_List

Name View Survey List

Page 22 of 38

Page 23: MLW Mobile Use Cases · Web viewMLW Web Development.docx Actors Actor Description MLW User Marine LitterWatch application user. Administrators Marine LitterWatch system administrators

Platform Android and iOS

Author Bilbomatica

Date 08/04/2014

Summary This use case describes how a user views the survey list of Marine LitterWatch application.

Basic Path 1. The user selects the ‘surveys’ option.

a. The ‘surveys’ menu option displays the number of surveys saved locally (red icon) for the user (only for the Android app).

2. The system displays the survey list. For each survey ‘beach name’ and ‘event date’ is displayed; if the survey has not been submitted (it is saved locally) a timestamp is displayed instead.

a. Surveys created by the user

i. Red icon: saved locally.

ii. Yellow icon: submitted. Less than 28 days gap between submission date and event ‘end date’ (‘start date’ if no ‘end date’ is available for the event).

iii. Green icon: submitted and not editable. More than or equals to 28 days gap between submission date and event ‘end date’ (‘start date’ if no ‘end date’ is available for the event).

3. A “New Survey” button is shown to create a new event UC_Create_Event.

Alternative Paths

None

Pre-Conditions

None

Post-Conditions

The survey list is displayed.

3.5.2 View Survey

ID UC_View_Survey

Name View Survey

Platform Android and iOS

Author Bilbomatica

Date 08/04/2014

Summary This use case describes how a user views a survey using Marine LitterWatch

Page 23 of 38

Page 24: MLW Mobile Use Cases · Web viewMLW Web Development.docx Actors Actor Description MLW User Marine LitterWatch application user. Administrators Marine LitterWatch system administrators

application.

Basic Path 1. The user clicks on a survey.

2. The survey form (with the related data) is displayed in read-only mode for the Android app. In the iOS app the survey form is provided also in edit mode.

a. Item List:

i. Items saved/submitted (item count 1 or greater) by the user are listed.

ii. If the community linked with the event has a preferred ‘item list’, also these are listed by default.

iii. If not, also the items tagged as ‘top items’ are listed by default.

b. Event code: read-only event code.

c. Comments: free text.

d. Number of participants: integer.

Alternative Paths

None

Pre-Conditions

The user in on the Survey List view.

Post-Conditions

The selected survey is displayed.

3.5.3 Create Survey

ID UC_Create_Survey

Name Create Survey

Platform Android and iOS

Author Bilbomatica

Date 08/04/2014

Summary This use case describes how a user creates a survey using Marine LitterWatch application.

Basic Path 1. User clicks on ‘New survey’ button.

2. The system asks the user if he/she wants to create a survey with or without an event code.

3. Survey form is displayed:

Page 24 of 38

Page 25: MLW Mobile Use Cases · Web viewMLW Web Development.docx Actors Actor Description MLW User Marine LitterWatch application user. Administrators Marine LitterWatch system administrators

a. Item List:

i. If the community linked with the event has a preferred ‘item list’, these are listed by default.

ii. If not, the items tagged as ‘top items’ are listed by default.

iii. Add/Remove button allow user to access on the full list of items and add or remove items from the list provided, search by item code or item name is also provided (UC_Add_Remove_Item).

b. Event code: read-only event code.

c. Comments: free text.

d. Number of participants: integer.

4. User fills the form.

a. ‘-‘ button subtracts 1 from the selected item counter (0 minimum)

b. ‘+’ button adds 1 from the selected item counter (999 maximum)

c. Item counter can be also manually set (0 minimum – 999 maximum)

5. The user clicks on ‘Submit’ button.

a. If the event code was not filled before, the system asks the user to enter it.

6. The survey is stored on the remote database.

a. Only items with 1 or more item counter are stored.

7. The system displays a successful survey creation message.

Alternative Paths

Save the survey locallyIf the user, instead of the ‘Submit’ button, clicks on ‘Save’ button the survey is locally saved (it is not submitted) even if no event code has been provided.Invalid event codeIf the user enters an invalid event code, when the ‘Submit’ button is clicked, the system displays an error message.Event not started yetIf the user provides a valid event code but the event has not started yet (‘event start date’) the system displays an error message when the ‘Submit’ button is clicked.Event expiredIf the gap between the submission date and event ‘end date’ (‘start date’ if no ‘end date’ is available for the event) is greater or equals to 28 days a survey can not be created for that event and the system displays an error message when the ‘Submit’ button is clicked.

Page 25 of 38

Page 26: MLW Mobile Use Cases · Web viewMLW Web Development.docx Actors Actor Description MLW User Marine LitterWatch application user. Administrators Marine LitterWatch system administrators

Pre-Conditions

The user in on the Survey List view.

Post-Conditions

A survey is created.

3.5.4 Edit Survey

ID UC_Edit_Survey

Name Edit Survey

Platform Android and iOS

Author Bilbomatica

Date 08/04/2014

Summary This use case describes how a user edits a survey using Marine LitterWatch application.

Basic Path 1. User clicks on ‘Edit’ button. To be able to edit the survey:

a. Survey is locally saved (red icon).

b. The gap between the submission date and event ‘end date’ (‘start date’ if no ‘end date’ is available for the event) is lesser than 28 days (yellow icon). The ‘edit’ option displays the number of days left for edition.

2. Survey form is displayed with the corresponding fields filled up:

a. Item List:

i. Items saved/submitted (item count 1 or greater) by the user are listed.

ii. If the community linked with the event has a preferred ‘item list’, also these are listed by default.

iii. If not, also the items tagged as ‘top items’ are listed by default.

iv. Add/Remove button allow user to access on the full list of items and add or remove items from the list provided, search by item code or item name is also provided (UC_Add_Remove_Item).

b. Event code: read-only event code.

c. Comments: free text.

d. Number of participants: integer.

3. User edits the form and clicks on ‘Submit’ button.

Page 26 of 38

Page 27: MLW Mobile Use Cases · Web viewMLW Web Development.docx Actors Actor Description MLW User Marine LitterWatch application user. Administrators Marine LitterWatch system administrators

4. The survey is updated on the remote database.

5. The system displays a successful survey update message.

Alternative Paths

Save the survey locallyIf the user, instead of the ‘Submit’ button, clicks on ‘Save’ button the survey is locally saved (it is not submitted) even if no event code has been provided.Survey not editable (green icon)If the gap between the submission date and event ‘end date’ (‘start date’ if no ‘end date’ is available for the event) is greater or equals to 28 days the survey is not editable and the system displays an error message.

Pre-Conditions

The user in on the Survey List view.

Post-Conditions

The selected survey is updated.

3.5.5 Delete Survey

ID UC_Delete_Survey

Name Delete Survey

Platform Android and iOS

Author Bilbomatica

Date 08/04/2014

Summary This use case describes how a user deletes a survey using Marine LitterWatch application.

Basic Path 1. User clicks on ‘Delete’ button. To be able to delete the survey:

a. Survey is locally saved (red icon).

2. The system asks the user to confirm the deletion.

3. The user confirms the survey deletion.

4. The survey is deleted on the local database.

5. The system displays a successful survey deletion message.

Alternative Paths

User does not confirm the deletionThe survey deletion is cancelled.

Pre-Conditions

The user in on the Survey List view.

Page 27 of 38

Page 28: MLW Mobile Use Cases · Web viewMLW Web Development.docx Actors Actor Description MLW User Marine LitterWatch application user. Administrators Marine LitterWatch system administrators

Post-Conditions

The selected survey is deleted.

3.5.6 Add/Remove item

ID UC_Add_Remove_Item

Name Add/Remove Item

Platform Android and iOS

Author Bilbomatica

Date 08/04/2014

Summary This use case describes how a user adds or removes items to/from the survey item list using Marine LitterWatch application.

Basic Path 1. User clicks on the ‘add item’ icon.

2. The system displays the full item list. Survey item list elements are selected by default.

3. The user can search by item code and name (UC_Search_Item).

4. The user selects/unselects desired items from the list.

5. The user clicks on ‘Add/Remove items’ button.

6. The Survey view (creation / edition) is displayed again.

a. The selected items are added to the survey item list (count = 0)

b. The unselected items are removed from the survey item list.

Alternative Paths

Add buttonIf the user clicks on the ‘Add’ button for a specific item. Only this item is added to the survey item list (count = 1)

Pre-Conditions

The user in on the Survey view (creation / edition).

Post-Conditions

The selected items are added to the survey item list (count = 0)The unselected items are removed from the survey item list.

3.5.7 Search item

ID UC_Search_Item

Name Search Item

Page 28 of 38

Page 29: MLW Mobile Use Cases · Web viewMLW Web Development.docx Actors Actor Description MLW User Marine LitterWatch application user. Administrators Marine LitterWatch system administrators

Platform Android and iOS

Author Bilbomatica

Date 08/04/2014

Summary This use case describes how a user searches items using Marine LitterWatch application.

Basic Path 1. User clicks on the search icon (magnifying glass).

2. The user provides a search filter by name or code.

3. The item list is filtered using entered criteria.

Alternative Paths

None

Pre-Conditions

The user in on the Survey view or in the Add Item view.

Post-Conditions

The item list is filtered using user criteria.

Page 29 of 38

Page 30: MLW Mobile Use Cases · Web viewMLW Web Development.docx Actors Actor Description MLW User Marine LitterWatch application user. Administrators Marine LitterWatch system administrators

3.6 Wizarduc Wizard

MLW User

Marine LitterWatch Application

«abstract»Wizard

Create Survey

Create Event

Create Beach

«include»

«include»

«include»

ID UC_Wizard

Name Wizard

Platform Android

Author Bilbomatica

Date 08/04/2014

Summary This use case describes how a user can create a beach, an event and a survey using the Marine LitterWatch application wizard.

Basic Path 1. User clicks on ‘Set up beach/event/survey’ button.

2. The user is redirected to UC_Create_Beach (step 2)

3. After the Beach is created, the user is redirected to UC_Create_Event (step 2) with the recently created Beach selected.

4. After the Event is created, the user is redirected to UC_Create_Survey (step 3) with the recently created Event selected.

Alternative No internet connection

Page 30 of 38

Page 31: MLW Mobile Use Cases · Web viewMLW Web Development.docx Actors Actor Description MLW User Marine LitterWatch application user. Administrators Marine LitterWatch system administrators

Paths The system displays an error message when the user tries to access ‘events’ option with no internet connection.

Pre-Conditions

The user in on the Home view.

Post-Conditions

A beach, event and survey are created.

Page 31 of 38

Page 32: MLW Mobile Use Cases · Web viewMLW Web Development.docx Actors Actor Description MLW User Marine LitterWatch application user. Administrators Marine LitterWatch system administrators

4 Database model

4.1 Server

Date: 14/05/2014 Page 32 of 38

Page 33: MLW Mobile Use Cases · Web viewMLW Web Development.docx Actors Actor Description MLW User Marine LitterWatch application user. Administrators Marine LitterWatch system administrators

CATEGORYOBJECTIDpk_category_id

update_process

update_date

CATEGORY_DESCOBJECTID

pfk_category_idpfk_language_id

category_description

EVENTOBJECTID

pk_eventcodefk_beachcodefk_communitycode

start_datedescription

created

updated

fk_user_iditemlist

IsPublicpeople_attended

summary

ITEMOBJECTID

pfk_itemcodeitemcount

pfk_survey_id

ITEMLOOKUPOBJECTIDpk_itemcode

fk_category_idgeneralcode

level1_materialslevel2_generaluse

level3generalname

descriptionmaterial

purposeusage

source

problem1problem2

corebeach

seafloorfloating

biotamicro

regionalupdate_date

update_processIsToplist

ITEMLOOKUP_DESCOBJECTID

pfk_item_codepfk_language_id

item_descriptionitem_description_long

LANGUAGEOBJECTID

pk_language_id

language_description

SURVEYOBJECTID

fk_user_idcreate_date

update_dateGlobalID

Comments

other_items

other_commentsgroup_people

fk_eventcode

USERSOBJECTID

fk_communitycodeuser_token

user_social_network

username

countrycodeGlobalID

BEACHOBJECTIDpk_beachcodefk_communitycode

fk_user_idname

countrycodeitems_list

SHAPEitemlist

external_linkdescription

security_infolength

national_referencebeach_type

beach_location

COMMUNITYOBJECTIDpk_communitycode

namewebsite

contactdescription

itemlist

SOCIAL_NETWORKSOBJECTIDnetwork_id

network_name

Page 33 of 38

Page 34: MLW Mobile Use Cases · Web viewMLW Web Development.docx Actors Actor Description MLW User Marine LitterWatch application user. Administrators Marine LitterWatch system administrators

4.1.1 Server tables

Page 34 of 38

Page 35: MLW Mobile Use Cases · Web viewMLW Web Development.docx Actors Actor Description MLW User Marine LitterWatch application user. Administrators Marine LitterWatch system administrators

Page 35 of 38

Page 36: MLW Mobile Use Cases · Web viewMLW Web Development.docx Actors Actor Description MLW User Marine LitterWatch application user. Administrators Marine LitterWatch system administrators

4.2 Client (Android and iOS)

Page 36 of 38

Page 37: MLW Mobile Use Cases · Web viewMLW Web Development.docx Actors Actor Description MLW User Marine LitterWatch application user. Administrators Marine LitterWatch system administrators

4.2.1 CATEGORY

4.2.1.1 Indexes

4.2.2 CATEGORY_DESC

4.2.2.1 Indexes

4.2.3 ITEM

4.2.3.1 Indexes

4.2.4 ITEM_DESC

4.2.4.1 Indexes

4.2.5 LANGUAGE

Date: 14/05/2014 Page 37 of 38

Page 38: MLW Mobile Use Cases · Web viewMLW Web Development.docx Actors Actor Description MLW User Marine LitterWatch application user. Administrators Marine LitterWatch system administrators

4.2.5.1 Indexes

4.2.6 SURVEY

4.2.6.1 Indexes

4.2.7 SURVEY_ITEMS

4.2.7.1 Indexes

4.2.8 USER

4.2.8.1 Indexes

Page 38 of 38