System Requirements Document for Invoice Creation for Company

Problem 

A consulting company which focuses on advising companies on how best they can use technology in achieving their business goals. The consulting firm administrates and implements behalf of their clients. This company employees working on different projects with different clients. They work according to the requirements of the client project. The accountant collects the data of the employee like the working hours and the number of projects and the respective client company is noted down and calculated manually. The detailed invoice is sent to the client through email.  The accountant might have made mistakes in entering the data or calculating the amount. This would result in a false report and could create problems.

The consulting company would like to have a software invoice that automatically generates a detailed report about the payment. This would replace the existing system and improve the accuracy in the present system.

Objectives 

  • Maintains a detailed record of the employees such as a total number of hours, type of project, job role, and hourly pay.
  • Reduce human errors and automatic calculations are done without errors.
  • Can generate an invoice and detailed report on employee payments.
  • The automatically generated reports are flexible for the clients to pay to the employees.
  • Flexible usability for the employees to enter their login and logout hours.
  • Improves accuracy and timeliness, security.

Existing System:

In the existing system, we have employees working for different clients on different projects. The accountant calculates all the working hours of employees. But if he makes any mistake in data entry of calculating the hours then a wrong report about payment is sent to the client and it may over cost the client. The client again has to recheck everything and sent it back to the consultancy for re-evaluation or sometimes the employee does not get the correct pay. This helps to generate an invoice which is done manually.

The client has identified these problems:

  • Generation of the Invoice is very slow and takes a long time to remit to the employee.
  • The generation reports took even longer then invoice.
  • Delay in all the reports due to manual work and there are possible human errors which may cost the client.
  • Manual work is expensive
  • Data loss can happen easily
  • There is no way to find a duplicate entry of data.

Functional Requirements:

Maintain company information:

The manager maintains the company information in the system which has details about a company like its name, Address, City, State, Zip code.

Taking up the project:

The consulting company takes up the project from the client. They need to know every detail about the project.

Maintain project person information:

The company should maintain all the information about the project person such as project number, project name.

Maintain Employee information:

The company should maintain information about the employees working. It should provide details like Name, their title in the company and also the role they play in completing the project.

Maintain project data:

The company should have the proper information about the project such as client id which is provided by the company, project number, its name, start date, and end date, status, the name of the manager, name of the client, and budget for the project completion. 

Maintain client data:

The company should the client details such as project id, the name of the client, address of the company, email id, contact information, invoice frequency, billing terms, invoice grouping.

Enter Time for Employee

  • Input number of hours worked in a week
  • Input overtime hours

Generate Invoice

Create an invoice based on the following criteria

  • Input employee hours within the budget goal.
  • Project data that contains the Client*, Project number, Project name, Start Date*, End Date*, Status, Project Manager and Budget*.
  • There are employees who work overtime when needed.

Generate Reports

  1. Invoice Report
  2. Project Report
  3. Budget Report
  4. Payroll Report

Non-Functional Requirements 

  • Usability
    • The system must be easy to use so that user can easily perform any actions.
      • A User should be able to create an invoice without any difficulty in PDF format.
      • A user should be able to do that inaccurate time.
      • A user should be able to effectively operate the system with less than one hour of training.
    • Availability
      • The system must be highly reliable since, if the system is not available, the user can’t easily able to create an invoice.
        • The system should be available 99.999% of the office open hours.
      • Performance
        • All the actions should be performed in accurate time.
        • All the imports should be performed inaccurate time.
        • Generation of Invoice should be performed inaccurate time.
        • Generation of reports should be performed inaccurate time.
      • Supportability
        • The system should be developed in a common technology that the Accountants in the Consulting company should be able to use to make upgrades to the system
        • The system should be documented and coded in a way that a developer that was not originally on the development team could determine how to make updates.
      • Interface
        • The system must support an interface with some users.
        • The system must support a file exchange interface.
        • The system interface should provide multiple accesses.
        • Accountants, Project Manager, and Employees will operate and use this system.
  • Operations
    • In-office personnel will use the system. These users are not trained computer operators.
  • Legal
    • The system should meet legal and OC security requirements for People data.
    • No one should have access to specific People data.
    • Copyright protected.
    • Trade protected. 

