SlideShare uma empresa Scribd logo
1 de 55
Baixar para ler offline
ResearchColab
Software Requirement Specification
Team: Reckless 7
Institute of Information Technology
University of Dhaka
25 November, 2016
i
Executive Summery
ResearchColab is a research collaboration and data collection platform. Here
researchers can submit their draft papers to professional reviewers for review purpose.
They can also share research ideas and get data that is required to conduct their
research.
Researchcolab.com will be a web based platform for the researchers and paper
reviewers to interact with each other. To avail the service, each user needs to register in
the system. Researchers will post review jobs on the website and reviewers will bid for
the review. Then the researcher will choose the most suitable candidate, and have a one
to one communication with the person in order to hire him for the paper review. If
satisfied, the researcher can hire the reviewer for the review job.
Researches can also post data on the website that can be used in further researches.
The data can either be free or paid. Researchers can also discuss research related issues
in discussion boards.
ii
Contents
Introduction.......................................................................................................................... 1
1.1 Purpose ...............................................................................................................................................1
1.2 Intended Audience..............................................................................................................................1
Inception............................................................................................................................... 3
2.1 Introduction ........................................................................................................................................3
2.2 Identifying Stakeholders .....................................................................................................................3
2.3 Recognizing Multiple View Points.......................................................................................................4
2.4 Working towards Collaboration..........................................................................................................6
2.5 Conclusion...........................................................................................................................................7
Elicitation.............................................................................................................................. 8
3.1 Introduction ........................................................................................................................................8
3.2 Eliciting Requirements ........................................................................................................................8
3.3 Collaborative Requirements Gathering ..............................................................................................8
3.4 Quality Function Deployment.............................................................................................................9
3.5 Usage Scenario....................................................................................................................................9
3.6 Elicitation Work Product...................................................................................................................11
Scenario-Based Model......................................................................................................... 12
4.1 Introduction ......................................................................................................................................12
4.2 Use Case Scenario.............................................................................................................................12
4.3 Use Case Description ........................................................................................................................15
4.3.1 ResearchColab................................................................................................................................15
4.3.1.1 Authentication ............................................................................................................................16
4.3.1.2 Review Management..................................................................................................................18
4.3.1.3 Data Sharing................................................................................................................................22
4.3.1.4 Discussion Room.........................................................................................................................24
4.3.1.5 Profile Management ...................................................................................................................27
Data Model ......................................................................................................................... 29
5.1 Introduction ......................................................................................................................................29
5.2 Data Object Selection........................................................................................................................29
5.3 Data Objects and Attributes .............................................................................................................31
5.4 E-R Diagram.......................................................................................................................................32
Class-Based Model .............................................................................................................. 33
iii
6.1 Purpose .............................................................................................................................................33
6.2 General Classification........................................................................................................................33
6.3 Selection Characteristics...................................................................................................................35
6.4 Attribute Selection............................................................................................................................38
6.5 Method Selection..............................................................................................................................38
6.6 Class Diagram....................................................................................................................................40
6.7 Class Card..........................................................................................................................................41
Behavioral Model................................................................................................................ 44
7.1 Purpose .............................................................................................................................................44
7.2 Identifying Events..............................................................................................................................44
7.3 Sequence Diagram ............................................................................................................................46
Conclusion........................................................................................................................... 51
1
Chapter-1
Introduction
1.1 Purpose
This is the Software Requirements Specification (SRS) for ResearchColab. The document
contains detailed functional, non-functional, and support requirements for the project.
It also establishes a baseline for the development of the system in respect of the
analyzed requirements.
This SRS serves as the ground of presenting user requirements to the developer. It
provides a common reference point for both the developer team and stakeholder
community. This document’s content may evolve over time as users and developers
work together in developing the system. But its fundamental output will remain
unchanged.
1.2 Intended Audience
This SRS is intended for all the stakeholders related to ResearchColab - project managers,
system analyst, designers, developers and quality assurance engineers. They will use it
for the following reasons-
The project managers will design their plan on the basis of this document. They
will set milestones and delivery dates. They will also ensure that the development team
is on track.
The system analyst will utilize this document in order to solve the problem
domain and build up an effective architecture that the developers will implement.
The designers will prepare the systems design based on this document. They will
continually refer back to this SRS to ensure that the system they are designing will fulfill
the customers’ needs.
Developers will use this document as a basis for developing the system’s
functionality. The developers will link the requirements defined in this SRS to the
2
software they create to ensure that they have created software that will fulfill all of the
customers’ documented requirements.
Quality assurance engineers will use the SRS to derive test plans and test cases.
When portions of the software are complete, they will run their tests on that software
to ensure that the software fulfills the requirements documented in this SRS. They will
again run their tests on the entire system when it is complete and ensure that all
requirements documented in this SRS have been completed.
3
Chapter-2
Inception
2.1 Introduction
At this chapter we have analyzed the scope and the nature of problem in hand. We have
identified the concurrent needs and conflict requirements among the stakeholders of
ResearchColab. To establish the groundwork, we have worked with the following
factors:
 Identifying Stakeholders
 Recognizing Multiple Viewpoints
 Working towards Collaboration
2.2 Identifying Stakeholders
For this project, we have determined the stakeholder as the person or group who will be
affected by the system directly or indirectly. Out stakeholders mainly consists of end-
users who interact with the system. Although, we intend to develop ResearchColab for
industrial use, we are building it for using only in the IIT premises for the sake of this
project. For this reason, we have selected the stakeholders from the scope of IIT only.
To identify the stakeholders, considered the following facts:
o Who will be using the project outcomes?
o Who gets to make the decisions about the project?
o Who has resources I need to get the project done?
o Whose work will my project affect? (During the project and also once the
project is completed)
Concluding thoughts on Stakeholders, we identified following stakeholders for our
project:
1. Course coordinator: The Course coordinator is the person who has the final
authority over our finished product. His position empowers him to veto a decision made
4
by the other Stakeholders. As head of the course, he has direct authority over the
resources and our team— the people developing the web application and doing much of
the “management” end of this project.
2. Researchers: The researchers are the ultimate user of the final developed
product. We have considered the students of final year of BBSE program and the
students of Master’s program of IIT as the researchers of our domain.
3. Paper reviewers: The reviewers will be another important end user along with
the researchers. That’s why we have considered them as our stakeholders. But our
limitation does not permit us to have an interview of a range of reviewers. That’s why
we have talked with the faculty members from IIT in order to get a basic idea regarding
the requirements and developed a baseline of requirement according to our
understanding.
4. Project manager: The success and failure of this project is fully depended on
project manager. Moreover, further development, change management, every steps of
the life cycle of software development will be coordinated and monitored by the project
manager.
5. Developers: We have selected developers as stakeholders because they will
develop this system and work for further development. If any system interruption
occurs, they will find the problem and try to solve it.
6. QA engineers: Quality Assurance Engineer will control the quality of the
product, test to find bug. They need to refer to this documentation and validate the final
product and check if it’s up to the mark or not.
2.3 Recognizing Multiple View Points
We have collected the following view points by discussing with our stakeholders.
1. Course coordinator:
a. A proper documentation incorporating all the software engineering
phases should be made with the product.
b. The product needs to innovative and needs to address some sort of real
world problem of the users.
5
c. The project development team needs to follow all the required steps of
the software engineering process.
2. Researchers:
a. The UI needs to be user friendly and easily accessible.
b. The discussion forum needs to be navigation friendly. And any topic can
be searched efficiently.
c. The system can be accessible through the browser from anywhere and
anytime.
d. There needs to be a separate mobile friendly version for the website.
e. A strong security system should be imposed here. And all sorts of
privacy issues need to be taken care of.
3. Paper reviewers:
a. There needs to be a secured way of payment and any type of issues
regarding payment needs to be resolved effectively.
b. The UI needs to be user friendly.
c. The whole system needs to be strongly secured.
4. Project manager:
a. The product should be maintained easily.
b. A proper documentation incorporating all the software engineering
phases should be made with the product.
c. Allocating resources in such a way so that every resource will
be available on demand basis.
5. Developers:
a. Documentation regarding the development needs to be done properly,
so that any future issues can be resolved easily.
6
b. The product design and architecture, software development lifecycle
needs to be defined clearly and effectively so that the developers know
what to do.
6. Quality assurance engineers:
a. Documentation regarding the requirement analysis needs to be done
properly so that the end product can be tested properly.
2.4 Working towards Collaboration
Every stakeholder has their own requirements. We followed following steps to merge
these requirements:
 Identify the common and conflicting requirements
 Categorize the requirements
 Take priority points for each requirement from stakeholders and on the
basis of this voting prioritize the requirements
 Make final decision about the requirements
Common Requirements:
 User will be able to post review request
 Any user will be able to bid on a review post
 Dataset can be shared by all users
 Users can open discussion room and post comment there
 User friendliness
 Security
 Proper documentation
Conflicting Requirements:
Ease of access and strong security
Final Requirements:
We finalized following requirements for the system by categorizing and prioritizing the
requirements:
 The UI will be user friendly and easily accessible. There needs to be
effective search function and other functionality.
7
 User will be able to post review request and any other user will be able to
bid on that
 Dataset can be shared by all users
 Users can open discussion room and post comment there
 The system will be highly secured. Any issues related the payment and
privacy will be handled effectively.
2.5 Conclusion
Inception phase helped us to establish basic understanding about ResearchColab;
identify the people who will be benefited if this software is developed, define the nature
of the software and establish a preliminary communication with our stakeholders.
8
Chapter-3
Elicitation
3.1 Introduction
Elicitation helps the customer to define the requirement more specifically. This
phase faces many problems like- problems of scope, problems of volatility, and
problems of understanding. To overcome these problems, we have worked in an
organized and systematic manner.
3.2 Eliciting Requirements
Unlike Inception, where Question and Answer approach is used, Elicitation makes
use of a requirements elicitation format that combines the elements of problem
solving, elaboration, negotiation, and specification. It requires the cooperation of
a group of end-users and developers to elicit requirements.
3.3 Collaborative Requirements Gathering
There are many different approaches to collaborative requirements gathering.
Each approach makes use of a slightly different scenario. We followed the
subsequent steps to do it:
i. Meetings were conducted with probable clients, researchers and data
scientists. They were questioned about their requirements and
expectations from the tool.
ii. They were asked about the problems they are facing in their work. We also
inquired regarding the efficiency of the current process.
iii. At last we selected our final requirement list from these meetings.
9
3.4 Quality Function Deployment
The technique which translates the needs of the customer into technical
requirements for software is called Quality Function Deployment (QFD).
QFD concentrates on maximizing customer satisfaction from the Software
Engineering process. With respect to our project the following requirements are
identified by QFD-
 User will be able to post review request and any other user will be able to
bid on that.
 Dataset can be shared by all users.
 Users can open discussion room and post comment there.
 Users will be able to chat with other users.
 There needs to be effective search function and other functionality.
 The system will be highly secured. Any issues related the payment and
