software design descriptions - … · software design descriptions ... this document provides a...

48
Software Design Descriptions Umbrella Enterprises Umut AKIN-1745652 Güneş SUCU-1679190 Eren METE-1679109 Merve AK-1678622 03.12.2012

Upload: lemien

Post on 08-Apr-2018

222 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Software Design Descriptions - … · Software Design Descriptions ... This document provides a complete description of all the system design and views of the ... SDD Software Design

Software Design Descriptions

Umbrella Enterprises

Umut AKIN-1745652

Güneş SUCU-1679190

Eren METE-1679109

Merve AK-1678622

03.12.2012

Page 2: Software Design Descriptions - … · Software Design Descriptions ... This document provides a complete description of all the system design and views of the ... SDD Software Design

Table of Contents Preface ...................................................................................................................................... 4

1. Introduction ............................................................................................................................ 6

1.1 Problem Definition ............................................................................................................ 6

1.2 Purpose ............................................................................................................................ 6

1.3 Scope ............................................................................................................................... 7

1.4 Overview .......................................................................................................................... 7

1.5 Definitions, Acronyms and Abbreviations .......................................................................... 7

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

2.0 System Overview ................................................................................................................. 8

3 System Architecture ................................................................................................................ 9

3.1. Architectural Design ........................................................................................................ 9

3.2 Decomposition Description ..............................................................................................10

3.2.1 Database Module ......................................................................................................12

3.2.2 User Interface Module ...............................................................................................12

3.2.3 Models Component ...................................................................................................16

3.2.4 Managers Component ...............................................................................................20

3.2.5 Styling .......................................................................................................................24

3.2.6 Internationalization ....................................................................................................25

4. DATA DESIGN ......................................................................................................................26

4.1 ER Diagram .....................................................................................................................26

4.2 Description of Data Entities..............................................................................................28

4.2.1 User Data Entity ........................................................................................................28

4.2.2 Conference Data Entity .............................................................................................28

4.2.3 Paper Data Entity ......................................................................................................30

4.2.4 User_Conference Data Entity ....................................................................................31

4.2.5 Referee_Paper Data Entity .......................................................................................32

4.2.6 TechPC_Paper Data Entity .......................................................................................33

4.2.7 Schedule Data Entity .................................................................................................34

4.2.8 Agency Data Entity ....................................................................................................35

5 Component Design ................................................................................................................36

5.1 Activity Diagrams .............................................................................................................36

Page 3: Software Design Descriptions - … · Software Design Descriptions ... This document provides a complete description of all the system design and views of the ... SDD Software Design

5.1.1 Paper Submission .....................................................................................................36

5.1.2 Acceptance and Rejection .........................................................................................37

5.1.3 Referee Assignment ..................................................................................................38

5.1.4 Evaluation by Referee ...............................................................................................39

5.2 Sequence Diagram ..........................................................................................................40

6 User Interface Design ............................................................................................................41

6.1 Overview of the User Interfaces .......................................................................................41

6.2 Screen Images ................................................................................................................42

6.2.1 Basic Opening Screen ..............................................................................................42

6.2.2 Basic Profile Screen ..................................................................................................44

6.2.3 Basic Conference Screen ..........................................................................................45

Page 4: Software Design Descriptions - … · Software Design Descriptions ... This document provides a complete description of all the system design and views of the ... SDD Software Design

Figure 1: User Hierarchy of CMS ............................................................................................... 9

Figure 2: Class Diagram ...........................................................................................................11

Figure 3:Class Diagram of Abstract User Interface Component ................................................13

Figure 4: Class Diagram of Opening Screen Component ..........................................................14

Figure 5: Class Diagram of Profile Screen Component .............................................................15

Figure 6: Class Diagram of Conference Screen Component .....................................................16

Figure 7: Class Diagram of Users Component ..........................................................................18

Figure 8: Class Diagram of Conference Component .................................................................19

Figure 9: Class Diagram of Paper Component ..........................................................................19

Figure 10: Class Diagram of Managers Component ..................................................................20

Figure 11: Class Diagram of Conference Manager ...................................................................21

Figure 12: Class Diagram of Opening Screen Manager ............................................................22

Figure 13:Class Diagram of Profile Screen Manager ................................................................23

Figure 14: Class Diagram of Conference Screen Manager .......................................................24

Figure 15: Login Page using CSS .............................................................................................25

Figure 16: Login Page with Internationalization .........................................................................26

Figure 17: ER Diagram .............................................................................................................27

Figure 18: Activity Diagram of Paper Submission ......................................................................36

Figure 19: Activity Diagram of Accentance and Rejection .........................................................37

Figure 20: Activity Diagram of Referee Assignment ..................................................................38

Figure 21: Activity Diagram of Evaluation by Referee ................................................................39

Figure 22: Sequence Diagram ..................................................................................................40

