Nothing Special   »   [go: up one dir, main page]

Apartment Visitors Management System

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 24

1.

2 Introduction about Project

“Payroll Management” is a distributed application, developed to evaluate the


performance of employees working in any organization. It maintains the
information about a company, personal details of their employees, also the project
details assigned to particular developer. The application is actually a suite of
applications developed using Java.
It is simple to understand and can be used by anyone who is not even familiar with
simple employees system. It is user friendly and just asks the user to follow step by
step operations by giving him few options. It is fast and can perform many
operations of a company.
This software package has been developed using the powerful coding tools of
JAVA at Front End and Microsoft Access at Back End. Because of the Visual
features, the software is very user friendly. The package contains different
modules like Contacts, Search for property and other useful Links. This version of
the software has multi-user approach. For further enhancement or development of
the package, user’s feedback will be considered.
This project basically deals with five modules and their further sub modules. First
module is the employee module into which we can enter employee details such as
his name, address, phone number, his basic salary and many more. After that we
can view the details further by using the employee id, and we can modify the
details also. Similarly in department we have the details of all the HOD’s of the
departments. Next comes the salary module in this we can view the salary issued to
the employee. And can issue them to the employee we want to and can fix it to
them.
We can put the grades also in the grade module. Basically we create the grades in
this with specified details. We can view the details accordingly. We can just enter
the grade name and can view the details encapsulated in the grade. Other than this
we can view the whole thing all together by getting into the view grade section.
We can view the report also in this. It can be viewed in this easily that to which the
monthly salary has been allotted and for which month. We can also look out those
employees to whom the salary has not been issued and the further details also such
as for which month it has not been issued. This is the basic overview of the whole
project

AIM: To design the record book for employees of a firm.

OBJECTIVE: PAYROLL MANAGEMENT SYSTEM PROJECT


The main objective of our project is to prepare a record of all emplyees working in
a firm.
Ø Personal Record of all Employees.
Ø HODs of all Departments.
Ø Salary Calculation of all Employees.
Ø Grade Assigning to all Employees.
Ø Record of all Emplyees.

1.3 Present state of the art

Presently salary calculation is done manually, it take so much of time to compose


salary of all employees. It also takes very long time to make salary slip ready. Due
to manual process some time it takes very long time, in turn it delays the salary
distribution. This is a big problem to manage when salary is not generated in time.
The other main problem is errors, even with double cross check here or there some
errors will happen, this again create large problem. To solve all this the
organization require very good software to take care of all these.

1.4 Need of Computerization of System

The client uses MS Excel and maintains their records however it is not possible for
them to share the data from multiple system in multi user environment, there is lot
of duplicate work, and chance of mistake. When the records are changed they need
to update each and every excel file. There is no option to find and print previous
saved records. There is no security anybody can access any report and sensitive
data also reports of summary. This Payroll Management System is used to
overcome the entire problem which they are facing currently, and making complete
atomization of manual system to computerized system.

1.5 Proposed Software (What would s/w accomplish?)

The proposed software will solve all the problems they are facing now. This
software is designed such way that it will generate the salary automatically every
month in time. So there not much worries. This software also equipped with the
facility of checking the employees to whom no salary has been sanctioned. The
software built to generate individual pay slip and summary of the payroll.

CHAPTER 2 SYSTEM ANALYSIS


Feasibility Study of s/w includes its types

Feasibility Study

Operational Feasibility

Technical Feasibility

Economical Feasibility

Motivational Feasibility

Scheduled Feasibility

Feasibility study : PAYROLL MANAGEMENT SYSTEM PROJECT

Every project is feasible for given unlimited resources and infinitive


time. Feasibility study is anevaluation of the proposed system regarding its
workability, impact on the organization, ability to meet the user needs and
effective use of resources. Thus when a new application is proposed it normally
goes through a feasibility study before it is approved for development .Feasibility
and risk analysis and related in many ways. If a project risk is great and feasibility
of producing software is reduced. During the feasibility analysis in this project has
been discussed below in the abovementioned topics.

Operational Feasibility:

Feasibility of the working of the system after the installation inthe organization as
mentioned in the feasibility analysis.


Technical Feasibility:

