Docstoc

PicFolioReq

Document Sample
PicFolioReq Powered By Docstoc
					        West Virginia University

Lane Department of Computer Science and Electrical
                   Engineering

         Advanced Software Engineering

                   Spring 2009




       Software Requirements Specification

                February 13, 2009

                     PicFolio

                     Created By:
                   Brett Carpenter
                   Kathryn Ehrlich
                    Jason Spencer
Table of Contents

1.0 INTRODUCTION .................................................................................................................................. 6
    1.1 GOALS AND OBJECTIVES ....................................................................................................................... 6
    1.2 STATEMENT OF SCOPE .......................................................................................................................... 6
    1.3 SOFTWARE CONTEXT ............................................................................................................................ 7
    1.4 MAJOR CONSTRAINTS ........................................................................................................................... 7
2.0 USAGE SCENARIO .............................................................................................................................. 7
    2.1 USER PROFILES ..................................................................................................................................... 7
    2.2 USE-CASES............................................................................................................................................ 8
3.0 DATA MODEL AND DESCRIPTION ...............................................................................................11
    3.1 DATA DESCRIPTION .............................................................................................................................11
       3.1.1 Data objects ................................................................................................................................11
       3.1.2 Relationships ...............................................................................................................................11
       3.1.3 Complete data model ..................................................................................................................12
       3.1.4 Data dictionary ...........................................................................................................................12
4.0 FUNCTIONAL MODEL AND DESCRIPTION ................................................................................12
    4.1 APPLICATION FUNCTIONS ....................................................................................................................13
       4.1.1 Login ...........................................................................................................................................13
       4.1.2. Logout ........................................................................................................................................13
       4.1.3. Import Photo ..............................................................................................................................13
       4.1.4. Take Photo .................................................................................................................................13
       4.1.5. Save Photo .................................................................................................................................13
       4.1.6. Delete Photo...............................................................................................................................13
       4.1.7. Upload Photo .............................................................................................................................13
       4.1.8. Upload Album ............................................................................................................................13
       4.1.9. Make Album ...............................................................................................................................13
       4.1.10 Add to Album.............................................................................................................................14
       4.1.11 Edit Album ................................................................................................................................14
       4.1.12 Remove from Album ..................................................................................................................14
       4.1.13 Delete Album .............................................................................................................................14
       4.1.14 Register Account .......................................................................................................................14
       4.1.15 View Friend’s Portfolio ............................................................................................................14
    4.2 WEB PAGE FUNCTIONS ........................................................................................................................14
       4.2.1 Login ...........................................................................................................................................14
       4.2.2 Logout .........................................................................................................................................14
       4.2.3 View Album .................................................................................................................................15
       4.2.4 Add Comment ..............................................................................................................................15
       4.2.5 Delete Comment ..........................................................................................................................15
       4.2.6 Edit Album ..................................................................................................................................15
       4.2.7 Edit Photo ...................................................................................................................................15
       4.2.8 Delete Photo................................................................................................................................15
       4.2.9 Delete Album ...............................................................................................................................15
       4.2.10 Flag Photo ................................................................................................................................15
       4.2.11 Change Password .....................................................................................................................15
       4.2.12 Forgot Password .......................................................................................................................16
       4.2.13 Search for Friends ....................................................................................................................16
       4.2.14 Add to Friends...........................................................................................................................16
    4.3 ADMINISTRATOR FUNCTIONS ..............................................................................................................16
       4.3.1 Check Picture Flag .....................................................................................................................16
       4.3.2 Delete Photo................................................................................................................................16
      4.3.3 Delete User .................................................................................................................................16
      4.3.4 Delete Album ...............................................................................................................................16
      4.3.5 Ban IP/Email ...............................................................................................................................17
      4.3.6 Mass Email to Users ...................................................................................................................17
   4.4 SOFTWARE INTERFACE DESCRIPTION ..................................................................................................17
      4.4.1 External machine interfaces ........................................................................................................17
      4.4.2 External system interfaces ..........................................................................................................17
      4.4.3 User interface..............................................................................................................................17
   4.5 CONTROL FLOW DESCRIPTION..............................................................................................................18
