126
PROJECT ON “ONLINE JOB PLACEMENT SYSTEM” (Under the guidance of Mr.) (Department of Information Systems, WebUniv , New Delhi) By NAME:santosh kumar singh Reg. No. - 521155746 University Center: WEBUNIV INFOTECH LTD. Code No: -964 N-5, South Extension-I Ring Road New Delhi – 110049. Sikkim-Manipal University of Health, Medical and Technological Sciences Distance Education Wing 1

Project Online Job Placement System

Embed Size (px)

Citation preview

PROJECT

ON

“ONLINE JOB PLACEMENT SYSTEM”

(Under the guidance of Mr.)(Department of Information Systems, WebUniv , New Delhi)

ByNAME:santosh kumar singh

Reg. No. - 521155746

University Center:WEBUNIV INFOTECH LTD.

Code No: -964N-5, South Extension-I Ring Road New Delhi – 110049.

Sikkim-Manipal University of Health, Medical and Technological SciencesDistance Education Wing

Syndicate HouseManipal – 576104.

1

CONTENT

INTRODUCTION

Our project Expert.Com Job Placement System has been

designed to help the millions of unemployed youth to get in touch with the

major companies which would help them in getting the right kind of jobs

and would also help the companies to get the appropriate candidates for

appropriate jobs.

This online project would be of great help for job seekers as well as job

providers.

Sr.No. Subject Page Number

1. Introduction 3

2. Objective 6

3. Feasibility Study 7

4. Requirement Analysis 10

5. Design 11

6. Project Modules 24

7. Output Screens 38

8. Project Code 52

9. Testing 79

10. Implementation 90

11. Maintenance 91

12. Bibliography 93

2

Companies are the clients who want the best manpower to be selected for

their concern. Students are the users who want to be placed in the best

company. In this system, there is a registration process each for the

companies and for students. To use the services of this system companies

and students have to register themselves.

This job site uses forms authentication to authenticate users. When new

users register the forms, authentication module automatically give an

authentication ticket to the user’s browser to identify the user.

To simplify development all the pages in the job site are built with user

controls. For example, the standard header and footer for each page are

created with header and footer user control. Users of the website can

publicity post Resume and find better job of companies. If a user is

interested in a job, the user can submit a resume, and if employer is

interested in that user then they enquiry about user and send response by

mail or phone.

This is a public website for posting resume and finding an IT-job. All the

registered users of job site have there own personal home page. The job site

includes a Search button for finding Quick job, it has four option that are:-

Search by location

Search by Date

Search by Qualification.

Search by job Title.

Our project is divided into two main modules.

User module

3

Admin module

The User Module- In this, first of all the users have to register

themselves. If a user is already registered, he can directly login to the site by

entering the unique id and password provided to him. Once the user has

logged in, then he/she can view the various jobs available which are posted

by the various companies. After registering with our website we will send

their resumes and other details to the appropriate companies directly. The

companies will check the resumes of the students and they can send a call

letter for the placement procedure. The student will be selected as per the

companies procedure. This section also deals with providing the user with

various details such as

1) Company information

2) Option for changing their passwords

3) They can also send e-mail to the website administrator for any further

query or doubts.

The Admin Module-The second module, i.e., the admin module is

under the control of the website owners and has no connection with the

users.

Here the administrator gets to control the website as per his wish.

In this section, the administrator can add records of the various companies

that want to be registered with the website and the various jobs being offered

by these companies. He can also view all the records of all the users who

have registered their details with the website and the record of users who

have logged in the website along with their passwords.

4

All in all the administrator gets to take a full control of the website which

includes the adding and deleting of all the records related to the company as

well as the users.

5

OBJECTIVE

The objectives of developing the job center are as given below: -

To store data of the entire user who are registered in the site.

To solve the user’s problem in time efficient manner. Helping the

user to search different job with a robust search tools

To facilitate easy and efficient retrieval of data as and when

required for job by the company.

To generate and print out the various reports.

Online updating of all type of data, updating data using web based

interfaces and with the help of buttons and links in an easy and

convenient way.

Data security is maintained to relatively high level by

implementing it at Database level, so as to ensure that only

authorized users have access to confidential client information.

Developing a viable candidate system that fulfill the

Faster and accurate information retrieval

Easy registration

Login dependent information retrieval and updating.

Correct and consistent maintenance of data and its quick

retrieval

The overall objective of the system to bring the IT-jobseeker and employer

round the globe more closely to each other so that jobseeker can get

correct job and employer can get the correct candidate.

6

FEASIBILITY STUDY

A feasibility study is a test of system proposal according to its work ability,

impact on the organization, ability to meet user needs and effective use of

resources. The objective of feasibility study is not to solve problem but to

acquire a sense of its scope. Consequently, costs/benefits are estimated.

Feasibility study is a process of determining that whether a project is

feasible or not. There can be a number of ways to solve a problem but each

solution can not be the optimal one. Feasibility is the determination of

whether or not a project is worth doing. A feasibility study is an analysis of a

problem to determine if it can be solved effectively in the given budgetary,

operational, technical and schedule constraints in place. The results of the

feasibility study determine which, if any, of a number of feasible solutions to

be developed in the design phase. The aim of the feasibility study is to

identify the best solution under the circumstances by identifying the effects

of this solution on the organization. The contents and recommendations of

such a study will be used as a sound basis for deciding whether to proceed,

postpone or cancel the project.

There can be 3 different types of feasibility studies related to a particular

project:

1) Technical feasibility : The current level of technology can support the

proposed system, the proposed software is able to meet all the objective

of the system and output received is more efficient. So the project is

technically feasible. Depending on the results of the initial

investigation, the survey is expanded to a more detailed

feasibility study. Feasibility study is a test of system proposal

7

according to its workability, impact on the organization, ability to

meet user needs, and effective use of resources.

2) Economic feasibility: Today, software is the most expensive element of

virtually all computer-based systems. For complex, custom systems, a large

cost estimation error can make the difference between profit and loss.

Estimation of resources, cost, and schedule for a software engineering effort

requires experience, access to good historical information, and the courage

to commit to quantitative predictions when qualitative information is all that

exists. Estimation carries inherent risk and this risk leads to uncertainty.

Project complexity has a strong effect of the uncertainty inherent in

planning. Complexity, however, is a relative measure that is affected by

familiarity with past effort. Project size is another important factor that can

effects the accuracy and efficiency of estimates. The proposed system needs

to get hardware and software installed. The short–term costs are over

shadowed by the long–term. The profit of the business is rated as per these

visual drafting system help in establishing the better relationship between

clients and also satisfy their queries and so the cost of the development of

the software and hardware is over shadowed thus project is economically

feasible. Economic feasibility is the most frequently used technique for

evaluating the effectiveness of the proposed system. It is commonly known

as cost/benefit analysis. The procedure is to determine the benefits and

savings that are expected form the system and compare them with the costs.

If the benefits outweigh costs, a decision is taken to design and

implement the system otherwise further justification or the alternatives are

proposed.

3) Operational feasibility : The current system has lot of problems, that

are removed in the proposed system and clients of the system will be

8

free form the burden and a lot of confusion. Clients are themselves

interested in getting the manual replaces by the automated one the

proposal system is user friendly so any person can use it thus it is

operationally feasible. It was established that the proposed automated

system work when it is developed and installed. No major barriers to

implementation were here.

9

REQUIREMENT ANALYSIS

SOFTWARE AND HARDWARE REQUIREMENTS

The SOFTWARE REQUIREMENT SPECIFICATION

(SRS) is very important part of the software building process, which

describes the actual user level requirement form technical point of view that

is what the user exactly, wants?

The objective of preparing the software requirement specification is to

represent the requirements of the software in such a manner that ultimately

leads to successful software implementation. It is the result of the analysis

process of the software development. It should contain all the data the

software is going to process, the function it will provide, and the behavior

will exhibit.

OPERATING SYSTEMWindows XP professional edition Service Pack-II or more

OTHER SOFTWARESMicrosoft IIS version 5.0 or moreSQL Server 2000,Visual Studio.Net 2005

HARDWARE REQUIREMENTS

PROCESSOR Pentium IV higherHARD DISK 6 GB or moreR.A.M 256 MB or moreMONITOR Colored monitor Keyboard Standard 110 keysMouse Simple/scroll/optical

10

DESIGN

INTRODUCTION :

System design is the process of developing specifications for a candidate

system that meet the criteria established in the system analysis. Major step in

system design is the preparation of the input forms and the output reports in

a form applicable to the user.

The main objective of the system design is to make the system user friendly.

System design involves various stages as:

Data Entry

Data Correction

Data Deletion

Processing

Sorting and Indexing

Report Generation

System design is the creative act of invention, developing new inputs, a

database, offline files, procedures and output for processing business to meet

an organization objective. System design builds information gathered during

the system analysis.

