Download as doc, pdf, or txt
Download as doc, pdf, or txt
You are on page 1of 73

PROJECT REPORT ON

EMPLOYEE MANAGEMENT SYSTEM

Guru Jambheshwar University of Science & Technology Hissar (Department of Computer Science & Engineering) Submitted In the Partial Fulfillment for the Award of the Degree of BACHELOR OF TECHNOLOGY (B.Tech) (2005-2009)
GUIDED BY: MR. RISHIPAL SINGH LECT. In CSE DEPTT GJU S&T HISAR . SUBMITTED BY:

Deevesh
0521148 BTECH CSE 4TH YEAR

CONTENTS

1.

Introduction 1.1 Introduction of proposed system 1.2 Scientific novelty and importance of the work 1.3 Objectives and scope 1.4 Problem with existing system

2.

Software and Hardware Requirement Specifications 2.1 Front end (VB.NET) 2.2 Back end (MS-ACCESS) 2.3 Hardware Specifications 2.3 Software Specifications System Design 3.1 Physical Design 3.2 System Design and Programming Structure 3.3 Data Flow Diagram

Implementation and Maintenance 4.1 Implementation 4.2 Maintenance 4.3 Testing

5 . Conclusion 6. Bibliography

ACKNOWLEDGEMENT

The completion of project is the end of the beginning of a learning experience, the value of which can not be measured quantitatively. This project is a product of efficient guidance of all our mentors & is the outcome of the assistance & contribution of a large no. of individuals. I wish to give grateful acknowledgement to the following individuals whose experience in the world of Computer & Information Technology allowed them to make valuable suggestion for bringing this project to the present shape. We express our gratitude towards Mr. RISHI PAL SINGH (lect. of Computer Science Department). I also offer our sincere thanks to all our friends who helped us in completing this project. Deevesh Chaudhary

CERTIFICATE

This

is

to

certify

that

Project

Associates

Mr.Deevesh

Chaudhary(0521148) of B.Tech VIII semester (CSE) has successfully completed the Major Project entitled "EMPLOYEE MANAGEMENT SYSTEM" in the fulfillment for the award of Bachelor of Technology Degree course in C.S.E from Guru Jambheshwar University of Sc and Tech, Hisar during the academic year 2005-2009. We wish him a prosperous, happy & bright future with all the great silvery success in their carrier.

Signature

1.1 Proposed System


The system entitled " EMPLOYEE MANAGEMENT SYSTEM " is application software, which aim at the development of computerized Management System employee in school, offices and it is developed by using .NET technology and MS-ACCESS(2005) as database. Today the technology is fast advancing and it becomes the duty of a professional is to utilize it properly and make it available to the masses. Everything is computerized . For that purpose fast, powerful and smaller computers are developed for commercial and scientific applications. The computer industry focuses on the era of cost, flexibility, reliability and other such immaterial considerations. Our aim is to make the conventional systems computerized with maximum security, thus making it possible for the organizations to serve their customers well. To use the system the user has to first login to the system using a user name and a unique password. The current system " EMPLOYEE MANAGEMENT SYSTEM " can be used to maintain efficiently the employee information of any university.

The graphical user interface leads the user to perform the actions. It also generates the important reports. This report describes the various steps involved in developing the current system. It covers the details of the analysis, design, testing methodology and implementation details. The response of this document is to provide an outline of the development details and usage of the system

It is window-based system, so data lies in the centralized location. Data is secure in case of window based because only authenticated user can access the database.

In the proposed system , there should be a provision of managing information in a systematic and scientific way. information should be available quickly and it should be human error free. Every employee should be given a different employee id. Various validations are provided on different fields to ensure correct and valid data is stored and retreived. The user cann enter over a thousand employees. This is cumbersome at best and requires a large amount of data to be manually typed every year. The units, our customers, are dissatisfied with our non7

timeliness and communication with them. They demand timeliness guidelines. The old system could not proces this kind of requests. Data integrity, concurrent user support, data normalization and duplication, and standardization of abbreviations are all serious problems. The database solves each of these issues and adds extra functionality.

