SRS FireFly

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 99

COMSATS University Islamabad,

Park Road, Chak Shahzad, Islamabad Pakistan

SOFTWARE REQUIREMENTS
SPECIFICATION
(SRS DOCUMENT)

For

FireFly
Version 1.0

By
Nasir Khan CIIT/SP16-BCS-086/ISB
Bahroze Ali CIIT/SP16-BCS-066/ISB

Supervisor
Mr. Muhammad Rashid Mukhtar

Bachelor of Science in Computer Science (2016-2020)


Software Requirements Specification for FireFly Page ii

Table of Contents
Revision History............................................................................................................................iii
1. Introduction..............................................................................................................................1
1.1 Purpose.......................................................................................................................................1
1.2 Scope..........................................................................................................................................1
2. Overall description...................................................................................................................2
2.1 Product perspective....................................................................................................................2
2.2 Operating environment...............................................................................................................2
2.3 Design and implementation constraints......................................................................................2
3. Requirement identifying technique........................................................................................3
3.1 Use Case Diagram......................................................................................................................3
3.2 Use Case Description.................................................................................................................7
4. Specific Requirements...........................................................................................................49
4.1 System feature X......................................................................................................................49
5. Quality attributes...................................................................................................................94
5.1 Usability...................................................................................................................................94
5.2 Performance..............................................................................................................................94
6. External interface requirements...........................................................................................95
6.1 User interfaces..........................................................................................................................95
6.2 Software interfaces...................................................................................................................95
6.3 Hardware interfaces..................................................................................................................95
6.4 Communications interfaces......................................................................................................97
7. Project Gantt chart................................................................................................................98
8. Conclusion..............................................................................................................................98
9. References...............................................................................................................................99
10. Plagiarism Report................................................................................................................100
Software Requirements Specification for FireFly Page iii

Revision History
Name Date Reason for changes Version
Software Requirements Specification for FireFly Page iv

Application Evaluation History

Comments (by committee) Action Taken


*include the ones given at scope time both in doc and
presentation

Supervised by
Mr. Muhammad Rashid Mukhtar

Signature______________
Software Requirements Specification for FireFly Page 1

1. Introduction
With the increase in the use of Internet in modern world the users in term of size are rapidly
increasing day by day both in terms of number of users and content, the traditional standalone
desktops or offline apps are almost on the verge of an end. There is a need for an approach that
would integrate both the World Wilde Web and the Stand Alone Systems. The FireFly is based on
android and web application. It provides fast and secure transactions between client and developer.
It contains each and every individual unique digital ID which will provide trusted relations. The
Artificial intelligence of FireFly will remove third party like fiverr, freelance etc. to manage each
and every transaction and contact between the client and developer. The AI will also provide
solutions and resolve the disputes within the contract of client and developer, giving the best
possible outcome for both of them. It will use points as an in-app currency which can be purchased
by anyone to pay another person. This will remove third party bank and provide fast, safe, sound
and secure transactions.

1.1 Purpose

Online platforms which such as fiverr, freelance etc. act as a third party between the client and
developer which allows them to take a cut of money from the client and developer for using their
platform. These platform manage each and every transaction between the client and developer as
well as resolve the issue. The problem also lies that client when transferring money to the developer
has to use his/her bank to do so. The bank can take up many days to manage the transaction so they
also act as a centralized way of transferring money from one place to another. Several system exist
similar these platform but they cannot resolve the issues between the client and developer. The
issues between them both can result either loss of one person or both. However re-implementing
this technology and adding a smart way of handling the issues between client and developer can be
beneficial for both of them and causing no loss for each. We expect to learn application
development using Artificial Intelligence (AI) to resolve the real world problems.

1.2 Scope

This project involves building a platform that can allow a person to hire a freelance or set up a
request task. User will need to create a digital ID in order to use the application. The application
will allow them to create digital ID which will be secure. User can then buy points within the
application using real world currency and then points will be transferred to their digital wallet.
There will be no third party between Client and freelancer. This will also allow each contract
between to secure to outside. If the contract between user and freelance is successful then the points
will be transferred to freelancer which he/she can further cash out to real world currency. All users
in our app will have a digital ID to ensure each user is verified. When the contract has to be setup,
client set mile-stones that are to be accomplished by the developer, and pay according for each
milestone accomplished by the developer. This way developer work won’t get unpaid. Finally,
client can publish the contract or job to be done openly and will be notified when developer’s select
the job and choose the developer according. Client can also select developer and then setup the
contract with same procedure. For each milestone covered by the developer, Client will be notified.
Software Requirements Specification for FireFly Page 2

On the developer side panel, Developer can select a contract that has been openly published on the
market or developer will be notified whether a client has requested a job. Once contract has been
completed, our AI will transfer points from client to developer which developer can cash out. If any
issue occur during the contract, either from client or developer side, the AI will resolve it to make
sure the contract succeeds happily for both side.

2. Overall description
2.1 Product perspective
FireFly allows clients to interview, hire and work with freelancers and agencies through the
application platform. The platform includes a real-time chat platform aimed at reducing the time to
find and hire freelancers, rather than trivial manually automated systems FireFly provide in app
features with advanced issue resolving techniques using Artificial Intelligence.

2.2 Operating environment


The environment in which FireFly will operate is given below:

OE-1: The System shall operate correctly with the following web browsers: Windows Internet
Explorer versions 7, 8, and 9; Firefox versions 12 through 26; Google Chrome (all versions); and
Apple Safari versions 4.0 through 8.0.
OE-2: The system will operate correctly on android version greater or equal to 4.4 KitKat.

2.3 Design and implementation constraints

The design and implementation constraints of FireFly are given below:

CO-1: The system will be using Mongo database to save the data.
CO-2: Fuzzy Algorithms will be used for Artificial intelligence smart contract resolution
techniques.
CO-3: The System shall use the JSON form to store data
CO-4: The System shall uses REST API to handle request and responses
CO-5: The System will be using MEAN Stack for ease in development and configuration

3. Requirement identifying technique


Software Requirements Specification for FireFly Page 3

3.1 Use case diagram


Software Requirements Specification for FireFly Page 4
Software Requirements Specification for FireFly Page 5
Software Requirements Specification for FireFly Page 6
Software Requirements Specification for FireFly Page 7

3.2 Use case description


The use case tabular description is given below:

Module 1: Account Management


M1-UC1.1 Sign up
M1-UC1.2 Sign in
M1-UC1.3 Forget Password
M1-UC1.4 View Profile
M1-UC1.5 Edit Details
M1-UC1.6 Change image
M1-UC1.7 Change Password
M1-UC1.8 User History
M1-UC1.9 Sign out

UC-1.1: Sign UP

Table 1: Sign up Use Case


Use Case ID: M1-UC-1.1
Use Case Name: Signup

Actors: New user


Description: User will be able to create an account in application.
Trigger: User will click on sign up button.
Preconditions: 1. Internet connection is available and working properly.

Post conditions: 1. User account created successfully.

Normal Flow: 1. User opens the “FireFly” application.


2. User clicks on “Sign up” button.
3. User enters all the required details.
4. User clicks on the sign up button.

Alternative Flows: N/A

Exceptions: 1. User is unable to Sign up to application.


Software Requirements Specification for FireFly Page 8

2. Server is not available.


Business Rules N/A

Includes N/A
Assumptions: 1. User knows the basic knowledge of using smartphones.
2. User understands English language.

Notes And Issues N/A.

UC-1.2: Sign In
Table 2: Sign In Use Case
Use Case ID: M1-UC-1.2

Use Case Name: Sign In

Actors: User
Description: User will be able to access the dashboard by logging into their account.
Trigger: User opens the application.
Preconditions: 1. Internet connection is available and working properly.

Post conditions: 1. User is logged into their respective account.

Normal Flow: 1. User opens the application.


2. User enters Email and password.
3. User clicks on Sign in button.

Alternative N/A
Flows:

Exceptions: 1. User is unable to login to application.


2. Server is not available.
Business Rules N/A

Includes UC-1.1
Software Requirements Specification for FireFly Page 9

Assumptions: 1. User knows the basic knowledge of using smartphones.


2. User understands English language.

Notes And Issues N/A.

UC-1.3: Forget password


Table 3: Forget Password Use Case
Use Case ID: M1-UC-1.3

Use Case Name: Forget password

Actors: User
Description: User can reset their forgotten password by clicking on “Forgot password?”
Trigger: User clicks on “Forgot password?”
Preconditions: 1. Internet connection is available and working properly.

Post conditions: 1. User’s password reset successfully.

Normal Flow: 1. User clicks on “Forgot password?” text.


2. User enters his/her email address to verify their identity.
3. User enters the answers to the security questions.
4. User clicks on “Reset” button.

Alternative N/A
Flows:

Exceptions: 1. User is unable to login to application.


2. Server is not available.
Business Rules 1. User must have an account.

Includes N/A
Assumptions: 1. User knows the basic knowledge of using smartphones.
2. User understands English language.

Notes And Issues N/A.

UC-1.4: View Profile


Table 4: Forget Password Use Case
Software Requirements Specification for FireFly Page 10

Use Case ID: M1-UC-1.4

Use Case Name: View Profile

Actors: User

Description: User can view their profile by clicking on “View profile”

Trigger: User clicks on “Forgot password?”

Preconditions: 1. Internet connection is available and working properly.

Post conditions: 2. User’s profile viewed successfully.

Normal Flow: 3. User clicks on “View profile” button.

Alternative Flows: N/A

Exceptions: 1. User is unable to login to application.


2. Server is not available.
Business Rules 4. User must have an account.

Includes 1. User must be logged in.

Assumptions: 5. User knows the basic knowledge of using smartphones.


6. User understands English language.
Notes And Issues N/A.

UC-1.5: Edit Details


Table 5: Edit Details Use Case
Use Case ID: M1-UC-1.5
Software Requirements Specification for FireFly Page 11

Use Case Name: Edit Details

Actors: User
Description: User will be able to edit already added details like name and age etc.
Trigger: User clicks on “Edit Details” button.
Preconditions: 1. Internet connection is available and working properly.
2. User have already added details into their account.
Post conditions: 1. User’s Details changed successfully.

Normal Flow: 1. User selects the respective field from the form.
2. User update the fields with new data.
3. User clicks on Edit Details Button.
4. User changes details.
5. User clicks on “Submit” button.

Alternative N/A
Flows:

Exceptions: 2. User is unable to login to application.


3. Server is not available.
Business Rules 1. User must have an account.
2. User must be logged in.

Includes UC-1.2
Assumptions: 1. User knows the basic knowledge of using smartphones.
2. User understands English language.

Notes And Issues N/A.

UC-1.6: Change Image


Table 6: Change Image Use Case
Use Case ID: M1-UC-1.6

Use Case Name: Change image


Actors: User
Description: User can change image by selecting the image from the gallery.
Trigger: User clicks on “Edit details” button.
Software Requirements Specification for FireFly Page 12

Preconditions: 1. Internet connection is available and working properly.

Post conditions: 1. Image for the corresponding user is changed in the account.

Normal Flow: 1. User selects the respective field from the form.
2. User update the fields with new image.
3. User clicks on Edit Details Button.
4. User clicks browse button and select an image.
5. User clicks on Change image button.
6. User clicks on “Submit” button.

Alternative N/A
Flows:

