Software Requirements Specifications v1user.ceng.metu.edu.tr/~e1679372/Group Hawaii-CONFMAN...

57
Middle East Technical University Department of Computer Engineering CONFMAN Software Requirements Specifications v1.1 Group Hawaii Başak Elif AKGÜN 1745645 Selin AKİFOĞLU 1678663 Tolga ATALAY 1678713 Barış ÇAKAR 1679372 January 18, 2013

Transcript of Software Requirements Specifications v1user.ceng.metu.edu.tr/~e1679372/Group Hawaii-CONFMAN...

Middle East Technical University

Department of Computer Engineering

CONFMAN

Software Requirements Specifications

v1.1

Group Hawaii

Başak Elif AKGÜN – 1745645

Selin AKİFOĞLU – 1678663

Tolga ATALAY – 1678713

Barış ÇAKAR – 1679372

January 18, 2013

1

Preface

This document contains the Software Requirements Specification (SRS) of a

Conference Management and Hosting System. Main purpose of this project is to design and

develop a comprehensive conference management system that can host multiple

conferences and their all web based activities.

In the first section of this document, purpose and scope of the Conference

Management and Hosting System is presented.

In the second section, overall description of the system is given in details.

In the third section, specific requirements are introduced.

In the forth section, a glossary for the technical terms is presented.

This document has been prepared in accordance with the IEEE STD 830-1998 IEEE

Recommended Practice for Software Requirements Specifications.

2

Table of Contents

1. Introduction ..................................................................................................................................... 5

1.1 Purpose .......................................................................................................................................... 5

1.2 Document Conventions ................................................................................................................. 5

1.3 Intended Audience ........................................................................................................................ 6

1.4 Background Research .................................................................................................................... 6

1.5 Scope ............................................................................................................................................. 7

1.6 References ..................................................................................................................................... 8

2. Overall Description .......................................................................................................................... 8

2.1 Product Perspective ...................................................................................................................... 8

2.2 Product Features ........................................................................................................................... 8

2.3 User Classes and Characteristics ................................................................................................. 10

2.4 Operating Environment............................................................................................................... 10

2.5 Design and Implementation Constraints ..................................................................................... 11

2.6 Assumptions and Dependencies ................................................................................................. 11

2.7 Software Interfaces ..................................................................................................................... 11

2.8 Data Description .......................................................................................................................... 11

3. Specific Requirements ....................................................................................................................... 12

3.1 System Environment ................................................................................................................... 12

3.2 External Interface Requirements ................................................................................................ 13

3.2.1 Graphical User Interface (GUI) ............................................................................................. 13

3.2.2 Software Interface ................................................................................................................ 13

3.2.3 Communication Interface ..................................................................................................... 13

3.3 Functional Requirements ............................................................................................................ 13

3.3.1 Overall Use Cases ................................................................................................................. 14

3.3.2 Must Have Use Cases ........................................................................................................... 15

3.3.2.1 User Use Cases .................................................................................................................. 15

3.3.2.1.1 Use Case: Sign-up ........................................................................................................... 15

3.3.2.1.2 Use Case: Sign-in ............................................................................................................ 17

3.3.2.1.3 Use Case: Sign-out .......................................................................................................... 18

3

3.3.2.1.4 Use Case: View My Profile .............................................................................................. 19

3.3.2.1.5 Use Case: Edit My Profile ............................................................................................... 20

3.3.2.2 Conference Chair Use Cases .............................................................................................. 21

3.3.2.2.1 Use Case: Create Conference ......................................................................................... 21

3.3.2.2.2 Use Case: Update Conference Info................................................................................. 23

3.3.2.2.3 Use Case: View Conference Info .................................................................................... 24

3.3.2.3 Technical Program Committee (TPC) Chair Use Cases ...................................................... 25

3.3.2.3.1 Use Case: Set Conference Details ................................................................................... 25

3.3.2.3.2 Use Case: Assign Reviewers............................................................................................ 26

3.3.2.3.3 Use Case: Assign Papers ................................................................................................. 28

3.3.2.3.4 Use Case: Update Conference Info................................................................................. 30

3.3.2.3.5 Use Case: View Conference Info .................................................................................... 31

3.3.2.3.6 Use Case: Accept Abstract .............................................................................................. 32

3.3.2.3.7 Use Case: Reject Abstract ............................................................................................... 33

3.3.2.3.8 Use Case: Accept Paper .................................................................................................. 34

3.3.2.3.9 Use Case: Reject Paper ................................................................................................... 35

3.3.2.4 Program Committee Member (PCM) Use Cases ............................................................... 36

3.3.2.4.1 Use Case: Select Paper Preferences ............................................................................... 36

3.3.2.4.2 Use Case: View Assigned Papers .................................................................................... 38

3.3.2.4.3 Use Case: Preview Paper ................................................................................................ 39

3.3.2.4.4 Use Case: Download Paper ............................................................................................ 40

3.3.2.4.5 Use Case: Evaluate Paper ............................................................................................... 41

3.3.2.5 Author Use Cases ............................................................................................................... 42

3.3.2.5.1 Use Case: Upload Abstract ............................................................................................. 42

3.3.2.5.2 Use Case: Upload Paper ................................................................................................. 44

3.3.2.5.3 Use Case: View My Papers ............................................................................................. 45