Figure 23: Sign Up ....................................................................................................................42

Figure 24:Login .........................................................................................................................43

Figure 25:Select Language Screen ...........................................................................................43

Figure 26:My Documents Screen ..............................................................................................44

Figure 27: My Conferences Screen ...........................................................................................44

Figure 28: My Profile Screen .....................................................................................................45

Figure 29: PC Member Screen ..................................................................................................45

Figure 30: Conference Chair Screen .........................................................................................46

Figure 31: Technical PC Chair Screen ......................................................................................46

Figure 32: Acceptance/Rejection Screen ..................................................................................47

Figure 33: Author Screen ..........................................................................................................47

Page 5: Software Design Descriptions - … · Software Design Descriptions ... This document provides a complete description of all the system design and views of the ... SDD Software Design

Preface

In this document, necessary information about the design of the Conference Management

System is presented in detail. The document complies with the IEEE standards (IEEE Std 1016

– 2009).

This document provides a complete description of all the system design and views of the

Conference Management System.

It is a continual document that is expected to evolve throughout the design process. During

conceptual design it provides a broad perspective of the design with detail to be added during

subsequent design phases.

In this fashion, this document includes the document purpose, scope and references used

throughout the document.

The following sections include the design viewpoints of the system.

Page 6: Software Design Descriptions - … · Software Design Descriptions ... This document provides a complete description of all the system design and views of the ... SDD Software Design

1. Introduction

This report intends to present complete design and progress of the Conference Management

and Hosting System project, conducted by Umbrella Enterprises. This project is supposed to be

a web based software which manages all administrative and organizational task of conference.

This report explains the complete descriptions of the proposed web based software design. In

this design document, general design architecture of the project will be enlightened and current

project status will be indicated.

1.1 Problem Definition

A conference management system is a web based software that supports the organization and

management of conferences. This system has some functionalities and workflow. Typical

functions and workflows are as follows:

● Registration

● Single login authentication

● Create and organize conference

● Paper submission

● Assigning referees to paper

● Collecting referee evaluations

● Final submission

● Conference rooms presentation schedule

● Publishing proceedings

● Multilanguage support

● Transportation and Accommodation

1.2 Purpose

The purpose of this document is to explain complete design details of Conference Management

and Hosting System project. As IEEE standards document indicates, the Design Report show

how the proposed software system will be structured in order to satisfy the requirements

identified in the Software Requirements Specifications document. In other words, the purpose of

Page 7: Software Design Descriptions - … · Software Design Descriptions ... This document provides a complete description of all the system design and views of the ... SDD Software Design

this document is to translate software requirements defined in SRS document into a

representation of software components, interfaces and data to be used later in implementation

phase of the project. However, since every software design is open to changes and

modifications, it is highly possible to make changes during implementation and update SRS and

SDD documents accordingly.

1.3 Scope

This complete SDD will contain the general definition and features of the project, design

constraints, the overall system architecture and data architecture, a brief explanation about our

current progress and schedule of the project. With the help of UML diagrams, design of the

system and subsystems/modules will be explained visually in order to help the programmer to

understand all information stated in this document correctly and easily.

1.4 Overview

This document encompasses a design model with architectural, interface, component level

representations. Design model will be contained in this document, which will be used as a

medium for communicating software design information, assessed for quality, improved before

code is generated. Many graphical representations and verbal explanations were added to this

document to achieve the goal of CMS.

This document is divided into subsections to make it more understandable. Section 2 contains

general description about the system components. In section 3, system architecture is explained

in detail. This part contains important diagrams such as activity, sequence and class diagrams.

Section 4 contains general data structures that CMS used. Section 5 contains component

design. Section 6 contains human interface design. In section 7, there is traceability matrix.

1.5 Definitions, Acronyms and Abbreviations

CMS Conference Management System

Page 8: Software Design Descriptions - … · Software Design Descriptions ... This document provides a complete description of all the system design and views of the ... SDD Software Design

UML Unified Modeling Language

SDD Software Design Description

IEEE Institute of Electrical and Electronics Engineers

SRS Software Requirements Specification

DBMS Database Management System

MVC Model View Controller

PC Chair Program Committee Chair

JDBC Java Database Convention

CSS Cascading Style Sheets

ER Diagram Entity-Relationship Diagram

1.6 References

1 1016-2009 - IEEE Standard for Information Technology -- Systems Design -- Software

Design Descriptions, IEEE Computer Society , 2009

2 1016-1998 - IEEE Standard for Information Technology -- Systems Design -- Software

Design Descriptions, IEEE Computer Society , 1998

2.0 System Overview

Conference management system has two main functionalities which are management and

organization of conferences. The system has also some features. A conference is created by

conference chair. The conference chair appoints technical program committee chair(s).

Technical PC chair has many works to manage conference very well. These duties are

assignment of papers to referees, acceptance and rejection of papers, and creation of