5.0 BEHAVIORAL MODEL AND DESCRIPTION................................................................................18
   5.1 DESCRIPTION FOR SOFTWARE BEHAVIOR ............................................................................................18
      5.1.1 Web Software Events ...................................................................................................................18
           5.1.1.1 Incorrect User name or Password ........................................................................................................ 18
           5.1.1.2 Correct User name and Password ........................................................................................................ 18
           5.1.1.3 Access Level is “Administrator” ......................................................................................................... 18
           5.1.1.3 Access Level is “Member” .................................................................................................................. 18
           5.1.1.4 Comment Submission ......................................................................................................................... 18
           5.1.1.5 Flagging a Photograph ........................................................................................................................ 18
           5.1.1.6 View Photos/Albums........................................................................................................................... 18
           5.1.1.7 Committing Information ..................................................................................................................... 19
           5.1.1.8 Submitting a Search ............................................................................................................................ 19
           5.1.1.9 Selecting a Subscription ...................................................................................................................... 19
           5.1.1.10 Selecting Option from Menu ............................................................................................................. 19
           5.1.1.11 Verifying the Username/IP Ban ........................................................................................................ 19
           5.1.1.12 Submitting Photo/Album/Content Edits ............................................................................................ 19
           5.1.1.13 Forgotten Password ........................................................................................................................... 19
           5.1.1.14 Deleting a Flagged Photo .................................................................................................................. 19
           5.1.1.15 Registration Event ............................................................................................................................. 19
           5.1.2.9 View Friend’s Portfolio ....................................................................................................................... 20
       5.1.2 Phone Software Events................................................................................................................20
           5.1.2.1 Registration Event ............................................................................................................................... 20
           5.1.2.2 Login ................................................................................................................................................... 20
           5.1.2.3 Logout ................................................................................................................................................. 20
           5.1.2.4 Menu Option Event ............................................................................................................................. 20
           5.1.2.5 Save Photo........................................................................................................................................... 20
           5.1.2.6 Uploading a Photo ............................................................................................................................... 20
           5.1.2.7 Viewing a Album/Photo ...................................................................................................................... 20
           5.1.2.8 Submitting Edits for Album or Photo .................................................................................................. 20
           5.1.2.9 View Friend’s Portfolio ....................................................................................................................... 21
       5.1.3 Web Software States ....................................................................................................................21
           5.1.3.1 Registration ......................................................................................................................................... 21
           5.1.3.1 Login ................................................................................................................................................... 21
           5.1.3.2 Member Interface ................................................................................................................................ 21
           5.1.3.3 View Photos/Albums........................................................................................................................... 21
           5.1.3.4 Edit Photos/Albums/Content ............................................................................................................... 21
           5.1.3.5 Searching............................................................................................................................................. 21
           5.1.3.6 Subscribe ............................................................................................................................................. 21
           5.1.3.7 View Friends Portfolio/Albums/Photograph ....................................................................................... 21
           5.1.3.8 Flag Photo ........................................................................................................................................... 21
           5.1.3.9 Change Information............................................................................................................................. 22
           5.1.3.10 View/Delete Flagged Photos ............................................................................................................. 22
           5.1.3.11 Ban username/IP ............................................................................................................................... 22
       5.1.4 Phone Software States .................................................................................................................22
           5.1.4.1 Registration ......................................................................................................................................... 22
           5.1.4.2 Login ................................................................................................................................................... 22
           5.1.4.3 Menu ................................................................................................................................................... 22
           5.1.4.4 Upload Photograph .............................................................................................................................. 22
           5.1.4.5 Take photograph/Save Photograph...................................................................................................... 22
           5.1.4.6 View Album/Photograph ..................................................................................................................... 22
            5.1.4.7 Edit Album/Photograph....................................................................................................................... 23
            5.1.4.8 View Friends Portfolios ...................................................................................................................... 23
    5.2 STATE TRANSITION DIAGRAMS ...........................................................................................................24