Exceptions: 1. User is unable to login to application.


2. Server is not available.
Business Rules 1. User must have an account.
2. User must be logged in.

Includes UC-1.2
Assumptions: 1. User knows the basic knowledge of using smartphones.
2. User understands English language.

Notes And Issues N/A.

UC-1.7: Change Password


Table 7: Change Password Use Case
Use Case ID: M1-UC-1.7

Use Case Name: Change Password

Actors: User
Description: User can change his/her account password if necessary by logging into his/her account.

Trigger: User clicks on settings button.


Preconditions: 1. Internet connection is available and working properly.
Software Requirements Specification for FireFly Page 13

Post conditions: 1. User password changed successfully.

Normal Flow: 1. User clicks on Settings button.


2. User enters new password and clicks on “Change Password” button.

Alternative N/A
Flows:

Exceptions: 1. User is unable to login to application.


2. Server is not available.
Business Rules 1. User must have an account.
2. User must be logged in.

Includes UC-1.2
Assumptions: 1. User knows the basic knowledge of using smartphones.
2. User understands English language.

Notes And Issues N/A.

UC-1.8: User History


Table 8: Change Password Use Case
Use Case ID: M1-UC-1.8

Use Case Name: User History

Actors: User
Description: Users can view his/her progress reports and reviews about him here.
Trigger: User clicks on History button.
Preconditions: 1. Internet connection is available and working properly.

Post conditions: 1. User successfully viewed the history.

Normal Flow: 1. User clicks on History button.

Alternative N/A
Flows:
Software Requirements Specification for FireFly Page 14

Exceptions: 1. User is unable to login to application.


2. Server is not available.
Business Rules 1. User must have an account.
2. User must be logged in.

Includes UC-1.2
Assumptions: 1. User knows the basic knowledge of using smartphones.
2. User understands English language.

Notes And Issues N/A.

UC-1.9: Sign out


Table 8a: Change Password Use Case
Use Case ID: M1-UC-1.9
Use Case Name: Sign Out
Actors: Primary Actor: User
Description: User will Sign-out from the system
Priority High
Trigger: User clicks ‘Sign-out Button’ or ‘Lock Icon’
Preconditions: 1. User need to be registered as an account holder in Firefly.
Post conditions: 1. System will show message “Sign Out Successful” and redirects user Main Page
Normal Flow: 1. User will tap on “Sign Out” button.
Alternative Flows: 1a. In normal flow if User taps ‘Sign-out icon’
System will show message “Sign Out Successful” and redirects user Main Page
Exceptions: N/A
Business Rules N/A
Includes UC-1.2
Assumptions: 1. User knows the basic knowledge of internet.
2. User understands English language.
Notes And Issues N/A.

Module 2: Contract Management

M2-UC-2.1 View Market


M2-UC-2.2 Create Contract
M2-UC-2.3 Edit Contract
M2-UC-2.4 Remove Contract
M2-UC-2.5 Request for Contract Acceptance
M2-UC-2.6 Hire Developer
Software Requirements Specification for FireFly Page 15

M2-UC-2.7 View Pending Requests


M2-UC-2.8 View Requested Contract
M2-UC-2.9 Edit Requested Contract
M2-UC-2.10 Withdraw Requested Contract
M2-UC-2.11 View active Contract
M2-UC-2-12 View non active Contract
M2-UC-2.13 Renew non-active Contract
M2-UC-2.14 Meeting Box
M2-UC-2.15 Milestone completion

UC-2.1: View Market


Table 9: View market Use Case
Use Case ID: M2-UC-2.1
Use Case Name: View Market

Actors: User
Description: User will be able to start viewing Online contract in the market. This will help them
taking respected contract.
Trigger: User clicks on market button.
Preconditions: 1. Internet connection is available and working properly.

Post conditions: 1. Market with contract viewed successfully.

Normal Flow: 1. User clicks on Market button.


2. Market viewed successfully.

Alternative Flows: N/A

Exceptions: 1. User is unable to login to application.


2. Server is not available.
Business Rules 1. User must have an account.
2. User must be logged in.
Includes UC-1.2
Assumptions: 1. User knows the basic knowledge of using smartphones.
2. User understands English language.

Notes And Issues N/A.


Software Requirements Specification for FireFly Page 16

UC-2.2: Create Contract


Table 10: Create a new Contract
Use Case ID: M2-UC-2.2

Use Case Name: Create Contract

Actors: User
Description: User can create contract with his/her requirements and can place in the market. User can
create multiple contracts too.

Trigger: User Clicks on “Create Contract” Button.


Preconditions: 1. Internet connection is available and working properly.

Post conditions: 1. A new Contract will be added into the market and can be managed from the same
account.

Normal Flow: 1. User clicks on the “Create Contract” button.


2. User enters the details and requirement of the contract.
3. User clicks on “Finish” button.

Alternative Flows: N/A

Exceptions: 1. User is unable to login to application.


2. Server is not available.
Business Rules 1. User must have an account.
2. User must be logged in.

Includes UC-1.2
Software Requirements Specification for FireFly Page 17

Assumptions: 1. User knows the basic knowledge of using smartphones.


2. User understands English language.

Notes And Issues N/A.

UC-2.3: Edit Contract


Table 11: Edit Contract
Use Case ID: M2-UC-2.3

Use Case Name: Edit Contract


Actors: User
Description: User can Edit his/her contract with his/her updated requirements and can place in the
market. User can edit multiple contracts too.
Trigger: User Clicks on “Edit Contract” Button.
Preconditions: 1. Internet connection is available and working properly.

Post conditions: 1. An Edited Contract will be added into the market and can be managed from the
same account.

Normal Flow: 1. User clicks on the “Edit Contract” button.


2. User enters the details and requirement of the contract.
3. User clicks on “Finish” button.

Alternative Flows: N/A

Exceptions: 1. User is unable to login to application.


2. Server is not available.
Business Rules 1. User must have an account.
2. User must be logged in.

Includes UC-1.2
Assumptions: 1. User knows the basic knowledge of using smartphones.
2. User understands English language.

Notes And Issues N/A.


Software Requirements Specification for FireFly Page 18

UC-2.4: Remove Contract


Table 12: Delete Contract
Use Case ID: M2-UC-2.4

Use Case Name: Remove Contract

Actors: User
Description: User can remove already added contract which is not yet accepted by any
freelancer/developer if they want in the market. User can remove multiple contracts too.

Trigger: User Clicks on “Remove” button.


Preconditions: 1. Internet connection is available and working properly.
2. User have already added a contract into his/her account.

Post conditions: 1. Contract will be removed from the market.

Normal Flow: 1. User selects the contract from “Added contract list”.
2. User clicks on specific contract.
3. User clicks on “remove contract” button.

Alternative Flows: N/A

Exceptions: 1. User is unable to login to application.


2. Server is not available.

Business Rules 1. User must have an account.


2. User must be logged in.
Includes UC-1.2
Assumptions: 1. User knows the basic knowledge of using smartphones.
2. User understands English language.

Notes And Issues N/A.


Software Requirements Specification for FireFly Page 19

UC-2.5: Request for Contract Acceptance


Table 13: Request for contract acceptance
Use Case ID: M2-UC-2.5
Use Case Name: Request for Contract Acceptance
Actors: User( as a developer)
Description: User will select the respected contract which suits his/her skills and expertise and will
request for the contract.

Trigger: User will click on the “take contract” button.


Preconditions: 1. User is logged into FireFly Application.
2. A User Should be registered.

Post conditions: Notification will be send to the contract provider and the developer will be notified
once the contract is granted.

Normal Flow: 1. User selects the contract from “Market contract list”.
2. User clicks on specific contract which meet user’s expertise.

Alternative Flows: N/A

Exceptions: 1. User is unable to login to application.


2. Server is not available.
Business Rules 1. User must have an account.
2. User must be logged in.
3. Request must be sent once.

Includes UC-1.2
Assumptions: 1. User knows the basic knowledge of android phone usage.
2. User understands English language.
Software Requirements Specification for FireFly Page 20

Notes And Issues N/A.

UC-2.6: Hire Developer


Table 14: Hire developer
Use Case ID: M2-UC-2.6
Use Case Name: Hire Developer

Actors: User
Description: User (contractor) approve the developer request for the contract.
Trigger: User will click on “Hire” button.
Preconditions: 1. User is logged into FireFly Application.
2. User should be registered.

Post conditions: Notification will be send to the developer that your request for contract is approved.

Normal Flow: 1. User view the request section.


2. User accepts the request for the contract.
3. FireFly Application then sends notification to the respected party for updated
information.

Alternative Flows: N/A

Exceptions: 1. User is unable to login to application.


2. Server is not available.
Business Rules 1. User must have an account.
2. User must be logged in.
3. User (contract provider) will have 24 hour time to address the developer
request.

Includes UC-1.2
Assumptions: 1. User knows the basic knowledge of android phone usage.
2. User understands English language.

Notes And Issues N/A.


Software Requirements Specification for FireFly Page 21

UC-2.7: View Pending Contracts


Table 15: Pending Contracts
Use Case ID: M2-UC-2.7
Use Case Name: View Pending Requests

Actors: User
Description: User can view all the contracts he/she can approve.
Trigger: User will click on “Show Contracts” button.
Preconditions: 1. User is logged into FireFly Application.
2. User should be registered.

Post conditions: User viewed all the pending contracts.

Normal Flow: 1. User view the Contract section.


2. User proceeded to the pending contracts section.
3. User viewed and took necessary action on the pending contract.

Alternative Flows: N/A

Exceptions: 1. User is unable to login to application.


2. Server is not available.
Business Rules 1. User must have an account.
2. User must be logged in.
3. User will have 24 hour time to address the pending contracts.

Includes UC-1.2
Assumptions: 1. User knows the basic knowledge of android phone usage.
2. User understands English language.

Notes And Issues N/A.

UC-2.8: View Requested contracts


Software Requirements Specification for FireFly Page 22

Table 16: Requested Contracts


Use Case ID: M2-UC-2.8

Use Case Name: View Requested Contract

Actors: User

Description: User can view all the contracts he/she has requested to complete.

Trigger: User will click on “Show Contracts” button.

Preconditions: 1. User is logged into FireFly Application.


2. User should be registered.

Post conditions: User viewed all the requested contracts.

Normal Flow: 1. User view the Contract section.


2. User proceeded to the requested contracts section.

Alternative Flows: N/A

Exceptions: 1. User is unable to login to application.


2. Server is not available.
Business Rules 1. User must have an account.
2. User must be logged in.

Includes UC-1.2

Assumptions: 1. User knows the basic knowledge of android phone usage.


2. User understands English language.
Software Requirements Specification for FireFly Page 23

Notes And Issues N/A.

UC-2.9: Edit Requested contracts


Table 17: Edit Requested Contracts
Use Case ID: M2-UC-2.9
Use Case Name: Edit Requested Contract

Actors: User
Description: User can edit all the contracts he/she has requested to complete.
Trigger: User will click on “Edit Contracts” button. Which is within show contracts.
Preconditions: 1. User is logged into FireFly Application.
2. User should be registered.

Post conditions: User Edited all the requested (necessary) contracts.

Normal Flow: 1. User opens the Contract section.


2. User proceeded to the requested contracts section.
3. User selected a specific contract.
4. User edited the contract completion rate.