CHARACTERSTICS OF A WELL DEFINED SYSTEM

Accessibility

Decision Making Ability

Economy

11

Flexibility

Reliability

Simplicity

DATA BASE DESIGN :

A database management system (DBMS) consists of a collection of

interrelated data and a set of programs to access those data. The collection of

data, usually referred to as the database, contains information about one

particular enterprise. The primary goal of a DBMS is to provide an

environment that is both convenient and efficient to use in retrieving and

sorting database information.

Database systems are designed to manage large bodies of information. The

management of data involves both the definition of storage of information

and the provision of mechanisms for the manipulation of information. We

used relational database management system for developing this system.

The goal of a relational- database management system (RDBMS) design is

to generate a set of relation schemas that allows us to store information

without unnecessary redundancy. Yet also allows us to retrieve information

easily. One approach is to design schemas that are in an appropriate normal

form.

Redundancy means repetition of information i.e., same information may be

written or stored in many place (files). This redundancy gives higher storage

and access cost. It may lead to data inconsistency i.e., the various copies of

12

the same data may no longer agree. When we access this inconsistent data,

system may give wrong information. To reduce the data redundancy we use

the concept of normalization.

Normalization of data is a process in which unsatisfactory relation schemas

are decomposed by breaking up their attribute into smaller relation schemas

that possess desirable properties. Normal forms provide database designers

with, a formal framework for analyzing relation schemas based on their keys

and the functional dependencies among attributes.

13

Data Structure:

Resume table:

Field Name Data Type Description

Resume code Integer, [ Primary key ] Resume code

User id Integer , [Foreign Key] User code

User first name Varchar First name of the user

User last name Varchar Last name of the user

Date of birth Date/time Birth Date of the user

Address Varchar First location

City Varchar City of the location

State Varchar State name

Zip Integer Zip code of the city

Country Varchar User country name

Phone Integer Phone no of the user

Email Varchar Email id of the user

Sex Boolean Male(M),female(F)

Qualification1 Varchar First qualification

Qualification2 Varchar Second qualification

Qualification3 Varchar Higher qualification

Experience Integer Year of the Experience

Resume Varchar Resume in text Format

14

Login table

Field name Data Type Description

User id Varchar, Primary

key

User id is the E-mail_id of the

user)

User password Varchar Registered user have pwd

15

Company table

Field Name Data Type Description

Company Id Integer,[ primary key] Company unique id

Company name Varchar Company name

Company Address Varchar Company first Address

Company location Varchar Company location

State Varchar State

Zip Integer City zip

Phone Integer Company phone

Email id Varchar Company email id

Company site id Varchar Company web ID

16

Apply table:

Field Name Data Type Description

Apply date Date Apply date of the job

Company name Varchar Which company apply

Company id Integer, [Foreign Key] Apply company id

Resume id Integer, [Foreign Key] Applicant resume id

User id Integer , [Foreign Key] Applicant User id

Response Varchar Pending , Short listed

17

Job table

Field Name Data Type Description

Job_Id Varchar, [primary key ] Job id

Job company id Integer , [Foreign Key]

Job_sdate Date Job apply date

Job title Varchar Job title

Job_ldate Date Job last date of apply

Job_mail_id Varchar Job email id

Job_location Varchar Job location

Job_Qulification Varchar Condition of the job

18

DATA FLOW DIAGRAMS

19

Job Placement

System

Registered User

Job Search (Qualification)

Job Search(Title)

Apply Job Detail

Registereds Users DetailJob

Applications

Resume submit

Job details

Company Details

JobSearch(Location)

LEVEL 1 DFD

LEVEL 1 DFD

Users

Login

Registration process

Submit Resume

Job selection& apply

Login-In& Validate

User

Resume

Users

Users

Login

Job

Company

20

FLOWCHART

Yes

No

Job search

Company detail

21

User

User Interacts with browser and Enters address of site

Home page open and computer asked for login and password

System asked for details

Selection / Home Page open

Get company detail

Generates various reports

Server stores details with Uid / pwd

If new

Database

if

Job By Qualification

Job By location

By job Date

User are assign the input

2

1

By job Title

3

Send Email for company job

Server fetch resume from database and send it to company id

Apply for job through id

Store apply job

Database

2

Server check input

1

3

22

1

PROJECT MODULES

The project include following main modules:-

Login of the job-seeker.

Registration of user.

Job description.

Company information.

Application module.

User profile information.

The validation master

Report generation

Brief description of the all modules:

Login of the job-seeker and administrator

This module is considered with login of new user and administrator. Every

user must enter his resume and some details about itself for login the home

page and after submitted his resume system provided a particular user-id and

password at the time of registration. The administrator can also login from

this module. He can insert, delete or update the user login name and

password. This module checks the authenticity of the person accessing the

project. The main objective behind this module is to provide security to the

project so that access is restricted to the authorized users.

Input is taken as login and password that the user enters.

If the login id and password entered by the user matches those of the

database file then it will return and redirected to respective control panel,

otherwise give an Error massage “login denied”.

23

Registration of user: It takes the information from the user and stores it into

the database. This module uses the table “Resume” for its operation.

This table has following sub module.

1) Add

2) Edit

3) Save

4) Delete

Job description: It takes the information from the user and enters it into

database. This module user the table ‘JOB’ for its operation.

This table has following sub module

1) Add

2) Update

3) Delete

Company information: It takes company information from the user and

enters it into database. This module uses the table ‘Company’ for its

operation.

User profile information: It takes user profile information from the user

enters it into database. This module uses the table ‘resumes’ for its

operation.

This table user has following sub module

1) add

2) update

3) delete

24

Validation master: This module validation the entry made by user. If the

entry is not as per the specification an appropriate message is given to the

user.

Application module: With the user of this module user apply to the company

he desire. This module uses the tables “resume” and “apply” for its

operation.

SCHEMA DESIGN:

In database design, several views of data must be considered along with the

persons who use them. In addition to data structuring, where relationships

are reflected between and within entities, we need to identify the application

program’s logical views of data within an overall logical data structure. The

logical view is what the data look like, regardless of how they are stored.

The physical view is the way data exist in physical storage. It deals with

how data are stored, accessed, or related to other data in storage. The schema

is the view that helps the DBMS decide in storage act upon as requested by

the application program.

RELATIONAL MODEL:

Certain rules followed in creating and relating databases in the

relational databases. This governs how to relate data and prevent

redundancy of the data in the databases. The first set of rules called

relational rules ensures that the database is a relational database. The

second set called the normalization rules simplifies the database and

reduce the redundancy of the data.

In proposed system this relational database rules are applied to reduce

the redundancy to make future changes to the table structure easier to

25

manage and minimize the impact of these changes on users interface

or the database. This is done first determining what information is

needed, how items are related, what constraints are required. Tables

are created and linked by appropriate key fields. The constraints on

the data are used to guide the building of tables. The tables are created

by making use of the normalization principles. The proposed system

has its tables in the third normal form.

VALIDATION CHECKS:

A common problem with computer system is that it is very easy to

put incorrect data into them. So the input data is validated to minimize

errors and wrong data entry. For certain data, specific code has been

given and validations are done which enable the user to enter the

required data and correct them if they have entered wrong codes, e.g.

you could mistype a link name or a URL in a database resulting in

reports being occurred in the wrong link name. If you put incorrect

data into the computer system then you will get incorrect results out of

it. Processing incorrect inputs will produce incorrect outputs.

A validation check is an automatic check made by computer to ensure

that any data entered into the computer is sensible. A validation check

does not make sure that data has been entered correctly. It only

ensures that data is sensible. For this reason validation checks are not

usually as effective as verification checks. They can however be

carried out automatically by the computer and therefore require less

work by the computer operators making them cheaper to use.

METHODS OF VALIDATION:

There are many different methods of validations. The most

appropriate method to use will depend upon what data is being

entered. The most common methods are listed here.

26

Presence Checks: checks that data has been entered into

the field and that it has not been left blank, e.g. checks that Project ID

is always entered into each record in a database of project details.

Type Checks: checks that an entered value is of particular

type. E.g. checks that a field is varchar, a number, etc.

Length Checks: checks length of an entered value, e.g.

Project ID is not longer than a particular number of characters.

Format Checks: Checks that an entered value has a

particular format. E.g. a date must be consist of “mm-dd-yy” format.

If the user tries to do unauthorized operations the appropriate error

messages are produced by the systems.

DATA DICTIONARY:

In our DFD, we give names to data flows, processes, and data stores.

Although the names are descriptive of the data, they do not give

details. So in the following DFD, our interest is to build some

structured in place to keep details of the contents of data flow,

processes, and data store. A data dictionary is a structured repository

of data about data. It is a set of rigorous definition of all DFD data

element and data structure.

27

A data dictionary has many advantages:

1. The most obvious is documentation. It is valuable reference in any

organization.

