Skip to content
This repository has been archived by the owner on Apr 22, 2021. It is now read-only.

Features (Use Cases)

jlchereau edited this page May 15, 2014 · 13 revisions

All features should be available in browsers, Phonegap apps and possibly Chrome Web Apps without compromising the stateless architecture.

##Feature Heartbeat (api endpoint + ui button)
As an anonymous (or authenticated) user
I want to be able to get a Heartbeat
So that I know that my server is running

##Feature Error (api endpoint + ui button)
As an anonymous (or authenticated) user
I want to be able to get an Error
So that I can check i18n error reporting (code + message)

##Feature List Content (api endpoint + ui button)
As an anonymous (or authenticated) user
I want to be able to list content
So that I can select content to edit (update) or delete

##Feature Authentication As a [Facebook|Google|Twitter|Windows Live and eventually LinkedIn|Yahoo] User
I want to be able to sign in (authenticate)
So that I can view my profile and modify the content list

Scenario 1: Successful login
Scenario 2: Unsuccessful login

##Feature Values As an authenticated user
I want to be able to access protected values unavailable to anonymous users
So that I can check authentication

Scenario 1: authenticated users can access values
Scenario 2: anonymous users get a 401 - Unauthorized response

##Feature Profile As an authenticated user
I want to be able to view my protected profile
So that I can check my details

Scenario 1: authenticated users can access their profile
Scenario 2: anonymous users get a 401 - Unauthorized response

##Feature Create Content As an authenticated user
I want to be able to add content to a list
So that I can manage more content

Scenario 1: authenticated users can create content
Scenario 2: anonymous users get a 401 - Unauthorized response

##Feature Edit and Update Content As an authenticated user
I want to be able to edit and update content
So that I can make corrections to existing content

Scenario 1: authenticated users can edit and update content
Scenario 2: anonymous users get a 401 - Unauthorized response

##Feature Delete Content As an authenticated user
I want to be able to delete content
So that I can remove content not more needed

Scenario 1: authenticated users can delete content
Scenario 2: anonymous users get a 401 - Unauthorized response

##Feature Post Social Message As an authenticated user
I want to be able to post a social message with a message and a link to share
So that my friends know how much I like Phonegap.Express

Scenario 1: user is online
Scenario 2: user is offline and the server posts the message on his behalf

##Feature Link/Unlink Accounts As an authenticated user
I want to be able to Link/Unlink other social accounts
So that I can post messages to multiple social networks

Scenario 1: Link account
Scenario 2: Unlink account
Scenario 3: Unlink last account
Scenario 4: Use verified email addresses to automatically link accounts

##Feature Sign out As an authenticated user
I want to be able to sign out
So that signing in again (possibly with any account) is required to further use protected features

Scenario 1: Same device
Scenario 2: Multiple devices (signin/signout on one device should only affect this device)

##Feature token expiration As an authenticated user
When my bearer token expires
I want ?????????????????????? [TODO: what is possible/advisable?]

Note: beware time zones

See: https://developers.facebook.com/blog/post/2011/05/13/how-to--handle-expired-access-tokens/
Scenario 1: The token expires after expires time.
Scenario 2: The user changes his password which invalidates the access token.
Scenario 3: The user de-authorizes your app.
Scenario 4: The user logs out of [Facebook|Google|Twitter|Windows Live].

Clone this wiki locally