Alternative Flows: N/A

Exceptions: 1. User is unable to login to application.


2. Server is not available.
Business Rules 1. User must have an account.
2. User must be logged in.

Includes UC-1.2
Assumptions: 1. User knows the basic knowledge of android phone usage.
2. User understands English language.

Notes And Issues N/A.


Software Requirements Specification for FireFly Page 24

UC-2.10: Withdraw Requested contracts


Table 18: Withdraw Requested Contracts
Use Case ID: M2-UC-2.10
Use Case Name: Withdraw Requested Contract

Actors: User
Description: User can withdraw all the contracts he/she has requested to complete any time before
their request isn’t approved.
Trigger: User will click on “Withdraw” button. Which is within show contracts.
Preconditions: 1. User is logged into FireFly Application.
2. User should be registered.

Post conditions: User withdraw all the requested (necessary) contract/s.

Normal Flow: 1. User opens the Contract section.


2. User proceeded to the requested contracts section.
3. User selected a specific contract.
4. User withdrawn the contract.

Alternative Flows: N/A

Exceptions: 1. User is unable to login to application.


2. Server is not available.
Business Rules 1. User must have an account.
2. User must be logged in.

Includes UC-1.2
Assumptions: 1. User knows the basic knowledge of android phone usage.
2. User understands English language.
Notes And Issues N/A.

UC-2.11: View active contracts


Table 19: Active Contracts
Use Case ID: M2-UC-2.11
Software Requirements Specification for FireFly Page 25

Use Case Name: View active Contract

Actors: User (contract provider)


Description: User can view all the contracts he/she has started with the hired developers to complete.

Trigger: User will click on “View” button. Which is within show contracts.
Preconditions: 1. User is logged into FireFly Application.
2. User should be registered.

Post conditions: User viewed all active ongoing contracts.

Normal Flow: 1. User opens the Contract section.


2. User proceeded to the contract section.
3. User selected a view contract.
4. User viewed the active contract.

Alternative Flows: N/A

Exceptions: 1. User is unable to login to application.


2. Server is not available.
Business Rules 1. User must have an account.
2. User must be logged in.

Includes UC-1.2
Assumptions: 1. User knows the basic knowledge of android phone usage.
2. User understands English language.

Notes And Issues N/A.

UC-2.12: View non-active contracts


Table 20: Non-Active Contracts
Use Case ID: M2-UC-2.12
Software Requirements Specification for FireFly Page 26

Use Case Name: View non active Contract

Actors: User (contract provider)


Description: User can view all the contracts he/she has started with the hired developers to complete.

Trigger: User will click on “View” button. Which is within show contracts.
Preconditions: 1. User is logged into FireFly Application.
2. User should be registered.

Post conditions: User viewed all non-active contracts. (contracts no one bothered to select)

Normal Flow: 1. User opens the Contract section.


2. User proceeded to the contract section.
3. User selected a view contract.
4. User viewed the non-active contract.

Alternative Flows: N/A

Exceptions: 1. User is unable to login to application.


2. Server is not available.
Business Rules 1. User must have an account.
2. User must be logged in.

Includes UC-1.2
Assumptions: 1. User knows the basic knowledge of android phone usage.
2. User understands English language.
Notes And Issues N/A.

UC-2.13: Renew non-active contracts


Table 21: Renew Non-Active Contracts
Use Case ID: M2-UC-2.13
Use Case Name: Renew non-active Contract
Software Requirements Specification for FireFly Page 27

Actors: User (contract provider)


Description: User can renew the contracts which is going to be expired.
Trigger: User will click on “Renew” button. Which is within show contracts.
Preconditions: 1. User is logged into FireFly Application.
2. User should be registered.

Post conditions: User renew the non-active contracts.

Normal Flow: 1. User opens the Contract section.


2. User proceeded to the contract section.
3. User selected a view contract.
4. User viewed the non-active contract.
5. User renewed the contract.

Alternative Flows: N/A

Exceptions: 1. User is unable to login to application.


2. Server is not available.
Business Rules 1. User must have an account.
2. User must be logged in.

Includes UC-1.2
Assumptions: 1. User knows the basic knowledge of android phone usage.
2. User understands English language.

Notes And Issues Contract can be renewed only one time.

UC-2.14: Meeting box


Table 22: Meeting Box
Use Case ID: M2-UC-2.14
Use Case Name: Meeting Box
Software Requirements Specification for FireFly Page 28

Actors: Users
Description: Users (client and developer) can chat with each other in the meeting box section.

Trigger: User will click on “Meet” button.


Preconditions: 1. User is logged into FireFly Application.
2. User should be registered.

Post conditions: Client met developer and they exchanged their thoughts on the contract.

Normal Flow: 1. User (Developer or client) selected meet button.


2. Chat started.

Alternative Flows: N/A

Exceptions: 1. User is unable to login to application.


2. Server is not available.
Business Rules 1. User must have an account.
2. User must be logged in.

Includes UC-1.2
Assumptions: 1. User knows the basic knowledge of android phone usage.
2. User understands English language.

Notes And Issues Chat is character limited.


Only few hundreds words allowed on each end to chat.

UC-2.15: Milestone Completion


Table 23: Milestone completion
Use Case ID: M2-UC-2.15
Use Case Name: Milestone completion

Actors: User
Software Requirements Specification for FireFly Page 29

Description: Upon completion of each milestone by the User (developer) the contract provider will
be notified.

Trigger: User will click on “Complete” button.


Preconditions: 1. User is logged into FireFly Application.
2. User should be registered.

Post conditions: Client received a notification by developer about the milestone completion.

Normal Flow: 1. User (Developer) Clicked complete button.


2. Notification sent.

Alternative Flows: N/A

Exceptions: 1. User is unable to login to application.


2. Server is not available.
Business Rules 1. User must have an account.
2. User must be logged in.

Includes UC-1.2
Assumptions: 1. User knows the basic knowledge of android phone usage.
2. User understands English language.

Notes And Issues N/A.

Module 3: Automatic conflict resolver

M3-UC-3.1 View arbitrary solution


M3-UC-3.2 Drop contract
M3-UC-3.3 Finish contract

UC-3.1: View arbitrary solution

Table 24 View Arbitrary solution Use Case


Use Case ID: M3-UC-3.1
Software Requirements Specification for FireFly Page 30

Use Case Name: View arbitrary solution

Actors: Primary Actor: User

Description: This provides an arbitrary solution from the Artificial Intelligence when an user is not
satisfied from the developers work
Trigger: User selects view arbitrary solution button when reviewing a milestone as not satisfied.

Preconditions: PRE-1. User is logged in to the application.


PRE-2. User is engaged in contract with another user (developer).

Post conditions: POST-1. Reports the milestone review to developer


POST-2. Lists a possible solution for the problem.
Normal Flow: 1. User selects review milestone that have been achieved from active contracts.
2. User selects not satisfied.
3. User then selects view arbitrary solution.
Alternative Flows: N/A

Exceptions: 1. User is unable to login to application.


2. Server is not available
Business Rules
1. User must have an account.
2. User must be logged in.
Assumptions:
1. User is already logged into the application.
2. User knows basic flow of the application
Notes And Issues N/A.

UC-3.2: Drop contract


Table 25 Drop contract Use Case
Use Case ID: M3-UC-3.2

Use Case Name: Drop contract


Software Requirements Specification for FireFly Page 31

Actors: Primary Actor: User

Description: User can drop contract when he/she is not satisfied with contract milestones or with the
arbitrary solution.

Trigger: User selects drop contract button.


Preconditions: PRE-1. User is logged in to the application.
PRE-2. User is engaged in contract with another user (developer).

Post conditions: POST-1. Shows a form to drop the contract

Normal Flow: 1. User selects review milestone that have been achieved from active contracts.
2. User selects not satisfied.
3. User then selects drop contract button.

Alternative Flows: N/A

Exceptions: 1. User is unable to login to application.


Business Rules
1. User must have an account.
2. User must be logged in.

Assumptions: 1. User is already logged into the application.


2. User knows basic flow of the application

Notes And Issues N/A.

UC-3.3: Finish contract


Table 26 Finish contract Use Case
Use Case ID: M3-UC-3.3
Use Case Name: Finish contract

Actors: Primary Actor: User


Software Requirements Specification for FireFly Page 32

Description: User can finish contract after all the milestones on contract have been achieved without
any issue.
Trigger: User selects finish contract button.
Preconditions: PRE-1. User is logged in to the application.
PRE-2. User is engaged in contract with another user(developer).

Post conditions: POST-1. Shows a form for developers review

Normal Flow: 1. User selects all milestone that have been achieved from active contracts.
4. User selects satisfied with work.
5. User then selects finish contract.
Alternative Flows: N/A

Exceptions: 1. User is unable to login to application.


Business Rules
1. User must have an account.
2. User must be logged in.
Assumptions: 1. User is already logged into the application.
2. User knows basic flow of the application.
Notes And Issues N/A.

Module 4: Point system


M4-UC-4.1 Buy points
M4-UC-4.2 Cash out points
M4-UC-4.3 Point price calculator
M4-UC-4.4 View points
M4-UC-4.5 Transaction history

UC-4.1: Buy points


Table 27 Buy points Use Case
Use Case ID: M4-UC-4.1
Use Case Name: Buy points

Actors: Primary Actor: User


Software Requirements Specification for FireFly Page 33

Description: User can buy points which can be used to pay other users(developers)
Trigger: User selects buy point button.
Preconditions: PRE-1. User is logged in the application.

Post conditions: POST-1. Shows a form to buy points

Normal Flow: 1. User login to application.


2. User selects my points button from side
3. User selects buy points button on the screen

Alternative Flows: N/A.

Exceptions: 1. User credit card information is invalid.


2. User is unable to login to application.
3. Server is not available.
Business Rules 1. User must have an account.
2. User must be logged in.

Assumptions:
1. User knows basic flow of application.

Notes And Issues N/A.

UC-4.2: Cash out points


Table 28 Cash out points Use Case
Use Case ID: M4-UC-4.2
Use Case Name: Cash out points

Actors: Primary Actor: User


Software Requirements Specification for FireFly Page 34

Description: User can exchange the points in his/her account for cash which can be transferred to
his/her bank account

Trigger: User selects cash out points button.


Preconditions: PRE-1. User is logged in the application.
PRE-2. User has points into his/her account.

Post conditions: POST-1. Shows a form to transfer points to cash.

Normal Flow: 1. User login to application.


2. User selects my points button from side
3. User selects cash out points button on the screen.

Alternative Flows: N/A

Exceptions: 1. User credit card information is invalid.


2. User has no points in the account

Business Rules 1. User must have an account.


2. User must be logged in.

Assumptions:
1. User knows basic flow of application.

Notes And Issues N/A.

UC-4.3: Point price calculator


Table 29 point price calculator Use Case
Use Case ID: M4-UC-4.3
Use Case Name: Point price calculator

Actors: Primary Actor: User


Software Requirements Specification for FireFly Page 35

Description: User can calculate the points price to real world currency.
Trigger: User selects cash out points button.
Preconditions: PRE-1. User is logged in the application.

Post conditions: POST-1. Shows a form to calculate points price.

Normal Flow: 1. User login to application.


2. User selects my points button from side
3. User selects calculate points button on the screen.

Alternative Flows: N/A