Employee management system basically first of all enters the employee from the applicant and then stores that data in the databases,then depending upon the category the applicant is allotted the salary. Now after the employee is given an unique id, the department is supposed to enter the grade and department to be alloted in the databases . next, department can search any employee by using his/her name, id, or grade.by entering any of these fields in the textbox on fronthand, we can retrieve all the information about that particular employee. After entering the employee details in the database, administrator can delete that employee. Administrator can also edit the employee. In this form administrator can change mostly all details like name, department, salary, grade etc of any existing employee but employee id remains the same.

Family details can also be added and edit for any particular employee for e.g. his/her any relative, relation with that relative, age of relative, what kind of work he\she does and also where that relative works. All this information is stored only for references. After entering all the relatives administrator can see details of all the relatives in an gridview. Further any employee can ask for any number of leaves, here I have put an validation that employee can take leaves only in current month and further months if want to. Other validation is that employee can take leaves only for two purposes either for maternity leave or casual leave. For taking leaves employee had to fill an leave form. Afterthat it is the duty of administrator either to reject or accept the application. If administrator accept the leaves of that employee then his/her salary is automatically deducted for the period of time he/she has taken the leaves. Employee can also ask for loans. For that he/she has to fill a form on fronthand. In the loan application employee can set any amount of installement for any period of time according to his/her ease.After that it is the duty of administrator eithe to sanction or reject the loan. If administrator accept the loan of that employee then his/her salary is automatically deducted.

Administrator can see which leave or loan application are to be sactioned and which are to be rejected. For those employees whose loan or leave applications are sactioned their salary is automatically adjusted. There is another option of viewing salary of all the employees. by clicking the menu item view all we get a grid view showing all the present employees together with their salary.if any employee has been sactioned for leave or loan then his/her new salary that is salary obtained after deduction will be shown in the grid view.

1.2 SCIENTIFIC NOVELTLY AND IMPORTANCE OF THE WORK


To overcome the problems of existing system, a new system is to be developed to aid the user to to manage all details like their salary,grade,deptt,family details, applications, loans etc in an easy and efficient way. This project deals with the process of identifying the employees, recording their information and calculating their salary. This project

10

should maintain the records of each and every employee and their other details. EMPLOYEE MANAGEMENT SYSTEM is basically concerned with managing the employees in a university. The objective of this project is to reduce the effort of Administrator to keep the events such as applicant information, generating grade, feeding family details, generating salaries, allotting department etc. The main objective of this project is to make the EMPLOYEE MANAGEMENT SYSTEM job easy so that there is no need to go through all the files. Only give the employee name or id then the report will be generated and displayed in a grid view.

11

1.3 Objectives and Scope


This software is aimed at making data entry, management, updating, storage and retrieval easier and faster. The following objectives have been kept in mind: Practicality: The system is quite stable and can be operated by the people with average intelligence. Efficiency: I tried to involve accuracy, timeliness and comprehensiveness of the system output. Cost: It is desirable to aim for the system with a minimum cost subject to the condition that it must satisfy the entire requirements. Flexibility: I have tried that the system should be modifiable

depending on the changing needs of the user. Such modifications should entail extensive reconstructing or recreation of software. It should also be portable to different computer systems. Security: This is a very important aspect and I have tried to

cover the areas of hardware reliability, fallback procedures, and physical security of data.

12

From a programmer point of view the objective of the work done by me in the stated software is to make the whole system Object Oriented. Starting with the first step up to the final line of code I wrote, I tried to make the system Object Oriented. The scope of the job assigned to me as my project work is to input the required document information through various input screens, to store them in some database and output them when needed in the form of reports or they should be able to be exported to other softwares like EXCEL, HTML etc. The system can be implemented on a WAP enabled mobile handset, thus providing the Clients and the Providers the ease of accessing the projects and their status without any difficulty and within no time.

1.4 PROBLEM WITH THE EXISTING SYSTEM

Existing system is semi- computerized. Most of the work is done manually in the existing system. The project requirements were to computerize all the sections of existing system. This includes data entry updating of records, calculating work in the system and generation of reports.

13

Excessive workload The volume of workload is always very high as most of the work is done manually in the organization . It becomes very time consuming as a lot of paper work is required and a large number of files and registers are to be maintained. Difficulty in maintaining the records Transferring the