3.3.2.5.4 Use Case: View Results ................................................................................................... 46

3.3.2.5.5 Use Case: Register to Conference .................................................................................. 47

3.3.2.6 Publication Chair Use Case ................................................................................................ 48

3.3.2.6.1 Use Case: View Accepted Papers ................................................................................... 48

3.3.2.7 Tourism Agency Chair Use Case ........................................................................................ 49

3.3.2.7.1 Use Case: View Participant Info ..................................................................................... 49

3.3.2.8 Admin Use Cases ............................................................................................................... 50

3.3.2.8.1 Use Case: Fix Reported Problems ................................................................................... 50

4

3.3.2.8.2 Use Case: Manage Conference Request ........................................................................ 51

3.3.3 May Have Use Cases ............................................................................................................. 52

3.3.3.1 User Use Cases .................................................................................................................. 52

3.3.3.1.1 Use Case: Send Instant Message .................................................................................... 52

3.4 Non-functional Requirements ..................................................................................................... 53

3.4.1 Performance Requirements ................................................................................................. 53

3.4.2 Safety Requirements ............................................................................................................ 53

3.4.3 Security Requirements ......................................................................................................... 53

3.4.4 Portability Requirements ..................................................................................................... 53

3.4.5 Other Requirements – GNU GPL License ............................................................................. 54

4. Appendix ........................................................................................................................................ 54

4.1 Appendix A: Definitions of Terms ................................................................................................ 54

5. Document Change History ................................................................................................................. 55

5

1. Introduction

1.1 Purpose

This document provides the details of software requirements specification (SRS) for a

Conference Management and Hosting System (CONFMAN). It is prepared according to the

“IEEE Recommended Practice for Software Requirements Specifications - IEEE Standard 830

– 1998”. This document will also provide a basis for the further extensions of the existing

software.

Conference management systems are used in the organization and management of

professional and scientific conferences. These web-based software systems help conference

committees, authors, referees, conference organizers and publishers by supplying necessary

tools for their activities. These systems present an efficient solution to great extent;

however, they are not fully satisfactory in terms of their set of available features or usability.

The purpose of this project is to provide a comprehensive conference management

system that can host multiple conferences and their all web based activities.

1.2 Document Conventions

This document is prepared prior to the design and development of Conference

Management and Hosting System. Therefore, requirements stated here may not be fully

satisfactory. It is important to update this document with every future requirement and

clarify its priority for consistency purposes.

Readers can refer to Appendix A for terms definition of some technical information

that has been included throughout the document.

6

1.3 Intended Audience

This document is intended for developers, testers and end users of this application.

1. Developers can review project’s extent and capabilities in order to understand,

design and develop the application by referring to the guidelines stated in the

document.

2. Testers can apply to this documentation for the verification and validation of the

requirements.

3. End users can read about the project capabilities.

1.4 Background Research

There are some popular web-based conference management systems that have been

introduced to address the issue at hand. These systems provide a solution to some extent in

terms of easy management; however there is still some lack of usability.

One example is Conference Management Toolkit (CMT) [3], which is a free conference

management service sponsored by Microsoft Research. In the last two years, CMT has been

used for more than 700 conferences, workshops and other programs. It is capable of

handling the complex workflow of an academic conference; however it has some quite

obvious shortages. Firstly CMT’s user interface seems quite sketchy and complicated which

reduces user-friendliness. Secondly login identification of the CMT system is not easy to use.

The users have to register to the CMT system with different IDs for different events. From

our point of view, one ID per user should be available and sufficient for registering to

different events managed by the same system.

Another example of current conference management systems is EasyChair [4]. It is a

free system which is mainly designed to help program chairs to cope with the complexity of

the refereeing process. Although EasyChair is probably the most commonly used conference

management system, it still has a number of deficiencies. One of the problems is that

EasyChair’s interface is impractical to use according to our experience. Another problem is

7

about identification. With EasyChair it is possible to have a permanent identification which

enables users to have a permanent ID available for all events. However, if user is registered

to more than one event at the same time system only shows one of the active conferences.

It is not possible to observe all the registered events in a compact and easy way which is an

undesirable feature for us.

1.5 Scope

The offered software product is a Conference Management and Hosting System. It is

a management system that manages all administrative and organizational tasks of a

conference.

More specifically, the system is aimed to have features which are included in already

existing conference management systems such as registrations, paper submissions, paper

referee assignments, web page and periodical announcements, conference rooms

presentation schedules and referee evaluations.

The application is also intended to offer some additional features, which can be listed

as follows:

1. Permanent Identification that allows users to register to the system with their

OpenID for different events.

2. Reviewer Statistics which provides the basis for fair evaluation as reviewers are

assigned to papers according to their current evaluation statistics.

3. Publisher Access that enables publishers to extract the accepted papers of a

conference as a list.

4. Tourism Agency Access feature will provide accommodation and transportation

to the conference participants when demanded.

8

1.6 References

[1] IEEE. IEEE Std 830-1998 IEEE Recommended Practice for Software Requirements

Specifications. IEEE Computer Society, 1998.

[2] For UML sources: http://www.tutorialspoint.com/uml/index.htm

[3] http://cmt.research.microsoft.com/cmt/

[4] http://www.easychair.org/