Exceptions: 1. Unable to retrieve pricing information from server.

Business Rules 1. User must have an account.


2. User must be logged in.

Assumptions:
1. User knows basic flow of application.

Notes And Issues N/A.

UC-4.4: View points


Table 30 Viewpoints Use Case
Use Case ID: M4-UC-4.4
Use Case Name: View points

Actors: Primary Actor: User


Software Requirements Specification for FireFly Page 36

Description: User can view his/her points that are in account.


Trigger: User selects my points from side bar.
Preconditions: PRE-1. User is logged in the application.

Post conditions: POST-1. Shows a screen containing points information.

Normal Flow: 1. User login to application.


2. User selects my points button from side

Alternative Flows: N/A

Exceptions: 1. Unable to retrieve points information from server

Business Rules 1. User must have an account.


2. User must be logged in.

Assumptions:
1. User knows basic flow of application.

Notes And Issues N/A.

UC-4.5: Transaction history


Table 31 Transaction history Use Case
Use Case ID: M4-UC-4.5
Use Case Name: Transaction history

Actors: Primary Actor: User

Description: User can view his/her transaction history related on the points he/she transferred to
another user

Trigger: User selects transaction history button.


Software Requirements Specification for FireFly Page 37

Preconditions: PRE-1. User is logged in the application

Post conditions: POST-1. displays user’s transaction history

Normal Flow: 1. User login to application.


2. User selects my points button from side.
3. User my transaction history button on the screen.

Alternative Flows: N/A

Exceptions: 1. Unable to retrieve points information from server

Business Rules 1. User must have an account.


2. User must be logged in.

Assumptions:
1. User knows basic flow of application.

Notes And Issues N/A.

Module 5: Administration Panel


M5-UC-5.1 View platform status(usage, users active, contracts active, contracts finished)
M5-UC-5.2 Bugs reported
M5-UC-5.3 User Feedback
M5-UC-5.4 Announcements
M5-UC-5.5 AI reports(contains information issue resolved by AI and currently resolving)
M5-UC-5.6 User information

UC-5.1: View Platform status

Table 32 View Platform status Use Case


Use Case ID: M5-UC-5.1
Software Requirements Specification for FireFly Page 38

Use Case Name: View Platform status

Actors: Primary Actor: Administrator

Description: Administrator opens this panel to view the status of the platform. This includes the users’
currently active, contracts that are ongoing and number of contracts that have been
finished.

Trigger: Administrator selects the View status button from side bar.
Preconditions: PRE-1. Administrator is logged in to the application.

Post conditions: POST-1. Active user’s graph or status is displayed on screen


POST-2. Number of ongoing contracts status is displayed
POST-3. List of issues encountered.

Normal Flow: 4. Administrator runs the applications and login with admin credentials
5. A homepage of administrator is displayed which directs to view status page.

Alternative Flows: 1. Administrator login with admin credentials


2. Administrator selects view status button from side button

Exceptions: 1. Administrator is unable to login to application.


Business Rules 1. User must have an account.
2. User must be logged in.
Assumptions:
1. Administrator is already logged into the application

Notes And Issues N/A.

UC-5.2: Bugs reported


Table 33 Bugs Reported Use Case
Use Case ID: M5-UC-5.2
Use Case Name: Bugs reported
Software Requirements Specification for FireFly Page 39

Actors: Primary Actor: Administrator

Description: Administrator opens this panel to view information containing the bugs reported by the
users.

Trigger: Administrator selects the Bugs/Feedback button from side bar.


Preconditions: PRE-1. Administrator is logged in to the application.

Post conditions: POST-1. Displays a list of bugs reported by users using report a bug.

Normal Flow: 1. Administrator runs the applications and login with admin credentials
2. Administrators selects bugs/feedback button from side bar.
3. Administrators’ selects bugs reported button on the screen.

Alternative Flows: N/A

Exceptions: 1. Administrator is unable to login to application.


Business Rules 2. User must have an account.
3. User must be logged in.

Assumptions:
1. User is already logged into the application

Notes And Issues N/A.

UC-5.3: User Feedback


Table 34 User Feedback Use Case
Use Case ID: M5-UC-5.3

Use Case Name: User Feedback


Software Requirements Specification for FireFly Page 40

Actors: Primary Actor: Administrator

Description: Administrator opens this panel to view information containing the bugs reported by the
users, or containing users review of application

Trigger: Administrator selects the Bugs/Feedback button from side bar.


Preconditions: PRE-1. Administrator is logged in to the application.

Post conditions: POST-1. Displays a list of reviews given by users.

Normal Flow: 1. Administrator runs the applications and login with admin credentials
2. Administrators selects bugs/feedback button from side bar.
3. Administrator selects feedback button on screen.

Alternative Flows: N/A

Exceptions: 1. Administrator is unable to login to application.


Business Rules
N/A.

Assumptions:
2. User is already logged into the application

Notes and Issues: N/A.

UC-5.4: Announcements
Table 35 Announcements Use Case
Use Case ID: M5-UC-5.4

Use Case Name: Announcements


Software Requirements Specification for FireFly Page 41

Actors: Primary Actor: Administrator

Description: Administrator opens this panel to send messages to every user or certain users within in
the application. Administrator can use announcements to provide news related to
application which can contain app updates or server downtime.

Trigger: Administrator selects the announcement button on the sidebar.


Preconditions PRE-1. Administrator is logged in to the application.

Post conditions: POST-1. A form is provided which administrator needs to fill.

Normal Flow: 1. Administrator runs the applications and login with admin credentials
2. Administrators selects Announcement button from side bar.
3. A screen is displayed containing form.
4. Administrator fills the form to make announcement.

Alternative Flows: N/A.

Exceptions: 1. Administrator is unable to login to application.


2. Invalid Form data.
3. Form data incomplete.

Business Rules 1. User must have an account.


2. User must be logged in.

Assumptions:
1. User is already logged into the application

Notes and Issues: N/A.

UC-5.5: AI reports
Table 36 AI reports Use Case
Use Case ID: M5-UC-5.5
Software Requirements Specification for FireFly Page 42

Use Case Name: AI reports

Actors: Primary Actor: Administrator

Description: Administrator opens this panel to view information related to AI. This contains graph
showing AI performance, issues resolved by AI, list of issues pending by AI and list of
issues that were not been able to resolve by AI.
Trigger: Administrator selects the AI reports button from side bar.
Preconditions: PRE-1. Administrator is logged in to the application.

Post conditions: POST-1. Displays AI performance graph or something.


POST-2 Displays number of issues resolved by AI.
POST-3 Displays number of issues pending by AI.
POST-4 Displays list of issues that were failed to be resolved by AI.

Normal Flow: 1. Administrator runs the applications and login with admin credentials
2. Administrators selects AI reports button from side bar.
Alternative Flows: N/A

Exceptions: 1. Administrator is unable to login to application.


Business Rules 1. User must have an account.
2. User must be logged in.
Assumptions:
3. User is already logged into the application
Notes and Issues: N/A:

UC-5.6: View user

Table 37 View User Use Case


Use Case ID: M5-UC-5.6

Use Case Name: View user


Software Requirements Specification for FireFly Page 43

Actors: Primary Actor: Administrator

Description: Administrator can use this panel to view a certain user information. It can include users’
personal information, users review and reports related to user. It also shows buttons to
suspend account and reasoning for it.

Trigger: Administrator selects the specific user from list.


Preconditions: PRE-1. Administrator is logged in to the application.
PRE-1. Administrator selects a specific users from list.

Post conditions: POST-1. Displays personal information related to user.


POST-2 Displays users review.
POST-3 Displays reports and comments related to users.

Normal Flow: 1. Administrator runs the applications and login with admin credentials
2. Administrators selects Users management button from side bar.
3. Administrators selects a user from the list.

Alternative Flows: 1. Step 1 and 2 of normal flow


2. Administrators uses filters like search by name, country etc. to view specific users.
3. Step 3 of normal flow

Exceptions: 1. Administrator is unable to login to application.


2. Administrator is unable to select user.
3. Server is unable to retrieve users information

Business Rules

Assumptions:
1. User is already logged into the application
Notes and Issues: N/A:

Module 6: Notification Generator

M6-UC-6.1 Hiring Notification


M6-UC-6.2 Contract completion Notification
M6-UC-6.3 Contract Deadline reminder Notification
Software Requirements Specification for FireFly Page 44

M6-UC-6.4 Interest related Contract Notification

UC-6.1: Hiring Notification


Table 38: Hiring notification
Use Case ID: M6-UC-6.1
Use Case Name: Hiring Notification

Actors: User.
Description: Upon approval of the contract by the client, the developer will receive a notification.

Trigger: User (client) will click on “Approve contract” button.


Preconditions: 1. User is logged into FireFly Application.
2. User should be registered.

Post conditions: Developer will receive a notification by Client about the contract approval.

Normal Flow: 1. User (Client) Click on the approve button.


2. Notification sent.

Alternative Flows: N/A

Exceptions: 1. User is unable to login to application.


2. Server is not available.
Business Rules 1. User must have an account.
2. User must be logged in.

Includes UC-1.2
Assumptions: 1. User knows the basic knowledge of android phone usage.
2. User understands English language.

Notes And Issues N/A.


Software Requirements Specification for FireFly Page 45

UC-6.2: Contract completion Notification


Table 39: Contract completion notification
Use Case ID: M6-UC-6.2
Use Case Name: Contract completion Notification

Actors: User.
Description: Upon Completion of the contract by the developer, client (contract provider) will
receive a notification.

Trigger: User (developer) will click on “Finish contract” button.


Preconditions: 1. User is logged into FireFly Application.
2. User should be registered.

Post conditions: Contract provider will receive a notification by Developer about the contract
completion.

Normal Flow: 1. User (developer) Click on the Finish button.


2. Notification sent.

Alternative Flows: N/A

Exceptions: 1. User is unable to login to application.


2. Server is not available.
Business Rules 1. User must have an account.
2. User must be logged in.

Includes UC-1.2
Assumptions: 1. User knows the basic knowledge of android phone usage.
2. User understands English language.

Notes And Issues N/A.


Software Requirements Specification for FireFly Page 46

UC-6.3: Contract Deadline Reminder Notification


Table 40: Contract completion notification
Use Case ID: M6-UC-6.3
Use Case Name: Contract Deadline reminder Notification

Actors: User.
Description: User (developer) can set the deadline reminder notifications too.
Trigger: User (developer) will click on “Remind me” button.
Preconditions: 1. User is logged into FireFly Application.
2. User should be registered.

Post conditions: Developer will receive a notification when the deadline is nearby.

Normal Flow: 1. User (developer) Click on the Remind me button.


2. Notification sent.

Alternative Flows: N/A

Exceptions: 1. User is unable to login to application.


2. Server is not available.
Business Rules 1. User must have an account.
2. User must be logged in.

Includes UC-1.2
Assumptions: 1. User knows the basic knowledge of android phone usage.
2. User understands English language.

Notes And Issues N/A.

UC-6.4: Interest related Contract in market Notification


Table 41: Interest related Contract notification
Use Case ID: M6-UC-6.4
Software Requirements Specification for FireFly Page 47

Use Case Name: Interest related Contract Notification

Actors: User.
Description: Users will be notified if their interested contract is ever being offered in market. Interest
can set at the time of creation of account.

Trigger: User will enter interested Jobs in field.


