0% found this document useful (0 votes)
21 views95 pages

TYBCA

Uploaded by

UJJWAL
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
21 views95 pages

TYBCA

Uploaded by

UJJWAL
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 95

PERSONALITY PREDICTION SYSTEM

THROUGH CV ANALYSIS

Yashwantrao Chavan Maharashtra Open


University Nashik, Maharashtra

Submitted by
Palande Vanshika Mahesh
(PRN: 2020017000355343)
Jadhav Vaidehi Nitin
(PRN: 202101700606301)
Roy Rani Rampravesh
(PRN: 2021017001603473)

Project Guide
Mrs.Gayatri Bakhtiani

We, have submitted our work on this project to the “School of


Computer Science” (YCMOU). And is a real evidence of project
work partially carried out for the awarding of degree in
Bachelor of Computer Applications (B.C.A)
B.C.A P13
May 2024
EXTERNAL EXAMINER INTERNAL EXAMINER

1
A Project Report

On
Personality Prediction System Through CV Analaysis

Submitted By

Vanshika Palande

Vaidehi Jadhav
Rani Roy

In Partial Fulfillment for the Award of the Degree


Of

BACHELOR OF COMPUTER APPLICATION

In

COMPUTER SCIENCE

Under the guidance of

Mrs. GAYATRI BAKHTIANI

DEPARTMENT OF COMPUTER SCIENCE


THAKUR POLYTECHNIC COLLEGE
Sem-VI

2023-2024

THAKUR POLYTECHNIC COLLEGE


MUMBAI – 400101

MAHARASHTRA

2023-2024
DEPARTMENT OF COMPUTER SCIENCE

CERTIFICATE

This is to certify that VANSHIKA PALANDE , VAIDEHI JADHAV And RANI ROY of T.Y.B.C.A (Sem
VI) class has satisfactorily completed the project “ PERSONALITY PREDICTION SYSTEM
THROUGH CV ANALYSIS , to be submitted in partial fulfilment for the award of degree of
Bachelor of Computer Application in Computer Science during the Academic year 2023-2024

Date of Submission:

Project Guide

College Seal Signature of Examiner


ACKNOWLEDGEMENT
The success and final outcome of this project required a lot of guidance and
assistance from many people and I am extremely privileged to have got this all
along the completion of my project. All that I have done is only due to such
supervision and assistance and I would not forget to thank them.
I respect and thank Dr. S. M. Ganechari, The Principal of Thakur Polytechnic
for providing me an opportunity to do the project work and giving us all support
and guidance, which made me complete the project duly. I am extremely
thankful to him for providing such a strong support and guidance, although he
had busy schedule managing the corporate affairs.
I owe my deep gratitude to our project guide Mrs. Palak Pandya who took
keen interest on our project work and guided us all along, till the completion of
our project work by providing all the necessary information for developing a
good system.
I am thankful and fortunate enough to get constant encouragement, support
Canodm gpuuitdearn ce from all teaching and non-teaching staffs of Bachelors in
Application Department which helped us in successfully completing our project
work. Also, I would like to extend our sincere esteem to all staff in laboratory for
their timely support.
Palande Vanshika Mahesh
Jadhav Vaidehi Nitin
Roy Rani Rampravesh

3
CONTENTS
List of Figures
List of Tables
List of Abbreviations
1. INTRODUCTION 8
1.1 Abstract 9
1.2 Problem Statement 10
1.3 Solution 10
1.4 Objectives of the Project 10
1.5 Literature Survey 11
1.6 Proposed System 14
2. PROJECT PLAN 15
2.1 Feasibility Study 16
2.1.1 Operational Feasibility 16
2.1.2 Technical Feasibility 17
2.2 Implementation Plan 18
2.3 Steps involved in System Development Life Cycle 19
2.4 Software Process Model 21
2.5 Estimations 23

2.5.1 Predecessor Table 24


2.5.2 Pert Chart 26

2.5.3 Gantt Chart 28

2.6 Data Flow Diagram 30

2.6.1 Introduction to DFD 30


2.6.2 DFD Diagram for Personality Prediction System through CV Analysis-35
37
2.7 Use Case Diagram
37
2.7.1 When to apply Use Case Diagram
38
2.7.2 Use Case Diagram Components

4
2.7.3 Use Case Diagram Symbols and Notations 38
2.7.4 Use Case Diagram for Personality Prediction System through CV -39
Analysis
2.8 Sequence Diagram 40
2.8.1 Purpose of Sequence Diagram 40
2.8.2 Sequence Diagram of the System 41
2.9 Activity Diagram 42
2.9.1 Notations of Activity Diagram 42
2.9.2 Activity Diagram of the System 43
2.10 Architecture of the System 44
2.10.1 Module 1-Admin Page 44
2.10.2 Module 2-Candidate Page 45
2.11 Working of the System 46
2.12 Website Testing 47

2.12.1 Levels of Testing 48


2.12.2 Test Cases 50

2.13 Interfaces of Personality Prediction System through CV Analysis 63


68
3. WHY?
69
3.1 ASP.NET
70
3.2 .NET Framework
71
3.3 JavaScript
73
3.4 C#
75
3.5 HTML
76
3.6 Microsoft SQL Server
78
4. SOURCE CODE
88
5. FUTURE ENHANCEMENTS
90
6. CONCLUSION
References 92

5
List of Figures
Figure 1- Waterfall Process model
Figure 2- PERT Chart
Figure 3-Planned Gantt Chart
Figure 4-Actual Gantt Chart
Figure 5- DFD Symbols
Figure 6- Admin DFD Diagram
Figure 7-Candidate DFD Diagram
Figure 8-Use Case Diagram for Admin Module
Figure 9-Use Case Diagram of Candidate Module
Figure 10-Sequence Diagram of the System
Figure 11- Notations of Activity Diagram
Figure 12- Activity Diagram of the System
Figure 13-Levels of Testing
Figure 14- Admin login
Figure 15-Home Page
Figure 16-Add Job Module
Figure 17-Aptitude Questions Module
Figure 18-Personality Questions Module
Figure 19-Manage Options Module
Figure 20-Add New Options Module
Figure 21-Candidate Module
Figure 22-CV Registration
Figure 23 Registered Candidate Module
Figure 24-ASP.NET MVC
Figure 25- NET Framework
Figure 26-Javascript
Figure 27-C#

6
Figure 28-HTML
Figure 29-Microsoft SQL Server

List of Tables
Table 1-Project plan phase1
Table 2-Project plan phase2
Table 3 -Estimation table
Table 4- Predecessor Table

List of Abbreviations
JCM- Job Characteristics Model
CV- Curriculum Vitae
HTML- Hypertext Markup Language
ASP- Active Server Page
SQL- Structured Query Language
RAD-Rapid Application Development
PERT- Program Evaluation Review Technique
CPM- Critical Path Method
GANTT- Generalized Activity Normalization Time Table
DFD- Data Flow Diagram
UML- Unified Modelling Language
BI- Business Intelligence
XML- Extensible Markup Language
OSN- Online Social Network
OLTP- Online Transaction Processing

7
CHAPTER 1
INTRODUCTION

8
1. INTRODUCTION
1.1. Abstract:
Human Resource Management is apparently supported by and provided with
more opportunities by the development of Job Characteristics Model (JCM)
which in turn is based on the concept of modern job design. Job characteristics
theory is theory of work design It provides "a set of implementing principles for
job
enriching jobs in organizational Settings". The original version of
characteristics theory proposed a model of five "core" job characteristics (i.e.
skill variety, task identity, task significance, autonomy, and feedback) that affect
five work-related outcomes (i.e. motivation, satisfaction, performance, and
absenteeism and turnover) through three psychological states (i. e. experienced
meaningfulness, experienced responsibility, and knowledge of results)
Fortunately, the development in modern information system, digital
technologies, the universal access of electronic technology and internet led to
the inclination of the global Human Resource Management development and
make the system more applicable. Following the trend, the proposed system
tries to design a plan to integrate Job Characteristics Model into E-HR system to
search for a new model of efficient operation on Human Resource Management
in the Internet Age. In this project, we present a set of techniques that makes
the whole recruitment process more effective and efficient. We have
implemented a system that ranks the candidates based on weight-age policy as
well as an aptitude test. Today there is a growing interest in the personality traits
of a candidate by the organization to better examine and understand the
candidate's response to similar circumstances. Therefore, the system conducts
a personality prediction test to determine the personality traits of the candidate.
Finally, it presents the results of the candidates to the recruiter who evaluates
the top candidates and shortlists the candidate.

9
1.2. Problem Statement: The HR department has a huge workload to select
the right candidate for a
particular job profile, which in turn would provide the organization with a skilled
workforce from a large pool of candidates. The current electronic recruitment
system simply scans submitted CVs and lists candidates.

1.3. Solution:
The Personality Prediction System, operating through CV analysis, makes it
possible to more efficiently list the CV’s of submitted candidates from among a
large number of candidates, offering a uniform and fair CV evaluation policy.
This can be legally justified. The system categorizes experience and key
skills
required for a specific job, while CV’s are categorized based on experience and
other key skills required for a specific job profile. This system allows the HR
department to easily select a candidate based on the CV placement policy.
1.4. Objectives of the Project:
The objectives of the project are as stated below:

To develop a system to provide a more effective way of short-listing the