privacy will be handled effectively.
3.5 Usage Scenario
ResearchColab is a web-based platform which aims to assist researchers with
their work. Researchers will be able to invite reviewers for examining their draft
paper through post, and share dataset with others. There will be discussion rooms
on different topics or ideas. Users can also search through the site for posts,
datasets, discussions rooms, and researchers.
Guest users will view posts of review request, data offering, and conversations of
public discussion rooms. They can search through the sites as well. For getting
further privileges they will need to sign up and become an authenticated user.
Authenticated users have all the privileges of a guest user. They can post review
request, response to interested review requests, and comment under them. They
can also share and download datasets. They have privilege to create public or
private discussion room as well as comment in discussions. They will also have to
manage their profile information.
When a review request is posted it enters into open for response phase. A review
request will contain research domain, work overview, time limit for review,
10
payment range, attachment (optional) and expertise tag for expected reviewers.
Interested users will be able to response against any request, as well as post
comments under it. Now review request poster will choose probable reviewer
from the list of interested users. He can then converse one-to-one with interested
reviewers and finalize the contract. After the contract is confirmed, the reviewer
enters time range and payment. Then request poster accepts the deal as well as
submits his draft paper to the reviewer in PDF. Now the review request enters
into review under progress phase and the selected reviewer will be marked as
appointed. Reviewer will not be able to download or copy text of the submitted
research document. He can read the document only through the website. After
the completion of review, reviewer will submit his review work as a document to
the request poster. The post now enters into transaction phase. The request
poster will see that review work is submitted. But he will not be able to access it
then (will get to see a preview though); the payment must be issued first. After
the payment is cleared reviewer accepts it and the post enters into feedback
phase. In this phase both request poster and reviewer can score each other from
1 to 5, as well as give a response comment.
Researchers can share dataset in with other researchers through the system. Data
offering will contain name, detail description, paper (optional), attached dataset,
topic tag, and cost (can be 0 too). Users will not have direct access to the attached
dataset. If a user really wants the dataset, he will send a get request to the
dataset owner. The dataset owner then will forward the dataset to the user. But
the user will not be able to download the dataset yet, except for some preview.
He will have to issue the payment, and will get access to the dataset after the
payment is accepted.
Users may create both public and private discussion rooms on different topics.
Only the creator of a room can add other users to the discussion. A User may join
in any public discussion rooms. But private discussion rooms are only accessible to
added users. Users can post comments in the discussion rooms and vote up or
down to other users’ comments.
Every user will have to maintain his profile information. There will be three
categories of information- general, professional, performance. General
information includes- name, profile photo, email, short biography and social
websites. Professional information will contain expertise tags, links to published
11
papers, and CV. Previous works (both as reviewer and request poster), shared
dataset, and feedback score will comprise performance information. Users will
only be able to change his general and professional information. Performance
information will be managed by the system. All these information, except for
email address, will be available publicly.
3.6 Elicitation Work Product
Our elicitation work product includes:
 Statement of our requirements for ResearchColab
 Set of usage scenarios
 A statement of scope for our solution
 A list of clients, users, and other stakeholders who participated in