Preconditions: 1. User is logged into FireFly Application.
2. User should be registered.

Post conditions: User (developer) will receive a notification when the Contract is ever being offered.

Normal Flow: 1. User will be notified if his/her interested contract is ever offered in market.
2. Notification sent.

Alternative Flows: N/A

Exceptions: 1. User is unable to login to application.


2. Server is not available.
Business Rules 1. User must have an account.
2. User must be logged in.

Includes UC-1.2
Assumptions: 1. User knows the basic knowledge of android phone usage.
2. User understands English language.

Notes And Issues N/A.

4. Functional Requirements
Functional Requirement of Firefly arranged by Use case flow is as follows:

4.1 Functional Requirement

Identifier M1-UC-1.1-FR-1
Software Requirements Specification for FireFly Page 48

Title Email Text Field –Signup.


Requirement User will enter ‘Email’.
Source Supervisor
Rationale This Requirement will receive email address of user.
Business Rule (if N/A.
required)
Dependencies N/A.
Priority High.

Identifier M1-UC-1.1-FR-2
Title Password Text Field –Signup.
Requirement User will enter ‘Password’.
Source Supervisor.
Rationale This Requirement will receive password of user.
Business Rule (if N/A.
required)
Dependencies N/A.
Priority High.

Identifier M1-UC-1.1-FR-3
Title Confirm Password Text Field –Signup.
Requirement User will enter 'Password’ again to confirm.
Source Supervisor.
Rationale This Requirement will receive confirmed password of user.
Business Rule (if N/A.
required)
Dependencies N/A.
Priority High.

Identifier M1-UC-1.1-FR-4
Title Name Text Field –Signup.
Requirement User will enter 'Name’.
Source Supervisor.
Rationale This Requirement will receive name of user.
Business Rule (if N/A.
required)
Software Requirements Specification for FireFly Page 49

Dependencies N/A.
Priority High.

Identifier M1-UC-1.1-FR-5
Title Phone Number- Number Field –Signup.
Requirement User will enter his/her phone number.
Source Supervisor.
Rationale This Requirement will receive phone number of user.
Business Rule (if N/A.
required)
Dependencies N/A.
Priority High.

Identifier M1-UC-1.1-FR-6
Title Submit Button –Signup.
Requirement User’s signup request will be submitted.
Source Supervisor.
Rationale This Requirement will trigger event to send user details to Firefly.
Business Rule (if User must have filled all required fields.
required)
Dependencies N/A.
Priority Low.

Identifier M1-UC-1.2-FR-1
Title Email Text Field –Login.
Requirement User will enter ‘Email’.
Source Supervisor.
Rationale This Requirement will receive email address of user.
Business Rule (if N/A.
required)
Dependencies N/A.
Priority High.

Identifier M1-UC-1.2-FR-2
Title Password Text Field –Login.
Requirement User will enter ‘Password’.
Software Requirements Specification for FireFly Page 50

Source Supervisor.
Rationale This Requirement will receive password of user.
Business Rule (if N/A.
required)
Dependencies N/A.
Priority High.

Identifier M1-UC-1.2-FR-3
Title Submit Button –Login.
Requirement User’s Login request will be Received.
Source Supervisor.
Rationale This Requirement will Login user in the application.
Business Rule (if User must have filled all required fields.
required) User must be logged in by his/her account.
User must visit a valid user account.
Dependencies N/A.
Priority Low.

Identifier M1-UC-1.3-FR-1
Title Email Text Field –Forgot Password.
Requirement User will enter ‘Email’.
Source Supervisor.
Rationale This Requirement will receive email address of user.
Business Rule (if N/A.
required)
Dependencies N/A.
Priority High.

Identifier M1-UC-1.3-FR-2
Title Request New Password Button.
Requirement User’s reset password request will be Received.
Source Supervisor.
Rationale This Requirement will trigger event to reset password of the user.
Business Rule (if User must have filled all required fields.
Software Requirements Specification for FireFly Page 51

required)
Dependencies N/A.
Priority Medium.

Identifier M1-UC-1.4-FR-1
Title View Profile.
Requirement User will select view profile button.
Source Supervisor.
Rationale This Requirement will receive his/her profile.
Business Rule (if N/A.
required)
Dependencies N/A.
Priority Low.

Identifier M1-UC-1.5-FR-1
Title Email Text Field –Edit details.
Requirement User will enter ‘Email’.
Source Supervisor.
Rationale This Requirement will receive email address of user.
Business Rule (if N/A.
required)
Dependencies N/A.
Priority Medium.

Identifier M1-UC-1.5-FR-2
Title Request New Password Button.
Requirement User’s password request will be Received.
Source Supervisor.
Rationale This Requirement will trigger event to reset password of the user.
Business Rule (if User must have filled all required fields.
required)
Dependencies N/A.
Priority Medium.

Identifier M1-UC-1.5-FR-3
Software Requirements Specification for FireFly Page 52

Title Name Text Field –Edit Details.


Requirement User will enter 'Name’.
Source Supervisor.
Rationale This Requirement will receive name of user.
Business Rule (if N/A.
required)
Dependencies N/A.
Priority Medium.

Identifier M1-UC-1.5-FR-4
Title Phone Number- Number Field –Edit details.
Requirement User will enter his/her phone number.
Source Supervisor.
Rationale This Requirement will receive phone number of user.
Business Rule (if N/A.
required)
Dependencies N/A.
Priority Low.

Identifier M1-UC-1.6-FR-1
Title View image button.
Requirement User will View his/her profile image.
Source Supervisor.
Rationale This Requirement will receive picture of the user.
Business Rule (if N/A.
required)
Dependencies N/A.
Priority Low.

Identifier M1-UC-1.6-FR-2
Title Change image.
Requirement User will provide new image.
Source Supervisor.
Rationale This Requirement will receive new image of the user.
Business Rule (if N/A.
required)
Software Requirements Specification for FireFly Page 53

Dependencies N/A.
Priority Low.

Identifier M1-UC-1.7-FR-1
Title Email Text Field –Change password.
Requirement User will enter ‘Email’.
Source Supervisor.
Rationale This Requirement will receive email address of user.
Business Rule (if N/A.
required)
Dependencies N/A.
Priority Low.

Identifier M1-UC-1.7-FR-2
Title Request New Password Button.
Requirement User’s password request will be Received.
Source Supervisor.
Rationale This Requirement will trigger event to reset password of the user.
Business Rule (if User must have filled all required fields.
required)
Dependencies N/A.
Priority Medium.

Identifier M1-UC-1.8-FR-1
Title View Expertise Button.
Requirement User will view the expertise of other users.
Source Supervisor.
Rationale This Requirement will trigger event to view expertise of the other
user.
Business Rule (if User must be logged in by his/her account.
required) User must visit a valid user account.
Dependencies N/A.
Priority Low.

Identifier M1-UC-1.8-FR-2
Software Requirements Specification for FireFly Page 54

Title View Completed Projects Button.


Requirement User will view the completed projects of other users.
Source Supervisor.
Rationale This Requirement will trigger event to view completed projects of the
other user.
Business Rule (if User must be logged in by his/her account.
required) User must visit a valid user account.
Dependencies N/A.
Priority Low.

Identifier M1-UC-1.8-FR-3
Title View Character chart graph.
Requirement User (other) will view the user (client) review base graph of other
users.
Source Supervisor.
Rationale This Requirement will trigger event to view character graph of the
other user.
Business Rule (if User must be logged in by his/her account.
required) User must visit a valid user account.
Dependencies N/A.
Priority Low.

Identifier M1-UC-1.9-FR-1
Title Logout.
Requirement User will click or select logout or sign out button.
Source Supervisor.
Rationale This Requirement will trigger event to log the user out from the
Firefly application.
Business Rule (if User must be logged in by his/her account.
required) User must visit a valid user account.
Dependencies N/A.
Priority Low.
Software Requirements Specification for FireFly Page 55

Identifier M2-UC-2.1-FR-1
Title View Market.
Requirement User will click or select view market button.
Source Supervisor.
Rationale This Requirement will trigger event to show the user the market
(where clients meet developers).
Business Rule (if User must be logged in by his/her account.
required) User must visit a valid user account.
Dependencies N/A.
Priority Medium.

Identifier M2-UC-2.1-FR-2
Title Check on ‘Developer’.
Requirement User will click or select check dev status.
Source Supervisor.
Rationale This Requirement will trigger event to show the user (client) the
current status of developer.
Business Rule (if User must be logged in by his/her account.
required) User must visit a valid user account.
Dependencies N/A.
Priority Low.

Identifier M2-UC-2.2-FR-1
Title Create Contract.
Requirement User will click or select Create contract button.
Source Supervisor.
Rationale This Requirement will trigger event to help enable the user to create a
new contract.
Business Rule (if User must be logged in by his/her account.
required) User must visit a valid user account.
Dependencies N/A.
Priority Medium.

Identifier M2-UC-2.2-FR-2
Software Requirements Specification for FireFly Page 56

Title Fill contract data.


Requirement User will click or select fill contract data button.
Source Supervisor.
Rationale This Requirement will trigger event to help enable the user to enter
the contract details data.
Business Rule (if User must be logged in by his/her account.
required) User must visit a valid user account.
Dependencies N/A.
Priority Medium.

Identifier M2-UC-2.2-FR-3
Title Set milestones.
Requirement User will click or select set milestones button.
Source Supervisor.
Rationale This Requirement will trigger event to help enable the user to setup
number of milestones.
Business Rule (if User must be logged in by his/her account.
required) User must visit a valid user account.
Dependencies N/A.
Priority Medium.

Identifier M2-UC-2.2-FR-4
Title Set points.
Requirement User will click or select set points button.
Source Supervisor.
Rationale This Requirement will trigger event to help enable the user to setup
amount of points for his/her project.
Business Rule (if User must be logged in by his/her account.
required) User must visit a valid user account.
Dependencies N/A.
Priority Medium.

Identifier M2-UC-2.3-FR-1
Title Edit Contract.
Software Requirements Specification for FireFly Page 57

Requirement User will click or select Edit contract button.


Source Supervisor.
Rationale This Requirement will trigger event to help enable the user to edit
his/her new (current) contract.
Business Rule (if User must be logged in by his/her account.
required) User must visit a valid user account.
Dependencies N/A.
Priority Medium.

Identifier M2-UC-2.3-FR-2
Title Set new milestones.
Requirement User will click or select set milestones button.
Source Supervisor.
Rationale This Requirement will trigger event to help enable the user to setup
number of milestones.
Business Rule (if User must be logged in by his/her account.
required) User must visit a valid user account.
Dependencies N/A.
Priority Low.

Identifier M2-UC-2.3-FR-3
Title Set new points.
Requirement User will click or select set points button.
Source Supervisor.
Rationale This Requirement will trigger event to help enable the user to setup
amount of points for his/her project.
Business Rule (if User must be logged in by his/her account.
required) User must visit a valid user account.
Dependencies N/A.
Priority Low.
Identifier M2-UC-2.4-FR-1
Title Remove contract.
Software Requirements Specification for FireFly Page 58

Requirement User will click or select remove contract button.


Source Supervisor.
Rationale This Requirement will trigger event to help enable the user to remove
his/her current contract.
Business Rule (if User must be logged in by his/her account.
required) User must visit a valid user account.
Dependencies N/A.
Priority Low.

