Requirements



Functional Requirements
ID Description Priority Completed
F1 The PP shall display different user interfaces for three different users - companies, students and academics. Should
F2 The PP shall display reviews for students written by companies and academics. Should
F3 The PP shall distinguish between users of the system when they logged in. Must
F4 The PP shall allow users to sign up using their email. Must
F5 The PP shall set up the users' accounts by authorising their LinkedIn accounts on PP. Must
F6 The PP shall display the users' information as extracted from LinkedIn. Must
F7 The PP shall contain a database for the extracted information from LinkedIn. Must
F8 The PP shall display the students' Placed Score on their profile. Must
F9 The PP shall allow companies and academics to endorse the students' skills after the end of every project. Should
F10 The PP shall allow the companies to invite other academics who are part of a project to join the project. Should
F11 The PP shall allow academics to have the authorization to allocate projects to first or second year students. Should
F12 The PP shall allow the Placed Score to be published to the user's LinkedIn account. Must
F13 The PP shall allow companies and academics to upload or download any relevant data. Should
F14 The PP shall allow students to choose from a list of skills learnt in their profile page. Could
F15 The PP shall consist a FAQ section. Should
Non-Functional Requirements
ID Description Priority Completed
NF1 The PP's backend shall be implemented as a RESTful API in order to facilitate interfacing with the database. Must
NF2 The PP shall use a browser as its user interface. Must
NF3 The PP shall use the latest versions of Firefox Mozilla, Internet Explorer and Google Chrome. Must
NF4 The PP shall be available 24 hours per day, 365 days per year. Must
NF5 The PP shall support 10,000 concurrent sessions. Must
NF6 The PP shall have a user interface which is clear-cut and easy to navigate. Must
NF7 The PP shall log in a user within 5 seconds. Must
NF8 The PP shall save 10,000 different sets of datas in its database. Must

Use Cases

Use Case: Register Account
ID: UC1
Description:

User registers an account

Primary Actors:

Companies, academics and students

Secondary Actors:

None

Preconditions:

None

Main Flow:
  1. The use case starts when the user clicks the "Sign Up" tab on the navigation bar.
  2. The system displays the signup page that allow users to fill in their username/email address, first and last name and their password.
  3. The user keys in the details and clicks “Sign Up” button.
  4. The system displays the user’s profile page.
Post Conditions:

The user’s details are stored in the database.

Alternative Flows:

Invalid Field(s)

Alternate Flow: Register Account: Invalid Field(s)
ID: UC1.1
Description:

User tries to register an account with one or more invalid details which including an existing username/email address

Primary Actors:

Companies, academics and students

Secondary Actors:

None

Preconditions:

User has attempted to register for an account.

Main Flow:
  1. The alternative flow starts after step 3 of the main flow.
  2. The system finds one or more invalid details.
  3. The system redisplays the signup page with invalid sign up message.
  4. The user can re-enter the correct details.
Post Conditions:

None

Alternative Flows:

None

Use Case: Sign In
ID: UC2
Description:

User tries to sign into the system

Primary Actors:

Companies, academics and students

Secondary Actors:

None

Preconditions:

User has already had an account in the database of the web application.

Main Flow:
  1. The use case starts when the user clicks the “Login” tab on the navigation bar.
  2. The system displays the login page that allow users to fill in their username/email address and password.
  3. The user keys in the details and clicks “Sign In” button.
  4. The system checks the details in the database.
  5. The system displays the user’s profile page.
Post Conditions:

The user has access to the system.

Alternative Flows:

None

Alternate Flow: Sign In: Invalid Sign In
ID: UC2.1
Description:

User tries to sign into the system with invalid details.

Primary Actors:

Companies, academics and students

Secondary Actors:

None

Preconditions:

User has attempted to sign into the system.

Main Flow:
  1. The alternative flow starts after step 3 of the main flow.
  2. The system does not find any matching details in the database.
  3. The system redisplays the login page with an invalid login message.
  4. The user can re-enter the correct details.
Post Conditions:

None

Alternative Flows:

None

Use Case: Logout
ID: UC3
Description:

User tries to logout from the system.

Primary Actors:

Companies, academics and students

Secondary Actors:

None

Preconditions:

User has logged in

Main Flow:
  1. The use case starts when the user clicks the “Logout” tab on the navigation bar.
  2. The system returns to the sign in page.
Post Conditions:

The user has logged out.

Alternative Flows:

None

Use Case: Extract Data from LinkedIn
ID: UC4
Description:

User extracts his data from his LinkedIn profile.

Primary Actors:

Companies, academics and students

Secondary Actors:

None

Preconditions:

User has logged in.

Main Flow:
  1. The use case starts when the user clicks the “Link to LinkedIn” button on the profile page.
  2. The system displays the LinkedIn API page that required the users to authorise it by filling their email address and password.
  3. The user keys in the details and clicks “Allow Access” button.
  4. The system extracts and displayed the data from user’s LinkedIn profile.
Post Conditions:

The user’s details are stored in the database.

Alternative Flows:

None

Project Placed. Systems Engineering Project Group 17.

Copyright © 2015/16 Jia Chi Tan, Gao Jun Tang. All Rights Reserved.