Page 9: Software Design Descriptions - … · Software Design Descriptions ... This document provides a complete description of all the system design and views of the ... SDD Software Design

conference schedule. After the conference is created, it is announced. Authors register and sign

in the system. After these steps, author can submit its paper to the system. As a result, there is

a hierarchical structure in this system. This structure is shown in Figure1:

As Umbrella Enterprises, we generate web based software to manage conferences easily. In

order to develop this system, we used Vaadin technology which is a Java framework. In addition

to management of conferences, we also aim to supply users with user-friendly interfaces. While

doing so, Cascade Style Sheets (CSS) is used.

3 System Architecture

In this chapter, a general description about the Conference Management System will be given.

Firstly, information about the relationships between the modules of the whole system will be

provided. Then, each module will be analyzed individually. Finally, the design rationale and

traceability of system requirements will be provided.

3.1. Architectural Design

Conference Management System will consist of 4 major modules and 2 extra parts that

manages CSS styling and multilanguage support. First one is the database part. JDBC will be

Figure 1: User Hierarchy of CMS

Page 10: Software Design Descriptions - … · Software Design Descriptions ... This document provides a complete description of all the system design and views of the ... SDD Software Design

used to make database interactions and h2 will be used as DBMS. All the changes will be

reflected to the database instantly. Detailed explanation of database will be given in the section

4. Second part is the user interface part. User interface will be interleaved with the components

that are models. Conference Management System is mostly based on user interaction so it will

be enriched by CSS styling and default built-in Vaadin Themes, mostly Runo. Also,

multilanguage support will be given in the user interface part. Third part is the models part.

Models will be the reflections of the database in order to manage with the data. Lastly, the fourth

part will be the manager modules. Manager modules will manage interfaces and models,

making the connection between them. They will also interact with database and deal with the

necessary changes. First extra part uses CSS. It is a style.css file that contains css styling for

the theme of the ui components. Second extra part is the resource bundle that adds multi-

language support for the system and holds the translations of the labels for English, Turkish and

German.

3.2 Decomposition Description

In this section, brief description of each component is given. For each component, firstly, a class

diagram describing the component is provided. Then, for each component, processing narrative

summarizing the responsibilities of the component, interface description describing the

interfaces that the component has, processing details that describes the details related to the

computations done by the component, and dynamic behavior summarizing the interactions

between components and defining use case realized by the component is going to be given.

Complete Class diagram is shown in Figure2:

Page 11: Software Design Descriptions - … · Software Design Descriptions ... This document provides a complete description of all the system design and views of the ... SDD Software Design

Figure 2 : Class diagram Figure 2: Class Diagram

Page 12: Software Design Descriptions - … · Software Design Descriptions ... This document provides a complete description of all the system design and views of the ... SDD Software Design

3.2.1 Database Module

Database Module is the component for data storage. It will store the data that entered and

provide data to Manager modules to use. Also it will be used to create and manage Model

Modules. It will be managed by the Manager Modules. Queries and operations on the database

will be created and executed by the Manager Modules. JDBC will be used to reach the

database and insert statements. Information regarding the database module will be given in the

section 4 which contains the ER diagram and tables of the database. No class will be specified

for database, its managed directly from Manager Modules.

3.2.2 User Interface Module

User interface is core functionality for a user interaction system like Conference Management

System. This module will be the component that user will interact. Also it will be interleaved with

models that are required to process data. Managers Modules will be the one that manages user

interface parts. It can be grouped as 4 major parts. Abstract user interface components,

Opening screen components, Profile screen components and Conference screen components.

They will be examined in detail in the upcoming parts.

3.2.2.1 Abstract User Interface Components

All the user interfaces will be extended from BasicScreen abstract class. BasicScreen class will

contain the main layouts and styling of our system. Then 3 abstract classes will be extended

from it: BasicOpeningScreen, BasicProfileScreen and BasicConferenceScreen. They will be the

core for all the UI components and will be extended to use. BasicOpeningScreen abstract class

will be the basis for the language selection, opening, signup and login pages. It will have the

required menu extensions that differ from abstract BasicScreen class for the opening pages.

BasicProfileScreen abstract class will be the basis for the profile options page, documents

options page, conference selection page and main user page. It will have the required menu

extensions that differ from the abstract BasicScreen class for profile pages.

BasicConferenceScreen abstract class will be the basis for the differing user rights pages.

Those pages are normal user-author screen, referee screen, technical PC chair screen,

conference chair screen, agency screen and system admin screen. It will make the required

Page 13: Software Design Descriptions - … · Software Design Descriptions ... This document provides a complete description of all the system design and views of the ... SDD Software Design

extensions from the abstract BasicScreen class and change the menus and interaction sites

from it. Class diagram component of abstract user interface classes is shown in Figure3:

Figure 3:Class Diagram of Abstract User Interface Component