candidates
To determine the key skill characteristic by defining each expert's
preferences and ranking decisions.
To automate the process of requirement specifications and applicant's
ranking-
To conduct online aptitude and personality test.
To produce ranking decisions that would have relatively higher
consistency than those of human experts.

10
1.5. Literature Survey:
Faliagka et al. proposed an Integrated Electronic Recruitment System for
automated candidate mining and classification in 2014. In it, the system
implemented automatic classification of candidates based on objective
criteria extracted from the candidates' LinkedIn profile. A candidate's
personality traits were automatically extracted from their social presence
using linguistic analysis. The ranking of candidates was derived from the
individual selection criteria using the Analytical Hierarchy Process (AHP),
while their relative importance (weight) was under the control of the
recruiter. The system was limited by the fact that management positions
requiring industry experience and special qualifications were screened
inconsistently [1]

Linden et al. published The General Factor of Personality: A meta-analysis of


Big Five intercorrelations and criterion validity research in 2010. In their
article, they analysed the interrelationships of the Big Five personality factors
(Openness, Conscientiousness, Extraversion, Agreeableness, and
Neuroticism) to test for the presence of GFP. They found that the meta-
analysis supported GFP at the highest hierarchical level and that GFP played
an important role in relation to supervisor-rated performance. However,
they also acknowledged that it is important to note that the presence of GFP
does not mean that other personality factors, which were lower in the
hierarchy, lose their importance. [2]

Inceoglu et al. published the article "Personality and Job Engagement" in


2012. In it, they predicted that aspects of personality that are themselves
more active and energetic would be reflected in engagement. Extraversion
and more energetic aspects of work were predicted to have a stronger
relationship with work. Conscientiousness, namely social competence and
achievement orientation. [3]

W Peter, Personality and Job Engagement Journal of Personnel Psychology:


These predictions were tested in a study of three international websites that
offered free advice to individuals on recruitment and development
assessments. The results confirmed that short-term performance is indeed
an important function of long-term personality traits and point to certain
personality factors and traits that are more or less important in this regard.
Emotional stability and conscientiousness independently explained most of
the work-related variance. [4]

11
The designed Al chatbot is mainly used to have a friendly conversation with
the candidate and map his answers to accurately predict his personality.
The personality assessment questions are predefined based on personality
studies. These questions were mapped into a discussion tree. The answer
given to a particular question is used to refine the questions to be asked
later and the answers given to them are in turn used to refine other
questions to be asked (computer adaptive testing) as suggested by D
Tantam. Chatbot Al is designed to mimic the conversational patterns of an
empathetic recruiter, similar to the chatbot created by B. Heller et al. D.
Tatum et al. used a virtual assistant in psychotherapy. This approach used
online questionnaires to obtain patient responses and tabulate results.
Those results were then mapped to software such as Microsoft Vision to
draw conclusions about the patient's health. The virtual assistant was also
used to ask questions and was designed for computer adaptive testing,
where the answers given to the questions asked were used to decide which
questions to proceed with [5]

The conversation tree was designed in such a way that the chatbot is able to
respond to the applicants' queries empathetically. The chatbot will parse the
responses of the applicant to another web application where the responses
will be used to decide on a personality. That result in turn will be used to find
relevant job openings. These will be presented to the applicant via the
chatbot. The primary language used will be AIML web application will be
designed to interface with the chatbot to modify its core structure
(conversation tree etc) as suggested by B. AbuShawar. [6]
B. AbuShawar et al. had made modifications to the famed ALICE chatbot by
building a third-party application using java to modify the knowledge base of
the chatbot so that it could operate various different knowledge bases (e.g.
history, music). This approach made it easier to change the knowledge base
without modifying the AIML code underneath by hand. The advantage of this
chatbot was that it used AIML which is a standard language in the
development chatbots. The addition of the third-party application to make
modification easier made the chatbot even more customizable and
adaptable. [7]

De Meo, Pasquale eta al. proposed system a system which supports both
individuals looking for job and companies looking for employees. In such
context, generally, companies populate a database of job proposals, and
individuals are supported in their job search by an engine based on classical
Information Retrieval (IR) techniques. The system was based on agent

12
technology. A User Agent is associated with each user and manages his
profile as well as any interaction with him; a Recruitment Agent supports
each User Agent in the selection of those job proposals that appear to be the
most adequate for the corresponding user. In the ranking stage, the system
derives and ranks the candidates that have passed the filtering stage based
on classic IR techniques. Each candidate's rank acts as a score of how well
his profile fits the recruiter's specifications. Ranking is based on the analytic
hierarchy process, or AHP. [8]

13
1.6. Proposed System: The system is two sided: it would be candidate
oriented or organization oriented. In the first case the system would
recommend the candidate a list of jobs that better fits his skills. In the second
scenario, the recruiter would publish the specifications and requirements of
available job positions and the candidates can apply for the same by submitting
their CVs.

Modules- The recruitment system comprises of two major modules- the Admin
login and the User login which in turn comprises of various other sub-modules.
The admin and the user need to login with valid credentials in order access these
sub-modules. The admin login would be used by the recruiting company and the
user login would be used by the applicants applying for the jobs.

Module 1- Admin Page


Login
Aptitude Questions
Personality Questions
Manage Options
Job Details
Shortlisted CV's
View Candidates
View Result
Logout

Module 2- Candidate Page


Registration and CV creation
Login
Test
Apply for job
View results

14
CHAPTER 2
PROJECT PLAN

15
2. PROJECT PLAN
2.1. Feasibility Study: A Feasibility study is a high-level capsule version of the
whole process, which
aims to answer several questions, such as: What is the problem? Is there any
workable solution to this problem? Is the problem even worth solving? A
feasibility study is conducted when the problem is clearly understood. A
feasibility study is necessary to determine if the proposed system is feasible,
taking into account technical, operational and economic factors. With a detailed
feasibility study, management has a clear vision of the proposed system.

To ensure that the project is diverse and does not have major obstacles, the
following options were considered in the project. The feasibility study includes:
Technical Feasibility
Economic Feasibility
Operational Feasibility

In this phase, we study the feasibility of all proposed systems, and pick the best
feasible solution for the problem. The feasibility is studied based on three main
factors as follows:
2.1.1. Operational Feasibility:
At this step, we check the various operational factors of the proposed systems,
such as manpower, time, etc., which solution consumes less operational
resources, is the operationally best solution. The solution must also be
operationally feasible. Operational feasibility determines whether the proposed
system has met the user's goals, it can be adapted to the current system
operation.

Handling and presentation methods are fully accepted by customers as they


meet all user requirements
Clients are involved in system planning and development.
The proposed system does not cause problems.
Our project is operationally feasible, as the time and personnel requirements
have been met. We are a team of three and worked on this project for three
working months.

16
2.1.2. Technical Feasibility: At this step, we check whether the proposed
systems are technically feasible or
not. that is, all the technologies needed to develop the system are readily
available or not. Technical feasibility determines whether the organization has
the necessary technologies and capabilities to implement the project and how
it should be acquired. The system can be useful for the following reasons:
All necessary technologies are available for system development.
This system is too flexible and it can be expanded further.
This system can give guarantees of accuracy, ease of use, reliability and
the data security
This system can give instant response to inquire

Our project is technically feasible because, all the technology needed for our
project is readily available.
Operating System: Windows 10 or higher
Languages: HTML, ASP.NET, C#, JAVASCRIPT
Database System: MS-SQL Server 2019
Documentation Tool: MS - Word 2021

17
2.2. Implementation Plan:
The following table gives the project plan for the Phase 1 & 2 of our project:
Phase 1:
Effortds ainy sp erson
Activity Description Deliverable
Phase 1
ReAqnuairlyesmise nt Requirement
P1-01 5
Existing System Gathering
Study & Existing System
P1-02 Literature 7 Study &
Seeclhencotiloong
T y Literature
P1-03 7 >NET
Modular
Specifications 6
P1-04 Design & Modelling 15 Module Description
Total 40
P1-05 Analysis Report

Table 1- Project plan phase 1

Phase 2:
Effortds ainy sp erson
Activity Description Deliverable
Phase 2
P1-01 Detailed Design 15 LLD/DLD Document
UI and user Included in above
P1-02 interactions design UI Document
Coding &
P1-03 Implementation 15 Code release
Testing & Bug fixing 2
P1-04 3 Included Test report
35 in above
P1-05 PEevrfaolrumataionnce Analysis Report
P1-06 Release System Release
Total Deployment efforts
are extra

Table 2- Project plan phase 2

18
2.3. Steps involved in system development life cycle:
Below are the steps involved in the System Development Life Cycle. Each phase
within the overall cycle may be made up of several steps.
Step 1: Software Concept
The first step is to identify a need for the new system. This will include
determining whether a business problem or opportunity exists, conducting a
feasibility study to determine if the proposed solution is cost effective, and
developing a project plan.
This process may involve end users who come up with an idea for improving
Ithdeeiarl wlyo, trhke. process occurs in tandem with review of the
organization's strategic plan to ensure that IT is being used to help the
organization achieve its strategic objectives. Management may need to approve
concept ideas before any money is budgeted for its development.
Step 2: Requirements Analysis
Requirements analysis is the process of analysing the information needs of end
users, the organizational environment, and any system currently in use and
developing functional requirements for a system that meets the needs of the
users. Requirements should also be recorded in a document, email, User
Interface storyboard, executable prototype, or another format. The backend
documentation should be referenced during the system development process
so that the development project meets the needs and requirements of the
users.
Professionals must involve end users in this process to ensure that the new
system will function adequately and meets their needs and expectations.
Step 3: Architectural Design
Once the requirements are determined, the necessary specifications can be
determined for the hardware, software, human and information resources, and
information products that meet the functional requirements of the proposed
system. The design serves as a model of the system and helps identify problems
before those errors or problems are incorporated into the final system.
Professionals create the system design but must review their work with users to
ensure that the design meets the users' needs.