information to the files and registers consumes a lot of time and energy. Since all of the information regarding customers, finished products, order etc is contained the files ,the work of the system is interrupted indefinitely if any of the files is lost, stolen or damaged . Further more if multiple copies of the information is maintained then the one user would not be able to see the work done by the other user and thus the work of independent user may result into in consistency of information which is least desirable for any system. To avoid any inconsistency if any updating as done it is to be done in all related files . Difficulty in information retrieval as to volume of data is very large ,queries are difficult to process and becomes very time consuming .Information retrieval is very difficult. If management wants the summary report ,the problem also arises because such manually produced reports are not dynamic.

14

Lot of Efficient Manpower is Required Due to excessive volume of work a large number of personnel is required .This can be expensive and chances of inconsistency of data are high. If any one is using a file other user who may want to use the same file and has to wait till that particular file is no more used by any one cannot use it. This will result in idleness of human resources.

15

16

2.1 VB.NET(front end):


VB.NET has been used as the front-end language used to develop the user interface for the project. The scripting has bee done using the VB.NET. It is Microsofts strategic language for Rapid Application Development (RAD). It is easy to use, efficient and flexible. This language is preferred because one can build a Windows program quicker and with less effort with VB.NET than with any other programming language. Its a natural language for building database applications, owing to the level and sophistication of the tools included with the language. The project covers distributed development with VB.NET including ADO.NET, COM, and deployment and troubleshooting.

MICROSOFT DOT NET TECHNOLOGIES The .NET Framework is an integral Windows component that supports building and running the next generation of applications and XML Web services. The key components of the .NET Framework are the common language runtime and the .NET Framework class library, which includes ADO.NET, ASP.NET, and Windows Forms. The .NET Framework provides a managed

17

execution environment, simplified development and deployment, and integration with a wide variety of programming languages.

18

19

Visual Basic .NET is the next generation of the Visual Basic language from Microsoft. With Visual Basic you can build .NET applications, including Web services and ASP.NET Web applications, quickly and easily. Applications made with Visual Basic are built on the services of the common language runtime and take advantage of the .NET Framework.

Visual Basic has many new and improved features such as inheritance, interfaces, and overloading that make it a powerful object-oriented programming language. Other new language features include free threading and structured exception handling. Visual Basic fully integrates the .NET Framework and the common language runtime, which together provide language interoperability, garbage collection, enhanced security, and improved versioning support. Visual Basic supports single inheritance and create Microsoft intermediate language (MSIL) as input to native code compilers. Visual Basic is comparatively easy to learn and use, and Visual Basic has become the programming language of choice for hundreds of thousands of developers over the past decade. An understanding of Visual Basic can be leveraged in a variety of ways, such as
20

writing macros in Visual Studio and providing programmability in applications such as Microsoft Excel, Access, and Word.

What is .NET? A vision of how information technology will evolve A platform that supports the vision A business model of software as a service

1. A Vision. Web sites will be joined by Web services New smart devices will join the PC User interfaces will become more adaptable and customizable Enabled by Web standards

2. A Platform. The .NET Framework Visual Studio.NET .NET Enterprise Servers


21

o o o

Database, Messaging, Integration, Commerce, Proxy,

Security, Mobility, Orchestration, Content Management .NET Building Block Services Passport .NET My Services (Appin) Goal: make it incredibility easy to build powerful Web

applications and Web services

3. A business model. Software as a service Subscription-based services Application hosting, e.g. bCentral

Interoperability: Web languages and protocols must be compatible with one another independent of hardware and software. Evolution: The Web must be able to accommodate future technologies. Encourages simplicity, modularity and extensibility. Decentralization: Facilitates Scalability and Robustness.

22

Web Services A programmable application component accessible via standard Web protocols The center of the .NET architecture Exposes functionality over the Web Built on existing and emerging standards are HTTP, XML, SOAP, UDDI, WSDL,

The .NET Framework What is the .NET Framework? o o o o o o A set of technologies for developing and using components to Web Forms Web Services Windows Applications Supports the software lifecycle Development Debugging Deployment create:

