Вы находитесь на странице: 1из 63

SIX MONTHS INDUSTRIAL TRAINING REPORT

ONLINE JOB PORTAL


Submitted in partial fulfillment of the
Requirements for the award of

Degree of Bachelor of Technology in Computer Science Engineering

Under the Guidance of:


Er. Harman Dhaliwal
Submitted By:
Name: - Avinash Singh
University Roll No:-1285974
Submitted To:

Department of Computer Science & Engineering


RADIANT INSTITUTE OF ENGINEERING & TECHNOLOGY,
ABOHAR

1285974/5072/RIET/Abohar

Declaration
I hereby declare that the Industrial Training Report entitled ("Online Job Portal") is an
authentic record of my own work as requirements of 6-months Industrial Training during
the period from 2-Jan-2015 to 31-May-2015 for the award of degree of B.Tech.
(Computer Science & Engineering), RADIANT INSTITUTE OF ENGINEERING &
TECHNOLOGY, ABOHAR

(Avinash Singh)
(1285974)
Date: ____________________

Certified that the above statement made by the student is correct to the best of our
knowledge and belief.

Signatures
Examined by:
1.

2.

3.

4.

Head of Department
(Signature and Seal)

1285974/5072/RIET/Abohar

Certificate

ii

1285974/5072/RIET/Abohar

Acknowledgement
I personally believe that major project is a great way of developing practical
knowledge and first hand exposure for a student. Interaction with well experienced
people induces a sense of responsibility towards client/production and also teaches a way
to handle the various kinds of requirements generated during real industry working.
I would like to thank my college authorities for having such a nice education
system due to which I am able to explore my abilities. I thank Er. Rajveer Kaur
(Project Guide) for giving me a chance to pursue my major project. I thank Er. Harman
Dhaliwal for all his kind support and co-operation.

AVINASH SINGH

iii

1285974/5072/RIET/Abohar

Abstract
Nowadays due to advancement of technology everyone is available online on the internet.
It can be on a computer or mostly on the mobile phones. Almost everyone is gathering or
downloading information here and there from the internet. This is just the beginning and
in the coming year this will go even further. Every person on the internet gets various
types of information like reading the newspaper, downloading data or any type of
information, searching for various things, sending messages, emails to their known and
searching for the jobs. The basic idea is there is sharing of information. The website ON
LINE JOB PORTAL provides the user to look for jobs in a most easy manner one
could ever think of. The website ON LINE JOB PORTAL helps the job seeker to
look for a better job according to his/her profile. In addition to that it redefines the way
one could provide employment to the people.
The website designed provides options for viewing different jobs available with
different Departments like Govt. Jobs, Private Jobs, Banking jobs, Engineering Jobs,
State wise Jobs and we also provide demo test. It helps people search the jobs online,
uploading their resumes also update his/her professional details.
Not only helping the people finds correct job opportunities, this website helps
the companies to find their right choice among the pool of people. This website has one
of the largest databases containing the resumes of people which give the companies the
widest opportunities to choose from.

iv

1285974/5072/RIET/Abohar
TABLE OF CONTENTS
Declaration... .................................................................................................. (i)
Certificate... ................................................................................................... (ii)
Acknowledgement... ..................................................................................... (iii)
Abstract... ..................................................................................................... (iv)
List of Figures .................................................................................................... (viii)
List of Tables ....................................................................................................... (x)
Chapter 1. Introduction to Company Profile....................................................... 1
Chapter 2. Introduction to Java .......................................................................... 2
2.1

Java ................................................................................................... 2

2.2

What is JSP? ...................................................................................... 5

2.3

Introduction about HTML .................................................................. 6

2.4

Cascading Style Sheet ...................................................................... 10

2.5

Java Script ....................................................................................... 12

2.6

Java Database Connectivity.............................................................. 13

2.7

Swing .............................................................................................. 13

2.8

Java Multi-threading ........................................................................ 15

2.9

Thread ............................................................................................. 15

2.10

Net Beans IDE ................................................................................. 18

2.11

SQL ................................................................................................. 20

Chapter 3. Introduction to Project .................................................................... 25


3.1

Purpose ............................................................................................ 25

3.2

Objective ......................................................................................... 26

3.3

Scope ............................................................................................... 26

Chapter 4. Modules ............................................................................................ 27


4.1

Job Seeker Module........................................................................... 27

4.2

Employer Module ............................................................................ 27

4.3

Administration Module .................................................................... 27

4.4

Public Module ................................................................................. 27

4.5

Aptitude Test (Demo) Module ......................................................... 27

Chapter 5. Methodology of the Project ............................................................. 28


5.1

Process Model ................................................................................. 28


v

1285974/5072/RIET/Abohar
5.1.1 Data Flow Diagrams ..................................................................... 28
5.2

Context Diagram ................................................................................ 30

5.3

Data Model ........................................................................................ 31

5.3.1 Introduction to Data Modeling ........................................................ 31


5.3.2 Entity-relationship Diagram ............................................................ 31
Chapter 6. Requirements ................................................................................... 33
6.1

Functional Requirements .................................................................... 33

6.1.1 Job Seeker ...................................................................................... 33


6.1.2 Employer ........................................................................................ 35
6.1.3 Administrator ................................................................................. 37
6.2

Non-Functional Requirements ............................................................ 40

6.3

Hardware Requirements ................................................................... 40

6.4

Software Requirements .................................................................... 40

Chapter 7. Software Testing .............................................................................. 41


7.1

Testing Objective ............................................................................. 41

7.2

Testing Techniques .......................................................................... 41

7.3

Testing Strategies............................................................................. 41

7.4

System Testing ................................................................................ 42

7.5

Software Maintenance...................................................................... 42

7.6

Software Maintenance Process ......................................................... 43

Chapter 8. Database Design .............................................................................. 45


8.1

Admin.............................................................................................. 45

8.2

Employee Register ........................................................................... 45

8.3

Job Seeker ....................................................................................... 46

8.4

Add Jobs .......................................................................................... 46

8.5

Demo Test ....................................................................................... 47

8.6

Demo Test Answer .......................................................................... 47

8.7

Employee Notification ..................................................................... 48

8.8

Job Seeker Notification .................................................................... 48

8.9

Public Notification ........................................................................... 48

8.10

States ............................................................................................... 49

8.11

Upcoming Jobs ................................................................................ 49

8.12

Offline Jobs ..................................................................................... 49


vi

1285974/5072/RIET/Abohar
8.13

Contact Us ....................................................................................... 49

Chapter 9. Snapshots ......................................................................................... 50


Conclusion

........................................................................................................ 60

References

........................................................................................................ 61

vii

1285974/5072/RIET/Abohar
LIST OF FIGURES
Figure No.

Figure Name

Figure 2.1

Overview of s/w Development Process

Figure 2.2

Components of Java Platform

Figure 2.3

Structure of JSP

Figure 2.4

Java Foundation Classes

14

Figure 2.5

Life Cycle of Thread

16

Figure 5.1

Level 0 DFD

29

Figure 5.2

Level 1 DFD

29

Figure 5.3

Context Diagram

30

Figure 5.4

ER Diagram

32

Figure 8.1

Home Page

47

Figure 8.2

Sign Up Page

48

Figure 8.3

Login Page of Job Seeker

48

Figure 8.4

Job Seeker Sign Up Page

49

Figure 8.5

Job Seeker Profile Information

49

Figure 8.6

View Your Profile

50

Figure 8.7

My Job Search

50

Figure 8.8

Types of Industry

51

Figure 8.9

Types of Location

51

Figure 8.10

Matching Jobs

51

Figure 8.11

Post Query

52

Figure 8.12

Employers Registration Form

53

Figure 8.13

Login Page of Employer

54

viii

Page No.

1285974/5072/RIET/Abohar
Figure 8.14

Employers Profile

54

Figure 8.15

Job Post Form

55

Figure 8.16

Search Job Seeker in Employers Module

56

Figure 8.17

After Apply Job

56

Figure 8.18

Login Page of Admin

57

Figure 8.19

Admin Page

57

Figure 8.20

View Job Seeker

58

Figure 8.21

View Job Seeker individually by admin

58

Figure 8.22

View Employers

59

Figure 8.23

Logout Page

59

ix

1285974/5072/RIET/Abohar
LIST OF TABLES
Table No.

Table Name

Table 6.1

Job Seeker

34

Table 6.2

Employer

35

Table 6.3

Administrator

37

Table 8.1

Admin

45

Table 8.2

Employee Register

45

Table 8.3

Job Seeker

46

Table 8.4

Add Jobs

46

Table 8.5

