JCL

FEUP/DEI & INESC TEC

User Tools

Site Tools


teach:lbaw:medialib:a02

A2: Actors and User stories

This artifact contains the specification of the actors and their users stories, serving as agile documentation of project requirements.

1. Actors

For the MediaLibrary system, the actors are represented in Figure 1 and described in Table 1.


Figure 1: Actors.

Identifier Description Examples
User Generic user that has access to public information, such as collection's items n/a
Visitor Unauthenticated user that can register itself (sign-up) or sign-in in the system n/a
Reader Authenticated user that can consult information, insert works and items, manage list of interests, request the loan of items and comment the works of the collection jlopes
Owner Authenticated user that belongs to the same location as the creator of an item and can change the existing information or lend and record the return of items jlopes
Administrator Authenticated user that is responsible for the management of users and for some specific supervisory and moderation functions admin
OAuth API External OAuth API that can be used to register or authenticate into the system. Google

Table 1: Actor's description

2. User Stories

For the MediaLibrary system, consider the user stories that are presented in the following sections.

Visitor

Identifier Name Priority Description
US01 Sign-in high As an Visitor, I want to authenticate into the system, so that I can access privileged information
US02 Sign-up high As Visitor, I want to register myself into the system, so that I can authenticate myself into the system
US03 Sign-up using external API low As a Visitor, I want to register a new account linked to my Google account, so that I can access privileged information
US04 Sign-in using external API low As a Visitor, I want to sign-in through my Google account, so that I can authenticate myself into the system

Table 2: Visitor's user stories

User

Identifier Name Priority Description
US11 See Home high As an User, I want to access home page, so that I can see a brief website's presentation
US12 See About high As an User, I want to access the about, so that I can see a complete website's description
US13 Consult Services high As an User, I want to access the services information, so that I can see the website's services
US14 Consult FAQ high As an User, I want to access the FAQ, so that I can see Frequently Asked Questions
US15 Consult Contact high As an User, I want to access contacts, so that I can see a contact I need
US16 Search high As an User, I want to consult all the public information, so that I be informed
US17 See statistics medium As an User I want to check usage statistics (for example the top of most requested works), so that I stay informed

Table 3: User's user stories

Reader

Identifier Name Priority Description
US21 Add item high As a Reader, I want to add an item (Movie, Book, Album, etc.) indicating its attributes (the corresponding work) and the media (paper, CD, MP3, DVD, VHS, MP4, AVI, etc.), so that it can be consulted
US22 Wish list add high As a Reader, I want to add an item to my wish list, so that I can complete the loan
US23 Wish list remove high As a Reader, I want to remove an item from my wish list, so that I can forget the item
US24 Loan item high As a Reader, I want to loan an item, so that I can use it.
US25 Comment high As a Reader, I want to register a commentary, so that I can manifest my opinion
US26 Rate high As a Reader, I want to register a "Like", so that I classify a work.
US27 Profile high As a Reader, I want to change my information, so that I can keep it updated (e.g. changing the password)

Table 4: Reader's user stories

Owner

Identifier Name Priority Description
US31 Update item high As Owner, I want to change the information of an item, so that it is up-to-date
US32 Lend item high As Owner, I want to register the loan of an item, so that it is unavailable
US33 Return item high As Owner, I want to record the return of an item, so that it become available
US34 Remove item high As Owner, I want to record the unavailability of an item, so that I update the status

Table 5: Owner's user stories

Administrator

Identifier Name Priority Description
US41 Remove comments high As an Admin, I want to remove a comment, so that I remove inappropriate comments
US42 Accept user high As an Admin, I want to accept the registration of a new system user, so that he can access restricted content
US43 Ban user high As an Admin, I want to record the inactivity of a system user, so that he can't longer access restricted contents of the site

Table 6: Admin's user stories

3. Annex: Supplementary requirements

This annex contains business rules, technical requirements and other non-functional requirements on the project.

Business rules

A business rule defines or constrains one aspect of the business, with the intention of asserting business structure or influencing business behaviour.

Identifier Name Description
BR01 Ownership Only a user from the same site that the creator of the item (Owner) can lend or register your return
BR02 Return Date The return date must be greater than the loan date for one item that has not yet been returned

Technical requirements

Technical requirements are concerned with the technical aspects that the system must meet, such as performance-related issues, reliability issues and availability issues.

Identifier Name Description
TR01 Availability The system must be available 99 percent of the time in each 24-hour period
TR02 Accessibility The system must ensure that everyone can access the pages, regardless of whether they have any handicap or not, or the Web browser they use
TR03 Usability The system should be simple and easy to use
TR04 Performance The system should have response times shorter than 2s to ensure the user's attention
TR05 Web application The system should be implemented as a Web application with dynamic pages (HTML5, JavaScript, CSS3 and PHP)
TR06 Portability The server-side system should work across multiple platforms (Linux, Mac OS, etc.)
TR07 Database The PostgreSQL 9.4 database management system must be used
TR08 Security The system shall protect information from unauthorised access through the use of an authentication and verification system
TR09 Robustness The system must be prepared to handle and continue operating when runtime errors occur
TR10 Scalability The system must be prepared to deal with the growth in the number of users and their actions
TR11 Ethics The system must respect the ethical principles in software development (for example, the password must be stored encrypted to ensure that only the owner knows it)

Restrictions

A restriction on the design limits the degree of freedom in the search for a solution [Ambler04 ].

Identifier Name Description
C01 Deadline The system should be ready to be used at the beginning of the Summer holidays to be able to register the loans of the season

LBAW

[MediaLibrary]

teach/lbaw/medialib/a02.txt · Last modified: 26/02/2020 10:30 by Correia Lopes