requirement specification process
12
Chapter-4
Scenario-Based Model
4.1 Introduction
The user’s point of view is used to describe Scenario-Based Model. In SRS this is
the first modeling phase. So, it serves as an input for the creation of other models.
4.2 Use Case Scenario
With the advancement of requirements gathering, functionalities and
responsibilities of the software starts to materialize. The following table enlists
primary components of the system:
Table-4.2 Use Case Scenario
Level-0 Level-1 Level-2 Actors
ResearchColab Authentication Sign up Guest User
Login Authenticated User
Logout Authenticated User
Review
Management
Post Review Request Authenticated User
(Researcher)
Bid for Review Request Authenticated User
(Reviewer)
Choose Reviewer Authenticated User
(Researcher)
13
Comment Authenticated User
One-to-One
Conversation
Authenticated User
Contact Authenticated User
(Researcher &
Reviewer)
Review Work
Submission
Authenticated User
(Reviewer)
Payment Authenticated User
(Researcher)
Feedback Authenticated User
(Researcher &
Reviewer)
Data Sharing Share Data Authenticated User
(Dataset Owner)
Request for Data Authenticated User
(Dataset Seeker)
Forward Dataset Authenticated User
(Dataset Owner)
Payment Authenticated User
(Dataset Seeker)
Download Data Authenticated User
(Dataset Seeker)
Discussion
Room
Create Discussion
Room
Authenticated User
(Discussion Creator)
Add Members Authenticated User
14
(Discussion Creator)
Join Public Discussion
Room
Authenticated User
(Non-Member)
Comment Authenticated User
(Discussion Creator &
Member)
Vote Authenticated User
(Discussion Creator &
Member)
Profile
Management
Update Personal
Information
Authenticated User
Update Performance
Information
Authenticated User
View Professional
Information
Authenticated User
15
4.3 Use Case Description
In this section Use Case Scenario will be elaborated to Use Case Diagram, and
Description. Figure-4.3 is the Use Case Diagram of level-0 for ResearchColab:
4.3.1 ResearchColab
Here Figure-4.3.1 is the detailed form of level-0:
16
4.3.1.1 Authentication
Authentication can be divided into three sub-modules. Figure-4.3.1.1 shows this:
4.3.1.1.1 Use Case: Sign up
Primary Actor: Guest User.
Secondary Actor: N/A
Goal in Context: User registers to the system.
Scenario:
1. Visit the sign up page.
2. Enter email address and password.
3. Click ‘Sign up’ button.
Exceptions:
1. System failure.
2. Error in connection.
Priority: Essential, must be implemented.
Precondition: N/A
When Available: First increment.
17
Frequency of Use: Many times per day.
4.3.1.1.2 Use Case: Log in
Primary Actor: Guest User.
Secondary Actor: N/A
Goal in Context: User enters the system.
Scenario:
1. Visit the log in page.
2. Enter valid email address and password.
3. Click ‘Log in’ button.
Exceptions:
1. System failure.
2. Error in connection.
Priority: Essential, must be implemented.
Precondition: N/A
When Available: First increment.
Frequency of Use: Many times per day.
4.3.1.1.3 Use Case: Log out
Primary Actor: Authenticated User.
Secondary Actor: N/A
Goal in Context: User exits from the system.
Scenario:
1. Click the ‘Log out’ button.
2. Get out of the system.
Exceptions:
1. System error.
18
2. Error in connection.
Priority: Essential, must be implemented.
Precondition: Must be logged in.
When Available: First increment.
Frequency of Use: Many times per day.
4.3.1.2 Review Management
Review Management has nine sub-modules (Figure-4.3.1.2):
4.3.1.2.1 Use Case: Post Review Request
Primary Actor: Authenticated User (Researcher).
Secondary Actor: N/A
Goal in Context: Researcher posts a review job on the system.
19
Scenario:
1. Select ‘Post Review Request’.
2. Enter title.
3. Give description.
4. Add expertise tag.
5. Click on ‘Post’ button.
Exceptions:
1. System is not responding.
2. Unable to Upload.
3. File format mismatch.
Priority: Essential, must be implemented.
Precondition: Must be logged in.
When Available: Second increment.
Frequency of Use: Several times per month.
4.3.1.2.2 Use Case: Bid for Review Request
Primary Actor: Authenticated User (Reviewer).
Secondary Actor: Authenticated User (Researcher).
Goal in Context: Reviewer shows interest to a review job.
Scenario:
1. View a review request.
2. Click on the “Bid” button.
Exceptions:
1. System is not responding.
2. Network error.
Priority: Essential, must be implemented.
Precondition: Must be logged in.
When Available: Second increment.
20
Frequency of Use: Several times per week.
4.3.1.2.3 Use Case: Choose Reviewer
Primary Actor: Authenticated User (Researcher).
Secondary Actor: Authenticated User (Reviewer).
Goal in Context: Researcher selects probable reviewer.
Scenario:
1. Open bidder list of review post.
2. Enter into bidders’ profile.
3. Select bidder.
Exceptions:
1. System is not responding.
2. Network error.
Priority: Essential, must be implemented.
Precondition: Must be logged in.
When Available: Third increment.
Frequency of Use: Several times per month.
4.3.1.2.4 Use Case: Comment
Primary Actor: Authenticated User.
Secondary Actor: N/A
Goal in Context: User posts comment to a post.
Scenario:
1. Enter the comment.
2. Press ‘Ok’ button.
Exceptions:
1. Connection problem.
21
2. System is not responding.
Priority: Moderate, may be implemented.
Precondition: Must be logged in.
When Available: Second increment.
Frequency of Use: Several times per week.
4.3.1.2.5 Use Case: One-to-One Conversation
Primary Actor: Authenticated User.
Secondary Actor: N/A
Goal in Context: Users communicates with each other.
Scenario:
1. Select user.
2. Write message.
3. Send message.
Exceptions:
1. Connection error.
2. System failure.
Priority: moderate, may be implemented.
Precondition: Must be logged in.
When Available: Second increment.
Frequency of Use: Several times per day.
22
4.3.1.3 Data Sharing
This module has five phases. Figure-4.3.1.3 shows this:
4.3.1.3.1 Use Case: Share Data
Primary Actor: Authenticated User (Data Owner).
Secondary Actor: N/A
Goal in Context: Data owner shares dataset to other data scientists.
Scenario:
1. Select ‘Share Data’.
2. Enter title.
3. Give description.
4. Add data tag.
5. Click on ‘Post’ button.
Exceptions:
1. System is not responding.
23
2. Unable to Upload.
3. Dataset format mismatch.
4. Dataset size exceeds limit.
5. Invalid dataset.
Priority: Essential, must be implemented.
Precondition: Must be logged in.
When Available: Second increment.
Frequency of Use: Several times per month.
4.3.1.3.2 Use Case: Request for Data
Primary Actor: Authenticated User (Dataset Seeker).
Secondary Actor: Authenticated User (Dataset Owner).
Goal in Context: Get dataset.
Scenario:
1. View dataset information.
2. Click on the “Send Request” button.
Exceptions:
1. System is not responding.
2. Network error.
Priority: Essential, must be implemented.
Precondition: Must be logged in.
When Available: Second increment.
Frequency of Use: Several times per month.
24
4.3.1.4 Discussion Room
Discussion Room can be divided into five sub-modules (Figure-4.3.1.4):
4.3.1.4.1 Use Case: Create Discussion Room
Primary Actor: Authenticated User (Discussion Creator)
Secondary Actor: N/A.
Goal in Context: A private or public room is created for discussion.
Scenario:
1. Select “Discussion Room Creation” option.
2. Enter room title.
3. Select room accessibility- private, or public.
4. Click “Create Room” button.
Exceptions:
1. Invalid discussion room title.
2. System failure.
25
3. Connection failure.
Priority: Essential, must be implemented.
When Available: Second increment.
Frequency of Use: Few times per year.
4.3.1.4.2 Use Case: Add Member
Primary Actor: Authenticated User (Discussion Creator)
Secondary Actor: N/A.
Goal in Context: Add member to a room.
Scenario:
1. Select “Add Member” option.
2. Search users by name.
3. Select user.
4. Click “Add” button.
Exceptions:
1. User with the name does not exist.
2. System failure.
3. Connection failure.
Priority: Moderate, may be implemented.
When Available: Third increment.
Frequency of Use: Several times per day.
4.3.1.4.3 Use Case: Join Public Discussion
Primary Actor: Authenticated User (Non-Member)
Secondary Actor: N/A.
Goal in Context: User becomes member to a room.
Scenario:
1. Select discussion room.
26
2. Click “Join” button.
Exceptions:
1. System failure.
2. Connection failure.
Priority: Essential, must be implemented.
When Available: Second increment.
Frequency of Use: Few times per week.
4.3.1.4.4 Use Case: Comment
Primary Actor: Authenticated User (Member)
Secondary Actor: Authenticated User (Discussion Creator).
Goal in Context: Post comment in discussion room.
Scenario:
1. Enter into a discussion room.
2. Enter comment.
3. Click “Ok” button.
Exceptions:
1. System failure.
2. Connection failure.
Priority: Essential, may be implemented.
When Available: Second increment.
Frequency of Use: Many times per day.
27
4.3.1.5 Profile Management
Following Figure-4.3.1.5 shows three sub modules of Profile Management:
4.3.1.5.1 Use Case: Update Personal Information
Primary Actor: Authenticated User.
Secondary Actor: N/A.
Goal in Context: Update Profile Information.
Scenario:
1. Select “Update Personal Information” option.
2. Update required Information.
3. Click “Update” button.
Exceptions:
1. Invalid input.
2. System failure.
3. Error in connection.
Priority: Essential, must be implemented.
28
When Available: Second increment.
Frequency of Use: Few times per month.
4.3.1.5.2 Use Case: Update Professional Information
Primary Actor: Authenticated User.
Secondary Actor: N/A.
Goal in Context: Update Profile Information.
Scenario:
4. Select “Update Professional Information” option.
5. Update required Information.
6. Click “Update” button.
Exceptions:
4. Invalid input.
5. System failure.
6. Error in connection.
Priority: Essential, must be implemented.
When Available: Second increment.
Frequency of Use: Few times per month.
29
Chapter-5
Data Model
5.1 Introduction
When software requires interfacing with a database or complex data structures
need to be constructed and manipulated, data model is performed as part of
overall requirements modeling.
5.2 Data Object Selection
Data objects are representation of information which has different attributes.
Table-5.2 enlists all nouns from Usage Scenario and marks potential data objects:
Table-5.2 Data Object Selection
Noun Attributes Remark
researchcolab rejected
researchers rejected
reviewers rejected
share dataset rejected
discussion rooms rejected
topics rejected
users cv, email, profile photo, short
biography, social website, personal
information, professional information,
performance information
accepted
search rejected
guest users rejected
view posts rejected
review request research domain, work overview,
comment, expertise tag, payment, time
limit
accepted
download datasets rejected
30
profile information rejected
research domain rejected
work overview rejected
time limit rejected
payment rejected
expertise tag rejected
post comments rejected
review request poster rejected
probable reviewer rejected
pdf rejected
progress phase rejected
research document rejected
review work rejected
payment phase rejected
data sharing description, dataset, preview, payment,
comment, rating, tag, purchase count
accepted
dataset rejected
detail description rejected
topic tag rejected
direct access rejected
dataset owner rejected
profile photo rejected
short biography rejected
social websites rejected
professional information rejected
cv rejected
feedback score rejected
discussion comment, members, discussion type,
Creator, Topic, Tag, Votes
accepted
performance information rejected
professional information rejected
performance rejected
email address rejected
31
5.3 Data Objects and Attributes
This is a brief view of all attributes we have found so far:
32
5.4 E-R Diagram
Here relationships among all entities are shown as a diagram (Figure 5.4):
33
Chapter-6
Class-Based Model
6.1 Purpose
The objects that the system will manipulate, the operations that will be applied to
the objects and relationships between the objects are represented by Class-Based
Modeling. It also defines the collaborations that occur between the classes.
6.2 General Classification
Analysis classes can be marked by one of the following ways:
1. External Entity
2. Thing
3. Occurrence
4. Role
5. Organizational Unit
6. Place
7. Structure
Table-6.2 General Classification
Potential Class General Classification
ResearchColab Thing
researchers Role
reviewers Role
share dataset Structure
discussion rooms Thing
topics Thing
users Role
search Occurrence/ Event
34
guest users Role
viewing posts Occurrence/ Event
review request Thing
downloading datasets Occurrence/ Event
profile information Structure
research domain Thing
work overview Thing
time limit Occurrence/ Event
payment Thing
expertise tag Thing
posting comments Occurrence/ Event
review request poster Role
probable reviewer Role
pdf Thing
progress phase Occurrence/ Event
research document Thing
review work Thing
payment phase Occurrence/ Event
dataset Thing
detail description Thing
topic tag Thing
direct access Occurrence/ Event
dataset owner Role
profile photo Thing
short biography Thing
social websites Thing
personal information Structure
cv Thing
35
feedback score Thing
performance information Structure
professional information Structure
performance Thing
email address Thing
authenticated users Role
6.3 Selection Characteristics
Coad and Yourdon suggest six selection characteristics that should be used to
consider each potential class for inclusion in the analysis model:
1. Retained Information
2. Needed Services
3. Multiple Attributes
4. Common Attributes
5. Common operations
6. Essential Requirements
Table-6.3 Selection Characteristics
Potential Class Characteristic
Number That
Applies
Comment
ResearchColab None Rejected, problem domain
researchers All Rejected, as it can be
represented by authenticated
user
reviewers All Rejected, as it can be
represented by authenticated
user
36
sharing dataset 2 Rejected as 1,3,4,5,6 violated
discussion rooms All Accepted
topics None Rejected
users All Rejected, can be represented
by autheticated and guest
users
search 2 Rejected as 1,3,4,5,6 violated
guest users 1,2,3,5,6 Rejected
viewing posts 2 Rejected as 1,3,4,5,6 violated
review request 2 Rejected as 1,3,4,5,6 violated
and represents an action
downloading datasets 2 Rejected as 1,3,4,5,6 violated
and represents an action
profile information 1,2,3,4 Rejected
research domain None Rejected, problem domain
work overview 1 Rejected
time limit 1 Rejected
payment All Accepted
expertise tag 1 Rejected
posting comments 2 Rejected as 1,3,4,5,6 violated
and represents an action
review request poster 1,2,3,4,5 Rejected, as it can be
represented by researcher
probable reviewer 2 Rejected
pdf None Rejected, problem domain
progress phase 1 Rejected, represents a state
research document 1 Rejected, represents an
37
attribute
review work None Rejected, represents an action
payment phase 1 Rejected, represents a state
dataset 1,2,3,4,6 Accepted
detail description 1 Rejected, represents an
attribute
topic tag 1 Rejected, represents an
attribute
direct access None Rejected
dataset owner 1,2,3,4,5 Rejected, as it can be
represented by researcher
profile photo 1 Rejected, represents an
attribute
short biography 1 Rejected, represents an
attribute
social websites 1 Rejected, represents an
attribute
personal information 1,2,3,4,6 Accepted
cv 1 Rejected, represents an
attribute
feedback score 1 Rejected, represents an
attribute
performance information 1,2,3,4,6 Accepted
professional information 1,2,3,4,6 Accepted
performance None Rejected
email address 1 Rejected, represents an
attribute
38
authenticated users All Accepted
6.4 Attribute Selection
i. AuthenticatedUser = personalInformation + performanceInformation
+ professionalInformation
ii. DiscussionRoom = comment + AuthenticatedUser
iii. Payment = paymentState + timeLimit + reviewRequest + amount +
sender + receiver
iv. Dataset = owner + topicTag + detailDescription + preview +
paymentAmount
v. PersonalInformation = name + profilePhoto + emailAddress +
socialWebsites + shortBiography
vi. ProfessionalInformaton = CV + expertiseTag
vii. PerformanceInformation = feedbackScore + performance +
reviewWorks + discussionRooms
6.5 Method Selection
i. AuthenticatedUser = postReviewRequest(),
respondToReviewRequest(), search(), createDiscussionRoom(),
postDiscussion(), comment(), updateProfile(), bid(), pay(),
receiveReview(), postData(), downloadData(), provideFeedback()
ii. DiscussionRoom = getComment(), getDiscussionRoom()
iii. Payment = issuePayment(), receivePayment(), closePost()
iv. Dataset = getOwner(), setOwner(), getTopicTag(), setTopicTag(),
getDetailDescription(), setDetailDescription(), getPreview(),
setPreview(), getPaymentAmount(), setPaymentAmount()
39
v. PersonalInformation = getName(), setName(), getProfilePhoto(),
setProfilePhoto(), getEmailAddress(), setEmailAddress(),
getSocialWebsiteList(), setSocialWebsiteList(), getShortBiography(),
setShortBiography()
vi. ProfessionalInformaton = uploadCV(), getExpertiseTag(),
setExpertiseTag()
vii. PerformanceInformation = getFeedbackScore(), setFeedbackScore(),
calculatePerformance(), getPerformanceInformation(),
buildReviewWorkList(), getReviewWorks(), getDiscussionRoomPosts()
40
6.6 Class Diagram
We have shown here (Figure- 6.6), how the classes interact together to accomplish
certain goal.
Figure 6.6: Class Diagram
AuthenticatedUser
personal Information
performance information
professional information
postReviewRequest()
respondToReviewRequest()
search()
createDiscussionRoom()
postDiscussion()
comment()
updateProfile()
bid()
bid
pay()
PersonalInformation
name
profilePhoto
emailAddress
socialWebsites
shortBiography
getName()
setName()
getProfilePhoto()
setProfilePhoto()
getEmailAddress()
setEmailAddress()
getSocialWebsiteList()
setSocialWebsiteList()
getShortBiography()
setShortBiography()
DiscussionRoom
comment
AuthenticatedUser
getComment()
getDiscussionRoom()
Dataset
owner
topicTag
detailDescription
preview
paymentAmount
getOwner()setOwner()
getTopicTag()
setTopicTag()
getDetailDescription()
setDetailDescription()
getPreview()
setPreview()
getPaymentAmount()
setPaymentAmount()
PerformanceInformation
feedback score performance
reviewWorks
discussionRooms
getFeedbackScore()
setFeedbackScore()
calculatePerformance()
getPerformanceInformation()
buildReviewWorkList()
getReviewWorks()
getDiscussionRoomPosts()
Payment
paymentState
timeLimit
reviewRequest
amount
sender
receiver
issuePayment()
receivePayment()
closePost()
ProfessionalInformaton
CV
expertise tag
uploadCV()
getExpertiseTag()
setExpertiseTag()
getorgive
has
has
hascreate
share
41
6.7 Class Card
Class card represents a graphical view of responsibility and collaborator for
each class.
AuthenticatedUser
Responsibility Collaborator
[1] PostReviewRequest
[2] Respond toReviewRequest
[3] Search
[4] CreateDiscussionRoom
[5] PostDiscussion
[6] Comment
[7] UpdateProfile
[8] Bid
[9] Pay
GuestUser
GuestUser
Responsibility Collaborator
[1] ViewReviewRequest
[2] ViewData
[3] ViewDiscussion
DiscussionRoom
Responsibility Collaborator
[1] GetComment
[2] GetDiscussionRoom
AuthenticatedUser
42
Payment
Responsibility Collaborator
[1] IssuePayment
[2] ReceivePayment
[3] ClosePost
AuthenticatedUser
Dataset
Dataset
Responsibility Collaborator
[1] GetOwner
[2] SetOwner
[3] GetTopicTag
[4] SetTopicTag
[5] GetDetailDescription
[6] SetDetailDescription
[7] GetPreview
[8] SetPreview
[9] GetPaymentAmount
[10] SetPaymentAmount
AuthenticatedUser
PersonalInformation
Responsibility Collaborator
[1] Get Name
[2] Set Name
[3] GetProfilePhoto
[4] Set Profile Photo
[5] Get Email Address
[6] Set Email Address
AuthenticatedUser
43
[7] GetSocialWebsite List
[8] Set Social Website List
[9] GetShort Biography
[10] Set Short Biography
ProfessionalInformaton
Responsibility Collaborator
[1] Upload CV
[2] Get Expertise Tag
[3] Set Expertise Tag
AuthenticatedUser
PerformanceInformation
Responsibility Collaborator
[1] GetFeedbackScore
[2] SetFeedback Score
[3] Calculate Performance
[4] GetPerformanceInformation
[5] Build Review Work List
[6] GetReview Works
[7] Get Discussion Room Posts
AuthenticatedUser
Dataset
44
Chapter-7
Behavioral Model
7.1 Purpose
When the system is perceived in terms of states and transitions, it is called
Behavior Modeling. It is also known as State Modeling, State Machines, or State
Transition Matrix.
This requires both identifying all of the interesting states of being that software or
its components are likely to be in. And also, at a high level, abstracting what
events are likely to cause software or its components to change between states of
being.
7.2 Identifying Events
Here we have identified events from the Usage Scenario and listed their
corresponding initiators & collaborators.
Table-7.2 Identifying Events
Event Initiator Collaborator
search posts, datasets,
discussions rooms, and
researchers
Authenticated
User, Guest User
post review request Authenticated User
(Researcher)
response to interested review
requests
Authenticated User
(Reviewer)
Authenticated User
(Researcher)
converse one-to-one Authenticated User
send a get request to the
dataset owner
Authenticated User
( Researcher)
Authenticated User
(Dataset Owner)
45
create public or private
discussion rooms
Authenticated User
(Discussion Room
Creator)
add users to the discussion Authenticated User
( Discussion Room
Creator)
Authenticated User
(Non-Member)
maintain profile information Authenticated User
46
7.3 Sequence Diagram
Here we have identified events from the Usage Scenario and listed their
corresponding initiators & collaborators. Figure-7.3.1 to Figure-7.3.5 represents
Sequence Diagrams for all major events of this project.
47
48
49
50
51
Chapter-8
Conclusion
From this document, the readers will get a clear and easy view of the project. He
will also get a good understanding of how the system will work.
This SRS document can be used effectively to maintain the software development
cycle for the project. We have presented a detailed description of the total
system. It will be much easy to conduct the whole project using this SRS. It will
also help us to determine the pitfalls that may come ahead.