Demo Test

47

Table 8.6

Demo Test Answer

47

Table 8.7

Employee Notification

48

Table 8.8

Job Seeker Notification

48

Table 8.9

Public Notification

48

Table 8.10

States

49

Table 8.11

Upcoming Jobs

49

Table 8.12

Offline Jobs

49

Table 8.13

Contact Us

49

Page No.

1285974/5072/RIET/Abohar
CHAPTER 1

INTRODUCTION TO COMPANY PROFILE

Dibon Technologies, Inc. is a privately held company located in Dallas, Texas USA.
The company was founded in 2001 with the primary objective of delivering to our
partners and clients the finest strategic technology consulting, implementation and
managed services in the industry. With over 350 consultants including Agile Project
Management, Business Analysts, Quality Assurance Consultants, Core IT Stack,
Cloud Technology, Salesforce.com, Mobile (iOS/Android), HTML5, and deep data
and integration architecture expertise, Dibon is poised to meet the future expectations
of our valuable clients.
Dibon helps clients around the world meet the challenges they face in an increasingly
competitive and fast-paced business environment. Dibon offers fully integrated
technology solutions incorporating a complete spectrum of services that includes
management and systems consulting, systems integration and outsourcing. We
combine the best practices, tools and technologies with industry-specific expertise to
provide Solutions tailored to the clients rely on us for proven solutions that deliver
business results quickly.

Our business is founded on long-term, enduring

relationships with a carefully selected set of strategic clients. Our strategy to achieve
our mission is comprised of four key components:

Provide proven, market and client focused solution offerings: We deliver


value to our clients by providing a set of focused and proven offerings that
solve targeted business problems quickly and holistically. We innovate and
rally our unique competencies, solutions and best practices around each client
to deliver business value with a speed and clarity unmatched in our industry.

Embrace a client-centric culture: We select and invest in long-term, powerful


and strategic client relationships that are founded on our shared success.

Strengthen the focus and agility of our organization: We align, leverage and
provide incentive for our organization to anticipate.

Attract, retain, and reward the best people in the industry: We recognize that
our people are the foundation of our success.
1

1285974/5072/RIET/Abohar
CHAPTER 2

INTRODUCTION TO JAVA

2.1 JAVA
Java is an entire programming language resembling C or C++. It takes a sophisticated
programmer to create Java code. And it requires a sophisticated programmer to maintain
it. With Java, you can create complete applications. Or you can attach a small group of
instructions, a Java "applet" that improves your basic HTML. A Java Applet can also
cause text to change color when you roll over it. A game, a calendar, a scrolling text
banner can all be created with Java Applets. There are sometimes Compatibility problems
between Java and various browsers, operating systems or computers, and if not written
correctly, it can be slow to load. Java is a powerful programming language with excellent
Security, but you need to be aware of the tradeoffs.
The Java Programming Language
The Java programming language is a high-level language that can be characterized by
all of the following characteristics
Simple
Object oriented
Distributed
Multithreaded
Architecture neutral
Portable
High performance
Robust

Simple

According to Sun, Java language is simple because Syntax is based on C++ (so easier
for programmers to learn it after C++).removed many confusing and/or rarely-used
features e.g., explicit pointers, operator overloading etc.No need to remove
unreferenced objects because there is Automatic Garbage Collection in java.

1285974/5072/RIET/Abohar

Object Oriented

Object-oriented means we organize our software as a combination of different types


of objects that incorporates both data and behaviour.
Object-oriented programming(OOPs) is a methodology that simplify software
development and maintenance by providing some rules.
Basic concepts of OOPs are:
Object
Class
Inheritance
Polymorphism
Abstraction

Secured

Java is secured because


No explicit Pointer.
Program run inside virtual machine sandbox.

Robust

Robust simply means strong. Java uses strong memory management. There are lack of
pointers that avoids security problem. There is automatic garbage collection in java.
There is exception handling and type checking mechanism in java. All these points
make java robust.

Distributed

We can create distributed applications in java. RMI and EJB are used for creating
distributed applications. We may access files by calling the methods from any
machine on the internet.

Fig 2.1:- An overview of the software development process.

Multi-threaded

A thread is like a separate program, executing concurrently. We can write Java


programs that deal with many tasks at once by defining multiple threads. The main

1285974/5072/RIET/Abohar
advantage of multi-threading is that it shares the same memory. Threads are important
for multi-media, Web applications etc.
The Java platform has two components
The Java Virtual Machine (JVM)
The Java Application Programming Interface (API)

Java Virtual Machine is the base for the Java platform and is ported onto various
hardware-based platforms.
The API is a large collection of ready-made software components that provide many
useful capabilities. It is grouped into libraries of related classes and interfaces; these
libraries are known as packages.

Fig 2.2:- Components of Java Platform

The API and Java Virtual Machine insulate the program from the
underlying hardware.
Every full implementation of the Java platform gives you the following features:

Development Tools: The development tools provide means for compiling,


running, debugging, and documenting your applications. The main tools are
the javac compiler, the java launcher, and the javadoc documentation tool.

Application Programming Interface (API): The API provides the core


functionality of the Java programming language. It offers a wide array of
useful classes ready for use in your own applications. It spans everything from
basic objects, to networking and security, to XML generation and database
access, etc.

Deployment Technologies: The JDK software provides standard mechanisms


such as the Java Web Start software and Java Plug-In software for deploying
your applications to end users.

Integration Libraries: Integration libraries such as the Java IDL, JDBC,


JNDI, Java RMI, and Java Remote Method Invocation over Internet InterORB Protocol Technology (Java RMI-IIOP Technology) enable database
access and manipulation of remote objects
4

1285974/5072/RIET/Abohar
2.2 WHAT IS JSP?
Short for Java Server Page. A server-side technology, Java Server Pages are an extension
to the Java servlet technology that was developed by Sun. JSPs have dynamic scripting
capability that works in tandem with HTML code, separating the page logic from the
static elements -- the actual design and display of the page -- to help make the HTML
more functional(i.e. dynamic database queries). A JSP is translated into Java servlet
before being run and it processes HTTP requests & generates responses like servlet.
However, JSP technology provides a more convenient way to code a servlet Translation
occurs the first time the application is run. A JSP translator is triggered by the .jsp file
name extension in a URL. JSPs are fully interoperable with servlet. You can include
output from a servlet or forward the output to a servlet and a servlet can include output
from a JSP or forward output to a JSP. JSPs are not restricted to specific platform or
server. It was originally created as an alternative to Microsoft's ASP (Active Server
Pages). Recently, however, Microsoft has countered JSP technology with its own
ASP.NET, part of the .NET initiative.
Life cycle of a JSP Page
The JSP pages follow these phases:
Translation of JSP Page
Compilation of JSP Page
Class loading (class file is loaded by the classloader)
Instantiation (Object of the Generated Servlet is created).
Initialization ( jspInit() method is invoked by the container).
Request processing ( _jspService() method is invoked by the container).
Destroy ( jspDestroy() method is invoked by the container).

As depicted in the below diagram, JSP page is translated into servlet by the help of
JSP translator. The JSP translator is a part of web server that is responsible to translate
the JSP page into servlet. After that Servlet page is compiled by the compiler and gets
converted into the class file. The JSP translator is a part of web server that is
responsible to translate the JSP page into servlet. After that Servlet page is compiled
by the compiler and gets Moreover, all the processes that happens in servlet is
performed on JSP later like initialization, committing response to the browser and
destroy

1285974/5072/RIET/Abohar

Fig 2.3:- Structure of JSP


2.3 INTRODUCTION ABOUT HTML
HTML is a computer language devised to allow website creation. These websites can
then be viewed by anyone else connected to the Internet. It is relatively easy to learn;
and quite powerful in what it allows you to create. It is constantly undergoing revision
and evolution to meet the demands and requirements of the growing Internet audience
under the direction of the W3C, the organization charged with designing and
maintaining the language.
HTML stands for Hyper Text Markup Language.

Hyper is the opposite of linear. This means HTML does not hold to linear
pattern and allows the person viewing the World Wide Web page to go
anywhere, any time they want.

Text is what you will use. Real, honest to goodness English letters.

Mark up is what you will do. You will write in plain English and then mark up
what you wrote.

Language because they needed something that started with "L" to finish HTML and
Hypertext Markup Louie didn't flow correctly. Because it's a language, really -- but
the language is plain English.
HTML is a Language, as it has code-words and syntax like any other language.
HTML is a language for describing web pages.
6

1285974/5072/RIET/Abohar

<html><body>
<p>Hello World</p>
</body></html>