The .NET Initiative

23

The introduction of the Internet and its rapid growth in the recent past has led to the development of a number of new Technologies. One of the most important requirements of such applications is the ability to interchange information across platforms and to benefit from the functionality provided by other applications. In the current scenario, although applications serve organization-specific requirements, they are not interoperable. Microsoft has introduced the .NET initiative with the intention of bridging the gap in interoperability between applications. The .NET initiative offers a complete suite for developing and deploying applications, which consists of the following: o NET products: Microsoft has already introduced Visual Studio .NET, which is a tool for developing NET applications by using programming languages such as Visual Basic, C#, and Visual C++. o NET services: Microsoft is coming up with its own set of Web services, known as My Services. These services are based on the Microsoft Passport Authentication service, the same service that is used in Hotmail. Explanation of the .NET Framework Is a collection of services and classes.

24

Exists as a layer between .NET applications and the underlying operating system. Encapsulates much of the functionality, such as debugging and security services. The following figure depicts the components of the .NET Framework:

ADO.NET

25

Is a model used by Visual Basic .NET applications to communicate with a database for retrieving, accessing, and updating data. Uses a structured process flow to interact with a database.

ADO .NET Data Access Most applications need data access at one point of time making it a crucial component when working with applications. Data access is making the application interact with a database, where all the data is stored. Different applications have different requirements for database access. VB.NET uses ADO.NET (Active X Data Object) as it's data access and manipulation protocol, which also enables us to work with data on the Internet. Let's take a look why ADO.NET came into picture replacing ADO. Evolution of ADO.NET The first data access model, DAO (data access model) was created for local databases with the built-in Jet engine which had performance and functionality issues. Next came RDO (Remote Data Object) and ADO (Active Data Object) which were designed for Client Server architectures but soon ADO took over RDO. ADO

26

was a good architecture but as the language changes so is the technology within it. With ADO, all the data is contained in a record set object which had problems when implemented on the network (Internet) and penetrating firewalls. ADO was a connected data access which means that when a connection to the database is established the connection remains open until the application is closed, which raises concerns about database security and network traffic. And also as databases are becoming increasingly important and as they are serving more people a connected data access model makes us think about its use. For example, an application with connected data access may do well when connected to two clients, the same may do poorly when connected to 10 and might be unusable when connected to 100 or more. Also, open database connections use system resources to a maximum extent making the system performance less effective. To cope up with some of the problems mentioned above, ADO.NET came into existence. ADO.NET addresses the above mentioned problems by maintaining a disconnected database access model which means that when an application interacts with the database the connection is opened to serve the request of the application and is closed as soon as the request is completed. Likewise if a database is updated, the connection is opened long enough to complete the Update operation and is closed. By keeping connections open for only a minimum

27

period of time ADO.NET conserves system resources and provides maximum security for databases and also has less impact on system performance. Also, ADO.NET when interacting with database, uses XML by converting all the data into XML and using it for database related
.

operations

making

them

more

efficient.

2.2 ABOUT MS-ACCESS(Back-End)

Microsoft's advanced database creation and maintenance software. It is very popular among developers who maintain online databases with Windows NT. MS FrontPage - A popular site design and management tool developed by Microsoft. Official Web site. Name server - A server responsible for translating IP addresses and domain names. Microsoft Access is a relational database management system from Microsoft, packaged with Microsoft Office Professional which combines the Jet relational database engine with a graphical interface. The development environment provides productivity-enhancing features for both advanced developers and beginning users. It can use data stored in Access/Jet, SQL Server, Oracle, or any ODBC-compliant data container. ... A powerful

28

database compatible with ASP scripting that has been bundled in Microsoft Office. Creating a table by using the Table Wizard If you look in the Wedding List sample database

(WeddingList.mdb), youll find it very simple, with one main table and a few supporting tables for data such as titles, cities, and postal codes. Most databases are usually quite a bit more complex. For example, the Housing Reservations sample database contains six main tables, and the Law Track Contacts sample database contains more than a dozen tables. If you had to create every table by hand, it could be quite a tedious process. Understanding field data types Access supports nine types of data, each with a specific purpose. You can see the details about each data type in the following table.