Technical feasibility is frequently the most difficult area to ensure this stage. It is
essential that the process of analysis and definition to be conducted parallel toan
assessment of the technical feasibility. The consideration that is normally
associated with technical feasibility includes the resources availability of the
Organization where the project is to be developed and implemented. By taking
these facts into consideration before developing the resource availability at Retail
Outlet of Hindustan Petroleum was observed. As very limited resources are
required for this project hence this project is considered feasible for development.

Economic Feasibility:

An evaluation of development cost is weighted against the ultimate income or


benefits derived from the developed system. There was no need of extra hardware
and software for development of this project. Hence this project has
economically justified for development in this organization.

Motivational Feasibility:

An evaluation of the probability that the organization is sufficient motivation to


support the development and implementation of the application with necessary
user participation, resources, training etc. The interest and support shown by
the organization during the system study do not seem that the new system
developed to have efficient support from the organization.

Schedule Feasibility:

An evaluation of the time needed for the development of this project. The time
schedule required for the development of this project is very important, since more
development time effects machine time, costs and delays in the development of the
other systems. So the project should be complete within affixed schedule
time as far as the organization is concerned.

Project Schedule:

The major output of the production process is the project schedule. This is a
graphic representation of the entire project related activities necessary to produce
successful project. They allow the project manager to efficiently coordinate and
facilitate the efforts of the entire project team for the live project. This project
schedule dynamic in nature that will undoubtedly be modified as the project
proceeds .Without the master schedule the effective project control would be
virtually impossible. If the schedule does not exist it is impossible to accurately
estimate the project status. Projects that are not complete within the time frame
established by the master schedule almost invariably exceed planned costs. The
most complaint is that production takes too much time and costs too much money
.For schedule to be effective, it must process several major characteristics:-

Understandable by those who will use it.

Sufficient detail to be provide on the basis of measurement and control of project
progress.

Capable of highlighting critical tasks.

Flexible and easily modifiable.

Confirm to available resources.

Compatible with the system available in the organization.

2.2 Analysis Methodology (Types) - PAYROLL MANAGEMENT SYSTEM


PROJECT

 Descriptive
 Exploratory
 Inferential
 Predictive
 Causal
 Mechanistic

1. Descriptive (least amount of effort): The discipline of quantitatively describing


the main features of a collection of data. In essence, it describes a set
of data.
- Typically the first kind of data analysis performed on a data set
- Commonly applied to large volumes of data, such as census data
-The description and interpretation processes are different steps
- Univariate and Bivariate are two types of statistical descriptive analyses.
- Type of data set applied to: Census Data Set – a whole population

2. Exploratory: An approach to analyzing data sets to find previously unknown


relationships.
- Exploratory models are good for discovering new connection.
- They are also useful for defining future studies/questions
- Exploratory analyses are usually not the definitive answer to the question at hand,
but only the start
- Exploratory analyses alone should not be used for generalizing and/or predicting
- Remember: correlation does not imply causation
- Type of data set applied to: Census and Convenience Sample Data Set (typically
non-uniform)
- a random sample with many variables measured

3. Inferential: Aims to test theories about the nature of the world in general (or
some part of it) based on samples of “subjects” taken from the world (or some part
of it). That is, use a relatively small sample of data to say something about a bigger
population.
- Inference is commonly the goal of statistical models
- Inference involves estimating both the quantity you care about and your
uncertainty about your estimate
- Inference depends heavily on both the population and the sampling scheme
- Type of data set applied to: Observational, Cross Sectional Time Study, and
Retrospective Data Set – the right, randomly sampled population

4. Predictive: The various types of methods that analyze current and historical
facts to make predictions about future events. In essence, to use the data on some
objects to predict values for another object.
- The models predicts, but it does not mean that the independent variables cause
- Accurate prediction depends heavily on measuring the right variables
- Although there are better and worse prediction models, more data and a simple
model works really well
- Prediction is very hard, especially about the future references
- Type of data set applied to: Prediction Study Data Set – a training and test
data set from the same population