2. Overall Description

2.1 Product Perspective

Conference Management and Hosting System is a tool for organization and

management of professional and scientific conferences. This product is free and open source

with a GNU General Public License (GPL). This system offers not only the features that are

included in existing conference management systems but also improvements that are not

accomplished in them. Furthermore, since the system is open source, the users are

motivated to use the system and help its development.

2.2 Product Features

This version provides:

a. Users:

Sign-up

Sign-in

Sign-out

9

View My Profile

Edit My Profile

b. Conference Chair:

Create conference

Update conference information

View conference information

c. Technical Program Committee Chair (TPC Chair):

Set conference details

Assign reviewers (to conferences)

Assign papers (to reviewers)

Update conference information

View conference information

Accept abstracts

Reject abstracts

Accept evaluated papers

Reject evaluated papers

d. Program Committee Member (PCM):

Select paper preferences

View assigned papers

Evaluate paper

Preview paper

Download paper

e. Author:

Upload abstract

Upload paper

View my papers

View results (of uploaded papers)

Register to conference

f. Publication Chair:

View accepted papers

g. Tourism Agency Chair:

10

View participants’ information

h. Admin:

Fix reported problems

Manage conference request

i. Automatic scheduling of multiple conferences

j. Multi-language support

k. Storage of reviewers’ statistics ( for fair assignment)

l. Multiple role support:

Different user roles in same/different conferences

m. OpenID integrability

n. Online payment

2.3 User Classes and Characteristics

This project is meant to be used by two major user classes:

1. General users who take advantage of the application to satisfy their own needs. This

application is for the use of people who are enrolled in an academic area.

2. Software developers who contribute to the development of open source software.

2.4 Operating Environment

The Conference Management and Hosting System is platform independent. It is

aimed to run on every platform and browser.

A standard personal computer (PC) with minimum 512 MB RAM is enough to satisfy

the system hardware requirements.

11

2.5 Design and Implementation Constraints

The Conference Management and Hosting System will be implemented with Java

using Eclipse as the IDE, JavaScript and PHP as scripting languages and CSS as style sheet

language.

2.6 Assumptions and Dependencies

There must be Internet connection and the used browser should be HTML 5

compatible.

2.7 Software Interfaces

This system consists of two parts namely client-side and server-side. All the data is

stored in a database in server-side. The user requests information via the user interface,

system goes into the database, processes the request, fetches the related data and returns it

to the user. All in all, this system is a server-client web application.

2.8 Data Description

This system serves as a server-client web application. Client side, namely end-users of

the system, requests service from server-side. This service may be getting information or

downloading files from the system server. Also, information entered by the user (for

example, during registration) is sent to the system database and causes updates on the

server. In addition, file uploading is another request. These uploaded files are maintained in

the server securely.

12

3. Specific Requirements

In this part, software requirements will be explained in detail, under system

environment, external interface requirements, functional and non-functional requirements

sections.

3.1 System Environment

The CONFMAN application has user and admin as actors interacting with the system.

The users can use the system through the web page, whereas the admin has access to the

entire system.

System

CONFMAN Web Page

CONFMAN Database

User

Admin

Diagram 1: System Environment

13

3.2 External Interface Requirements

3.2.1 Graphical User Interface (GUI)

The Conference Management and Hosting System should have a user-friendly GUI to provide

ease of use and effectiveness to the users with different roles. To clarify, the users should only see

the interfaces that they are related to according to their roles.

3.2.2 Software Interface

A browser on which the Conference Management and Hosting System can run should be

available.

3.2.3 Communication Interface

This system is a web application; therefore network connection with TCP/IP protocol is

necessary.

3.3 Functional Requirements

Functional requirements are those that refer to the functionality of the system. Each

functional requirement includes a description of every input into the system and every

output from the system. Some of these are provided by using diagrams to make the system

more clear.

14

3.3.1 Overall Use Cases

System

User

Sign-up

Sign-in

Sign-out

Conference Chair

Create Conference

Update ConferenceInfo

View Conference Info

TPC Chair

Set Conference Details

Assign Reviewers

Assign Papers

Update Conference Info

View Conference info

Accept Paper

Reject Paper

Accept Abstract

Reject Abstract

PCM

Select Paper Preferences

View Assigned Papers

Evaluate Paper

Upload Abstract

Author

Upload Paper

Register to Conference

Publication Chair

View Accepted Papers

View Participant Info

Tourism Agency Chair Admin

Fix Reported Problems

Manage Conference Request

Send Instant Message

View My Profile

Edit My Profile

Preview Paper

Download Paper

View My Papers

View Results

Diagram 2: Overall Use Cases

15

3.3.2 Must Have Use Cases

3.3.2.1 User Use Cases

Diagram:

3.3.2.1.1 Use Case: Sign-up

Diagram:

User

Sign-up

Diagram 4: Sign-up

Diagram 3: User Use Cases

User

Sign-in

Sign-up

Sign-out

View My Profile

Edit My Profile

16

Brief Description: The user signs up the system.

Actor User

Trigger User presses “Sign Up” button.

Pre-condition The user has already in the main page.

Basic Path 1. User presses “Sign Up” button.

2. User fills in necessary information in the

form.

3. User presses “Send Request” button.

4. System sends verification e-mail to the

