Srs Client Management System
Srs Client Management System
Srs Client Management System
Software Requirements
Specification
BLEND
1. Introduction 3
1.1. Purpose 3
1.2. Scope of Project 3
1.3. Glossary 3
1.4. Overview of Document 4
2. Overall Description 5
2.1 System Environment 5
2.2 Functional Requirements Specification 5
2.2.1 Employee Use Case 5
2.2.2 Manager Use Cases 6
Use case: Manage Quote 8
Use case: Manage Employee 11
2.3 User Characteristics 13
2.4 Non-Functional Requirements 13
3. Requirements Specification 14
3.1 Functional Requirements 14
3.1.1 Log time 14
3.1.1 User login 14
3.2.2 Add new client 15
3.2.3 Update client information 15
3.2.4 Remove client 16
3.2.5 Manage Quote 17
3.2.6 Manage Invoice 17
3.2.7 Manage Project 18
3.2.7 Manage Employee 19
3.3 Detailed Non-Functional Requirements 20
3.3.1 Security 20
1. Introduction
1.1. Purpose
The purpose of this document is to present a detailed description of the Clients Management System. It will
explain the purpose and features of the system, the interfaces of the system, what the system will do, the
constraints under which it must operate and how the system will react to external stimuli. This document is
intended for both the stakeholders and the developers of the system.
This software system will be a web tool for managing clients for a software development company. This
system will be designed to maximize the managers productivity by providing tools for generating quotes,
invoices as well as reviwing employeers productivity. Currently, the company is using muliple tools for this
More specifically, this system is designed to allow the company managers to review and compare the time
logs from the employees, create quotes for the potential clients, as well as issue invoices for the work. The
system will alow the managers to create projects the employees are working on and use the logged time by
the employees on a similar projects to make better estiamtions and planning in the future. Since the company
is working on different markets, the system will allow generating invoices and quotes in multiple currencies.
1.3. Glossary
Term Definition
Employee A person that is using the system for tracking his daily hours.
Software Requirements A document that completely describes all of the functions of a proposed
Specification system and the constraints under which it must operate. For example, this
document.
Stakeholder Any person with an interest in the project who is not a developer.
The next chapter, the Overall Description section, of this document gives an overview of the functionality of
the product. It describes the informal requirements and is used to establish a context for the technical
The third chapter, Requirements Specification section, of this document is written primarily for the
developers and describes in technical terms the details of the functionality of the product.
Both sections of the document describe the same software product in its entirety, but are intended for
2. Overall Description
The Clients Management System has two active actors and one coopeatating system. Both the Employee
and the Manager access the tool through the Internet. The system can’t be used without authorization by the
Users.
The sustem is devided into three independent sections. The Manager access the entire system directly while
This section outlines the use cases for both Employee and Manager separately.
Diagram:
Brief Description
The Employee accesses the Clients Management System on the web, logs in the system and logs time for
particular day.
Before this use case can be initiated, the Reader has already accessed the Clientns Management System.
Diagram:
Brief Description
Before this use case can be initiated, the Manager has already accessed the landing page page of the system.
2. The system verifies the credentials. logs in and redirects the user to the Dashboard.
Diagram:
Brief Description
The Manager creates a new client, updates information about a current client, deletes a client or views
Before this use case can be initiated, the Manager has already accessed the Dashboard page of the system.
5. The Manager choses to add a new client or to update, delete or view an existing one.
6. If the Manager chooses to add new or update client, the system presents an empty form for filling
8. The system verifies the information and returns the Manager to the Clients List page.
9. If the manager chooses to delete a Clinet, the system prompts for a delete confirmation.
10. The system verifies and executes the action and returns the Manager to the Clients List page.
Diagram:
Brief Description
The Manager enters a new Quote or updates information about an existing one.
Before this use case can be initiated, the Manager has already accessed the Dashboard page of the system.
1. The Manager clicks on the Quotes link form the main menu.
3. The Manager choses to add a new client or to update, delete or download PDF for an existing one.
4. If the Manager chooses to add new or update existing, the system presents an empty form for filling
6. The system verifies the information and returns the Manager to the Quotes List page.
7. If the manager chooses to delete a Quote, the system prompts for a delete confirmation.
8. The system verifies and executes the action and returns the Manager to the Quotes List page.
9. If the manager chooses to download a PDF, the system automatically dowloads a PDF.
Diagram:
Brief Description
The Manager enters a new Invoice or updates information about an existing one.
Before this use case can be initiated, the Manager has already accessed the Dashboard page of the system.
1. The Manager clicks on the Invoices link form the main menu.
3. The Manager choses to add a new invoice or to update, delete or download PDF for an existing one.
4. If the Manager chooses to add new or update existing, the system presents an empty form for filling
6. The system verifies the information and returns the Manager to the Invoices List page.
7. If the manager chooses to delete an Invoice, the system prompts for a delete confirmation.
8. The system verifies and executes the action and returns the Manager to the Invoices List page.
9. If the manager chooses to download a PDF, the system automatically dowloads a PDF.
Diagram:
Brief Description
The Manager enters a new Project or updates information about an existing one.
Before this use case can be initiated, the Manager has already accessed the Dashboard page of the system.
1. The Manager clicks on the Settings->Projects link form the main menu.
3. The Manager choses to add a new project or to update or delete an existing one.
4. If the Manager chooses to add new or update existing, the system presents an empty form for filling
6. The system verifies the information and returns the Manager to the Projects List page.
7. If the manager chooses to delete a project, the system prompts for a delete confirmation.
8. The system verifies and executes the action and returns the Manager to the Projects List page.
Diagram:
Brief Description
The Manager enters a new Employee or updates information about an existing one.
Before this use case can be initiated, the Manager has already accessed the Dashboard page of the system.
1. The Manager clicks on the Settings->Employees link form the main menu.
3. The Manager choses to add a new project or to update or delete an existing one.
4. If the Manager chooses to add new or update existing, the system presents an empty form for filling
6. The system verifies the information and returns the Manager to the Employees List page.
7. If the manager chooses to delete an employee, the system prompts for a delete confirmation.
8. The system verifies and executes the action and returns the Manager to the Employees List page.
Diagram:
Brief Description
Before this use case can be initiated, the Manager has already accessed the Dashboard page of the system.
1. The Manager clicks on the Settings->Currencies link form the main menu.
Diagram:
Brief Description
Before this use case can be initiated, the Manager has already accessed the Dashboard page of the system.
3. The Manager clicks on the Taxes>Currencies link form the main menu.
The Employee is expected to be Internet literate and to be able to track their time off the system. The
The system will be hosted on AWS EC2 instance and will be running on Apache 2. It will use PHP 7 with
MySQL. The application should be accesable through both, web and mobile devices.
3. Requirements Specification
Alternative Paths In step 2, the Employee can deceide to cancel the action and return back to the
Time Log list.
Other The projects dropdown contains all the projects added by the admin through
the Settings Section.
Trigger
Basic Path 1. The user fills the email and password form
2. The user clicks log in
3. The system verifies the credentials
4. The system redirects the user to the dashboard
Other None
Trigger The user selects the Clients link from the main menu.
Precondition The user is signed in and he is on any of the internal pages in the system.
Other The client information includes name, email address, address, city, state, postal
code, country, phone number, web address
Trigger The user chooses a client from the clients list and clicks update
Other The client information includes name, email address, address, city, state, postal
code, country, phone number, web address
Trigger The user chooses a client from the clients list and clicks delete
Alternative Paths In step 2, the user can cancel the abbandon the process.
Other The client information includes name, email address, address, city, state, postal
code, country, phone number, web address
Trigger The manager clicks on the Quote link from the main menu
Precondition The user is signed in and he is on any of the internal pages in the system.
Basic Path 1. The Manager choses to add a new quote or to update, delete or
download PDF for an existing one.
2. If the Manager chooses to add new or update existing, the system
presents an empty form for filling information or a filled form for
updating information.
3. The Manager fills the information ans submits the form.
4. The system verifies the information and returns the Manager to the
Quotes List page.
5. If the manager chooses to delete a Quote, the system prompts for a
delete confirmation.
6. The system verifies and executes the action and returns the Manager to
the Quotes List page.
5. If the manager chooses to download a PDF, the system automatically
dowloads a PDF.
Exception Paths The Manager may abandon the operation at any time.
Other None
Trigger The manager clicks on the Invoices link from the main menu
Precondition The user is signed in and he is on any of the internal pages in the system.
Basic Path 1. The Manager choses to add a new invoice or to update, delete or
download PDF for an existing one.
2. If the Manager chooses to add new or update existing, the system
presents an empty form for filling information or a filled form for
updating information.
3. The Manager fills the information ans submits the form.
4. The system verifies the information and returns the Manager to the
Invoices List page.
5. If the manager chooses to delete an Invoice, the system prompts for a
delete confirmation.
6. The system verifies and executes the action and returns the Manager to
the Invoices List page.
7. If the manager chooses to download a PDF, the system automatically
dowloads a PDF.
Exception Paths The Manager may abandon the operation at any time.
Other The invoice information include invoice number, date issues, due date, invoice
items etc.
Trigger The manager clicks on the Projects link from the main menu
Precondition The user is signed in and he is on any of the internal pages in the system.
Basic Path 1. The Manager choses to add a new project or to update or delete an
existing one.
2. If the Manager chooses to add new or update existing, the system
presents an empty form for filling information or a filled form for
updating information.
3. The Manager fills the information ans submits the form.
4. The system verifies the information and returns the Manager to the
Projects List page.
5. If the manager chooses to delete a project, the system prompts for a
delete confirmation.
6. The system verifies and executes the action and returns the Manager to
the Projects List page.
Exception Paths In step 2, the Manager is supposed to connect a project with a Clinet. If the
client doesn’t exists, the Manager should create one.
Trigger The manager clicks on the Settings->Employees link from the main menu
Precondition The user is signed in and he is on any of the internal pages in the system.
Basic Path 1. The Manager choses to add a new employee or to update or delete an
existing one.
2. If the Manager chooses to add new or update existing, the system
presents an empty form for filling information or a filled form for
updating information.
3. The Manager fills the information ans submits the form.
4. The system verifies the information and returns the Manager to the
Employees List page.
5. If the manager chooses to delete a employee, the system prompts for a
delete confirmation.
6. The system verifies and executes the action and returns the Manager to
the Employees List page.
Exception Paths The Manager may abandon the operation at any time.
Other The project information include name, email, role and password.
3.3.1 Security
The server on which the Client Management System resides will have its own security to third party access
on the system.