3.2.2.2 Opening Screen Components

Basic opening screen will be the skeleton for opening screen. There can be added

subcomponents if needed. There are essential subcomponents such as sign-up, log-in and

language selection components. These subcomponents provide to open related screens.

Language Screen will have buttons that have the names of available language options. When

these buttons are clicked, they will transfer the necessary information to database to arrange

the language change. Sign up screen will get the information from user and record them to

database. Then it returns result of the operation as boolean according to operation’s success.

Login Screen will have username and password fields. It will get these fields from user and

return the result if user could log in the system successfully. If user could log in the system,

Basic Profile Screen(explained in 5.2.2.3) is created. Here is the class diagram for Opening

Screen Class(Figure 4)

Page 14: Software Design Descriptions - … · Software Design Descriptions ... This document provides a complete description of all the system design and views of the ... SDD Software Design

Figure 4: Class Diagram of Opening Screen Component

3.2.2.3 Profile Screen Components

Profile Screen is basically contains the abilities of logged in users except conference related

actions. The essential subcomponents are documents settings, profile management, conference

settings subcomponents. MyDocuments sub-component holds the user and paper entities so it

can retrieve the papers of a user from paper table(4.2.3 Paper Data Entity). Results will be

displayed in My Documents Screen. User can see details about paper by clicking on it in

documents screen. Profile subcomponent will control the user account management screen. It

has User class in it so it can get all the information about the user from user table(4.2.1 User

Data Entity). There will be an edit button so user can update the information in the user table.

Conference subcomponent handles the conferences that a user is registered. It has User and a

list of Conference object so it can reach User_Conference table (4.2.4 User_Conference Data

Entity) via user id and conference id pair. Conference names are fetched with these information.

When conferences are clicked, the role that user wish to have for that conference is asked to

user then user can access the conference with desired role which is handled by Conference

Page 15: Software Design Descriptions - … · Software Design Descriptions ... This document provides a complete description of all the system design and views of the ... SDD Software Design

Screen Component (5.2.3 Conference Screen Component). Class diagram for Basic Profile

Screen has shown in Figure 5.

Figure 5: Class Diagram of Profile Screen Component

3.2.2.4 Conference Screen Components

Conference Screen basically contains the abilities differed by the rights of a user according to a

conference. The essential subcomponents are conference chair screen, conference technical

PC chair screen, conference referee screen, conference user screen and conference agency

screen. ConfUserScreen shows the conference information to the simple user and lets a user

submit paper for the conference. A paper entry will be added to the database.

ConfRefereeScreen will show conference information to the referees, lets a referee submit a

paper and evaluate the papers. ConfTechnicalPCChairScreen will show conference information

to the the technical PC chair, lets a referee submit a paper, assign referees to a conference,

assign papers to the conferences, evaluate the approved papers and arrange schedule for the

conference. ConfChairScreen will let a conference chair see all the previous options and as an

extra, (s)he can assign technical PC chairs to the system. ConfAgencyScreen will show the

conference information to the agency and will be able to arrange hotel-flight ticket by

Page 16: Software Design Descriptions - … · Software Design Descriptions ... This document provides a complete description of all the system design and views of the ... SDD Software Design

communicating with the user. Class diagram of conference screen components is shown in

Figure 6:

Figure 6: Class Diagram of Conference Screen Component

3.2.3 Models Component

This component will store the required data from the database to the models by the order of the

managers modules. Their main feature is the setters and getters. It would be a burden to always

checkout data from the database so these models will be created to decrease the burden and

make the necessary changes on them with the object oriented way. There are mainly 3 models.

Users, Conferences and Papers. They are explained in detail in the upcoming sections.

Page 17: Software Design Descriptions - … · Software Design Descriptions ... This document provides a complete description of all the system design and views of the ... SDD Software Design

3.2.3.1 Users Component

Users component is the component that contains user information and user class is the base

class for extending. Users by default have the options to submit papers and request conference

thus having the right as author. After him, a referee has the same options as a default user, plus

he can grade papers. After him, a technical PC Chair has the options for the previous cases and

additionally, can assign referees to the conference, assign papers to the referees, submit the

evaluated papers that will participate in the conference and arrange the schedule for the

conference. A conference chair has the options for all the previous cases and additionally, has

the option to assign a technical PC Chair to the conference. Attendees will be simple users that

would have access to the conference after their papers are submitted and a user approval has

been made. Admins are the users that are capable of accepting and rejecting conference

creations and will be able to change the flow of the process with the rights to change user

information, PC assignments and paper assignment with the request of the conference chair.

Otherwise, he will not involve in the process. Other than those, all of the user components will

have the relative information from the database. The abilities that all user components can do

will be managed in the managers components and will be explained in the Manager

Components section. Specific class diagram is shown in Figure7:

