You are on page 1of 24

Shift Scheduler

Software Design Specification


Draft Version 1.0

Prof. Akila Victor

Page 1 of 24

Contents
1.

Introduction......................................................................................................... 4

2.

Purpose............................................................................................................... 4

3.

Scope................................................................................................................... 4

4.

Definitions, Acronyms and Abbreviations............................................................4

5.

References........................................................................................................... 5

6.

Overall Description.............................................................................................. 5

7.

External Interface Requirements.........................................................................7

8.

Functional Requirements..................................................................................... 8

9.

Non Functional Requirements............................................................................11


9.1

Usability....................................................................................................... 11

9.2

Security........................................................................................................ 11

9.3

Performance................................................................................................. 12

9.4

Capacity....................................................................................................... 12

9.5

Recovery...................................................................................................... 12

9.6

Availability................................................................................................... 13

9.7

Reliability..................................................................................................... 13

9.8

Maintainability............................................................................................. 13

9.9

Portability..................................................................................................... 13

9.10 Privacy......................................................................................................... 13
10. Process Model

. 22

Page 2 of 24

Revision History
Name

Date

Reason For Changes

Version

Aditya Rola

07/03/1
6

First documentation of the SRS document


for Shift Scheduler

Version 1.0

Page 3 of 24

1. Introduction
Shift Scheduler is a shift management system for maintaining and managing the
schedules and related details about the employees working on different projects
and in different shifts. The calculation and maintenance of comprehensive shiftrelated allowances of the employees can be done systematically. The Project
involves a transformation of current platform dependent system to a Web enabled
system with increased efficiency and accuracy. Basically, employee scheduling is
the process of producing daily schedules for individual employees. And it takes
organizations goals into consideration at different time schedules that can be
monthly, weekly or quarterly. Moreover, it is an important component of project
workforce management.

2. Purpose
The purpose of this Software Requirements Specification (SRS) document is to
describe the overall behavior of Shift Scheduler. This SRS defines and describes
the operations, performance, and quality assurance requirements of the Shift
Scheduler that is to be developed. This document also describes the nonfunctional
requirements. It also describes the design constraints and technologies that are
to be considered when the system is to be designed, and other factors
necessary to provide a complete description of the requirements for the system.
This Software Requirements Specification (SRS) captures the complete
software requirements for the system. Requirements described in this document
will be used as guidelines to develop the Shift Scheduler.

3. Scope
Shift Scheduler software aims to provide the following advantages :

Automation of shift scheduling and payroll calculation.


effectively change the employee working hours to ensure that Project
development is not paused due to employee unavailability.

Page 4 of 24

Efficient Human Resource Management ensuring maximum output and


efficiency on projects.
A Model for Management of the Changes made in the Shifts over a period of
time.
Ensuring Transparency and easy of access.

4. Definitions, Acronyms and Abbreviations


Abbreviation
SSS
SRS

Designation
Shift
Scheduling
System
Software
Requirements
Specification

5. References
SOFTWARE ENGINEERING
By Rogers. Pressman
SQL FOR PROFESSIONALS
By Jain
C#.NET Black Book
By Evangeleous Petersons

6. Overall Description
6.1

Product Perspective

The main objective of the system is to minimise the problems that might come
in scheduling the employees offer a better solution than what is currently
existent in the market. The system has been designed to take care of schedule
management and the related details about the employees working in different
projects and in different shifts. In this system there the employer can
Page 5 of 24

automatically assign different roles and their shifts which automates the process
of payroll calculation. The System Administrator will assign the Project Manager
their roles which will then assign team lead/project lead role and they will
respectively assign the employees to the project and later assign them
respective shift. This gives 24 x 7 project support requires staff presence at any
time of the day, Maintenance of project with different criticality and Efficient
Human Resource Management.

Fig 1.1
Overview of the proposed system

6.2

Product Functions

The following are the user requirements for the system