19
Step 4: Coding and Debugging Coding and debugging the act of creating
the final system. This step is done by
software developer.
Step 5: System Testing
The system must be tested to evaluate its actual performance against expected
performance. Other things to consider at this stage would be converting the old
data to the new system and training the staff to use the new system. End users
play a key role in determining whether the developed system meets the
intended requirements and to what extent the system is actually used.
Step 6: Maintenance
The system inevitably needs maintenance. The software will definitely
change after it is delivered to the customer. There are many reasons for the
changes. The change may occur due to some unexpected value entered into
the system. In addition, system changes can directly affect the operation of
the software. Software must be developed to adapt to changes that may
occur in the post- implementation period.
There are various software process models like:

Th eDSMty poirdtal
RPrAotopienlg Model
TMThhee WItearaetrifalodevel
l M Mooddeell

20
2.4. Software Process Model: The software process model deals with the
model that we intend to use in the
development of the project. There are many software process models available,
but when choosing one, it should be chosen according to the size of the project,
i.e. whether it is an industrial scale project or a large or medium project.
Therefore, the model we choose should be suitable for the project, because the
software process model changes, the costs of the project also change, because
the stages of each software model are different.
This software is built using the waterfall mode. This model suggests work
cascading from step to step like a series of waterfalls. It consists of the
following
steps in the following manner-

Analysis Phase

Design Phase

Coding Phase

Testing Phase

Figure 1- Waterfall Process Model

21
Analysis Phase:

Attack a problem by breaking it into subproblems. The purpose of the analysis


is to determine exactly what needs to be done to solve the problem. Usually, the
logical elements of the system (its boundaries, processes and data) are defined
during the analysis.
Design Phase:
The purpose of designing is to determine how to solve a problem. During
designing, the analyst's focus logically shifts to the physical. Data elements are
grouped together to form physical data structures, displays, reports, files, and
databases.
Coding Phase:
The system is created during this phase. Programs are coded, debugged,
documented, and tested. New hardware is selected and ordered. Procedures
are written and tested. End-user documentation is prepared. Databases and files
are initialized. Users are trained.
Testing Phase:
After a system is developed, it is tested to ensure that it does what it was
designed to do. After the system has passed the final test and all remaining
problems have been eliminated, the system is commissioned and handed over
to the user.
All these steps are described for the project in the last part of the document.

22
2.5. Estimations:

Activities Planned Actual


Collected information
about the problem 5 7
domain
Study of ASP.Net, 6
HTML, C# 3
Analysed the
requirements for the 5 6
desired application
Module specification
of proposed system 5 6
Carried out structural
flowmcohdaertllsin, ugs wei cthase 7 11
diagrams
Study of SQL server &
System Development/
Coding: Application,
Database & business 8 11
Logic
System Development.
Coding:
12 17
Testing
2 4

Final Documentation 2 3

Table 3- Estimation Table

23
2.5.1. Predecessor Table: In project management, a predecessor is an activity
that precedes another
activity - not in a chronological sense, but in terms of their dependency. A
previous function can have several direct descendants. In the network diagram,
successors and predecessors are connected by arrows.
To identify the immediate antecedents of an activity, you need to find out what
activities you need to do before you can start the considered activity (the
reasons can be technical, organizational or methodological in nature).
To identify the immediate successors, it is necessary to find out which activities
can be started only after the end of the current activity (the reasons can be
technical, organizational or methodological).
Predecessors usually precede their successors in chronological order, but in
some (very rare) cases, a successor starts before its predecessor. However, this
is a rare occurrence and is often difficult to understand because it conflicts with
our understanding of time.
This is the table that involves the various activities involved and the time
estimated per activity:

Activity Must be Estimated


Number Activities
preceded by Time days
A
Collected information about the
- 5
problem domain
Study of ASP.NET & SQL server 2005
B - 3
Analysed the requirements for the
C A 5
desired application
D
Module specification of proposed C 5
system
Carried out structural modelling with
E flowcharts, use case diagrams D 7

System Development/ Coding: Mobile


F E 40
Application

24
System Development/ Coding: Web
G F 7
modules & study of VB.net
Testing
H G 1

I Final Documentation H, G 3

J Development I 7

K Testing J 1

L Implementation K 7

M Final Documentation K 3

Table 4- Predecessor Table

25
2.5.2. Pert Chart:
A PERT chart is a project management tool used to schedule, organize, and
coordinate tasks within a project. PERT stands for Program Evaluation Review
Technique- a methodology developed by the U.S. Navy in the 1950s to manage
the Polaris submarine missile program. A similar methodology, the Critical Path
Method (CPM) was developed for project management in the private sector at
about the same time.
A PERT chart presents a graphic illustration of a project as a network diagram
consisting of numbered nodes (either circles or rectangles) representing events,
or milestones in the project linked by labelled vectors (directional lines)
representing tasks in the project. The direction of the arrows on the lines
indicates the sequence of tasks, In the diagram, for example, the tasks between
nodes 1, 2, 4, 8, and 10 must be completed in sequence. These are called
dependent or serial tasks. The tasks between nodes 1 and 2 and nodes 1 and 3
are not dependent on the completion of one to start the other and can be
undertaken simultaneously. These tasks are called parallel or concurrent tasks.
Tasks that must be completed in sequence but that don't require resources or
completion time are considered to have event dependency. These are
represented by dotted lines with arrows and are called dummy activities. For
example, the dashed arrow linking nodes 6 and 9 indicates that the system files
must be converted before the user test can take place, but that the resources
and time required to prepare for the user test (writing the user manual and user
training) are on another path. Numbers on the opposite sides of the vectors
indicate the time allotted for the task.
The PERT chart is sometimes preferred over the Gantt chart, another popular
illustrates task
p
dreopjeenctd menacnieasg.e Omne tnhte c ohtahrteirn hg amnedt, htohde ,P bEeRcTa ucshea
interpret, especially on complex projects. Frequently, project managers use
both techniques.

26
Pert Chart:
Dummy
Activity
6 6
2 3

4 5 6

10

11

12

13

14

Figure 2- PERT Chart

27
2.5.3. Gantt chart: A Gantt chart shows the planned and actual progress of
multiple tasks on a
horizontal timeline. It is a powerful and easy-to-read way of expressing the
actual status of each set of tasks against the planned progress of each activity in
the set. Gantt charts can be simple versions created on graph paper or more
complex automated versions created using project management applications
such as Microsoft Project or Excel.
A Gantt chart is constructed with a horizontal axis representing the total time
span of the project, broken down into increments (for example, days, weeks, or
months) and a vertical axis representing the tasks that make up the project (for
example, if the project is outfitting your computer with new software, the major
tasks involved might be: conduct research, choose software, install software).
Horizontal bars of varying lengths represent the sequences, timing, and time
span for each task. Using the same example, you would put "conduct research"
at the top of the vertical axis and draw a bar on the graph that represents the
amount of time you expect to spend on the research, and then enter the other
tasks below the first one and representative bars at the points in time when you
expect to undertake them. The bar spans may overlap, as, for example, you may
conduct research and choose software during the same time span. As the
project progresses, secondary bars, arrowheads, or darkened bars may be
added to indicate completed tasks, or the portions of tasks that have been
completed. A vertical line is used to represent the report date.
Gantt charts give a clear picture of the current state of a project, but one of their
problems is that they don't show task dependencies - you can't tell how one
task
that's running down the schedule affects other tasks. Another popular project
management mapping method, the PERT chart, was created for this purpose.
Automatic Gantt charts record additional information about tasks, such as
people assigned to specific tasks and notes on actions. They also have the
advantage of easy replacement, which is useful. Diagrams can often be modified
to reflect the reality of project tasks because almost inevitably; they deviate
from the original plan.

28
Planned Gantt Chart:

Figure 3- Planned Gantt Chart

Actual Gantt Chart:

Figure 4- Actual Gantt Chart

29
2.6. Data Flow Diagram 2.6.1. Introduction to DFD: A data flow diagram is a
graphical tool used to describe and analyze the flow of
data through a system. These are the main tools and foundations from which
other components are developed. The transformation of data from input to
output through processing can be described logically and independently of the
physical components associated with the system. These are called logical data
flow diagrams. Physical data flow diagrams show the actual equipment and
information flow between people, departments and workstations. A complete
system description actually consists of a set of data flow diagrams. Using two
familiar notations, Yourdon, Gane and Sarsen develop data flow diagrams. Each
DFD component is labelled with a descriptive name. The process is still
identified
by the number used for identification. DFD development occurs at several levels.
Each process in a lower-level diagram can be broken down into more detailed
DFDs at the next level. A loop level diagram is often called a context diagram. It
consists of a single process bit that plays an important role in the study of the
current system. A process in a context-level diagram is added to another first-
level DFD.
The idea behind the explosion of a process into more process is that
understanding at one level of detail is exploded into greater detail at the next
level. This is done until further explosion is necessary and an adequate amount
of detail is described for analyst to understand the process. Larry Constantine
first developed the DFD as a way of expressing system requirements in a
graphical from, this lead to the modular design.
A DFD is also known as a "bubble Chart" has the purpose of clarifying system
requirements and identifying major transformations that will become programs
in system design. So it is the starting point of the design to the lowest level of
detail. A DFD consists of a series of bubbles joined by data flows in the system.