5. Causal: To find out what happens to one variable when you change another.
- Implementation usually requires randomized studies
- There are approaches to inferring causation in non-randomized studies
- Causal models are said to be the “gold standard” for data analysis
- Type of data set applied to: Randomized Trial Data Set – data from a randomized
study
6. Mechanistic (most amount of effort): Understand the exact changes in variables
that lead to changes in other variables for individual objects.
- Incredibly hard to infer, except in simple situations
- Usually modeled by a deterministic set of equations (physical/engineering
science)
- Generally the random component of the data is measurement error
- If the equations are known but the parameters are not, they may be inferred with
data analysis
- Type of data set applied to: Randomized Trial Data Set – data about all
components of the system

2.3 Choice of Platforms s/w & h/w


FRONT END:

The programming has been done using the language Java. It is Sun Microsystems’s
strategic language for platform independent programming. It is easy to use,
efficient and flexible. This language is preferred because one can build a program
using this object oriented and platform independent programming with less effort
than with any other programming language. It’s a natural language for building
database applications, owing to the level and sophistication of the tools included
with the language.

BACK END:

Microsoft Access is one of the leading database management systems available on


the market today. It is easy to use and administer, and it comes with tools and
wizards that make it easy to develop applications. The database itself has been
redesigned to automatically perform many tuning functions, leaving you free to
focus on most important tasks.

PLATFORM USED:

The Payroll Management System is targeted at Microsoft Windows platforms.

The Java Architecture:


Java’s strength comes from its unique architecture. The Java needed a language
that was above all, simple for the programmer to use. Yet in order to create reliable
network applications, Java needed to be able to run securely over a network and at
the same time, work on a wide range of platforms. Java fulfills all of these goals
and more.

Working of Java:

As with many other programming languages, Java uses a compiler to convert


human-readable source code into executable programs. Java compiler generates
architecture-independent byte codes. The byte codes can be only a Java virtual
machine, which is an ideal Java architecture, usually implemented in software
rather than hardware. The compilation process is illustrated as under.

Java Features:

The major characteristics that make Java such powerful development tool are its
security, open standards, memory management, object oriented, multithreading and
it’s distributed and dynamic characteristics.

Simple

Java was designed to be the easy for professional programmer to learn and use
effectively. If one already understands the basic concepts of object oriented
programming, learning Java will be even easier.

Robustness

The multiplatform environment of the Web places extraordinary demand on a


program, because the program must execute reliably in a verity of systems. Thus
the ability to create robust programs was given a priority in the design of Java. To
better understand how Java is robust, consider two of the reasons for program
failure, memory management mistakes and mishandled exception conditions (i.e.
run time error). Memory management can be difficult, tedious task in traditional
programming environments. For example in C/C++, the programmer must
manually allocate and free all dynamic memory. This sometimes lead to problems,
because programmer will either forgot to free memory that has been previously
allocated or, worse, try to free some memory that another part of their code is still
using. Java virtually eliminates these problems by managing memory allocation
and dallocation, because java provides for you. Exceptional conditions in
traditional environments often arises in a situation such as division by zero or “file
not found” and thy must be managed with clumsy and hard-to-hard construct.

Security Features

Security is probably the main problem facing Internet developers. Users are
typically afraid of two things: confidential information being compromised and
their computer systems being corrupted or destroyed by hackers. Java’s built in
security addresses both of these concerns. Java built-in security measures ensure
java programs will operates within the rules of the VM & prevent untrustworthy
programs from accessing system resources.

Open Standards/Platforms Independence

Today, java VMs are available for more than a dozen diff. Hardware and Operating
system combination. The exciting aspect of java’s cross-platform capability is that
java class files do not need to be compiled for each platform in advance. The same
compiled java program will work on the PC, Macintosh & every other platform
that runs a java VM. A java application we write on our system today should run
on every supported platform, even those do not exist yet. This reduces the
development time by a very big factor.

Distributed and Dynamic

In the windows operating systems, parts of programs can be placed into Dynamic
link libraries so that they can be shared and loaded Dynamically; i.e. when the
program is running. The operating system does the final stage of linking at
execution time. Using shared DLL (Dynamic Link Library) saves memory and
improves the modality of the software.
Java takes Dynamic Libraries a step further. The VM class loader fetches class
files from the network, as well from the disk, providing location transparency,
making java applications distributed as well as Dynamic.