2. Another advantage is improving analyst/user communication by

establishing consistent definition of various elements, terms and

procedures.

3. During implementation, it serves as a common base against which

programmers who are working on the system compare data

description.

4. Also control information is maintained for each data element cross

referenced in the data dictionary. E.g. program that use a given data

element are cross referenced in a data dictionary, which makes it easy

to identify them and make any necessary changes.

Finally, a data dictionary is an important step in building a database.

Most database management system has a data dictionary as a standard

feature.

28

INPUT DESIGN:

The input design is the link between the information system and the

user. It comprises developing specification and procedure for data

preparation and those steps that are necessary to put transaction data

into a usable form for processing data entry. The activity of putting

data into the computer for processing can be achieved by instructing

the computer to read data from a written or printed document or it can

occur by having people key data directly into the system. The design

of inputs focuses on controlling the amount of inputs required,

controlling errors, avoiding delay, avoiding extra steps and keeping

the process simple.

The system needs the following information for processing:

Information regarding Project Details

Information regarding Project Design Details

Information regarding Category, Location Details

OUTPUT DESIGN :

In output design, emphasis is given on producing a hard copy of the

information required as the output on the computer screen in some

predefined manner. Computer output is the most important and direct

source of information to the user. Output design is a process that

involves designing necessary outputs that should be given to various

users according to their requirements. Efficient, intelligible output

design should improve the system’s relationship with the user and

help in decision making. Since the reports are directly referred by the

management for taking the decisions and to draw conclusions, they

must be designed with utmost care and the details in the reports must

be simple, descriptive and clear to the user. The options for the

29

outputs and reports are given the system menu.

30

PROGRAMMING LANGUAGES AND DEVELOPMENT

TOOLS USED IN PROJECT

VB.NET is Microsoft’s 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. It’s 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,

deployment and troubleshooting. ASP.NET using VB.NET is used to

provide server side processing

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 execution environment, simplified development and

deployment, and integration with a wide variety of programming language.

31

. NET Framework in Context

Overview of the .NET Framework

The .NET Framework is a new computing platform that simplifies

application

development in the highly distributed environment of the Internet.

The .NET Framework is designed to fulfill the following objectives:

To provide a consistent object-oriented programming environment

whether object code is stored and executed locally, executed locally

but Internet-distributed, or executed remotely.

To provide a code-execution environment that minimizes software

deployment and versioning conflicts.

To provide a code-execution environment that guarantees safe

execution of code, including code created by an unknown or semi-

trusted third party.

To provide a code-execution environment that eliminates the

performance problems of scripted or interpreted environments.

To make the developer experience consistent across widely varying

types of applications, such as Windows-based applications and Web-

based applications.

To build all communication on industry standards to ensure that code

based on the .NET Framework can integrate with any other code.

Visual Basic   .NET

32

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

creates 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 writing macros in Visual Studio and

providing programmability in applications such as Microsoft Excel, Access,

and Word.

ASP.NET

ASP.NET is a programming framework built on the common

language runtime that can be used on a server to build powerful Web

applications. ASP.NET offers several important advantages over previous

Web development models:

33

i) Enhanced Performance. ASP.NET is compiled common language

runtime code running on the server. Unlike its interpreted

predecessors, ASP.NET can take advantage of early binding, just-in-

time compilation, native optimization, and caching services right out

of the box. This amounts to dramatically better performance before

you ever write a line of code.

ii) Excellent Tool Support. A rich toolbox and designer in the Visual

Studio integrated development environment complement the

ASP.NET framework. WYSIWYG editing, drag-and-drop server

controls, and automatic deployment are just a few of the features this

powerful tool provides.

iii) Power and Flexibility. Because ASP.NET is based on the common

language runtime, the power and flexibility of that entire platform is

available to Web application developers. The .NET Framework class

library, Messaging, and Data Access solutions are all seamlessly

accessible from the Web. ASP.NET is also language-independent, so

you can choose the language that best applies to your application or

partition your application across many languages. Further, common

language runtime interoperability guarantees that your existing

investment in COM-based development is preserved when migrating

to ASP.NET.

iv) Simplicity. ASP.NET makes it easy to perform common tasks, from

simple form submission and client authentication to deployment and

site configuration. For example, the ASP.NET page framework allows

you to build user interfaces that cleanly separate application logic

from presentation code and to handle events in a simple, Visual Basic

- like forms processing model. Additionally, the common language

34

runtime simplifies development, with managed code services such as

automatic reference counting and garbage collection.

v) Manageability. ASP.NET employs a text-based, hierarchical

configuration system, which simplifies applying settings to your

server environment and Web applications. Because configuration

information is stored as plain text, new settings may be applied

without the aid of local administration tools. This "zero local

administration" philosophy extends to deploying ASP.NET

Framework applications as well. An ASP.NET Framework

application is deployed to a server simply by copying the necessary

files to the server. No server restart is required, even to deploy or

replace running compiled code.

vi) Scalability and Availability. ASP.NET has been designed with

scalability in mind, with features specifically tailored to improve

performance in clustered and multiprocessor environments. Further,

processes are closely monitored and managed by the ASP.NET

runtime, so that if one misbehaves (leaks, deadlocks), a new process

can be created in its place, which helps keep your application

constantly available to handle requests.

vii) Customizability and Extensibility. ASP.NET delivers a well-

factored architecture that allows developers to "plug-in" their code at

the appropriate level. In fact, it is possible to extend or replace any

subcomponent of the ASP.NET runtime with your own custom-

written component. Implementing custom authentication or state

services has never been easier.

viii)Security. With built in Windows authentication and per-application

configuration, you can be assured that your applications are secure.

35

ASP.NET architecture

Fig 8. ASP.NET Architecture

Microsoft SQL Server 2005

Microsoft SQL Server 2005 provides the Microsoft Windows Server System

integrated server software with a database platform for the next generation

of connected, scalable, and reliable enterprise applications. SQL Server 2005

provides the bedrock foundation that DBAs can bet on to build their next

generation IT infrastructure.

At the core of SQL Server 2005 are new infrastructure application capabilities.

SQL Service Broker is a distributed application framework that provides a new

form of scalability and reliability for asynchronous message delivery. Though

not new, Microsoft SQL Server Notification Services, Reporting Services, and

SQL Server Mobile Edition are all greatly enhanced in SQL Server 2005.

36

37

OUTPUT SCREENS

38

WELCOME PAGE FOR ADMINISTRATOR

39

PAGE FOR ADDING COMPANY DETAILS

40

PAGE FOR ADDING COMPANY DETAILS

ALONG WITH THE JOBS OFFERED

41

PAGE FOR DISPLAYING USER COMPANY

DETAILS

42

PAGE FOR DISPLAYING USER LOGIN

DETAILS

43

44

PAGE FOR DISPLAYING REGISTERED

USERS

45

46

REGISTRATION PAGE FOR THE USERS

47

LOGIN PAGE FOR THE USERS

48

WELCOME PAGE FOR THE USERS

49

SEARCHING JOBS ACCORDING TO JOB

LOCATION

50

51

SEARCHING JOBS ACCORDING TO JOB

TITLE

52

PAGE STATING ABOUT US INFORMATION

53

54

PROJECT CODE

Apply Form

Imports System.Data.SqlClientImports System.DataPartial Class Grid_View Inherits System.Web.UI.Page Dim con As New SqlConnection("Server=localhost;database=job;trusted_connection=yes") Dim cmd As New SqlCommand("select *from Apply", con) Dim cmd1 As New SqlCommand Dim da As New SqlDataAdapter(cmd) Dim ds As New DataSet Dim drr As SqlDataReader Dim cmb As New SqlCommandBuilder(da) Dim dr() As DataRow

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load con.Open() da.Fill(ds, "Apply") If Page.IsPostBack = False Then ViewState("ds") = ds bind() Else ds = ViewState("ds") End If

End Sub Public Sub bind() gv1.DataSource = ds gv1.DataBind() End Sub

Protected Sub gv1_PageIndexChanging(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewPageEventArgs) Handles gv1.PageIndexChanging gv1.PageIndex = e.NewPageIndex bind() End Sub

Protected Sub gv1_RowCancelingEdit(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewCancelEditEventArgs) Handles gv1.RowCancelingEdit gv1.EditIndex = -1 bind() End Sub

Protected Sub gv1_RowDeleting(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewDeleteEventArgs) Handles gv1.RowDeleting

dr = ds.Tables("Apply").Select("ApplyId='" & gv1.Rows(e.RowIndex).Cells(1).Text & "'") dr(0).Delete()

55

da.Update(ds, "Apply") bind() End Sub

Protected Sub gv1_RowEditing(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewEditEventArgs) Handles gv1.RowEditing gv1.EditIndex = e.NewEditIndex bind() End Sub

Protected Sub gv1_RowUpdating(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewUpdateEventArgs) Handles gv1.RowUpdating