30
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.

Figure 5- DFD Symbols

31
Constructing a DFD
Several rules of thumb are used in drawing DED's:
1. Process should be named and numbered for an easy reference. Each name
should be representative of the process.

2. The direction of flow is from top to bottom and from left to right. Data
traditionally flow from source to the destination although they may flow back
to the source. One way to indicate this is to draw long flow line back to a
source. An alternative way is to repeat the source symbol as a destination.
Since it is used more than once in the DFD it is marked with a short diagonal.

3. When a process is exploded into lower level details, they are numbered.

4. The names of data stores and destinations are written in capital letters.
Process and dataflow names have the first letter of each work capitalized
A DFD typically shows the minimum contents of data store. Each data store
should contain all the data elements that flow in and out.
Questionnaires should contain all the data elements that flow in and out.
Missing interfaces redundancies and like is then accounted for often through
interviews.

SAILENT FEATURES OF DFD's

1. The DFD shows flow of data, not of control loops and decision are
controlled considerations do not appear on a DFD.
2. The DFD does not indicate the time factor involved in any process whether
the data flows take place daily, weekly, monthly or yearly.
3. The sequence of events is not brought out on the DFD.

32
TYPES OF DATA FLOW DIAGRAMS:

1. Current Physical
2. Current Logical
3. New Logical
4. New Physical
1. CURRENT PHYSICAL:
In the current physical DFD, process identifiers include the names of people
or their jobs, or the names of computer systems that can provide part of the
processing of the whole system. The tag contains the identifier of the
technology used to process the data used to process the data. Similarly, data
streams and data stores are often labelled with the names of the actual
physical media on which the data is stored, such as folders, computer files,
business forms, or computer tapes.

2. CURRENT LOGICAL:
The physical aspects of the system are removed as much as possible, so that
the current system is essentially limited to data and the processors that
transform it, regardless of the actual physical form.
3. NEW LOGICAL:
This is exactly like a current logical model if the user were completely happy
with the user were completely happy with the functionality of the current
system but had problems with how it was implemented typically through the
new logical model will differ from current logical model while having
additional functions, absolute function removal and inefficient flows
recognized.

4. NEW PHYSICAL:
The new physical represents only the physical implementation of the new
system.

33
RULES GOVERNING THE DFD'S:

PROCESS
1) No process can have only outputs.
2) No process can have only inputs. If an object has only inputs than it must
be a sink.
3) A process has a verb phrase label.

DATA STORE
1) Data cannot move directly from one data store to another data store,
process must move data.
2) Data cannot move directly from an outside source to a data store, a
process, which receives, must move data from the source and place the data
into data store.
3) A data store has a noun phrase label.

SOURCE OR SINK
The origin and /or destination of data
1) Data cannot move direly from a source to sink it must be moved by a
process.
2) A source and /or sink has a noun phrase land.

DATA FLOW
1) A Data Flow has only one direction of flow between symbols. It may flow
in both directions between a process and a data store to show a read before
an update. The later it usually indicated however by two separate arrows
since these happen at different type.
2) A join in DFD means that means that exactly the same data comes from
any of two or more different processes data store or sink to a common
location.
3) A data flow cannot go directly back to the same process it leads. There
must be at least one other process that handles the data flow produce some
other data flow returns the original data into the beginning process.
4) A Data Flow to a data store means update (delete or change).
5) A Data Flow from a data store means retrieve or use.

34
2.6.2. DFD Diagram for Personality Prediction System through CV Analysis:

Admin DFD Diagram:

LOGIN

MANAGE QUESTIONS

MANAGE JOBS
PERSONALITY
ADMIN DATABASE
PREDICTION
MANAGE OPTIONS

VIEW CANDIDATES

VIEW RESULT

Figure 6- Admin DFD Diagram

Module 1-Admin Page:


dmin c e aa QAudemstinio ncsau-nn login A damdidn cthsi naneg t adadp
PeuressiTotnioanlisht-y
QLogn-

test.
Manage Options- The admin can add, update and delete the options of
aptitude test.
SJohbo rDtleistateilds -C AVd'sm- iSnh/Roertclirsuti ttehre c caann addidda tthees dase t

requirements.
wes- Disa hidaes VLoiegwou Rendt- lsouglitda o-u Dtt ifsrpolmay t tphlyheec rtuersrueel r
Vie Ca

35
Candidate DFD Diagram:

REGISTRATION

LOGIN

TEST PERSONALITY
ADMIN DATABASE
PREDICTION

VIEW RESULT

LOGOUT

Figure 7- Candidate DFD Diagram

Module 2- Candidate Page:


Registration and CV Uploading- The candidate can register by submitting
the required details and uploading the CV

Login- Thecandidate
Test- The candidatecan
cantake
loginthe
using the valid
aptitude testcredentials
and the personality test

View results- The candidate can view the test of aptitude test on successful
completion of test.

Logout- The candidate can log out from the current session.

36
2.7. Use Case Diagram: In Unified Modelling Language (UML), a use case
diagram can summarize the
users (also known as actors) of your system and how they interact with the
system. You use special symbols and connectors to create it. An effective use
case diagram can help your team discuss and present:
Scenarios where your system or application interacts with people,
organizations or external systems.
The goals that your system or application will help these entities (i.e.
participants) achieve.
The scope of your system.
2.7.1. When to apply use case diagrams?
A use case diagram doesn't go into a lot of detail - for example, don't expect it
to model the order in which steps are performed. Instead, a proper use case
diagram describes a high-level view of the relationships between use cases, to
actors, and systems. Experts recommend using use case diagrams complement
a more descriptive textual use case.
UML is a set of modelling tools that you can use to create diagrams. Use cases
are marked with an oval shape. The stick figures represent the participants in
the process, and the actor's participation in the system is modelled along the
line between the actor and the use case. Describe the system boundary by
drawing a box around the use case.
UML use case diagrams are ideal for:

Representing the goals of system-user interactions.


Defining and organizing functional requirements in a system.
Specifying the context and requirements of a system.
Modelling the basic flow of events in a use case.

37
2.7.2. Use case diagram components:
The components of Use Case Diagram-
Actors: Users who interact with the system. An actor can be a person,
organization, or external system that interacts with your application or
system. These must be external objects that produce or consume data.
System: A specific set of activities and interactions between actors and the
system. A system can also be called a scenario.
Goals: The bottom line for most use cases. A success chart should describe
the actions and variations used to achieve the goal.
2.7.3. Use case diagram symbols and notation:
Use cases: Horizontally shaped ovals that represent the different uses that a
user might have.
Actors: Stick figures that represent the people actually employing the use
cases
Associations: Boundary between actors and use cases. In complex graphs, it
is important to know which parties relate to which use case.
System boundary boxes: A box that sets a system scope to use cases. All use
cases outside the box would be considered outside the scope of that system.
For example, Psycho Killer is outside the scope of occupations in the
chainsaw example found below.
Packages: A UML format that allows you to put different elements into
groups. Just as in component diagrams, these groupings are represented as
folders.

38
2.7.4. Use Case Diagram for Personality Prediction System through CV Analysis
Use Case Diagram for Admin Module:

LOGIN LOGOUT

MANAGE
VIEW RESULT
QUESTIONS

MANAGE VIEW
OPTIONS CANDIDATES

MANAGE JOB MANAGE CV SHORTLIST CV


DETAILS

Figure 8- Use Case Diagram for Admin Module

Use Case Diagram for Candidate Module:

REGISTRATION LOGOUT

LOGIN VIEW RESULT

GIVE TEST

Figure 9- Use Case Diagram for Candidate Module

39
2.8. Sequence Diagram: Sequence Diagrams are interactive diagrams that
describe the execution of activities. They describe the interaction between
objects in the context of collaboration. Sequence diagrams are time-centric and
visually show the sequence of interactions, using the vertical axis of the
diagram to show time, which messages are sent, and when.

Sequence Diagrams captures:


Collaborative interaction that implements either a use case or a function
(case diagrams or generic diagrams).
High-level interactions between the system user and the system, the system
and other systems or subsystems (sometimes known as system sequence
diagrams).

2.8.1. Purpose of Sequence Diagram:


Demonstrate high-level interaction between dynamic objects in a system.
Demonstrate the interaction between question occasions inside a
collaboration that realizes a utilize case.
Demonstrate the interaction between objects inside a collaboration that
realizes an operation.
Either demonstrate bland intelligent (appearing all conceivable ways through
the interaction) or particular occurrences of a interaction (appearing fair one
way through the interaction).

40
2.8.2. Sequence Diagram for the System:

Figure 10- Sequence Diagram for the System

We have executed a framework that positions the candidates based on weight-


age approach as well as an inclination (aptitude) test, Nowadays there's a
growing intrigued within the identity characteristics of a candidate by the
organization to superior look at and get it the candidate's reaction to
comparable circumstances. Hence, the framework conducts a identity
expectation test to decide the identity characteristics of the candidate. At long
last, it presents the comes about of the candidates to the selection
representative who assesses the best candidates and shortlists the candidate.