Identifier M2-UC-2.4-FR-2
Title Are you sure you want to remove the contract?
Requirement User will click or select ‘yes’ or ‘no’ radioactive button.
Source Supervisor.
Rationale This Requirement will trigger event to help enable the user to remove
his/her contract.
Business Rule (if User must be logged in by his/her account.
required) User must visit a valid user account.
Dependencies N/A.
Priority High.

Identifier M2-UC-2.5-FR-1
Title Hire me check box.
Requirement User will click or select ‘yes’ or ‘no’ radioactive button.
Source Supervisor.
Rationale This Requirement will trigger event to help enable the user to hire the
developer whom requested to take the project.
Business Rule (if User must be logged in by his/her account.
required) User must visit a valid user account.
Dependencies N/A.
Priority Medium.

Identifier M2-UC-2.5-FR-2
Title Accept request.
Requirement User will click or select ‘yes’ or ‘no’ radioactive button.
Software Requirements Specification for FireFly Page 59

Source Supervisor.
Rationale This Requirement will trigger event to help enable the user to hire the
developer whom requested to take the project.
Business Rule (if User must be logged in by his/her account.
required) User must visit a valid user account.
Dependencies N/A.
Priority Medium.

Identifier M2-UC-2.5-FR-3
Title Reject button.
Requirement User will click or select Reject button.
Source Supervisor.
Rationale This Requirement will trigger event to help enable the user to reject
the request by the developer whom requested to take the project.
Business Rule (if User must be logged in by his/her account.
required) User must visit a valid user account.
Dependencies N/A.
Priority Low.

Identifier M2-UC-2.5-FR-4
Title Report button.
Requirement User will click or select Report button.
Source Supervisor.
Rationale This Requirement will trigger event to help enable the user to report
the request by the developer whom requested to take the project.
Business Rule (if User must be logged in by his/her account.
required) User must visit a valid user account.
Dependencies N/A.
Priority Low.

Identifier M2-UC-2.6-FR-1
Title Hire button.
Requirement User will click or select hire button.
Source Supervisor.
Software Requirements Specification for FireFly Page 60

Rationale This Requirement will trigger event to help enable the user to hire any
developer from the market.
Business Rule (if User must be logged in by his/her account.
required) User must visit a valid user account.
Dependencies N/A.
Priority Low.

Identifier M2-UC-2.6-FR-2
Title View online Developer button.
Requirement User will click or select Show ‘online users’ button.
Source Supervisor.
Rationale This Requirement will trigger event to help enable the user to check
online developer from the market.
Business Rule (if User must be logged in by his/her account.
required) User must visit a valid user account.
Dependencies N/A.
Priority Low.

Identifier M2-UC-2.7-FR-1
Title View pending requests button.
Requirement User will click or select view ‘pending request’ button.
Source Supervisor.
Rationale This Requirement will trigger event to help enable the user to check
request from other users.
Business Rule (if User must be logged in by his/her account.
required) User must visit a valid user account.
Dependencies N/A.
Priority Low.

Identifier M2-UC-2.7-FR-2
Title Take action on ‘pending request’ button.
Requirement User will click or select ‘Take action’ button.
Source Supervisor.
Rationale This Requirement will trigger event to help enable the user to take
Software Requirements Specification for FireFly Page 61

action (necessary) on pending requests.


Business Rule (if User must be logged in by his/her account.
required) User must visit a valid user account.
Dependencies N/A.
Priority Low.

Identifier M2-UC-2.8-FR-1
Title View ‘requested’ requests button.
Requirement User will click or select view ‘request’ button.
Source Supervisor.
Rationale This Requirement will trigger event to help enable the user to check
requested request from other users.
Business Rule (if User must be logged in by his/her account.
required) User must visit a valid user account.
Dependencies N/A.
Priority Low.

Identifier M2-UC-2.8-FR-2
Title Take action on ‘requested request’ button.
Requirement User will click or select ‘Take action’ button.
Source Supervisor.
Rationale This Requirement will trigger event to help enable the user to take
action (necessary) on pending requests.
Business Rule (if User must be logged in by his/her account.
required) User must visit a valid user account.
Dependencies N/A.
Priority Low.

Identifier M2-UC-2.9-FR-1
Title Edit request button.
Requirement User will click or select Edit request button.
Source Supervisor.
Software Requirements Specification for FireFly Page 62

Rationale This Requirement will trigger event to help enable the user to edit the
request made by the user.
Business Rule (if User must be logged in by his/her account.
required) User must visit a valid user account.
Dependencies N/A.
Priority Low.

Identifier M2-UC-2.10-FR-1
Title Cancel button.
Requirement User will click or select ‘Cancel’ button.
Source Supervisor.
Rationale This Requirement will trigger event to help enable the user to drop
the request he/she requested.
Business Rule (if User must be logged in by his/her account.
required) User must visit a valid user account.
Dependencies N/A.
Priority Low.

Identifier M2-UC-2.11-FR-1
Title Active contract button.
Requirement User will click or select ‘Active contract’ button.
Source Supervisor.
Rationale This Requirement will trigger event to help enable the user to view all
of his/her active contracts.
Business Rule (if User must be logged in by his/her account.
required) User must visit a valid user account.
Dependencies N/A.
Priority Low.

Identifier M2-UC-2.11-FR-2
Title Type dropdown box.
Requirement User will click or select ‘any type’ button.
Source Supervisor.
Rationale This Requirement will trigger event to help enable the user to view all
Software Requirements Specification for FireFly Page 63

of his/her active contracts.


Business Rule (if User must be logged in by his/her account.
required) User must visit a valid user account.
Dependencies N/A.
Priority Low.

Identifier M2-UC-2.11-FR-3
Title Taken contracts radio button.
Requirement User will click or select ‘Active contract’ button.
Source Supervisor.
Rationale This Requirement will trigger event to help enable the user to view all
of his/her active contracts.
Business Rule (if User must be logged in by his/her account.
required) User must visit a valid user account.
Dependencies N/A.
Priority Low.

Identifier M2-UC-2.11-FR-4
Title Given radio button.
Requirement User will click or select ‘Active contract’ button.
Source Supervisor.
Rationale This Requirement will trigger event to help enable the user to view all
of his/her active contracts.
Business Rule (if User must be logged in by his/her account.
required) User must visit a valid user account.
Dependencies N/A.
Priority Low.

Identifier M2-UC-2.12-FR-1
Title Non-Active contract button.
Requirement User will click or select ‘Non-Active contract’ button.
Source Supervisor.
Rationale This Requirement will trigger event to help enable the user to view all
of his/her non-active contracts.
Software Requirements Specification for FireFly Page 64

Business Rule (if User must be logged in by his/her account.


required) User must visit a valid user account.
Dependencies N/A.
Priority Low.

Identifier M2-UC-2.12-FR-2
Title Type dropdown box.
Requirement User will click or select ‘any type’ button.
Source Supervisor.
Rationale This Requirement will trigger event to help enable the user to view all
of his/her non-active contracts.
Business Rule (if User must be logged in by his/her account.
required) User must visit a valid user account.
Dependencies N/A.
Priority Low.

Identifier M2-UC-2.12-FR-3
Title Yet to decide contracts radio button.
Requirement User will click or select ‘Non-Active contract’ button.
Source Supervisor.
Rationale This Requirement will trigger event to help enable the user to view all
of his/her non-active contracts.
Business Rule (if User must be logged in by his/her account.
required) User must visit a valid user account.
Dependencies N/A.
Priority Low.

Identifier M2-UC-2.12-FR-4
Title In progress radio button.
Requirement User will click or select ‘non-Active contract’ button.
Source Supervisor.
Rationale This Requirement will trigger event to help enable the user to view all
of his/her non-active contracts.
Business Rule (if User must be logged in by his/her account.
Software Requirements Specification for FireFly Page 65

required)
User must visit a valid user account.
Dependencies N/A.
Priority Low.

Identifier M2-UC-2.13-FR-1
Title Renew button.
Requirement User will click or select ‘Renew’ button.
Source Supervisor.
Rationale This Requirement will trigger event to help enable the user to Renew
his/her contract.
Business Rule (if User must be logged in by his/her account.
required) User must visit a valid user account.
Dependencies N/A.
Priority Medium.

Identifier M2-UC-2.13-FR-2
Title Limit field.
Requirement User can view his/her remaining free renew.
Source Supervisor.
Rationale This Requirement will trigger event to help enable the user to view
his/her free renew.
Business Rule (if User must be logged in by his/her account.
required) User must visit a valid user account.
Dependencies N/A.
Priority Low.

Identifier M2-UC-2.14-FR-1
Title Message box.
Requirement Users will select message direct.
Source Supervisor.
Rationale This Requirement will trigger event to help enable the users to
communicate interactively with each other.
Business Rule (if User must be logged in by his/her account.
Software Requirements Specification for FireFly Page 66

required) User must visit a valid user account.


Dependencies N/A.
Priority Medium.

Identifier M2-UC-2.14-FR-2
Title Like message.
Requirement Users will select message direct.
Source Supervisor.
Rationale This Requirement will trigger event to help enable the users to
communicate interactively with each other and they can like each
other’s message.
Business Rule (if User must be logged in by his/her account.
required) User must visit a valid user account.
Dependencies N/A.
Priority Medium.

Identifier M2-UC-2.14-FR-3
Title Word count.
Requirement Users will select message direct.
Source Supervisor.
Rationale This Requirement will trigger event to help enable the users to
communicate interactively with each other by limiting the size of chat
words to 60-100 words.
Business Rule (if User must be logged in by his/her account.
required) User must visit a valid user account.
Dependencies N/A.
Priority Medium.

Identifier M2-UC-2.14-FR-4
Title Pro message.
Requirement Users will select message direct.
Source Supervisor.
Rationale This Requirement will trigger event to help enable the users to
communicate interactively with each other, by enabling special
message user can increase the chat word count to 300 words.
Software Requirements Specification for FireFly Page 67

Business Rule (if User must be logged in by his/her account.


required) User must visit a valid user account.
Dependencies N/A.
Priority Medium.

Identifier M2-UC-2.15-FR-1
Title Milestone completion.
Requirement Users will select Completed successfully button.
Source Supervisor.
Rationale This Requirement will trigger event to help enable the users to
communicate interactively with each other, by sending a notification
to the client that the developer has successfully completed a
milestone.
Business Rule (if User must be logged in by his/her account.
required) User must visit a valid user account.
Dependencies N/A.
Priority Medium.

Identifier M2-UC-2.15-FR-2
Title Milestone withdrawal request.
Requirement Users will select withdraw milestone button.
Source Supervisor.
Rationale This Requirement will trigger event to help enable the users to
withdraw a selected milestone.
Business Rule (if User must be logged in by his/her account.
required) User must visit a valid user account.
Dependencies N/A.
Priority Medium.

Identifier M2-UC-2.15-FR-3
Title Milestone date extension request.
Requirement Users will select extend milestone date button.
Source Supervisor.
Rationale This Requirement will trigger event to help enable the users to
Software Requirements Specification for FireFly Page 68

request the client to extend the date for any milestone.


Business Rule (if User must be logged in by his/her account.
required) User must visit a valid user account.
Dependencies N/A.
Priority Medium.