dr = ds.Tables("Apply").Select("ApplyId = " & gv1.Rows(e.RowIndex).Cells(1).Text & "") dr(0)(1) = CType(gv1.Rows(e.RowIndex).Cells(2).Controls(0), TextBox).Text dr(0)(2) = CType(gv1.Rows(e.RowIndex).Cells(3).Controls(0), TextBox).Text dr(0)(3) = CType(gv1.Rows(e.RowIndex).Cells(4).Controls(0), TextBox).Text dr(0)(4) = CType(gv1.Rows(e.RowIndex).Cells(5).Controls(0), TextBox).Text dr(0)(5) = CType(gv1.Rows(e.RowIndex).Cells(6).Controls(0), TextBox).Text

da.Update(ds, "Apply") gv1.EditIndex = -1 bind() End Sub

Protected Sub callme(ByVal sender As Object, ByVal e As System.EventArgs) Dim i For i = 0 To gv1.Rows.Count - 1 If CType(gv1.Rows(i).Cells(1).FindControl("chk1"), CheckBox).Checked = True Then gv1.Rows(i).BackColor = Drawing.Color.Aquamarine Else gv1.Rows(i).BackColor = Drawing.Color.White

End If

Next End Sub

Protected Sub btndel_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btndel.Click 'Dim dr() As DataRow Dim i For i = 0 To gv1.Rows.Count - 1 If CType(gv1.Rows(i).Cells(1).FindControl("chk1"), CheckBox).Checked = True Then dr = ds.Tables("Apply").Select("ApplyId='" & gv1.Rows(i).Cells(1).Text & "'") dr(0).Delete() End If

56

Next da.Update(ds, "Apply") bind()

End Sub

Protected Sub btnadd_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnadd.Click Dim dr As DataRow cmd1.CommandText = " select max(ApplyId) from Apply " cmd1.Connection = con ' con.Open() drr = cmd1.ExecuteReader() drr.Read() Dim num As Integer = drr(0) con.Close() num = num + 1 dr = ds.Tables("Apply").NewRow dr(0) = num dr(1) = "Please Write Here" dr(2) = "Please Write Here" dr(3) = "Please Write Here" dr(4) = "Please Write Here" dr(5) = "Please Write Here" dr(6) = "Please Write Here"

ds.Tables("Apply").Rows.InsertAt(dr, 0) ViewState("ds") = ds gv1.EditIndex = 0 bind() con.Close() End Sub

Protected Sub Button2_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button2.Click

Dim d, m, y, dmy As String d = ddApldate.SelectedValue m = ddAplm.SelectedValue y = ddAplYear.SelectedValue dmy = d & "/" & m & "/" & y cmd = New SqlCommand("insert into Apply(ApplyDate,comp_name,comp_id,Resume_code,userId,Response) values(@ApplyDate,@comp_name,@comp_id,@Resume_code,@userId,@Response)", con) cmd.Parameters.Add(New SqlParameter("@ApplyDate", dmy)) cmd.Parameters.Add(New SqlParameter("@comp_name", txtCompnayName.Text)) cmd.Parameters.Add(New SqlParameter("@comp_id", txtCompID.Text)) cmd.Parameters.Add(New SqlParameter("@Resume_code", txtResume.Text)) cmd.Parameters.Add(New SqlParameter("@userId", txtUsrID.Text)) cmd.Parameters.Add(New SqlParameter("@Response", txtResponse.Text)) cmd.ExecuteNonQuery() Try

57

Response.Write("<script>") Response.Write("alert(' Thanks For Registration ')") Response.Write("</script>") ' Response.Redirect("Login.aspx") Catch ex As Exception Response.Write(ex.Message) End Try con.Close()

End Sub

Protected Sub gv1_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles gv1.SelectedIndexChanged

End SubEnd Class

58

Company Profile

Imports System.DataImports System.Data.SqlClientPartial Class Admin_Company Inherits System.Web.UI.Page Dim con As New SqlConnection("server=localhost;database=job;trusted_connection=yes") Dim da As New SqlDataAdapter Dim ds As New DataSet Dim cmd As New SqlCommand Dim cmd1 As New SqlCommand Dim cmd2 As New SqlCommand Dim drr As SqlDataReader Dim cmb As New SqlCommandBuilder(da) Dim dr() As DataRow Dim cmd3 As New SqlCommand

Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click cmd = New SqlCommand("insert into company(comp_id,comp_name,CompAdd,CompLoc,State,Zip,Phone,Email,CompsiteId) values(@comp_id,@comp_name,@CompAdd,@CompLoc,@State,@Zip,@Phone,@Email,@CompsiteId)", con) 'md = New SqlCommand("insert into company(comp_name,CompAdd,CompLoc,State,Zip,Phone,Email,CompsiteIid) values(@comp_name,@CompAdd,@CompLoc,@State,@Zip,@Phone,@Email,@CompsiteIid)", con) cmd.Parameters.Add("@comp_id", txtCompId.Text) cmd.Parameters.Add("@comp_name", txtcompname.Text) cmd.Parameters.Add("@CompAdd", txtCompAdd.Text) cmd.Parameters.Add("@CompLoc", DDCLO.SelectedValue) cmd.Parameters.Add("@State", DDCstate.SelectedValue) cmd.Parameters.Add("@Zip", txtZip.Text) cmd.Parameters.Add("@Phone", txtPhone.Text) cmd.Parameters.Add("@Email", txtCompEmail.Text) cmd.Parameters.Add("@CompsiteId", txtSiteId.Text) cmd.ExecuteNonQuery() cmd1 = New SqlCommand("insert into Apply(comp_id)values(" & txtCompId.Text & ")", con) cmd1.ExecuteNonQuery() cmd2 = New SqlCommand("insert into job(comp_id)values(" & txtCompId.Text & ")", con) cmd2.ExecuteNonQuery() Try Response.Write("<script>") Response.Write("alert(' Thanks For Registration ')") Response.Write("</script>") ' Response.Redirect("Login.aspx") Catch ex As Exception Response.Write(ex.Message) End Try

End Sub

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load

59

con.Open() End Sub

End Class

60

Company Report

Imports System.DataImports System.Data.SqlClientPartial Class Admin_Company_Report Inherits System.Web.UI.Page Dim con As New SqlConnection("Server=localhost;database=job;trusted_connection=yes") Dim cmd As New SqlCommand("select *from company", con) Dim cmd1 As New SqlCommand Dim da As New SqlDataAdapter(cmd) Dim ds As New DataSet Dim drr As SqlDataReader Dim cmb As New SqlCommandBuilder(da) Dim dr() As DataRow Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load con.Open() da.Fill(ds, "company") If Page.IsPostBack = False Then ViewState("ds") = ds bind() Else ds = ViewState("ds") End If End Sub

Protected Sub gv1_PageIndexChanging(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewPageEventArgs) Handles gv1.PageIndexChanging gv1.PageIndex = e.NewPageIndex bind() End Sub Public Sub bind() gv1.DataSource = ds gv1.DataBind() End Sub Protected Sub callme(ByVal sender As Object, ByVal e As System.EventArgs) Dim i For i = 0 To gv1.Rows.Count - 1 If CType(gv1.Rows(i).Cells(1).FindControl("chk1"), CheckBox).Checked = True Then gv1.Rows(i).BackColor = Drawing.Color.Aquamarine Else gv1.Rows(i).BackColor = Drawing.Color.White

End If Next End Sub

End Class

61

Company Updation

Imports System.DataImports System.Data.SqlClientPartial Class Admin_Default Inherits System.Web.UI.Page Dim con As New SqlConnection("server=localhost;database=job;trusted_connection=yes") Dim da As New SqlDataAdapter Dim ds As New DataSet Dim cmd As New SqlCommand Dim cmd1 As New SqlCommand Dim cmd2 As New SqlCommand Dim drr As SqlDataReader Dim cmb As New SqlCommandBuilder(da) Dim dr() As DataRow Dim cmd3 As New SqlCommand Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load da = New SqlDataAdapter("select * from company", con) con.Open() da.Fill(ds, "company") If Page.IsPostBack = False Then ViewState("ds") = ds bind() Else ds = ViewState("ds") End If

End Sub Public Sub bind() gv1.DataSource = ds gv1.DataBind() End Sub

Protected Sub gv1_PageIndexChanging(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewPageEventArgs) Handles gv1.PageIndexChanging gv1.PageIndex = e.NewPageIndex bind() End Sub

Protected Sub gv1_RowCancelingEdit(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewCancelEditEventArgs) Handles gv1.RowCancelingEdit gv1.EditIndex = -1 bind() End Sub

Protected Sub gv1_RowDeleting(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewDeleteEventArgs) Handles gv1.RowDeleting