Page 18: Software Design Descriptions - … · Software Design Descriptions ... This document provides a complete description of all the system design and views of the ... SDD Software Design

Figure 7: Class Diagram of Users Component

3.2.3.2 Conference Component

Conference component is the component that has the information of a conference from the

database. It will be managed by the conference manager classes and updated necessarily. It

has the user lists that contain referees, technical PC chairs, conference chair and attendees for

that conference. It will be managed by Conference Manager class and the changes will be done

by the order from it. The class diagram that shows it is in Figure 8:

Page 19: Software Design Descriptions - … · Software Design Descriptions ... This document provides a complete description of all the system design and views of the ... SDD Software Design

Figure 8: Class Diagram of Conference Component

3.2.3.3 Paper Component

Paper component is the component that has the required information that is contained in the

database. It will be managed by the Conference Manager class. Conference Manager and the

required screen components are making the changes on the database and in this class. This

class is shown in Figure 9:

Figure 9: Class Diagram of Paper Component

Page 20: Software Design Descriptions - … · Software Design Descriptions ... This document provides a complete description of all the system design and views of the ... SDD Software Design

3.2.4 Managers Component

Manages Components are the core components that manages all the user interface screens,

interactions with models and databases, and does the necessary operations. They will be

associated with the models, user interfaces, and the database. Sub-managers will manage all

the operations users can make and show the necessary pages. This class diagram is shown in

Figure 10:

Figure 10: Class Diagram of Managers Component

3.2.4.1 Conference Manager

Conference manager is the main manager that manages all of the major components. It will use

OpeningScreenManager to open the welcome page, login page, sign-up page and language

selection page, ProfileScreenManager to load main user screen, profile screen, documents

Page 21: Software Design Descriptions - … · Software Design Descriptions ... This document provides a complete description of all the system design and views of the ... SDD Software Design

screen and conferences screen, and ConferenceScreenManager to load all the conference

rights screens. Also, it will have users list, papers list and conferences list. The changes it made

will be stored in the model sections and in the database. It will have the lists of all papers, all

conferences and all users. It can be modified by the system admins. This class diagram is

shown in Figure 11:

Figure 11: Class Diagram of Conference Manager

3.2.4.2 Opening Screen Manager

Opening screen manager is a sub-manager who is managed by the Conference Manager and

can generate language screen, welcome screen, login screen and the sign-up screen. It’s a

connection between interfaces and the models like in the MVC model. By this manager users

will be able to choose desired language, gain general knowledge about the conference

manager, sign a new user to the database and the main list or log a user in. Also user can sign

out anytime he wants. This class diagram is shown in Figure 12:

Page 22: Software Design Descriptions - … · Software Design Descriptions ... This document provides a complete description of all the system design and views of the ... SDD Software Design

Figure 12: Class Diagram of Opening Screen Manager

3.2.4.3 Profile Screen Manager

Profile screen manager is a sub-manager who is managed by Conference Manager and can

generate main user screen, my documents screen, conferences screen and user profile screen.

It’s a connection between those interfaces and models like in the MVC model. By this manager,

users will be able to organize a conference, change-modify user profile details, browse the

papers they have submitted and their status, and object if a paper is rejected. Also, user can

choose a conference and set a flag for Conference Screen Manager to go to the conference

menu with the user rights. This class diagram is shown in Figure 13:

Page 23: Software Design Descriptions - … · Software Design Descriptions ... This document provides a complete description of all the system design and views of the ... SDD Software Design

Figure 13:Class Diagram of Profile Screen Manager

3.2.4.4 Conference Screen Manager

Conference screen manager is a sub-manager who is managed by Conference Manager and

can generate conference user-author screen, conference referee screen, conference technical

PC chair screen, conference chair screen and agency screen. By this manager, users-authors

can submit papers and look for conference status. Referees can also submit papers and look for

conference status. Additionally, he can evaluate assigned papers. Technical PC chair will be

able to assign referees, assign papers to referees, evaluate accepted papers and arrange

schedule of the conference. A conference chair can access all of that and also assign a

technical PC chair role. An agency can look for the accommodation list and arrange hotels and

flight tickets. This class diagram is shown in Figure 14:

Page 24: Software Design Descriptions - … · Software Design Descriptions ... This document provides a complete description of all the system design and views of the ... SDD Software Design

Figure 14: Class Diagram of Conference Screen Manager

3.2.5 Styling

Styling will be given by CSS files. CSS can be applied to Vaadin, the framework system used

for user interface. Vaadin has some built-in themes like Reindeer and Runo. In fact, one of them

(probably Reindeer) is used by default. A custom built-in theme will be used for our project. In

Runo theme, there are some sample strings modifying the components. CSS is a style sheet

language used for describing the presentation semantics(the appearance and formatting) of a

document written in a markup language. setTheme function will be used to set the theme which

can be either a built-in theme like “runo” or a custom theme like “mytheme”. And setStyleName