Setting/Editing Shifts for Employees Working in Different Projects
and Shift Time.
Employee can View his/her Shifts and Allowances.

Page 6 of 24

Provision of employee backup in case an employee not turning up.


A Help file pertaining to different possible queries.
The system runs on any platform.
Employee can view his/her schedule in calendar form.
Automatic Allowances generation.

6.3

Constraints
6.4.1 Migration of all the complete employee and project database with
existing schedule.
6.4.2 No employee can be given two shifts same time.
6.4.3 Only admin can manage employee details and position but cannot
assign schedule.

6.4

Assumptions and dependencies


6.5.1 The Shift Assigned to a particular employee the employee is free at
that time and any change is intimidated before to the team lead.

7. External Interface Requirements


7.1

7.2

User Interfaces
1

The system will provide GUI for the users.

Message display when we click on button.

Standard buttons, functions, or navigation links that will appear on


every screen, such as a help button.

Hardware Interfaces
7.2.1 To use SSS, you will need a PC (regardless of its operating system, it
can be Windows, Linux) or Mac. The system requirements are
1. CPU: 2 x Intel Core 2 (2.66 Ghz, 128K cache)
2. RAM: 2GB
3. Minimum database space: 40GB
Page 7 of 24

7.2.2 If system doesnt have touch input, a keyboard will also be required by
the user to provide input.

7.3

Software Interfaces
1

7.4

The system will have an interface with Database Software SQL server
and windows web deployment IIS.

Communications Interfaces
1

The system will use click once deployment technology of the


windows .net framework where in windows form based applications
can be accessed through http over the internet. The web Browsers
include
Internet Explorer 10, 11 & Edge
Firefox (recent versions).
Chrome, Safari, Webkit (recent versions).

Page 8 of 24

8. Functional Requirements
8.1

Use Case Diagrams

Administrator Use Case:

Fig 1.2
Admin User case Diagram

Page 9 of 24

Project Manager UseCase:

Fig 1.3
Project Manager User case Diagram
Team Leader Use Case:
Page 10 of 24

Fig 1.4
Team Leader User case Diagram

Page 11 of 24

8.2

Use Case Scenario Description

Use Case ID

Use Case
Name

Log In Page

Summary

admin will have their log in IDs. A login page will be


provided. Where they can enter their user name and
password for user verification. The Program can
automatically detect the role of the employee in the
namely
Administrator
Project Manager
Team Lead
Employee
After choosing the user type they will be redirected
to second page. Which consists of following
Enter Username text field
Enter Password
Forgot Password
After the user enters the details their username and
password will be verified from database. In case the user
forgets his password. Then on clicking the forgot
password link the password will be sent to his registered
Email ID.

Preconditions

User must have his credentials in the database.

Success End

You have logged in Successfully Message is displayed to


Page 12 of 24

Condition

the user.

Failed End
Condition

If User could not provide his right details.

Primary,
Secondary
Actors

admin who will enter the details for verification.

Trigger

Description

Ste
p

Action

The End user opens the first login Page.

User will enter the user name and password for


verification.

If the user name and password get verified you


have logged in successfully message will be
displayed and user will be redirected to appropriate
page depending on his role.

In case the user forgets his username. He will click


on the forgot password link. Password will be sent
to his registered Email ID.

Table 1.1 Use Case ID 1

Page 13 of 24

Use Case ID

Use Case name Adding/removing/assigning Projects

Page 14 of 24

Summary

After Loggin in as the system administrator or Project Manager


the user can add or remove or assign projects to employees in
the main database hence keeping a track of all the employees
working on projects in the organization.
When administrator decides to go in project he has the following
option available
1. Assign Project.
The following options will be enabled.

Drop Down Menu: allows the admin to select the


desired project
Drop Down Menu: allows the admin to select the
employee to assign the project.

2. Add Project.
The following options will be enabled.

DATE CALENDAR: The FROM and TO date should be