2.3 Hardware Specifications

29

The system must have the following minimum hardware requirements: Pentium IV Processors 256 MB of RAM 5GB of Hard Disk Server Machine Client Machine

2.4 Software Specifications

The system must have the following software requirements: Visual Basic .Net (version 2.0) Visual Basic .Net Framework (version 2.0) Microsoft Access

30

SYSTEM DESIGN
31

Introduction System design provides the understandings and procedural details necessary for implementing the system recommended in the system study. Emphasis is on the translating the performance requirements into design specifications. The design phase is a transition from a user-oriented document (System proposal) to a document oriented to the programmers or database personnel. System design goes through two phases of development: 1) 2) Logical Design Physical Design

A data flow diagram shows the logical flow of the system. For a system it describes the input (source), output (destination), database (data stores) and procedures (data flows) all in a format that meets the users requirement. When analysis prepare the logical system design, they specify the user needs at a level of detail that virtually determines the information flow into an out of the system and the required data resources. The logical design also specifies input forms and screen layouts.

Logical and Output Design:


32

The logical design of an information system is analogous to an engineering blue print of an automobile. It shows the major features and how they are related to one another. The detailed specification for the new system was drawn on the bases of users requirement data. The outputs inputs and databases are designed in this phase. Output design is one of the most important features of the information system. When the outputs is not of good quality the users will be averse to use the newly designed system and may not use the system. There are many types of output, all of which can be either highly useful or can be critical to the users, depending on the manner and degree to which they are used. Outputs from computer system are required primarily to communicate the results of processing to users, They are also used to provide a permanent hard copy of these results for later consultation. Various types of outputs required can be listed as below: External Outputs, whose destination is outside the organization Internal outputs, whose destination is with the

organization

33

Operational outputs, whose use is purely with in the computer department e.g., program-listing etc.

The actual usage of the planned information The information that is necessary for presentation When and how often output and their format is needed. While designing output for project based Attendance Compilation System, the following aspects of outputs designing were taken into consideration.

The outputs (i.e., well formatted table outputs in the screen itself) designed are simple to read and interpret.

Format of each output was another important point taken into consideration. Output media, for each output appropriate media is decided whether it will be displayed on screen or will be taken to printer or both.

Once all the output reports to be generated by ACS system were identified, they were given to users for their acceptance. For prototyping various outputs, final outputs models were created with dummy data, before they were finalized.

34

Output Definition: The output should be defined in terms of: Types of outputs

Content-headings, numeric, alphanumeric, etc., Format-hardcopy, screen, microfilm, etc., Location-local, remote, transmitted, etc., Frequency-daily, weekly, hourly, etc., Response-immediate with in a period, etc.

Input Design: The input design is the link that ties the information system into the users world. Input specifications describe the manner in which data enters the system for processing. Input design features can ensure the reliability of the system and produce results from accurate data, or they can result in the production of erroneous information.

35

Input Design consists of developing specifications and procedures for data preparation Steps necessary to put data into a usable form for processing. Data entry, the activity of putting data into the computer processing.

Five objectives of design input focus on

Controlling the amount of input required Avoid delay Avoiding errors in data Avoiding extra steps. Keeping the process simple.

SOFTWARE DESIGN

36

The purpose of this phase is to plan a solution for the problem specified by the requirement document. This is first step in moving from the problem domain to solution domain. Designing activity is divided into two parts. a) System Design It aims to identify the modules that should be in the system, the specification of these modules and how they interact with each other to produce the desired result. b) Detailed Design

DATABASE DESIGN A database is a collection of inter-related data stored with a minimum of redundancy to serve many applications. It minimizes the artificiality embedded in using separate files. The primary
37

objectives are fast response time to enquires, more information at low cost, control of redundancy, clarity and ease of use, accuracy and fast recovery. The organization of data in a database aims to achieve three major objectives, they are data integration, data integrity and data independence. During the design of the database at most care has been taken to keep up the objectives of the database design.

38

39

PHYSICAL DESIGN 1.) New Employee

40

2.) view by All

41

3.) New Grade

42

4.) Issue Salary

43