dr = ds.Tables("company").Select("comp_id='" & gv1.Rows(e.RowIndex).Cells(1).Text & "'") dr(0).Delete() da.Update(ds, "company") bind()

62

End Sub

Protected Sub gv1_RowEditing(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewEditEventArgs) Handles gv1.RowEditing gv1.EditIndex = e.NewEditIndex bind() End Sub

Protected Sub gv1_RowUpdating(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewUpdateEventArgs) Handles gv1.RowUpdating dr = ds.Tables("company").Select("comp_id = " & gv1.Rows(e.RowIndex).Cells(1).Text & "") 'dr = ds.Tables("company").Select("comp_id = " & gv1.Rows(e.RowIndex).Cells(1).Text & "") dr(0)(1) = CType(gv1.Rows(e.RowIndex).Cells(2).Controls(0), TextBox).Text dr(0)(2) = CType(gv1.Rows(e.RowIndex).Cells(3).Controls(0), TextBox).Text dr(0)(3) = CType(gv1.Rows(e.RowIndex).Cells(4).Controls(0), TextBox).Text dr(0)(4) = CType(gv1.Rows(e.RowIndex).Cells(5).Controls(0), TextBox).Text dr(0)(5) = CType(gv1.Rows(e.RowIndex).Cells(6).Controls(0), TextBox).Text dr(0)(6) = CType(gv1.Rows(e.RowIndex).Cells(7).Controls(0), TextBox).Text dr(0)(7) = CType(gv1.Rows(e.RowIndex).Cells(8).Controls(0), TextBox).Text dr(0)(8) = CType(gv1.Rows(e.RowIndex).Cells(9).Controls(0), TextBox).Text da.Update(ds, "company") gv1.EditIndex = -1 'dr = ds.Tables("company").Select("comp_id = " & gv1.Rows(e.RowIndex).Cells(1).Text & "") 'dr(0)(1) = CType(gv1.Rows(e.RowIndex).Cells(2).Controls(0), TextBox).Text 'dr(0)(2) = CType(gv1.Rows(e.RowIndex).Cells(3).Controls(0), TextBox).Text 'dr(0)(3) = CType(gv1.Rows(e.RowIndex).Cells(4).Controls(0), TextBox).Text 'dr(0)(4) = CType(gv1.Rows(e.RowIndex).Cells(5).Controls(0), TextBox).Text 'dr(0)(5) = CType(gv1.Rows(e.RowIndex).Cells(6).Controls(0), TextBox).Text 'dr(0)(6) = CType(gv1.Rows(e.RowIndex).Cells(7).Controls(0), TextBox).Text ''dr(0)(7) = CType(gv1.Rows(e.RowIndex).Cells(8).Controls(0), TextBox).Text ''dr(0)(8) = CType(gv1.Rows(e.RowIndex).Cells(9).Controls(0), TextBox).Text 'da.Update(ds, "company") 'gv1.EditIndex = -1 bind() End Sub

Protected Sub callme(ByVal sender As Object, ByVal e As System.EventArgs)

63

Dim i For i = 0 To gv1.Rows.Count - 1 If CType(gv1.Rows(i).Cells(1).FindControl("chk1"), CheckBox).Checked = True Then gv1.Rows(i).BackColor = Drawing.Color.Aquamarine Else gv1.Rows(i).BackColor = Drawing.Color.White

End If

Next End Sub

Protected Sub btnAdd_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnAdd.Click Dim dr As DataRow 'cmd3.CommandText = " select max(comp_id) from company " 'cmd3.Connection = con 'con.Open() 'drr = cmd3.ExecuteReader() 'drr.Read() 'Dim num As Integer = drr(0)

'num = num + 1 'dr = ds.Tables("company").NewRow 'dr(0) = num 'dr(1) = "Please Write Here" 'dr(2) = "Please Write Here" 'dr(3) = "Please Write Here" 'dr(4) = "Please Write Here" 'dr(5) = "Please Write Here" 'dr(6) = "Please Write Here" 'dr(7) = "Please Write Here" 'dr(8) = "Please Write Here"

'ds.Tables("company").Rows.InsertAt(dr, 0) 'ViewState("ds") = ds 'gv1.EditIndex = 0 'bind() cmd3.CommandText = "select max(comp_id) from company" cmd3.Connection = con

drr = cmd3.ExecuteReader() drr.Read() 'Dim num As Integer = drr(0) con.Close() 'num = num + 1 dr = ds.Tables("company").NewRow ds.Tables("company").Rows.InsertAt(dr, 0) ViewState("ds") = ds gv1.EditIndex = 0 bind()

con.Close() End Sub

Protected Sub btnDel_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnDel.Click 'Dim dr() As DataRow

64

Dim i For i = 0 To gv1.Rows.Count - 1 If CType(gv1.Rows(i).Cells(1).FindControl("chk1"), CheckBox).Checked = True Then dr = ds.Tables("company").Select("comp_id='" & gv1.Rows(i).Cells(1).Text & "'") dr(0).Delete() End If

Next da.Update(ds, "company") bind()

End Sub

End Class

65

Job Profile

Imports System.DataImports System.Data.SqlClientPartial Class Admin_Jobs Inherits System.Web.UI.Page Dim con As New SqlConnection("server=localhost;database=job;trusted_connection=yes") Dim cmd As New SqlCommand Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load con.Open() End Sub

Protected Sub Button2_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button2.Click Dim d, d1, m1, y1, m, y, dmy, dmy1 As String d = ddJobDate.SelectedValue m = ddJobMonth.SelectedValue y = ddJobYear.SelectedValue dmy = d & "/" & m & "/" & y d1 = ddlastDate.SelectedValue m1 = ddLastMonth.SelectedValue y1 = ddLastYear.SelectedValue dmy1 = d1 & "/" & m1 & "/" & y1

cmd = New SqlCommand("insert into Job(Job_Id,comp_id,Job_date,Job_title,Job_ldate,Job_mail_id,JobLoc,Job_Qual) values(@Job_Id,@comp_id,@Job_date,@Job_title,@Job_ldate,@Job_mail_id,@JobLoc,@Job_Qual)", con)

cmd.Parameters.Add("@Job_Id", txtjob.Text) cmd.Parameters.Add("@comp_id", txtcmpId.Text) cmd.Parameters.Add("@Job_date", dmy) ''cmd.Parameters.Add("@dob", txtId.Text) cmd.Parameters.Add("@Job_title", ddjobtit.SelectedValue) cmd.Parameters.Add("@Job_ldate", dmy1) cmd.Parameters.Add("@Job_mail_id", txtMail.Text) cmd.Parameters.Add("@JobLoc", ddlocation.Text) cmd.Parameters.Add("@Job_Qual", ddjobQual.Text) Try cmd.ExecuteNonQuery() Response.Write("<script>") Response.Write("alert(' Thanks For Submitting ')") Response.Write("</script>") ' Response.Redirect("Login.aspx") Catch ex As Exception Response.Write(ex.Message) End Try con.Close() End Sub

Protected Sub DDjobcity_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles DDjobcity.SelectedIndexChanged

End Sub

66

Protected Sub DropDownList6_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles ddJobYear.SelectedIndexChanged

End Sub

Protected Sub DropDownList1_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles ddJobDate.SelectedIndexChanged

End Sub

Protected Sub DropDownList3_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles ddlastDate.SelectedIndexChanged

End Sub

Protected Sub DropDownList4_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles ddLastMonth.SelectedIndexChanged

End SubEnd Class

67

Login Report

Imports System.DataImports System.Data.SqlClientPartial Class Admin_login_Reprt Inherits System.Web.UI.Page Dim con As New SqlConnection("Server=localhost;database=job;trusted_connection=yes") Dim cmd As New SqlCommand("select *from login", con) Dim cmd1 As New SqlCommand Dim da As New SqlDataAdapter(cmd) Dim ds As New DataSet Dim drr As SqlDataReader Dim cmb As New SqlCommandBuilder(da) Dim dr() As DataRow Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load con.Open() da.Fill(ds, "login") If Page.IsPostBack = False Then ViewState("ds") = ds bind() Else ds = ViewState("ds") End If End Sub Public Sub bind() gv1.DataSource = ds gv1.DataBind() End Sub Protected Sub callme(ByVal sender As Object, ByVal e As System.EventArgs) Dim i For i = 0 To gv1.Rows.Count - 1 If CType(gv1.Rows(i).Cells(1).FindControl("chk1"), CheckBox).Checked = True Then gv1.Rows(i).BackColor = Drawing.Color.Aquamarine Else gv1.Rows(i).BackColor = Drawing.Color.White

End If

Next

End Sub

Protected Sub gv1_PageIndexChanging(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewPageEventArgs) Handles gv1.PageIndexChanging gv1.PageIndex = e.NewPageIndex bind() End SubEnd Class

68

New user report