Object-Oriented
Object Oriented Programming (OOP) is a way to software that is reusable,
extensible & maintainable. Java is an object-oriented language that is it has
facilities for OOP incorporated into the language. In OOPs it attempts to break a
problem into its component parts. The solution focuses on these independent
objects and their relationship to other objects.

Multithreading

A single-threaded application has one thread of execution running at all times, all
such programmers can do only one task at a time. If a single threaded program
need to perform a task that will take several-several minutes. E.g. downloading its
user-interface will usually become unresponsive while the task is in progress. A
multithreaded application can have several threads of execution running
independently and simultaneously. Multithreading is commonly used to perform
the following functions.
· Maintaining user-interface responsiveness: If our application needs to perform a
time consuming task, we can use multiple threads to prevent our user interface
from becoming unresponsive while the task is in progress. If our program will be
downloading information from the Internet, we can create a separate thread for the
Download
routine.
This will keep our user-interface running at nearly full-speed
while the Download is in progress.

· Simple Multitasking: Multitasking allows us to run multiple instances of a


process quit easily. The Downloading routine just mentioned can be extended so
that the program can transfer multiple files simultaneously and still will keep the
user interface well behaved. All we need to do is create another thread for each file
to Download.
· Building Multi-user Applications: Multithreading is often used when building
server applications. Server applications wait for request to arrive and then establish
conversations with the requester. It is much easier to write a routine that handles a
single conversation and spawns multiple copies of that routine than it is to write a
piece of code that handles multiple conversations at once.
· Multiprocessing: Many operating system support machines with multiple
processors. Most these system are unable to break a single thread of execution into
multiple pieces
for execution on diff. Processors. By
breaking an application into diff. Threads, it is possible to make the best use of
processing power.

Java synchronized keyword can be used to prevent two threads from entering the
same critical block of code at the same time. This is vital because some program
steps t need to be made together as one atomic group.

Java Packages

Java packages simply collect classes on more pragmatic basis. Classes with related
functionality are bundled together in same packages, whether they share code,
data, or neither. In addition to their obvious structuring benefits packages use
namespace partitioning, which means that every class contained in a package has a
unique name that cannot conflict (collide) with class name defined elsewhere.
Since packages give an easy handle on the entire hierarchy, they will guide to
explore the java class hierarchy. The java 1.2 releases have about 60 java. *
packages. The most commonly used packages are:
 Package java.lang contains the main language support classes. These with
object wrappers, strings, multithreading, and related areas.
 Package java.util contains language support classes of more utilitarian
nature. These include collection and calendar classes, as well as some abstract
design codified by the interfaces comparator, iterator and observer.
 Package java.io provides device-independent file and steam I/O service.
 Package java.awt hides the bulk of all graphical classes. Because it contains
java’s abstract window tool kit (AWT), contained in java.awt and 12 sub packages,
the package should really be considered as the heart of the entire hierarchy.
 Package java.net combines the classes supporting low-level Internet
programming plus pluggable look-and-feel.
 Package javax.swing combines the classes for interfacing in a graphical
manner.
 Package java.sql provides the classes & methods for database connectivity.

SYSTEM DESIGN

3.1 Design methodology


A software require specification document tells us what a system does and
becomes input to the design process. The purpose of design phase is to produce a
solution to problem given SRS document.

SOFTWARE REQUIREMENT SPECIFICATION - PAYROLL


MANAGEMENT SYSTEM PROJECT

Software Requirement Specification (SRS) Document

The SRS is a specification for a particular software product, program or a set of


program that perform certain functions in specified environment. The two
scenarios entirely different purpose for the document. First case SRS is used to
define the needs and expectations of the user. The second case, SRS is written for
different purpose and serve as a centre document between customers and develop.
Nature of SRS: -
The basic issues that SRS writer shall address the following.
1.Functionality: - What the software supposed to do?
2. External Interface: - How does the software interact with people, the system
hardware
and other software?
3. Attributes: -What re the considerations for portability, correctness, security,
reliability etc.?

Characteristic of a good SRS An SRS should be


