Professional Documents
Culture Documents
INTRODUCTION
The main goal of HRMS (Human Resource Management System) it deals with
everything from payroll to performance evaluation, covering the whole business. Human
Resources Software is used by businesses to combine a number of necessary HR
functions, such as storing employee data, managing payrolls, recruitment processes,
loans, benefits administration and keeping track of attendance records. It ensures
everyday Human Resources processes are manageable and easy to access. It merges
human resources as a discipline and, in particular, Human Resource Information Systems
provide a means of acquiring, storing, analysis and distributing information to various
stakeholders. HRS enables improvement in traditional processes and enhance strategic
decision making. On the whole, these ERP systems have their origin from software that
integrates information from different applications into one universal database. The
linkage of its financial and human resource modules through one database is the most
important distinction to the individually and proprietarily developed predecessors, which
makes this software application both rigid and flexible.
Allow for the creation of an application specification to the human resource that maintain
the intranet automation of the HR software i.e., which contains the data related to the
employee. This project can be used to identify a employee in the organization. The
project maintains the details of the entire employee. Each employee is given with
different employee Id.
The aim for making this project is to understand the typical system of “Human Resource
Management System” of the student.
Our project will perform tasks defined above. It stores Employees information and
company information .it also uses the registration form for entry. It stores the records of
students registered for training and placement including. Who students are already
placed. It also has a form which shows the student’s information as well as the
information about the company and we will Search for Students of Employees no. Course
Login detailed print facilities and we can show information or data.
1.6 FEATURES:
Employee
Personal Detailed
Job Detailed
Update Personal Detailed
Update Job Detailed
Attendance
Monthly Attendance
Add Monthly Attendance
Leave
Add Employees Leave
Payroll
Salary Structure
Attendance Detailed
Leave structure
View All Reports
1.7 MODULES:
Attendance Module.
Payroll Module.
Leave Module.
Employee information management Module.
Before, developing software, it is advisable to choose the methodology which suits best
for the selected system. Hence, before the start of this project, we have considered some
methodologies of system developed that helped us choose Waterfall model which was
presumed best for the development of “HRMS”.
The waterfall model is a sequential design process. This model is frequently used in
software development processes, in which improvement is seen as flowing steadily
downwards (like a waterfall) through the stages of conception, initiation, analysis, design,
construction, testing, production/implementation and maintenance.
Testing of the software is carried out only when the code has been fully developed. Each
work-product or activity is completed before moving on to next.
To be used efficiently, all computer software needs certain hardware components or the
other software resources to be present on a computer. These pre-requisites are known as
(computer) system requirements and are often used as a guideline as opposed to an
absolute rule. Most software defines two sets of system requirements: minimum and
recommended. With increasing demand for higher processing power and resources in
newer versions of software, system requirements tend to increase over time. Industry
analysts suggest that this trend plays a bigger part in driving upgrades to existing
computer systems than technological advancements.
RAM : 1 GB
HARD DISK : 80 GB
Software Requirements deal with defining software resource requirements and pre-
requisites that need to be installed on a computer to provide optimal functionality of an
application. These requirements or pre-requisites are generally not included in the
software installation package and need to be installed separately before the software is
installed.
Technical Feasibility
Operational Feasibility.
Economic Feasibility.
Legal and Ethical Feasibility
Behavioral Feasibility
It is the measure of how reasonable the project time table is or the deadline is reasonable
or not. During the lack of time or the time become mandatory, we must finish the project
within a given time period. It mainly addresses:
motivational feasibility
The project manager and development team merge their work activities and manage
whole project. They also motivate development team and customer organization
regarding their work activities at each step. It also provides an interface that is interactive
for the customer and is user friendly.
behavioral feasibility
People are inherently resistant to change and computer has known to facilitate change.
An estimate should be made of how strong a reaction the user staff is likely to have
towards the developments of computerized system. In the existing system more
The system shall enable the admin to login to the system and perform his task.
The user should be able to display the all menus of the system.
The system shall display the record of added data.
The system shall prompt user to add new data about employee, payroll,jobs detail
and attendance etc.
The system shall provide visual confirmation of the entered data
The new system will be able to stay up and running at least 95% of the time. Any
downtime would be due to maintenance or upgrades. This downtime also includes any
potential failures/crashes.
The developed system will have to deal with large quantities of data and. The large
quantity of data includes information and data retrieved from the database by user.
The new system will have an interface that shares some of the feel of the old system so
that users who are familiar with the old system will not have trouble adjusting to the new
system. The new system should display the information and show the changes made to it
in real-time.
focused layout
The new system will reduce the potential for confusion by having a focused layout. This
means that it will display information that is relevant to the current task and conversely,
leave out irrelevant information.
web accessibility
The new system will be compatible with screen readers to assist the visually impaired.
This means that screen readers should interpret the displayed text into speech and should
not output anything that does not correspond to displayed text. It is also important that the
colors are designed so that color-blind people can still distinguish changes in content.
effective recovery
The system must effectively recover from a crash within ten minutes. Effective recovery
means that the data is still in a consistent state accurate to 1 minute before the system
crashes when the system returns
3.6.1.WHAT IS C#:
C# is a Most Modern event-driven programming language and integrated development
environment from Microsoft for its Component Object Model programming model first
released by sun microsoft. Microsoft intended C# to be relatively easy to learn and use.
C# is a high level Programming langauage, a user friendly programming language
designed for beginners, and it enables the rapid application development
(RAD) of graphical user interface (GUI) applications, access to databases using Data
C# is a high-level programming language that evolved from the earlier DOS version that
is the best for beginners' All-purpose Symbolic Instruction Code. The code looks like
the English Language. Now, there are many versions of C# available in the market, the
latest being C# 2017 that is bundled with other programming languages. However, the
most popular one and still widely used by many C# programmers.
compilation has made this less of an issue. Though C# programs can be compiled into
native code executables from version 5 on, they still require the presence of around 1
MB of runtime libraries. Core runtime libraries are included by default in Windows
2000 and later, but extended runtime components still have to be installed. Earlier
An empty form in C#
Forms are created using drag-and-drop techniques. A tool is used to place controls (e.g.,
text boxes, buttons, etc.) on the form (window). Controls have attributes and event
handlers associated with them. Default values are provided when the control is created,
but may be changed by the programmer. Many attribute values can be modified during
run time based on user actions or changes in the environment, providing a dynamic
application. For example, code can be inserted into the form resize event handler to
reposition a control so
That it remains centered on the form, expands to fill up the form, etc. By inserting code
into the event handler for a keypress in a text box, the program can automatically
translate the case of the text being entered, or even prevent certain characters from being
inserted.
C# can create executables (EXE files), ActiveX controls, or DLL files, but is primarily
used to develop Windows applications and to interface database systems. Dialog boxes
with less functionality can be used to provide pop-up capabilities. The controls provide
the basic functionality of the application, while programmers can insert additional logic
within the appropriate event handlers. For example, a drop-down combination box
Alternatively, a C# component can have no user interface, and instead provide ActiveX
objects to other programs via Component Object Model (COM). This allows for server-
side processing or an add-in module.
The runtime recovers unused memory using reference counting, which depends on
variables passing out of scope or being set to nothing, avoiding the problem of memory
leaks common to other languages. There is a large library of utility objects, and the
language provides basic support for object-oriented programming. Unlike many other
programming languages,C# is generally not case-sensitive—though it
transforms keywords into a standard case configuration and forces the case of variable
names to conform to the case of the entry in the symbol table. String comparisons are
case sensitive by default. The C# compiler is shared with other Visual Studio languages
(C, C++). Nevertheless, by default the restrictions in the IDE do not allow creation of
some targets (Windows model DLLs) and threading models, but over the years,
developers have bypassed these restrictions.
It's more. C# was one of the first systems that made it practical to write programs for the
Windows operating system. This was possible because C# included software tools to
automatically create the detailed programming required by Windows. These software
tools not only create Windows programs, they also take full advantage of the graphical
way that Windows works by letting programmers "draw" their systems with a mouse on
the computer. This is why it's called "Visual and OOP" programming.
Formally, a "database" refers to a set of related data and the way it is organized. Access
to this data is usually provided by a "database management system" (DBMS) consisting
of an integrated set of computer software that allows users to interact with one or more
databases and provides access to all of the data contained in the database (although
restrictions may exist that limit access to particular data). The DBMS provides various
functions that allow entry, storage and retrieval of large quantities of information and
provides ways to manage how that information is organized.
Because of the close relationship between them, the term "database" is often used
casually to refer to both a database and the DBMS used to manipulate it.
MY-SQL stores data in its own format based on the Access Jet Database Engine. It can
also import or link directly to data stored in other applications and databases.
Software developers, data architects and power users can use My-SQL to
develop application software. Like other Microsoft Office applications, MY-SQL is
supported by an object.
components. Visual objects used in forms and reports expose their methods and
properties in the C# application programming environment, and C# application code
modules may declare and call Windows operating system operations.
limitations
When using some storage engines other than the default of InnoDB, MySQL does not
comply with the full SQL standard for some of the implemented functionality, including
foreign key references and check constraints.
Up until MySQL 5.7, triggers are limited to one per action / timing, meaning that at most
one trigger can be defined to be executed after an INSERT operation, and one
before INSERT on the same table. No triggers can be defined on views.
deployment
MySQL can be built and installed manually from source code, but it is more commonly
installed from a binary package unless special customizations are required. On
most Linux distributions, the package management system can download and install
MySQL with minimal effort, though further configuration is often required to adjust
security and optimization settings.
originates in its relative simplicity and ease of use, which is enabled by an ecosystem of
open source tools such as phpMyAdmin. In the medium range, MySQL can be scaled by
deploying it on more powerful hardware, such as a multi-processor server with gigabytes
of memory.
There are, however, limits to how far performance can scale on a single server('scalinup'),
so on larger scales, multi-server MySQL ('scaling out') deployments are required to
provide improved performance and reliability. A typical high-end configuration can
include a powerful master database which handles data write operations and
is replicated to multiple slaves that handle all read operations The master server
continually pushes binlog events to connected slaves so in the event of failure a slave can
be promoted to become the new master, minimizing downtime. Further improvements in
performance can be achieved by caching the results from database queries in memory
using memcached, or breaking down a database into smaller chunks called shards which
can be spread across a number of distributed server clusters.
backup software
MySql dump is a logical backup tool included with both community and enterprise
editions of mysql. it supports backing up from all storage engines. mysql enterprise
backup is a hot backup utility included as part of the mysql enterprise subscription
from oracle, offering native innodb hot backup, as well as backup for other storage
engines.
Extra backup is an open-source mysql hot backup software program. features include hot,
non-locking backups for innodb storage, incremental backups, streaming, parallel-
compressed backups, throttling based on the number of i/o operations per second, etc.
MySQL Fabric is an integrated system for managing a collection of MySQL servers, and
a framework on top of which high availability and database sharding is built. MySQL
Fabric is open-source, and supports procedure execution in the presence of failure,
providing an execution model usually called resilient execution. MySQL client libraries
are extended so they are hiding the complexities of handling failover in the event of a
server failure, as well as correctly dispatching transactions to the shards.
cloud deployment
MySQL can also be run on cloud computing platforms such as Amazon EC2. Some
common deployment models for MySQL on the cloud are:
In this implementation, cloud users can upload a machine image of their own with
MySQL installed, or use a ready-made machine image with an optimized installation of
MySQL on it, such as the one provided by Amazon EC2.
mysql as a service
Some cloud platforms offer MySQL "as a service". In this configuration, application
owners do not have to install and maintain the MySQL database on their own. Instead,
the database service provider takes responsibility for installing and maintaining the
database, and application owners pay according to their usage. Notable cloud-based
MySQL services are the Amazon Relational Database Service; Rackspace; HP
Converged Cloud; Heroku and Jelastic.
Very simply, MY_SQL is an information management tool that helps you store
information for reference, reporting, and analysis. MY_SQL helps you analyze large
amounts of information, and manage related data more efficiently than Microsoft
Methods for preparing input validations and steps to follow when error occur
Depending on the nature and future use of output required, they can be displayed on the
monitor for immediate need and for obtaining the hardcopy. The options for the output
reports are given in the appendix
Data integrity.
Data independence
Through UML we see or visualize an existing system and ultimately we visualize how
the system is going to be after implementation. Unless we think, we cannot implement.
UML helps to visualize, how the components of the system communicate and interact
with each other.
Specifying
Specifying means building, models that are precise, unambiguous and complete UML
addresses the specification of all the important analysis, design, implementation decisions
that must be made in developing and deploying a software system.
Constructing
UML models can be directly connected to a variety of programming language through
mapping a model from UML to a programming language like JAVA or C++ or VB.
Forward Engineering and Reverse Engineering is possible through UML.
Documenting
The Deliverables of a project apart from coding are some Artifacts, which are critical in
controlling, measuring and communicating about a system during its development
requirements, architecture, desire, source code, project plans, tests, prototypes releasers,
etc...
Identify significant goals associated with each role to support the system. The
system’s value proposition identifies the significant role.
Create use cases for every goal associated with a use case template and maintain
the same abstraction level throughout the use case. Higher level use case steps are
treated as goals for the lower level.
Use case diagrams are formally included in two modeling languages defined by the
OMG: the unified modeling language (UML) and the systems modeling language
(SysML)
4.3.6 ER DIAGRAM:
The Entity-Relationship (ER) model was originally proposed by Peter in 1976 as a way to
unify the network and relational database views. Simply stated the ER model is a
conceptual data model that views the real world as entities and relationships. A basic
component of the model is the Entity-Relationship diagram which is used to visually
represent data objects. Since Chen wrote his paper the model has been extended and
today it is commonly used for database design for the database designer, the utility of the
ER model is:
It maps well to the relational model. The constructs used in the ER model can easily be
transformed into relational tables.
can be used by the database designer to communicate the design to the end user.
• In addition, the model can be used as a design plan by the database developer to
implement a data model in specific database management software.
ER Notation
There is no standard for representing data objects in ER diagrams. Each modeling
methodology uses its own notation. The original notation used by Chen is widely used in
academics texts and journals but rarely seen in either CASE tools or publications by non-
academics. Today, there are a number of notations used; among the more common are
Bachman, crow's foot, and IDEFIX.
All notational styles represent entities as rectangular boxes and relationships as lines
connecting boxes. Each style uses a special set of symbols to represent the cardinality of
a connection. The notation used in this document is from Martin. The symbols used for
the basic ER constructs are:
• Relationships are represented by a solid line connecting two entities. The name
of the relationship is written above the line. Relationship names should be verbs
• Attributes when included, are listed inside the entity rectangle. Attributes which
are identifiers are underlined. Attribute names should be singular nouns.
The systems development also referred to as the application development is a term used
in systems engineering, information systems and software engineering to describe a
process for planning, creating, testing, and deploying an information system. The
systems development life-cycle concept applies to a range of hardware and software
configurations, as a system can be composed of hardware only, software only, or a
combination of both.
The system development life cycle framework provides a sequence of activities for
system designers and developers to follow. It consists of a set of steps or phases in
which each phase of the SDLC uses the results of the previous one.
The SDLC adheres to important phases that are essential for developers, such as
planning, analysis, design, and implementation, and are explained in the section below.
It includes evaluation of present system, information gathering, and feasibility study and
request approval.
The implementation stage involves careful planning, investigation of the existing system
and it’s constraints on implementation, designing of methods to achieve changeover and
evaluation of changeover methods
Implementation includes all those activities that take place to convert from the existing
system to the new system. The new system may be a totally new, replacing an existing
manual or automated system or it may be a modification to an existing system. Proper
implementation is essential to provide a reliable system to meet organization
requirements. The process of putting the developed system in actual use is called system
implementation. This includes all those activities that take place to convert from the old
system to the new system. The system can be implemented only after through testing is
done and if it is found to be working according to the specifications. The system
personnel check the feasibility of the system. The more complex the system being
implemented, the more involved will be the system analysis and design effort required
to implement the three main aspects: education and training, system testing and
changeover.
Implementation refers to the final process of moving the solution from development
status to production status. Depending on your project, this process is often called
deployment, go-live, rollout or installation. For the purposes of Lifecycle Step, all of
these terms are synonymous with "implementation." The implementation phase deals
with issues of quality, performance, baselines, libraries, and debugging. The end
deliverable is the product itself. The Implementation Phase has one key activity:
installing and releasing the new system in its target environment. After this phase, the
system enters the Operations and Maintenance Phase for the remainder of the system’s
operational life..
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 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 accurate to the documented specifications and
contains clearly defined inputs and expected results.
Integration tests are designed to test integrated software components to determine if they
actually run as one program. Testing is event driven and is more concerned with the
basic outcome of screens or fields. Integration tests demonstrate that although the
components were individually satisfied, as shown by successfully unit testing, the
combination of components is correct and consistent. Integration testing is specifically
aimed at exposing the problems that arise from the combination of components.
Functional tests provide systematic demonstrations that functions tested are available as
specified by the business and technical requirements, system documentation, and user
manuals.
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.
White Box Testing is a testing in which in which the software tester has knowledge of the
inner workings, structure and language of the software, or at least its purpose. It is
purpose. It is used to test areas that cannot be reached from a black box level.
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.
The task of the integration test is to check that components or software applications, e.g.
components in a software system or – one step up – software applications at the company
level – interact without error.
All the test cases mentioned above passed successfully. No defects encountered.
o Test Results:
o All the test cases mentioned above passed successfully. No defects
encountered.
6.5 DEBUGGING:
Debugging is not tested, but it always occurs as a consequence of testing. It begins with
the execution of a test case. Results are assessed and lack of correspondence between
expected and actual performance is encountered. Debugging is one of the more
frustrating parts of programming. It has elements of problem solving or brain teasers
coupled with the annoying recognition that you have made a mistake. While testing my
software I found some errors, which I corrected in debugging modes. I found Syntax
errors in Black box testing and Logical errors in white-box testing.
These are caused by typographical errors and incorrect use of the Programming language.
These are caused by the incorrect use of the control structure. These errors were
identified while testing procedure and were corrected in debugging mode.
SCREEN SPLASH:
Login page in computer security, logging in is the process by which an individual gains
access to a computer system by identifying and authenticating themselves. The user
credentials are typically some form of "username" and a matching "password",[and these
credentials themselves are sometimes referred to as a login, (or a logon or a sign in or a
sign on).In practice, modern secure systems also often require a second factor for extra
security.
When access is no longer needed, the user can log out (log off, sign out or sign off).
The page contains a form with two fields "USER NAME" and "Password". The admin is
required to enter the user name and password to use the system and to continue to next
page.
Since we are entering the details of the Employee electronically in the” Human Resource
Management System”, data will be secure. Using this application, we can retrieve the
Employee’s history with a single click. Thus, processing information will be faster. It
guarantees accurate maintenance of Employee details. It easily reduces the book keeping
tasks and thus reduces the human effort and increases accuracy speed.
The system manages has data for multiple Employee for various dates and times. Each
time a Employee visits HRMS his/her Employee entry is stored in the database by a
Admin. Next time a user can only search the Employee, after he may view his/her entire
Employee history as and when needed. The Admin may view Employee history etc
Attendance, loan, salary,payroll and leaves.
1.Osborn, John (August 1, 2000). "Deep Inside C#: An Interview with Microsoft Chief
". Computerworld.
6. "Microsoft C# FAQ". Microsoft. Archived from the original on February 14, 2006.
18, 2009.