Imports System.DataImports System.Data.SqlClientPartial Class Admin_New_User_Report Inherits System.Web.UI.Page Dim con As New SqlConnection("Server=localhost;database=job;trusted_connection=yes") Dim cmd As New SqlCommand("select *from Resume", con) Dim cmd1 As New SqlCommand Dim da As New SqlDataAdapter(cmd) Dim ds As New DataSet Dim drr As SqlDataReader Dim cmb As New SqlCommandBuilder(da) Dim dr() As DataRow

Protected Sub gv1_PageIndexChanging(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewPageEventArgs) Handles gv1.PageIndexChanging gv1.PageIndex = e.NewPageIndex bind() End Sub Protected Sub gv1_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles gv1.SelectedIndexChanged

End Sub

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load con.Open() da.Fill(ds, "Resume") If Page.IsPostBack = False Then ViewState("ds") = ds bind() Else ds = ViewState("ds") End If End Sub Public Sub bind() gv1.DataSource = ds gv1.DataBind() End Sub Protected Sub callme(ByVal sender As Object, ByVal e As System.EventArgs) Dim i For i = 0 To gv1.Rows.Count - 1 If CType(gv1.Rows(i).Cells(1).FindControl("chk1"), CheckBox).Checked = True Then gv1.Rows(i).BackColor = Drawing.Color.Aquamarine Else gv1.Rows(i).BackColor = Drawing.Color.White

End If

Next

End Sub

69

Protected Sub gv1_Sorted(ByVal sender As Object, ByVal e As System.EventArgs) Handles gv1.Sorted

End SubEnd Class

70

Welcome Admin

Partial Class Admin_Welcome_Admin Inherits System.Web.UI.Page

Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click Response.Redirect("Company.aspx")

End Sub

Protected Sub Button2_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button2.ClickResponse.Redirect("jobs.aspx") End Sub

Protected Sub Button3_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button3.Click Response.Redirect("Apl.aspx")

End Sub

Protected Sub Button4_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button4.Click Response.Redirect("CompanyReport.aspx")

End Sub

Protected Sub Button5_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button5.Click Response.Redirect("loginReprt.aspx") End Sub

Protected Sub Button6_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button6.Click Response.Redirect("NewUserReport.aspx") End Sub

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load

End SubEnd Class

71

----------------------------------User ----------------------------------------

Change PassWord

Imports System.IOImports System.DataImports System.Data.SqlClientPartial Class User_ChangePwd Inherits System.Web.UI.Page Dim dt As New DataTable Dim flag As Boolean Dim obj As New user_class Dim str As String Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load ChangePassword1.UserName = Session("UserName") 'Response.Write(Session("UserName")) End Sub

Protected Sub ChangePassword1_ChangingPassword(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.LoginCancelEventArgs) Handles ChangePassword1.ChangingPassword Try dt = obj.selt("select pwd from login where userId='" & ChangePassword1.UserName & "'") If dt.Rows(0).Item(0) = ChangePassword1.CurrentPassword Then flag = True End If If flag = True Then

str = "update login set pwd ='" & ChangePassword1.NewPassword & "' where userId='" & Session("UserName") & "'" obj.update(str) Response.Redirect("welcome.aspx") End If Catch ex As Exception 'Response.Write("<script>") 'Response.Write("alert('Try Again')") 'Response.Write("</script>") Response.Write(ex.Message) End Try End Sub

Protected Sub ChangePassword1_ChangedPassword(ByVal sender As Object, ByVal e As System.EventArgs) Handles ChangePassword1.ChangedPassword

End SubEnd Class

72

Email

Imports System.Web.MailImports System.ioPartial Class Email Inherits System.Web.UI.Page

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load End Sub