5.) Loan Application

44

DATA FLOW DIAGRAM Data Flow Diagramming is a means of representing a system at any level of detail with a graphic network of symbols showing data flows, data stores, data processes, and data sources/destination.

The data flow diagram is analogous to a road map. It is a network model of all possibilities with different detail shown on different hierarchical levels. This processes of representing different details level is called leveling or partitioning by some data flow diagram advocates. Like a road map, there is no starting point or stop point, no time or timing, or steps to get somewhere. We just know that the data path must exist because at some point it will be needed. A road map shows all existing or planned roads because the road is needed.

Details that is not shown on the different levels of the data flow diagram such as volumes, timing, frequency, etc. is shown on supplementary diagrams or in the data dictionary. For example, data store contents may be shown in the data dictionary.

45

Data Flow Diagram (DFD) uses a number of symbols to represent the systems. Data Flow Diagram also known as Bubble Chart is used to clarify system requirements and identifying the major transformations that will become programs in system design. So it is the starting point of the design phase that functionally decomposes the requirements specifications down to the level of details.

Terms used in DFD

Process A process transforms data values. The lowest level processes

are pure functions without side effects. An entire data flow graphics high level process. Graphical representation:
Graphical Representation:

46

Data flows A data flow connects the output of an object or process to

input of another object or process. It represents the intermediate data value within a computation. It is represented by an arrow and labeled with a description of data, usually its name or type.
Graphical Representation:

Data store A data store is a passive object with in a data flow diagram

that stores data for later access.


Graphical Representation:

47

External Entity A rectangle represents an external entity such as a librarian ,a

library member.
Graphical Representation:

OutPut Symbol

This box represented data production during human computer interaction

Graphical Representation:

48

Employee System

Report

Employee Informatio n

Database

49

Employee Id

View all Employee Informati on


Calculate Salary

Add New Employ ee

Assign Grade

Leave Application

Salary

Grade

Leave

Generate Report

View Grades

Leave Sanctioned

Loan Application

Loan

Loan Sanctioned

50

4.1 IMPLEMENTATION

System implementation is the stage when the user has thoroughly tested the system and approves all the features provided

51

by the system. The various tests are performed and the system is approved only after all the requirements are met and the user is satisfied. The new system may be totally new, replacing an existing manual or automated system, or it may be a major modification to an existing system. In either case, proper implementation is essential to provide a reliable system to meet organizational requirements. Successful implementation may not guarantee improvement in the organization using the new system (that is a design question), but improper will prevent it. Implementation is the process of having systems personnel check out and put new equipment into use, train users, install the new application and construct any files of data needed to use it. This phase is less creative than system design. Depending on the size of the organization that will be involved in using the application and the risk involved in its use, systems developers may choose to test the operation in only one area of the firm with only one or two persons. Sometimes, they will run both old and new system in parallel way to com-pare the results. In still other situations, system developers stop using the old system one day and start using the new one the next.

52

The implementation of the web based or lan based networked project has some extra steps at the time of implementation. We need to configure the system according the requirement of the software. For the project we need to install and configure Weblogic server 8.1 , database server, and the deployment directory for the project.

Aspects of Implementation The two aspects of implementation are: Training Personnel Conversion Procedures

TRAINING Even well designed and technically elegant systems can succeed or fail because of the way they are used. Therefore the

53

quality of the training received by the personnel involved with the system in various ways helps or hinders, and may even prevent, the successful implementation of an information system. Since, Human Resource Recruitment Process is web-based and user friendly, not much effort was required in training process.

CONVERSION: Conversion is the process of changing from the old system to the new system. There are two methods of handling systems conversion: Parallel Run Immediate cut-off

Parallel Run

54

In this approach, the old system and the new system are used simultaneously for some period of time so that the performance of the new system can be monitored and compared with that of the old system. Also in case of failure of the new system, the user can fall back on the old system. The risk of this approach is that the user may never want to shift to new system.

Immediate cut-off In this method, the use of the old system ceases as soon as the new system is implemented and bought in to palace. The old system becomes redundant from the day of implementation of the new system. There is the high risk involved in this approach if the new system is not tested rigorously. This is because of the fact that if the new system fails, then there will not be anything to fall back upon. The advantage of this approach is that both the systems need not be used simultaneously.