1. Correct
2. Complete
3. Consistent
4. Verifiable
5. Modifiable
6. Traceable
A well-designed, well-written SRS accomplishes four major goals:
· It provides feedback to the customer. An SRS is the customer's assurance
that the development
· It serves as a product organization understands the issue or problems to be solved
and the software behavior necessary to address those problems.
· It decomposes the problem into component parts. The simple act of
writing down software requirements in a well-designed format organizes
information, place borders around the problem, solidifies ideas and help break
down the problem into its component parts into an orderlyfashion.
· It serves as an input to the design specification. As mentioned previously,
the SRS serves as the parent document to subsequent software design specification
and statement of work. Therefore the SRS must contain sufficient detail in the functional
system requirement so that a design solution can be devised.
· Validation check. The SRS also serves as a parent document for testing
and validation strategies that will be applied for the requirements for verification.
SRS are typically developed during the first stage of "Requirements
Development" which is the initial product development phase in which
information is gathered about what requirements are needed or not.
This information gathering stage can include onsite visit, questionnaires, surveys,
interviews and perhaps a return-on-investment (ROI) analysis of the customer or
client's current business environment. The actual specifications, then is written
after the requirements have been gathered and analyze.

SRS INCLUDE:
Several standard organizations (including the IEEE) have identified nine topics
that must be addressed when designing and writing an SRS:
Interfaces
Functional capabilities
Performance Levels
Data Structure Elements
Safety
Reliability
Security/Privacy
Quality
Constraints

TABLES: PAYROLL MANAGEMENT SYSTEM PROJECT

Mainly, in this project we have four tables that are employee table, department
table, salary table and grade table. After filling all the enteries the detail of all the
employees are ready.
STATUS: Working

AREAS OF APPLICATION: For Small Scale Industries


TARGET USERS: Large scale version can be implemented in both small scale &
medium scale.
ADVANTAGES: 1. Cost effective
2. Simple to operate
DESIGN PROCESS
The computer system design process is an exercise of specifying how, the system
will work. It is an iterative process, which is based on what the system will be do
as shown in the feasibility report.Mainly, following five parts have been included
in the system design process
OUTPUT DESIGN
The starting point of the design process is the proper knowledge of system
requirements which will normally be converted in terms of output.

INPUT DESIGN
Once the output requirements have been finalized, the next step is to find out what
data need to be made available to the system to produce the desired outputs. The
basic documents in which these data are available need to be identified. If
necessary, these documents may have to be revised or new documents may have to
be introduced.
FILE DESIGN
Once the input data is captured in the system, these may to be preserved either for
a short or long period. These data will generally be stored in files in a logical
manner. The designer will have to devise the techniques of storing and retrieving
data from these files.
PROCEDURE DESIGN
This step involves specifications of how processing will be performed. In this,
there are two aspects:
· Computer Procedure
The computer procedure will specify what functions will be carried out on
computer, what will be different programs and in what sequence the programs will
be run.
· NON-COMPUTER PROCEDURE
The non-computer procedure will specify the manual procedures for feeding input
data, receiving outputs etc.
· CONTROL DESIGN
The control design indicates necessary procedures which will ensure correctness of
processing, accuracy of data, timely output etc. this will ensure that the system is
functioning as per plan.
· DEVELOPMENT AND DEPLOYMENT DESIGN
Major responsibilities include system Requirement Study, Preparing System
Design Document, Preparing the Program (Form) Specs, Peer Review of the
Specs, Implement Quality procedures as per the QMS Document, Documentation
of SRS Revalidation & Design Documents, thorough grasping of the user
functionality and applying, approving the same in the project, Developing, Testing
& Debugging of Forms, User Training and Implementation of the module.
· INPUT DESIGN(INTRODUCTION)
Once the analysis and design of the system has been done, it would be necessary to
identify the data that are required to be processed to produce the outputs. Input is
one of the most expensive phases of the operation of a computerized system and
creates sometimes a major problem. Different type of problem with a system can
usually be traced back to faulty input design method needless to say, therefore, that
the input data are the lifeblood of a system and have to be analyzed and designed
with utmost care and consideration. Input design features can ensure the reliability
of the system and generate correct reports form the accurate data. The input design
also determines whether the user can interact efficiently with the system.
· ELEMENTS OF INPUT DATA
Inaccurate input data are the most common cause of errors in data processing.
Errors entered by data entry operators can be controlled by input design. Input data
are collected and organized into groups of similar data. Once identified,
appropriate input media are selected for processing.
· INPUT DATA
The goal of designing input data is to make data entry as easy, logical and error
free from errors as possible. In entering data, operators need to know the
following:
· The allocated space for each field.
· Field sequence, which much match that in the source document.
· The format in which data fields are entered for example, filling out the date
field is required through the edited format mm/dd/yy.
· When we approach input data design, we design the source document. Let us
elaborate on each step.
SOURCE DOCUMENTS
Source data are captured initially on original paper or a source document. For
example, a cheque written against an account is a source document. When it
reaches the bank, it is encoded with special magnetic ink character recognition so
that a reader that is part of the information system of the bank can process it.
Therefore, source documents initiate a processing cycle as soon as they are entered
into the system. Source documents may be entered into the system from punch
cards, from diskettes, or even directly through the keyboard.
A source document should be logical and easy to understand. Each area in the form
should be clearly identified and should specify for the user what to write and where
to write it.A source document may or may not be retained in the proposed system.
Thus, each source document may be evaluated in terms of Its continued use in the
proposed system .The extent of modification for the proposed system &
Replacement by an alternative source document.