Mais conteúdo relacionado

Mais procurados

Srs template
Srs templateSrs template
Srs templatemuqeet19
 
SRS for student database management system
SRS for student database management systemSRS for student database management system
SRS for student database management systemSuman Saurabh
 
Software requirements specification (srs) by Dan Dharma
Software requirements specification (srs) by  Dan DharmaSoftware requirements specification (srs) by  Dan Dharma
Software requirements specification (srs) by Dan DharmaAvudaiappan Dharma Ph.D.,
 
Software Requirements Specification (SRS) for Online Tower Plotting System (O...
Software Requirements Specification (SRS) for Online Tower Plotting System (O...Software Requirements Specification (SRS) for Online Tower Plotting System (O...
Software Requirements Specification (SRS) for Online Tower Plotting System (O...Dr Sukhpal Singh Gill
 
Ch6-Software Engineering 9
Ch6-Software Engineering 9Ch6-Software Engineering 9
Ch6-Software Engineering 9Ian Sommerville
 
Srs course managment system
Srs course managment systemSrs course managment system
Srs course managment systemUbaid Rehman
 
SRS Attendance ERP
SRS Attendance ERPSRS Attendance ERP
SRS Attendance ERPAkshun kc
 
project proposal final
project proposal finalproject proposal final
project proposal finalArslan Mehmood
 
Ch16-Software Engineering 9
Ch16-Software Engineering 9Ch16-Software Engineering 9
Ch16-Software Engineering 9Ian Sommerville
 
Software Requirements specification for database design of music school manag...
Software Requirements specification for database design of music school manag...Software Requirements specification for database design of music school manag...
Software Requirements specification for database design of music school manag...Amali Matharaarachchi
 
SRS Document Of Course management software system.doc
SRS Document Of Course management software system.docSRS Document Of Course management software system.doc
SRS Document Of Course management software system.docMaRwa Samih AL-Amri
 
Oop final project documentation jose pagan v2.1
Oop final project documentation  jose pagan v2.1Oop final project documentation  jose pagan v2.1
Oop final project documentation jose pagan v2.1Jose Pagan
 
2. requerimientos técnicos
2. requerimientos técnicos2. requerimientos técnicos
2. requerimientos técnicosRosita Falen
 

Mais procurados (20)

Srs template
Srs templateSrs template
Srs template
 
SRS for student database management system
SRS for student database management systemSRS for student database management system
SRS for student database management system
 
Software requirement specification(SRS)
Software requirement specification(SRS)Software requirement specification(SRS)
Software requirement specification(SRS)
 
Software requirements specification (srs) by Dan Dharma
Software requirements specification (srs) by  Dan DharmaSoftware requirements specification (srs) by  Dan Dharma
Software requirements specification (srs) by Dan Dharma
 
Software Requirements Specification (SRS) for Online Tower Plotting System (O...
Software Requirements Specification (SRS) for Online Tower Plotting System (O...Software Requirements Specification (SRS) for Online Tower Plotting System (O...
Software Requirements Specification (SRS) for Online Tower Plotting System (O...
 
Ch6-Software Engineering 9
Ch6-Software Engineering 9Ch6-Software Engineering 9
Ch6-Software Engineering 9
 
Srs course managment system
Srs course managment systemSrs course managment system
Srs course managment system
 
SRS Attendance ERP
SRS Attendance ERPSRS Attendance ERP
SRS Attendance ERP
 
Srs
SrsSrs
Srs
 
project proposal final
project proposal finalproject proposal final
project proposal final
 
Ch16-Software Engineering 9
Ch16-Software Engineering 9Ch16-Software Engineering 9
Ch16-Software Engineering 9
 
Software Requirements specification for database design of music school manag...
Software Requirements specification for database design of music school manag...Software Requirements specification for database design of music school manag...
Software Requirements specification for database design of music school manag...
 
SRS Document Of Course management software system.doc
SRS Document Of Course management software system.docSRS Document Of Course management software system.doc
SRS Document Of Course management software system.doc
 
UML
UMLUML
UML
 
Oop final project documentation jose pagan v2.1
Oop final project documentation  jose pagan v2.1Oop final project documentation  jose pagan v2.1
Oop final project documentation jose pagan v2.1
 
Ch6 architectural design
Ch6 architectural designCh6 architectural design
Ch6 architectural design
 
Srs template
Srs templateSrs template
Srs template
 
2. requerimientos técnicos
2. requerimientos técnicos2. requerimientos técnicos
2. requerimientos técnicos
 
Context diagram
Context diagramContext diagram
Context diagram
 
Software Design Document
Software Design DocumentSoftware Design Document
Software Design Document
 

Destaque

Software Requirement Specification For Smart Internet Cafe
Software Requirement Specification For Smart Internet CafeSoftware Requirement Specification For Smart Internet Cafe
Software Requirement Specification For Smart Internet CafeHari
 
Software Requirement Specification
Software Requirement SpecificationSoftware Requirement Specification
Software Requirement SpecificationVishal Singh
 
Software Requirement Specification Master Template
Software Requirement Specification Master TemplateSoftware Requirement Specification Master Template
Software Requirement Specification Master TemplateWayne Chen
 
Software Requirement Specification In The Real World - Tobias Andersen - 2009...
Software Requirement Specification In The Real World - Tobias Andersen - 2009...Software Requirement Specification In The Real World - Tobias Andersen - 2009...
Software Requirement Specification In The Real World - Tobias Andersen - 2009...Hello Group
 
2.software requirement specification
2.software requirement specification2.software requirement specification
2.software requirement specificationDeepak Sharma
 
Software Requirement Specification
Software Requirement SpecificationSoftware Requirement Specification
Software Requirement SpecificationNiraj Kumar
 
Software requirement specification
Software requirement specificationSoftware requirement specification
Software requirement specificationAmit Gandhi
 
Software Requirements Specification on Student Information System (SRS on SIS)
Software Requirements Specification on Student Information System (SRS on SIS)Software Requirements Specification on Student Information System (SRS on SIS)
Software Requirements Specification on Student Information System (SRS on SIS)Minhas Kamal
 
Software requirement and specification
Software requirement and specificationSoftware requirement and specification
Software requirement and specificationAman Adhikari
 
SRS on Online Blood Bank Managment system...
SRS on Online Blood Bank Managment system... SRS on Online Blood Bank Managment system...
SRS on Online Blood Bank Managment system... GCWUF
 
Software Requirement Specification - Software Pack Solution 14
Software Requirement Specification - Software Pack Solution 14Software Requirement Specification - Software Pack Solution 14
Software Requirement Specification - Software Pack Solution 14Syed Farjad Zia Zaidi
 
The Areas of Business Analysis Knowledge
The Areas of Business Analysis KnowledgeThe Areas of Business Analysis Knowledge
The Areas of Business Analysis KnowledgeAndrea McCorkle
 
Business analysis - the basics
Business analysis - the basicsBusiness analysis - the basics
Business analysis - the basicsPaul Jennings
 
Software Project Management: Software Architecture
Software Project Management: Software ArchitectureSoftware Project Management: Software Architecture
Software Project Management: Software ArchitectureMinhas Kamal
 
Software Project Presentation: Leaf Me Alone
Software Project Presentation: Leaf Me AloneSoftware Project Presentation: Leaf Me Alone
Software Project Presentation: Leaf Me AloneMinhas Kamal
 
Complete MPICH2 Clustering Manual in Ubuntu
Complete MPICH2 Clustering Manual in UbuntuComplete MPICH2 Clustering Manual in Ubuntu
Complete MPICH2 Clustering Manual in UbuntuMinhas Kamal
 
Numerical Method Analysis: Algebraic and Transcendental Equations (Linear)
Numerical Method Analysis: Algebraic and Transcendental Equations (Linear)Numerical Method Analysis: Algebraic and Transcendental Equations (Linear)
Numerical Method Analysis: Algebraic and Transcendental Equations (Linear)Minhas Kamal
 

Destaque (20)

Software Requirement Specification For Smart Internet Cafe
Software Requirement Specification For Smart Internet CafeSoftware Requirement Specification For Smart Internet Cafe
Software Requirement Specification For Smart Internet Cafe
 
Software Requirement Specification
Software Requirement SpecificationSoftware Requirement Specification
Software Requirement Specification
 
Software Requirement Specification Master Template
Software Requirement Specification Master TemplateSoftware Requirement Specification Master Template
Software Requirement Specification Master Template
 
Software Requirement Specification
Software Requirement SpecificationSoftware Requirement Specification
Software Requirement Specification
 
Software Requirement Specification In The Real World - Tobias Andersen - 2009...
Software Requirement Specification In The Real World - Tobias Andersen - 2009...Software Requirement Specification In The Real World - Tobias Andersen - 2009...
Software Requirement Specification In The Real World - Tobias Andersen - 2009...
 
2.software requirement specification
2.software requirement specification2.software requirement specification
2.software requirement specification
 
Software Requirement Specification
Software Requirement SpecificationSoftware Requirement Specification
Software Requirement Specification
 
Software requirement specification
Software requirement specificationSoftware requirement specification
Software requirement specification
 
Software Requirements Specification on Student Information System (SRS on SIS)
Software Requirements Specification on Student Information System (SRS on SIS)Software Requirements Specification on Student Information System (SRS on SIS)
Software Requirements Specification on Student Information System (SRS on SIS)
 
Software requirement and specification
Software requirement and specificationSoftware requirement and specification
Software requirement and specification
 
SRS on Online Blood Bank Managment system...
SRS on Online Blood Bank Managment system... SRS on Online Blood Bank Managment system...
SRS on Online Blood Bank Managment system...
 
Software Requirement Specification - Software Pack Solution 14
Software Requirement Specification - Software Pack Solution 14Software Requirement Specification - Software Pack Solution 14
Software Requirement Specification - Software Pack Solution 14
 
The Areas of Business Analysis Knowledge
The Areas of Business Analysis KnowledgeThe Areas of Business Analysis Knowledge
The Areas of Business Analysis Knowledge
 
Business analysis - the basics
Business analysis - the basicsBusiness analysis - the basics
Business analysis - the basics
 
Ba notes
Ba notesBa notes
Ba notes
 
Software Project Management: Software Architecture
Software Project Management: Software ArchitectureSoftware Project Management: Software Architecture
Software Project Management: Software Architecture
 
Software Project Presentation: Leaf Me Alone
Software Project Presentation: Leaf Me AloneSoftware Project Presentation: Leaf Me Alone
Software Project Presentation: Leaf Me Alone
 
Complete MPICH2 Clustering Manual in Ubuntu
Complete MPICH2 Clustering Manual in UbuntuComplete MPICH2 Clustering Manual in Ubuntu
Complete MPICH2 Clustering Manual in Ubuntu
 
Business Analysis fundamentals
Business Analysis fundamentals Business Analysis fundamentals
Business Analysis fundamentals
 
Numerical Method Analysis: Algebraic and Transcendental Equations (Linear)
Numerical Method Analysis: Algebraic and Transcendental Equations (Linear)Numerical Method Analysis: Algebraic and Transcendental Equations (Linear)
Numerical Method Analysis: Algebraic and Transcendental Equations (Linear)
 

Semelhante a Software Project Management: Software Requirement Specification

Thesis - Nora Szepes - Design and Implementation of an Educational Support Sy...
Thesis - Nora Szepes - Design and Implementation of an Educational Support Sy...Thesis - Nora Szepes - Design and Implementation of an Educational Support Sy...
Thesis - Nora Szepes - Design and Implementation of an Educational Support Sy...Nóra Szepes
 
A.R.C. Usability Evaluation
A.R.C. Usability EvaluationA.R.C. Usability Evaluation
A.R.C. Usability EvaluationJPC Hanson
 
Requirements engineering by elizabeth hull, ken jackson, jeremy dick (z lib.org)
Requirements engineering by elizabeth hull, ken jackson, jeremy dick (z lib.org)Requirements engineering by elizabeth hull, ken jackson, jeremy dick (z lib.org)
Requirements engineering by elizabeth hull, ken jackson, jeremy dick (z lib.org)DagimbBekele
 
Neo4j manual-milestone
Neo4j manual-milestoneNeo4j manual-milestone
Neo4j manual-milestoneShridhar Joshi
 
Data replication (software)
Data replication (software) Data replication (software)
Data replication (software) Masoud Gholami
 
My "Grain Motion Detection" Project
My "Grain Motion Detection" ProjectMy "Grain Motion Detection" Project
My "Grain Motion Detection" Projectsaveli4
 
VeraCode State of software security report volume5 2013
VeraCode State of software security report volume5 2013VeraCode State of software security report volume5 2013
VeraCode State of software security report volume5 2013Cristiano Caetano
 
3 openerp hr-book.complete
3 openerp hr-book.complete3 openerp hr-book.complete
3 openerp hr-book.completeopenerpwiki
 
bkremer-report-final
bkremer-report-finalbkremer-report-final
bkremer-report-finalBen Kremer
 
Ibm spss conjoint
Ibm spss conjointIbm spss conjoint
Ibm spss conjointDũ Lê Anh
 
Project final report
Project final reportProject final report
Project final reportALIN BABU
 

Semelhante a Software Project Management: Software Requirement Specification (20)

Thesis - Nora Szepes - Design and Implementation of an Educational Support Sy...
Thesis - Nora Szepes - Design and Implementation of an Educational Support Sy...Thesis - Nora Szepes - Design and Implementation of an Educational Support Sy...
Thesis - Nora Szepes - Design and Implementation of an Educational Support Sy...
 
A.R.C. Usability Evaluation
A.R.C. Usability EvaluationA.R.C. Usability Evaluation
A.R.C. Usability Evaluation
 
E.M._Poot
E.M._PootE.M._Poot
E.M._Poot
 
Requirements engineering by elizabeth hull, ken jackson, jeremy dick (z lib.org)
Requirements engineering by elizabeth hull, ken jackson, jeremy dick (z lib.org)Requirements engineering by elizabeth hull, ken jackson, jeremy dick (z lib.org)
Requirements engineering by elizabeth hull, ken jackson, jeremy dick (z lib.org)
 
Master's Thesis
Master's ThesisMaster's Thesis
Master's Thesis
 
thesis_online
thesis_onlinethesis_online
thesis_online
 
Neo4j manual-milestone
Neo4j manual-milestoneNeo4j manual-milestone
Neo4j manual-milestone
 
Aregay_Msc_EEMCS
Aregay_Msc_EEMCSAregay_Msc_EEMCS
Aregay_Msc_EEMCS
 
CS4099Report
CS4099ReportCS4099Report
CS4099Report
 
Knapp_Masterarbeit
Knapp_MasterarbeitKnapp_Masterarbeit
Knapp_Masterarbeit
 
Data replication (software)
Data replication (software) Data replication (software)
Data replication (software)
 
DM_DanielDias_2020_MEI.pdf
DM_DanielDias_2020_MEI.pdfDM_DanielDias_2020_MEI.pdf
DM_DanielDias_2020_MEI.pdf
 
My "Grain Motion Detection" Project
My "Grain Motion Detection" ProjectMy "Grain Motion Detection" Project
My "Grain Motion Detection" Project
 
Mts srcp
Mts srcpMts srcp
Mts srcp
 
VeraCode State of software security report volume5 2013
VeraCode State of software security report volume5 2013VeraCode State of software security report volume5 2013
VeraCode State of software security report volume5 2013
 
3 openerp hr-book.complete
3 openerp hr-book.complete3 openerp hr-book.complete
3 openerp hr-book.complete
 
bkremer-report-final
bkremer-report-finalbkremer-report-final
bkremer-report-final
 
Ibm spss conjoint
Ibm spss conjointIbm spss conjoint
Ibm spss conjoint
 
Project final report
Project final reportProject final report
Project final report
 
Dimensions iom training
Dimensions iom trainingDimensions iom training
Dimensions iom training
 

Mais de Minhas Kamal

Digital Image Processing
Digital Image ProcessingDigital Image Processing
Digital Image ProcessingMinhas Kamal
 
Deep Learning - Exploring The Magical World of Neural Network
Deep Learning - Exploring The Magical World of Neural NetworkDeep Learning - Exploring The Magical World of Neural Network
Deep Learning - Exploring The Magical World of Neural NetworkMinhas Kamal
 
Machine Learning - Entering into The Wonderful Galaxy of Machine Learning
Machine Learning - Entering into The Wonderful Galaxy of Machine LearningMachine Learning - Entering into The Wonderful Galaxy of Machine Learning
Machine Learning - Entering into The Wonderful Galaxy of Machine LearningMinhas Kamal
 
Artificial Intelligence - Staring at The Grand Universe of AI (1)
Artificial Intelligence - Staring at The Grand Universe of AI (1)Artificial Intelligence - Staring at The Grand Universe of AI (1)
Artificial Intelligence - Staring at The Grand Universe of AI (1)Minhas Kamal
 
Final Project Report- Bengali Braille to Text Translator
Final Project Report- Bengali Braille to Text TranslatorFinal Project Report- Bengali Braille to Text Translator
Final Project Report- Bengali Braille to Text TranslatorMinhas Kamal
 
Abstract- Bengali Braille to Text Translator
Abstract- Bengali Braille to Text TranslatorAbstract- Bengali Braille to Text Translator
Abstract- Bengali Braille to Text TranslatorMinhas Kamal
 
Software Project Management: Project Summary
Software Project Management: Project SummarySoftware Project Management: Project Summary
Software Project Management: Project SummaryMinhas Kamal
 
Software Project Management: Budget
Software Project Management: BudgetSoftware Project Management: Budget
Software Project Management: BudgetMinhas Kamal
 
Software Project Management: Testing Document
Software Project Management: Testing DocumentSoftware Project Management: Testing Document
Software Project Management: Testing DocumentMinhas Kamal
 
Software Project Management: Change Control
Software Project Management: Change ControlSoftware Project Management: Change Control
Software Project Management: Change ControlMinhas Kamal
 
Software Project Management: Release Notes
Software Project Management: Release NotesSoftware Project Management: Release Notes
Software Project Management: Release NotesMinhas Kamal
 
Software Project Management: Configuration Management
Software Project Management: Configuration ManagementSoftware Project Management: Configuration Management
Software Project Management: Configuration ManagementMinhas Kamal
 
Software Project Management: Risk Management
Software Project Management: Risk ManagementSoftware Project Management: Risk Management
Software Project Management: Risk ManagementMinhas Kamal
 
Software Project Management: Project Planning
Software Project Management: Project PlanningSoftware Project Management: Project Planning
Software Project Management: Project PlanningMinhas Kamal
 
Software Project Management: Business Case
Software Project Management: Business CaseSoftware Project Management: Business Case
Software Project Management: Business CaseMinhas Kamal
 
Software Project Management: Project Initiation
Software Project Management: Project InitiationSoftware Project Management: Project Initiation
Software Project Management: Project InitiationMinhas Kamal
 
Software Project Management: Project Charter
Software Project Management: Project CharterSoftware Project Management: Project Charter
Software Project Management: Project CharterMinhas Kamal
 
Software Project Management Presentation Final
Software Project Management Presentation FinalSoftware Project Management Presentation Final
Software Project Management Presentation FinalMinhas Kamal
 
Software Requirements Specification on Bengali Braille to Text Translator
Software Requirements Specification on Bengali Braille to Text TranslatorSoftware Requirements Specification on Bengali Braille to Text Translator
Software Requirements Specification on Bengali Braille to Text TranslatorMinhas Kamal
 
Project Proposal: Bengali Braille to Text Translation
Project Proposal: Bengali Braille to Text TranslationProject Proposal: Bengali Braille to Text Translation
Project Proposal: Bengali Braille to Text TranslationMinhas Kamal
 

Mais de Minhas Kamal (20)

Digital Image Processing
Digital Image ProcessingDigital Image Processing
Digital Image Processing
 
Deep Learning - Exploring The Magical World of Neural Network
Deep Learning - Exploring The Magical World of Neural NetworkDeep Learning - Exploring The Magical World of Neural Network
Deep Learning - Exploring The Magical World of Neural Network
 
Machine Learning - Entering into The Wonderful Galaxy of Machine Learning
Machine Learning - Entering into The Wonderful Galaxy of Machine LearningMachine Learning - Entering into The Wonderful Galaxy of Machine Learning
Machine Learning - Entering into The Wonderful Galaxy of Machine Learning
 
Artificial Intelligence - Staring at The Grand Universe of AI (1)
Artificial Intelligence - Staring at The Grand Universe of AI (1)Artificial Intelligence - Staring at The Grand Universe of AI (1)
Artificial Intelligence - Staring at The Grand Universe of AI (1)
 
Final Project Report- Bengali Braille to Text Translator
Final Project Report- Bengali Braille to Text TranslatorFinal Project Report- Bengali Braille to Text Translator
Final Project Report- Bengali Braille to Text Translator
 
Abstract- Bengali Braille to Text Translator
Abstract- Bengali Braille to Text TranslatorAbstract- Bengali Braille to Text Translator
Abstract- Bengali Braille to Text Translator
 
Software Project Management: Project Summary
Software Project Management: Project SummarySoftware Project Management: Project Summary
Software Project Management: Project Summary
 
Software Project Management: Budget
Software Project Management: BudgetSoftware Project Management: Budget
Software Project Management: Budget
 
Software Project Management: Testing Document
Software Project Management: Testing DocumentSoftware Project Management: Testing Document
Software Project Management: Testing Document
 
Software Project Management: Change Control
Software Project Management: Change ControlSoftware Project Management: Change Control
Software Project Management: Change Control
 
Software Project Management: Release Notes
Software Project Management: Release NotesSoftware Project Management: Release Notes
Software Project Management: Release Notes
 
Software Project Management: Configuration Management
Software Project Management: Configuration ManagementSoftware Project Management: Configuration Management
Software Project Management: Configuration Management
 
Software Project Management: Risk Management
Software Project Management: Risk ManagementSoftware Project Management: Risk Management
Software Project Management: Risk Management
 
Software Project Management: Project Planning
Software Project Management: Project PlanningSoftware Project Management: Project Planning
Software Project Management: Project Planning
 
Software Project Management: Business Case
Software Project Management: Business CaseSoftware Project Management: Business Case
Software Project Management: Business Case
 
Software Project Management: Project Initiation
Software Project Management: Project InitiationSoftware Project Management: Project Initiation
Software Project Management: Project Initiation
 
Software Project Management: Project Charter
Software Project Management: Project CharterSoftware Project Management: Project Charter
Software Project Management: Project Charter
 
Software Project Management Presentation Final
Software Project Management Presentation FinalSoftware Project Management Presentation Final
Software Project Management Presentation Final
 
Software Requirements Specification on Bengali Braille to Text Translator
Software Requirements Specification on Bengali Braille to Text TranslatorSoftware Requirements Specification on Bengali Braille to Text Translator
Software Requirements Specification on Bengali Braille to Text Translator
 
Project Proposal: Bengali Braille to Text Translation
Project Proposal: Bengali Braille to Text TranslationProject Proposal: Bengali Braille to Text Translation
Project Proposal: Bengali Braille to Text Translation
 

Último

TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providermohitmore19
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...ICS
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...kellynguyen01
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfkalichargn70th171
 
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️anilsa9823
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxComplianceQuest1
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Modelsaagamshah0812
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantAxelRicardoTrocheRiq
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionSolGuruz
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfkalichargn70th171
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerThousandEyes
 
why an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfwhy an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfjoe51371421
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdfWave PLM
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxbodapatigopi8531
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsAndolasoft Inc
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comFatema Valibhai
 
DNT_Corporate presentation know about us
DNT_Corporate presentation know about usDNT_Corporate presentation know about us
DNT_Corporate presentation know about usDynamic Netsoft
 

Último (20)

TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docx
 
Exploring iOS App Development: Simplifying the Process
Exploring iOS App Development: Simplifying the ProcessExploring iOS App Development: Simplifying the Process
Exploring iOS App Development: Simplifying the Process
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 
Call Girls In Mukherjee Nagar 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
Call Girls In Mukherjee Nagar 📱  9999965857  🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...Call Girls In Mukherjee Nagar 📱  9999965857  🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
Call Girls In Mukherjee Nagar 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service Consultant
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with Precision
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
 
why an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfwhy an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdf
 
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS LiveVip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptx
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.js
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.com
 
DNT_Corporate presentation know about us
DNT_Corporate presentation know about usDNT_Corporate presentation know about us
DNT_Corporate presentation know about us
 

Software Project Management: Software Requirement Specification

  • 1. ResearchColab Software Requirement Specification Team: Reckless 7 Institute of Information Technology University of Dhaka 25 November, 2016
  • 2. i Executive Summery ResearchColab is a research collaboration and data collection platform. Here researchers can submit their draft papers to professional reviewers for review purpose. They can also share research ideas and get data that is required to conduct their research. Researchcolab.com will be a web based platform for the researchers and paper reviewers to interact with each other. To avail the service, each user needs to register in the system. Researchers will post review jobs on the website and reviewers will bid for the review. Then the researcher will choose the most suitable candidate, and have a one to one communication with the person in order to hire him for the paper review. If satisfied, the researcher can hire the reviewer for the review job. Researches can also post data on the website that can be used in further researches. The data can either be free or paid. Researchers can also discuss research related issues in discussion boards.
  • 3. ii Contents Introduction.......................................................................................................................... 1 1.1 Purpose ...............................................................................................................................................1 1.2 Intended Audience..............................................................................................................................1 Inception............................................................................................................................... 3 2.1 Introduction ........................................................................................................................................3 2.2 Identifying Stakeholders .....................................................................................................................3 2.3 Recognizing Multiple View Points.......................................................................................................4 2.4 Working towards Collaboration..........................................................................................................6 2.5 Conclusion...........................................................................................................................................7 Elicitation.............................................................................................................................. 8 3.1 Introduction ........................................................................................................................................8 3.2 Eliciting Requirements ........................................................................................................................8 3.3 Collaborative Requirements Gathering ..............................................................................................8 3.4 Quality Function Deployment.............................................................................................................9 3.5 Usage Scenario....................................................................................................................................9 3.6 Elicitation Work Product...................................................................................................................11 Scenario-Based Model......................................................................................................... 12 4.1 Introduction ......................................................................................................................................12 4.2 Use Case Scenario.............................................................................................................................12 4.3 Use Case Description ........................................................................................................................15 4.3.1 ResearchColab................................................................................................................................15 4.3.1.1 Authentication ............................................................................................................................16 4.3.1.2 Review Management..................................................................................................................18 4.3.1.3 Data Sharing................................................................................................................................22 4.3.1.4 Discussion Room.........................................................................................................................24 4.3.1.5 Profile Management ...................................................................................................................27 Data Model ......................................................................................................................... 29 5.1 Introduction ......................................................................................................................................29 5.2 Data Object Selection........................................................................................................................29 5.3 Data Objects and Attributes .............................................................................................................31 5.4 E-R Diagram.......................................................................................................................................32 Class-Based Model .............................................................................................................. 33
  • 4. iii 6.1 Purpose .............................................................................................................................................33 6.2 General Classification........................................................................................................................33 6.3 Selection Characteristics...................................................................................................................35 6.4 Attribute Selection............................................................................................................................38 6.5 Method Selection..............................................................................................................................38 6.6 Class Diagram....................................................................................................................................40 6.7 Class Card..........................................................................................................................................41 Behavioral Model................................................................................................................ 44 7.1 Purpose .............................................................................................................................................44 7.2 Identifying Events..............................................................................................................................44 7.3 Sequence Diagram ............................................................................................................................46 Conclusion........................................................................................................................... 51
  • 5. 1 Chapter-1 Introduction 1.1 Purpose This is the Software Requirements Specification (SRS) for ResearchColab. The document contains detailed functional, non-functional, and support requirements for the project. It also establishes a baseline for the development of the system in respect of the analyzed requirements. This SRS serves as the ground of presenting user requirements to the developer. It provides a common reference point for both the developer team and stakeholder community. This document’s content may evolve over time as users and developers work together in developing the system. But its fundamental output will remain unchanged. 1.2 Intended Audience This SRS is intended for all the stakeholders related to ResearchColab - project managers, system analyst, designers, developers and quality assurance engineers. They will use it for the following reasons- The project managers will design their plan on the basis of this document. They will set milestones and delivery dates. They will also ensure that the development team is on track. The system analyst will utilize this document in order to solve the problem domain and build up an effective architecture that the developers will implement. The designers will prepare the systems design based on this document. They will continually refer back to this SRS to ensure that the system they are designing will fulfill the customers’ needs. Developers will use this document as a basis for developing the system’s functionality. The developers will link the requirements defined in this SRS to the
  • 6. 2 software they create to ensure that they have created software that will fulfill all of the customers’ documented requirements. Quality assurance engineers will use the SRS to derive test plans and test cases. When portions of the software are complete, they will run their tests on that software to ensure that the software fulfills the requirements documented in this SRS. They will again run their tests on the entire system when it is complete and ensure that all requirements documented in this SRS have been completed.
  • 7. 3 Chapter-2 Inception 2.1 Introduction At this chapter we have analyzed the scope and the nature of problem in hand. We have identified the concurrent needs and conflict requirements among the stakeholders of ResearchColab. To establish the groundwork, we have worked with the following factors:  Identifying Stakeholders  Recognizing Multiple Viewpoints  Working towards Collaboration 2.2 Identifying Stakeholders For this project, we have determined the stakeholder as the person or group who will be affected by the system directly or indirectly. Out stakeholders mainly consists of end- users who interact with the system. Although, we intend to develop ResearchColab for industrial use, we are building it for using only in the IIT premises for the sake of this project. For this reason, we have selected the stakeholders from the scope of IIT only. To identify the stakeholders, considered the following facts: o Who will be using the project outcomes? o Who gets to make the decisions about the project? o Who has resources I need to get the project done? o Whose work will my project affect? (During the project and also once the project is completed) Concluding thoughts on Stakeholders, we identified following stakeholders for our project: 1. Course coordinator: The Course coordinator is the person who has the final authority over our finished product. His position empowers him to veto a decision made
  • 8. 4 by the other Stakeholders. As head of the course, he has direct authority over the resources and our team— the people developing the web application and doing much of the “management” end of this project. 2. Researchers: The researchers are the ultimate user of the final developed product. We have considered the students of final year of BBSE program and the students of Master’s program of IIT as the researchers of our domain. 3. Paper reviewers: The reviewers will be another important end user along with the researchers. That’s why we have considered them as our stakeholders. But our limitation does not permit us to have an interview of a range of reviewers. That’s why we have talked with the faculty members from IIT in order to get a basic idea regarding the requirements and developed a baseline of requirement according to our understanding. 4. Project manager: The success and failure of this project is fully depended on project manager. Moreover, further development, change management, every steps of the life cycle of software development will be coordinated and monitored by the project manager. 5. Developers: We have selected developers as stakeholders because they will develop this system and work for further development. If any system interruption occurs, they will find the problem and try to solve it. 6. QA engineers: Quality Assurance Engineer will control the quality of the product, test to find bug. They need to refer to this documentation and validate the final product and check if it’s up to the mark or not. 2.3 Recognizing Multiple View Points We have collected the following view points by discussing with our stakeholders. 1. Course coordinator: a. A proper documentation incorporating all the software engineering phases should be made with the product. b. The product needs to innovative and needs to address some sort of real world problem of the users.
  • 9. 5 c. The project development team needs to follow all the required steps of the software engineering process. 2. Researchers: a. The UI needs to be user friendly and easily accessible. b. The discussion forum needs to be navigation friendly. And any topic can be searched efficiently. c. The system can be accessible through the browser from anywhere and anytime. d. There needs to be a separate mobile friendly version for the website. e. A strong security system should be imposed here. And all sorts of privacy issues need to be taken care of. 3. Paper reviewers: a. There needs to be a secured way of payment and any type of issues regarding payment needs to be resolved effectively. b. The UI needs to be user friendly. c. The whole system needs to be strongly secured. 4. Project manager: a. The product should be maintained easily. b. A proper documentation incorporating all the software engineering phases should be made with the product. c. Allocating resources in such a way so that every resource will be available on demand basis. 5. Developers: a. Documentation regarding the development needs to be done properly, so that any future issues can be resolved easily.
  • 10. 6 b. The product design and architecture, software development lifecycle needs to be defined clearly and effectively so that the developers know what to do. 6. Quality assurance engineers: a. Documentation regarding the requirement analysis needs to be done properly so that the end product can be tested properly. 2.4 Working towards Collaboration Every stakeholder has their own requirements. We followed following steps to merge these requirements:  Identify the common and conflicting requirements  Categorize the requirements  Take priority points for each requirement from stakeholders and on the basis of this voting prioritize the requirements  Make final decision about the requirements Common Requirements:  User will be able to post review request  Any user will be able to bid on a review post  Dataset can be shared by all users  Users can open discussion room and post comment there  User friendliness  Security  Proper documentation Conflicting Requirements: Ease of access and strong security Final Requirements: We finalized following requirements for the system by categorizing and prioritizing the requirements:  The UI will be user friendly and easily accessible. There needs to be effective search function and other functionality.
  • 11. 7  User will be able to post review request and any other user will be able to bid on that  Dataset can be shared by all users  Users can open discussion room and post comment there  The system will be highly secured. Any issues related the payment and privacy will be handled effectively. 2.5 Conclusion Inception phase helped us to establish basic understanding about ResearchColab; identify the people who will be benefited if this software is developed, define the nature of the software and establish a preliminary communication with our stakeholders.
  • 12. 8 Chapter-3 Elicitation 3.1 Introduction Elicitation helps the customer to define the requirement more specifically. This phase faces many problems like- problems of scope, problems of volatility, and problems of understanding. To overcome these problems, we have worked in an organized and systematic manner. 3.2 Eliciting Requirements Unlike Inception, where Question and Answer approach is used, Elicitation makes use of a requirements elicitation format that combines the elements of problem solving, elaboration, negotiation, and specification. It requires the cooperation of a group of end-users and developers to elicit requirements. 3.3 Collaborative Requirements Gathering There are many different approaches to collaborative requirements gathering. Each approach makes use of a slightly different scenario. We followed the subsequent steps to do it: i. Meetings were conducted with probable clients, researchers and data scientists. They were questioned about their requirements and expectations from the tool. ii. They were asked about the problems they are facing in their work. We also inquired regarding the efficiency of the current process. iii. At last we selected our final requirement list from these meetings.
  • 13. 9 3.4 Quality Function Deployment The technique which translates the needs of the customer into technical requirements for software is called Quality Function Deployment (QFD). QFD concentrates on maximizing customer satisfaction from the Software Engineering process. With respect to our project the following requirements are identified by QFD-  User will be able to post review request and any other user will be able to bid on that.  Dataset can be shared by all users.  Users can open discussion room and post comment there.  Users will be able to chat with other users.  There needs to be effective search function and other functionality.  The system will be highly secured. Any issues related the payment and privacy will be handled effectively. 3.5 Usage Scenario ResearchColab is a web-based platform which aims to assist researchers with their work. Researchers will be able to invite reviewers for examining their draft paper through post, and share dataset with others. There will be discussion rooms on different topics or ideas. Users can also search through the site for posts, datasets, discussions rooms, and researchers. Guest users will view posts of review request, data offering, and conversations of public discussion rooms. They can search through the sites as well. For getting further privileges they will need to sign up and become an authenticated user. Authenticated users have all the privileges of a guest user. They can post review request, response to interested review requests, and comment under them. They can also share and download datasets. They have privilege to create public or private discussion room as well as comment in discussions. They will also have to manage their profile information. When a review request is posted it enters into open for response phase. A review request will contain research domain, work overview, time limit for review,
  • 14. 10 payment range, attachment (optional) and expertise tag for expected reviewers. Interested users will be able to response against any request, as well as post comments under it. Now review request poster will choose probable reviewer from the list of interested users. He can then converse one-to-one with interested reviewers and finalize the contract. After the contract is confirmed, the reviewer enters time range and payment. Then request poster accepts the deal as well as submits his draft paper to the reviewer in PDF. Now the review request enters into review under progress phase and the selected reviewer will be marked as appointed. Reviewer will not be able to download or copy text of the submitted research document. He can read the document only through the website. After the completion of review, reviewer will submit his review work as a document to the request poster. The post now enters into transaction phase. The request poster will see that review work is submitted. But he will not be able to access it then (will get to see a preview though); the payment must be issued first. After the payment is cleared reviewer accepts it and the post enters into feedback phase. In this phase both request poster and reviewer can score each other from 1 to 5, as well as give a response comment. Researchers can share dataset in with other researchers through the system. Data offering will contain name, detail description, paper (optional), attached dataset, topic tag, and cost (can be 0 too). Users will not have direct access to the attached dataset. If a user really wants the dataset, he will send a get request to the dataset owner. The dataset owner then will forward the dataset to the user. But the user will not be able to download the dataset yet, except for some preview. He will have to issue the payment, and will get access to the dataset after the payment is accepted. Users may create both public and private discussion rooms on different topics. Only the creator of a room can add other users to the discussion. A User may join in any public discussion rooms. But private discussion rooms are only accessible to added users. Users can post comments in the discussion rooms and vote up or down to other users’ comments. Every user will have to maintain his profile information. There will be three categories of information- general, professional, performance. General information includes- name, profile photo, email, short biography and social websites. Professional information will contain expertise tags, links to published
  • 15. 11 papers, and CV. Previous works (both as reviewer and request poster), shared dataset, and feedback score will comprise performance information. Users will only be able to change his general and professional information. Performance information will be managed by the system. All these information, except for email address, will be available publicly. 3.6 Elicitation Work Product Our elicitation work product includes:  Statement of our requirements for ResearchColab  Set of usage scenarios  A statement of scope for our solution  A list of clients, users, and other stakeholders who participated in requirement specification process
  • 16. 12 Chapter-4 Scenario-Based Model 4.1 Introduction The user’s point of view is used to describe Scenario-Based Model. In SRS this is the first modeling phase. So, it serves as an input for the creation of other models. 4.2 Use Case Scenario With the advancement of requirements gathering, functionalities and responsibilities of the software starts to materialize. The following table enlists primary components of the system: Table-4.2 Use Case Scenario Level-0 Level-1 Level-2 Actors ResearchColab Authentication Sign up Guest User Login Authenticated User Logout Authenticated User Review Management Post Review Request Authenticated User (Researcher) Bid for Review Request Authenticated User (Reviewer) Choose Reviewer Authenticated User (Researcher)
  • 17. 13 Comment Authenticated User One-to-One Conversation Authenticated User Contact Authenticated User (Researcher & Reviewer) Review Work Submission Authenticated User (Reviewer) Payment Authenticated User (Researcher) Feedback Authenticated User (Researcher & Reviewer) Data Sharing Share Data Authenticated User (Dataset Owner) Request for Data Authenticated User (Dataset Seeker) Forward Dataset Authenticated User (Dataset Owner) Payment Authenticated User (Dataset Seeker) Download Data Authenticated User (Dataset Seeker) Discussion Room Create Discussion Room Authenticated User (Discussion Creator) Add Members Authenticated User
  • 18. 14 (Discussion Creator) Join Public Discussion Room Authenticated User (Non-Member) Comment Authenticated User (Discussion Creator & Member) Vote Authenticated User (Discussion Creator & Member) Profile Management Update Personal Information Authenticated User Update Performance Information Authenticated User View Professional Information Authenticated User
  • 19. 15 4.3 Use Case Description In this section Use Case Scenario will be elaborated to Use Case Diagram, and Description. Figure-4.3 is the Use Case Diagram of level-0 for ResearchColab: 4.3.1 ResearchColab Here Figure-4.3.1 is the detailed form of level-0:
  • 20. 16 4.3.1.1 Authentication Authentication can be divided into three sub-modules. Figure-4.3.1.1 shows this: 4.3.1.1.1 Use Case: Sign up Primary Actor: Guest User. Secondary Actor: N/A Goal in Context: User registers to the system. Scenario: 1. Visit the sign up page. 2. Enter email address and password. 3. Click ‘Sign up’ button. Exceptions: 1. System failure. 2. Error in connection. Priority: Essential, must be implemented. Precondition: N/A When Available: First increment.
  • 21. 17 Frequency of Use: Many times per day. 4.3.1.1.2 Use Case: Log in Primary Actor: Guest User. Secondary Actor: N/A Goal in Context: User enters the system. Scenario: 1. Visit the log in page. 2. Enter valid email address and password. 3. Click ‘Log in’ button. Exceptions: 1. System failure. 2. Error in connection. Priority: Essential, must be implemented. Precondition: N/A When Available: First increment. Frequency of Use: Many times per day. 4.3.1.1.3 Use Case: Log out Primary Actor: Authenticated User. Secondary Actor: N/A Goal in Context: User exits from the system. Scenario: 1. Click the ‘Log out’ button. 2. Get out of the system. Exceptions: 1. System error.
  • 22. 18 2. Error in connection. Priority: Essential, must be implemented. Precondition: Must be logged in. When Available: First increment. Frequency of Use: Many times per day. 4.3.1.2 Review Management Review Management has nine sub-modules (Figure-4.3.1.2): 4.3.1.2.1 Use Case: Post Review Request Primary Actor: Authenticated User (Researcher). Secondary Actor: N/A Goal in Context: Researcher posts a review job on the system.
  • 23. 19 Scenario: 1. Select ‘Post Review Request’. 2. Enter title. 3. Give description. 4. Add expertise tag. 5. Click on ‘Post’ button. Exceptions: 1. System is not responding. 2. Unable to Upload. 3. File format mismatch. Priority: Essential, must be implemented. Precondition: Must be logged in. When Available: Second increment. Frequency of Use: Several times per month. 4.3.1.2.2 Use Case: Bid for Review Request Primary Actor: Authenticated User (Reviewer). Secondary Actor: Authenticated User (Researcher). Goal in Context: Reviewer shows interest to a review job. Scenario: 1. View a review request. 2. Click on the “Bid” button. Exceptions: 1. System is not responding. 2. Network error. Priority: Essential, must be implemented. Precondition: Must be logged in. When Available: Second increment.
  • 24. 20 Frequency of Use: Several times per week. 4.3.1.2.3 Use Case: Choose Reviewer Primary Actor: Authenticated User (Researcher). Secondary Actor: Authenticated User (Reviewer). Goal in Context: Researcher selects probable reviewer. Scenario: 1. Open bidder list of review post. 2. Enter into bidders’ profile. 3. Select bidder. Exceptions: 1. System is not responding. 2. Network error. Priority: Essential, must be implemented. Precondition: Must be logged in. When Available: Third increment. Frequency of Use: Several times per month. 4.3.1.2.4 Use Case: Comment Primary Actor: Authenticated User. Secondary Actor: N/A Goal in Context: User posts comment to a post. Scenario: 1. Enter the comment. 2. Press ‘Ok’ button. Exceptions: 1. Connection problem.
  • 25. 21 2. System is not responding. Priority: Moderate, may be implemented. Precondition: Must be logged in. When Available: Second increment. Frequency of Use: Several times per week. 4.3.1.2.5 Use Case: One-to-One Conversation Primary Actor: Authenticated User. Secondary Actor: N/A Goal in Context: Users communicates with each other. Scenario: 1. Select user. 2. Write message. 3. Send message. Exceptions: 1. Connection error. 2. System failure. Priority: moderate, may be implemented. Precondition: Must be logged in. When Available: Second increment. Frequency of Use: Several times per day.
  • 26. 22 4.3.1.3 Data Sharing This module has five phases. Figure-4.3.1.3 shows this: 4.3.1.3.1 Use Case: Share Data Primary Actor: Authenticated User (Data Owner). Secondary Actor: N/A Goal in Context: Data owner shares dataset to other data scientists. Scenario: 1. Select ‘Share Data’. 2. Enter title. 3. Give description. 4. Add data tag. 5. Click on ‘Post’ button. Exceptions: 1. System is not responding.
  • 27. 23 2. Unable to Upload. 3. Dataset format mismatch. 4. Dataset size exceeds limit. 5. Invalid dataset. Priority: Essential, must be implemented. Precondition: Must be logged in. When Available: Second increment. Frequency of Use: Several times per month. 4.3.1.3.2 Use Case: Request for Data Primary Actor: Authenticated User (Dataset Seeker). Secondary Actor: Authenticated User (Dataset Owner). Goal in Context: Get dataset. Scenario: 1. View dataset information. 2. Click on the “Send Request” button. Exceptions: 1. System is not responding. 2. Network error. Priority: Essential, must be implemented. Precondition: Must be logged in. When Available: Second increment. Frequency of Use: Several times per month.
  • 28. 24 4.3.1.4 Discussion Room Discussion Room can be divided into five sub-modules (Figure-4.3.1.4): 4.3.1.4.1 Use Case: Create Discussion Room Primary Actor: Authenticated User (Discussion Creator) Secondary Actor: N/A. Goal in Context: A private or public room is created for discussion. Scenario: 1. Select “Discussion Room Creation” option. 2. Enter room title. 3. Select room accessibility- private, or public. 4. Click “Create Room” button. Exceptions: 1. Invalid discussion room title. 2. System failure.
  • 29. 25 3. Connection failure. Priority: Essential, must be implemented. When Available: Second increment. Frequency of Use: Few times per year. 4.3.1.4.2 Use Case: Add Member Primary Actor: Authenticated User (Discussion Creator) Secondary Actor: N/A. Goal in Context: Add member to a room. Scenario: 1. Select “Add Member” option. 2. Search users by name. 3. Select user. 4. Click “Add” button. Exceptions: 1. User with the name does not exist. 2. System failure. 3. Connection failure. Priority: Moderate, may be implemented. When Available: Third increment. Frequency of Use: Several times per day. 4.3.1.4.3 Use Case: Join Public Discussion Primary Actor: Authenticated User (Non-Member) Secondary Actor: N/A. Goal in Context: User becomes member to a room. Scenario: 1. Select discussion room.
  • 30. 26 2. Click “Join” button. Exceptions: 1. System failure. 2. Connection failure. Priority: Essential, must be implemented. When Available: Second increment. Frequency of Use: Few times per week. 4.3.1.4.4 Use Case: Comment Primary Actor: Authenticated User (Member) Secondary Actor: Authenticated User (Discussion Creator). Goal in Context: Post comment in discussion room. Scenario: 1. Enter into a discussion room. 2. Enter comment. 3. Click “Ok” button. Exceptions: 1. System failure. 2. Connection failure. Priority: Essential, may be implemented. When Available: Second increment. Frequency of Use: Many times per day.
  • 31. 27 4.3.1.5 Profile Management Following Figure-4.3.1.5 shows three sub modules of Profile Management: 4.3.1.5.1 Use Case: Update Personal Information Primary Actor: Authenticated User. Secondary Actor: N/A. Goal in Context: Update Profile Information. Scenario: 1. Select “Update Personal Information” option. 2. Update required Information. 3. Click “Update” button. Exceptions: 1. Invalid input. 2. System failure. 3. Error in connection. Priority: Essential, must be implemented.
  • 32. 28 When Available: Second increment. Frequency of Use: Few times per month. 4.3.1.5.2 Use Case: Update Professional Information Primary Actor: Authenticated User. Secondary Actor: N/A. Goal in Context: Update Profile Information. Scenario: 4. Select “Update Professional Information” option. 5. Update required Information. 6. Click “Update” button. Exceptions: 4. Invalid input. 5. System failure. 6. Error in connection. Priority: Essential, must be implemented. When Available: Second increment. Frequency of Use: Few times per month.
  • 33. 29 Chapter-5 Data Model 5.1 Introduction When software requires interfacing with a database or complex data structures need to be constructed and manipulated, data model is performed as part of overall requirements modeling. 5.2 Data Object Selection Data objects are representation of information which has different attributes. Table-5.2 enlists all nouns from Usage Scenario and marks potential data objects: Table-5.2 Data Object Selection Noun Attributes Remark researchcolab rejected researchers rejected reviewers rejected share dataset rejected discussion rooms rejected topics rejected users cv, email, profile photo, short biography, social website, personal information, professional information, performance information accepted search rejected guest users rejected view posts rejected review request research domain, work overview, comment, expertise tag, payment, time limit accepted download datasets rejected
  • 34. 30 profile information rejected research domain rejected work overview rejected time limit rejected payment rejected expertise tag rejected post comments rejected review request poster rejected probable reviewer rejected pdf rejected progress phase rejected research document rejected review work rejected payment phase rejected data sharing description, dataset, preview, payment, comment, rating, tag, purchase count accepted dataset rejected detail description rejected topic tag rejected direct access rejected dataset owner rejected profile photo rejected short biography rejected social websites rejected professional information rejected cv rejected feedback score rejected discussion comment, members, discussion type, Creator, Topic, Tag, Votes accepted performance information rejected professional information rejected performance rejected email address rejected
  • 35. 31 5.3 Data Objects and Attributes This is a brief view of all attributes we have found so far:
  • 36. 32 5.4 E-R Diagram Here relationships among all entities are shown as a diagram (Figure 5.4):
  • 37. 33 Chapter-6 Class-Based Model 6.1 Purpose The objects that the system will manipulate, the operations that will be applied to the objects and relationships between the objects are represented by Class-Based Modeling. It also defines the collaborations that occur between the classes. 6.2 General Classification Analysis classes can be marked by one of the following ways: 1. External Entity 2. Thing 3. Occurrence 4. Role 5. Organizational Unit 6. Place 7. Structure Table-6.2 General Classification Potential Class General Classification ResearchColab Thing researchers Role reviewers Role share dataset Structure discussion rooms Thing topics Thing users Role search Occurrence/ Event
  • 38. 34 guest users Role viewing posts Occurrence/ Event review request Thing downloading datasets Occurrence/ Event profile information Structure research domain Thing work overview Thing time limit Occurrence/ Event payment Thing expertise tag Thing posting comments Occurrence/ Event review request poster Role probable reviewer Role pdf Thing progress phase Occurrence/ Event research document Thing review work Thing payment phase Occurrence/ Event dataset Thing detail description Thing topic tag Thing direct access Occurrence/ Event dataset owner Role profile photo Thing short biography Thing social websites Thing personal information Structure cv Thing
  • 39. 35 feedback score Thing performance information Structure professional information Structure performance Thing email address Thing authenticated users Role 6.3 Selection Characteristics Coad and Yourdon suggest six selection characteristics that should be used to consider each potential class for inclusion in the analysis model: 1. Retained Information 2. Needed Services 3. Multiple Attributes 4. Common Attributes 5. Common operations 6. Essential Requirements Table-6.3 Selection Characteristics Potential Class Characteristic Number That Applies Comment ResearchColab None Rejected, problem domain researchers All Rejected, as it can be represented by authenticated user reviewers All Rejected, as it can be represented by authenticated user
  • 40. 36 sharing dataset 2 Rejected as 1,3,4,5,6 violated discussion rooms All Accepted topics None Rejected users All Rejected, can be represented by autheticated and guest users search 2 Rejected as 1,3,4,5,6 violated guest users 1,2,3,5,6 Rejected viewing posts 2 Rejected as 1,3,4,5,6 violated review request 2 Rejected as 1,3,4,5,6 violated and represents an action downloading datasets 2 Rejected as 1,3,4,5,6 violated and represents an action profile information 1,2,3,4 Rejected research domain None Rejected, problem domain work overview 1 Rejected time limit 1 Rejected payment All Accepted expertise tag 1 Rejected posting comments 2 Rejected as 1,3,4,5,6 violated and represents an action review request poster 1,2,3,4,5 Rejected, as it can be represented by researcher probable reviewer 2 Rejected pdf None Rejected, problem domain progress phase 1 Rejected, represents a state research document 1 Rejected, represents an
  • 41. 37 attribute review work None Rejected, represents an action payment phase 1 Rejected, represents a state dataset 1,2,3,4,6 Accepted detail description 1 Rejected, represents an attribute topic tag 1 Rejected, represents an attribute direct access None Rejected dataset owner 1,2,3,4,5 Rejected, as it can be represented by researcher profile photo 1 Rejected, represents an attribute short biography 1 Rejected, represents an attribute social websites 1 Rejected, represents an attribute personal information 1,2,3,4,6 Accepted cv 1 Rejected, represents an attribute feedback score 1 Rejected, represents an attribute performance information 1,2,3,4,6 Accepted professional information 1,2,3,4,6 Accepted performance None Rejected email address 1 Rejected, represents an attribute
  • 42. 38 authenticated users All Accepted 6.4 Attribute Selection i. AuthenticatedUser = personalInformation + performanceInformation + professionalInformation ii. DiscussionRoom = comment + AuthenticatedUser iii. Payment = paymentState + timeLimit + reviewRequest + amount + sender + receiver iv. Dataset = owner + topicTag + detailDescription + preview + paymentAmount v. PersonalInformation = name + profilePhoto + emailAddress + socialWebsites + shortBiography vi. ProfessionalInformaton = CV + expertiseTag vii. PerformanceInformation = feedbackScore + performance + reviewWorks + discussionRooms 6.5 Method Selection i. AuthenticatedUser = postReviewRequest(), respondToReviewRequest(), search(), createDiscussionRoom(), postDiscussion(), comment(), updateProfile(), bid(), pay(), receiveReview(), postData(), downloadData(), provideFeedback() ii. DiscussionRoom = getComment(), getDiscussionRoom() iii. Payment = issuePayment(), receivePayment(), closePost() iv. Dataset = getOwner(), setOwner(), getTopicTag(), setTopicTag(), getDetailDescription(), setDetailDescription(), getPreview(), setPreview(), getPaymentAmount(), setPaymentAmount()
  • 43. 39 v. PersonalInformation = getName(), setName(), getProfilePhoto(), setProfilePhoto(), getEmailAddress(), setEmailAddress(), getSocialWebsiteList(), setSocialWebsiteList(), getShortBiography(), setShortBiography() vi. ProfessionalInformaton = uploadCV(), getExpertiseTag(), setExpertiseTag() vii. PerformanceInformation = getFeedbackScore(), setFeedbackScore(), calculatePerformance(), getPerformanceInformation(), buildReviewWorkList(), getReviewWorks(), getDiscussionRoomPosts()
  • 44. 40 6.6 Class Diagram We have shown here (Figure- 6.6), how the classes interact together to accomplish certain goal. Figure 6.6: Class Diagram AuthenticatedUser personal Information performance information professional information postReviewRequest() respondToReviewRequest() search() createDiscussionRoom() postDiscussion() comment() updateProfile() bid() bid pay() PersonalInformation name profilePhoto emailAddress socialWebsites shortBiography getName() setName() getProfilePhoto() setProfilePhoto() getEmailAddress() setEmailAddress() getSocialWebsiteList() setSocialWebsiteList() getShortBiography() setShortBiography() DiscussionRoom comment AuthenticatedUser getComment() getDiscussionRoom() Dataset owner topicTag detailDescription preview paymentAmount getOwner()setOwner() getTopicTag() setTopicTag() getDetailDescription() setDetailDescription() getPreview() setPreview() getPaymentAmount() setPaymentAmount() PerformanceInformation feedback score performance reviewWorks discussionRooms getFeedbackScore() setFeedbackScore() calculatePerformance() getPerformanceInformation() buildReviewWorkList() getReviewWorks() getDiscussionRoomPosts() Payment paymentState timeLimit reviewRequest amount sender receiver issuePayment() receivePayment() closePost() ProfessionalInformaton CV expertise tag uploadCV() getExpertiseTag() setExpertiseTag() getorgive has has hascreate share
  • 45. 41 6.7 Class Card Class card represents a graphical view of responsibility and collaborator for each class. AuthenticatedUser Responsibility Collaborator [1] PostReviewRequest [2] Respond toReviewRequest [3] Search [4] CreateDiscussionRoom [5] PostDiscussion [6] Comment [7] UpdateProfile [8] Bid [9] Pay GuestUser GuestUser Responsibility Collaborator [1] ViewReviewRequest [2] ViewData [3] ViewDiscussion DiscussionRoom Responsibility Collaborator [1] GetComment [2] GetDiscussionRoom AuthenticatedUser
  • 46. 42 Payment Responsibility Collaborator [1] IssuePayment [2] ReceivePayment [3] ClosePost AuthenticatedUser Dataset Dataset Responsibility Collaborator [1] GetOwner [2] SetOwner [3] GetTopicTag [4] SetTopicTag [5] GetDetailDescription [6] SetDetailDescription [7] GetPreview [8] SetPreview [9] GetPaymentAmount [10] SetPaymentAmount AuthenticatedUser PersonalInformation Responsibility Collaborator [1] Get Name [2] Set Name [3] GetProfilePhoto [4] Set Profile Photo [5] Get Email Address [6] Set Email Address AuthenticatedUser
  • 47. 43 [7] GetSocialWebsite List [8] Set Social Website List [9] GetShort Biography [10] Set Short Biography ProfessionalInformaton Responsibility Collaborator [1] Upload CV [2] Get Expertise Tag [3] Set Expertise Tag AuthenticatedUser PerformanceInformation Responsibility Collaborator [1] GetFeedbackScore [2] SetFeedback Score [3] Calculate Performance [4] GetPerformanceInformation [5] Build Review Work List [6] GetReview Works [7] Get Discussion Room Posts AuthenticatedUser Dataset
  • 48. 44 Chapter-7 Behavioral Model 7.1 Purpose When the system is perceived in terms of states and transitions, it is called Behavior Modeling. It is also known as State Modeling, State Machines, or State Transition Matrix. This requires both identifying all of the interesting states of being that software or its components are likely to be in. And also, at a high level, abstracting what events are likely to cause software or its components to change between states of being. 7.2 Identifying Events Here we have identified events from the Usage Scenario and listed their corresponding initiators & collaborators. Table-7.2 Identifying Events Event Initiator Collaborator search posts, datasets, discussions rooms, and researchers Authenticated User, Guest User post review request Authenticated User (Researcher) response to interested review requests Authenticated User (Reviewer) Authenticated User (Researcher) converse one-to-one Authenticated User send a get request to the dataset owner Authenticated User ( Researcher) Authenticated User (Dataset Owner)
  • 49. 45 create public or private discussion rooms Authenticated User (Discussion Room Creator) add users to the discussion Authenticated User ( Discussion Room Creator) Authenticated User (Non-Member) maintain profile information Authenticated User
  • 50. 46 7.3 Sequence Diagram Here we have identified events from the Usage Scenario and listed their corresponding initiators & collaborators. Figure-7.3.1 to Figure-7.3.5 represents Sequence Diagrams for all major events of this project.
  • 51. 47
  • 52. 48
  • 53. 49
  • 54. 50
  • 55. 51 Chapter-8 Conclusion From this document, the readers will get a clear and easy view of the project. He will also get a good understanding of how the system will work. This SRS document can be used effectively to maintain the software development cycle for the project. We have presented a detailed description of the total system. It will be much easy to conduct the whole project using this SRS. It will also help us to determine the pitfalls that may come ahead.