Implementation Tools

55

The project was implemented using VB.NET technology.The implementation work was carried out in Windows XP/2000 server platform.

1) Visual basic as language 2) .NET FRAMEWORK as front end 3) MS SQL SERVER as back end.

Coding

This means program construction with procedural specifications has finished and the coding for the program begins:

Once the design phase was over,coding commenced Coding is natural consequence of design. Coding step translate a detailed design representation of software into a programming languae realization.

56

Main emphasis while coding was on style so that the end result was an optimized code. The following points were kept into cosideration while coding:

Coding Style

The structured programming method was used in all the modules the project.It incorporated the following features

The code has been written so that the definition and implementation of each function is contained in one file. A group of related function was clubbed together in one file to include it when needed and save us from the labour of writing it again and again.

Naming Convention: As the project size grows,so does the complexity of recognizing the purpose of the variables.Thus the variables
57

were given meaningful names,whihch would hellp in understanding the context and the purposse of the variable. The function names are also given meaningful names that can be easily understood by the user. Indentation Judicious use of indentation can make the task of reading and understanding a program much simpler.Indentation is an essential part of a goog program.If code id intended without thought itv will seriously affect the readability of the program.

The higher-level statements like he definition of the variables,constants and the function are intended,with each nested block intended,stating their purpose in the code. Blank line is also left between each function definition to make the code look neat. Indentation for each source file stating he purpose of the file is also done.

58

4.2 MAINTENANCE Maintenance or enhancement can be classified as: Corrective Adaptive Perfective. Corrective maintenance means repairing processing or performance failures or making changes because of previously uncorrected problems or false assumptions. Adaptive maintenance means changing the program function.

Perfective maintenance means enhancing the performance or modifying the program(s) to respond to the users additional or changing needs. Maintenance is actually the implementation of the post implementation review plan.

59

As important as it is, many programmers and analysts are reluctant to perform or identify themselves with the maintenance effort. There are psychological, personality and professional reasons for this. In any case, a first class effort must be made to ensure that software changes are made properly and in time to keep the system in tune with user specifications. Maintenance is costly. One way to reduce maintenance costs is through maintenance management and software modification audits. Software modification consists of program rewrites system level updates, and re-audits of low ranking programs to verify and correct the soft spots. In HRRP, care has been taken towards maintenance; Loop Holes can be eradicated from the system from time to time according to changing requirements with lesser cost. The purpose of maintenance is to fix and enhance the system to respond to problems and changing business conditions. Maintenance work also includes activities from all system development phases and usually eventually leads to a decision to abandon the system and build a replacement, starting cycle over again. Maintenance includes the following procedures:

60

There are several types of Maintenance that can be performed to maintain the information system. Different types of system maintenance are listed in next page: Corrective maintenance: This type of maintenance refers to changes made to repair defects in the design. Most of the corrective maintenance surface soon after the installation of the new system in the organization. When they surface they are typically urgent and need to be resolved to curtail possible interruption in the normal business activities. Adaptive maintenance: This type of maintenance involves making changes to system to evolve its functionality to changing business needs or to migrate to a different operating environment. Perfective maintenance: This involves making enhancements to improve processing performance, interface usability, or to add desired, but not necessarily required, system features, Preventive maintenance: This involves changes made to a system to reduce the chance of future system failure. An example of preventive maintenance might be to increase the number of records that a system can process far beyond what is currently needed.

SYSTEM TESTING

61

Here the System testing involved is the most widely used testing process consisting of five stages as shown in the figure. In general, the sequence of testing activities is component testing, integration testing, and then user testing. However, as defects are discovered at any one stage, they require program modifications to correct them and this may require other stages in the testing process to be repeated.

Unit testing

Module testing

Sub-system testing

System testing

Acceptance testing

62

(Component testing) testing)

(Integration testing)