user.

5. User activates the account by verifying the

e-mail.

6. The user is directed to the user’s page.

Alternative Paths None

Post-condition The user is directed to the user interface.

Exception Paths If the user has OpenID, then s/he does not

have to sign up to the system.

Other None

17

3.3.2.1.2 Use Case: Sign-in

Diagram:

Brief Description: The user signs in the system.

Actor User

Trigger User presses “Sign In” button.

Pre-condition The user has already in the main page.

Basic Path 1. User enters his/her username.

2. User enters his/her password.

3. User presses “Sign In” button.

4. User is directed to the user’s page.

Alternative Paths 1. User enters his/her OpenID as username.

2. User enters his/her OpenID password.

3. User presses “Sign In” button.

4. User is directed to the user’s page.

Post-condition The user is directed to the user interface.

Exception Paths If user enters invalid username and/or

password, s/he is warned and redirected to

the sign in page.

Other None

User

Sign-in

Diagram 5: Sign-in

18

3.3.2.1.3 Use Case: Sign-out

Diagram:

Brief Description: The user signs out the system.

Actor User

Trigger User presses “Sign Out” button.

Pre-condition User has already signed in to the system.

Basic Path 1. User presses “Sign Out” button.

2. A pop-up window appears for sign-out

confirmation.

3. User presses “Yes” button.

4. The user is directed to the main page.

Alternative Paths None

Post-condition The user is directed to the main page.

Exception Paths 1. User presses “Sign Out” button.

2. A pop-up window appears for sign-out

confirmation.

3. User presses “No” button.

4. The user is redirected to the user’s page.

Other None

User

Sign-out

Diagram 6: Sign-out

19

3.3.2.1.4 Use Case: View My Profile

Diagram:

Brief Description: The user views his/her profile.

Actor User

Trigger User presses “My Profile” button.

Pre-condition User has already signed in to the system.

Basic Path 1. User presses “My Profile” button.

Alternative Paths None

Post-condition Profile information of the user is shown.

Exception Paths None

Other None

Diagram 7: View My Profile

User

View My Profile

20

3.3.2.1.5 Use Case: Edit My Profile

Diagram:

Brief Description: The user edits his/her profile.

Actor User

Trigger User presses “Edit” button.

Pre-condition User has already signed in to the system.

Basic Path 1. User presses “My Profile” button.

2. User presses “Edit” button.

3. Existing information of the user appears

on the screen.

4. User changes the desired information by

clicking the related textboxes.

5. User clicks “Save Changes” button.

Alternative Paths 4. User clicks “Save Changes” button.

Post-condition The changes are saved to the database.

Exception Paths 5. User presses “Cancel” button.

6. The changes are not saved to the

database.

7. User is redirected to the user page.

Other None

Diagram 8: Edit My Profile

User

Edit My Profile

21

3.3.2.2 Conference Chair Use Cases

Diagram:

3.3.2.2.1 Use Case: Create Conference

Diagram:

Diagram 10: Create Conference

Conference Chair

Create Conference

Conference Chair

Create Conference

Update Conference Info

View Conference Info

Diagram 9: Conference Chair Use Cases

22

Brief Description: Conference chair creates a conference.

Actor Conference chair

Trigger Conference chair presses “Create

Conference” button.

Pre-condition Conference chair has already signed in to the

system.

Basic Path 1. Conference chair presses “Create

Conference” button.

2. Conference chair fills the necessary

information.

3. Conference chair presses “Request”

button.

4. System confirms this request.

5. The conference chair is directed to his/her

page.

Alternative Paths None

Post-condition Conference is created and the conference

chair is directed to his/her page.

Exception Paths None

Other None

23

3.3.2.2.2 Use Case: Update Conference Info

Diagram:

Brief Description: Conference chair updates conference information.

Actor Conference chair

Trigger Conference chair presses “Update” button.

Pre-condition Conference chair has already created a

conference.

Basic Path 1. Conference chair presses “Update”

button.

2. Conference chair updates the related

field(s).

3. Conference chair presses “Save” button.

4. The conference chair is directed to his/her

page.

Alternative Paths None

Post-condition Conference information is updated and the

conference chair is directed to his/her page.

Exception Paths None

Other None

Conference Chair

Update Conference Info

Diagram 11: Update Conference

Info

24

3.3.2.2.3 Use Case: View Conference Info

Diagram:

Brief Description: Conference chair views conference information.

Actor Conference chair

Trigger Conference chair presses “View Conference”

button.

Pre-condition Conference chair has already created a

conference.

Basic Path 1. Conference chair selects the conference

from drop-down menu.

2. Conference chair presses “View

Conference” button.

3. Conference chair is directed to related

conference page.

4. The conference information is viewed.

Alternative Paths None

Post-condition Conference information is shown to the

conference chair.

Exception Paths None

Other None

Conference Chair

View Conference Info

Diagram 12: View Conference Info

25

3.3.2.3 Technical Program Committee (TPC) Chair Use Cases

Diagram:

3.3.2.3.1 Use Case: Set Conference Details

Diagram:

TPC Chair

Set Conference Details

Diagram 14: Set Conference Details

TPC Chair

Set Conference Details

Assign Papers

Accept Paper

Assign Reviewers

Reject Paper

Accept Abstract