6.0 RESTRICTIONS, LIMITATIONS, AND CONSTRAINTS .............................................................26
7.0 VALIDATION CRITERIA ..................................................................................................................26
    7.1 CLASSES OF TESTS AND RESPONSES ....................................................................................................26
       7.1.1. Incorrect Login ..........................................................................................................................26
       7.1.2. Incorrect Photo Format .............................................................................................................26
       7.1.3. Unavailable Username ..............................................................................................................26
       7.1.4. Blank Comment ..........................................................................................................................26
    7.2 PERFORMANCE BOUNDS.......................................................................................................................26
8.0 APPENDICES .......................................................................................................................................27
    8.1 PRODUCT STRATEGIES .........................................................................................................................27
Figure Index

Figure 1: Use Case Diagram that is true for all users of the PicFolio Website. ................. 8
Figure 2: Use Case Diagram of distinct iPhone Application uses. ..................................... 9
Figure 3: Use Case Diagram of distinct Administrator uses. ........................................... 10
Figure 4: Entity Relationship Diagram of the Data Objects in PicFolio. ......................... 12
Figure 5: State Diagram for PicFolio Website .................................................................. 24
Figure 6: State Diagram for phone PicFolio Application ................................................. 25
1.0 Introduction
This document contains the specification of PicFolio, the product to be developed. This
product will consist of two components; a blackberry application and a user friendly
website. Together, these two parts will act as an internet based photo portfolio. The
application for the Blackberry will allow a user to group pictures they’ve taken on their
phone into albums (which can be named). The application will then allow the user to
upload these albums or pictures to their personal photo portfolio. When the pictures are
uploaded, they will keep their groupings, or can be reorganized and grouped again. The
website can be accessed by a user via the internet using either their phone or a computer
with an internet connection. The user will have a unique username and password in order
to access their account. A user’s web page will be customizable, including the
permissions to albums and color design of their portfolio web page.

The website will be accessible to anyone who has an internet connection and Email
address for registration purposes. The phone application will only work for owners of
Blackberry mobile phones. Users who do not own a Blackberry will be able to upload
photos from their computer to their personal photo portfolio; therefore, making this
product available to a wider range of customers.

       1.1 Goals and objectives
       The goal of PicFolio is to provide an accessible and easy to use photo portfolio.
       Also, PicFolio plans to provide an easy storage facility for Blackberry users who
       use their phone as their personal camera. The product will give the user the ability
       to upload their photos to a safe location before they continue taking more pictures.
       It will give users the convenience of data archiving without having to stop to
       download files onto their home computer.

       1.2 Statement of scope
       The phone application will give the user the option to import pictures previously
       taken on their Blackberry or take a photo from within the application. The user
       will also be able to organize their photos into albums and give the albums unique
       names. Once the user has albums made, he/she will be able to send them to their
       personal photo portfolio web page where they will be hosted and available for
       other users of the website to view and comment on.

       The website will give any person with an internet connection and Email address
       the chance to register with the website and create their own personal photo
       portfolio. These users will not necessarily own a Blackberry, but they will have
       nearly the same functionality through the website as they would through a
       Blackberry phone.

       The website will have two login types: member and administrator. Users that own
       a Blackberry or are a registered user through the website have the member login
       type (unless granted administrator status by those who maintain the system). The
       administrator login type is reserved for users that are site owners or who work for
    the website. Administrative users will have all the same functionality when using
    the website as member users do, but will have a set of unique menu options that
    will allow them to take action on users uploading or posting inappropriate photos
    or comments.

    1.3 Software context
    The application will be available exclusively on the Blackberry phones. These
    phones are available through most cell phone providers. The target audience for
    this product is limited to Blackberry users who utilize and download mobile
    applications. The audience for the website is limited to those who have an internet
    connection and Email address.

    1.4 Major constraints
    A major constraint of the application portion of this product is the fact that it will
    only be compatible with Blackberry software. The website, however, will be
    accessible to anyone with an internet connection.

