Docstoc

payroll

Document Sample
payroll Powered By Docstoc
					T




                                            OF

                                  (PAYROLL SYSTEM)




        Submitted in the partial fulfillment of the Degree of Bachelor of Technology
                                          (Integrated)
                                               In
                            Computer Science and Engineering


    SUBMITTED BY:-                                 GUIDED BY:
    Name GAURAV BAHTI                              SUKHDILPREET KAUR
    Regd. No 10802686
    Rollno R246A13

                                 SUBMITTED TO
    Department of Computer Science and Engineering Lovely Professional University
                                     Phagwara
                             ACKNOWLEDGEMENT

I take this opportunity to present my votes of thanks to all those guidepost who really
acted as lightening pillars to enlighten our way throughout this project that has led to
successful and satisfactory completion of this study.
We are really grateful to our HOD Mr. Rohit Dhand for providing us with an
opportunity to undertake this project in this university and providing us with all the
facilities. We are highly thankful to Miss Sukhdilpreet Kaur for her active support,
valuable time and advice, whole-hearted guidance, sincere cooperation and pains-
taking involvement during the study and in completing the assignment of preparing
the said project within the time stipulated.
Lastly, We are thankful to all those, particularly the various friends , who have been
instrumental in creating proper, healthy and conductive environment and including
new and fresh innovative ideas for us during the project, their help, it would have
been extremely difficult for us to prepare the project in a time bound framework.


                                                 Name GAURAV BHATI
                                                 Regd.No 10802686
                                                 Rollno. R246A13
                                 TABLE OF CONTENTS

1.     Introduction
2.     Proposed system
   i.      Description
   ii.     System requirements
3.     Requirement Analysis
4.     System Design
5.     Source code
6.     Testing
7.     Future scope of project
                                   INTRODUCTION

In the existing system, most of the records are maintained on paper. It becomes very
inconvenient to modify the data. In the existing system, here is a possibility that the same
data in different registers may have different values which means the entries of the same
data do not match. This inconsistent state does not supply the concrete information which
poses a problem in the case information related to particular search record.
Our project is very useful. User is no longer required to check his register in search of
records, as now it can be searched over the software by choosing some options. The user
need not to type in most of the information. He/she is just required to enter the desired
options. On the whole it liberates the user from keeping lengthy manual records. In a
nutshell, it abates the work load of an organization.
  In today’s world, no one likes to perform calculations on calculator or manually when
  computer is there. Every one wants his/her work to be done by computer automatically
                      and displaying the result for further manipulations.
                                PROPOSED SYSTEM

The following documentation is a project the “Name of the term paper allotted”. It is a
detailed summary of all the drawbacks of the old system and how the new proposed
system overcomes these shortcomings. The new system takes into account the various
factors while designing a new system. It keeps into the account the Economical
bandwidth available for the new system. The foremost thing that is taken care of is the
Need and Requirements of the User.

DESCRIPTION
Before developing software we keep following things in mind that we can develop
powerful and quality software
PROBLEM STATEMENT
   o Problem statement was to design a module:
   o Which is user friendly
   o Which will restrict the user from accessing other user’s data.
   o Which will help user in viewing his data and privileges.
   o Which will help the administrator to handle all the changes.
FUNCTIONS TO BE PROVIDED:
The system will be user friendly and completely menu driven so that the users shall have
no problem in using all options.
   o The system will be efficient and fast in response.
   o The system will be customized according to needs.


SYSTEM REQUIRMENTS
Operating system:    MS Windows XP or Windows Vista
Language: C Language
Processor: Pentium IV Processor
RAM: 512 MB
Hard disk: 5 GB
                             REQUIREMENT ANALYSIS

This process is adopted when management of the system development, Personnel decide
that the particular system needs improvement. The system development life cycle is the
set of activities, carried out by the analyst, designers and users to develop and implement
a system. The systems that are present in the nature follow common life cycle pattern.
For example consider the raining system. Initially the rain falls into the river, river flows
into sea, the sea water evaporates to form vapors, the vapors form clouds which again
bring rain. Similarly consider a man made system initially a system is analyzed, designed
and made operational by the efforts of system analysis. After successful operation or a
number of users, the system becomes less and less effective by change in the
environment. So these changes have to be incorporated in to the system by minor
modifications. So the general activities from the life cycle of the system are given below:
     Select ion and identification of the system to be studied
     Preliminary study
     Defining the system
     Design and development of the system
     Implementation of the system
                                 SYSTEM DESIGN