41
2.9. Activity Diagram: An activity diagram is a behaviour diagram, i.e. It
describes the behaviour of the system. An activity diagram shows the flow of
control from the start point to the end point and shows the different decision
processes that exist in performing an activity. Using an operation diagram, we
can describe both sequential processing and concurrent operation processing.
They are used in business and process modelling, where their main use is to
describe dynamic aspects system. An activity diagram is very similar to a
flowchart.

Difference between an Activity diagram and a Flowchart:

Flow charts were generally invented earlier than activity charts. Non-
programmers use flowcharts to model workflows. Example: A manufacturer
uses a flow chart to explain and illustrate how a product is manufactured. We
can call a flowchart a primitive version of an activity diagram. The business
process in which decision making is involved is expressed in a flowchart.

Figure 11- Notation of Activity Diagram

42
2.9.2. Activity Diagram of the System:

The activity diagram of the Personality Prediction System through CV Analysis


is given below,

Figure 12- Activity Diagram of the System

43
2.10. Architecture of the System: The enlistment framework comprises of
two major modules- the Admin login and the User login which in turn comprises
of different other sub-modules. The admin and the user have to be login with
substantial accreditations in arrange get to these sub-modules. The admin
login would be utilized by the selecting company and the client login would be
utilized by the candidates applying for the occupations.

2.10.1. Module 1-Admin Page:

Login: The system administrator must login with his system administrator ID
and password to set various system parameters and access module 1 sub-
modules.

Aptitude Questions: Admin can add Aptitude questions for their selected
topics with multiple choices.

Personality Questions: In this sub-module, admin can add any personality


questions to predict the candidate’s personality. This would be based on the
Big Five personality model. It consists of five options such as openness,
conscientiousness, extraversion, agreeableness and neuroticism

Job details: A manager or recruiter can add requirements or job details on


behalf of the company. The system allows the administrator to add job data
such as qualification, position, experience, salary etc

Shortlisted CVs: All CVs of shortlisted candidates are displayed here. The list
of CVs is created by the system itself.

View Candidates: Admin can view all the registered candidates along with
their details.

44
View Result: The administrator can view the results of individual candidates,
making it easy for the administrator to select the desired candidate.

2.10.2. Module 2-Candidate’s Page:

Registration and CV Upload: To access the modules below, the applicant


must complete the registration form and create login details to access the
system. When registering, the applicant must submit a CV by filling out the
registration form.

Login: Applicant must enter valid credentials to access sub-modules.

Test: After successfully logging into the system, the candidate can proceed
with an online test based on aptitude and personality.

View Results: Once the candidate has successfully completed the test, they
will see the result displayed as a graphical representation.

Logout: Candidate can logout from the current session.

45
2.11. Working of the System:

The candidates will register themselves with the required details in the CV form
and upload the documents for verifying the authenticity of the information
provided in the CV registration form.
The candidates can then view the requirements and details of the job as
specified by the admin or the recruiter. In order to apply for a job the candidates
needs to be eligible for that job by satisfying all the requirements as stated by
the recruiter. If a candidate applies for a specific job, the system checks whether
the candidate meets all the requirements/parameters as specified by the
recruiter. If the candidate satisfies the requirements/parameters, then the
candidates request for that job would be accepted else the system denies the
candidate's request for that job.
Candidate can also give an online test, which will be conducted on personality
questions as well as aptitude questions. After completing the online test,
candidate can view their own test results in graphical representation with
marks. The system would then derive and rank the candidates who were eligible
for the job. The rank of each candidate acts as a score of how well the
candidate's profile meets the specifications of the recruiters as well as
cumulative score of the aptitude test. The recruiter could also analyse the
personality of the candidate based on the result of the personality test. So,
based on CV, aptitude test and the personality test the candidate would be
shortlisted.

46
2.12. Website Testing: As the project is on bit large scale, we always need
testing to make it successful.
If each component work properly in all respect and gives desired output for all
kind of inputs, then project is said to be successful. So, the conclusion is-to
make
the project successful, it needs to be tested.
The testing done here was System Testing checking whether the user
requirements were satisfied. The code for the new system has been written
completely using Java and ASP Net with C# as the coding language &

JavaScript
and Visual Studio as the interface for front-end designing. The new system has
been tested well with the help of the users and all the applications have been
verified from every nook and corner of the user.
Although some applications were found to be erroneous these applications have
been corrected before being implemented. The flow of the forms has been
2fo.u1n2d.1 t.o L beev evlesr yO mf Tuecsht iin ga:c cordance with the actual flow of data.
In order to uncover the errors, present in different phases we have the concept
of levels of testing.

2 4
1 3 USER
INTEGRATION
SYSTEM ACCEPTANCE
UNIT TESTING TESTING
TESTING TESTING BY
By Developer By Developer End User/
By Tester
& Tester Customer

Figure 13- Levels Of Testing

47
Levels of Testing:
A series of testing is done for the proposed system before the system is ready
for the user acceptance testing.
The steps involved in Testing are:

Unit Testing

Unit testing focuses on the smallest unit of software design, the module, for
verification work.
This is also known as "module testing". Modules are tested separately. This test
was done during the programming phase. In this test, each module performed
satisfactorily in terms of the expected output of the module.
Integration Testing
Data can be zoomed through the interface; one module can negatively affect
another.
Integration testing is systematic testing to build the structure of a program and
at the same time test for errors related to the user interface. The goal is to take
unit-tested modules and build a program structure. All modules are connected
and tested as a whole. Fixing this is difficult because isolating the cause is
complicated by the huge cost of the entire program. So, in the integration
testing shutdown, some uncovered bugs are fixed for the text testing steps.

System testing

System testing is the commissioning phase to ensure that the system is working
accurately and efficiently so that real-time use can begin. Testing is critical to
the success of the system. System testing makes the logical assumption that if
all parts of the system are correct, the goal will be successfully achieved.
Validation Testing
At the end of the integration testing, the software is completely assembled into
a package, user interface errors have been clarified and corrected, and the last
series of software tests begins, validation tests begin.
A Validation test can be defined in several ways. But a simple definition is that
validation is successful if the software works in a way that the customer can
reasonably expect. After the validation test, one of two possible conditions
exists.

48
One is the function or performance characteristics confirm to specifications and
are accepted and the other is deviation from specification is uncovered and a
deficiency list is created. Proposed system under consideration has been tested
by using validation testing and found to be working satisfactorily.
Output Testing
After conducting the validation test, the next step is to test the output of the
proposed system because no system can be useful unless it produces the
required output in the specified format.
By asking users what format they need, the outputs produced by the system
under consideration are tested. Here the output format is viewed in two ways,
one is on screen and the other is print format. The printed format of the screen
was found to be correct, as the format was designed based on the needs of the
users during the system design phase. Prints also come in paper form as per the
requirements defined by the users. Therefore, testing the results will not result
in system improvements.
User Acceptance Testing
User acceptance of the system is a key factor in the success of any system. The
acceptance of the users of the studied system is tested during the development
phase by being in constant contact with potential users of the system and
making changes if necessary.

49
2.12.2. Test case: A test is a document containing a set of test data
prerequisites, expected results
and post-conditions developed for a specific test scenario to ensure compliance
with a specific requirement.
A test case acts as a minimal execution starting point, and after applying a set
of input values, the application has a final result and exits the system at some
endpoint or also known as a post-execution condition.

Writing Good Test Cases:

As far as possible, write test cases in such a way that you test only one thing
at a time.
Do not overlap or complicate test cases.
Attempt to make your test cases "atomic'.
Ensure that all positive scenarios AND negative scenarios are covered.

Language:

• Write in simple and easy-to-understand language.


• Use active voice instead of passive voice: Do this, do that.
• Use exact and consistent names (of forms, fields, etc).

Characteristics of a good test case:

• Accurate: Exacts the purpose.


• Economical: No unnecessary steps or words.
• Traceable: Capable of being traced to requirements.
• Repeatable: Can be used to perform the test over and over.
• Reusable: Can be reused if necessary.

50
Typical Test Case Parameters:

• Test Case ID- The unique identifier of each test case.


• Test Scenario-The test scenario for running in the system.
• Test Case Description-The description of the test performed
• Test Steps-Steps to be performed
• Prerequisite The pre-requisites for running in the system
• Test Data-The input data for the test
• Expected Result-which will be produced when there will be no error
• Actual Result-what will be produced when the actual code is executed.
• Environment Information-The details of the test environment
• Status-The status would be pass if the actual result is same as expected result

otherwise, it would be fail.

51
The Test case for Admin module is giving below:

1. Test cases for Admin Login Page:

Sr Test_ Test_ObjecPre_RequSteps I/P Expecte Actual Status


No Case_ tives isites Dat d Result Result
ID a
1 TC_01 To check the Username 1.Click Text The The Pass
validity of the Field is on the Username Username
Username available Userna should be is entered
Field and not me field, entered in in valid
passive 2. Enter valid text text
the
usernam
e in the
test
1.Click
2 TC_02 To check the Password on the Text The The Pass
and
integ
validity of the field is passwor er Password Password
Password available d field. should be is entered
Field and not 2. Enter entered in valid and
in
passive the valid text text
passwor and integer
d in the integer ‘*’ should
and
text and ‘*’ be
integers. should be displayed
displayed.
1.Enter
The admin
3 TC_03 To check Submit the N/A The admin Pass
the Submit button is correct should be is logged
button available usernam logged into the
and not e and into the admin
passive passwor admin page
d. page
2. Click
on the
submit
button