2.0 Usage scenario
    2.1 User profiles
    Blackberry Users – Blackberry users are those who will have access to the
    application portion of the PicFolio product. Through the application they will also
    be registered users of the website.

    Website Users – Website Users, Blackberry Users, and any other person who is
    registered with PicFolio (this also includes Administrative Users).

    Administrative Users – Administrative Users are site owners, or people who work
    for the benefit of the website. Administrative Users have access to all other user
    functions plus the functions listed in section 4.3 of this document.
2.2 Use-cases
Figures 1, 2, and 3 below show the different use cases for the users of PicFolio.
Figure 1 shows the use cases where all users utilize the system. Figures 2 and 3
show the distinct uses for the phone application and Administrative Users.




   Figure 1: Use Case Diagram that is true for all users of the PicFolio Website.
Figure 2: Use Case Diagram of distinct Phone Application uses.
Figure 3: Use Case Diagram of distinct Administrator uses.
3.0 Data Model and Description
    3.1 Data Description
    The PicFolio product will utilize a few different data objects. These objects will
    be the main sources of the information the product needs in order to function
    properly. The data will come in the form of usernames, passwords, photo files,
    and folders containing a group of photo files.

           3.1.1 Data objects
           The first data object is the user. The user will contribute their username,
           password and any files or folder of files they want to upload via the
           internet through use of the website or the application. The user will supply
           a unique username for login purposes, and they will supply their email
           address so that the administrator can easily send emails to the users. The
           users will also have a penname that they can supply that will allow other
           users to identify them with.

           The second data object is a photo file. These files are uploaded to the web
           page via the internet using either the application or the web page. Each file
           will have a name which will be associated with the photo when it is
           uploaded.

           The third data object is the folder that is named, which is also known as an
           album. These folders will contain multiple files, each containing a photo
           and with their own name. When the folder is uploaded as an album, the
           album will take the name of the folder, and the photos held in the folder
           will be labeled with their individual file names.

           3.1.2 Relationships
           The relationships between the data objects above can be seen in Figure 4
           of this document. The user data object will communicate with the files and
           folders related to them through the functions described in section 4.0.
              3.1.3 Complete data model




             Figure 4: Entity Relationship Diagram of the Data Objects in PicFolio.




              3.1.4 Data dictionary
              The data for the PicFolio product will be kept in two to three data stores.
              The first database will contain user login information. The second
              database will keep track of each user’s albums and individual picture
              information. The third will store the comments users can make on an other
              user’s picture or album.

4.0 Functional Model and Description
In the following sections, the major functions of the PicFolio product will be described.
The functions are separated into three major categories, which include: Application
Functions, Web Functions, and Administrator Functions. The Web Functions are
available to all users of the internet software. The Application Functions are limited to
Blackberry Users and the Administrative Functions are limited to only the Administrative
users. This section also contains information about the user interfaces of the phone
application and the website. All of this information is further displayed and connected
together with the data flow diagram seen in section 4.5.
4.1 Application Functions
          4.1.1 Login
          The Login function will log a user into the Blackberry application when
          provided with the proper credentials.

          4.1.2. Logout
          The Logout function allows the user to end their connection and exit the
          phone application. Logging out will return the user to last menu screen
          they used on their Blackberry.

          4.1.3. Import Photo
          The Import Photo function allows the user to import photos currently on
          their Blackberry to the PicFolio application for them to group into albums
          and later upload to their web photo portfolio.

          4.1.4. Take Photo
          The Take Photo function allows the user to take a photo using the
          Blackberry’s built in camera.

          4.1.5. Save Photo
          The Save Photo function allows the user to save the photo in which they
          have just taken so it can be used later with the PicFolio application.

          4.1.6. Delete Photo
          The Delete Photo function works in three different ways. First, it allows
          the user to discard a photo taken within the application. Second, it allows
          the user to discard photos that were previously saved. Third, it allows the
          user to delete a photo that had been previously uploaded to the website.

          4.1.7. Upload Photo
          The Upload Photo function allows the user to browse to a photo on their
          Blackberry to upload to the website.

          4.1.8. Upload Album
          The Upload Album function allows the user to browse to an album on
          their Blackberry to upload to the website.

          4.1.9. Make Album
          The Make Album function allows the user to create an album of photos on
          their Blackberry. In order to do this, the user will be able to go to a menu
          that will show all photos that they have taken and are not in an album.
          Once at this menu, the user will be able to check off the photos they want
    to group together into an album. When they are finished selecting photos
    they can then select “finish,” which will create the album.

    4.1.10 Add to Album
    The Add to Album function allows the user to select an album in which
    they want to add a selected photo. The selected photo then becomes part of
    that particular album.

    4.1.11 Edit Album
    The Edit Album function allows the user to edit characteristics about the
    album such as the name and the order of photos.

    4.1.12 Remove from Album
    The Remove from Album function allows the user to remove a selection
    of photos from a particular album. The photos will no longer be apart of
    the album.

    4.1.13 Delete Album
    The Delete Album function allows the user to delete an entire album. This
    will also discard an album on their phone or form the website.

    4.1.14 Register Account
    The Register Account function will only be executed the first time the
    application is downloaded onto the Blackberry. The function will allow
    the Blackberry User to register with the website, creating their photo
    portfolio.

    4.1.15 View Friend’s Portfolio
    The View Friend’s Portfolio function will allow the user of the Blackberry
    to quickly link to a friend’s PicFolio web page and then display their
    friend’s albums and photos.