function is used to reach the names of the CSS components for setting the style. To create a

custom theme, first a folder will be created under WebContent/VAADIN/themes/mytheme. Then

Page 25: Software Design Descriptions - … · Software Design Descriptions ... This document provides a complete description of all the system design and views of the ... SDD Software Design

the file "styles.css" will be created in the directory created above. Then in styles.css file, a

default theme would be imported; @import "../runo/styles.css”. Then project css statements will

be declared and with this import, system does not have to specify everything, it can import from

runo if a component style is not specified. And lastly, using setTheme("mytheme") in application

will make use of the style made. Login Screen figure with style is in Figure 15:

Figure 15: Login Page using CSS

3.2.6 Internationalization

Internationalization (multi-language support) is the process of planning and implementing

products and services so that they can easily be adapted to specific local languages and

cultures. The internationalization process is sometimes called translation or enabling

localization. Multi-language support in Java can be done by resource bundles. Resource bundle

use will be given as creating a package “languages” and creating files as

“MessagesBundle_en_US.properties”, “MessagesBundle_tr_TR.properties”,

“MessagesBundle_de_DE.properties”. In those files, fields are given as “<variable> =

<language_interpretion>” on each row. Then in the managers, the chosen language will be set

and variables would be picked from the bundles with java.util.ResourceBundle.getString(String

key) function and labels would be set. Login page sample is shown in Figure 16:

Page 26: Software Design Descriptions - … · Software Design Descriptions ... This document provides a complete description of all the system design and views of the ... SDD Software Design

Figure 16: Login Page with Internationalization

4. DATA DESIGN

4.1 ER Diagram

Conference Management System uses a relational database to store the information of users,

conferences, papers, schedule and agencies.

The ER diagram shows the relationships among the data entities stored in the database. The

diagram is shown in Figure 17:

Page 27: Software Design Descriptions - … · Software Design Descriptions ... This document provides a complete description of all the system design and views of the ... SDD Software Design

Figure 17: ER Diagram

Page 28: Software Design Descriptions - … · Software Design Descriptions ... This document provides a complete description of all the system design and views of the ... SDD Software Design

4.2 Description of Data Entities

In this part, descriptions of the data entities in the database of the conference management

system are given. There are 8 data entities in the system: User, Conference, Paper,

User_Conference, Referee_Paper, TechPC_Paper, Schedule, and Agency.

4.2.1 User Data Entity

The User table stores the necessary information about users.

Field Type Foreign Key References Description

id (PK) Integer No - Id of the user

name Varchar(50) No - Name of the user

surname Varchar(50) No - Surname of the

user

username Varchar(50) No - Username of the

user

password Varchar(50) No - Password of the

user

e_mail Varchar(50) No - E_mail address of

the user

isAdmin Boolean No - Whether the user

is admin or not

interested area Array No - Interested areas of the user

4.2.2 Conference Data Entity

The Conference table stores the necessary information about conferences.

Page 29: Software Design Descriptions - … · Software Design Descriptions ... This document provides a complete description of all the system design and views of the ... SDD Software Design

Field Type Foreign Key References Description

id (PK) Integer No - Id of the conference

name Varchar(50) No - Name of the conference

paper_sub_start Date No - Date when paper

submission starts

paper_sub_end Date No - Date when paper

submission ends

attendance_start Date No - After the paper is

accepted, the author

notifies the system

whether he will attend

the conference or not

starting from this date

attendance_end Date No - After the paper is

accepted, the author

notifies the system

whether he will attend

the conference or not by

the end of this date

conference_

start

Date No - Date when conference

starts

conference_end Date No - Date when conference

ends

read_start Date No - From this date on

referees start to read

the papers

Page 30: Software Design Descriptions - … · Software Design Descriptions ... This document provides a complete description of all the system design and views of the ... SDD Software Design

read_end Date No - By the end of this date

referees end reading

the papers

place Varchar(50) No - Place of the conference

topic String No - Topic of the conference

4.2.3 Paper Data Entity

The Paper table stores the necessary information about papers. It is related to the ‘Conference’

and the ‘User’ tables.

Field Type Foreign Key Reference

s

Description

id (PK) Integer No - Id of the paper

title Varchar(50) No - Title of the paper

confid Integer Yes Conference Id of conference where

the paper is submitted

userid Integer Yes User Id of user (author) who

writes the paper

isApproved Boolean No - Whether the paper is

accepted or not by the

referee

isAbsApproved Boolean No - Whether the paper is

accepted or not by the

Page 31: Software Design Descriptions - … · Software Design Descriptions ... This document provides a complete description of all the system design and views of the ... SDD Software Design

technical PC chair

grade Integer No - Grade given to the

paper by the referee

4.2.4 User_Conference Data Entity

This table is used to explain the relationship between the user and the conference. It is