INPUT DESIGN GUIDELINES


The design of input play very significant role in getting the correct output. It covers
al phases of input from creation of initial data (original recording) to actual
entering the data to the system for processing. The input design is the link that ties
the information system into the world of its users. Some features of design may
vary depending on whether the system is batch-oriented or on-line. Here, we will
discuss the various objectives of input design. They focus on:
· Controlling amount of input
· Avoiding delay
· Avoiding errors in data
· Avoiding extra steps
· Keeping the process simple

EACH OF THE FIVE OBJECTIVES OF INPUT DESIGN IS BRIEFLY


DISCUSSED BELOW:
· CONTROLLING AMOUNT OF DATA
An effective design controls the quantity of data for input for the following
reasons:
Firstly, data preparation and data entry operations depend on people. Since labor
costs are high, the cost or preparing and entering data is also high. It is quite
evident, then that reducing data requirements mean lowering cost through reduced
labor expense.
Secondly, the input phase of computing can be slow process and take many times
longer than that needed by computers to carry out their tasks. In fact, the computer
itself may sit idle until data is prepared and input for processing. By reducing input
requirements, the analyst will speed the entire process from data capture to
processing to provide result to users.
· AVOIDING DELAY
When processing is delayed owing to data preparation or data entry, the cause is
called a bottleneck. Avoid bottlenecks when designing input should always be one
of the objectives of the analyst.

· AVOIDING ERRORS IN DATA


The third objective deals with errors. In one sense, the rate at which errors occur is
dependent on the quantity of data. Since the lower the amount of data is inputted,
there are fewer opportunities for the error to occur.
Firstly, the analyst can reduce this number by reducing the volume of data dust
must be entered for each transaction.
Secondly, the analyst can also affect error rates of an operation through design.
The manner in which data must be entered can reduce the chance of errors.
Still, a third aspect of error control is the need to detect errors when they do occur.
Checks and balances in the data entry programs, called input validation techniques,
also detect errors input.
OUTPUT DESIGN (INTRODUCTION)
Presenting the data processed by a computer-based information system in an
attractive and usable form has become very essential these days’ success and
acceptance of a system to some extent depends on good presentation. Therefore,
system analyst must know fully how to design output report in an attractive way.
Many new output devices are being introduced in the market because of recent
development in computer technology. System analyst must be aware of these new
technologies and try to use these new output devices if possible. Currently,
excellent graphic displays are widely available. Speech output systems are also fast
emerging.
There are three main reasons why outputs from the computer are required. They
are:
· For communication to the persons concerned.
· For re-input to the computer for being connected with other data and further
processing.
· For permanent storage.

TYPES OF OUTPUT:
Outputs of a system can take different forms. The most common are reports,
displays on screen, printed forms etc. the outputs also vary in terms of their
contents, type of stationery. Frequency and timing etc. besides, due consideration
also need to be given as to who will use the output and for what purpose. All these
points must be kept in mind while designing outputs so that the objectives of the
system are met in the best possible way.