4.2 Web Page Functions
    4.2.1 Login
    The Login function will log a user in to their website account when
    provided with the proper credentials. Upon login, the user will have access
    to all of their photographs and albums.

    4.2.2 Logout
    The Logout function will log the user out of the website and end their
    session. Once the user is logged out, they will be taken to the login
    screen.
4.2.3 View Album
The View Album function will access the user's photo album and present
it to the user via the website.

4.2.4 Add Comment
The Add Comment function will allow viewers to comment on a single
photo.

4.2.5 Delete Comment
The Delete Comment function will allow the user to delete comments that
they may feel are inappropriate. This function will also be given to the
administrator for all user comments.

4.2.6 Edit Album
The Edit Album function will allow a user to format their albums by
changing the album name or organizing the album differently.

4.2.7 Edit Photo
The Edit Photo function will allow the user to delete a photograph or edit a
caption describing the photograph.

4.2.8 Delete Photo
The Delete Photo function will allow a user to delete selected photos from
the website.

4.2.9 Delete Album
The Delete Album function will allow a user to delete an entire album and
it’s contents from the website.

4.2.10 Flag Photo
The Flag Photo function will allow users to flag inappropriate photos on
the website. After a user flags a photo, a message will be issued to the
Administrator User notifying him/her of the content.

4.2.11 Change Password
The Change Password function will allow a user to change their password
after being logged into the system. The function will take the new
password as input and a second input of the same password for
verification. Once verifying, the new password will replace the old
password in the user information data store.
     4.2.12 Forgot Password
     The Forgot Password function will allow a user to have their password
     reset by providing their login name and Email. Once providing this
     information, a message will be sent to their Email account containing a
     new password generated as a random string of characters.

     4.2.13 Search for Friends
     The Search for Friends function will allow users to search the website for
     other users using either their unique user name or their Email address.

     4.2.14 Add to Friends
     The Add to Friends function will allow users to add a link to another
     user’s web page on their own web page. This list will help connect people
     on the website and allow for the sharing of photos.

4.3 Administrator Functions
     4.3.1 Check Picture Flag
     The Check Picture Flag function allows the administrator of the website to
     see what pictures have been marked by users as inappropriate. After
     seeing the photos that have been flagged by other users, the Administrator
     can choose to delete these photos.

     4.3.2 Delete Photo
     The Delete Photo function will allow the administrator to delete photos
     that have been flagged as inappropriate by other users of the website. This
     will help keep a safe environment for all users of the website.

     4.3.3 Delete User
     The Delete User function will allow the administrator of the website to
     delete a user who is abusing the website’s policies.

     4.3.4 Delete Album
     The Delete Album function will allow the administrator of the website to
     delete an entire album that has been flagged by users for being
     inappropriate.
       4.3.5 Ban IP/Email
       The Ban IP/Email function will allow the administrator of the website to
       ban a user fro-m accessing the website. For this function to be used, the
       user must be flagged by other users on multiple occasions for
       inappropriate behavior.

       4.3.6 Mass Email to Users
       The Mass Email to Users function will allow the administrator of the
       website to send an Email to all registered users of the website. This
       function will be used to tell users about additions to the website, policy
       changes, and more.