Then we began with the design phase of the system. System design is a solution, a “HOW
TO” approach to the creation of a new system. It translates system requirements into
ways by which they can be made operational. It is a translational from a user oriented
document to a document oriented programmers. For that, it provides the understanding
and procedural details necessary for the implementation. Here we use Flowchart to
supplement the working of the new system. The system thus made should be reliable,
durable and above all should have least possible maintenance costs. It should overcome
all the drawbacks of the Old existing system and most important of all meet the user
requirements.
#include<stdio.h>
#include<process.h>
#include<ctype.h>
#include<string.h>
#include<dos.h>
#include<conio.h>
#define PAUSE 10000

void   addEmp();
void   viewEmp();
void   addDed();
void   viewDed();
void   exitSys();
void   linefill(int start);

struct employee{
char code[10];
char fname[15];
char lname[15];
char mname[5];
char sex[10];
char status[15];
char ded_name1[15];
char ded_name2[15];
char ded_name3[15];
float grossPay;
float netPay;
float tax;
float ded_n1;
float ded_n2;
float ded_n3;
}empRec[50];

char ch,ID[10];
int x,cntrX,idCheck;

void main()
{
int start=16,end=20;
textattr(9+(1<<4)); clrscr(); cntrX=0;
while(1 == 1)
 {
 window(1,1,80,25);
 linefill(start); textattr(10+(1<<4));
 gotoxy(20,3); cprintf("Ûßßß Ü ÛßßÛ ÜÜÜÜ Û     ");
 gotoxy(20,4); cprintf("ÛÛßß Ü ÛÛ Û ÜÜÜÛ ÛÛ ");
 gotoxy(20,5); cprintf("ÛÛ    Û ÛÛ Û ÛÜÜÛ ÛÛÜÜ");
 textattr(6+(1<<4));
 gotoxy(42,3); cprintf("Üßßßß Û     Û Üßßßß");
 gotoxy(42,4); cprintf(" ßßßÜ ßÛß      ßßßÜ");
 gotoxy(42,5); cprintf("ßßßß     ß    ßßßß ");
 textattr(15+(1<<4));
 gotoxy(60,3); cprintf("TM ");
 gotoxy(23,7); cprintf("             Final Project
");
 gotoxy(23,8); cprintf("           by: Joel Badinas
");
 gotoxy(23,9); cprintf("             October 2001
");
 textattr(2+(4<<4));
 gotoxy(29,14); cprintf(" >> M A I N M E N U << ");
 textattr(2+(1<<4));
 gotoxy(25,15);
cprintf("ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ");
 gotoxy(33,16); printf("Add new employee");
 gotoxy(33,17); printf("View employee");
 gotoxy(33,18); printf("Add deduction");
 gotoxy(33,19); printf("View deduction");
 gotoxy(33,20); printf("Quit");
 gotoxy(25,21);
cprintf("ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ");
 textattr(14+(1<<4));
 gotoxy(2,25); cprintf("FiNaLSYS Ver 1.0");
 gotoxy(63,25); cprintf("Copyright(c) 2001");
 ch=getch();
 if(ch==72)
  {
  textbackground(1); textcolor(9);
  gotoxy(31,start); cprintf("                      ");
  start = start -1;
  if(start < 16)
   {
   start = end;
   }
  textbackground(1); textcolor(9);
  gotoxy(31,start+1); cprintf("        ");
  linefill(start);
  }
 if(ch==80)
  {
  textbackground(1); textcolor(9);
  gotoxy(31,start); cprintf("        ");
  start = start + 1;
  if(start > 20)
   {
   start = 16;
   }
  textbackground(1); textcolor(9);
  gotoxy(31,start-1); cprintf("        ");
  linefill(start);
  }
 if(ch == 13)
  {
  if(start == 16)
   {
   addEmp(); textattr(9+(1<<4));
   window(1,1,80,24); clrscr();
   }
  if(start == 17)
   {
   viewEmp(); textattr(9+(1<<4));
   window(1,1,80,24); clrscr();
   }
  if(start == 18)
   {
   addDed(); textattr(9+(1<<4));
   window(1,1,80,24); clrscr();
   }
  if(start == 19)
   {
   viewDed(); textattr(9+(1<<4));
   window(1,1,80,24); clrscr();
   }
  if(start == 20)
   {
   exitSys(); exit(0);
   }
  }
 }
}

void addEmp()
{
float pay1;
char name1[15],name2[15],name3[5],name4[10],name5[15];
ch=0;
while(ch != 'N')
  {
  window(8,4,72,22);
  textattr(2+(0<<4)); clrscr(); textattr(7+(0<<4));
  while(1 == 1)
   {
   idCheck=0;
   gotoxy(6,3); cprintf("Enter code     : ");
scanf("%s",&ID);
   for(x=0;x<cntrX+1;x++)
    {
    if(strcmp(empRec[x].code,ID)==0)
      {
      idCheck=1;
      }
    }
   if(idCheck==1)
    {
    gotoxy(23,3); printf("                          ");
    gotoxy(2,19); cprintf("Code no. already exist!
");
    delay(PAUSE);
    gotoxy(2,19); printf("
");
    }
   else
    {
    break;
    }
   }
  gotoxy(6,8); cprintf("Last Name       : ");
  gotoxy(6,9); cprintf("First Name      : ");
  gotoxy(6,10); cprintf("Middle Initial : ");
  gotoxy(6,11); cprintf("Sex            : ");
  gotoxy(6,12); cprintf("Status         : ");
  gotoxy(6,13); cprintf("Monthly Pay    : ");

 gotoxy(23,8);    scanf("%s",&name1);
 gotoxy(23,9);    scanf("%s",&name2);
 gotoxy(23,10);   scanf("%s",&name3);
 gotoxy(23,11);   scanf("%s",&name4);
 gotoxy(23,12);   scanf("%s",&name5);
 gotoxy(23,13);   scanf("%f",&pay1);
  gotoxy(2,19); cprintf("Save this entry? (Y/N)
");
  ch=0;
  while(ch != 'Y'&& ch != 'N')
   {
   ch=toupper(getch());
   }
  if(ch=='Y')
   {
   cntrX++;
   strcpy(empRec[cntrX].code,ID);
   strcpy(empRec[cntrX].fname,name1);
   strcpy(empRec[cntrX].lname,name2);
   strcpy(empRec[cntrX].mname,name3);
   strcpy(empRec[cntrX].sex,name4);
   strcpy(empRec[cntrX].status,name5);
   empRec[cntrX].grossPay = pay1;
   empRec[cntrX].tax = (.12)*pay1;
   empRec[cntrX].netPay = empRec[cntrX].grossPay-
empRec[cntrX].tax;
   gotoxy(2,19); cprintf("Saving entry...
");
   delay(PAUSE);
   }
  else
   {
   gotoxy(2,19); cprintf("Saving cancelled...
");
   delay(PAUSE);
   }
  gotoxy(2,19); cprintf("Save entry again? (Y/N)
");
  ch=0;
  while(ch != 'Y'&& ch != 'N')
   {
   ch=toupper(getch());
   }
  }
}

void viewEmp()
{
ch=0;
while(ch != 'N')
  {
  idCheck=0;
  window(8,4,72,22);
 textattr(2+(0<<4)); clrscr(); textattr(7+(0<<4));
 gotoxy(6,3); cprintf("Enter code     : ");
scanf("%s",&ID);
 for(x=0;x<cntrX+1;x++)
  {
  if(strcmp(ID,empRec[x].code)==0)
   {
   gotoxy(6,8); cprintf("Last Name       : ");
   gotoxy(6,9); cprintf("First Name      : ");
   gotoxy(6,10); cprintf("Middle Initial : ");
   gotoxy(6,11); cprintf("Sex            : ");
   gotoxy(6,12); cprintf("Status         : ");
   gotoxy(6,13); cprintf("Net Pay        : ");

    gotoxy(23,8); printf("%s",empRec[x].fname);
    gotoxy(23,9); printf("%s",empRec[x].lname);
    gotoxy(23,10); printf("%s",empRec[x].mname);
    gotoxy(23,11); printf("%s",empRec[x].sex);
    gotoxy(23,12); printf("%s",empRec[x].status);
    gotoxy(23,13); printf("%.2f",empRec[x].netPay);
    idCheck=1; break;
    }
   }
  if(idCheck==0)
   {
   gotoxy(2,19); cprintf("Employee record not found...
");
   delay(PAUSE);
   }
  gotoxy(2,19); cprintf("View employee again? (Y/N)
");
  ch=0;
  while(ch != 'Y'&& ch != 'N')
   {
   ch=toupper(getch());
   }
  }
}

void addDed()
{
char nameded1[15],nameded2[15],nameded3[15];
float amount1,amount2,amount3;
ch=0;
while(ch != 'N')
  {
  window(8,4,72,22); idCheck=0;
 textattr(2+(0<<4)); clrscr(); textattr(7+(0<<4));
 gotoxy(3,2); cprintf("Enter code : "); scanf("%s",&ID);
 for(x=0;x<cntrX+1;x++)
  {
  if(strcmp(ID,empRec[x].code)==0)
   {
   idCheck=1;
   gotoxy(3,6); cprintf("Name          : ");
   gotoxy(3,7); cprintf("Monthly Pay : ");
   gotoxy(46,6); cprintf("Sex    : ");
   gotoxy(46,7); cprintf("Status : ");

   gotoxy(17,6); printf("%s %s
%s",empRec[x].fname,empRec[x].lname,empRec[x].mname);
   gotoxy(17,7); printf("%.2f",empRec[x].grossPay);
   gotoxy(55,6); printf("%s",empRec[x].sex);
   gotoxy(55,7); printf("%s",empRec[x].status);

   gotoxy(16,10); cprintf(" Type of Deduction ³    Amount");
   gotoxy(16,11);
cprintf("ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ");
   gotoxy(17,12); cprintf("1)"); gotoxy(36,12);
cprintf("³");
   gotoxy(17,13); cprintf("2)"); gotoxy(36,13);
cprintf("³");
   gotoxy(17,14); cprintf("3)"); gotoxy(36,14);
cprintf("³");

  gotoxy(20,12); scanf("%s",&nameded1);
  gotoxy(39,12); scanf("%f",&amount1);

  gotoxy(20,13); scanf("%s",&nameded2);
  gotoxy(39,13); scanf("%f",&amount2);

  gotoxy(20,14); scanf("%s",&nameded3);
  gotoxy(39,14); scanf("%f",&amount3);

   gotoxy(2,19); cprintf("Save this entry? (Y/N)
");
   ch=0;
   while(ch != 'Y'&& ch != 'N')
    {
    ch=toupper(getch());
    }
   if(ch == 'Y')
    {
    for(x=0;x<cntrX+1;x++)
        {
        strcpy(empRec[x].ded_name1,nameded1);
        strcpy(empRec[x].ded_name2,nameded2);
        strcpy(empRec[x].ded_name3,nameded3);
        empRec[x].ded_n1 = amount1;
        empRec[x].ded_n2 = amount2;
        empRec[x].ded_n3 = amount3;
        empRec[x].netPay = empRec[x].grossPay-empRec[x].tax-
amount1-amount2-amount3;
        }
      gotoxy(2,19); cprintf("Saving entry...
");
      delay(PAUSE); break;
      }
    else
      {
      gotoxy(2,19); cprintf("Saving cancelled...
");
      delay(PAUSE); break;
      }
    }
   }
  if(idCheck==0)
   {
   gotoxy(2,19); cprintf("Employee record not found...
");
   delay(PAUSE);
   }
  gotoxy(2,19); cprintf("Add deduction again? (Y/N)
");
  ch=0;
  while(ch != 'Y'&& ch != 'N')
   {
   ch=toupper(getch());
   }
  }
}

void viewDed()
{
ch=0;
while(ch != 'N')
  {
  window(8,4,72,22); idCheck=0;
  textattr(2+(0<<4)); clrscr(); textattr(7+(0<<4));
  gotoxy(3,2); cprintf("Enter code : "); scanf("%s",&ID);
  for(x=0;x<cntrX+1;x++)
 {
 if(strcmp(ID,empRec[x].code)==0)
  {
  idCheck=1;
  gotoxy(3,5); cprintf("Name          : ");
  gotoxy(3,6); cprintf("Monthly Pay : ");
  gotoxy(46,5); cprintf("Sex    : ");
  gotoxy(46,6); cprintf("Status : ");

   gotoxy(17,5); printf("%s %s
%s",empRec[x].fname,empRec[x].lname,empRec[x].mname);
   gotoxy(17,6); printf("%.2f",empRec[x].grossPay);
   gotoxy(55,5); printf("%s",empRec[x].sex);
   gotoxy(55,6); printf("%s",empRec[x].status);

   gotoxy(16,9); cprintf(" Type of Deduction    ³   Amount");
   gotoxy(16,10);
cprintf("ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ");
   gotoxy(17,11); cprintf("1)");
   gotoxy(17,12); cprintf("2)");
   gotoxy(17,13); cprintf("3)");
   gotoxy(17,14); cprintf("4)");
   gotoxy(36,11); cprintf("³");
   gotoxy(36,12); cprintf("³");
   gotoxy(36,13); cprintf("³");
   gotoxy(36,14); cprintf("³");
   gotoxy(36,16); cprintf("³");
   gotoxy(16,15);
cprintf("ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ");

  gotoxy(20,11);   printf("Salary Tax");
  gotoxy(20,12);   printf("%s",empRec[x].ded_name1);
  gotoxy(20,13);   printf("%s",empRec[x].ded_name2);
  gotoxy(20,14);   printf("%s",empRec[x].ded_name3);
  gotoxy(20,16);   printf("Net Pay");

   gotoxy(39,11); printf("%.2f",empRec[x].tax );
   gotoxy(39,12); printf("%.2f",empRec[x].ded_n1 );
   gotoxy(39,13); printf("%.2f",empRec[x].ded_n2 );
   gotoxy(39,14); printf("%.2f",empRec[x].ded_n3 );
   gotoxy(39,16); printf("%.2f",empRec[x].netPay);
   }
  }
 if(idCheck==0)
  {
  gotoxy(2,19); cprintf("Employee record not found...
");
   delay(PAUSE);
   }
  gotoxy(2,19); cprintf("View deduction again? (Y/N)
");
  ch=0;
  while(ch != 'Y'&& ch != 'N')
   {
   ch=toupper(getch());
   }
  }
}

void linefill(int start)
{
textattr(0+(7<<4));
gotoxy(31,start); cprintf("                    ");
}

void exitSys()
{
window(8,4,72,22);
textattr(7+(0<<4)); clrscr();
gotoxy(16,10); printf("Please wait while system exits...
");
delay(PAUSE);
}
TESTING

Testing is the major control measure used during software development. Its basic
function is to detect errors in the software. During requirement analysis and design, the
output is a document that is usually textual and no executable. After the coding phase,
computer programs are available that can be executed for testing purpose. This implies
that testing not only, has to uncover errors introduced during coding, but also errors
introduced during previous phase. Thus the goal of testing is to uncover the requirements,
design and coding errors in the programs. So after testing the outputs of my project are as
follows:

                           ** Paste the outputs of your project
                       FUTURE SCOPE OF THE PROJECT

Our project will be able to implement in future after making some changes and
modifications as we make our project at a very low level. So the modifications that can
be done in our project are:

In future one change can be done by adding the fingerprints of the persons of which the
address is entered.And one more major change which can be done in this project is that to
add the snaps of the person of which the address is entered.We can also add or subtract
details of the individual.

				
DOCUMENT INFO
Shared By:
Categories:
Tags:
Stats:
views:82
posted:8/15/2012
language:English
pages:20