Outputs of a data-processing system can be placed into two categories:


· Application Output
· Operating Output

APPLICATION OUTPUT
These are the outputs desired out of the system to meet its objectives. These are of
three types:
· Output as a basis for decision-making. This type of output is generally required
by management for decision-making purposes.
· Output as a requirement to meet a functional objective. Invoices, Excise Gate
Pass, Purchase Orders are the examples of such output.
· Statutory outputs: All organization is required to produce a certain amount of
reports and forms as required by law.

OPERATING OUTPUT
These outputs are mainly generated for use of EDP staff and give various
indications as to how the system operates. System logs, error messages, status
indicators etc. are the examples of such output. These types of output are not
concerned for the users.

Database
We have various tables in our project namely:
· Employee Table
· Department table
· Grade Table
· Salary Table
All the above tables are now briefly explained in which the Primary key and the
Data Type of all fields are discussed.

Employee Table
In this Table, we have the various fields to be filled about the employee who are
working in the firm. All the personal details of all employees are filled. These
fields include Name, ID, EmailID, etc.of all the employees.
Field Name Key Data Type
ID Primary Char
Name - Char
Age - int
Address - Int
Contact No. - Int
EmailID - Char
Department - Char
D.O.J - Int
Grade - Char

Department Table

In this Table, entries for the department name and its HOD name are filled that is
the HOD is assigned to the Department. All Departments have their respective
HOD.
Field Name Key Data
Type
Name Primary Char
HOD Name - Char

Grade Table
Grade Table takes the entries of Basic Salary, HRA, DA, TA, PF, IT and Net
Salary are being filed and for the particular Grade, all these values are assigned.
Grade is assigned according to the job of the employee.
Field Name Key Data
Type
Name Primary
Char
HRA -
Int
TA -
Int
DA -
Int
PF -
Int
IT -
Int

Salary Table
In Salary Table also, we have the fields for Basic Salary, D.O..J, HRA, DA, TA,
PF, IT. For the particular salary, the values of all these fields are assigned.

Field Name Key


Data Type
ID Primary
Char
BS -
Int
DOJ -
Int
HRA -
Int
DA -
Int
TA -
Int
PF -
Int
IT -
Int
Net Salary -
Int
Month -
Char

Testing Methodology (Types) - PAYROLL MANAGEMENT SYSTEM


PROJECT

Test cases are developed using various test techniques to achieve more effective
testing. By this, software completeness is provided and conditions of testing which
get the greatest probability of finding errors are chosen. So, testers do not guess
which test cases to chose, and test techniques enable them to design testing
conditions in a systematic way. Also, if one combines all sorts of existing test
techniques, one will obtain better results rather if one uses just one test technique.
Software can be tested in two ways, in another words, one can distinguish two
different methods:
1. Black box testing and
2. White box testing.

4.2 Unit Testing


Unit testing, also known as component testing , refers to tests that verify the
functionality of a specific section of code, usually at the function level. In an
object-oriented environment, this is usually at the class level, and the minimal unit
tests include the constructors and destructors.
These types of tests are usually written by developers as they work on code (white-
box style), to ensure that the specific function is working as expected. One function
might have multiple tests, to catch corner cases or other branches in the code. Unit
testing alone cannot verify the functionality of a piece of software, but rather is
used to assure that the building blocks the software uses work independently of
each other.
Unit testing is a software development process that involves synchronized
application of a broad spectrum of defect prevention and detection strategies in
order to reduce software development risks, time, and costs. It is performed by the
software developer or engineer during the construction phase of the software
development lifecycle. Rather than replace traditional QA focuses, it augments it.
Unit testing aims to eliminate construction errors before code is promoted to QA;
this strategy is intended to increase the quality of the resulting software as well as
the efficiency of the overall development and QA process.
Depending on the organization's expectations for software development, unit
testing might include static code analysis, data flow analysis metrics analysis, peer
code reviews, code coverage analysis and other software verification practices.

4.3 Integration Testing

