mlw mobile use cases · web viewmlw web development.docx actors actor description mlw user...
TRANSCRIPT
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
4 Database model
4.1 Server
Date: 14/05/2014 Page 32 of 38
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
4.1.1 Server tables
Page 34 of 38
Page 35 of 38
4.2 Client (Android and iOS)
Page 36 of 38
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
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