Update Conference Info

View Conference Info

Reject Abstract

Diagram 13: TPC Chair Use Cases

26

Brief Description: TPC chair sets related conference details.

Actor TPC chair

Trigger TPC chair presses “Set Details” button.

Pre-condition TPC chair has already assigned to a created

conference.

Basic Path 1. TPC chair selects the conference from

drop-down menu.

2. TPC chair presses “Set Details” button.

3. TPC chair sets the related conference’s

information.

4. TPC chair presses “Set” button.

5. The TPC chair is directed to his/her page.

Alternative Paths None

Post-condition Conference details are set.

Exception Paths None

Other None

3.3.2.3.2 Use Case: Assign Reviewers

Diagram:

TPC Chair

Assign Reviewers

Diagram 15: Assign Reviewers

27

Brief Description: TPC chair assigns reviewers to the related conference.

Actor TPC chair

Trigger TPC chair presses “Assign Reviewers”

button.

Pre-condition TPC chair has already assigned to a created

conference.

Basic Path 1. TPC chair selects the conference from

drop-down menu.

2. TPC chair presses “Assign Reviewers”

button.

3. List of reviewers appears as checkboxes.

4. TPC chair selects reviewers from the

checkboxes.

5. TPC chair presses “Assign” button.

6. An e-mail is sent to the reviewer for

information purpose.

7. The TPC chair is directed to his/her page.

Alternative Paths None

Post-condition Conference-reviewer assignment is done.

Exception Paths None

Other None

28

3.3.2.3.3 Use Case: Assign Papers

Diagram:

Brief Description: TPC chair assigns papers to the reviewers of the related conference.

Actor TPC chair

Trigger TPC chair presses “Assign Papers” button.

Pre-condition TPC chair has already assigned reviewers to

a created conference.

Basic Path 1. TPC chair selects the conference from

drop-down menu.

2. TPC chair presses “Assign Papers” button.

3. TPC chair selects “Manual” option from

radio buttons.

4. List of reviewers appears.

5. For a reviewer TPC chair selects a paper

from drop-down menu.

6. TPC chair presses “Add” button.

7. Paper name(s) appear(s) in a list near the

reviewer name.

8. If TPC chair wants to assign more than one

paper to a reviewer, then s/he goes to step 5

Diagram 16: Assign Papers

TPC Chair

Assign Papers

29

else s/he goes to step 9.

9. If there are any reviewers left, then s/he

repeats the procedures 5-8 else s/he goes to

step 10.

10. TPC chair presses “Assign” button.

11. An e-mail is sent to the reviewer for

information purpose.

Alternative Paths 3. TPC chair selects “Automatic” option from

radio buttons.

4. Lists of papers appear near each

reviewer’s name.

5. TPC chair presses “Assign” button.

6. An e-mail is sent to the reviewer for

information purpose.

Post-condition Paper-reviewer assignment is done.

Exception Paths None

Other None

30

3.3.2.3.4 Use Case: Update Conference Info

Diagram:

Brief Description: TPC chair updates conference information.

Actor TPC chair

Trigger TPC chair presses “Update” button.

Pre-condition TPC chair has already assigned to a created

conference.

Basic Path 1. TPC chair selects the conference from

drop-down menu.

2. TPC chair presses “Update” button.

3. TPC chair updates the related field(s).

4. TPC chair presses “Save” button.

5. The TPC chair is directed to his/her page.

Alternative Paths None

Post-condition Conference information is updated and the

TPC chair is directed to his/her page.

Exception Paths None

Other None

TPC Chair

Update Conference Info

Diagram 17: Update Conference Info

31

3.3.2.3.5 Use Case: View Conference Info

Diagram:

Brief Description: TPC chair views conference information.

Actor TPC chair

Trigger TPC chair presses “View Conference” button.

Pre-condition TPC chair has already assigned to a created

conference.

Basic Path 1. TPC chair selects the conference from

drop-down menu.

2. TPC chair presses “View Conference”

button.

3. TPC chair is directed to related conference

page.

4. The conference information is viewed.

Alternative Paths None

Post-condition Conference information is shown to the TPC

chair.

Exception Paths None

Other None

TPC Chair

View Conference Info

Diagram 18: View Conference Info

32

3.3.2.3.6 Use Case: Accept Abstract

Diagram:

Brief Description: TPC chair accepts an abstract for a conference.

Actor TPC chair

Trigger TPC chair presses “Accept Abstract” button.

Pre-condition The abstract has already been uploaded by

an author.

Basic Path 1. TPC chair selects the conference from

drop-down menu.

2. TPC chair presses “Abstracts” button in

his/her page.

3. List of abstracts that are uploaded for the

related conference is shown.

4. TPC chair presses “Accept Abstract”

button.

5. An e-mail is sent to the author of

accepted abstract for information purpose.

Alternative Paths None

Post-condition The abstract is accepted for that conference.

Exception Paths None

Other None

TPC Chair

Accept Abstract

Diagram 19: Accept Abstract

33

3.3.2.3.7 Use Case: Reject Abstract

Diagram:

Brief Description: TPC chair rejects an abstract for a conference.

Actor TPC chair

Trigger TPC chair presses “Reject Abstract” button.

Pre-condition The abstract has already been uploaded by

an author.