Identifier M3-UC-3.1-FR-1
Title View solution.
Requirement User will click on view solution button.
Source Supervisor.
Rationale It will allow user to view the solution for an issue.
Business Rule (if N/A.
required)
Dependencies N/A.
Priority Medium.

Identifier M3-UC-3.1-FR-2
Title Get solution.
Requirement System will get solution from AI.
Source Supervisor.
Rationale System will get the solution for the issue to be displayed.
Business Rule (if N/A.
required)
Dependencies N/A.
Priority Low.
Identifier M3-UC-3.1-FR-3
Title Send selected solution.
Requirement System will send solution selected solution to server.
Source Supervisor.
Rationale System will provide solution selected by user to AI.
Business Rule (if N/A.
required)
Dependencies N/A.
Software Requirements Specification for FireFly Page 69

Priority Low.

Identifier M3-UC-3.1-FR-4
Title Evaluate arbitrary solution.
Requirement System will evaluate the arbitrary solution.
Source Supervisor.
Rationale System will send and evaluate the solution using AI.
Business Rule (if N/A.
required)
Dependencies N/A.
Priority Low.

Identifier M3-UC-3.2-FR-1
Title Drop contract information.
Requirement User will select drop contract button.
Source Supervisor.
Rationale It will show information related to the contract that needs to be dropped.
Business Rule (if N/A.
required)
Dependencies N/A.
Priority Medium.

Identifier M3-UC-3.2-FR-2
Title User feedback.
Requirement User selects rating.
Source Supervisor.
Rationale It allow user to rate the developer for current dropped contract.
Business Rule (if N/A.
required)
Software Requirements Specification for FireFly Page 70

Dependencies N/A.
Priority Medium.

Identifier M3-UC-3.2-FR-3
Title Drop contract.
Requirement User selects drop button in contract information.
Source Supervisor.
Rationale It allow user to drop the contract.
Business Rule (if N/A.
required)
Dependencies N/A.
Priority Medium.

Identifier M3-UC-3.2-FR-4
Title Send drop success.
Requirement System will update and provide information to developer.
Source Supervisor.
Rationale It will allow system to provide an update to developer.
Business Rule (if N/A.
required)
Dependencies N/A.
Priority Medium.

Identifier M3-UC-3.2-FR-5
Title Evaluate contract points.
Requirement System will evaluate points to be transferred when contract is to be
dropped using AI.
Source Supervisor.
Rationale It will pay developer according to work done.
Business Rule (if N/A.
required)
Dependencies N/A.
Software Requirements Specification for FireFly Page 71

Priority Medium.

Identifier M3-UC-3.2-FR-6
Title Transfer points.
Requirement System will transfer the evaluated points to the user.
Source Supervisor.
Rationale It will transfer the points to developer’s account.
Business Rule (if N/A.
required)
Dependencies M3-UC-3.2-FR-5.
Priority Medium.

Identifier M3-UC-3.3-FR-1
Title User feedback.
Requirement User selects rating.
Source Supervisor.
Rationale It allow user to rate the developer for current finished contract.
Business Rule (if N/A.
required)
Dependencies N/A.
Priority Medium.

Identifier M3-UC-3.3-FR-2
Title Finish contract.
Requirement User selects finish contract button.
Source Supervisor.
Rationale It allow user to finish the contract.
Business Rule (if N/A.
required)
Dependencies N/A.
Priority Medium.
Software Requirements Specification for FireFly Page 72

Identifier M3-UC-3.3-FR-3
Title Evaluate contract points.
Requirement System will evaluate points to be transferred when contract is to be
finished using AI.
Source Supervisor.
Rationale It will pay developer according to work done.
Business Rule (if N/A.
required)
Dependencies N/A.
Priority Medium.

Identifier M3-UC-3.3-FR-4
Title Transfer points.
Requirement System will transfer the evaluated points to the user.
Source Supervisor.
Rationale It will transfer the points to developer’s account.
Business Rule (if N/A.
required)
Dependencies 3.2.3.
Priority Medium.

Identifier M4-UC-4.1-FR-1
Title Enter points field.
Requirement User clicks on points fields.
Source Supervisor.
Rationale User will need to enter points in order to buy them.
Business Rule (if N/A.
required)
Dependencies N/A.
Priority Medium.
Software Requirements Specification for FireFly Page 73

Identifier M4-UC-4.1-FR-2
Title Currency selection.
Requirement User clicks on currency icon.
Source Supervisor.
Rationale User will need to select a currency in which he will buy the points.
Business Rule (if N/A.
required)
Dependencies N/A.
Priority Medium.

Identifier M4-UC-4.1-FR-3
Title Payment information.
Requirement User clicks on payment information field.
Source Supervisor.
Rationale User will need to enter payment information in order buy the points.
Business Rule (if N/A.
required)
Dependencies N/A.
Priority Medium.

Identifier M4-UC-4.1-FR-4
Title Select payment method.
Requirement User selects payment option button.
Source Supervisor.
Rationale User will need to select payment option in which he will be paying for
points.
Business Rule (if N/A.
required)
Dependencies N/A.
Priority Medium.
Software Requirements Specification for FireFly Page 74

Identifier M4-UC-4.1-FR-5
Title Payment verification.
Requirement System will need to verify the payment information users has provided.
Source Supervisor.
Rationale To check the payment information provided by user.
Business Rule (if N/A.
required)
Dependencies N/A.
Priority Medium.

Identifier M4-UC-4.1-FR-6
Title Buy selected points.
Requirement User selects buy point button.
Source Supervisor.
Rationale User will be able to buy the points.
Business Rule (if N/A.
required)
Dependencies N/A.
Priority Medium.

Identifier M4-UC-4.1-FR-7
Title Points adder.
Requirement System will need to check for payment transfer.
Source Supervisor.
Rationale To add the points to user account that user has bought.
Business Rule (if N/A.
required)
Dependencies 4.1.5.
Priority Medium.

Identifier M4-UC-4.2-FR-1
Software Requirements Specification for FireFly Page 75

Title Enter points field.


Requirement User clicks on points fields.
Source Supervisor.
Rationale User will need to enter points in order to cash out them.
Business Rule (if N/A.
required)
Dependencies N/A.
Priority Medium.

Identifier M4-UC-4.2-FR-2
Title Currency selection.
Requirement User clicks on currency icon.
Source Supervisor.
Rationale User will need to select a currency in which he will exchange the points.
Business Rule (if N/A.
required)
Dependencies N/A.
Priority Medium.

Identifier M4-UC-4.2-FR-3
Title Cash out information.
Requirement User clicks on cash out field.
Source Supervisor.
Rationale User will need to enter cash out information in order exchange the points.
Business Rule (if N/A.
required)
Dependencies N/A.
Priority Medium.

Identifier M4-UC-4.2-FR-4
Title Select cash out method.
Requirement User selects cash out option button.
Software Requirements Specification for FireFly Page 76

Source Supervisor.
Rationale User will need to select cash out option in which he will be exchange
points.
Business Rule (if N/A.
required)
Dependencies N/A.
Priority Medium.

Identifier M4-UC-4.2-FR-5
Title Cash out verification.
Requirement System will need to verify the cash out information users has provided.
Source Supervisor.
Rationale To check the cash out information provided by user.
Business Rule (if N/A.
required)
Dependencies N/A.
Priority Medium.
Identifier M4-UC-4.2-FR-6
Title Exchange selected points.
Requirement User selects Exchange button.
Source Supervisor.
Rationale User will be able to exchange the points.
Business Rule (if N/A.
required)
Dependencies N/A.
Priority Medium.

Identifier M4-UC-4.2-FR-7
Title Points remover.
Requirement System will need to check for cash out transfer.
Software Requirements Specification for FireFly Page 77

Source Supervisor.
Rationale To remove the points to user account that user has exchanged.
Business Rule (if N/A.
required)
Dependencies 4.2.5.
Priority Medium.

Identifier M4-UC-4.3-FR-1
Title Point input field.
Requirement User will need to click input field.
Source Supervisor.
Rationale To input the points to be calculated.
Business Rule (if N/A.
required)
Dependencies N/A.
Priority Low.

Identifier M4-UC-4.3-FR-2
Title Currency selection.
Requirement User will need to select currency option.
Source Supervisor.
Rationale To calculate points price to certain currency.
Business Rule (if N/A.
required)
Dependencies N/A.
Priority Low.

Identifier M4-UC-4.4-FR-1
Title Point Field.
Requirement User will need to click view point button.
Source Supervisor.
Rationale To view the points in the account.
Software Requirements Specification for FireFly Page 78

Business Rule (if N/A.


required)
Dependencies N/A.
Priority Low.

Identifier M4-UC-4.4-FR-2
Title Point payment information.
Requirement User will need to click point payment information button.
Source Supervisor.
Rationale To view the points payment information.
Business Rule (if N/A.
required)
Dependencies N/A.
Priority Low.
Identifier M4-UC-4.5-FR-1
Title List of payments.
Requirement User will need to click transaction history button.
Source Supervisor.
Rationale To view the list of transaction done.
Business Rule (if N/A.
required)
Dependencies N/A.
Priority Low.

Identifier M4-UC-4.5-FR-2
Title Payment information
Requirement User will need to click a transaction from list.
Source Supervisor.
Rationale It will show transaction details.
Business Rule (if N/A.
required)
Dependencies N/A.
Software Requirements Specification for FireFly Page 79

Priority Low.

Identifier M4-UC-4.5-FR-3.
Title Download transaction history.
Requirement User will need to click a download history button.
Source Supervisor.
Rationale It will download transactions into user’s device.
Business Rule (if N/A.
required)
Dependencies N/A.
Priority Low.

Identifier M4-UC-4.5-FR-4.
Title Search filter.
Requirement User will click on to filter and provide filter information.
Source Supervisor.
Rationale It will allow user to search for a specific transaction.
Business Rule (if N/A.
required)
Dependencies N/A.
Priority Low.

Identifier M5-UC-5.1-FR-1.
Title Show active users.
Requirement User will click on show active users’ button.
Source Supervisor.
Rationale To display detail information on active users.
Business Rule (if N/A.
required)
Dependencies N/A.
Priority Low.
Software Requirements Specification for FireFly Page 80

Identifier M5-UC-5.1-FR-2.
Title Show active contracts.
Requirement User will click on show active contracts button.
Source Supervisor.
Rationale To display detail information on active contracts.
Business Rule (if N/A.
required)
Dependencies N/A.
Priority Low.

Identifier M5-UC-5.1-FR-3.
Title Show platform usage.
Requirement User will click on show platform usage button.
Source Supervisor.
Rationale To display details information on platform usage.
Business Rule (if N/A.
required)
Dependencies N/A.
Priority Low.

Identifier M5-UC-5.1-FR-4.
Title Show contracts finished.
Requirement User will click on show contracts finished button.
Source Supervisor.
Rationale To display details information on contracts that have been finished.
Business Rule (if N/A.
required)
Dependencies N/A.
Software Requirements Specification for FireFly Page 81

Priority Low.
Identifier M5-UC-5.2-FR-1.
Title Show reports.
Requirement User will click on show reports button.
Source Supervisor.
Rationale To display bugs reports that have been sent by users.
Business Rule (if N/A.
required)
Dependencies N/A.
Priority Medium.
Identifier M5-UC-5.2-FR-2.
Title View bug report.
Requirement User will click on view bug report button.
Source Supervisor.
Rationale To display details of bug report sent by a user.
Business Rule (if N/A.
required)
Dependencies N/A.
Priority Medium.

