Apartment Visitors Management System
Apartment Visitors Management System
Apartment Visitors Management 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.
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.
Feasibility Study
•
Operational Feasibility
•
Technical Feasibility
•
Economical Feasibility
•
Motivational Feasibility
•
Scheduled 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 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.
Descriptive
Exploratory
Inferential
Predictive
Causal
Mechanistic
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
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:
PLATFORM USED:
Working of Java:
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
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.
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.
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.
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
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
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
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.
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.
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.
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.
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
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
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
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.