Basic Path 1. TPC chair selects the conference from

drop-down menu.

2. TPC chair presses “Abstracts” button in

his/her page.

3. List of abstracts that are uploaded for the

related conference is shown.

4. TPC chair presses “Reject Abstract”

button.

5. An e-mail is sent to the author of rejected

abstract for information purpose.

Alternative Paths None

Post-condition The abstract is rejected for that conference.

Exception Paths None

Other None

TPC Chair

Reject Abstract

Diagram 20: Reject Abstract

34

3.3.2.3.8 Use Case: Accept Paper

Diagram:

Brief Description: TPC chair accepts a paper for a conference.

Actor TPC chair

Trigger TPC chair presses “Accept” button.

Pre-condition The paper has already been evaluated by a

reviewer.

Basic Path 1. TPC chair selects the conference from

drop-down menu.

2. TPC chair presses “Papers” button in

his/her page.

3. List of papers that are registered to the

related conference is shown.

4. TPC chair presses “Accept” button for a

paper that has already been evaluated.

5. An e-mail is sent to the author of

accepted paper for information purpose.

Alternative Paths None

Post-condition The paper is accepted for that conference.

Exception Paths None

Other None

TPC Chair

Accept Paper

Diagram 21: Accept Paper

35

3.3.2.3.9 Use Case: Reject Paper

Diagram:

Brief Description: TPC chair rejects a paper for a conference.

Actor TPC chair

Trigger TPC chair presses “Reject” button.

Pre-condition The paper has already been evaluated by a

reviewer.

Basic Path 1. TPC chair selects the conference from

drop-down menu.

2. TPC chair presses “Papers” button in

his/her page.

3. List of papers that are registered to the

related conference is shown.

4. TPC chair presses “Reject” button for a

paper that has already been evaluated.

5. An e-mail is sent to the author of rejected

paper for information purpose.

Alternative Paths None

Post-condition The paper is rejected for that conference.

Exception Paths None

Other None

TPC Chair

Reject Paper

Diagram 22: Reject Paper

36

3.3.2.4 Program Committee Member (PCM) Use Cases

Diagram:

3.3.2.4.1 Use Case: Select Paper Preferences

Diagram:

PCM

Select Paper Preferences

Diagram 24: Select Paper Preferences

Diagram 23: PCM Use Cases

PCM

Select Paper Preferences

View Assigned Papers

Evaluate Paper

Preview Paper

Download Paper

37

Brief Description: PCM selects his/her paper preferences for the related conference.

Actor PCM

Trigger PCM presses “Select Preferences” button.

Pre-condition PCM has already assigned as a reviewer to a

created conference.

Basic Path 1. PCM selects the conference from drop-

down menu.

2. PCM presses “Select Preferences” button.

3. PCM selects a paper from drop-down

menu.

4. PCM presses “Add” button.

5. PCM may repeat procedures 3-4 till s/he

reaches the maximum number of

preferences.

6. PCM presses “Save” button.

Alternative Paths None

Post-condition Paper preferences are set.

Exception Paths None

Other None

38

3.3.2.4.2 Use Case: View Assigned Papers

Diagram:

Brief Description: PCM views papers assigned to him/her and their related information.

Actor PCM

Trigger PCM presses “Assigned Papers” button.

Pre-condition PCM has already assigned as a reviewer to a

paper.

Basic Path 1. PCM selects the conference from drop-

down menu.

2. PCM presses “Assigned Papers” button.

3. A list of his/her assigned papers’

information appears.

Alternative Paths None

Post-condition Paper information is viewed.

Exception Paths None

Other None

Diagram 25: View Assigned Papers

PCM

View Assigned Papers

39

3.3.2.4.3 Use Case: Preview Paper

Diagram:

Brief Description: PCM previews a paper by clicking the paper title hyperlink.

Actor PCM

Trigger PCM presses hyperlink button of paper title.

Pre-condition PCM has already assigned as a reviewer to a

paper.

Basic Path 1. PCM selects the conference from drop-

down menu.

2. PCM presses “Assigned Papers” button.

3. A list of his/her assigned papers’

information appears.

4. PCM clicks the paper title hyperlink of the

desired paper.

5. The selected paper is shown in a new tab.

Alternative Paths None

Post-condition Paper content is shown.

Exception Paths None

Other None

Diagram 26: Preview Paper

PCM

Preview Paper

40

3.3.2.4.4 Use Case: Download Paper

Diagram:

Brief Description: PCM downloads a paper by clicking the download button.

Actor PCM

Trigger PCM presses “Download” button.

Pre-condition PCM has already assigned as a reviewer to a

paper.

Basic Path 1. PCM selects the conference from drop-

down menu.

2. PCM presses “Assigned Papers” button.

3. A list of his/her assigned papers’

information appears.

4. PCM presses “Download” button for the

desired paper.

5. The selected paper is downloaded.

Alternative Paths None

Post-condition Paper is downloaded to PCM’s PC.

Exception Paths None

Other None

Diagram 27: Download Paper

PCM

Download Paper

41

3.3.2.4.5 Use Case: Evaluate Paper

Diagram:

Brief Description: PCM evaluates an assigned paper.

Actor PCM

Trigger PCM presses “Evaluate Paper” button.

Pre-condition PCM has already assigned as a reviewer to a