52
2. Test Cases for Add Job Module:

Sr Test_ Test_ObjectPre_Req Steps I/P Expected Actual Status


NCase_ ives uisites Data Result Result
o ID
1 TC_01 To check the Techno log 1.Click on Text The The Pass
validity of the y Field is the Eg. Technology Technol
Technology available Technology Big should be ogy is
Field and not field. Data entered in entered
passive 2. Enter the valid text in valid
position in text
text

2. TC_02 To check the Position 1.Click on Text The The Pass


validity of the Field is the position Eg. Position Position
Position Field available field Man should be is
and not 2. Enter the ager entered in entered
passive position in valid text in valid
text text

3. TC_03 To check the Experience 1.Click on Integ The The Pass


validity of the Field is the er Eg. Experience Experie
Experience available Experience 3 should be nce is
Field and not field 2. entered in entered
passive Enter the valid in valid
Experience integer integer
in Integers

4. TC_04 To check the Salary 1.Click on Integ The Salary The Pass
validity of the Field is the Salary er Eg. should be Salary is
Salary Field available field. 1600 entered in entered
and not 2. Enter the 0 valid text in valid
passive Salary in text
integers

53
Sr Test_ Test_Objectiv Pre_Requi Steps I/P Expecte Actual Status
No Case_ es sites Data d Result Result
ID To check the N/A
5. TC_05 validity of the Skills Field is Click on On a click On a click Pass
Skills Field available in the for for
the form of Required selection, selection
Checkboxes Skills the , the
which can require require
be selected skills skills are
and should be selected
deselected selected

6. TC_06 To check the Submit 1.Enter N/A The The Pass


Submit button button is the registered registere
available requireme candidate d
and not nts in the s candidat
passive specified satisfying es
fields 2. the satisfying
Click on requireme the
the nts should requirem
Submit be ents is
button
displayed displayed

54
3. Test Cases for Add Aptitude Questions Module:

Sr Test_ Test_ObjecPre_Req Steps I/P Expected Actual Statu


No Case_ tives uisites Data Result Result s
ID Text 1.Click 1. Click Pass
To check the Select Sub 1.Click on Eg. should makes
1 TC_01
Select Sub Type is the Select English make visible
Type Field available Sub Type / visible three
in the down three Subject
form of combo Subject option
Mathe
dropdown control 2. matics options available.
combo Select a / available 2.On a
box Subject Progra 2. On a click for
widget. mming click for selection,
selection, only one
only one Subject is
Subject selected
should be
selected.
The
Question
2. TC_02 To check the Question 1.Click on Text, should be The Pass
validity of the Field is the Integer entered in Question
Question available sQuestion valid text/ should be
Field and not Speficeiladl. integer, entered in
passive 2.Enter the Charact Special valid
eQrsu eEsgt.ions characters text/inter,
Whina t eisx t/ Special
Integers, Questi characters
Special on tag
Characters ?
3 TC_03 To check the Save Click on the N/A The The Pass
validity of the Button is save button question Question is
Save Button available after should be saved in
and not entering the saved in the
passive question in the database
the database
question
field

55
4. Test Cases for Add Personality Questions Module:

Sr Test_ Test_ObjecPre_Req Steps I/P Expected Actual Status


No Case_ tives uisites Data Result Result
ID 1. Click
1.Click
To check the Select Sub 1.Click on Text makes Pass
1 TC_01 should
Select Sub Type is the Select Eg. visible
make
Type Field available Sub Type English three
visible
in the down / Subject
three
form of combo option
Mathe Subject
dropdown control matics available.
options
combo 2. Select a / 2. On a
available
box Subject Progra click for
2. On a
widget. mming selection,
click for
only one
selection,
Subject is
only one
selected
Subject
should be
selected.
The
2 TC_02 To check the Question 1.Click on Text, Question The Pass
validity of the Field is the Integer Question
should be
Question available s Question should be
entered in
Field and not Spefcieialdl. entered in
valid text/
passive 2. Enter the Charact integer, valid
eQrsu Eegst.ions Special text/inter,
Whina tt eisx t/ Special
characters characters
Integers, Questi
Special on tag?
Characters
3 TC_03 To check the Save Click on the N/A The The Pass
validity of the Button is save button question Question
Save Button available after should be is saved in
and not entering the saved in the
passive question in the database
the database
question
field

56
4. Test Cases for Add Personality Questions Module:

Sr Test_ Test_ObjecPre_Req Steps I/P Expected Actual Status


No Case_ tives uisites Data Result Result
Question Text, The
ID Field is
To check the 1.Click on Special The Question Pass
1 TC_01 available
validity of the the Question should be
and not entered in
Question passive Question Charact should be
Field field. ers Eg. entered in valid text,
2. Enter the You valid text, Special
Questions have a Special
in text, deep characters characters
Special and a
Characters vivid
imagin
ation
2 TC_02 To check the Save Click on theN/A The The Pass
validity of the Button is save button Question Question
Save Button available after should be should be
and not entering the saved in saved in
Passive question in the the
the database database
question
field

57
5. Test Cases for Candidate Module:

Sr Test_ Test_ObjecPre_Req Steps I/P Expected Actual Status


No Case_ tives uisites Data Result Result
ID N/A
1 To check theCandidate Click on the The detailsThe details Pass
TC_01
validity of the page is Candidate of of
Candidate available link registered registered
Page and not candidates candidates
passive should be are
displayed displayed

6. Test Cases for Result Module:


Test_ Test_ObjecPre_Req
S Steps I/P Expected Actual Statu
No Case_ tives uisites Data Result Result s
ID N/A The result The result Pass
1 To check the Result Click on the of of
TC_01
validity of the page is Result link
Result Page available candidates candidates
and not should be should be
passive displayed displayed in
in tabular tabular
format format with
with aptitude
aptitude test score in
test score percentage
in and result
percentage of
and result personality
of test in
personality graphical
test in format.
graphical
format.

58
Test Cases for Candidate Module

1. Test Cases for Candidate login:


Test_ Test_ObjectPre_Requis
Sr Steps I/P Expected Actual Status
No Case_ ives ites Data Result Result
ID
1 TC_01 To check the Username 1.Click on Text The The Pass
validity of the Field is the Username Usernam
Username available and Username should be e is
Field not passive field, entered in entered
2. Enter the valid text in valid
username in text
the test

2 TC_02 To check the Password 1.Click on Text The The Pass


validity of the field is the and Password Password
Password available and password integ should be is
Field not passive field. 2. er enteredentered
in
Enter the valid text
in valid
and text and
password in
integer integer
the text
and ‘*’ and ‘*’
integers.
should be should
displayed. be
displayed
3 TC_03 To check the Submit 1.Enter the N/A The admin The Pass
Submit button button is correct should be admin is
available and username logged into logged
not passive and the admin into the
password. page admin
2. Click on page
the submit
button

59
2. Test Cases for Candidate registration page:

Sr Test_ Test_ObjectPre_Requi Steps I/P Expect Actual Status


No Case_ ives sites Data ed Result
ID Result
The
1 TC_01 To check the Name 1.Click on Text The name Pass
name should be
validity of the Field is the (xyz) should entered
name Field available Username be in
text valid
and not field, entered
passive 2. Enter in valid
the text
username
in the test
1.Click on
2 TC_02 To check the Phone Feld the Phone Integer The The Pass
validity of the is available field. Phone
(899974Phone
Phone Field and not 2. Enter 0005) number number is
the phone
passive number in should entered in
be
entered valid
andtext
the in valid integer
integers text and
integer
which
should be
10 digit
1.Click on

3 TC_03 To check the Date of The The The date Pass


Birth Field isthe Date ofdate
validity of date of of birth
date of birth available Birth field.
should birth should be
and not 2. Enter be
field should entered in
passive the Date of entered be DD/MM/Y
birth in in entered YYY
integer integer in format
format and and DD/MM
should be special /YYYY
DD/MM/Y characte format
YYY format rs
(14/11/
1) 999)
4 TC_04 To check the Email field is 1.Click on The The The Email Pass
validity of available email Email Email should be
email address. and not address should should entered in
passive field. be be proper
2.Enter theentered entered format
email in in
address proper proper
Which format format
should

60
contain
text,
integer
and special
character

5 TC_05 To check the Password 1.Click on Enter The The Pass


validity of field is password the valid passwoprassword
password of available field 2. password shouldis entered
email. and not Enter the d be in special
passive password ‘*****’ entered character/
of email in text/integ
which can special er
contain charact
text, e
integer r/tegxte/ri n
and special
character
and will be
visible to
use in ‘*’

61
Sr Test_Test_Obje Pre_Requisi Steps I/P Expecte Actual Status
No Case_
ctives tes Data d Result Result
ID
TC_07
7 To check the Experience 1.Click on Enter The The Pass
validity of field is experience the experienc experience
experience available and field. valid e should is in integer
not passive 2.Enter Experi be in format.
the ence integer
experience (4) format.
in
experience
field which
is integer
form.
1.Click on
8 TC_08 To check the Skill field is the N/A On click On click for Pass
validity of available in for selection
skill field form of appropriat selection the
checkboxes e skill. the appropriate
which can be appropria skill should
selected and te skill be selected
deselected should be
selected
9 TC_09 To check the The submit 1.To enter N/A The The details Pass
submit button is the correct details of of
button active and username candidate candidate is
not passive and should be saved into
password saved into data base.
2. Click on data base.
the submit
button.