related to the ‘User’ and the ‘Conference’ tables. In this table ‘userid’ and ‘confid’

constitutes a primary key pair.

Field Type Foreign Key References Description

userid (PK) Integer Yes User Id of the user who

attends the

conference

confid (PK) Integer Yes Conference Id of the conference

the user attends

right String No - User type

(author,technical PC

chair,etc.)

isAttending Boolean No - Whether the user will

attend the

conference or not

isUsingAgency Boolean No - Whether the user will

Page 32: Software Design Descriptions - … · Software Design Descriptions ... This document provides a complete description of all the system design and views of the ... SDD Software Design

use agency or not

userArriveDate Date No - Date when the user

arrives in the city

where the

conference takes

place

userLeaveDate Date No - Date when the

user leaves the city

where the

conference takes

place

4.2.5 Referee_Paper Data Entity

This table is used to explain the relationship between the referees and the papers. It is

related to the ‘User’ and ‘Paper’ tables. In this table ‘userid’ and ‘paperid’ constitutes a

primary key pair.

Field Type Foreign Key Reference

s

Description

userid (PK) Integer Yes User Id of the referee

paperid (PK) Integer Yes Paper Id of the paper which

the referee reviews

confid Integer Yes Conference Id of the conference

Page 33: Software Design Descriptions - … · Software Design Descriptions ... This document provides a complete description of all the system design and views of the ... SDD Software Design

where the paper is

submitted

isApproved Boolean No - Whether the referee

accepts the paper or not

grade Integer No - Grade given to the

paper by the referee

4.2.6 TechPC_Paper Data Entity

This table is used to explain the relationship between the technical PC chair and the

papers. It is related to the ‘User’ and ‘Paper’ tables. In this table ‘userid’ and ‘paperid’

constitutes a primary key pair.

Field Type Foreign Key Reference

s

Description

userid (PK) Integer Yes User Id of the technical PC

chair

paperid (PK) Integer Yes Paper Id of the paper which

the technical PC chair

accepts or not

isApproved Boolean No - Whether the referee

accepts the paper or

not

isAbsApproved Boolean No - Whether the technical

PC chair accepts the

Page 34: Software Design Descriptions - … · Software Design Descriptions ... This document provides a complete description of all the system design and views of the ... SDD Software Design

paper or not

confid Integer Yes Conference Id of the conference

where the paper is

submitted

grade Integer No - Grade given to the

paper by the referee

4.2.7 Schedule Data Entity

This table is used to explain the schedules of the conferences. It is related to the ‘User’,

the ‘Conference’ and the ‘Paper’ tables.

Field Type Foreign Key Reference

s

Description

userid Integer Yes User Id of the user who

attends the conference

confid Integer Yes Conference Id of the conference

the user attends

paperid Integer Yes Paper Id of the paper which

the user submits

startTime Time No - Starting hour of the

presentation of the

paper

endTime Time No - Ending hour of the

Page 35: Software Design Descriptions - … · Software Design Descriptions ... This document provides a complete description of all the system design and views of the ... SDD Software Design

presentation of the

paper

date Date No - Date when the

conference takes place

subject Varchar(50) No - Subject of the

conference

4.2.8 Agency Data Entity

This table is used to explain the accommodation services provided by the agencies of

the conferences. It is related to the ‘User’, the ‘Conference’ tables.

Field Type Foreign Key References Description

confid Integer Yes Conference Id of the

conference the

user attends

userid Integer Yes User Id of the user

who attends the

conference

conf_place Varchar(50) No - Place of the

conference

user_Arrive_

Date

Date No - Date when the

user arrives in

the city where

the conference

Page 36: Software Design Descriptions - … · Software Design Descriptions ... This document provides a complete description of all the system design and views of the ... SDD Software Design

takes place

user_Leave_

Date

Date No - Date when the

user leaves the

city where the

conference

takes place

5 Component Design

In this section, the component design and process will be analyzed. The components are

explicitly explained in the section 3. In this section, sequence and activity diagrams of the

conference management system are provided to show the components and their interactions.

5.1 Activity Diagrams

Activity diagrams (Figure 18) are as follows.

5.1.1 Paper Submission

Figure 18: Activity Diagram of Paper Submission

Page 37: Software Design Descriptions - … · Software Design Descriptions ... This document provides a complete description of all the system design and views of the ... SDD Software Design

5.1.2 Acceptance and Rejection

Figure 19: Activity Diagram of Accentance and Rejection

Page 38: Software Design Descriptions - … · Software Design Descriptions ... This document provides a complete description of all the system design and views of the ... SDD Software Design

5.1.3 Referee Assignment

Figure 20: Activity Diagram of Referee Assignment

Page 39: Software Design Descriptions - … · Software Design Descriptions ... This document provides a complete description of all the system design and views of the ... SDD Software Design

5.1.4 Evaluation by Referee

