Development of a Budget Approval System


Title of the project


Development of a Budget Approval System

Abstract of the project


This project is aimed at developing a system by which the employees in the organization submit the bills to their managers. The bills could of various types and also of various amounts. The employee after submitting the bill will automatically provide the manager’s name to which the bill will be submitted. The bill will pass through a workflow process and the owner of the bill can view the status of the bill at any time. An email will be sent to the concerned people to let them know about the status of the bill.



Generic Technology keywords


Operating System, Databases, Network and Middleware


Specific Technology keywords


MS ACCESS/ORACLE, Java/C++, Apache(or any webserver), jsp, HTML


Project type keywords


Analysis, Design, Implementation, Testing

Functional components of the project


Following is the list of functionalities which is expected to be provided by the system. More functionalities can be added to this below list.


In case of doubt or confusion please make appropriate assumption considering the business and proceed.


Ø  User will log on to the application and the login will be based on the role of the user. The user will directly taken into ‘My open requests’, where the user can view the details of the request and can also view the status at which the request is.


Ø  The access to the system will be based on the roles. The roles will be based on the type of department the user belongs to. Details are:

o   Any user can create a request by login to the system, the parameters for creating the request will be

§  Name of the user (should be defaulted from the login)

§  Dept of the user (should be defaulted from the login)

§  Type of the bill being submitted (e.g., telephone bill, electricity bill etc)

§  Amount of the bill

§  Date of expense incurred

§  Whether the request is supported by the bills

§  Whether the bill amout should be credited to the user account in the bank

§  Bank name, address and account number

§  Any other mode by which the user will want to get the payment


o   The manager of the user should be able to view the details of the request but cannot modify the details entered; he can either approve the request or reject it. Every time he performs and operation the approver has to write the comments for the same.


o   Finance Manager – there will be number of finance managers and each finance manager will be responsible for 1 or 2 departments. Users in this role can only close the application, they can only view the requests and after crediting the amount to the request creator the request will be closed by the finance manager


Ø  The workflow process would be


o   User creates the request

o   Request is send to his manager, this should be done automatically. An email should be sent to the manager and also the request creator with the details of the request.

o   Request creator should be able to recall the request from manager, if the request has not been acted on else it cannot

o   User if not sent to requestor can cancel the request altogether as well

o   User can save the request in draft mode without sending to the approver

o   Manager of the concerned request creator can  view the details of the request but cannot modify.

§  Request once approved by the manager is sent to the concerned finance dept manager

§  If rejected the request is sent back to the request creator.

§  In all the above scenarios an email should be sent to the concerned parties for necessary action

o   Finance manager after receiving the request has to credit the user account and has to send the request to the creator with proper comments as appropriate.

o   Now the creator will close the request after the amount has been credited to the creator.


Ø  After sending the email, the system will keep checking on the daily basis on the status of the request, if no actions is performed in 24 hrs a reminder email is generated which is sent to the user email address as stored in the database.


Ø  Screens should also be provided to the administrator of the system to create the employee as well as their manager.

Steps to start-off the project


The following steps will be helpful to start off the project.


  1. Study and be comfortable with technologies such as

Java, jsp’s, apache server, oracle, PL/SQL etc .


            Some links to these technologies are given in the ‘Guidelines and References’ 

            section of this document


  1. Decide upon the approval policy and define that as clearly as possible.


  1. Make a database of people at different levels with their roles and form a hierarchy of them, like which role reports to which particular role. Decide on the various details of the people and their roles that would be stored in the database (like employee/registration-number, name, grade, location, system-login, password in cryptic form, etc)


  1. Assign a mail-admin who will create mail-ids for the people in the intranet of your lab or in the internet. These mail-ids will be used for sending automatic notifications and reports. The mail-admin will also take care of assigning the logins to the users of the leave system


  1. Since the real-time project needs to be tested in real-time, you can take ‘hours’ as ‘days’ for testing the system. However, the display will still be in ‘days’ only.


  1. Create the front-page of the system giving a brief description about the system and a login box


  1. Create the help-pages of the system in the form of Q&A. This will help you also when implementing the system


  1. Create other sub-systems like automatic notification, screens for various functions (like create request, approve request etc)


Hardware requirements




Alternatives (If available)


PC with 2 GB hard-disk and 256 MB RAM



Software requirements




Alternatives (If available)


Windows 95/98/XP with MS-office



Oracle, MSQL

MS Access





Manpower requirements


2 to 3 students can complete this in 5 – 6 months if they work fulltime on it.


Milestones and Timelines



Milestone Name

Milestone Description




(Week no. 

from the start

of the project)





Requirements Specification

Complete specification of the system (with appropriate assumptions) A document detailing the same should be written and a presentation on that be made.


Attempt should be made to add some more relevant functionalities other than those that are listed in this document.


Technology familiarization

Understanding of the technology needed to implement the project.


The presentation should be from the point of view of being able to apply it to the project, rather than from a theoretical perspective.


Database creation

A database of atleast 100 entries of employees should be created. Do the database modeling in the beginning itslef


It is important to finalize on the database at this stage itself so that development and testing  can proceed with the actual database itself.


High-level and Detailed  Design

Listing down all possible scenarios and then coming up with flow-charts or pseudocode to handle the scenarios.


The scenarios should map to the requirement specification (ie, for each requirement that is specified, a corresponding scenario should be there).


Implementation of the front-end of the system

Implementation of the main screen giving the login, screen that follows the login giving various options, screens for each of the options


During this milestone period, it would be a good idea for the team (or one person from the team) to start working on a test-plan for the entire system. This test-plan can be updated as and when new scenarios come to mind.


Integrating the front-end with the database

Integrate various threads so that you can  start the Integration testing




Integration Testing

The system should be thoroughly tested by running all the testcases written for the system (from milestone 5).


Another 2 weeks should be there to handle any issues found during testing of the system. After that, the final demo can be arranged.


Final Review

Issues found during the previous milestone are fixed and the system is ready for the final review.


During the final review of the project, it should be checked that all the requirements specified during milestone number 1 are fulfilled (or appropriate reasons given for not fulfilling the same)



Guidelines and References

Tags :
Your rating: None Average: 3 (6 votes)