4.4 Software Interface Description
The PicFolio product will have two interfaces for it’s users. The first will be the
application interface viewed through the use of a Blackberry phone. The second
will be the interface viewed via the website. These two interfaces will be made
similar to help ease of use. In the sections below, the document will describe how
these interfaces interact with each other.

       4.4.1 External machine interfaces
       This product will interface with two different machines. The first is the
       user’s Blackberry, which will be hosting the application. This will mean
       that the application must be compatible with the Blackberry OS. The
       second is the user’s computer, which will need to have access to a
       compatible internet browser.

       4.4.2 External system interfaces
       Both the application and the website will depend on the user having a
       connection to the internet. The operating systems of the Blackberry and
       the computer will need to have compatible browser settings in order to
       operate the PicFolio product. The internet services are external to these
       two devices, but they give a direct connection to the PicFolio product.

       4.4.3 User interface
       There are two user interfaces for the PicFolio product. The first is hosted
       on the Blackberry as a part of the application. This interface will not only
       be compatible with the Blackberry OS, and it will also be compatible with
       the Blackberry Internet Service Browser. This interface will be easy to use
       and will allow the users to take pictures, group them together, and then
       upload them onto the PicFolio website. The second interface is hosted on
       the internet as a website. This website interface will have the same sort of
       functionality as the Blackberry application, but will be compatible with all
       web browsers, allowing users who do not own a Blackberry to still take
       part in the website’s functions.
   4.5 Control flow description
   The control flow of the PicFolio product will start with the user logging in to the
   Blackberry application or to the website. From this point, the user will control
   what state they enter next by selecting different options on their menu page. This
   is described in more detail in section 5.0 and its subsequent sections.

5.0 Behavioral Model and Description
   5.1 Description for Software Behavior
          5.1.1 Web Software Events
                  5.1.1.1 Incorrect User name or Password
                  Upon entering a user name or password that is incorrect, the user
                  will return to the login page and will be prompted to enter the
                  information again.

                  5.1.1.2 Correct User name and Password
                  Once providing a user name and password that match the same
                  credentials given during registration, the user will be granted
                  access to the system. Features available in the user's interface will
                  be limited by their login type.

                  5.1.1.3 Access Level is “Administrator”
                  If the login type is administrator – the user will be given access to
                  the administrator functions, as well as the member functions.

                  5.1.1.3 Access Level is “Member”
                  If the login type is member – the user will be given access to solely
                  the member functions.

                  5.1.1.4 Comment Submission
                  After entering a comment and submitting, the text of the comment
                  is added to the comment listing udner the photograph.

                  5.1.1.5 Flagging a Photograph
                  Upon submitting a “flag” - the administrator is notified of the
                  inappropriate photograph with the corresponding link, the
                  username of the user who made the submission, and the reason for
                  the flag.

                  5.1.1.6 View Photos/Albums
                  Once clicking on an option, the user will be directed to the
                  appropriate photo or album.
5.1.1.7 Committing Information
Once the user’s preferences have been edited, they will be
submitted to the system, and the user will return to the main menu.

5.1.1.8 Submitting a Search
Once entering search criteria, the search is made and the results are
returned, sending the user back to the search state.

5.1.1.9 Selecting a Subscription
Once submitting a subscription request, the “friend” will be added
to the user’s friend list, and the user will be directed back to the
main menu.

5.1.1.10 Selecting Option from Menu
Upon clicking on an option, the user will be directed to the
appropriate state.

5.1.1.11 Verifying the Username/IP Ban
Once verifying the action, the request is made, and the username is
located and then deleted. After completion of the deletion, the user
is sent back to the main menu.

5.1.1.12 Submitting Photo/Album/Content Edits
Once entering the appropriate data, the edits are submitted and
acted upon. Once completing the edits, the user is directed back to
the main menu.

