New Project
New Project
ON
SUBMITTED TO
In Partial fulfilment of the Requirement for the award of the post Graduate Degree
BY
PAMMI POOJA
(5174-23-862-082)
SHIRISHA
DEPARTMENT OF
2023-2025
INDEX
ABSTRACT 1
1. INTRODUCTION 2-3
1.1 EXISTING SYSTEM & DISADVANTAGES
1.2 PROPOSED SYSYTEM &ADVANTAGES
1.3 MODULES
2. SYSTEM ANALYSIS 4-8
2.1 SDLC METHODOLOGIES (WATERFALL MODEL)
2.2 SYSTEM ARCHITECTURE
3. FEASIBILITY REPORT 9-10
3.1 ECONOMICAL FEASIBILITY
3.2 OPERATIONAL FEASIBILTY
3.3 TECHNICAL FEASIBILITY
3.4 SOCIAL FEASIBILITY
4. SOFTWARE REQUIREMENT SPECIFICATION 11
4.1 SOFTWARE REQUIREMENTS
4.2 HARDWARE REQUIREMENTS
5. SELECTED SOFTWARE 12-30
5.1 CLIENT SERVER
5.2 JAVASCRIPT
5.3 HTML
5.4 JDBC
5.5 JSP
6. SYSTEM DESIGN 31-37
6.1 UML DIAGRAMS
9. CONCLUSION 48
10. REFERENCE 49
ABSTRACT:
• Software personnel management system allows employees to record time-
card electronically and automatically generates pay slips based on number
of hours worked and total amount of sales.
• The system will run on individual employee desktops where the employee
can access and edit only their personal details.
• The system will maintain information on the employee in the company in
order to calculate the payroll. The employees will also be able to know from
the system, the number of hours worked per day and total of all hours
spent on a project and total pay received year-to-date etc.
• Payroll administrators keep track of all the information including adding
new employees, deleting employees, and edit information and run reports.
The system will generate records and performance report of the
employees.
1
1. INTRODUCTION
Disadvantages:
1. It’s not transparent
2. Need to go to office physically
1.2 Proposed System:
Software personnel management system allows employees to record time-card
electronically and automatically generates pay slips based on number of hours
worked and total amount of sales. The system will run on individual employee
desktops where the employee can access and edit only their personal details. The
system will maintain information on the employee in the company in order to
calculate the payroll. The employees will also be able to know from the system,
the number of hours worked per day and total of all hours spent on a project and
total pay received year-to-date etc. Payroll administrators keep track of all the
information including adding new employees, deleting employees, and edit
information and run reports. The system will generate records and performance
report of the employees.
Advantages:
1. It provides better and transparent system
2. We can easily track the payroll
3. It automates the process
2
1.3 Modules:
The entire project is divided into three modules, and they are
Admin Module
The admin will monitor the website from anywhere. He can see the details of all
employees, and payroll details. Admin can see the website after login.
Employee Module
Employee, login into the machine then he can update the profile, he can see the
payroll details.
• The system will run on individual employee desktops where the employee
can access and edit only their personal details.
Reports
• In this module can view the reports. In this module both employee and
admin can view the payroll reports date wise and employee wise
3
2. SYSTEM ANALYSIS
Waterfall model indicates that all the SDLC steps will be going on step by step. In
this model once one stage completed then only it will start another process. This
will be implemented when the requirements well known and clearly defined.
In this model we can implement all the steps one by one. First, we will do
requirements gathering i.e., in this step business analyst will collect the all-
functional requirements from the client and will discuss with the manager and
development team. Second step is analysis where people can analyse the
requirements so that they will do risk basement, risk mitigation, risk controlling
steps. And also, they will do the cost-time analysis to estimate the cost. They will
also do the detail feasible study over the requirements of project.
In third phase called design page generally people will design the project i.e.
represent will prepare the uml diagrams and prototypes for project. And then
developers will start programing or coding based on design. Finally testing team
will test the content to identify and fix the bugs. After successful user acceptance
testing application will be deployed and maintained in the client machine.
The waterfall model was selected as the SDLC model due to the following reasons:
4
And if we don’t have any confusion in requirements.
We can easily manage the review process and task management.
Every stage defined clearly and with timelines
5
2.2 SYSTEM ARCHITECTURE
INPUT DESIGN
The input design is the link between the information system and the user. It
comprises the developing specification and procedures for data preparation and
those steps are necessary to put transaction data in to a usable form for
processing can be achieved by inspecting the computer to read data from a
written or printed document or it can occur by having people keying the data
directly into the system. The design of input focuses on controlling the amount of
input required, controlling the errors, avoiding delay, avoiding extra steps and
keeping the process simple. The input is designed in such a way so that it provides
security and ease of use with retaining the privacy. Input Design considered the
following things:
OBJECTIVES
6
errors in the data input process and show the correct direction to the
management for getting correct information from the computerized system.
3. When the data is entered it will check for its validity. Data can be
entered with the help of screens. Appropriate messages are provided as when
needed so that the user will not be in maize of instant. Thus, the objective of
input design is to create an input layout that is easy to follow
OUTPUT DESIGN
8
3. Feasibility Report
A significant result of starter examination is the assurance that the framework
solicitation is attainable. “The possibility of the venture is broke down in this stage
and strategic agreement is advanced with a general arrangement for the task and
some cost evaluations. During framework investigation the attainability
investigation of the proposed framework is to be done. This is to guarantee that
the proposed framework isn't a weight to the organization. For attainability
investigation, some comprehension of the significant necessities for the
framework is essential”. This is conceivable just in the event that it is practical
inside restricted asset and time. The prime feasibility considerations are:
This investigation is done to check the financial effect that the framework will
have on the association. “The measure of reserve that the organization can fill the
innovative work of the framework is restricted. The uses must be defended. In
this manner the created framework also inside the spending limit and this was
accomplished in light of the fact that the vast majority of the innovations utilized
are openly accessible. Just the modified items must be bought”.
This area of feasibility makes sure that the project satisfies all the requirements
that were discusses during initial requirement analysis phase. Our project met all
the requirements proposed earlier. It made sure that the modules discussed
9
during the proposing of the system were implemented with stable accuracy and
without any errors.
This examination is done to check the specialized practicality, that is, the
specialized necessities of the framework. “Any framework created must not have
an intense interest on the accessible specialized assets. This will prompt levels of
popularity on the accessible specialized assets. This will prompt levels of
popularity being put on the customer. The created framework must have a
humble necessity, as just negligible or invalid changes are required for actualizing
this framework”.
10
4. Software Requirement Specifications
4.1 Software Requirements:
Operating System - Windows
Coding Language - Java/J2EE(JSP, JDBC)
Front End - HTML, CSS
Server - Apache Tomcat
IDE - -Eclipse
Back End - My SQL, SQLYOG
➢ RAM - 4 GB (min)
➢ Monitor - SVGA
11
5. Selected Software
5.1 Client Server
Over view:
With the varied topic in existence in the fields of computers, Client Server is one,
which has generated more heat than light, and also more hype than reality. This
technology has acquired a certain critical mass attention with its dedication
conferences and magazines. Major computer vendors such as IBM and DEC, have
declared that Client Servers is their main future market. A survey of DBMS
magazine revealed that 76% of its readers were actively looking at the client
server solution. The growth in the client server development tools from $200
million in 1992 to more than $1.2 billion in 1996.
Client server implementations are complex but the underlying concept is simple
and powerful. A client is an application running with local resources but able to
request the database and relate the services from separate remote server. The
software mediating this client server interaction is often referred to as
MIDDLEWARE.
The key client server idea is that client as user is essentially insulated from the
physical location and formats of the data needs for their application. With the
proper middleware, a client input from or report can transparently access and
manipulate both local database on the client machine and remote databases on
one or more servers. An added bonus is the client server opens the door to multi-
vendor database access indulging heterogeneous table joins.
12
client server middleware provides a flexible interface between client and server,
who does what, when and to whom.
Distributed Concept.
The browser specific components are designed by using the HTML standards, and
Server Pages.
13
Communication or Database Connectivity Tier
The Communication architecture is designed by concentrating on the Standards of
the standards of higher cohesion and limited coupling for effectiveness of the
operations.
About Java
Initially the language was called as “oak” but it was renamed as “Java” in 1995.
The primary motivation of this language was the need for a platform-independent
(i.e., architecture neutral) language that could be used to create software to be
embedded in various consumer electronic devices.
Java is a programmer’s language.
14
Java has had a profound effect on the Internet. This is because; Java expands the
Universe of objects that can move about freely in Cyberspace. In
Features of Java
Security
Every time you that you download a “normal” program, you are risking a viral
infection. Prior to Java, most users did not download executable programs
frequently, and those who did scanned them for viruses prior to execution. Most
users still worried about the possibility of infecting their systems with a virus. In
addition, another type of malicious program exists that must be guarded against.
This type of program can gather private information, such as credit card numbers,
bank account balances, and passwords. Java answers both these concerns by
providing a “firewall” between a network application and your computer.
Portability
15
helps create portability. Indeed, Java’s solution to these two problems is both
elegant and efficient.
The key that allows the Java to solve the security and portability problems is that
the output of Java compiler is Byte code. Byte code is a highly optimized set of
instructions designed to be executed by the Java run-time system, which is called
the Java Virtual Machine (JVM). That is, in its standard form, the JVM is an
interpreter for byte code.
Translating a Java program into byte code helps makes it much easier to run a
program in a wide variety of environments. The reason is, once the run-time
package exists for a given system, any Java program can run on it.
Although Java was designed for interpretation, there is technically nothing about
Java that prevents on-the-fly compilation of byte code into native code. Sun has
just completed its Just In Time (JIT) compiler for byte code. When the JIT compiler
is a part of JVM, it compiles byte code into executable code in real time, on a
piece-by-piece, demand basis. It is not possible to compile an entire Java program
into executable code all at once, because Java performs various run-time checks
that can be done only at run time. The JIT compiles code, as it is needed, during
execution.
Java, Virtual Machine (JVM)
Beyond the language, there is the Java virtual machine. The Java virtual machine
is an important element of the Java technology. The virtual machine can be
embedded within a web browser or an operating system. Once a piece of Java
code is loaded onto a machine, it is verified. As part of the loading process, a class
loader is invoked and does byte code verification makes sure that the code that’s
has been generated by the compiler will not corrupt the machine that it’s loaded
on. Byte code verification takes place at the end of the compilation process to
16
make sure that is all accurate and correct. So, byte code verification is integral to
the compiling and executing of Java code.
Overall Description
Java . Class
Java programming uses to produce byte codes and executes them. The first box
indicates that the Java source code is located in a. Java file that is processed with
a Java compiler called javac. The Java compiler produces a file called a. class file,
which contains the byte code. The. Class file is then loaded across the network or
loaded locally on your machine into the execution environment is the Java virtual
machine, which interprets and executes the byte code.
Java Architecture
Java architecture provides a portable, robust, high performing environment for
development. Java provides portability by compiling the byte codes for the Java
Virtual Machine, which is then interpreted on each platform by the run-time
environment. Java is a dynamic system, able to load code when needed from a
machine in the same room or across the planet.
Compilation of code
When you compile the code, the Java compiler creates machine code (called byte
code) for a hypothetical machine called Java Virtual Machine (JVM). The JVM is
supposed to execute the byte code. The JVM is created for overcoming the issue
of portability. The code is written and compiled for one machine and interpreted
on all machines. This machine is called Java Virtual Machine.
17
Compiling and interpreting Java Source Code
Java
PC Compiler Interpreter
Java (PC)
Source
Code Byte code
………..
……….. Macintosh Java
Compiler Interpreter
(Platform (Macintosh)
……….. indepen
dent)
SPARC
………… Java
Compiler Interpreter
(Sparc)
During run-time the Java interpreter tricks the byte code file into thinking that it is
running on a Java Virtual Machine. In reality this could be a Intel Pentium
Windows 95 or Sun SARC station running Solaris or Apple Macintosh running
system and all could receive code from any computer through Internet and run
the Applets.
Simple
Java was designed to be easy for the Professional programmer to learn and to use
effectively. If you are an experienced C++ programmer, learning Java will be even
easier. Because Java inherits the C/C++ syntax and many of the object oriented
features of C++. Most of the confusing concepts from C++ are either left out of
Java or implemented in a cleaner, more approachable manner. In Java there are a
small number of clearly defined ways to accomplish a given task.
18
Object-Oriented
Java was not designed to be source-code compatible with any other language.
This allowed the Java team the freedom to design with a blank slate. One
outcome of this was a clean usable, pragmatic approach to objects. The object
model in Java is simple and easy to extend, while simple types, such as integers,
are kept as high-performance non-objects.
Robust
The multi-platform environment of the Web places extraordinary demands on a
program, because the program must execute reliably in a variety of systems. The
ability to create robust programs was given a high priority in the design of Java.
Java is strictly typed language; it checks your code at compile time and run time.
5.2 JAVASCRIPT
applications. On the client side, it can be used to write programs that are
executed by a Web browser within the context of a Web page. On the server side,
it can be used to write Web server programs that can process information
submitted by a Web browser and then updates the browser’s display accordingly
19
Even though JavaScript supports both client and server Web programming, we
prefer JavaScript at Client-side programming since most of the browsers supports
it. JavaScript is almost as easy to learn as HTML, and JavaScript statements can be
included in HTML documents by enclosing the statements between a pair of
scripting tags
<SCRIPTS>. </SCRIPT>.
JavaScript statements
</SCRIPT>
A D V A N T A G E S
JavaScript can be used for Sever-side and Client-side scripting.
It is more flexible than VBScript.
JavaScript is the default scripting languages at Client-side since all the
browsers supports it.
5.3 HTML
Hypertext Markup Language (HTML), the languages of the World Wide Web
(WWW), allows users to produces Web pages that include text, graphics and
pointer to other Web pages (Hyperlinks).
21
and preference. A markup language is simply a series of elements, each delimited
with special characters that define how text or other items enclosed within the
elements should be displayed. Hyperlinks are underlined or emphasized works
that load to other documents or some portions of the same document.
HTML can be used to display any type of document on the host computer, which
can be geographically at a different location. It is a versatile language and can be
used on any platform or desktop.
HTML provides tags (special codes) to make the document look attractive. HTML
tags are not case-sensitive. Using graphics, fonts, different sizes, color, etc., can
enhance the presentation of the document. Anything that is not a tag is part of
the document itself.
22
<FONT>…</FONT> Formats text with a particular font
ADVANTAGES
A HTML document is small and hence easy to send over the net. It is
small because it does not include formatted information.
HTML is platform independent.
HTML tags are not case-sensitive.
What Is JDBC?
JDBC is a Java API for executing SQL statements. (As a point of interest, JDBC is a
Using JDBC, it is easy to send SQL statements to virtually any relational database.
One can write a single program using the JDBC API, and the program will be able
to send SQL statements to the appropriate database. The combinations of Java
and JDBC lets a programmer write it once and run it anywhere.
23
What Does JDBC Do?
1. ODBC is not appropriate for direct use from Java because it uses a C
interface. Calls from Java to native C code have a number of drawbacks in
the security, implementation, robustness, and automatic portability of
applications.
2. A literal translation of the ODBC C API into a Java API would not be
desirable. For example, Java has no pointers, and ODBC makes copious use
of them, including the notoriously error-prone generic pointer "void *". You
can think of JDBC as ODBC translated into an object-oriented interface that
is natural for Java programmers.
3. ODBC is hard to learn. It mixes simple and advanced features together, and
it has complex options even for simple queries. JDBC, on the other hand,
was designed to keep simple things simple while allowing more advanced
capabilities where required.
24
Two-tier and Three-tier Models
The JDBC API supports both two-tier and three-tier models for database
access.
In the two-tier model, a Java applet or application talks directly to the database.
This requires a JDBC driver that can communicate with the particular database
management system being accessed. A user's SQL statements are delivered to the
database, and the results of those statements are sent back to the user. The
database may be located on another machine to which the user is connected via a
network. This is referred to as a client/server configuration, with the user's
machine as the client, and the machine housing the database as the server. The
network can be an Intranet, which, for example, connects employees within a
corporation, or it can be the Internet.
In the three-tier model, commands are sent to a "middle tier" of services, which
then send SQL statements to the database. The database processes the SQL
statements and sends the results back to the middle tier, which then sends them
to the user. MIS directors find the three-tier model very attractive because the
middle tier makes it possible to maintain control over access and the kinds of
updates that can be made to corporate data. Another advantage is that when
there is a middle tier, the user can employ an easy-to-use higher-level API which is
translated by the middle tier into the appropriate low-level calls. Finally, in many
cases the three-tier architecture can provide performance advantages.
Until now the middle tier has typically been written in languages such as C or
C++, which offer fast performance. However, with the introduction of
optimizing compilers that translate Java byte code into efficient machine-
25
specific code, it is becoming practical to implement the middle tier in Java. This
is a big plus, making it possible to take advantage of Java's robustness,
multithreading, and security features. JDBC is important to allow database
access from a Java middle tier.
JDBC-ODBC Bridge
If possible, use a Pure Java JDBC driver instead of the Bridge and an ODBC
driver. This completely eliminates the client configuration required by ODBC. It
also eliminates the potential that the Java VM could be corrupted by an error
in the native code brought in by the Bridge (that is, the Bridge native library,
the ODBC driver manager library, the ODBC driver library, and the database
client library).
26
Sun.jdbc. ODBC Java package and contains a native library used to access
ODBC. The Bridge is a joint development of Intersolv and Java Soft.
Features of JSP
Portability:
Java Server Pages files can be run on any web server or web-enabled
application server that provides support for them. Dubbed the JSP engine, this
support involves recognition, translation, and management of the Java Server
Page lifecycle and its interaction components.
Components
It was mentioned earlier that the Java Server Pages architecture can include
reusable Java components. The architecture also allows for the embedding of a
scripting language directly into the Java Server Pages file. The components
current supported include Java Beans and Servlets.
27
Processing
A Java Server Pages file is essentially an HTML document with JSP scripting or
tags. The Java Server Pages file has a JSP extension to the server as a Java Server
Pages file. Before the page is served, the Java Server Pages syntax is parsed and
processed into a Servlet on the server side. The Servlet that is generated outputs
real content in straight HTML for responding to the client.
Access Models:
A Java Server Pages file may be accessed in at least two different ways. A client’s
request comes directly into a Java Server Page. In this scenario, suppose the page
accesses reusable Java Bean components that perform particular well-defined
computations like accessing a database. The result of the Beans computations,
called result sets is stored within the Bean as properties. The page uses such
Beans to generate dynamic content and present it back to the client.
In both of the above cases, the page could also contain any valid Java code. Java
Server Pages architecture encourages separation of content from presentation.
2. This request is transferred to the Java Web Server. At the server side Java
Web Server receives the request and if it is a request for a JSP file server
gives this request to the JSP engine.
28
3. JSP engine is program which can understands the tags of the JSP and then it
converts those tags into a Servlet program and it is stored at the server
side. This Servlet is loaded in the memory and then it is executed and the
result is given back to the Java Web Server and then it is transferred back to
the result is given back to the Java Web Server and then it is transferred
back to the client.
JDBC connectivity
The JDBC provides database-independent connectivity between the J2EE platform
and a wide range of tabular data sources. JDBC technology allows an Application
Component Provider to:
29
components while an application server supports web components as well as
business components (BEAs Weblogic, is one of the popular application server).To
develop a web application with jsp/servlet install any web server like JRun,
Tomcat etc to run your application.
30
6. SYSTEM DESIGN
This section consists of the UML diagrams related to the modules developed such
as Activity diagram, Sequence diagram and Use case diagram.
The goal is for UML to become a common language for creating models of object
oriented computer software. In its current form UML is comprised of two major
components: a Meta-model and a notation. In the future, some form of method
or process may also be added to; or associated with, UML.
GOALS:
The Primary goals in the design of the UML are as follows:
31
Encourage the growth of OO tools market.
Support higher level development concepts such as collaborations,
frameworks, patterns and components.
Integrate best practices.
Sequence Diagram
A grouping outline in UML is a sort of association chart that shows how
procedures work with each other and in what request. “It is a build of a Message
Sequence Chart. Succession outlines are now and again called occasion charts,
occasion situations, and timing graphs”.
32
Use Case Diagram
33
Use case diagram
Activity Diagram
34
35
Component Diagram
Component diagram
Deployment Diagram
36
37
7. OUTPUT SCREENS
38
39
40
41
8. SYSTEM TESTING
42
The purpose of testing is to discover errors. Testing is the process of trying to
discover every conceivable fault or weakness in a work product. It provides a way
to check the functionality of components, sub assemblies, assemblies and/or a
finished product It is the process of exercising software with the intent of
ensuring that the Software system meets its requirements and user expectations
and does not fail in an unacceptable manner. There are various types of test. Each
test type addresses a specific testing requirement
Unit testing
Unit testing involves the design of test cases that validate that the internal
program logic is functioning properly, and that program inputs produce valid
outputs. All decision branches and internal code flow should be validated. It is the
testing of individual software units of the application .it is done after the
completion of an individual unit before integration. This is a structural testing,
that relies on knowledge of its construction and is invasive. Unit tests perform
basic tests at component level and test a specific business process, application,
and/or system configuration. Unit tests ensure that each unique path of a
business process performs accurately to the documented specifications and
contains clearly defined inputs and expected results.
Integration testing
Functional test
44
System Test
System testing ensures that the entire integrated software system
meets requirements. It tests a configuration to ensure known and predictable
results. An example of system testing is the configuration-oriented system
integration test. System testing is based on process descriptions and flows,
emphasizing pre-driven process links and integration points.
Black Box Testing is testing the software without any knowledge of the inner
workings, structure or language of the module being tested. Black box tests, as
most other kinds of tests, must be written from a definitive source document,
such as specification or requirements document, such as specification or
requirements document. It is a testing in which the software under test is treated,
as a black box .you cannot “see” into it. The test provides inputs and responds to
outputs without considering how the software works.
Unit Testing
45
Unit testing is usually conducted as part of a combined code and unit test phase
of the software lifecycle, although it is not uncommon for coding and unit testing
to be conducted as two distinct phases.
Features to be tested
Verify that the entries are of the correct format
No duplicate entries should be allowed
All links should take the user to the correct page.
Integration Testing
46
Test Results: All the test cases mentioned above passed successfully. No defects
encountered.
Acceptance Testing
User Acceptance Testing is a critical phase of any project and requires significant
participation by the end user. It also ensures that the system meets the functional
requirements.
Test Results: All the test cases mentioned above passed successfully. No defects
encountered.
47
9. CONCLUSION:
48
10. BIBLIOGRAPHY:
49