Protected Sub btnSend_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnSend.Click Dim ob As New MailMessage Dim str As String str = Path.GetFileName("f1.PostedFile") f1.PostedFile.SaveAs("c:\" & str) Dim att As New MailAttachment("c:\" & str) ob.To = txtTo.Text ob.Subject = txtSub.Text ob.BodyFormat = MailFormat.Html ob.Body = txtBody.Text ob.Attachments.Add(att) SmtpMail.Send(ob) ' For display the Message box Response.Write("<script>") Response.Write("alert ('You Come to your mail box')") Response.Write("</script>") ' For display the Message box

End Sub

Protected Sub txtBody_TextChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtBody.TextChanged

End SubEnd Class

73

Login

Imports System.Data.SqlClientPartial Class login Inherits System.Web.UI.Page

Dim con As New SqlConnection("server=localhost;database=job;trusted_connection=yes") Dim cmd As New SqlCommand

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load

End Sub

Protected Sub Login1_Authenticate(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.AuthenticateEventArgs) Handles Login1.Authenticate Dim flag As Boolean Dim dr As SqlDataReader con.Open() cmd.Connection = con cmd = New SqlCommand("select * from login where userid = '" & Login1.UserName & "' and pwd = '" & Login1.Password & "' ", con) dr = cmd.ExecuteReader() While (dr.Read()) If dr(0) = Login1.UserName And dr(1) = Login1.Password Then flag = True End If End While Session("UserName") = Login1.UserName If flag = True Then Response.Write("<script>") Response.Write("alert('match');") Response.Write("</script>") Response.Redirect("Welcome.aspx")

Else Response.Write("<script>") Response.Write("alert(' Not match');") Response.Write("</script>") End If con.Close()

If FormsAuthentication.Authenticate(Login1.UserName, Login1.Password) Then FormsAuthentication.RedirectFromLoginPage(Login1.UserName, False) End If End Sub

Protected Sub LinkButton1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles LinkButton1.Click Response.Redirect("Registration.aspx") End Sub

74

End Class

75

Log Out

Partial Class User_LogOut Inherits System.Web.UI.Page

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load FormsAuthentication.SignOut()

Label1.Text = (Session("UserName") & "" & " Successfully Logout......") Session.Clear() End Sub Protected Sub Login1_Authenticate(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.AuthenticateEventArgs) Handles Login1.Authenticate Dim obj As New user_class Dim user As String = Login1.UserName.Trim() Dim password As String = Login1.Password.Trim()

If obj.Search("select userId, pwd from login where userId='" & user & "'and pwd='" & password & "'") Then Session("UserName") = Login1.UserName Response.Redirect("Welcome.aspx") Else Response.Write("<script>") Response.Write("alert('Try Again')") Response.Write("</script>") End If End SubEnd Class

76

Registration

Imports System.DataImports System.Data.SqlClient

Partial Class Registration Inherits System.Web.UI.Page Dim con As New SqlConnection("server=localhost;database=job;trusted_connection=yes") Dim cmd As New SqlCommand Dim cmd1 As New SqlCommand Dim cmd2 As New SqlCommand Dim cmd3 As New SqlCommand Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load con.Open() End Sub

Protected Sub Button2_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button2.Click

Dim d, d1, m1, y1, m, y, dmy, dmy1 As String d = DDdate.SelectedValue m = DDmonth.SelectedValue y = DDdobYear.SelectedValue dmy = d & "/" & m & "/" & y

cmd = New SqlCommand("insert into Resume(Resume_code,userId,Pwd,fname,lname,Dob,Address,City,State,Zip,Country,Phone,Email,Sex,Qualification1,Qualification2,Qualification3,Experience) values(@Resume_code,@userId,@Pwd,@fname,@lname,@Dob,@Address,@City,@State,@Zip,@Country,@Phone,@Email,@Sex,@Qualification1,@Qualification2,@Qualification3,@Experience)", con)

cmd.Parameters.Add("@Resume_code", txtResume.Text) cmd.Parameters.Add("@userId", txtuserId.Text) cmd.Parameters.Add("@Pwd", txtPwd.Text) cmd.Parameters.Add("@fname", txtfname.Text) cmd.Parameters.Add("@lname", txtlname.Text) cmd.Parameters.Add("@Dob", dmy) cmd.Parameters.Add("@Address", txtadd.Text) cmd.Parameters.Add("@City", DDCity.SelectedValue) cmd.Parameters.Add("@State", DDstate.SelectedValue) cmd.Parameters.Add("@Zip", txtZip.Text) cmd.Parameters.Add("@Country", DDCountry.SelectedValue) cmd.Parameters.Add("@Phone", txtpno.Text) cmd.Parameters.Add("@Email", txtEmail.Text) cmd.Parameters.Add("@Sex", DDSex.SelectedValue) cmd.Parameters.Add("@Qualification1", DDQual1.SelectedValue) cmd.Parameters.Add("@Qualification2", DropDownList2.SelectedValue) cmd.Parameters.Add("@Qualification3", txtQual3.Text) cmd.Parameters.Add("@Experience", DDExp.SelectedValue) cmd.ExecuteNonQuery()

77

cmd1 = New SqlCommand(" insert into login (userId,pwd) values ('" & txtuserId.Text & "','" & txtPwd.Text & "')", con) cmd1.ExecuteNonQuery() 'cmd2 = New SqlCommand(" insert into Apply(Resume_code,userId)values(" & txtResume.Text & ",'" & txtuserId.Text & "')", con) 'cmd2.ExecuteNonQuery()

'Try Response.Write("<script>") Response.Write("alert(' Thanks For Registration ')") Response.Write("</script>") Response.Redirect("Login.aspx") 'Catch ex As Exception ' Response.Write(ex.Message) 'End Try con.Close() End Sub

Protected Sub DDExp_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles DDExp.SelectedIndexChanged

End Sub

Protected Sub txtResume_TextChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles txtResume.TextChanged

End SubEnd Class

78

Job Search

Imports System.DataPartial Class test_Job_Search Inherits System.Web.UI.Page Dim obj As New user_class Dim dt As New DataTable Dim i As Int16 Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load If Page.IsPostBack = False Then drdstate.Items.Clear() dt = obj.selt("select Job_title from job") drdstate.Items.Add("--Select Job title --") For i = 0 To dt.Rows.Count - 1 drdstate.Items.Add(dt.Rows(i).Item(0)) Next End If If Page.IsPostBack = False Then DropDownList1.Items.Clear() dt = obj.selt("select Job_date from job") DropDownList1.Items.Add("--Select Job date --") For i = 0 To dt.Rows.Count - 1 DropDownList1.Items.Add(dt.Rows(i).Item(0)) Next End If If Page.IsPostBack = False Then DropDownList2.Items.Clear() dt = obj.selt("select Job_Qual from job") DropDownList2.Items.Add("--Select Job_Qual --") For i = 0 To dt.Rows.Count - 1 DropDownList2.Items.Add(dt.Rows(i).Item(0)) Next End If If Page.IsPostBack = False Then DropDownList3.Items.Clear() dt = obj.selt("select JobLoc from job") DropDownList3.Items.Add("--Select Job Loc --") For i = 0 To dt.Rows.Count - 1 DropDownList3.Items.Add(dt.Rows(i).Item(0)) Next End If End Sub Protected Sub drdstate_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles drdstate.SelectedIndexChanged dt = obj.selt("select Job_Id , comp_id ,Job_date,Job_title,Job_ldate,Job_mail_id,JobLoc ,Job_Qual from job where Job_title = '" + drdstate.SelectedItem.Text + "' ") gv1.DataSource = dt gv1.DataBind()

End Sub

79

Protected Sub gv1_PageIndexChanging(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewPageEventArgs) Handles gv1.PageIndexChanging gv1.PageIndex = e.NewPageIndex gv1.DataSource = dt gv1.DataBind() End Sub

Protected Sub DropDownList1_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles DropDownList1.SelectedIndexChanged dt = obj.selt("select Job_Id , comp_id ,Job_date,Job_title,Job_ldate,Job_mail_id,JobLoc ,Job_Qual from job where Job_date = '" + DropDownList1.SelectedItem.Text + "' ") gv1.DataSource = dt gv1.DataBind() End Sub

Protected Sub DropDownList2_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles DropDownList2.SelectedIndexChanged dt = obj.selt("select Job_Id , comp_id ,Job_date,Job_title,Job_ldate,Job_mail_id,JobLoc ,Job_Qual from job where Job_Qual = '" + DropDownList2.SelectedItem.Text + "' ") gv1.DataSource = dt gv1.DataBind() End Sub

Protected Sub DropDownList3_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles DropDownList3.SelectedIndexChanged dt = obj.selt("select Job_Id , comp_id ,Job_date,Job_title,Job_ldate,Job_mail_id,JobLoc,Job_Qual from job where JobLoc = '" + DropDownList3.SelectedItem.Text + "' ") gv1.DataSource = dt gv1.DataBind() End Sub

Protected Sub gv1_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles gv1.SelectedIndexChanged

End Sub

Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click Response.Redirect("welcome.aspx") End SubEnd Class

80

Welcome

Partial Class User_Welcome Inherits System.Web.UI.Page

Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click Response.Redirect("login.aspx")

End Sub

Protected Sub Button2_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button2.Click Response.Redirect("Search.aspx")

End Sub

Protected Sub Button3_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button3.Click Response.Redirect("Email.aspx") End Sub

Protected Sub Button4_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button4.Click Response.Redirect("ChangePwd.aspx") End Sub

Protected Sub Button6_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button6.Click Response.Redirect("logOut.aspx") End Sub

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load

End SubEnd Class

81

TESTING

Software Testing Strategy:

A strategy for software testing may be viewed in the context of the spiral.

Unit testing begins at the vortex of the spiral and concentrates on each unit

of the software as implemented in source code. Testing progresses by

moving outward along the spiral to integration testing, where the focus is on

design and the construction of the software architecture. Taking another turn

outward on the spiral testing, we encounter validation testing, where

requirements established as part of software requirements analysis are

validated against the software that has been constructed. Finally, we arrive at

system testing, where the software and other system elements are tested as a

whole.

Considering the process from a procedural point of view, testing within the

context of software engineering is actually a series of four steps that are

implemented sequentially. Initially, tests focus on each component

individually, ensuring that it functions properly as a unit. That is why it is

called unit testing. Unit testing makes heavy use of white-box testing

techniques, exercising specific paths in a module’s control structure to

ensure complete coverage and maximum error detection. Integration testing

addresses the issues associated with the dual problems of verification and

program construction. Black-box test case design techniques are the most

prevalent during integration, although a limited amount of white-box testing

may be used to ensure coverage of major control paths. Validation criteria

must be tested. Validation testing provides final assurance that software

meets all functional, behavioral, and performance requirements. Black-box

testing techniques are used exclusively during validation.

82

Following are the systematic strategy for software testing:

1. Specify product requirements in a quantifiable manner long before

testing commences.

2. State testing objectives explicitly.

3. Understand the users of the software and develop a profile for each

user category.

4. Develop a testing plan that emphasizes “rapid cycle testing”.

5. Build “robust” software that is designed to test itself.

6. Use effective formal technical reviews as a filter prior to test a

module.

7. Conduct formal technical reviews to assess the test strategy and

test cases themselves.

8. Develop a continuous improvement approach for the testing

process.

Software Testing Techniques:

Software testing is a critical element of software quality assurance and

represents the ultimate review of specification, deign, and code generation.

Once source code has been generated, software must be tested to uncover

(and correct ) as many errors as possible before delivery to the customer.

The goal is to design a series of test cases that have a high likelihood of

finding errors-but how? That’s where software-testing techniques enter the

picture. These techniques provide systematic guidance for designing tests

that

1. Exercise the internal logic of software components.

83

2. Exercise the input and output domains of the program to uncover

errors in program function, behavior and performance.

Software is tested from two different perspectives: (A) Internal

program logic is exercised using “white box” test case design

techniques. Software requirements are exercised using “black box”

test case design techniques. In both cases, the intent is to find the

maximum number of errors with the minimum amount of effort and

time. A set of test cases designed to exercise both internal logic and

external requirements is designed and documented, expected results

are defined, and actual results are recorded.

1.) White Box Testing –

This is also called “glass-box testing”, is a test case design method

that uses the control structure of the procedural design to derive test

cases. Using whit-box testing methods, we can derive test cases that

a) Guarantee that all independent paths within a module have been

exercised at least once.

b) Exercise all logical decisions on their true and false sides.

c) Execute all loops at their boundaries and within their operational

bonds.

d) Exercise internal data structures to ensure their validity.

1.1) Basis Path Testing:

Basis path testing is white box testing. The basis path method

enables the test case designer to derive a logical complexity measure

of a procedural design and use this measure as a guide for defining a

basis set of execution paths.

1.2) Condition Testing:

84

Condition testing is test case design methods that exercises the

logical conditions contained in a program module. A simple condition

is a Boolean variable or a relational expression, possibly preceded

with one NOT operator. A relational expression takes the form

E1 <relational-operator> E2

Where E1 and E2 are arithmetic expressions and <relational-operator>

is one of the following: <,<=,=,#(nonequality), >, or >=. A compound

condition is composed of two or more simple conditions, Boolean

operators, and parentheses.

1.3 ) Data Flow Testing :

The data flow testing methods selects test paths of a program

according to the locations of definitions and uses of variables in the

program. Data flow testing strategies are useful for selecting test paths

of a program condition nested if and loop statements.

1.4 ) Loop Testing:

Loops are the cornerstone for the vast majority of all algorithms

implemented in software. Loop testing is a white box testing

technique that focuses exclusively on the validity of loop constructs.

Four different classes of loops can be defined: simple loops,

concatenated loops, nested loops, and unstructured loops.

2 ) Black-Box Testing:

This testing is also called as behavioral testing, focuses on the

functional requirements of the software. That is, black-box testing

enables the developer to derive sets of input conditions that will fully

exercise all functional requirements for a program. Black-box testing