selected from date picker and the project start and end
time can be selected.
TEXT: The Project name along with project id to be input
and allowances for various shifts
TIME: The various shift timings of the project.
3. Edit Project.
Edit: The user can edit any project detail by just choosing
the correct project id.
4.

Delete Project: The user delete any project by selecting


the correct project id.

Page 15 of 24

Preconditions
Success End
Condition

The Admin or Project Manager must be authorized and


logged in.

Successful operation on the concerned project.

Failed End
Condition

Failed Operation message on the concerned Project

Primary,
Secondary
Actors

Admin, Project Manager

Trigger

This use case is initiated when user clicks on Project Menu.

DESCRIPTION

Ste
p

Action

The User Selects the project menu to do the required


action
The user chooses an operation to be done on project

(Only one option can be selected from the four options


available.)

2a

If the user selects, Assign Project, follow step 3

2b

Else If the user selects, Add Project, follow step 4

2c
2d

Else If the user selects, Edit Project, follow step 5

The user has to select the correct project id from the list
and select the employee to assign it to.

The user should select the FROM date and To date to select
the start and end date of the project and enter the project
id name and allowances.

The user can edit the desired project by selecting the


correct project id.

Else if the user selects, Delete Project, follow step 6

Page 16 of 24

The user can delete the required project by selecting the


correct project id.

Table 1.2 Use Case ID 2

Use Case ID

Use Case name Adding/Editing/Removing Employee


Summary

The user when logged in as administrator an add/delete and


modify any employee record to maintain working number of
employees in the organization and scheduling task easy for the
team leads and Project Manager

Preconditions

The Admin must be authorized and logged in.

Success End
Condition

The Employee Record can be successfully modified, added or


deleted from the database

Failed End
Condition

The Employee Record cannot be successfully modified, added or


deleted from the database

Primary,
Secondary
Actors

Admin

Trigger

This use case is initiated when user clicks on Employee.

DESCRIPTION

Ste
p

Action
The User selects the Employee from the navigation bar.

He can select any of the following option available and


proceed.

Page 17 of 24

The user chooses an operation to be done on employee

(Only one option can be selected from the three options


available.)

2a

If the user selects, Add Employee, follow step 3

2b

Else If the user selects, Edit Employee, follow step 4

2c

Else If the user selects, Delete Employee, follow step 5


The option allows the admin to add the employee details in
the main database

3
4

The option allows the user to edit the employee details in


the main database.

The Option allows the user to Delete the employee details.

Table 1.3 Use Case ID 3

Use Case ID

Use
name

Report View

Case

Summary

The entire perspective of the project is to maintain an efficient


system of shift scheduling for employees to increase the
efficiency of employees and profit of the organization.
The view Report option gives the system admin, Project Manager
and Team Leads a one click to view to check the working of
employees for payrolls and project completion hence
implementing transparency and easy access to information.

Preconditions

The user must have a valid login address to access the


report.

At least one month of deployment for reliable data report.

Page 18 of 24

Success End
Condition

The Report will be generated for all the employees.

Failed End
Condition

The Report generation will give blank page.

Primary,
Secondary
Actors

Project Manager, Team Leader and a system administrator.

Trigger

This use case is initiated when User clicks on Report.

DESCRIPTION

Ste
p

Action

The user selects the report option.

The user clicks on the Generate report.

The entire summary of the system is displayed to the


user.

The report download is available in PDF format

Table 1.4 Use Case ID 4

Use Case ID

Use

Shift Scheduling

Case

Page 19 of 24

name
Summary

The Project Manager along with the team leader is responsible


for this task. The vary main and core function of the system the
shift scheduling part where the team manager or project
manager can assign specific project and shifts to the employee
Also gives the user the advantage to change the duty to
maintain the efficiency of the employee and to main the speed
of the project in case an employee fails to report

Preconditions

The Project Manager and Team Leader must be authorized


