PREFACE
This rep This report ort pre presen sents ts the res resear earch, ch, fi findi ndings ngs and rec recomm ommend endati ations ons res result ulting ing fro from m the project, “Human Resource Management System”. The objective was to compile and synthesize information on the status of the project. In the Project we develop a solution for HR managers for comfort and implement the architecture. In this software we develop a recruitment module that is easy to select an eligible candidate after conduct some test like written test, Technical test and HR test. This Pr This Proje oject ct als also o inc includ ludes es Tim Timee Man Managem agement ent Mod Module ule and the Lea Leave ve Man Manage agemen mentt Module and Payroll management Module. The entire module provides efficiency in work of the HR.
1
ACKNOWLEDGEMENT
Just a peep in the memory lane brings all those people who are always available for their timely help & co-operation. My individual efforts could have been of little worth, if I did not have these stepping-stones for the much needed lift and rise towards the completion of this project. With deep reverence I acknowledge the valuable guidance of Mr. Rohit badaya(Project Guide), for their encouragement, suggestions and support at virtually all the stages of this project. Without their support this Project wouldn’t have been po ssible. I am also thankful to all the people around me and my colleagues for providing ample amount of ideas and support at every stage of this project. Finally, I would also like to thank my team members and friends who gave great moral support to me while I was preparing this Project Report.
2
CANDIDATE DECLARATION
I hereby declare that the work presented in this project entitled “COLLAGE WEBSITE” submitted towards completion of project in 4th Semester of B.Tech. (IT) at the Regional College for Education Research & Technology (RCERT), Sitapura, Jaipur, is an authentic record of my original work carried out under the guidance of Mr. Madhumay Sen, RCERT, Jaipur. I have have not submitt submitted ed the matter matter embodi embodied ed in this projec projectt for the award award of any other other degree.
(Hemant Kumar, Kiran Jain, Rahul Gupta)
1. ABSTRACT 3
A Human Resource Management System (HRMS) including an HRMS server having an HRMS database containing files storing information on employees, employee skills, employee schedules and projects. The information in the files of the HRMS database is obtained from external corporate databases as well as from direct entry. Attendance functionality is included for maintaining the scheduled activities of employees with different types of scheduled activities differ different ently ly highli highlight ghted ed on an Attend Attendance ance Summar Summary y displa display. y. Human Human Resour Resource ce search search and scheduling functionality is provided that identifies human resources possessing the required skills. HRMS provides interfaces between the external databases and the HRMS database for maintaining maintaining the informatio information n current current that is stored therein. A common common user interface interface provides provides a common view of the information in the HRMS database and in the external databases. The HRMS HRMS server server,, includ including ing the HRMS HRMS databa database, se, is imple implement mented ed on a progra programme mmed d comput computer er system.
2. INTRODUCTION 4
Every Organization has numerous types of resources like office equipments, finance, raw material etc. Human Resource is one of these resources. It is the most vital among all the resources of an organization. So HR functions are common to all type of organizations. These HR functions may include recruitment, time management, and management of payroll and many more. In the scenario of handling thousands of employees, their recruitment procedure, their time scheduling and their salary slip generation according to their packages and their working days may become difficult to handle manually. Here comes the need of a system which can help the administration to do all the above said jobs in an automated and efficient manner. We call our proposed system as HRMS (Human Resource Management System), which is being developed for the management of Human of Human Resource. There is a huge amount of information which needs to be entered, stored and searched thereafter related to large number of employee of a particular organization. Our Project Human Resour Resource ce Managem Management ent Syste System m reduces reduces the work work load load of the admini administr strati ation on departm department ent by automating all the related process electronically. This Human Resource Management System not only automates the data entry for employee details such as personal information, past experience details, skills and so on. But also efficiently manage the time /work relation for every employee and and the the work work dist distri ribu buti tion on meth method odss gene genera rate tess the the paym paymen entt cheq cheque uess peri period odic ical ally ly and and corresponding reports for the management. The HRMS can be developed and implemented for any organization of any scale.
3. PROBLEM DEFINITION DEFINITION
3.1 Description of the Problem Human Resource Management System a basic HR solution which are having very difficult 6 module to implement that project It also having Test Conducting feature which are very difficult process to implement the project its having the attendance syste you can not increase because evry time you login in morning that is self calculable so it is very difficult task for us so we also implement that architecture so we can attendance and calculate salary and we also aplly for a leave with a particular reason so all the task is Implemented on the MVC architecture.
3.2 Limitation of the Existing System
This module is divided into the sub module. Existing system are manual & some module are automatic and less less complex Total Object oriented architecture no JAVABEAN tag is useful here. This project is only for the HR Administrator. The proposed system is expected to be faster than the existing system.
3.3 Project Insight 5
3.3.1 Project Objectives The main purpose of the project to Reduce the work burden of the HR manager so all the feat featur uree it have have to fast fast proce process ssin ing g in the the proj projec ectt main main obje object ctiv ivee .pro .proje ject ct also also condu conduct ct the the Recruitment Recruitment procedure which have Written Test Procedure, Procedure, Technical Test Procedure, Procedure, HR test Proc Proced edur uree and many many more more feat featur uree it’s it’s have have.. It havi having ng time time mana manage geme ment nt modu module le leave leave management module and the payroll management module so all the HR task going to be easy. 3.3.2 Project features
The proposed system is a computerized system, which will alleviate the problem faced by the existing non-parallel computerized system. The new system will enhance the process of entering computation inputs and maintain the same for the future retrieval of outputs, various guiding principle are also provided to ease their work. The new system will provide an error free and a very effective effective method method of calculation calculation involved involved in the entire process. This system also calls for a lesser manpower and even little workload. It gives accurate and more reliable query information in processing the data that is an additional property of the new system. It also provides facility for entering the prior derived results as inputs again to simplify the calculation. Proposed system meets the objective stated above to a great extent. The modules comprising Sub-Modules have the following features:
Users profile management and registrations Every applicant can register self by internet Recruitment process has 3 step written test, Technical test, hr Interview and Issue Joining Letter. Employee Attendance record ad leave record and salary calculation. Payroll module calculates all the salary and generates salary slip. Secure access of confidential data (user’s details). SSL can be used. 24 X 7 availability Better component design to get better performance at peak time Flexible service based architecture will be highly desirable for future extension
Optional Features
Java Model View Controller architecture is basically used. Customizable color schemes and profiles. All the data are store in most secure database (ORACLE).
4. SYSTEM PLANNING 4.1 Introduction
6
Software project management begins with a set of activities that are collectively called project planning. The most critical phase of managing system projects is planning. To launch a system investigation, we need a master plan detailing the step to be taken, the people to be questioned, and the outcome expected. The initial investigation has the objective of determining whether the user’s request has potential merit.
The major step are defining the user’s requirement, studying the present system to verify the problem, and defining the performance expected by the candidate system to meet user’s requirement. When the initial investigation is completed the user receives a system proposal summarizing the finding and recommendation of the analyst. Before the project can begin, we must estimate the work to be done, the resources that will be required, and the time that will elapse from start to finish. Identification of the role of software must be specified in making its use into the study of a larger system like the Border Road Organization. For it is necessary to take a harder look at software’s role to understand the specific requirements that must be achieved to build a high quality software. Although estimating is as much art as it is science, this important activity need not be conducted in a haphazard manner. Before going to develop the software we have to to think about some key question, which is mentioned below:
What is it? Who does it Why is it important What are the steps What is the work product How do I ensure that I’ve done d one it right?
The objective of software project planning is to provide a framework that enables the manager to male reasonable estimates of resources, cost, and schedule. These estimates are made within a limited time frame at the beginning of a software project and should be update regularly as the project progresses. The planning objective is achieved through a process of information discovery that leads to reasonable estimates. In the following section, each of activities associated with software project planning:
4.2 Software Scope
The first activity in software project planning is the determination of software scope function and performance allocated to software during system engineering should be assessed to establ establish ish a projec projectt scope scope that that is unambi unambiguou guouss and underst understand andabl ablee at the managem management ent and technical levels. A statement of software scope must be bounded. Software scope describes the data and control to be processed, function, performance, constraints, interfaces and reliability. Functions described in the statement of scope are evaluated and in some case refined to provide more detail prior to the beginning of estimation. Because both cost and schedule estimates are functionally oriented, some degree of decomposition is ofte often n usef useful ul.. Perf Perfor orma manc ncee consi conside dera rati tion on enco encomp mpas asse sess proc proces essi sing ng and and resp respon onse se time time 7
requirements. Constraints identify limits placed on the software by external hardware, available memory, or other existing system.
4.3 Software Process Model Used
To solve actual problems in an industry setting, software engineer or a team of engineers must incorporate a development strategy that encompasses the processes, methods and tools layers and the generic phases of the software engineering. This strategy often referred to as a process model or a software-engineering paradigm. A process model for a software engineering is chosen based on the nature of the project and application, the methods and tools to be used, and the controls and deliverables that are required. The nature of the given problem and the simplicity of the Linear Sequential Model forced the use of this model in the development of this project. A brief discussion about this model is given below:
The Linear Sequential Model
The linear sequential model is described through the diagram depicted below. Sometimes called the Classic Life Cycle or the Waterfall Model, the linear sequential model suggests a systematic, sequential approach to software development that begins at the system level and pro progr gres esss thro through ugh anal analys ysis is,, desi design gn,, codi coding, ng, test testin ing, g, and main mainte tenan nance ce.. Mode Modele led d afte afterr the the convent convention ional al engineer engineering ing cycle, cycle, the linear linear sequent sequential ial model model encomp encompass asses es the follow following ing activities:
System/Information Analysis Engineering Design
Coding THE LINEAR SEQUENTIAL MODEL Testing
Software Requirements Analysis The requirements gathering process is intensified and focused specifically on software. The information domain of the problem is identified and specified.
8
Design Software design is actually a multi-step process that focuses on four distinct attributes of a progr program: am: data data struct structure ure,, softwa software re archit architect ecture ure,, interf interface ace repres represent entati ations ons and proced procedura urall (algorithmic details).
Code Generation The design must be translated into a machine-readable form. The code generation step performs this task. If design is performed in detailed manner code generation can be performed mechanistically.
Testing Once code has been generated, program testing begins. The testing process focuses on all the internal logic and the external behavior beh avior of the system.
5. SOFTWARE ANALYSIS & REQUIREMENT SPECIFICATION Before deciding to develop any system, it is imperative that the existing system is thoroughly studied and understood so as to arrive at a decision. Identification of the role of Software must be specified in making its use into the study of a larger system like the Border Roads. For it is necessary to take a harder look at software’s role to understand the specific requirements that must be achieved to build high quality software. This knowledge is generally acquired by analysis the existing system. SYSTEM ANALYSIS ’ is the process of identifying the current problems, and Hence the ‘ SYSTEM gather gathering ing and interp interpret reting ing the facts to improv improvee the system’s system’s performa performance. nce. It is a phase phase of carrying out a detailed study of the user’s requirements. Or in other words, System Analysis means a detailed explanation or description. Before computerized a system under consideration, it has to be analyzed. We need to study how it functions currently, what are the problems, and what are the requirements that the proposed system should meet. Analysis is a detailed study of the various operations performs by a system and their relationships within an outside of the system.
System Analysis is conducted with the following objectives in mind:
Identify the customer’s need. Evaluate the system concept for feasibility. Perform economic and technical analysis. Allocate functions to hardware, software people, database and other system elements Establish cost and schedule constraints. Create a system definition that forms the foundation for all the subsequent engineering work.
9
Analysis study is presented in the form of Software Requirement Specification. Review of SRS is conducted to determine determine the suitabili suitability ty and the adequacy of the software requirement. requirement. The review addresses the following questions/issues: • • • • •
Are the requirements appropriate to the user needs or project objectives? Are the requirements complete? Are the requirements defined unambiguously? Are the requirements self-consistent? Is every requirement testable?
5.1 Software Requirement Specification
Requirement specification is the activity during which requirements are recorded in one or more more forms, forms, usuall usually y in a Softwa Software re Requir Requireme ement nt Specif Specifica icatio tion n (SRS) (SRS) Docume Document. nt. Syste System m Requir Requireme ement nt Specif Specifica icatio tion n is the starti starting ng point point of the softwa software re develo developme pment nt activi activity ty.. The requirements may be in natural language, a formal language or in a graphical form. The purpose of the software requirement specification is to bridge the communication gap between developer and client. SRS is the medium through which the client and user needs are accurately specified. A good SRS should satisfy all the parties – something very hard to achieve and involving trade off and persuasions. Some of the goals accomplishes by SRS are:
Establishes the basis for agreement between client and supplier on what the software product will do. Care Carefful deve devellopme opment nt of an SRS SRS can can reve reveal al omis omissi sion ons, s, incon nconsi sist sten enci cies es and and misunderstandings early in the development cycle. Providing a reference for validation of the final product. The SRS assists the client in determining if the software meets the requirements. SRS document provides a feedback to the customer. It is the customer’s assurance that the development organization understands the issues or problems to be solved and the software behavior necessary to address those problems. SRS document serves as an input to the design specification and it also serves as a product validation check. SRS decomposes the problem into component parts. The SRS also serves as the parent document for testing and validation strategies that will be applied to the requirement for verification. Functional Requirement s
Performance Requirements
Software Requirement specification
10
Design constraint s
External Interface
5.2 User Requirements
One must know what the problem is before it can be solved? i.e. one must concentrate on the process of “Identification of Needs” Accurate user requirements are essential in building computer based information systems. The first step of system analysis process involves the identification of needs. The needs are those activities or improvements that the system must provide. General approaches for eliciting user requirements are:-
Preliminary Investigation – Asking general questions.
Analysis of existing system – Getting information from existing system.
5.2.1 Preliminary Investigation
For this, the need arises to understand the viewpoint of 2 important entities, Top Management & Users. In order to gather pertinent information, I interviewed the top management & asked the following questions:
How present system works? What drawbacks are in the present system? What is their vision about the new system? What specific facilities they they want from from new system, system, which are are currently; not in scope of existing system? How data will flow in the system? Who will be authenticated to access data and his/her access rights? To find more about present system’s working mechanism such as the ways of getting inputs & providing outputs, I interviewed the current users of the system by asking following questions:
Are they comfortable with the present system? What flaws exist in the current system? Do they feel necessity of a new system? What will be their requirements from new system? Are they satisfied with their role in the new system?
11
Afte Afterr carr carryi ying ng out out thes thesee inte interv rvie iews ws,, I drew drew concl conclus usio ions ns abou aboutt the the top top mana manage gemen ment’ t’ss requirements & whether the users are in support of the new system. Based on this conclusion further steps were taken. 5.2.2. Analysis of Existing System
Scope defined during the preliminary investigation is elaborated to create a complete analysis model for the application in question.3 different types of analysis were conducted:
full spectrum spectrum of content to to be provided provided by the the Content analysis: analysis: the full identified. Content included text, graphics and images and other data.
Applicatio Application n was
Interaction Interaction analysis: The manner in which which the user interacted interacted with the described in detail.
Functional Functional analysis: The various various processes processes and functions functions that that were to be included included to ensure proper functioning of the Application were identified and detailed layout was Prepared regarding all the features which the user might desire.
interface interface was
(B)MINIMUM HARDWARE REQUIREMENTS • • •
Pentium IV processor 256 MB RAM 10 GB HARD DISK
5.4 Performance Requirements
The following performance characteristics should be taken care of while developing the system:
User friendliness: friendliness: The system should be easy to learn and understand so that new user can also use the system effectively, without any difficulty. User satisfaction: The system should meet user expectations. Response time: The response time of all the operations should be low. This can be made possible by careful programming. Error handling: Response to user errors and the undesired situation should Be taken care of to ensure that the system operates without halting. Safety: The system should be able to avoid or tackle catastrophic behavior. system tem shou should ld recov recover er from from undesi undesired red events events withou withoutt human human Robustness: The sys intervention.
12
5.4.1 Requirement Analysis
Requirement analysis is the most important part to be considered before developing an projects as we must be aware of the objective that wish to achieve by making this project. This analysis finds out the problem faced by the user and clients and the possible solutions o those problems. We can use some questionnaires to finds out the problems faced by the clients. This System will be helping administrator for doing all the related jobs so the analysis part include problems faced by the HR administration and other facilities excepted by him from the new system. The manual handling of all HR functions may produce numerous types of problems, Such as:
Entering, Storing and Searching of employee information manually are time consuming and error prone process
The information information may include include the personal detail of an employee, past history, skill, skill, and experience. experience. HRMS records the informati information on starting starting with the application application submitted submitted by a candida candidate te and will will continu continuee adding adding new inform informati ation on starti starting ng with with the applica applicatio tion n submit submitted ted by a candida candidate te and will will contin continue ue adding adding new inform informati ation on like like select selection ion,, training, appraisals, Project handled, and other activities involved.
The second task which is very important is the time management
This is about the working days calculation according to the attendance record available. This is also about analyzing the time to work ratio for all employee .Similarly, work load distribution is concerned with HR management an d manually it is very difficult to handle. An automated system is always required here.
Calculating Salary and making slips of large number employees is quite cumbersome
The automation of this process becomes most important as it is a periodic process. The calc calcul ulat atio ion n of sala salary ry is not not an easy easy proc proces esss as it take takess care care of all all the the accou account ntin ing g informati information on of an employee, the package being received, received, working days, leaves, leaves, benefits benefits program being participated by the employee, pension plan, insurance policy, medical facilities etc. Handling of all this information and calculating salaries periodically every month needs an automated system which can help the HR professionals to perform their task in an efficient manner.
5.5 Acceptance Criteria
The following acceptance criteria were established for the evaluation of the new system:
system should meet user needs and should be easy to learn and User friendliness :- The system use. Modularity :- The system should have relatively independent and single function parts . Maintainability :- The The syst system em shoul hould d be such such that hat futur uturee mai mainten ntenan ance ce and and enhancements times and efforts are reduced. 13
Timeliness :- The The syst system em shou should ld oper operat atee well well unde underr norm normal al,, peak peak and and reco recove very ry conditions. The system developed developed should be accurate accurate and hence reliable reliable i.e. the error rate rate should should be minimized and the outputs should be consistent and correct. Both the execution time and response time should be negligibly low. The system should be efficient i.e. the resources utilization should be optimal. The system should have scope to foresee modifications and enhancements i.e. it should be able to cope with the changes in future technology.
5.6 Feasibility Analysis
The first and foremost strategy for development of a project starts from the request made by a manager, an employee or system specialist. When the request is made the first system activity, the preliminary investigation begins. This activity has three parts. • • •
Request Clarification Feasibility Study Request Approval
5.6.1 Request Clarification
As previously stated, the requests are made from employees and users in the organizations, which are not clearly stated, therefore a system investigation is being conside considered red.. The projec projectt reques requestt must must be examin examined ed to determ determine ine precis precisely ely what the originator wants. My project is basically meant for Different libraries. And only be authenticate user will be allowed to access it. So taking into consideration of all these tasks, the corresponding development of portal came into existence. 5.6.2 Feasibility Study
Feasibility study tries to determine whether a given solution will work or not. It’s main objective is not to solve the problem, but to acquire it’s scope. It focuses on following:
Meet user’s requirements. Best utilization of available resources. Develop a cost effective system. Develop a technically feasible system.
The feasibility report of the project holds the advantages and flexibility of the project. This is divided into three sections: Economical Feasibility Technical Feasibility Behavioral Feasibility Operational Feasibility 14
Economic Feasibility Feasibility:: Economic analysis is the most frequently used method for evaluating the effectiveness of the candidate system. More commonly known as cost/benefit analysis, the procedure is to be determining the benefits and savings that are expected from a candidate and compare them with costs. If benefits outweigh costs, then the decision is made to design and implement the system.
A systems financial benefit must exceed the cost of developing that system. i.e. a new system being being develo developed ped should should be a good invest investmen mentt for the organi organizat zation ion.. Econom Economic ic feasib feasibili ility ty considers the following:
The cost to conduct a full system investigation. The cost of hardware and software for the class of application. The benefits in the form of reduced cost or fewer costly errors. The cost if nothing changes (i.e. the proposed system is not developed).
“Complex Mathematical Computations Toolkit” is economically feasible. As the hardware was installed from quite beginning the cost on project of hardware is low. Similarly, the software loade loaded d for for this this proj projec ectt was was used used even even afte afterr this this proj projec ectt was was deve develo lope ped d for for many many othe other r applications. The software cost was under budget. As the application was being developed by student student train trainees ees,, there there were were no major major person personnel nel cost cost associ associate ated. d. Moreove Moreover, r, the techni technical cal requirements were already available so there was no further expenditure for buying software packages. Technical Feasibility: Techni Technical cal feasib feasibili ility ty center centerss around around the existi existing ng comput computer er syste system m (Hardw (Hardware are and Software etc) and to what extend it support the proposed addition. For example, if the current comput computer er is operati operating ng at 80 percen percentt capaci capacity ty - an arbit arbitrar rary y ceili ceiling ng - then then runnin running g another another application could overload the system or require additional Hardware. This involves financial considerations to accommodate technical enhancements. If the budget is a serious constraint, then the project is judged not feasible. In this project, all the necessary cautions have been taken care to make it technically feasible. Using a key the display of text/object is very fast. Also, the tool tools, s, opera operati ting ng syst system em and and prog progra ramm mmin ing g langu languag agee used used in this this local localiz izat atio ion n proce process ss is compatible with the existing one.
The proposed system is to be developed using easy ware i.e. using the JDK1.6, JEdit and Picas Picasaa in softwa software re depart department ment .The .The softwa software re depart departmen mentt alread already y contai contains ns all the necess necessary ary hardware support for the development of the proposed system, No new H/W needed to be procur procured, ed, so no hardwa hardware re was purcha purchased sed .The .The hardwa hardware re and softwa software re requir requireme ements nts were were recognized as follows: Hardware Requirement
Processor
:
Pentium-III/IV
RAM
:
256 MB or more
Hard Disk
:
10 GB or more 15
Behavioral Feasibility:
People are inherently resistant to change, and computers have been known to facilitate change. An estimate should be made of how strong a reaction the user staff is likely to have toward toward the develop developmen mentt of a comput computeri erized zed system system.. Theref Therefore ore it is underst understanda andable ble that that the introduction of a candidate system requires special efforts to educate and train the staff. The software that is being developed is user friendly and easy to learn. In this way, the developed software is truly efficient and can work on any circumstances, tradition, locales. Operational Feasibility:
Operati Operationa onall feasib feasibil ility ity indica indicates tes whethe whetherr there there is enough enough suppor supportt from from users users and managers. managers. During the operational operational feasibilit feasibility y it is found that all the users and managers managers support support for development of software. The new proposed system is very much operational and towards the requirement. It fulfills all the requirements of the typical tasks within seconds i.e. in less time and with less manpower support.
5.7.3 5.7.3 Request Reque st Approval Approv al Not all the requested projects are desirable or feasible. However, those that are both feasible and desirable should be put into schedule. After a project is approved, its cost, priority, completion time, and personnel requirement are estimated and used to determine where to add it to any project list.
The Top Management reviewed the above factors & gave their ascent. After the consent to request approval, the design was taken up.
5.7.4 MVC Architecture
This This proj projec ectt will will be deve develo lope ped d usin using g Mode Modell-Vi View ew-C -Con ontr trol olle lerr archi archite tect ctur ure. e. This This architecture, when implemented makes life of the developer easy. The developer can concentrate on, logic building in the controller Servlet and other Helper classes for it while a designer can design good JSP pages without much java code implementing some logic in the page. In MVC architecture, a central controller Servlet handles all the business logic with the help of some helper classes. Model part can be defined by a pure java class or JavaBeans which are nothing but but tran transf sfer er objec objects ts used used to crea create te the the real real view viewss of the the syst system em to the the user user.. Separ Separat atin ing g development of a project into these aspects is somewhat complex but it increase reusability of components and extensibility of the system.
6. SYSTEM DESIGN 6.1 Introduction
16
Once the software requirements have been analyzed and specified, software design is the first of the three technical activities - design, code generation, and testing- that are required to build and verify the software. Software design sits at the technical kernel of the software engi engine neer erin ing g proce process ss and is appl applie ied d rega regard rdle less ss of the the devel developm opment ent para paradi digm gm and area area of application .The designer’s goal is to produce a model or representation of an entity that will later be built. The design step produces a data design, an architectural design, an interface design, and a procedural design. The importance can be stated with a single word “Quality”. Design is the place where quality is fostered in software development. Design provides us with representations of software that can assess for quality. Design is the only way that we can accurately translate a customer’s view into a finished software product or system. Software design serves as a foundation for all the software-engineering steps that follow. Without a strong design we risk building an unstable system -one that will fall when small changes are made; one that will be difficult to test; one whose quality cannot be assessed until the last stage.
6.1.1 Data Design
The data design is first of four design activities that are conducted during the software engineering. The impact of data structure on program structure and procedural complexity causes data design to have a profound influence on software quality.
6.1. 6.1.2 2
Arch Archit itec ectu tura rall Desi Design gn
The primary objective of architectural-design is to develop a modular program structure and represent the control relationships between modules. In addition architectural design melds program structure and the data structure, defining an interface that enables the data to flow throughout the program. 6.1.3 Interface Design
Interface design focuses on the three areas of concern: 1. The The desi design gn of inte interf rfac acee bet betwe ween en soft softwa ware re modu module les. s. 2. The design of interfaces betw etween the software and and other non non-human producers and consumers of information. 3. The The des desig ign n of of int inter erfa face ce betw betwee een n a huma human n and and the the com compu pute ter. r.
17
6.1.4 Procedural Design
Procedu Procedural ral design design occurs occurs after after data, data, archit architect ectural ural,, and interf interface ace design designss have been establ establish ished. ed. The proced procedura urall design design specif specifies ies the algori algorithm thmic ic detail detail of each each of the functi function on (module) in PDL (Process Design Language).
Bussiness Layer
WEBTIER
Fig: Software Architecture of HRMS
DATABASE
6.2 Software Design Document Document APPLICANT_*.JSP 6.2.1 Introduction During detailed design the internal logic of each of the modules specified in the system is HRMS_USER_LOGIN APPLICABT_TEST_DTL_*.JSP decided. During this phase further details of data structures and algorithms design of each module are specified. The logic of the modules is usually specified in a high-level design description language, which is independent of the target language in which the software is HRMS_EMPLOYEE eventually implemented. All the database tables are specified in this phase.
EMPLOYEE_AGREEMENT_*.JSP
6.2.2 Purpose HRMS_APPLICANT The purpose of this document is to define the Software Design Document of the Human EMPLOYEE_ATTENDANCE_*.JSP Resource Management System . The developer shall use this document for the implementation phase of the product.
APPLICANT_TEST_D ETAIL
EMPLOYEE_*.JSP
EMPLOYEE_DAILY_ ATTENDANCE This software will be designed according to the various modules required to full fill all requirements uncovered in our requirement analysis. The whole can be recognized in our project: LEAVE_REQUEST
7. Software Design HRMS_*.JSP
HRMS_USER_LOGIN_*.JSP 18
SALARY_*.JSP LEAVE_REQUEST_*.JSP
EMPLOYEE_AGREEM ENT EMP_SAL
→
Login Module
This module makes sure that all access to the system is proper and authenticated. All the links and navigation paths are available for manipulating any kind of information only after an authorized person enters a valid set of user id and password. So this module serves as an entry point for the system and only the authorized person can access it.
→
Profile Management Module
The module provides the interface to enter the information for the new employee. The information added once can also be edited. All the information regarding the profile of an employee is stored. This profile information include field like name, date of Birth, address, date of joining, designation, department, and so on.
→
Recruitment Module
This module deals with the recruitment procedure of an organization. Right from the starting with the applicant’s registration, calling for written test, technical round, HR round, and setting the test for the called candidates, all functions are handled by this module. This module also manages all the tests and uploading of the results for all rounds. Finally functioning of this module ends with the listing of selected candidates who can be issued offer letter.
→
Time Management Module
All the attendanc attendancee relate related d detail detailss can be entere entered d and review reviewed ed through through this module. The interface provides fields to enter the in time and out time on the date. Administration can see the daily attendance report for all employees.
→
Leave Module
This module deals with the management management of leave requests. requests. An employee employee can see for the approval of leave requested. A leave application form consist of the field, like employee id, employee name, duration (dates), reasons, etc. The list of the approval leave requests is also shown in the form.
→
Payroll Module
19
This module helps the administration to add the salary details of an employee every month. The salary details consist of amount under various heads like basic, HRA, etc. etc. For For part partic icul ular ar empl employ oyee ee and also also show show the the tota totall sum sum to be trans transmi mitt tted ed to the the corresponding salary account or the payment cheque to be generated.
(B)MINIMUM HARDWARE REQUIREMENTS • • •
Pentium IV processor 256 MB RAM 10 GB HARD DISK
9. USE CASE DIAGRAM A use use case case in soft softwa ware re engi engine neer erin ing g and and syst system emss engi engine neer erin ing g is a description of a system’s behavior as it responds to a request that originates from outside of that system. In other words, a use case describes "who" can do "what" with the system in question. The use case case techni technique que is used used to captur capturee a syste system's m's behavi behaviora orall requir requireme ements nts by detail detailing ing scenario-driven threads through the functional requirements. Use case focus
"Each use case focuses on describing how to achieve a goal or a task. For most software projects, this means that multiple, perhaps dozens of use cases are needed to define the scope of the new system. The degree of formality of a particular software project and the stage of the project will influence the level of detail required in each use case." Use cases should not be confused with the features of the system under consideration. A use case may be related to one or more features, and a feature may be related to one or more use cases. A use case case define definess the interact interaction ionss betwee between n extern external al actors actors and the system system under under consideration to accomplish a goal. An actor specifies a role played by a person or thing when interacting with the system The same person using the system may be represented as different actors because they are playing different roles. For example, "Joe" could be playing the role of a Customer when using an Automated Teller Machine to withdraw cash, or playing the role of a Bank Teller when using the system to restock the cash drawer. Use cases treat the system as a black box, and the interactions with the system, including system responses, are perceived as from outside the system. This is a deliberate p olicy, because it
20
forces the author to focus on what the system must do, not how it is to be done, and avoids the trap of making assumptions about how the functionality will be accomplished. Use cases cases may be descri described bed at the abstra abstract ct level level (busin (business ess use case, someti sometimes mes called called essential use case), or at the system level (system use case). The differences between these is the scope. A business use case is described in technology-free terminology which treats system as a black box and describes the business process that is used by its business actors (people or systems external to the business) to achieve their goals (e.g., manual payment processing, expense report approval, manage corporate real estate). The business use case will describe a proc proces esss that that prov provid ides es valu valuee to the the busi busines nesss acto actor, r, and and it desc descri ribes beswhat what the the proces processs does. Business Process Mapping is another method for this level of business description.
A system system use case is is normally normally described at the system functionality functionality level (for example, create voucher) and specifies the function or the service that the system provides for the user. what the actor achieves interacting with the system. For The system use case will describe what the this this reas reason on it is recom recomme mende nded d that that syst system em use use case case spec specif ific icati ation on begi begin n with with a verb verb (e.g., create voucher, select voucher, select payments, exclude payment, cancel voucher). cancel voucher). Generally, the actor could be a human user or another system interacting with the system being defined.
A use case should:
Describe what the system shall do for the actor to achieve a particular goal. Include no implementation-specific language. Be at the appropriate level of detail.
Fig : Use Case for Employee
10. E-R DIAGRAM An Entity-relationship model is a relational schema database modeling method used to model a system system and its requirements requirements in a top-down approach. This approach is commonly used in relational (RDBMS) database design. The diagrams created using this method are called ER diagrams. An entity-relationship model (ERM) is an abstract conceptual representation of structured data; entity-relationship modeling is the process of generating these models. The end-product of the the mode modeli ling ng proce process ss is an enti entity ty-re -rela lati tion onsh ship ip diag diagra ram m (ERD (ERD)) or ER diag diagra ram, m, a type type of conceptual data model or semantic data model. ER diagrams were originally proposed in 1976 by Dr. Pin-Shan (Peter) Chen Many variants have appeared since then. 21
The first stage of information of information system design uses these models during the requirements analysis to describe information needs or the type of information that is to be stored in a database. The data modeling technique can be used to describe any ontology (i.e. an overview and classifications of used terms and their relationships) for a certain universe of discourse (i.e. area of interest). In the case of the design of an information system that is based on a database, the conceptual data model is, at a later stage (usually called logical design), mapped to a logical data model, such as the relational model; this in turn is mapped to a physical model during physical design. Note that sometimes, both of these phases are referred to as "physical design".
ER DIAGRAM FOR HRMS
START
ADMINISTRAT OR
Return All Respective Exam Record for
Witten TEST Technical Test
Payroll Manage
TIME & LEAVE
Hr Test
Fig : ER Diag for HRMS
11. DATA FLOW DIAGRAM The Data Flow Diagram shows the flow of data or information. It can be partitioned into single processes or functions. Data Flow Diagrams can be grouped together or decomposed into multiple processes.
22
The DFD is an excell excellent ent commun communica icati tion on tool tool for analysts analysts to model model proces processes ses and functional requirements. Used effectively, it is a useful and easy to understand modeling tool. It has broad application and usability across most software development projects. It is easily integrated with data modeling, workflow modeling tools, and textual specs. Together with these, it provides analysts and developers with solid models and specs. Alone, however, it has limited usability. It is simple and easy to understand by users and can be easily extended and refined with further specification into a physical version for the design and development teams.
Data Store
A repository of information. In the physical model, this represents a file, table, etc. In the logical model, a data store is an object or entity. Data Flows
DFDs show the flow of data from external entities into the system, showed how the data moved from one process to another, as well w ell as its logical storage. There are only four symbols:
Squares representing external entities, which are sources or destinations of data. Rounded rectangles representing processes, which take data as input, do something to it, and output it. Arrows Arrows repres represent enting ing the data data flows, flows, which which can either either,, be electr electroni onicc data data or physic physical al items. Open-ended rectangles representing data stores
There are several common modeling rules for creating DFDs:
All processes must have at least one data flow in and one data flow out All processes should modify the incoming data, producing new forms of outgoing data. Each data store must be involved with at least one data flow. Each external entity must be involved with at least one data flow. A data flow must be attached to at least one process.
11.1 Context- Free Diagram ( 0-Level DFD OF STELLAR)
23
12. FLOW CHART A flowchart (also spelled flow-chart and flow chart) is a schematic representation of an algorithm or a process a process.. A flowchart is described as "cross-functional" when the page is divided into different "lanes "lanes"" descri describin bing g the control control of differ different ent organi organizati zationa onall units. units. A symbol symbol appeari appearing ng in a particular "lane" is within the control of that organizational unit. This technique allows the analyst to locate the responsibility for performing an action or making a decision correctly, allowing the relationship between different organizational units with responsibility over a single process. A typical flowchart from older Computer Science textbooks may have the following kinds of symbols:--
START and END symbols, represented as lozenges, ovals or rounded rectangles, usually containing the word "Start" or "End", or another phrase signaling the start or end of a process, such as "submit enquiry" or "receive product".
ARROWS, showing what's called "flow of control" in computer science. An arrow coming from one symbol and ending at another symbol represents that control passes to the symbol the arrow points to.
PROCESSING PROCESSING STEPS, represented as rectangles. Examples: "Add 1 to X"; "replace identified part"; "save changes" or similar.
parallelogram. Examples: Get X from the user; INPUT/OUTPUT , represented as a parallelogram. display X. 24
CONDITIONAL (or DECISION), represented as a diamond (rhombus (rhombus). ). These typically contain a Yes/No question or True/False test. This symbol is unique in that it has two arrows coming out of it, usually from the bottom point and right point, one corresponding to Yes or True, and one corresponding to No or False. The arrows should always be labeled. More than two arrows can be used, but this is normally a clear indicator that a complex decision is being taken, in which case it may need to be broken-down further, or replaced with the "pre-defined process" symbol.
FLOW CHART FOR HRMS
25
Fig : Flow Chart for HRMS
16. TESTING & DEBUGGING 26
Software testing is a critical element of the ultimate review of specification design and coding. Testing of software leads to the uncovering of errors in the software functional and performance requirements are met .Testing also provides a good indication of software reliability and software quality as a whole. The result of different phases of testing are evaluated and then compared with the expected results. If the errors are uncovered they are debugged and corrected. A strategy approach to software testing has the generic characteristics:
Testing begins at the module level and works “outwards” towards the integration of the entire computer based system. Different testing techniques are appropriate at different points of time. Testing and debugging are different activities, but debugging must be accommodated in the testing strategy
16.1 Goals and Objectives
“Testing is a process of executing a program with the intent of finding an error ”. ”. A good test case is one that has a probability of finding an as yet undiscovered error. A successful test is one that that uncover uncoverss an as yet undiscove undiscovered red error. error. Our Object Objective ive is to design design test test proces processes ses that systemati systematically cally uncover different different classes classes of errors errors and do so with minimum minimum amount of time and effort. 16.2 Statement of scope
A description of the scope of the software testing is developed. All the features to be tested are noted as follows. The basic principles that guides software testing are-
All test cases should be traceable top customer requirements. The most severe defects from the customer’s point of view are those that cause the program to fail to meet its requirements. Test case should be planned long before testing begins. Testing plan can begin as soon as the requirement model is complete. Detailed definition of the test cases can begin as soon as the design is solidified. Therefore, the entire test can be planned before any code has been generated. Testing should begin “in the small” and progress towards “in the large”. The first test planned and executed generally focus on the individual modules. As testing progresses testing shifts focus in an attempt to find errors in integrating clusters of modules and ultimately in the entire system
16.3 Test Case
Before the project is released, it has to has pass through a test cases suit, so that the required functionality is met and previous functionality of the system is also not broken to do this, there is an existing test cases which checks for the previous functionality. New test cases are prepared and added to this existing test suit to check for the added functionality. 27
Test case describes an input description and compares the observed output with expected output to know the outcome of the test case. If it is different, then, there is a failure and it must be identified. A pictorial representation of this can be shown as follows .
New Test Case
Output Software Under Testing
Existing Test Case
Comparator
Result Of Testing
16.4 Testing Process
The testing process can be shown as:
Levels of testing
Test Plan
Test Procedures
Test Case Specification
Test Case Execution
Yes
Is Error Uncovere d?
Test Case Analysis
No
Test Report
28
Following types of testing are done on the System.
16.4.1 Unit Testing
The module interface is tested to ensure that information properly flows into and out of the program unit under test. The unit testing is normally considered as an adjunct step to coding step. Because modules are not a standalone program, drivers and/or stubs software must be developed for each unit. A driver is nothing more than a “main program” that accepts test cases data and passes it to the module. A stub serves to replace the modules that are subordinate to the modules to be tested. A stub may do minimal data manipulation, prints verification of entry and returns.
Approaches used for Unit Testing were: Functional Functional Test: Each part of the code was tested individually and the panels were tested individually on all platforms to see if they are working properly.
Performance Test: These determined the amount of ex ecution time spent on various parts of units and the resulting throughput, response time given by the module. Stress Test: A lot of test files were made to work at the same time in order to check how much workloads can the unit bear. Structure Test : These tests were made to check the internal logic of the program and traversing particular execution paths. 16.4.2 Integration Testing
“If they all work individually, they should work when we put them together.” The problem of course is “putting them together “. This can be done in two ways: Top down integration: integration : Modules are integrated by moving downwards through the control hierarchy, beginning with main control module are incorporated into the structure in either a depth first or breadth first manner. Bottom Bottom up integra integration tion:: It begins begins with with constr construct uction ion and testin testing g with with atomic atomic module moduless i.e. i.e. modules at the lowest level of the program structure. Because modules are integrated from the bottom up, processing required for the modules subordinate to a given level is always available and the need of o f stubs is eliminated.
Testing includes Verification and Validation
Verification:- is a process of confirming that software meets its specification. the proc proces esss of conf confir irmi ming ng that that soft softwa ware re meet meetss the the cust custom omer er’s ’s Validation: - is the requirements.
29
16.4.3 Validation Testing
Validation succeeds when software functions in a manner that can be reasonably expected by the customer. It covers the following:Validation test criteria: Performance, functional characteristics and uncovered deviation from specification. Configuration Configuration review: Ensure Ensuress that that all the elemen elements ts of softwa software re config configura uratio tion n have have been been properly developed cataloged and have support for the maintenance phase of software life cycle. Alpha Beta testing: Alpha test is conducted by developer’s site by customer. Beta test is conducted at one or more customer site by software end user. Modular integration testing : testing : Modular integration testing is done to ensure that the module is working independently. The inputs as required by the module are given as required and the output is tested as per the specifications 16.4.4 Debugging Debugging occurs as a consequence of successful testing i.e. when a test case uncovers an error, debugging is the process that results in identifying the location of error ad the removal of error. The poorly understood mental process that connects a symptom to cause is debugging. This process will always have one of the two outcomes:
The cause will be found, corrected and then removed or The cause will not be found. In the latter case the person performing debugging may suspect suspect a cause, design a test case to help validate his suspicion, suspicion, and then work towards the correction of errors in the interactive fashion. Following three approaches of debugging were used: Debugging by Induction Debugging by Deduction Backtracking
18. CONCLUSIONS 30
There is always a room for improvement in any software, however efficient the system may be. The important thing is that the system should be flexible enough for future modifications. The syste system m has been factor factored ed into into differ different ent module moduless to make make system system adapt to the further further changes. Every effort has been made to cover all user requirements and make it user friendly.
Goal achieved: The System is able provide the interface to the user so that he can replicate his desired data. . Though h the the most most part of the the syst system em is supp suppos osed ed to act act in the the User friendliness: friendliness: Thoug background, efforts have been made to make the foreground interaction with user as smooth as possible. Also the integration of the system with Online Examination System And And Onli Online ne Proj Projec ectt Mana Manage geme ment nt Syst System em has been been kept kept in mind mind thro through ughout out the the development phase.
19. REFERENCES
BOOKS 1. Object Object Orie Oriente nted d Design Design with with UML and Java Java 2. Underst Understandi anding ng UML :Pau :Paull Harmon, Harmon, Mark Mark Watso Watson n 3. Softwa Software re Engine Engineeri ering ng :Roger :Roger S. Pres Pressma sman n 31
WEBSITES: 1. 2. 3. 4.
www.Hrsolutions.com www.hrconsultancy.com www.roseindia.com www.wikipedia.com
32