HTML is not a programming language, it is a markup language

A markup language is a set of markup tags

HTML uses markup tags to describe web pages

HTML Element Syntax

An HTML element starts with a start tag / opening tag.

An HTML element ends with an end tag / closing tag.

The element content is everything between the start and the end tag.

Some HTML elements have empty content, are closed in the start tag.

Most HTML elements can have attributes.

Nested HTML Elements


The HTML Elements can be nested, that is one element can be inside the other.
Here there are three elements <html>, <body> and <p>. <p> tag is nested inside
<body> which in turn is nested inside <html>. Always Remember to put the End Tags
after opening the tags.
HTML Basic Tags
Heading Tags
There are 6 levels of headings in HTML specified by <H1>, <H2>, <H3>, <H4>,
<H5> and <H6>tags. <h1> defines the largest heading and <h6> defines the smallest.
<html><body><h1>My

First

Heading.</h1><h2>My

Second

Heading.</h2></body></html>
Paragraph Tags of HTML
paragraph tags are used to define the HTML paragraph element. The paragraph
element begins with the <p> tag and ends with the </p> tag.
Hyperlink Tags
These are the tags that really made web pages unique, by letting a person click on text
or an image and go to other webpage. Hyperlink tags are container tags, which mean
there must be an initial tag and an ending tag. All the WebPages in a website are
connected to one another using the Hyperlinks.

1285974/5072/RIET/Abohar
<html><body>
<a href="http://www.Google.com">Google</a>
</body></html>
Image Tags
This Tag is used for putting pictures or images on your web page. The images can be
of any format that is JPG, GIF, PNG etc. The <img> tag is empty, which means that it
contains attributes only and it has no closing tag.
<html><body>
<imgsrc="image.jpg" width="250" height="100" />
</body></html>
Other HTML Tags
Some other useful tags like HTML Rules, HTML Comments, Line Breaks etc.
Drawing HTML Rules
<HR> (Horizontal Rule) is a standalone tag that generates a horizontal line. There is
no corresponding HTML command for a vertical line.
<html><body>
<h1>My First Heading.</h1>
<hr>
<h2>My Second Heading.</h2>
</body></html>
HTML Comments
All combinations of text placed within the comment tags will be ignored by the web
browser, this includes any HTML tags, scripting language(s), etc.
Line Breaks
<html><body>
<!-- <h1>My First Heading</h1> -->
<p>I am writing a Very Long Paragraph. <br> You Would need like it.</p>
</body></html>
HTML Text Formatting Tags
We can format to Bold, Italicize, Underline, Subscript or Superscript any text in the
HTML Page.
8

1285974/5072/RIET/Abohar
Bold
<b> (Bold) is a tag that makes any text between its text to be formatted as Bold. You
always had to remember closing the bold tag after you have formatted the required
text.
Italic
<i> (Italic) is a tag that makes any text between its text to be formatted as Italic.
Underline
<u> (Underline) is a tag that makes any text between <u> tags to be formatted as
Underlined.
<html><body>
<b>This will appear Bold. </b>
<i>While This will be italic. </i><br>
<u>This will appear Underline. </u>
</body></html>
Marquee
<marquee> (Marquee) is a tag that makes any text between <sup> tags to be
formatted as moving left, right, top, bottom as defined.
<html><body><marquee> Welcome to SUSWEC</marquee></body></html>
HTML Table Tags
The <table> tag defines an HTML table. A simple HTML table consists of one or
more tr (table row), th (table header), and td (table cell) elements.
<table border="1">
<tr><th>Month</th>
<th>Savings</th></tr>
<tr><td>January</td>
<td>100 Rs.</td></tr>
<tr><td>February</td>
<td>120 Rs.</td></tr>
</table>
HTML List Tags
Words or phrases which need to be set apart from the rest of the body of text can be
Emphasized with a bullet (a heavy dot used for calling attention to a particular
9

1285974/5072/RIET/Abohar
section of text). An empty tag called a list tag is used to do this.
List Tag
<LI>: creates a bullet in front of text which is to be set apart for emphasis and causes
all text after it to be indented, either until another list tag is detected or until the end of
the list is reached. It is used to itemize elements of unordered and ordered lists.
Unordered List
An unordered list is a list of items. The list items are marked with bullets (typically
small black circles). An unordered list starts with the <ul> tag. Each list item starts
with the <li> tag.
<html><body><ul><li>January</li><li>February</li></ul></body></html>
Ordered List
An ordered list is also a list of items. The list items are marked with numbers. An
ordered list starts with the <ol> tag. Each list item starts with the <li> tag.
<html><body>
<ol><li>January</li>
<li>February</li></ol>
</body></html>
Designing HTML Forms
A form is an area that can contain form elements. Form elements are elements that
allow the user to enter information (like text fields, text area fields, drop-down menus,
radio buttons, checkboxes, etc.) in a form. A form is defined with the <form> tag.
Radio Button
Radio Buttons are used while selecting one of a limited No. of choices.
Checkbox
Checkboxes are used while selecting one or more options of a limited number of
choices.
2.4 CASCADING STYLE SHEETS (CSS)
CSS stands for Cascading Style Sheet. It defines a way how the information is
presented by all the browsers on the web. A style sheet is a set of rules that controls
the formatting of HTML elements on one or more web pages.
Thus, the appearance of a Web page can be changed by changing the style sheet
associated with it. There is no need to make detailed changes within the Web page to
10