Target Environment 

The system must normally function on a stand-alone Windows 10 based PC with 4G of memory and 200 GB hard drive. 

Use Cases 

This is a list of use cases identified for this system.  The definition of each use case follows. 

  • Log in
  • Log out
  • Add employee
  • Update employee
  • Delete employee
  • Add client
  • Update client
  • Add Client project
  • Update Client project
  • Start time for an employee
  • The end time for an employee
  • Enter time
  • Make an employee report
    • Add an employee
    • Number of hours worked
  • Which client

How many projects

Hourly pay

Method of payments by the client (monthly, weekly, bi-week, calendar)

  • Cancel
  • Save

Generate Reports

Client ID

Payment details

  • Date

Description

Rate

Hourly pay

  • Amount
  • Payment terms

Invoice number

Billing frequency

Total amount due 

System Authorization Use Cases

1         Log In

2         Log Out

 

Name Log in
Description Grant user access as an authorized user
Actor(s) User
Flow of Events 1. A User wants to use the system.

2. The user selects to login

3. User enters credentials

4. System tests the credentials and grants access or shows an error.

Special Requirements Require credentials (username and password)

 

Pre- Conditions The user has previously been set up as a user in the system
Post- Conditions The user is authorized to the system if requirements and exceptions are met.
Exceptions Credentials do not match what is in the system
Name Log out
Description Remove user access as an authorized user
Actor(s) User
Flow of Events 1. A User wants to end using the system.

2. The user selects to log out.

3. System logs out the users

4. The manager selects to save

Special Requirements Require store number and name

 

Pre- Conditions The user is currently authorized to the system
Post- Conditions No user is currently authorized if requirements and exceptions are met.
Exceptions There must be a user authorized before a user can be logged out.

 Maintain Client details 

Client data

Name Client Data
Description The manager should maintain all details about the client such as name, id, billing information etc.
Actor(s) Manager
Flow of Events

1. The manager should enter all the details about the client.

2. He should all the correct details of the client.

3. he should provide them with the payment details such as hourly payment rate, billing frequency.

 

Special Requirements Should require unique id for every client

 

Pre- Conditions The manager has been authorized to the system
Post- Conditions The manager will be able to enter all the details when he has accurate information from the client
Exceptions None

Maintain Employee information

  • Add employee
  • Delete employee
  • Update employee

 

Name Add employee
Description The manager should add an employee to the system
Actor(s) Manager
Flow of Events 1. When there is any new employee, the manager should enter all the required details to add the employee to the system

2. The manager should have all the details about employee details

3. The manager enters information about the employee

4. The manager should save all the details

Special Requirements The employee should have a unique id

 

Pre- Conditions The manager has been authorized to the system
Post- Conditions The manager will be able to add information to the system
Exceptions Do not add if the employee already exists in the system

 

Name Update employee
Description Update the information for an existing employee in the system.  This happens when a correction is required.
Actor(s) Manager
Flow of Events 1. A change in employee information is detected.

2. The manager selects to update an employee.

3. The manager selects the employee to update.

3. The manager enters information about the employee.

4. The manager selects to save the employee.

Special Requirements Require employee id

 

Pre- Conditions The manager has been authorized to the system
Post- Conditions Employee details will be updated when it meets all the requirements and expectations are met
Exceptions Do not add if the employee exists in the system

 

Name Delete employee
Description Delete the information for an existing employee in the system.  This happens when an employee detail is entered in error.
Actor(s) Manager
Flow of Events 1. Employee details are identified that needs deletion.

2. The manager selects to delete an employee.

3. The manager selects the employee to delete.

4. Manager deletes an employee.

Special Requirements
Pre- Conditions The manager has been authorized to the system
Post- Conditions The employee is deleted from the system if requirements and exceptions are met.
Exceptions  

 

Report maintenance

Name Generate project report
Description
Actor(s) Manager
Flow of Events 1. The manager should be able to generate a report.

2. The manager should enter all details

3. He should give all the required details

4. The manager selects to save

Special Requirements Require to give every detail as accurate

 

Pre- Conditions The manager has been authorized to the system
Post- Conditions The manager will be able to generate a report
Exceptions