paper.

Basic Path 1. PCM selects the conference from drop-

down menu.

2. PCM presses “Evaluate Paper” button.

3. A list of his/her assigned papers appears.

4. For a paper PCM ticks the appropriate

level of assessment.

5. PCM presses “Save” button.

6. An e-mail is sent to the TPC chair for

information purpose.

Alternative Paths None

Post-condition Paper evaluation is done.

Exception Paths None

Other None

PCM

Evaluate Paper

Diagram 28: Evaluate Paper

42

3.3.2.5 Author Use Cases

Diagram:

3.3.2.5.1 Use Case: Upload Abstract

Diagram:

Author

Upload Abstract

Diagram 30: Upload Abstract

Author

View Results

Upload Abstract

Upload Paper

View My Papers

Register to Conference

Diagram 29: Author Use Cases

43

Brief Description: Author uploads an abstract for the related conference.

Actor Author

Trigger Author presses “Upload Abstract” button.

Pre-condition Author has already been signed in to the

system.

Basic Path 1. Author selects the conference from drop-

down menu.

2. Author presses “Upload Abstract” button.

3. Author fills the required fields.

4. Author presses “Choose File” button.

5. System opens a pop-up window that

shows the directories.

6. Author selects the directory where his/her

abstract is included and chooses the

abstract.

7. Author clicks “OK” button on the window.

8. Abstract file name is shown on the page.

9. Author clicks “Upload” button.

Alternative Paths None

Post-condition Abstract is uploaded to the system.

Exception Paths 7. Author clicks “Cancel” button on the

window.

Other None

44

3.3.2.5.2 Use Case: Upload Paper

Diagram:

Brief Description: Author uploads a paper for the related conference.

Actor Author

Trigger Author presses “Upload Paper” button.

Pre-condition The abstract has already been accepted.

Basic Path 1. Author selects the conference from drop-

down menu.

2. Author presses “Upload Paper” button.

3. Author fills the required fields.

4. Author presses “Choose File” button.

5. System opens a pop-up window that

shows the directories.

6. Author selects the directory where his/her

paper is included and chooses the paper.

7. Author clicks “OK” button on the window.

8. Paper file name is shown on the page.

9. Author clicks “Upload” button.

Alternative Paths None

Post-condition Paper is uploaded to the system.

Exception Paths 7. Author clicks “Cancel” button on the

window.

Other None

Diagram 31: Upload Paper

Author

Upload Paper

45

3.3.2.5.3 Use Case: View My Papers

Diagram:

Brief Description: Author views his/her uploaded papers to the conference.

Actor Author

Trigger Author presses “Papers” button.

Pre-condition The author has already uploaded a paper to

the system.

Basic Path 1. Author selects the conference from drop-

down menu.

2. Author presses “Papers” button.

3. The uploaded papers are viewed as a list.

Alternative Paths None

Post-condition The uploaded papers are viewed as a list.

Exception Paths None

Other None

Diagram 32: View My Papers

Author

View My Papers

46

3.3.2.5.4 Use Case: View Results

Diagram:

Brief Description: Author views status of his/her uploaded papers to that conference.

Actor Author

Trigger Author presses “View Results” button.

Pre-condition The author has already uploaded a paper to

the system.

Basic Path 1. Author selects the conference from drop-

down menu.

2. Author presses “View Results” button.

3. Status of the uploaded papers is viewed

as a list.

Alternative Paths None

Post-condition Status of the uploaded papers is viewed as a

list.

Exception Paths None

Other None

Diagram 33: View Results

Author

View Results

47

3.3.2.5.5 Use Case: Register to Conference

Diagram:

Brief Description: Author registers to a conference.

Actor Author

Trigger Author presses “Register to Conference”

button.

Pre-condition Author has already signed in to the system.

Basic Path 1. Author selects the conference from drop-

down menu.

2. Author presses “Register to Conference”

button.

3. A secure page appears.

4. Author fills the required fields for

registration and payment.

5. Author presses “Register” button.

Alternative Paths None

Post-condition Author is registered to the conference.

Exception Paths None

Other None

Author

Register to Conference

Diagram 34: Register to Conference

48

3.3.2.6 Publication Chair Use Case

3.3.2.6.1 Use Case: View Accepted Papers

Diagram:

Brief Description: Publication chair view the list of accepted papers of the related

conference.

Actor Publication chair

Trigger Publication chair presses “View” button.

Pre-condition Publication chair has already signed in to the

system.

Basic Path 1. Publication chair selects the conference

from drop-down menu.

2. Publication chair presses “View” button.

3. Accepted papers of the related

conference appear as a list.

Alternative Paths 4. Publication chair downloads this list by

pressing “Download” button.

Post-condition List of accepted papers of the conference is

viewed.

Exception Paths None

Other None

Publication Chair

View Accepted Papers

Diagram 35: View Accepted Papers

49

3.3.2.7 Tourism Agency Chair Use Case

3.3.2.7.1 Use Case: View Participant Info

Diagram:

Brief Description: Tourism agency chair view the list of related conference’s participants

who demand transportation and/or accommodation.

Actor Tourism agency chair

Trigger Tourism agency chair presses “View” button.

Pre-condition Tourism agency chair has already signed in

to the system.