3. Test case for view result module

Sr Test_ Test_ObjectPre_Requi Steps I/P Expected Actual Status


No Case_ ives sites Data Result Result
N/A Result of Result of
ID aptitude aptitude
1 To check the The result 1.Click Pass
TC_1 result page. page should on the test should test is
result
be available option after be displayed
and not completing displayed.
passive the test

62
2.13. Interfaces of Personality Prediction System Through CV Analysis:

Figure 14- Admin Login

Figure 15- Home Page

63
Figure 16- Add Job Module

Figure 17- Aptitude Question Module

64
Figure 18- Personality Question Module

Figure 19- Manage Option Module

65
Figure 20- Add New Option Module

Figure 21- Candidate Module

66
Figure 22- Candidate Registration Module

Figure 23- Registered Candidate Module

67
CHAPTER 3
WHY?

68
3. WHY?

3.1. ASP NET:

ASP.NET is more than the next version of Active Server Pages (ASP). It is a unified
web development platform that provides developers with the services they
need to create an enterprise-class web application. While ASP.NET is largely
syntactically compatible with ASP, it also provides a new programming model
and infrastructure that enables a powerful new class of applications. You can
migrate your existing ASP application incrementally by adding ASP.NET
functionality to it. ASP.NET is a compiled .NET Framework-based environment.
You can create an application in any .NET Framework-compatible language,
including Visual Basic and Visual C#. Additionally, the entire .NET Framework
environment is available for all ASP.NET applications. Developers can easily take
advantage of the benefits of the .NET Framework, which include a fully
managed, secure, and versatile application execution environment, simplified
development and deployment, and seamless integration with multiple
languages.

Figure 24- ASP.NET MVC

69
3.2. .NET Framework

NET Framework is an environment for creating, deploying and using XML Web
services and other applications. It is the entire infrastructure of the .NET
platform. NET Framework consists of three main parts: the common language
runtime, class libraries and ASP.NET.
Common language runtimes and class libraries, including Windows Forms,
ADO.NET, and ASP.NET, provide services and solutions that can be easily
integrated with and across multiple systems. NET Framework provides a fully
managed, secure, and feature-rich application runtime environment, simplified
dinetveeglroaptimone nwti athn dm dueltpiploley ment, and seamless
languages.

Figure 25- .NET Framework

70
3.3. JavaScript: JavaScript is a dynamic computer programming language. It is

lightweight and is
most often used as part of web pages with implementations that allow client-
side scripting to interact with the user and create dynamic pages. It is an
interpreted programming language with object-oriented features. JavaScript
was originally known as LiveScript, but Netscape changed the name to
JavaScript, perhaps because of the excitement created by Java. JavaScript first
appeared in Netscape 2.0 in 1995 under the name LiveScript. The general-
purpose core of the language is embedded in Netscape, Internet Explorer, and
other web browsers. The ECMA-262 specification defined the standard version
of the JavaScript core language.

Features of JavaScript

• JavaScript is a lightweight, interpreted programming language.


• Designed to create network-centric applications.
• Extends and is integrated with Java.
• Complementary and integrated with HTML.
• Open and cross-platform.

Client-side JavaScript is the most common form of the language. In order for the
browser to interpret the code, the script must be included or referenced in the
HTML document. This means that a web page does not have to be static HTML,
but can contain programs that interact with the user, control the browser and
dynamically generate HTML content. JavaScript's client-side mechanism offers
many advantages over traditional CGI server-side scripts. For example, you can
use JavaScript to check whether a user has entered a valid email address in a
form field.

71
Advantages of JavaScript:

Less interaction with the server: You can check user input before sending the
page to the server. This saves server traffic, which means less load on your
server.
Instant feedback to visitors: they don't have to wait for a page to reload to
see if they forgot to enter something.
Increased interaction: You can create user interfaces that respond when the
user moves the mouse over them or activates them with the keyboard.
More versatile user interfaces: Using JavaScript, you can add elements such
as drag-and-drop components and sliders to give your website visitors a rich
user interface.

Figure 26- JavaScript

72
3.4. C# C# is the new language with the power of C++ and the slickness of
Visual Basic. C# is a language for professional programming. C# (pronounced C
sharp) is a
programming language designed for building a wide range of enterprise
applications that run on the .NET Framework. The goal of C# is to provide a
simple, safe, modern, object-oriented, high-performance, robust and durable
language for .NET development. Also, it enables developers to build solutions
for the broadest range of clients, including Web applications, Microsoft
Windows Forms-based applications, and thin- and smart-client devices. It
cleans up many of the syntactic peculiarities of C++ without diluting much of
its flavour (thereby enabling C++ developers to transition to it with little
difficulty). And its superiority over VB6 in facilitating powerful Implementations
is without
question. C# with clean OO syntax and large class library (in conjunction with
.NET and the base class libraries) could be the most productive mainstream
language and it is an ECMA-standard language that offers the potential of being
available across many platforms. For the serious developer wanting Microsoft's
most productive and mainstream
.NET language, C# is the clear choice.
Features of C#:

C# includes more primitive types and functions to catch arithmetic