Client Data

Name Client  Project Details
Description Report for project details for the client
Actor(s) Manager
Flow of Events 1. The manager should have all the details about the project

2. The manager selects the project by giving information like client id.

3. The manager enters the start date and end date

3. The manager enters information payment details

4. The manager selects to save all the details

Special Requirements Require unique client id
Pre- Conditions The manager has been authorized to the system
Post- Conditions The manager will be able to give a report regarding project details to the client
Exceptions

Client

Name Add Client
Description Add the details about for the new client.
Actor(s) Manager
Flow of Events 1. The new client is identified that needs to be added.

2. The manager selects to add a new client.

3. The manager enters the details about the client.

4. The manager adds the client.

Special Requirements Need to give the accurate details.
Pre- Conditions The manager has been authorized to the system
Post- Conditions Client details will be updated when it meets all the requirements and expectations are met
Exceptions Do not add if the client exists in the system

 

Name Update Client
Description Update the details about for the new client.
Actor(s) Manager
Flow of Events 1. Client details have identified that need to be deleted.

2. The manager selects to update a client.

3. The manager selects the client to update.

4. Manager updates a client.

Special Requirements Need to give the accurate details.
Pre- Conditions The manager has been authorized to the system
Post- Conditions Client details will be updated when it meets all the requirements and expectations are met
Exceptions

Project:

Name Add Project
Description Add the details about for the new project.
Actor(s) Manager
Flow of Events 1. The new project is identified that needs to be added.

2. The manager selects to add a new project.

3. The manager enters the details about the new project to be added.

4. The manager adds the project.

Special Requirements Need to give the accurate details.
Pre- Conditions The manager has been authorized to the system
Post- Conditions The manager will be able to give all the details when he has accurate information for the project.
Exceptions

 

Name Update Project
Description Update the details about the project.
Actor(s) Manager
Flow of Events 1. The new project is identified that needs to be added.

2. The manager selects to add a new project.

3. The manager enters the details about the new project to be added.

4. The manager adds the project.

Special Requirements Need to give the accurate details.
Pre- Conditions The manager has been authorized to the system
Post- Conditions The manager will be able to give all the details when he has accurate information for the project.
Exceptions

 Glossary

Term Definition
Company A company which handles all the projects
Manager A manager is a person who he responsible for maintaining project details.
Client A client is a person who gives a project for the manufacturing company
Employee A person who works for a manufacturing company
Billing information Billing information which gives details about payment information to the client about the project.
Project data Project data is given which has all the details about the project such as name and id.
Enter time The employee enters the that he worked in the week
Budget The Project should not exceed the budget
Payment remit This is generated by invoice and paid to the employee
Invoice This is a report which shows all details about the employees and the number of hours worked.
Project person It describes the project who is related to the project who gives it to the company.

Employee Attendance Monitoring System Java Project

ABSTRACT

In this Employee Attendance Monitoring project, attempts were made to register the presence of employees. The main purpose of this java application is to maintain information about the presence that all employees can use in their departments. This web application retrieves the details of the departments assigned to the relevant administrative employees and employees enrolled in the courses from the server with the internet connection and stores them in the database. At the end of the month, when the administrator is needed to attend, attendance reports can directly generate an administrator report view.

Existing System:

In the Existing System, we maintain information manually to maintain the information in manually is also time taken. Calculate the loss of pay is also time taken.

Proposed System:

In Proposed System, we are maintaining all the employees’ information in Their attendance and their salary‘s. In this project Employee’s also can view the Attendance and LOP’S. The Application automatically calculates their LOP’s based on their Salary’s.

Modules:

Admin:

  • Login
  • View Employee Details
  • Add Employee Details
  • Delete Employee Details

Admin Staff:

  • Update the Employee Attendance.
  • Calculate LOPS

Employee:

  • Login
  • View Employee Attendance
  • View Lop
  • Apply for The Leave

Requirements Specifications

Hardware Requirements

  • Processor: Pentium-III (or) Higher
  • Ram: 64MB (or) Higher
  • Hard disk: 10GB