Basic Path 1. Tourism agency chair selects the

conference from drop-down menu.

2. Tourism agency chair presses “View”

button.

3. Information of conference participants

who demand transportation and/or

accommodation appears as a list.

Alternative Paths 4. Tourism agency chair downloads this list

by pressing “Download” button.

Post-condition List of conference participants demanding

transportation and/or accommodation is

viewed.

Exception Paths None

Other None

Tourism Agency Chair

View Participant Info

Diagram 36: View Participant Info

50

3.3.2.8 Admin Use Cases

Diagram:

3.3.2.8.1 Use Case: Fix Reported Problems

Diagram:

Brief Description: Admin fixes any reported complaints, conflicts or other problems.

Actor Admin

Trigger Admin presses “Reported Problems” button.

Pre-condition Admin has already signed in to the database.

Basic Path 1. Admin presses “Reported Problems”

button.

2. A list of current conflicts and complaints

appears.

3. Admin chooses one of the problems in

this list and resolves it.

Diagram 38: Fix Reported Problems

Admin

Fix Reported Problems

Manage Conference Request

Diagram 37: Admin Use Cases

Admin

Fix Reported Problems

51

Alternative Paths 4. Admin repeats step 3 if any other problem

exists.

Post-condition Reported problem(s) is solved and deleted

from the list.

Exception Paths None

Other None

3.3.2.8.2 Use Case: Manage Conference Request

Diagram:

Brief Description: Admin manages conference request sent by a user.

Actor Admin

Trigger Admin is requested to create a conference

via e-mail.

Pre-condition None

Basic Path 1. Admin evaluates the conference request.

2. If the request is appropriate, admin

handles the conference related

management issues.

Alternative Paths 2. If the request is not appropriate, admin

rejects the request via e-mail.

Post-condition The conference request is evaluated.

Exception Paths None

Other None

Diagram 39: Manage Conference Request

Admin

Manage Conference Request

52

3.3.3 May Have Use Cases

3.3.3.1 User Use Cases

3.3.3.1.1 Use Case: Send Instant Message

Diagram:

Brief Description: The user sends an internal instant message to other user(s).

Actor User

Trigger User presses “Send IM” button.

Pre-condition User is already in the user’s page.

Basic Path 1. User presses “Send IM” button.

2. A pop-up window appears.

3. User fills the required fields.

4. User presses “Send” button.

5. User is redirected to his/her page.

Alternative Paths None

Post-condition An instant message is sent by the user.

Exception Paths None

Other None

Diagram 40: Send Instant Message

User

Send Instant Message

53

3.4 Non-functional Requirements

3.4.1 Performance Requirements

The Conference Management and Hosting System is a web-service application which

is desired to handle multiple users at the same time. Therefore, a server database will be

used in order to provide support.

3.4.2 Safety Requirements

The Conference Management and Hosting System must guarantee that the uploaded

abstracts and papers will not be modified or broken.

3.4.3 Security Requirements

This system’s database has to be reached securely and its data should not be broken

in order to provide security and consistency.

3.4.4 Portability Requirements

The Conference Management and Hosting System should be portable and therefore

can be operated on GNU/Linux distributions, Mac OS X and Microsoft Windows.

54

3.4.5 Other Requirements – GNU GPL License

The project will be released under GNU General Public License, which allows the use,

change and redistribution of the software freely. The philosophy of this license is applied to

this conference management and hosting system to achieve the greatest possible use and

development by public.

4. Appendix

4.1 Appendix A: Definitions of Terms

.NET Web application framework

C# C Sharp - multi-paradigm programming language

CSS Cascading Style Sheets

Eclipse Multi-language software development environment

IDE Integrated Development Environment

IEEE Institute of Electrical and Electronics Engineers

JavaScript Client-side scripting language

MB Megabyte (1024 byte)

PHP Open source general-purpose server-side scripting

language

RAM Random Access Memory

Silverlight Application framework for the Internet applications

SRS System Requirements Specification

UML Unified Modeling Language

TPC Technical Program Committee

PCM Program Committee Member

GUI Graphical User Interface

TCP/IP Transmission Control Protocol/Internet Protocol

PC Personal Computer

55

5. Document Change History

Date Revision Comment Writer

11.11.2012 1.0 Created

Başak Elif AKGÜN

Selin AKİFOĞLU

Tolga ATALAY

Barış ÇAKAR

16.01.2013 1.1

“1.4 Background Research” section

is added.

“2.2 Product Features” section is

added.

“2.5 Design and Implementation

Constraints” section is added.

“2.7 Software Interfaces” section

is added.

“2.8 Data Description” section is

added.

“3.3.1 Overall Use Cases” section

is added.

“3.3.2.1 User Use Cases” section is

updated.

“3.3.2.2 Conference Chair Use

Cases” section is updated.

“3.3.2.3 Technical Program

Committee Chair Use Cases”

section is updated.

“3.3.2.4 Program Committee

Member Use Cases” section is

updated.

“3.3.2.5 Author Use Cases” section

Başak Elif AKGÜN

Selin AKİFOĞLU

Tolga ATALAY

Barış ÇAKAR

56

is updated.

“3.3.2.8 Admin Use Cases” section

is updated.

“3.3.3 May Have Use Cases”

section is updated.

Table 1: Change History Table