exceptions.
Includes many Java markup features, many of which, such as operator
overloading and user-defined casting, are already familiar to the large C++
programming community.
Case management is a "first class citizen"; it is part of the language itself.
Allows you to define "structs" that are similar to classes but can be allocated
on the stack (unlike class instances in C# and Java).
C# implements attributes as part of the language syntax.
C# allows switch statements to operate on strings.
C# allows anonymous methods that provide closure functionality.
C# allows an iterator that accesses parallel routines via a function return
word.

73
C# supports output parameters to help return multiple values. This is a
common feature of C++ and SQL. C# can call namespaces. C# has "Explicit
Member Implementation" which allows a class to implement interface
methods separately from its own class methods. It also allows you to
implement two different interfaces that share a method with the same name.
Interface methods do not have to be "public"; they can only be available
through this interface. C# provides integration with COM. Following the lead
of C and C++, C# allows primitives and reference types to be called by
reference.

Figure 27- C#

74
3.4. HTML:
HTML stands for Hypertext Markup Language, and it is the most widely used
language to write Web Pages.
Hypertext refers to the way in which Web pages (HTML documents) are
linked together. Thus, the link available on a webpage is called Hypertext.
As its name suggests, HTML is a Markup Language which means you use
HTML to simply "mark-up" a text document with tags that tell a Web
browser how to structure it to display.
Originally, HTML was developed with the intent of defining the structure of
documents like headings, paragraphs, lists, and so forth to facilitate the sharing
of scientific information between researchers.
HTML is being widely used to format web pages with the help of different tags
available in HTML language.

Figure 28- HTML

75
3.5. Microsoft SQL Server:
Today's business requires a different information management solution.
Performance scalability and reliability are important, but businesses now expect
more from their most important IT investments.
SQL Server 2005 exceeds reliability requirements and delivers innovative
IfeTa tures that increase employee efficiency, integrate heterogeneous
ecosystems, and maximize capital and operating budgets. SQL Server 2005
provides the enterprise information management platform your organization
needs to adapt to a rapidly changing environment.
The benchmark for scalability, speed and performance, SQL Server 2005 is a fully
enterprise-class database product that provides basic support for Extensible
Markup Language (XML) and web queries.

Easy-to-use Business Intelligence (BI) Tools: With SQL Server 2005, you can
provide all your employees with critical, timely
business information tailored to their information needs, with rich data
analysis and mining capabilities that integrate with familiar applications
such
as Microsoft Office. Every copy of SQL Server 2005 ships with BI Services.
Self-Tuning and Management Capabilities: features
optimize database
Revolutionary performance,
self-configuration andwhile management
dynamic tools automate standard
self-configuration
operations. Graphical tools and performance wizards simplify installation,
database design, and performance monitoring, allowing database
administrators to focus on meeting strategic business needs.

Data Management Application and Services: Unlike its competitors, SQL


Server 2005 offers a powerful and comprehensive
data management platform. Each software license includes
comprehensive
management and development tools, a powerful extract, transform and
load
(ETL) tool, business intelligence and analytics services, as well as analytics
service and notification service. The result is the best possible total value
for
the company. 76
The Enterprise Edition includes the full set of SQL Server data management and
analysis capabilities and is uniquely characterized by a number of features that
make it the most scalable and most available edition of SQL Server 2005. It
achieves the level of performance needed to support the largest websites ,
enterprise online transaction processing (OLTP) systems and data service
systems. Its support for failover clusters also makes it ideal for any business-
critical business application. In addition, this edition includes several advanced
analysis features that are not included in the Standard Edition of SQL Server
2005.

Figure 29- Microsoft SQL Server

77
CHAPTER 4
SOURCE CODE

78
4. Source Code

<html>
<body>
<div class="container">
<h1>Personality Prediction Through CV Analysis</h1>
<h2>Front End</h2>
<div class="demo">
<h3>1. Bootstrap</h3>
<div class="instructions">

<p>Whats the HTML for the following.


<br> You want four &lt;div&gt;’s in a medium and large screen to each fill
50% of the screen.
<br> Extra small and small they should each take 100% of the screen</p>
</div>
<div class="response">
<p>Using Bootstrap's grid system, this can be achieved using the following
markup...</p>
<pre>
<code class="language-markup">
&lt;div class="container"&gt;
&lt;div class="row"&gt;
&lt;div class="col-md-6"&gt;.col-md-6&lt;/div&gt;
&lt;div class="col-md-6"&gt;.col-md-6&lt;/div&gt;
&lt;/div&gt;
&lt;div class="row"&gt;
&lt;div class="col-md-6"&gt;.col-md-6&lt;/div&gt;

79
&lt;div class="col-md-6"&gt;.col-md-6&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
</code>
</pre>
<p>By applying the <code>.col-md-6</code> class to each of the four div
elements (which we've separated into two rows), each div will take up 50% of
the available width of the container it's included in for medium to large devices
(desktops, 992px
and up). On small to extra small devices (anything with a min-width smaller
than 992px), the div's will be stacked, taking up 100% of the container
width.</p>

<div class="panel panel-default">


<div class="panel-heading">Bootstrap Demo</div>
<div class="panel-body">
<div class="container-fluid">
<div class="row">
<div class="col-md-6">.col-md-6</div>
<div class="col-md-6">.col-md-6</div>
</div>
<div class="row">
<div class="col-md-6">.col-md-6</div>
<div class="col-md-6">.col-md-6</div>
</div>
</div>
</div>
</div>
</div>

80
</div>

<div class="demo">
<h3>2. jQuery 1</h3>
<div class="instructions">
<p>Using jQuery, select the third div on a page and change the background
color to red.</p>
</div>
<div class="response">
<pre>
<code class="language-javascript">
$(function(){
$("div:eq(3)").css( "background-color", "red" );
});
</code>
</pre>
<div class="panel panel-default">

<div class="panel-heading">jQuery 1 Demo</div>


<div class="panel-body">
<div id="front-end-example-2">
<div>Div 1</div>
<div>Div 2</div>
<div>Div 3</div>
<div>Div 4</div>
<div>Div 5</div>

</div>
</div>

81
</div>
</div>
</div>

<div class="demo">
<h3>3. jQuery 2</h3>
<div class="instructions">
<p>Write click listener to every div with class “.click-me” to alert it’s inner
html contents.</p>
</div>
<div class="response">
<pre>
<code class="language-javascript">
$(function(){
$(".click-me").click(function() {
var innerHTML = $( this ).html();
alert(innerHTML);
});
});
</code>
</pre>
<div class="panel panel-default">
<div class="panel-heading">jQuery 2 Demo</div>
<div class="panel-body">
<div id="front-end-example-3">
<div class="click-me">I'm clickable!</div>
<div>I'm not clickable.</div>

82
</div>
</div>
</div>
</div>
</div>

<div class="demo">
<h3>4. PHP</h3>
<div class="instructions">
<p>Write a for-loop to print out every 5th number up to 100.</p>
</div>
<div class="response">
<pre>
<code class="language-php">
for ($i = 1; $i &lt;= 100; $i++) {
if ($i % 5 == 0) {
echo $i . " | ";
}
}
</code>
</pre>
</div>
</div>

<div class="demo">
<h3>5. CSS</h3>

83
<div class="instructions">
<p>Explain (in your own words) the differences and similarities between the
css attributes “relative” and “absolute.”</p>
</div>
<div class="response">
relat<ivpe>;<A/nc oedleem> ecnatn
the <code>position:
w bieth
positioned relative to where it would naturally be positioned according to the
normal flow of the page by using the top, right, bottom, and left properties. An
element with <code>position: absolute;</code>can
similarly be positioned using the same properties, however, those
properties modify it's position relative to it's first ancestor element where the
position property is something other than the default <code>static</code>. We
often assign <code>position: relative;</code> to an element without
actually modifying it's position simply so that we can use <code>position:
absolute;</code> on a child element.</p>
</div>
</div>
<h2>PHP Back End</h2>
<div class="demo">
<h3>PHP 1</h3>
<div class="instructions">
<p>Given the mySQL table above and php mySQLi object $mySQL, write a
query to select all people in MEMBER_GROUP 3 and echo their email.</p>
</div>
<div class="response">
<pre>
<code class="language-php">
$sql = " SELECT * FROM people WHERE member_group = 3";
$result = $mySQL->query($sql);
if ($result->num_rows > 0) {

84
while($row = $result->fetch_assoc()) {
echo "Email: " . $row["email"]. "<br>";
}
} else {
echo "0 results";
}
</code>
</pre>
</div>
</div>

<div class="demo">
<h3>PHP 2</h3>
<div class="instructions">
<p>Now given the same table, select all people with an email from
gmail.</p>
</div>
<div class="response">
<pre>
<code class="language-php">
// Use MySQL REGEXP
$sql = "SELECT * FROM people WHERE email REGEXP '@gmail.com$'";
$result = $mySQL->query($sql);
if ($result->num_rows > 0) {

while($row = $result->fetch_assoc()) {
echo "Email: " . $row["email"]. "<br>";
}

85
} else {
echo "0 results";
}

// Use PHP
$sql = "SELECT * FROM people";
$result = $mySQL->query($sql);
if ($result->num_rows > 0) {

while($row = $result->fetch_assoc()) {
$email = $row["email"];
if (preg_match("/@gmail.com$/i", $email)) {
echo "Email: " . $email. "<br>";
}
}
}
</code>
</pre>
</div>
</div>

<div class="demo">
<h3>PHP 2</h3>
<div class="instructions">
<p>Delete everyone from MEMBER_GROUP 1</p>
</div>
<div class="response">

86
<pre>
<code class="language-php">
$sql = "DELETE FROM people WHERE member_group = 1";
$result = $mySQL->query($sql);

if ($mySQL->query($sql) === TRUE) {


echo "Deleted performed successfully";
} else {
echo "Error performing delete: " . $conn->error;
}
</code>
</pre>
</div>
</div>
</div>
</body>
</html>

87
CHAPTER 5
FUTURE
ENHANCEMENTS

88
5. FUTURE ENHANCEMENTS

Personality can be expressed through actions online, especially in online social


networks (OSN) such as Facebook. OSN data can be linked to external data
sinotuerrcferse tnoc cer.e Uastien ag dmdaitciohninael learning, data
networks can be combined to more effectively predict the personality of
candidates. This system requires a lot of memory space because it stores CV-
related data, so the applicant's LinkedIn profile can be used to retrieve the
applicant's information to avoid unnecessary data storage. Several other fields
and parameters can be added to the demo policy. Cumulative scores of CV,
aptitude test and personality test can be used for selection of candidates.

89
CHAPTER 6
CONCLUSION

90
6. CONCLUSION
In this project, we have implemented an organization-oriented e-recruitment
system that would assist the human resource department in short listing the
right candidate for a specific job profile. Thereby reducing the load on the
human resource department to shortlist the right candidate for a job profile.
The system will increase the efficiency of the recruitment process and cut
down the work load. The system would be used in many business sectors
that will require expert candidate, thus reducing the work load on the human
resource department.

91
REFERENCES
[1] F Evanthia, T Athanasios, et al. An integrated e-recruitment system for
automated personality mining and applicant ranking. Internet Research 2012;
22: 551-568.
[2]L D. van der, J te Nijenhuis, et al. The General Factor of Personality: A meta-
analysis of Big Five intercorrelations and a criterion-related validity study.
Journal of Research in Personality 2010; 44: 315-327.
[3]F. Safia, N Asha, The Impact of Person Organization Fit on Job Satisfaction
and
Performance of the Employees. Economies and Finance 2014; 11: 122-129.
[4]I like, W Peter, Personality and Job Engagement. Journal of Personnel
Psychology
2011; 10: 177-181.
[5]D Tantam, The machine as psychotherapist: impersonal communication
with a machine. BJPsynch Advances 2017.
[6]M François, AW Marily, et al. Using Linguistic Cues for the Automatic
Recognition of Personality in Conversation and Text. Journal of Artificial
Intelligence Research 2007; 30:
457-500.
[7]H Bob, P Mike, et al. Freudbot: An Investigation of Chatbot Technology in
Distance Education 2017.
[8]A. Bayan, A. Eric, ALICE Chatbot: Trials and Outputs. Computing and Systems
2017:19.
[9]CG Arthur, WH Katija, et al. AutoTutor: A simulation of a human tutor.
Cognitive Systems Research 1999; 1: 35-51.
[10] YN Un, JM Raymond, Mining Soft-Matching Rules from Textual Data.
International Joint Conference on Artificial Intelligence 2011; 2: 979-984.
[11] VR Gaikwad, RH Patil, et al. Survey Paper on Pattern Discovery Text Mining
for Document Classification. International Journal of Computer Applications
2015; 112: 7-9.

92
[12] MS Mustafa, AP Ashwini, et al. Pattern Discovery Text Mining for
Document Classification International Journal of Computer Applications 2015;
117: 6-12.
[13] J Raymond, YN Un, Text Mining with Information Extraction.
Multilingualism and Electronic Language Management 2005: 141-160.
[14] LS Thomas, How to Make A Decision: The Analytic Hierarchy Process.
European Journal of Operational Research 1994; 48: 9-26.
[15] “Personality Prediction System through CV Analysis” Allan Robey, Kaushik
Shukla, Kashish Agarwal, Keval Joshi, Professor Shalmali Joshi, International
Research Journal of Engineering and Technology (IRJET), Volume: 06 Issue: 02 |
Feb 2019, www.irjet.net, e-ISSN: 2395-0056, p-ISSN: 2395-0072.

93

You might also like