5.1.1.13 Forgotten Password
After submitting the user’s username and Email address, the user’s
password is reset and is issued an email with the new password.
The user will be prompted to check their Email.

5.1.1.14 Deleting a Flagged Photo
Once the administrator submits the photo for deletion, the photo
and any associated content is removed. After this event is
completed, the administrator is returned to the main menu.

5.1.1.15 Registration Event
Once the user has submitted registration information on the
website, the system will save the information in user data store.
The user will then be redirected to the Login screen.
          5.1.2.9 View Friend’s Portfolio
          Once the user has selected a member of their friend’s list, they will
          be redirected to that user’s albums and photos.

5.1.2 Phone Software Events
          5.1.2.1 Registration Event
          Once the user has submitted registration information, the system
          will take the information the user supplies and update the user data
          store. The user will then be logged in to the application.

          5.1.2.2 Login
          When a user has entered a username and password, the system will
          verify that they have an account and proper credentials before
          redirecting them to the main menu.

          5.1.2.3 Logout
          Once a user has submitted to logout, the system will close the
          application and end the user’s session.

          5.1.2.4 Menu Option Event
          The Menu Option Event occurs when the user has selected an
          option listed on their main menu. They will then be directed to the
          corresponding state.

          5.1.2.5 Save Photo
          Once the user has taken a photo, they will be prompted to save it.
          If they choose to save the photo, it will be stored in the system.
          Otherwise the photo will be discarded. Following this, the user will
          be directed back to the main menu.

          5.1.2.6 Uploading a Photo
          After the user has browsed for a photo and selecting upload, the
          photo will be sent to the user’s web page. When the photo is
          loaded, the user will be redirected to the main menu.

          5.1.2.7 Viewing a Album/Photo
          Once clicking on an option, the user will be directed to the
          appropriate photo or album.

          5.1.2.8 Submitting Edits for Album or Photo
          Once a user has submitted edits to be made on the album or photo,
          the user will be directed back to the main menu.
     5.1.2.9 View Friend’s Portfolio
     When the user selects a member from their friend’s list, they will
     be redirected to that user’s portfolio.

5.1.3 Web Software States
     5.1.3.1 Registration
     The user will be able to enter a registration state where they can
     enter the appropriate data to register for an account.

     5.1.3.1 Login
     This will be the first state the user enters when using the web based
     software.

     5.1.3.2 Member Interface
     After login, the member is provided with an interface listing the
     various options they will be able to access (dependent on their
     access level).

     5.1.3.3 View Photos/Albums
     This state will display albums and photos that belong to the user,
     and will allow him/her to view associated data (comments,
     captions, etc.).

     5.1.3.4 Edit Photos/Albums/Content
     This state will allow the user to edit photos or albums. This
     includes editing comments, content information, or deleting photos
     or entire albums.

     5.1.3.5 Searching
     The search state will allow a user to enter in the email address or
     username of a friend in order to locate their account with PicFolio.

     5.1.3.6 Subscribe
     Once locating a friend, the user will enter the subscribe state,
     allowing them to subscribe to a users account if they choose.

     5.1.3.7 View Friends Portfolio/Albums/Photograph
     This will be the state users enter when they are viewing another
     user's portfolio. In this state, the user will also be able to add
     comments to photographs they are viewing.

     5.1.3.8 Flag Photo
     The flag photo state will be the state the user enters if they decide
     to “flag a photo.” They will be prompted to verify the action, and
     provide a description as to why the request is being made.
     5.1.3.9 Change Information
     The user will enter the change information state when they choose
     to edit their preferences (password, pen name).

     5.1.3.10 View/Delete Flagged Photos
     The administrator will enter this state to review photos that are
     questionable, see the usernames associated with these photos, and
     then delete either the user or photo from the system.

     5.1.3.11 Ban username/IP
     The administrator will enter this state if he/she chooses a user
     name to consider banning (from the flagged photo list) as a
     verification for the deletion.