Software Requirements

  • Technology: Java 2 Standard Edition, JDBC
  • WebServer: Tomcat 7.0
  • Client Side Technologies: HTML, CSS, JavaScript
  • Server Side Technologies: Servlets, JSP
  • Data Base Server: MySQL
  • Operating System: Microsoft Windows

Real Time Bus Tracking System Android App

Development of Bus tracking Android application which will do these things:

1) This real-time bus tracking system with functionalities like ETA, bus recommendation.
2) The user should be able to see the real-time bus movement and if he taps on the bus in the map.
3) The bus should show it’s route and destination. The person who is on the bus should have a different app in which he will input the source destination.
4) And the user app will be a different app.
5)That person on the bus will be the driver and he will enter the bus number through his smartphone and will be using the bus app not that user app.
6)After entering the bus number the bus now will be shown on the map which will be seen by the user by using a user app.
7)Yes, we need settings options for driver end side like on and off for tracking and update bus details.

This android project includes four main modules or features below

1. Get the user’s current location and notify him his nearby local bus stops and their names and distance and time to get to the bus stop.
2. Get the source and destination points from the user and mention him all the local bus numbers through the route and the route map as well.
3. He can be able to check his nearby places as well like, hospitals, police stations, malls, atm etc.
4. He can share his location with anyone through social media.

This is a real-time bus tracking system project in whole.
Two of our previous major projects namely, BRTS project and CITY BUS MNGMNT ANDROID APP covers these first two modules.

Accident Avoidance Using IBS and AOCS Major Project

Accidents are increasing at a higher pace and are most common if driving is inadequate. Driver drowsiness is considered an important factor in vehicle accidents, Over Speed can also be considered as another important factor for vehicle accidents.

The main objective of this project is to develop a system for automatic speed control and accident avoidance using eye blink and ultrasonic sensors to keep vehicle secure.

It includes an intelligent braking system in which, whenever any obstacle comes in front of a running vehicle the ultrasonic sensor detects the obstacle at a distance of 4m away from it and sends a signal to embedded board or microcontroller.

And if the driver is drowsy or about to sleep, then the eye blink sensor detects the eye blink and if eyes are closed for more than 30 seconds, the vehicle stops automatically.

Apart from these, the safety of the vehicle can also be ensured by introducing A.O.C.S (Automatic Over Speed Control System). It basically controls the speed of the vehicle by continuously checking it through sensors which sends the signal to the microcontroller.

Whenever the speed is increased above the predefined critical speed, the microcontroller through its logical circuits sends the signals to the actuators via its output pins. The actuators apply necessary force on the brakes and reduce the speed to its safe value.

The sensor used in this system is an optical type infrared sensor and the actuators are stepper motors to which the output of the microcontroller is connected.

Student Repository System Java Project

OBJECTIVE

žThe main objective of this Repository system application is to store all the details of the students permanently by using the one-time registration process.

žThe students can register their details at once and they get one unique id which is useful to fetch their details to any application automatically.

Present Working System

žIn the existing repository system, the students have to enter their details every time whenever they required for filling the application.

ž It is time-consuming and sometimes there is a chance of misplacement of data.

To Be Proposed

žIn the proposed repository system the students no need to enter their details every time.

žBy using their unique registration id the details are automatically fetched to the application only extra details required are to be entered.

žThe students can update their details in the existed profile whenever they required.

žIt is the user-friendly environment and less time-consuming.

Modules:

The proposed repository system has two modules:

Administrator

  • žAdministrator can store and manage all the details of registered students.
  • žProvides the functionalities that the student can fetch their details whenever required.
  • žAdmin maintains the entire application who is responsible for the activities that are performed in the system.

 Student

  • žThe student can log in into the system with their login details.
  • žThey can add, delete and modify the existed details in the system.
  • žThe student gets the notification any activity is performed in the system.

Repository system is a Java-based project, Its like one time registration application in this students can register all their details one time and they will get one id using that if they can apply any application form like job purpose, certificates purpose like that they can utilize that id, if they enter that id automatically the details related to that fields fetched and extra details to be filled by the student.

and one thing is the photo and signature are also to be saved in a file and those also to be fetched automatically whenever required.

This project developed by using Java, NetBeans7.4, JDK 1.7, MySQL 5.5, SQLYog, HTML, JavaScript and CSS.