85

is not an alternative to white-box techniques. Black-box testing

attempts to find errors in the following categories:

1) incorrect or missing functions,

2 ) interface errors,

3 )errors in data structures or external data base access,

4 ) behavior or performance errors, and

5 ) initialization and termination errors.

Unlike white-box testing, which is performed early in the testing

process, black box testing tends to be applied during later stages of

testing. Because black-box testing purposely disregards control

structure, attention is focused on the information domain

The first step in black-box testing is to understand the objects

that are modeled in software and the relationship that connect these

objects. Once this has been accomplished, the next step is to define a

series of tests that verify that all objects have the expected relationship

to one another.

Unit Testing:

In unit testing the analyst tests the programs making up a system. For

this reason, unit testing is sometimes called program testing. Unit

testing gives stress on the modules independently of one another, to

find errors. This helps the tester in detecting errors in coding and logic

that are contained within that module alone. The errors resulting from

the interaction between modules are initially avoided. For example, a

hotel information system consists of modules to handle reservations;

guest check-in and checkout; restaurant, room service and

86

miscellaneous charges; convention activities; and accounts receivable

billing. For each, it provides the ability to enter, modify or retrieve

data and respond to different types of inquiries or print reports. The

test cases needed for unit testing should exercise each condition and

option.

Unit testing can be performed from the bottom up, starting with

smallest and lowest-level modules and proceeding one at a time. For

each module in bottom-up testing a short program is used to execute

the module and provides the needed data, so that the module is asked

to perform the way it will when embedded within the larger system.

Integration Testing:

Integration testing is a systematic technique for constructing the

program structure while at the same time conducting tests to uncover

errors associated with interfacing. The objective is to take unit tested

components and build a program structure that has been dictated by

design.

A ) Top– down Integration :

This is an incremental approach to construction of program

structure. Modules are integrated by moving downward through the

control hierarchy, beginning with the main control module (main

program). Modules subordinate to the main control module are

incorporated into the structure in either a depth-first or breadth-first

manner.

B ) Bottom-up Integration :

87

Bottom-up integration testing, as its name implies, begins construction

and testing with atomic modules i.e. components at the lowest levels

in the program structure. Because components are integrated from the

bottom-up, processing required for components subordinate to a given

level is always available and the need for stubs is eliminated.

C) Regression Testing:

Each time a new module is added as part of integration testing, the

software changes. New data paths are established, new I/O may occur,

and new control logic is invoked. These changes may cause problems

with functions that previously worked flawlessly. In context of an

integration test strategy, regression testing is the re-execution of some

of tests that have already been conducted to ensure that changes have

not propagated side effects.

D ) Smoke Testing :

Smoke testing is an integration testing approach that is

commonly used when “shrink-wrapped” software products are being

developed. It is designed as a pacing mechanism for time-critical

projects, allowing the software team to assess its product on a frequent

basis.

Validation Testing:

At the culmination of integration testing, software is completely

assembled as a package, interface errors have been uncovered and

corrected, and a final series of software tests-validation may begin.

88

Validation can be defined in many ways, but a simple definition is

that validation succeeds when software functions in a manner that can

be reasonably expected by the customer.

A ) Alpha Testing :

It is virtually for a software developer to foresee how the customer

will really use a program. Instructions for use may be misinterpreted;

strange combinations of data may be regularly used; output that

seemed clear to the tester may be unintelligible to a user in the field.

B ) Beta Testing :

The beta test is conducted at one more customer sited by the end-user

of the software. Unlike alpha testing, the developer is generally not

present. Therefore, the beta test is a “live” application of the software

in an environment that cannot be controlled by the developer.

System Testing:

The important and essential part of the system development phase,

after designing and developing the software is system testing. We

cannot say that every program or system design is perfect and because

of lack of communication between the user and the designer, some

error is there in the software development. The number and nature of

errors in a newly designed system depend on some usual factors like

communication between the user and the designer; the programmer's

ability to generate a code that reflects exactly the systems

specifications and the time frame for the design.

89

Theoretically, a newly designed system should have all the parts or

sub-systems are in working order, but in reality, each sub-system

works independently. This is the time to gather all the subsystem into

one pool and test the whole system to determine whether it meets the

user requirements. This is the last chance to detect and correct errors

before the system is installed for user acceptance testing. The purpose

of system testing is to consider all the likely variations to which it will

be subjected and then push the system to its limits.

Testing is an important function to the success of the system. System

testing makes a logical assumption that if all the parts of the system

are correct, the goal will be successfully activated. Another reason for

system testing is its utility as a user-oriented vehicle before

implementation.

System testing consists of the following five steps:

A ) Recovery Testing :

Recovery testing is a system test that forces the software to fail in a

variety of ways and verifies that recovery is properly performed. If

recovery is automatic, re initialization, check pointing mechanism,

data recovery, and restart are evaluated for correctness.

B) Security Testing:

Security testing attempts to verify that protection mechanism built

into a system will, in fact, protect it from improper penetration.

During security testing, the tester plays the role of the individual who

desires to penetrate the system.

90

C) Stress Testing:

Stress tests are designed to confront programs with abnormal

situations. Stress testing executes a system in manner 0that demand

resources in the abnormal quantity, frequency, or volume. E.g. special

tests may be designed that generate ten interrupts per second, when

one or two is the average rate.

D) Performance Testing:

This is designed to test the run-time performance of software within

the context of an integrated system. Performance testing occurs

throughout all steps in the testing process. Even at unit level, the

performance of an individual module may be assessed as white-box

tests are conducted.

Special Systems Tests:

There are other six tests which fall under special category. They are

described below:

Peak Load Test:

It determines whether the system will handle the volume of activities that

occur when the system is at the peak of its processing demand. For example,

test the system by activating all terminals at the same time.

Storage Testing:

It determines the capacity of the system to store transaction data on a disk or

in other files. For example, verify documentation statements that the system

will store 10,000 records of 400 bytes length on a single flexible disk.

91

Performance Time Testing:

it determines the length of time system used by the system to process

transaction data. This test is conducted prior to implementation to determine

how long it takes to get a response to an inquiry, make a backup copy of a

file, or send a transmission and get a response.

Recovery Testing:

This testing determines the ability of user to recover data or re-start system

after failure. For example, load backup copy of data and resume processing

without data or integrity loss.

Procedure Testing:

It determines the clarity of documentation on operation and use of system

by having users do exactly what manuals request. For example, powering

down system at the end of week or responding to paper-out light on printer.

Human Factors Testing:

It determines how users will use the system when processing data or

preparing reports.

92

IMPLEMENTATION

In this phase the system developed is installed at the site where it will

be used. All required supporting tools required to run the developed

system are also installed. Database is created and logins for users are

also created. Configurations required in the developed system are also

done in this stage. User training is also provided so that proper data is

entered by the user and no functional gaps exist in user understanding.

System is also tested with operational Data.

93

MAINTAINANCE

When an application has served the business needs of an organization for 10

to 15 years, during that time it has been corrected, adapted, and enhanced

many times. The application becomes unstable. Much of the software we

depend on today is on average 10 to 15 years old. Even when these programs

were created using the best design in coding techniques known at the time

and (most were not), they were created when program size and storage space

were principle concern. They were then migrated to new platform adjusted

for changes in machine and operating system technologies and enhance to

meet new user needs all without enough regard to overall architecture. The

maintenance of existing software can account for over 60% of all effort

expended by a development organization and the percentage continues to

rise as more software is produced. There are four different maintenance

activities-

A ) Corrective Maintenance –

Even with the best quality assurance activities, it is likely that

the customer will uncover defects in the software. Corrective

maintenance changes the software and correct defects.

B ) Adaptive Maintenance –

Over time, the original environment ( e.g. CPU, operating

system, business rules, external product characteristics) for which the

software was developed is likely to change. Adaptive maintenance

results in modification to the software to accommodate the changes to

its external environment.

94

C ) Perfective Maintenance –

As software is used, the customer/user will recognize additional

functions that will provide benefit. Perfective maintenance extends the

software beyond its original functional requirements.

D ) Preventive Maintenance or Reengineering –

Computer software deteriorates due to change and because of

this preventive maintenance often called software reengineering must

be conducted to enable the software to serve the needs of its end users.

In sense preventive maintenance make changes to computer program

so that they can be more easily corrected, adapted and enhanced.

95

BIBLIOGRAPHY

1) Software Engineering, Roger S.Pressman analysis part ,design part,

Edition 2001,McGraw HILL Publication.

2) Relational Database System, Bipin c. Desai, In India 1990,Glagotia

Publication pvt. Ltd.

1) Mastering in Visual Basic.NET, for design and coding

4) Microsoft SQL SERVER 7.0, Ronald R. Talmage

5) BLACK BOOK ,Dreamtech Publication

6) ASP.NET Unleashed , Techmedia Publication

96