Integration testing is any type of software testing that seeks to verify the interfaces
between components against a software design. Software components may be
integrated in an iterative way or all together ("big bang"). Normally the former is
considered a better practice since it allows interface issues to be located more
quickly and fixed .Integration testing works to expose defects in the interfaces and
interaction between integrated components (modules). Progressively larger groups
of tested software components corresponding to elements of the architectural
design are integrated and tested until the software works as a system

4.4 System Testing

System testing, or end-to-end testing, tests a completely integrated system to verify


that it meets its requirements. For example, a system test might involve testing a
logon interface, then creating and editing an entry, plus sending or printing results,
followed by summary processing or deletion (or archiving) of entries, then logoff.
In addition, the software testing should ensure that the program, as well as working
as expected, does not also destroy or partially corrupt its operating environment or
cause other processes within that environment to become inoperative (this includes
not corrupting shared memory, not consuming or locking up excessive resources
and leaving any parallel processes unharmed by its presence).

4.5 Alpha/ Beta Testing

Alpha testing
Alpha testing is simulated or actual operational testing by potential
users/customers or an independent test team at the developers' site. Alpha testing is
often employed for off-the-shelf software as a form of internal acceptance testing,
before the software goes to beta testing.
Beta testing
Beta testing comes after alpha testing and can be considered a form of
external user acceptance testing. Versions of the software, known as beta
versions, are released to a limited audience outside of the programming team. The
software is released to groups of people so that further testing can ensure the
product has few faults or bugs. Sometimes, beta versions are made available to the
open public to increase the feedback field to a maximal number of future users

4.6 White Box Black Box Testing

White box testing is highly effective in detecting and resolving problems, because
bugs (bug or fault is a manifestation of an error in a software) can often be found
before they cause trouble. We can shortly define this method as testing software
with the knowledge of the internal structure and coding inside the program . White
box testing is also called white box analysis, clear box testing or clear box analysis.
It is a strategy for software debugging (it is the process of locating and fixing bugs
in computer program code or the engineering of a hardware device) in which the
tester has excellent knowledge of how the program components interact. This
method can be used for Web services applications, and is rarely practical for
debugging in large systems and networks ). Besides white box testing is considered
as a security testing (the process to determine that an information system protects
data and maintains functionality as intended)method that can be used to validate
whether code implementation follows intended design, to validate implemented
security functionality, and to uncover exploitable vulnerabilities Black box testing
is testing software based on output requirements and without any knowledge of the
internal structure or coding in the program .In another words, a black box is any
device whose workings are not understood by or accessible to its user. For
example, in telecommunications, it is a resistor connected to a phone line that
makes it impossible for the telephone company’s equipment to detect when a call
has been answered. In data mining, a black box is an algorithm that doesn’t
provide an explanation of how it works. In film–making, a black box is a dedicated
hardware device: equipment that is specifically used for a particular function, but
in the financial world, it is a computerized trading system that doesn’t make its
rules easily available.
CHAPTER 5

5.1 Conclusion - PAYROLL MANAGEMENT SYSTEM PROJECT

With the theoretical inclination of our syllabus it becomes very essential to take the
utmost advantage of any opportunity of gaining practical experience that comes
along. The construction of this Minor Project “PAYROLL MANAGEMENT
SYSTEM” was one of these opportunities. It gave us the requisite practical
knowledge to supplement the already taught theoretical concepts thus making us
more competent as a computer engineer.

The project from a personal point of view also helped us in understanding the
following aspects of project development:
 The planning that goes into implementing a project.
 The importance of proper planning and an organized methodology.
 The key element of team spirit and co-ordination in a successful project

The project also provided us the opportunity of interacting with our teachers and to
gain from their vast experience.

5.2 Limitation of System

· In the present system we cannot search for the report of an employee by


entering the name of that employee. Search is based on the employee id.
· If the payroll company is understaffed and has an abundance of clients, it may
become difficult to reach someone when you need it immediately such as when
paycheck discrepancies arise.
· Because the payroll company is located off-site, it is difficult to always
know what’s going on with your payroll until the actual pay date arrives
5.3 Future Scope for Modification

· Although we tried to be as thorough as possible in the implementation of our


project but there were a large number of features we could not implement due to
want of time or for other reasons.

You might also like