Identifier M5-UC-5.2-FR-3.
Title Download bug report.
Requirement User will click on download bug report button.
Source Supervisor.
Rationale To Download details of bug report sent by a user.
Business Rule (if N/A.
required)
Dependencies N/A.
Priority Low.
Identifier M5-UC-5.2-FR-4.
Software Requirements Specification for FireFly Page 82

Title Download bug log files.


Requirement User will click on download log button.
Source Supervisor.
Rationale To Download log files of bug report sent by a user.
Business Rule (if N/A.
required)
Dependencies N/A.
Priority Low.

Identifier M5-UC-5.2-FR-5.
Title View issues status.
Requirement User will view issues status.
Source Supervisor.
Rationale Displays a graph of number of issues reported over a certain period of
time.
Business Rule (if N/A.
required)
Dependencies N/A.
Priority Medium.

Identifier M5-UC-5.2-FR-6.
Title Mark a bug report important.
Requirement User clicks on mark button of bug report.
Source Supervisor.
Rationale It marks the important bug report reported by a user.
Business Rule (if N/A.
required)
Dependencies N/A.
Priority Medium.

Identifier M5-UC-5.3-FR-1.
Title Display users’ feedback.
Software Requirements Specification for FireFly Page 83

Requirement User clicks on user feedback button.


Source Supervisor.
Rationale It displays list of users’ feedback.
Business Rule (if N/A.
required)
Dependencies N/A.
Priority Low.

Identifier M5-UC-5.3-FR-2.
Title View user feedback.
Requirement User clicks on a feedback being displayed.
Source Supervisor.
Rationale It displays the feedback given by a user.
Business Rule (if N/A.
required)
Dependencies N/A.
Priority Low.

Identifier M5-UC-5.3-FR-3.
Title View users rating.
Requirement User clicks on a ratings button.
Source Supervisor.
Rationale It displays ratings given by the users.
Business Rule (if N/A.
required)
Dependencies N/A.
Priority Low.

Identifier M5-UC-5.4-FR-1.
Title Enter message.
Requirement User needs to click on message text field.
Source Supervisor.
Rationale The message input that needs to be announced within the application.
Software Requirements Specification for FireFly Page 84

Business Rule (if N/A.


required)
Dependencies N/A.
Priority Medium.
Identifier M5-UC-5.4-FR-2.
Title Send Announcement.
Requirement User needs to click on send announcement button.
Source Supervisor.
Rationale It will send the message to all the users active in application.
Business Rule (if N/A.
required)
Dependencies N/A.
Priority Low.

Identifier M5-UC-5.5-FR-1.
Title Show unresolved issues.
Requirement User needs to click on unresolved issues button.
Source Supervisor.
Rationale It will show list of unresolved issues by AI.
Business Rule (if N/A.
required)
Dependencies N/A.
Priority Medium.
Identifier M5-UC-5.5-FR-2.
Title Show issue details.
Requirement User needs to click on issue details button.
Source Supervisor.
Rationale It will show details of information of an unresolved issue by AI.
Business Rule (if N/A.
required)
Dependencies N/A.
Priority Medium.
Software Requirements Specification for FireFly Page 85

Identifier M5-UC-5.5-FR-3.
Title Show AI success rate.
Requirement User clicks on AI reports button.
Source Supervisor.
Rationale It will show graph showing AI issues resolving success rate.
Business Rule (if N/A.
required)
Dependencies N/A.
Priority Medium.

Identifier M5-UC-5.5-FR-4.
Title Download AI reports.
Requirement User clicks on download reports button.
Source Supervisor.
Rationale It will download the reports containing issues unresolved by AI and status
of AI.
Business Rule (if N/A.
required)
Dependencies N/A.
Priority Low.
Identifier M5-UC-5.6-FR-1.
Title View users list.
Requirement User clicks on users’ list button.
Source Supervisor.
Rationale It will show users list that are registered on platform.
Business Rule (if N/A.
required)
Dependencies N/A.
Priority Medium.

Identifier M5-UC-5.6-FR-2.
Title View user details.
Requirement User clicks on a user from users list.
Software Requirements Specification for FireFly Page 86

Source Supervisor.
Rationale It will show details of user account.
Business Rule (if N/A.
required)
Dependencies N/A.
Priority Medium.

Identifier M5-UC-5.6-FR-3.
Title Send message to user.
Requirement User click on message button when user account details are shown.
Source Supervisor.
Rationale It will allow administrator to send message to user.
Business Rule (if N/A.
required)
Dependencies N/A.
Priority Low.

Identifier M5-UC-5.6-FR-4.
Title Suspend User Account.
Requirement User click on suspend account button when user account details are shown.
Source Supervisor.
Rationale It will suspend user account for certain period of time.
Business Rule (if N/A.
required)
Dependencies N/A.
Priority Medium.

Identifier M5-UC-5.6-FR-5.
Title Remove User Account.
Requirement User click on remove account button when user account details are shown.
Source Supervisor.
Rationale It will remove user account.
Software Requirements Specification for FireFly Page 87

Business Rule (if N/A.


required)
Identifier M5-UC-5.6-FR-6.
Title
Dependencies Remove
N/A. User Account.
Requirement
Priority User click on remove account button when user account details are shown.
Medium.
Source Supervisor.
Rationale It will remove user account.
Business Rule (if N/A.
required)
Dependencies N/A.
Priority Medium.

Identifier M6-UC-6.1-FR-1
Title Hiring Notification
Requirement Users will select hire button.
Source Supervisor.
Rationale This Requirement will trigger event to help enable the users to ´see the
notification upon being hired by any client.
Business Rule (if User must be logged in by his/her account.
required) User must visit a valid user account.
Dependencies N/A.
Priority Low.

Identifier M6-UC-6.1-FR-2
Title Hide Hiring Notification
Requirement Users will select hide hiring notification button.
Source Supervisor.
Rationale This Requirement will trigger event to help enable the users to ´not see
the notification upon being hired by any client.
Business Rule (if User must be logged in by his/her account.
required) User must visit a valid user account.
Dependencies N/A.
Priority Low.
Software Requirements Specification for FireFly Page 88

Identifier M6-UC-6.2-FR-1
Title Contract Completion Notification
Requirement Users will select Completed button.
Source Supervisor.
Rationale This Requirement will trigger event to help enable the users to ´notify the
client that the developer has completed the milestone.
Business Rule (if User must be logged in by his/her account.
required) User must visit a valid user account.
Dependencies N/A.
Priority Low.

Identifier M6-UC-6.3-FR-1
Title Contract Deadline Notification
Requirement Users will select Inform me about button.
Source Supervisor.
Rationale This Requirement will trigger event to help enable the users to ´notify the
developer to remind him of that the deadline is coming closer.
Business Rule (if User must be logged in by his/her account.
required) User must visit a valid user account.
Dependencies N/A.
Priority Low.

Identifier M6-UC-6.3-FR-2
Title Contract Deadline passed Notification
Requirement Users will select Inform me about button.
Source Supervisor.
Rationale This Requirement will trigger event to help enable the users to ´notify the
developer to remind him of that the deadline has passed.
Business Rule (if User must be logged in by his/her account.
required) User must visit a valid user account.
Dependencies N/A.
Software Requirements Specification for FireFly Page 89

Priority Low.

Identifier M6-UC-6.4-FR-1.
Title Interest related contract alert Notification.
Requirement Users will select interest field.
Source Supervisor.
Rationale This Requirement will trigger event to help enable the users to ´notify the
developer to alert him about his/her interest related contract.
Business Rule (if User must be logged in by his/her account.
required) User must visit a valid user account.
Dependencies N/A.
Priority Medium.

Identifier M6-UC-6.4-FR-2
Title Interest selection.
Requirement Users will select different interest field.
Source Supervisor.
Rationale This Requirement will trigger event to help enable the users to ´select
his/her interest related contract.
Business Rule (if User must be logged in by his/her account.
required) User must visit a valid user account.
Dependencies N/A.
Priority Low.

Identifier M6-UC-6.4-FR-3
Title Interest selection limit.
Requirement Users will select different interest field.
Source Supervisor.
Rationale This Requirement will trigger event to help enable the users to ´select
his/her interest related contract. By limiting him to select 3 maximum
Software Requirements Specification for FireFly Page 90

Business Rule (if User must be logged in by his/her account.


required) User must visit a valid user account.
Dependencies N/A.
Priority Low.

5. Non Functional Requirements


The nonfunctional requirements of FireFly are given below:

5.1 Usability

USE-1: The FireFly shall allow a user to retrieve the previous post with a single interaction.
USE-2: The app will take a maximum of 5 minutes for an average user to learn the system.
USE-3: All delays in the system longer than 2 seconds will produce a message of “please wait”.

5.2 Performance

PER-1: Maximum of 100,000 Simultaneous users can be supported by the application.


PER-2: Maximum of 100,000 Simultaneous users can be supported by the application.
PER-3: Maximum of 100 accounts/hour can be created.
1.3 Supportability
SR-1
The application will be compatible with android version 4.4, kit Kat and higher.pokm2221.

5.3 Availability

AVA-1: The System shall be available 24/7.

5.4 Modifiability

MR-1: The system is easily modifiable according to the change in requirements. It will take 2
developers and average of about 3 months to complete a major modification.

5.5 Security

SR-1: Hashed Cookies storing user information, only translated by back-end algorithms.
SR-2: Hash encrypted password and account details (Salted & MD5 encryptions).
Software Requirements Specification for FireFly Page 91

6. External interface requirements


6.1 User interfaces

The System will interact with the user using GUI, it will user friendly, navigation, clear quality
images, clear text sizes, labels, graphs, tables, buttons and headings to make it simple and
understandable for the users.
Navigation Menu Panel, Back Button, Home Button, Save as Bookmark button will appear on every
page to make it easily navigate able through the whole application.
Software Requirements Specification for FireFly Page 92
Software Requirements Specification for FireFly Page 93

6.2 Software interfaces


As software is developed in a Native platform and a web based. It will need the internet
connectivity every time to perform perfectly.
The Application communicates with the System’s REST API for sending requests and handle
responses generated by the REST API.

6.3 Hardware interfaces


The firefly is purely a software application no hardware are used or integrated in any form so there
are no hardware interfaces.

6.4 Communications interfaces

As system to be developed is a website and an application, therefore it will always need an internet
connection to run. All the requests by the users and the responses by the system require internet for
the communication between them. System works under HTTPS protocol i.e. (hypertext transfer
protocol). This whole procedure is works under HTTP protocol.
Software Requirements Specification for FireFly Page 94

7. Project Gantt chart

8. Conclusion
This concept of FireFly a smart application will have a profound effect on the market who are just
wasting hundreds of hours and bundles of money in the search of Developers who have some
limited software and many times either side has problems to face. As mentioned in the introduction,
this concept has the capability of restoring the stand alone feel people used to have in the earlier
days. The results mentioned above are universally applicable to users of almost all domains
Software Requirements Specification for FireFly Page 95

9. References
9.1 Books
• Ian Somerville for concepts of Software Engineering.
9.2 Research Papers
• Modern problems in Computer work field research paper.

10. Plagiarism Report

You might also like