1285974/5072/RIET/Abohar
change how it looks. As one style sheet can be used for a whole web site, it normally
means that the overall size of the website is smaller and downloads required for each
page can be decreased by up to 40%.
CSS Types
Inline CSS
Internal CSS
External CSS
Inline CSS
Inline CSS is defined inside particular tag as its property using <style> where we can
add no. of properties. It is used within a single tag. Once we have declared properties
of style sheet, we cant use those properties in another tag.
Internal CSS
It is used for all the tags. In this type of CSS, <style> is used like a tag. <style> is
used within <head>tag for single webpage. We have 2 different methods for this CSS.
By Class - Using Dot (.)
By Id - Using Hash (#)
<Html><head><style>
.M1
{color: skyblue;}
#M2
{color: skyblue; }
</style></head><body>
<p class = M1> BY CLASS </p>
<p id = M2> BY ID </p></body></html
External CSS
It is used for whole of the website. Here <style> is used as a page. In this CSS, we
always work with two pages
HTML page
CSS page
Once we declared CSS page, we will call this page into <head> of any HTML page.
As per our requirements, we can use one or more CSS pages with one or more HTML
pages.CSS use for design to website and provide a different look to website. In CSS
create classes with (.) and ID with (#).

11

1285974/5072/RIET/Abohar
Properties Used in CSS

Font-weight, font-style, font-size, font-family

Text-align, text-transformation, text-decoration

Line-spacing, letter-height, height, width, color

background-color, background-image, background-repeat

background-size, border, margin-left-right-top-bottom

text-shadow, box-shadow, outline

2.5 JAVA SCRIPT


Java script is a scripting language. To develop interactive Web sites, you need to
create a Web interface for accepting data from users. The data accepted can be stored
for further processing and validation. So we use the Java Script.
You will also be able to write Java Script code to validate the data entered by users on
the Web sites, handle run-time and execution errors in Web documents, and
communicate with the users by displaying messages.
To create interactive Web documents, the language used is Hypertext Markup
Language (HTML). However, HTML does not support data processing on the client
computer.
JavaScript was designed to add interactivity to HTML pages.
JavaScript is a scripting language.
A scripting language is a lightweight programming language.
JavaScript is usually embedded directly into HTML pages.
JavaScript is an interpreted language (means that scripts execute without
preliminary compilation).
Everyone can use JavaScript without purchasing a license.
Features of JavaScript
JavaScript gives HTML designers a programming tool - HTML authors are
normally not programmers, but JavaScript is a scripting language with a very
simple syntax! But JavaScript is a scripting language with a very simple
syntax! Almost anyone can put small "snippets" of code into their HTML
pages.
JavaScript can react to events - A JavaScript can be set to execute when
something happens, like when a page has finished loading like when a page
has finished loading like when a page has finished loading like when a page
has finished loading or when a user clicks on an HTML element.
12

1285974/5072/RIET/Abohar
JavaScript can read and write HTML elements - A JavaScript can read and
change the content of an HTML element.
JavaScript can be used to validate data - A JavaScript can be used to validate
form data before it is submitted to a server.
JavaScript can be used to detect the visitor's browser - A JavaScript can be
used to detect the visitor's browser, and - depending on the browser - load
another page specifically designed for that browser..
2.6 JAVA DATABASE CONNECTIVITY (JDBC)
JDBC stands for "Java Database Connectivity". It is an API (Application
Programming Interface) which consists of a set of Java classes, interfaces.
JDBC is a very popular data access standard. RDBMS (Relational Database
Management Systems) or third-party vendors develop drivers which adhere to the
JDBC specification
The JDBC API is a Java API that can access any kind of tabular data, especially data
stored in a Relational Database.
JDBC helps you to write java applications that manage these three programming
activities:
Connect to a data source, like a database
Send queries and update statements to the database
Retrieve and process the results received from the database in answer to your
query
2.7 SWING
Swing are light weight components which dependent on java API's. So same look and
feel on all Operating Systems. All swing components are designed using architecture
Model View Controller (MVC).
Model - Storage
View - Presentation
Controller Event Handling
Netscape and sun has jointly produced the original swing set of components as part of
the Java Foundation Classes (JFC). Swing and JFC are not the same thing, rather
swing is a part of the JFC library. JFC provides the following features:

swing (The large UI package)

cut & paste (Clipboard support)

Accessibility features
13

1285974/5072/RIET/Abohar

The desktop color features

java 2D

The five APIs of the java Foundation Classes

Fig 2.4:- Java Foundation Classes

Four new components have been introduced in Swing to deal with the complexities
involved in mixing up the heavy weight and the lightweight components in the same
container.
Type of Panes
Layered Pane
Root Pane
Content Pane
Menu Bar
Glass Pane

List Of Swing Components


JButton
JCheckBox
JColorChooser
JComboBox
JDialog
JFileChooser
JFormattedTextField
JFrame
JLabel
JList
JMenu
JOptionPane

14

1285974/5072/RIET/Abohar
JPanel
JPasswordField
JRadioButton
JScrollBar
JSeparator
JSlider
JSpinner
JTable
JTextField

2.8 JAVA MULTITHREADING


Multithreading is a conceptual programming paradigm where a program (process) is
divided into two or more subprograms (processes/threads), which can be implemented
at the same time in parallel. which can be implemented at the same time in parallel.
For example, one subprogram can display an animation on the screen while another
may build the next animation to be displayed. This is something similar to dividing a
task into subtasks and assigning them to different people for execution independently
and simultaneously.
CPU has a limitation that it cannot run more than one thread at a time so with the help
of time sharing concept it simulates an execution of more than one thread at a time.
2.9 THREAD
A thread is similar to a program that has a single flow of control. It has beginning, a
body and an end and executes commands sequentially. an end and executes
commands sequentially. The Java VM always has multiple threads, called daemon
threads, running. For example, a continually running daemon thread performs garbage
collection tasks. Another daemon thread handles mouse and keyboard events.
There are two ways to create the thread in java
1. By implementing the Runnable Interface
2. By extending the Thread class.

Runnable:-

Runnable interface is very useful in that situation when we want to extend any class
and want to create that class as Thread class. When we want to extend any class and
want to create that class as Thread class. Just implements the Runnable interface and
override the run () method.

15

1285974/5072/RIET/Abohar

Thread: -

Thread can be created by extending the Thread class. Java does not support multiple
inheritances so in that situation where no other inheritance except Thread class is
required at that time it is very useful. Inherit the Thread class and then override the
run() method of Thread class.
Life Cycle of a Thread
Following are the thread state:

New born state

Runnable state

Running state

Blocked State

Dead State

Fig 2.5:- Life Cycle of Thread

New born state: -

When we create a thread object, the thread is born and is said to be in newborn state.
The thread is not yet scheduled for running. At this state we can choose any one of the
following method: 16

1285974/5072/RIET/Abohar
start() method (to start the thread).
stop() method (to stop or kill the thread)

Runnable state
The Runnable state means that the thread is ready for execution and is waiting for
the availability of the process i.e. thread has joined the queue of threads that are
waiting for execution. If all threads have equals priority, then they are given time
slots for execution in round robin fashion i.e. FIFO (First In First Out). Assigning
the time to the threads is called time slicing. If we want a thread to relinquish
control to another thread to equal priority before its turn comes, then we can do
this by using the yield() method.

Running state: Running means that the processor has given its time to the thread for its execution.
The thread runs until it relinquishes control on its own or it is preempted by a
higher priority thread. A running thread may relinquish its control in one of the
following situations: -

It Can be suspended by using suspend () method. It can be revived by using resume


method () method.

Sleep () method can be used to sleep the current running thread by passing
time in milliseconds as a argument in sleep method.

Wait () method is used to wait by a thread uptil it is not notified by calling


Notify () method.

Block state

A thread is said to be blocked when it is prevented from entering into the Runnable
state and subsequently the running state. This happens when the thread is suspended,
sleeping or waiting in order to satisfy certain requirements. A blocked thread is
considered not runnable but not dead and it can run again at any time.

Dead state

Every thread destroyed when it has completed executing its run() method. It is known
as natural death. stop() method is used to kill the thread. Thread can be killed in its
born, running or even in blocked state.

Thread priority

When a Java thread is created, it inherits its priority from the thread that created it.
The thread with the highest priority is executed. When that thread stops, yields, or

17

1285974/5072/RIET/Abohar
becomes not Runnable, a lower priority thread will be executed. If two threads of the
same priority are waiting, the Java scheduler will choose one of them to run in a
round-robin fashion.
Synchronization
One of the central problems of multithreaded computing is handling situations where
more than one thread has access to the same data structure.
Java - Collections Framework
A collection is simply an object that groups multiple elements into a single unit.
Collections are used to store, retrieve, manipulate, and communicate aggregate data.
A collections framework is a unified architecture for representing and manipulating
collections. All collections frameworks contain the following:

Interfaces: These are abstract data types that represent collections. Interfaces
allow collections to be manipulated independently of the details of their
representation.

Implementations: These are the concrete implementations of the collection


interfaces. In essence, they are reusable data structures.

Algorithms: These are the methods that perform useful computations, such as
searching and sorting, on objects that implement collection interfaces. The
algorithms are said to be polymorphic: that is, the same method can be used on
many different implementations of the appropriate collection interface. In
essence, algorithms are reusable functionality.

The collections framework provides the following benefits:


Reduces programming effort
Increases program speed and quality
Allows interoperability among unrelated APIs
Reduces effort to learn and to use new APIs
Reduces effort to design new APIs

2.10 NET BEANS IDE


A free, open-source Integrated Development Environment for software developers.
One can get all the tools you need to create professional desktop, enterprise, web, and
mobile applications with the Java language, C/C++, and even dynamic languages such
as PHP, JavaScript, Groovy, and Ruby.
Net Beans IDE is easy to install and use straight out of the box and runs on many
platforms including Windows, Linux, Mac OS X and Solaris.
18

1285974/5072/RIET/Abohar
NetBeans IDE is an integrated development environment (IDE) for writing,
compiling, testing, and debugging desktop applications and web applications for the
Java platform.
NetBeans IDE includes a full-featured text editor with syntax highlighting and error
checking, visual design tools, Ant support, version control system support, and many
other features.
The NetBeans IDE 6.5 provides several new features and enhancements, such as rich
PHP, JavaScript and Ajax editing features, improved support for using the Hibernate
web framework and the Java Persistence API, and tighter GlassFish v3 and MySQL
integration.
A computer language is a series of words used to give instructions to the computer,
telling it what to do, how to do it, and when to do it. One of these computer languages
is called Java. The purpose of this site is to study this language.
In our lessons, we will learn Java as a computer language not as a development
environment. This means that we will primarily build applications that show how this
language functions, not how to create graphical applications. The types of programs
we will create on this site are called console applications. By default, a console
application displays its result(s) in a black window. To make it a little easier, we will
use an environment that displays a window but with a different background color
Net Beans Platform
The Net Beans Platform is a reusable framework for simplifying the development of
Java Swing desktop applications. The Net Beans IDE bundle for Java SE contains
what is needed to start developing Net Beans plug-in and Net Beans Platform based
applications; no additional SDK is required.
Applications can install modules dynamically. Any application can include the
Update Center module to allow users of the application to download digitally-signed
upgrades and new features directly into the running application. Reinstalling an
upgrade or a new release does not force users to download the entire application
again.
The platform offers reusable services common to desktop applications, allowing
developers to focus on the logic specific to their application. Among the features of
the platform are:

User interface management (e.g. menus and toolbars)


19

1285974/5072/RIET/Abohar

User settings management

Storage management (saving and loading any kind of data)

Window management

Wizard framework (supports step-by-step dialogs)

What Is a Java SE Application?


A Java SE application is an application written to the Java Platform, Standard Edition
(Java SE). The same unmodified Java SE applications can be run on almost any
computer, whether that computer uses the Microsoft Windows, Solaris, Linux, or Mac
OS operating systems. The key to this application portability is the Java Runtime
Environment, which is available free of charge for most operating systems, including
all of the ones mentioned above.
In addition to being a platform for multi-platform desktop applications, the Java SE
platform is the basis for other technologies such as Java Platform, Enterprise Edition.
You might find yourself writing Java code that provides back-end logic for web and
enterprise applications as well.
2.11 SQL
Structured Query Language is a special-purpose programming language designed
for managing data held in a relational database management system (RDBMS).
Originally based upon relational algebra and tuple relational calculus, SQL consists of
a data definition language and a data manipulation language. The scope of SQL
includes data insert, query, update and delete, schema creation and modification, and
data access control.
SQL was one of the first commercial languages for Edgar F. Codd's relational model,
as described in his influential 1970 paper, "A Relational Model of Data for Large
Shared Data Banks." Despite not entirely adhering to the relational model as
described by Codd, it became the most widely used database language.

Queries

A query includes a list of columns to be included in the final result immediately


following the SELECT keyword. An asterisk ("*") can also be used to specify that the
query should return all columns of the queried tables. SELECT is the most complex
statement in SQL, with optional keywords and clauses that include:
The FROM clause which indicates the table(s) from which data is to be

retrieved. The FROM clause can include optional JOIN subclauses to specify
the rules for joining tables.
20

1285974/5072/RIET/Abohar
The WHERE clause includes a comparison predicate, which restricts the rows

returned by the query. The WHERE clause eliminates all rows from the result
set for which the comparison predicate does not evaluate to True.
The GROUP BY clause is used to project rows having common values into a

smaller set of rows. GROUP BY is often used in conjunction with SQL


aggregation functions or to eliminate duplicate rows from a result set.
The WHERE clause is applied before the GROUP BY clause.
The HAVING clause includes a predicate used to filter rows resulting from

the GROUP BY clause. Because it acts on the results of the GROUP


BY clause, aggregation functions can be used in the HAVING clause
predicate.
The ORDER BY clause identifies which columns are used to sort the resulting

data, and in which direction they should be sorted (options are ascending or
descending). Without an ORDER BY clause, the order of rows returned by an
SQL query is undefined
Features in SQL Server Management Studio
SQL Server Management Studio includes the following general features:
Supports most administrative tasks for SQL Server.s
A

single, integrated environment for SQL Server Database Engine

management and authoring.


Dialogs for managing objects in the SQL Server Database Engine, Analysis

Services, and Reporting Services, that allows you to execute your actions
immediately, send them to a Code Editor, or script them for later execution.
Non-modal and resizable dialogs allow access to multiple tools while a dialog

is open.
A common scheduling dialog that allows you to perform action of the

management dialogs at a later time.


Exporting and importing SQL Server Management Studio server registration

from one Management Studio environment to another.


Save or print XML Showplan or Deadlock files generated by SQL Server

Profiler, review them later, or send them to administrators for analysis.


A new error and informational message box that presents much more

information, allows you to send Microsoft a comment about the messages,

21

1285974/5072/RIET/Abohar
allows you to copy messages to the clipboard, and allows you to easily e-mail
the messages to your support team.
An integrated Web browser for quick browsing of MSDN or online help.
Integration of Help from online communities.
A tutorial on SQL Server Management Studio to help you take advantage of

the many new features and become more productive right away.
A new activity monitor with filtering and automatic refresh.
Integrated Database Mail interfaces.

The Main Features of SQL


The following list describes some of the important characteristics of the MySQL
Database Software

Internals and Portability


Written in C and C++.
Tested with a broad range of different compilers.
APIs for C, C++, Eiffel, Java, Perl, PHP, Python, Ruby, and Tcl are available.
Fully multi-threaded using kernel threads. This means it can easily use
multiple CPUs if they are available.
Provides transactional and non-transactional storage engines.
A very fast thread-based memory allocation system.
Very fast joins using an optimized one-sweep multi-join.
In-memory hash tables which are used as temporary tables.
SQL functions are implemented using a highly optimized class library and
should be as fast as possible. Usually there is no memory allocation at all after
query initialization.
The MySQL code is tested with Purify (a commercial memory leakage
detector) as well as with Valgrind, a GPL tool.
The server is available as a separate program for use in a client/server
networked environment. It is also available as a library that can be embedded
(linked) into standalone applications. Such applications can be used in
isolation or in environments where no network is available.

Column Types
Many column types: signed/unsigned integers 1, 2, 3, 4, and 8 bytes long,
FLOAT, DOUBLE, CHAR, VARCHAR, TEXT, BLOB, DATE, TIME,

22

1285974/5072/RIET/Abohar
DATETIME, TIMESTAMP, YEAR, SET, ENUM, and OpenGIS geometry
types.
Fixed-length and variable-length records.

Commands and Functions


Full operator and function support in the SELECT and WHERE clauses of
queries. For example:
mysql> SELECT CONCAT(first_name, ' ', last_name)
FROM tbl_name
WHERE income/dependents > 10000 AND age > 30;
Full support for SQL GROUP BY and ORDER BY clauses. Support for
group functions (COUNT(), COUNT(DISTINCT ...), AVG(), STD(), SUM(),
MAX(), MIN(), and GROUP_CONCAT()).
Support for LEFT OUTER JOIN and RIGHT OUTER JOIN with both
standard SQL and ODBC syntax.
Support for aliases on tables and columns as required by SQL-92.
DELETE, INSERT, REPLACE, and UPDATE return the number of rows that
were changed (affected). It is possible to return the number of rows matched
instead by setting a flag when connecting to the server.
The MySQL-specific SHOW command can be used to retrieve information
about databases, tables, and indexes. The EXPLAIN command can be used to
determine how the optimizer resolves a query.
Function names do not clash with table or column names. eg, ABS is a valid
column name. The only restriction is that for a function call, no spaces are
allowed between the function name and the `(' that follows it. You can mix
tables from different databases in the same query (as of Version 3.22).

Security
A privilege and password system that is very flexible and secure, and allows
host-based verification. Passwords are secure because all password traffic is
encrypted when you connect to a server.
Scalability and Limits
Handles large databases. We use MySQL Server with databases that contain

50 million records. We also know of users that use MySQL Server with
60,000 tables and about 5,000,000,000 rows.

23

1285974/5072/RIET/Abohar
Up to 32 indexes per table are allowed. Each index may consist of 1 to 16

columns or parts of columns. The maximum index width is 500 bytes (this
may be changed when compiling MySQL Server). An index may use a prefix
of a CHAR or VARCHAR column.
Connectivity
Clients may connect to the MySQL server using TCP/IP sockets on any

platform. On Windows systems in the NT family (NT, 2000, or XP), clients


may connect using named pipes. On Unix systems, clients may connect using
Unix domain socket files.
The Connector/ODBC interface provides MySQL support for client programs

that use ODBC (Open-DataBase-Connectivity) connections. For example, you


can use MS Access to connect to your MySQL server. Clients may be run on
Windows or Unix. Connector/ODBC source is available. All ODBC 2.5
functions are supported, as are many others.
The Connector/JDBC interface provides MySQL support for Java client

programs that use JDBC connections. Clients may be run on Windows or


Unix. Connector/JDBC source is available.
Clients and Tools
The MySQL server has built-in support for SQL statements to check,
optimize, and repair tables. These statements are available from the command
line through the mysqlcheck client. MySQL also includes myisamchk, a very
fast command-line utility for performing these operations on MyISAM tables.
All MySQL programs can be invoked with the --help or -? options to obtain
online assistance.

24

1285974/5072/RIET/Abohar
CHAPTER 3

INTRODUCTION TO PROJECT
Technology is constantly changing. Society as we know it depends on this fact. That
which we take for granted today would have been the stuff of science fiction as little
as fifty years ago. In fifty years time, we will doubtless be excited, perturbed and
baffled by yet more new developments. In the early years of the twenty first century,
it is computers and the Internet that have captured the public imagination, and found
their way into not just the working environments, but increasingly into the domestic
space. In this modern society, if we are not capable to cope up with these changes
than we are not going to stand or survive anywhere in this technical world. Today
there is no place for errors, so as to make a system more effective and efficient we
need such technology where error prone chances must be least.
In the scenario of the assignment, we are required to develop a web-based application
on Job Portal Management System. In this time of recession where everyone, is either
experienced or fresher, is in search for a job. This job portal can prove to be very
helpful since it allows users of different profile to upload their CVs, search job on the
basis of their qualification. Every user can access through user id and apply for
multiple jobs at a time.
Currently, we are working on a manual system where data is stored in the form of
registers. Viewing available jobs, or applying for the job at the agency can be done for
which job seekers has to go to the agency and check the available jobs at the agency.
Job seekers check he list of jobs available and apply the job. Then the agency will
show available jobs for the job seeker for his qualifications and then updates the jobs
database.

The developed Job Portal management system is web-based which

Requires Employee Registration & Profiles, Job Search, Employer Registration &
Profiles, and Subscription Option for both Employee and Employer etc. Employer can
add Own Profile and post jobs and Job Seeker can Search Jobs based on Geographical
Area (State), Qualification, and Departments wise.
3.1 PURPOSE
The purpose of designing the online job portal is to give the job seekers a platform for
finding a right and a satisfactory job according to their qualification. It also connects
the job seekers with the major agencies.

25

1285974/5072/RIET/Abohar
It also provides Jobs portal for Job Seekers to submit their CV and apply for job
posting and Employer can select best Employees from Available CV based on their
payment option selection. This is basically a Job portal where job Seeker applies for
jobs and employer post jobs and select prospective applicant.
Job portal is prepared for provide all categories of job and help to get various type of
job. The main purpose of job portal is to provide the facility to job seekers for getting
the quick job.
So, it enables applicants to search for jobs in a convenient manner and to enable
employers to find suitable candidates.
3.2 OBJECTIVE
The objective of the application is to develop a system using which job applicants and
recruiters can communicate with each other. An Online Job Portal is an application
where the job seekers can register themselves at the website and search jobs which are
suitable for them where as the employers register with the website and put up jobs
which are vacant at their company.
The Online Job Portal System is a package to be used by agencies to improve the
efficiency of business. The Online Job Portal System to be developed benefits greatly
the members. The system provides jobs catalogue and information to members and
helps them decide on the jobs to apply. The Admin and employers can keep the jobs
catalogue updated all the time so that the Job seekers get the updated information all
the time.
3.3 SCOPE
The Scope for the system can be as follows:-

Maintain Job Seeker and Employer records


Maintain uploaded Resumes
Provide Customized Job Postings
Maintain Job Posting details and generate various reports

26

1285974/5072/RIET/Abohar
CHAPTER 4

MODULES
The application comprises the following major modules:
4.1 JOB SEEKER MODULE
This module provides functionalities for job seekers. Applicants can post their
resumes with personal and professional details. They can also update the resume as
frequently as required. The applicant can also browse through the present vacancies
available. Job seekers can also get mail alerts when their resumes are selected by
employers.
4.2 EMPLOYER MODULE
This module provides functionalities related to employers. Employers can post
vacancy details and update the details as and when necessary. Employers can search
through applicant resumes based on different criteria.
4.3 ADMINISTRATION MODULE
This module provides administrator related functionalities. Administrator manages
entire application and maintains the profiles of applicants and employers.
4.4 PUBLIC MODULE
This module is creating for public view. In this module public can view jobs and
upcoming jobs. Public can register for apply jobs and get latest jobs on their EmailID.
4.5 APTITUDE TEST (DEMO) MODULE
This module is creating for provide aptitude test demo to job seeker. In this test 15
questions which have four choice and in this also generate result of aptitude test.

27

1285974/5072/RIET/Abohar
CHAPTER 5

METHODOLOGY OF THE PROJECT


5.1 PROCESS MODEL
Process modeling aims to graphically represent the processes which capture,
manipulate, store and distribute data.
Data flow diagrams
Structured English
Decision tables and decision trees
5.1.1 Data Flow Diagrams
Data flow diagrams model the flow of data into, through, and out of an information
system:
show the processes that change or transform data
show the movement of data between processes
represent a system as a network of processes which transform data flowing
between them
DFD Symbols:
In the DFD, there are four symbols :
1. A square defines a source(originator) or destination of system data
2. An arrow identifies data flow. It is the pipeline through which the information
flows
3. A circle or a bubble represents a process that transforms incoming data flow into
outgoing data flows.
4. An open rectangle is a data store, data at rest or a temporary repository of data
Process that transforms data flow.

Source or Destination of data

Data flow
28

1285974/5072/RIET/Abohar

Data Store

LEVEL 0:

level zero data flow diagram is the diagram at the level immediately below
the context diagram.

It "expands" the single process on the context diagram to show the major,
high-level processes (or functions) within the system

Fig 5.1:- Level 0 DFD

LEVEL 1 :

Fig 5.2:- Level 1 DFD


29

1285974/5072/RIET/Abohar
5.2 CONTEXT DIAGRAM
The highest level data flow diagram is the context diagram.
The context diagram shows the interaction of the system with its environment in
terms of data flow
The context diagram defines the boundary of the system (the scope of the system)
Only the data flows which leave the system and the data flows which come from
outside the system are shown.

Admin
Manage User Profile

Send User Notification


Categorizes Job Postings

Provide User Authentication


Alters Site Design

Customizes Search Criteria


Generate Reports

Registeration

Displays Recent Jobs

Login
Update Profile
Search Job

0
Registration

Post Resume
Create Job Agents

Login

JOB PORTAL SYSTEM

Apply For Job

Post Jobs
Search Resume
View Resume
Download Resume
Create Resume Agents

Job Seeker

Job Notifications

Generate Reports

Employee
Registration Confirmation

Fig 5.3:- Context Diagram

30

1285974/5072/RIET/Abohar
5.3 DATA MODEL
5.3.1 Introduction to Data Modeling
Data modeling is the formalization and documentation of existing processes and
events that occur during application software design and development. Data
modeling techniques and tools capture and translate complex system designs into
easily understood representations of the data flows and processes, creating a
blueprint for construction and/or re-engineering.
A data model can be thought of as a diagram or flowchart that illustrates the
relationships between data. Although capturing all the possible relationships in a
data model can be very time-intensive, it's an important step and shouldn't be
rushed. Well-documented models allow stake-holders to identify errors and make
changes before any programming code has been written.
5.3.2 Entity-relationship diagram
An entity-relationship diagram is a data modelling technique that creates a
graphical representation of the entities, and the relationships between entities,
within an information system.
The three main components of an ERD are:

The entity is a person, object, place or event for which data is collected.
The entity is represented by a rectangle and labelled with a singular noun.

The relationship is the interaction between the entities.. A relationship


may be represented by a diamond shape, or more simply, by the line
connecting the entities.

The cardinality defines the relationship between the entities in terms of


numbers.

The three main cardinal relationships are:

One-to-one
Expressed as 1:1;

One-to-many
Expressed as 1: M;

Many-to-many
Expressed as M: N.

31

1285974/5072/RIET/Abohar

SavedJob

has

Has

Resume

Uploads

Submits

Application

Creates

Agent

Job seeker

has

Message

Has

Job

Posts

manages

recieves
Employer

manages

sends

has

Administrator

Creates

Has

Account

s
Fig 5.4:- ER Diagram

32

1285974/5072/RIET/Abohar
CHAPTER 6

REQUIREMENTS
6.1 FUNCTIONAL REQUIREMENTS
6.1.1 Job Seeker
Table 6.1:- Job Seeker

S.No

Requirement

Description

1.

Registration

Jobseeker if wants to register to the site, a click on


Register Now button will provide him with a
registration form. After filling all the details in the
registration form i.e. the mandatory ones which are
marked by * has to be filled necessarily and the
remaining may be left, user has to submit it by
clicking on submit button. Notification via
message will be displayed.

2.

Login

It allows only authorised people to access the


application. When the user logs in to the system,
the user has to enter login details in the specific
username and password fields. The user clicks on
login button and if id and password are validated,
then the user is given access to the application and
user profile is displayed.

3.

Forgot

Password If the user forgets the password, it can be retrieved

Option

by Forgot Password? Button. A click on this


button will let to a security question and if the
answer is verified. The message with correct
password will be provided to the user.

4.

Search Jobs

The jobseeker can search for the required job by


entering keywords, category, work status, location,
qualification,

categories,

company,

location,

experience in the provided fields. A click on


search button will display the result of all the jobs
matching the job seekers specification.
33

1285974/5072/RIET/Abohar
5.

Add CV

Jobseeker has the option to either create his CV or


post his own made CV. So, user is asked already
Having CV or wants to create with? If a click on
Upload CV button is made, it will enable the user
to post his created CV on the site.

6.

Create Job Agents A trigger option is provided to the jobseeker i.e.


and Receive Daily jobseeker can create job agents by a click on Add
Notifications

Trigger option. Job agents notify the registered


Job seekers via message with various job details
and also specified requirements of the job they
opted for.

7.

Edit,

Activate

or

Edit, Activate or Delete Trigger options provided

Delete Job Search

with Create Trigger lets jobseeker with some

Agent.

additional facilities for the already created job


search agents.
The jobseeker can edit job search agents by opting
for Edit Trigger option. This will let jobseeker to
modify the requirements of the job or make some
changes in receiving notifications.
Activate/Deactivate Trigger allows the jobseeker
whether or not to receive notifications via
message.
Delete Trigger allows the jobseeker to delete the
created job search agent and not to receive any
messages for the job.

8.

Save Jobs

As jobseeker receives daily notifications of jobs


that match their keywords via job agent. The user
can save jobs that interest them but do not want to
apply at that particular point of time. A Click on
Save Job button will put all the details of that job
in the queue and the candidate can apply for it
later on from the list.

9.

Arrange Job Search As the jobseeker searches for a particular job and
34

1285974/5072/RIET/Abohar
Results

Saves it. He has the ability to arrange job search


results When all the search results are with the
user a click on date or location button allows the
user to collect results by date or location.

10.

Apply for a Job

Jobseeker applies the job to particular company


after submitting the resume and the required
details. A notification to apply for a particular job
according to his requirements is sent to the
jobseeker. Job Seeker can apply for the job in the
same company by clicking on the apply button
with the notification.

11.

Set Privacy Level

Job seeker has the option to set 'privacy level' to


control how much information is visible to
employers through resume searches. The user has
to set on Privacy Level while posting or creating
CV

and

then

check

from

list

of

Private/Public/Confidential Resumes option.


12.

Resume

View Job Seeker also has the option of Report

Reports

Generation. As the user opts for Report generation


a list of how often interested employers viewed
the particular jobseekers resume is provided to
the jobseeker.

6.1.2 Employer
Table 6.2:- Employer
S.No

Requirement

Description

1.

Registration

For Employer registration to the site, a click on


Register Now button will provide him with a
registration form. After filling all the details in the
registration form i.e. the mandatory ones which
are marked by * has to be filled necessarily and
the remaining may be left, user has to submit it by
clicking on submit button. Notification via
35

1285974/5072/RIET/Abohar
message will be displayed.

2.

Login

It allows only authorised people to access the


application. When the user logs in to the system,
the user has to enter login details in the specific
username and password fields. The user clicks on
login button and if id and password are validated,
then the user is given access to the application and
user profile is displayed.

3.

Forgot

Password If the user forgets the password, it can be retrieved

Option

by Forgot Password? Button. A click on this


button will let to a security question and if the
answer is verified. The message with correct
password will be provided to the user.

4.

Search Resume

The Employer can search for the required job by


entering keywords, category, job category, days
since posted in the provided fields. A click on
search button will display the result of all the
resumes matching the employers specification.

5.

Add a New Job

Employer collects the vacancy details and has the


authority to Post jobs. A particular is posted by
filling detailed job description such as job title,
company name, location, salary, job type, work
type, description, required skills, etc in the
required fields.
If a click on Add Job button is made,
advertisement for the new job will be posted on
the website.

6.

Create

Resume Employers and Recruiters have the ability to

Agents

create multiple Resume Agents. When the


Employer searches for the resumes by a keyword,
36

1285974/5072/RIET/Abohar
the segregation of resumes that match their
keywords is performed by these agents. For
Example, Employer searches for resumes relates
to Java with an experience of more than 2 years,
first Resume Agent will collect resumes of Java
and second of Java but with experience of more
than 2 years.
7.

Generates

As soon as the job is posted to the website,

Information on Time employer knows the time limit for which job is
Left

posted to the site. He thus posts the information


on how much time left on each job posting. The
System thus displays time left with each job
posted.

8.

Information

on The Employer when sees different applications,

number of vacancy an options is to view number of vacancies viewed


viewings

is available with the employer. As employer


clicks on it he is authorised to see the number of
vacancy viewings and applications by him.

9.

Search,

View

Download Resume

or Employers can Search Resumes for a particular


job by filtering criteria and filling all the required
fields. As the employer clicks on Search Button,
all the Resumes within the criteria are displayed.
After Searching, Employer now has the option to
View or Download Resume. A click on any
option will let him to view and check the resume.

6.1.3 Administrator
Table 6.3:- Administrator

Sr. No

Requirement

Manage

jobseeker

employer module

Description
and Admin has the responsibility to manage the
jobseeker as well as the employer modules.
This includes managing their
usernames and passwords etc.
37

account,

1285974/5072/RIET/Abohar
2

Send Notification messages Whenever any user subscribes to the site as


to employer and jobseeker

an employer or jobseeker, the admin will


have to send them notification messages
confirming their subscription.

Provide

roles

and The administrator provides usernames and

authentication to users

passwords to the users and also the admin


has the duty to make user of the website as
an employer or jobseeker depending on the
type of registration made by the user.

Ability to change websites The option to make modifications in the look


and appearance of the websites interface

interface look

relies in the hands of the administrator. This


includes changing of menu items in the
menu bar, display of contents and also the
color if the interface.
5

Send

notifications

candidates,

members,

to The administrator can send notifications to


or the subscribers regarding account details

employers

consisting of their subscriptions, creation


dates, events, etc.

Automated

message The users account will expire if it is not

indicating that accounts have used for a specific time period. So the admin
expired

can send notifications to those users whose


accounts have been expired and requires
renewal or creation of new account.

Display

recent

jobs

on The job offers on the website keeps

homepage

changing. So, the admin has the duty to


remove the old posts or dead posts and
display new and recent job offerings on the
homepage of the website.

Extensive usage report/stats

The admin also generates notification if the


number of posts of resumes or number of
sign ups to the website crosses a particular
limit.
38

This notification is referred as

1285974/5072/RIET/Abohar
extensive usage report/stats.
9

Categorization

of

JOB The

postings

website

offers

jobs

of

different

categories. So, the admin will have to


display the job offering posts in their specific
categories so that user doesnt get confused
regarding the scope and context of the job
post.

10

Customization

of

search The search for job posts can be done using

criteria

keyword search system and the matching job


vacancy will be displayed to the user. The
admin decides what jobs will be displayed
on search using a particular keyword(s).

11

Apply Restrictions on Job The administrator can apply restrictions on


Posting,

Resume

Contact

Info,

Search, the number of job postings to be displayed


Applicant on the websites homepage at a time. The

Screening, Company Profile

admin also decides what postings are to be


removed and why. Also, the admin has the
duty to display the details restricting display
of contact details of the company or even the
applicant and the company profile can be
limited.

12

Control
displayed

over
in

what

is The admin can change the content of the

nearly

all dropdown lists and list boxes anywhere in

dropdown lists and list boxes the website. This can be done either to apply
throughout the site

restrictions on few contents or to make the


website free from unwanted and less
important contents.

13

Generate reports If any

If any report is to be generated, for example,


reports of the number of applicants or the
number of resumes posted for a particular
job post, it can be generated be the admin.

39

1285974/5072/RIET/Abohar
6.2 NON-FUNCTIONAL REQUIREMENTS
Secure access of confidential data by user name and password. This
application is secure for every kind of its users, because if any user logout
from any session then nobody will be able to access his profile without
knowing his confidential password.
24 X 7 availability
Better component design to get better performance at peak time.
The database used here is robust, reliable & fast. So users will have to wait for
the output very short time.
This application can be accessed from any type of platform.
There is no case of redundancy in the database so it will not take extra
memory space.
Username & password are sent to the users via mobile sms and email after
registration.
Password recovery system is also provided in case of forgetting the password.
6.3 HARDWARE REQUIREMENTS
Operating System :Windows XP Professional SP3/Vista SP1/Windows
Processor

: 2.6 GHz Intel Pentium IV or equivalent

Memory

: 2 GB

Disk space

: 2.5GB for JDK1.7 and 1 GB WAMP SERVER

Motherboard

:Intel 845 and above

6.4 SOFTWARE REQUIREMENTS


Software plays an important role in any project development. One should understand
which software to use to develop the project. Windows 7 is used as an operating
system. The application is developed using:
Technology

: JAVA

Environment

: Java JDK 1.7

Frontend Tool

: Net Beans

Backend Tool

: MYSQL, TOMCAT SERVER

40

1285974/5072/RIET/Abohar
CHAPTER 7

SOFTWARE TESTING
Software testing is a critical element of software quality assurance and represents the
ultimate review of specification, design and coding. The purpose of product testing is
to verify and validate the various work product viz. units, integrated unit, and final
product to ensure that they meet their respective requirements.
7.1 TESTING OBJECTIVES

Testing is a process of executing a program with the intent of finding an error.

A good test case is one that has a high probability of finding an as-yet
undiscovered erro

A successful test is one that uncovers an as-yet undiscovered error.

Live data is the actual data to be used in the proposed system.

Test data is previously designed sample input to achieve predictable results.

7.2 TESTING TECHNIQUES


Once source code is generated, software must be tested to find (or correct) as many
errors as possible before delivery to customer. The goal is to design a series of test
cases that have a high likelihood of finding errors. The Software Testing Techniques
provide systematic guidance for designing tests that exercise the internal logic of
software components, and exercise the input and output domains of the program to
uncover errors in program function, behavior and performance.
Reviews and other Software Quality Assurance activities can and do uncover errors,
but they are not sufficient. Every time the program is executed, the customer tests it.
Therefore, we have to execute the program before it gets to the customer with the
specific intent of finding and removing all errors. In order to find the highest possible
number of errors, tests must be conducted systematically and test cases must be
designed using disciplined techniques.
7.3 TESTING STRATEGIES
A strategy for software testing integrates software test case design methods into a
well-planned series of steps that result in the successful construction of software. The
strategy provides a road map that describes the steps to be conducted as part of
testing, when these steps are planned and then undertaken, and how much effort, time

41

1285974/5072/RIET/Abohar
and resources will be required. Therefore, any testing strategy much incorporates test
planning, test case design, test execution, and resultant data collection and evaluation.
7.4 SYSTEM TESTING
The importance of software testing and its implications with respect to software
quality cannot be overemphasized. Software testing is a critical element of software
quality assurance and represents the ultimate review of specification, design and code
generation. Once source code has been generated software must be tested to uncover
(and correct) as many errors as possible before implementation. Every time the
program is executed, it is tested.
For the testing of the project, we have followed the following two major testing
methods:
White box testing
Black box testing

White box Testing: tests will focus on program control structure. Test cases will
be derived to ensure that all statements in the coding of pages have been executed
at least once during testing and that all logical conditions have been exercised.

Black box Testing: will be designed to validate functional requirement without


regard to the internal workings of the project. Black box testing techniques will
focus on the information domain of the project, deriving test cases by partitioning
the input and output domain of the project in a manner that provides thorough test
coverage. Although testing is done after the designing, but testing has also been
done simultaneously along with designing and coding.

7.5 SOFTWARE MAINTENANCE


Software maintenance in software engineering is the modification of a software
product after delivery to correct faults, to improve performance or other attributes.
The key software maintenance issues are both managerial and technical. Key
management issues are: alignment with customer priorities, staffing, which
organization does maintenance, estimating costs. Key technical issues are: limited
understanding, impact analysis, testing, and maintainability measurement. After the
installation phase is completed and the user staff is adjusted to the changes created by
the candidate system, evaluation and maintenance begin. Like any system, there is an
aging process that requires periodic maintenance of hardware and software. If the new
information is inconsistent with the design specifications, then changes have to be

42

1285974/5072/RIET/Abohar
made. Hardware also requires periodic maintenance to keep in tune with design
specifications. The importance of maintenance is to continue to bring the new system
to standards. For the maintenance it has to be regularly checked whether all the
devices are working properly. If any of the devices on network is not working then
that has to be checked and amended in time.
They categorized maintenance activities into four classes:

Adaptive modifying the system to cope with changes in the software


environment (DBMS, OS)

Perfective implementing new or changed user requirements which concern


functional enhancements to the software

Corrective diagnosing and fixing errors, possibly ones found by users.

Preventive increasing software maintainability or reliability to prevent


problems in the future.

The survey showed that around 75% of the maintenance effort was on the first two
types, and error correction consumed about 21%. Many subsequent studies suggest a
similar magnitude of the problem. Studies show that contribution of end user is
crucial during the new requirement data gathering and analysis.
7.6 SOFTWARE MAINTENANCE PROCESSES
This section describes the six software maintenance processes as:
The implementation process contains software preparation and transition
activities, such as the conception and creation of the maintenance plan; the
preparation for handling problems identified during development; and the
follow-up on product configuration management.
The problem and modification analysis process, which is executed once the
application has become the responsibility of the maintenance group. The
maintenance programmer must analyze each request, confirm it (by
reproducing the situation) and check its validity, investigate it and propose a
solution, document the request and the solution proposal, and finally, obtain
all the required authorizations to apply the modifications.
The process considering the implementation of the modification itself.
The process acceptance of the modification, by confirming the modified work
with the individual who submitted the request in order to make sure the
modification provided a solution.

43

1285974/5072/RIET/Abohar
The migration process (platform migration, for example) is exceptional, and is
not part of daily maintenance tasks. If the software must be ported to another
platform without any change in functionality, this process will be used and a
maintenance project team is likely to be assigned to this task.
Finally, the last maintenance process, also an event which does not occur on a
daily basis, is the retirement of a piece of software.
Software testing is a critical element of software quality assurance and represents the
ultimate review of specification, design and coding. The purpose of product testing is
to verify and validate the various work product viz. units, integrated unit, and final
product to ensure that they meet their respective requirements.

44

1285974/5072/RIET/Abohar
CHAPTER 8

DATABASE DESIGN
8.1 ADMIN
Admin

8.2 EMPLOYEE REGISTER


Employee Register

45

1285974/5072/RIET/Abohar
8.3 JOB SEEKER
Job Seeker

8.4 ADD JOBS


Add Jobs

46

1285974/5072/RIET/Abohar
8.5 DEMO TEST
Demo Test

8.6 DEMO TEST ANSWER


Demo Test Answer

47

1285974/5072/RIET/Abohar
8.7 EMPLOYEE NOTIFICATION
Employee Notification

8.8 JOB SEEKER NOTIFICATION


Job Seeker Notification

8.9 PUBLIC NOTIFICATION


Notification

48

1285974/5072/RIET/Abohar
8.10 STATES
States

8.11 UPCOMING JOBS


Upcoming Jobs

8.12 OFFLINE JOBS


Offline Jobs

8.13 CONTACT US
Contact Us

49

1285974/5072/RIET/Abohar
CHAPTER 9

SNAPSHOTS

9.1 Home Page:- Home page contains login forms for admin, jobseeker, and
employer. It contains a search box where job seeker can search jobs according to
particular role, industry and location

Fig 8.1:- Home Page

50

1285974/5072/RIET/Abohar

CONCLUSION
At last it can be concluded that the Job Portal System was a real learning experience.
The principles of software production were well implemented throughout the system.
The whole project undergoes with full of enthusiasm and with full of joyous
moments. The project has been made as per as the given specification. The system has
been made as user friendly as possible by the use of HCIU principals. That is why
Management holds an important place in the software production.

Working on the Project was really a learning experience and we have come a long
way in building our concepts of Software engineering. The Job Portal
Systemdeveloped by us is purely based on ASP.net platform. The overall purpose of
this system is to computerized the whole process and thus prevent the intervening
errors. We also tried to follow the holistic design principle so that the interface of the
system is simple.

During the course of this assignment we have gone through many obstacles which
made us to research and though increased our knowledge. After applying all the data
modelling, object modelling and process modelling techniques now we are very well
clear with all these concepts and fundamentals which will be going to help us in the
future.

51

1285974/5072/RIET/Abohar

REFERENCES
I.
II.

Stephen walther (2008). Complete java reference.


Chris Payne(2002).Professional java server.s

III.

Ian Sommerville (2008) Programing J2EE 1.3 Edition.

IV.

S.Valacich, Joseph, F.George, Joey, and A. offer, Jeffery, 2005. Essentials of


System Analysis And Design. 2nd ed. New Delhi: Prentice-Hall of India
Private Limited.

V.
VI.
VII.

Core java-An intigrated approach


(1995). Asp tutorials. Available: http://w3schools.com/asp/default.asp.

(2004).

ASp.net

and

sql.

Available:http://www.tutorialized.com/tutorial/Connecting-to-a-SQLdatabase-from-ASP-.NET-II/5745.
VIII.

De Montfort University. 2010. Purpose of WISDM. [ONLINE] Available


at:http://www.ccsr.cse.dmu.ac.uk/conferencess/ethicomp/ethicomp2010/abstra
cts/ethicomp2010_ramrattan_ramrattan_patel_hussain.php.
March 13].

IX.
X.

www Java T Point


http://jobsearch.naukri.com/top-company-jobs

52

[Accessed

13