5.1.4 Phone Software States
     5.1.4.1 Registration
     If the user does not have an account, they can enter a registration
     state where they can enter information and sign up.

     5.1.4.2 Login
     This will be the first state the user enters when using the software.
     Login information will have to be provided to continue using the
     software.

     5.1.4.3 Menu
     This will be the state where the user can choose from the list of
     features provided by the phone application.

     5.1.4.4 Upload Photograph
     This state will present the user with features to choose the file path
     of a photo or album, add a caption to that photo/album, and then
     upload that photo/album to the website.

     5.1.4.5 Take photograph/Save Photograph
     The user will enter the phone's picture capturing mode and will be
     able to save it to their hard drive or discard the photo if they do not
     want to it saved.

     5.1.4.6 View Album/Photograph
     The user will be in a state which presents him/her with the existing
     photos and albums on their PicFolio account.
5.1.4.7 Edit Album/Photograph
The user will be in a state where they can edit or delete the album,
photograph, or information associated with either item.

5.1.4.8 View Friends Portfolios
This state will allow the user to view the albums and photos of
friends they have designated on their account.
5.2 State Transition Diagrams




                 Figure 5: State Diagram for PicFolio Website
Figure 6: State Diagram for iPhone PicFolio Application
6.0 Restrictions, Limitations, and Constraints
The product’s phone application will be limited to those who have a Blackberry device,
and data plan. The web page portion of this product will be limited to those who have a
supported web browser and internet connection. The web page is not limited to customers
of the Blackberry, but is open to any users with a login ID and password. This product, as
a whole, is limited when there is no connection to the internet. Although the application
will still be able to take pictures and group those pictures into albums, the application will
not be able to upload those pictures to the web page if no internet connection is available.
The web page will also only be accessible when a connection to the internet is made.

7.0 Validation Criteria
The validation process has the intention of testing the system to ensure that all possible
flaws are handled properly and the system does not fail. The possible error cases are
listed with their appropriate response in the following section.

       7.1 Classes of Tests and Responses
               7.1.1. Incorrect Login
               If the user attempts to login with the incorrect information, an error
               message will be displayed asking them to attempt to login again.

               7.1.2. Incorrect Photo Format
               If the user attempts to Import a file that is not a photo they will be
               prompted that the file they chose is ineligible to be imported, the software
               will then ask them to choose a different file.

               7.1.3. Unavailable Username
               During registration - if the username selected by the user is already taken,
               then he / she will be given an error message and prompted to choose a
               different username.

               7.1.4. Blank Comment
               If the user submits a blank comment, he / she will be warned that the
               comment field was left blank and that it will not be posted.

       7.2 Performance bounds
       Due to the fact that the application is on a phone, upload speeds would be
       determined by the network in the users’ area. Likewise, when the user accesses
       their account via the Internet the speeds would be determined by the user's
       Internet Service Provider. The major performance factor of the system is speed, as
       a user would not want to wait extensive amounts of time to upload their photos.
       However, the performance is up to the network speeds that the user has with their
       phone and internet connection, not the system itself.
8.0 Appendices
    8.1 Product Strategies
    The PicFolio application will be marketed as a tool for the user's mobile device
    that will make organizing and sharing their photos easier. The application could
    easily be adopted as a tool for a photography class to be used by the students.
    Students could easily keep their portfolios and give their professors direct access
    to their work. Teachers could easily evaluate the photos from the web, and leave
    comments for improvements or comments of praise on individual photos. Other
    uses could be employed or suggested to customers such as sharing memories from
    ceremonies such as weddings and gradation, to sharing family moments such as
    vacations. The Application will most likely be offered for free in order to attract
    more users, which means that anyone with the appropriate phone can obtain the
    application for their own use.

    The website will be available to everyone to use, and not limited to those with
    Blackberry devices. Which means they could easily upload and share their photos
    from their computer as opposed to a phone, and participate in the same way those
    with the phone application do. The same type of activities previously stated could
    be done without the phone application, the difference is that as soon as a user with
    the phone application takes their photos they can instantly organize them and
    upload them before they even touch their computer.

				
DOCUMENT INFO
Shared By:
Categories:
Tags:
Stats:
views:4
posted:7/11/2011
language:English
pages:27