Figure 21: Activity Diagram of Evaluation by Referee

Page 40: Software Design Descriptions - … · Software Design Descriptions ... This document provides a complete description of all the system design and views of the ... SDD Software Design

5.2 Sequence Diagram

Figure 22: Sequence Diagram

Page 41: Software Design Descriptions - … · Software Design Descriptions ... This document provides a complete description of all the system design and views of the ... SDD Software Design

6 User Interface Design

6.1 Overview of the User Interfaces

In our software User Interface is highly important because users will be interacting the software

frequently. System should be used by all users easily without confusion. For that purpose, there

will be simple and understandable interfaces for all types of users. Because the content of the

interfaces will differ according to user type, these user types related screens will be extended

from a basic screen component. Overviews of the interfaces are listed below. Detailed tabs,

fields and properties are shown in 6.2.1 Screen Images.

1. Basic Opening Screen is a basis for the screens below

Sign Up Screen: It contains a form for registration which asks just a few information for

simplicity.

Login Screen: A login screen for users to enter their username and password

Language Screen: A screen to change the language for all the system. Three options as

Turkish, English and German will be displayed as buttons.

2. Basic Profile Screen is a basis for the screens below

My Documents Screen: In this screen existing documents of the user will be displayed as

hyperlinks.

My Conferences Screen: In this screen conferences that the user registered will be displayed

as hyperlinks.

My Profile Screen: In this screen user’s personal information will be displayed. There will be

edit profile button to be able to change the information.

3. Basic Conference Screen is a basis for different user type screens.

PC Member Screen: This screen contains the available content for referees. There will be

paper review section for referees.

Page 42: Software Design Descriptions - … · Software Design Descriptions ... This document provides a complete description of all the system design and views of the ... SDD Software Design

Conference Chair Screen: Conference chair is the creator of the conference. So Conference

Chair will assign all necessary chairs for conference (Technical PC Chair, Publication Chair,

Registration Chair etc.)

Technical PC Chair Screen: Technical PC Chair has more active interface compared to other

user groups. There will be Assign PC Members to the conference, paper acceptance/refusal

screens will be available for Technical PC Chair.

Author Screen: Author can submit papers for selected conference, there will be new

submission button for authors.

Agency Screen: Tourism Agency will see the users who are accepted to the conference and

can offer them accommodation and transportation services.

6.2 Screen Images

These images are not actual implemented screen images except 6.2.2 Login Screen.

6.2.1 Basic Opening Screen

6.2.1.1 Sign Up Screen

Figure 23: Sign Up

Page 43: Software Design Descriptions - … · Software Design Descriptions ... This document provides a complete description of all the system design and views of the ... SDD Software Design

6.2.1.2 Login Screen

Figure 24:Login

6.2.1.3 Language Screen

Figure 25:Select Language Screen

Page 44: Software Design Descriptions - … · Software Design Descriptions ... This document provides a complete description of all the system design and views of the ... SDD Software Design

6.2.2 Basic Profile Screen

6.2.2.1 My Documents Screen

Figure 26:My Documents Screen

6.2.2.2 My Conferences Screen

Figure 27: My Conferences Screen

Page 45: Software Design Descriptions - … · Software Design Descriptions ... This document provides a complete description of all the system design and views of the ... SDD Software Design

6.2.2.3 My Profile Screen

Figure 28: My Profile Screen

6.2.3 Basic Conference Screen

6.2.3.1 PC Member Screen

Figure 29: PC Member Screen

Page 46: Software Design Descriptions - … · Software Design Descriptions ... This document provides a complete description of all the system design and views of the ... SDD Software Design

6.2.3.2 Conference Chair Screen

Figure 30: Conference Chair Screen

Assign publication chair and assign registration chair tabs will have similar structure. They only

affect different elements when recording the users to User_Conference table(4.2.4 User

Conference Data Entity)

6.2.3.3 Technical PC Chair

*Assign Program Committee Members to conference:

Figure 31: Technical PC Chair Screen

Page 47: Software Design Descriptions - … · Software Design Descriptions ... This document provides a complete description of all the system design and views of the ... SDD Software Design

*Acceptance/Refusal of Papers

Figure 32: Acceptance/Rejection Screen

6.2.3.4 Author Screen

Figure 33: Author Screen

Page 48: Software Design Descriptions - … · Software Design Descriptions ... This document provides a complete description of all the system design and views of the ... SDD Software Design

7 Requirements Matrix

Components: Requirements from SRS(use cases):

Database Component

User Interface Component

Models Component

Managers Components

UC1 X X X X

UC2 X X

UC3 X X X X

UC4 X X X X

UC5 X X X X

UC6 X X X X

UC7 X X X X

UC8 X X X X

UC9 X

UC10 X

UC11 X X X

UC12 X X

UC13 X X

UC14 X

UC15 X X

UC16 X X X X