and logged in.

Success End
Condition

The duty will be assigned to the employee and entry will be


done in schedule view

Failed End
Condition

The Duty Will not be assigned

Primary,
Secondary
Actors

Project Manager, Team Leader

Trigger

This use case is initiated when userclicks on Schedule.

DESCRIPTION

Ste
p

Action

The user clicks on the Schedule button.

The User selects the option either to assign a shift delete


a shift or edit the shift

Page 20 of 24

The user chooses an operation to be done on project


3

(Only one option can be selected from the three options


available.)
If the user selects, Assign Shift, follow step 4
Else If the user selects, Delete shift, follow step 5
Else If the user selects, Edit Shift, follow step 6

The user has the option to select the concerned project


along with the employee to assign the project and shift to.

The user has the option to select the concerned project


along with the employee to remove the project and shift
to.

The user has the option to select the concerned project


along with the employee to edit the project and shift
already assigned.

Table 1.5 Use Case ID 5

9. Non Functional Requirements


This section describes in detail all the non-functional requirements

9.1 Usability
9.1.1 The system shall allow the users to access the system from the
Internet.
9.1.2 online help will be available for the system
9.1.3 The end users will be able to able to adapt to the system with a
minimum training of 2 hours
9.1.4 Key board short cuts will be available for all functions of the system

9.2 Security
9.2.1 Login requirements 9.2.1.1
The Administrators will be provided access to the system after
they are registered into the database.
Page 21 of 24

9.2.1.2
While logging in the system for the first time, the Administrator,
Project Manager, Team Lead and Employee will be provided an ID and
a password.
9.2.1.3
On logging in, they can set a new password

9.2.2Password requirements
9.2.2.1
9.2.2.2
9.2.2.3
taken by

Password will be case-sensitive.


Password must have at least 6 characters,
Password should be changed if the same password is already
other user.

9.2.3 Inactivity timeouts


9.2.3.1
minutes.

System should timeout when there is no activity for 10

9.3 Performance
9.3.1 Response time
9.3.1.1
The response time will be less than 5 seconds for almost all the
processes performed in the system.

9.4 Capacity
9.4.1 Storage
9.4.1.1

Hard disk space


10 GB Content
30 GB Transaction Logs

9.5 Recovery
9.5.1 Recovery time scales
9.5.1.1

The system will be recovered within 2 hours from the down

time

9.5.2 Backup Frequencies


9.5.2.1
Details of all the Administrator, project manager, team lead,
employee will be stored in the back-up tapes along with schedules and
projects.
9.5.2.2
All the back-up tapes will be provided to the Project
Administrator.
9.5.2.3
The back-up data will be updated every 10 days.

Page 22 of 24

9.6 Availability
9.6.1 Hours of operation
9.6.1.1

The system will be available on all days 24*7

9.7 Reliability
9.7.1 Mean Time between Failures
9.7.1.1

The mean time between failures for the system will be 90days

9.8 Maintainability
9.8.1 Mean Time to Recovery
9.8.1.1

The Mean Time To Recovery (MTTR) shall not exceed one day.

9.9 Portability
9.9.1 OS requirements
The system will run on windows XP / Vista / 7 / 8 / 8.1 / 10 and on MAC OS
and on LINUX.

9.9.2Browser requirements
The system will run on Internet Explorer, Internet Edge, Mozilla Firefox,
Google Chrome, Safari and UC browser.

9.10 Privacy
9.10.1 Reports cannot be accessed by end users who are not given access to
the reports
9.10.2No two users would be able to see their schedule.
9.10.3Every Person registered by would have unique id.

10.

Process Model
The process model that we are using is waterfall model. It follows the principle of
define before design. We clearly define each phase before designing it. The next
phase is not started without completely implementing the previous step. This
Page 23 of 24

model is considered suitable because the requirements are very well known and
product definition is stable.
The following are the steps involved in the model:-

Page 24 of 24