(User

Testing is the process of detecting errors. Testing performs a very critical role for quality assurance and for ensuring the reliability of the software. The results of testing are used later on during maintenance also. This creates two problems: 1. The time lag between the cause and the appearance of the problem. 2. The time interval effect of the system errors on files and the records on the system. A small error can conceivably explode into a much larger problem. Effective testing early in the process translates directly into long term cost savings from a reduced number of errors. Another reason for system testing is its utility as a user oriented vehicle before implementation. The best program is worthless if it

63

does not meet the user requirements. Unfortunately, the users demands are often compromised by efforts to facilitate program or design efficiency in terms of processing time or design efficiency.

TESTING OBJECTIVES: The main objective of testing is to uncover a host of errors, systematically and with minimum effort and time. Stating formally, we can say,

Testing is a process of executing a program with the intent A successful test is one that uncovers an as yet A good test case is one that has a high probability of finding The tests are inadequate to detect possibly present errors. The software more or less confirms to the quality and

of finding an error. undiscovered error. error, if it exists.

reliable standards.

64

LEVELS OF TESTING

In order to uncover the errors present in different phases, we have the concept of levels of testing. The basic levels of testing are

Client Needs Acceptance Testing

Requirements System Testing Design Integration Testing Code Unit Testing

Unit testing

65

Unit testing focuses verification effort on the smallest unit of software i.e. the module. Using the detailed design and the process specifications, testing is done to uncover errors within the boundary of the module. All modules must be successful in the unit test before the start of the integration testing begins. In this project each service can be thought of a module. There are so many modules like Login, HR Department, Interviewer Section, etc. Each module has been tested by giving different sets of inputs. When developing the module as well as finishing the development, the module works without any error. The inputs are validated when accepting them from the user. Integration Testing After unit testing, we have to perform integration testing. The goal here is to see if modules can be integrated properly, the emphasis being on testing interfaces between modules. This testing activity can be considered as testing the design and hence the emphasis on testing module interactions. In this project the main system is formed by integrating all the modules. When integrating all the modules I have checked whether

66

the integration effects working of any of the services by giving different combinations of inputs with which the two services run perfectly before Integration.

WHITE BOX TESTING This is a unit testing method, where a unit will be taken at a time and tested thoroughly at a statement level to find the maximum possible errors. I tested step wise every piece of code, taking care that every statement in the code is executed at least once. The white box testing is also called Glass Box Testing. I have generated a list of test cases, sample data, which is used to check all possible combinations of execution paths through the code at every module level. White-box test focuses on the program control structure. Test cases are derived to ensure that all statement in the program control structure. Test cases are derived to ensure that all statement in the program control structure.

67

BLACK BOX TESTING This testing method considers a module as a single unit and checks the unit at interface and communication with other modules rather getting into details at statement level. Here the module will be treated as a block that will take some input and generate output. Output for a given set of input combinations are forwarded to other modules. Black-box test are designed to uncover errors functional requirement without regard to the internal workings of a program. Black-box testing techniques focus on the information domain of the software, deriving test cases by partitioning the input and output domain of a program in manner that provides through test coverage. The black-box test is used to demonstrate that software functions are operational, that input is properly produced, and that the integrity of external information are maintained. A black-box test examines some fundamental aspect of aSystem Testing little or no regard for the system with integral logical structure of the software.

System Engineering
68

Validation Testing Integration Testing

Validation testing Code

Design

69

This system has following advantages:


Fully automated window application Secure tools Centralized administrator controls All the features are customizable A practical interface
70

A wide variety of options A safety and reliable management system. Employee Software is useful for companies and colleges. Instead of writing each and every record of employee, Employee software offers one time investment and lifetime benefit. Higher Reliability. Fast access of information. Provide security aspects. Increases capacity of handling data

71

Astrahan, M., et al. System R: A Relational Approach to database Management TODS, 1976 Chakravarthy, S., Anwar, E., Maugis, L., and Mishra, D Design of Sentinel: An Object Oriented DBMS with Event based Rules, Information and Software Technology, .1994

72

Date, C. An Introduction to Database Systems, AddisonWesley, 1995 Rustin, R., ed. Database Systems , Prentice Hall, 1972

Internet websites:

www.geocities.com www.osborne.com www.microsoft.com www.ignou.ac.in www.google.com (search engine)

73

You might also like