Thursday, March 10, 2011

Feature Development - Defining Features in Terms of User Roles

As a business owner, it is vital to have a common "language" that you can communicate with your developers.  In the feature development phase you will define the features of your site through user stories.

Let's take a look at the following idea.


Screwed up Things in Public Area - By Kenneth

User scenario:

  1. Peter was walking at Robson street.
  2. He saw some naked guy walking on the street.
  3. He sent that message out using his iPhone.
  4. People who were around them and were on this application were alerted.
  5. They went and found this naked guy.


Idea:

Share screwed up things you saw/experienced real time in your location.


Motivation:

  • Real time reporting is a big trend.  Usually, people who are alerted of the news are unable to see the event because it’s passed.  Now with GPS reporting, at least people who are close by can come and see it.
  • People want to share surprising things/events real time with their friends
  • People want to know what kind of things are happening around them - in this case, location.

The example above contains the description of the project, a user scenario, and some reasons why users may use the site.  The example above should be self explanatory.

User stories are defined into user roles.  Each role will be allowed to do different things.  A typical site will have user roles like administrators, visitors, and members.

You will want to define each user feature as specific as possible.  Your developers will translate these user stories into features.  And they will most likely come back to you with questions.  As a business owner, you will need to guide them.  The documents/informations you have collected in the research phase will surely help you with that.

Here are the user stories for the above project.


As a visitor (not yet a member)

I want to submit a story by location.

- location is defined as
  • zip
  • address
  • longitude and latitude
  • GPS

I want to view the most popular stories. (popularity defined as total number of combined votes)
  • total number of yes and no votes over a period of time
  • total number of comments
  • total number of yes votes
  • total number of no votes
I want to view the most popular stories near me.
- "near me" is defined as
  • within x km radius of where I am - gps mobile phones
  • in my city (set in profile page) - PC

I want to view the popularity of any comments.
  • number of thumbs up VS number of thumbs down
  • good solution VS bad solution

I want to view the popularity of any stories.
  • number of votes for yes
  • number of votes for no

I want to register on the site.
  • ask for only user name and email as step 1; send email verification; if clicked, continue to set password and default city

As a member (extends visitor role functionalities)

I want to view the stories that I have submitted.

I want to comment on any stories.

I want to view the posts I have posted a comments on.
  • bookmark when a post is voted or commented on

(optional) I want to view the posts I have voted on.

(optional) I want to view the comments I have voted on.

I want to vote on rather a post is a epic or not.
  • “epic” VS “fail”
  • “You made by day” VS “Not worth mentioning”

I want to change my password.

I forgot my password.

I want to change my profile information.

I want to set my default city.

I want to see my ranking. (Statusphere)
  • points and badges system

(to be expanded later) I want to use the site using my mobile device.

I want to flag a post.


As an administrator

I want to enable/disable a post.

I want to enable/disable a user.

No comments:

Post a Comment