lan ` Recruitment Management system (RMS) For Information Architect By Sidrah Aslam A Project Report Submitted To Department Of Computer Sciences, Quaid-i-Azam University As A Partial Fulfillment Of The Requirements For The Award Of Degree Of M.Sc. In Computer Science.
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
lan `
Recruitment Management system (RMS)
For Information Architect
By
Sidrah Aslam
A Project Report Submitted To Department Of Computer Sciences,
Quaid-i-Azam University As A Partial Fulfillment Of The Requirements
For The Award Of Degree Of M.Sc. In Computer Science.
July 2007
Project Brief
Project Title: Recruitment Management System (RMS)
Undertaken By: Ms. Sidrah Aslam
Supervised By: Ms. Muddassira Arshad
Lecturer
Department of Computer Science
Quaid-i-Azam University, Islamabad.
Starting Date: February 2007.
Completion Date: July 2007.
Tool Used: Microsoft Visual Studio.Net.
Operating System: Microsoft Windows XP Professional.
System Used: Intel® Pentium® 4 CPU 1.80GHz.
DEDICATED TO
To my loving Parents,
Sonu & Mano.
Acknowledgement
First of all I would like to extend my sincere and humble gratitude to
Almighty Allah whose blessings and guidance has been a real source of all my
achievements in my life.
I am grateful to my supervisor Ms. Muddassira Arshad for her sincere
help and guidance during my studies and project work.
I will be failing in my duties if I don’t express my warmest thanks to my
external supervisor Mr. Chaudhry Rizwan (Information Architects) for his help,
guidance and valuable suggestions in algorithm design, reading materials and
other difficulties of the project.
It is my bounden duty to pay tributes to my worthy teachers and staff
members of Department of Computer Science Quaid-i-Azam University
Islamabad. Greatest thanks go to all my teachers for their kind help and
guidance.
I am indebted to my parents, Especially my Father whose love and
support enabled me to be successful in every field of my life, I am fortunate to
have love affection and encouragement of my brothers Shahzad & Sajjad
sisters Munnazza & Misbah for their prayers and moral support during my
studies.
My sincere thanks are also to all my classmates and friends especially
Naveed, Zaira, Hina, Maria, Arshia, and my roommates Farah and Sara for
their sincere help, encouragement and enjoyable company during my student
life. They are really great source of inspiration for me in my difficulties.
I am also thankful to my sweet juniors and seniors especially Faiza,
Rizwan, Hassan, Saqib and Saleem for their support and prayers.
1.2 INTRODUCTION TO ORGANIZATION.................................................................................................................71.3 PURPOSE OF THE DOCUMENT..........................................................................................................................71.4 SCOPE.............................................................................................................................................................81.5 VISION............................................................................................................................................................81.6 AIMS AND OBJECTIVES...................................................................................................................................91.7 AUTOMATION OF RECRUITMENT MANAGEMENT.........................................................................................101.8 GLANCE AT REQUIREMENTS.........................................................................................................................101.9 DETAILED FUNCTIONAL REQUIREMENTS.....................................................................................................121.10 NON FUNCTIONAL REQUIREMENTS........................................................................................................17
1.10.1 Document Conventions..................................................................................................................171.10.2 Intended Audience and Reading Suggestions.................................................................................171.10.3 Product Perspective.......................................................................................................................181.10.4 User Classes and Characteristics..................................................................................................181.10.5 Operating Environment..................................................................................................................191.10.6 General Constraints.......................................................................................................................191.10.7 Assumptions and Dependencies.....................................................................................................20
1.11 EXTERNAL INTERFACE REQUIREMENTS.................................................................................................201.11.1 User Interfaces...............................................................................................................................201.11.2 Software Interfaces.........................................................................................................................211.11.3 Hardware interfaces.......................................................................................................................21
2.1 USE CASE ANALYSIS...........................................................................................................................24
3 SYSTEM DESIGN.......................................................................................................................................30
3.1 PRELIMINARY OBJECT-ORIENTED DOMAIN ANALYSIS..........................................................................303.1.1 Class Modeling...............................................................................................................................30
3.2 SYSTEM SEQUENCE DIAGRAMS..............................................................................................................323.3 DESIGN DECISION...................................................................................................................................39
Conclusion: In this chapter, I have discussed about various design principles I had followed in designing my application in order to have the clear understanding about design of the application. This included Class Diagram & sequence Diagrams...........................................................................................................40
4 SYSTEM IMPLEMENTATION................................................................................................................41
4.1 OVERVIEW OF IMPLEMENTATION...........................................................................................................414.2 PLATFORM SELECTION............................................................................................................................414.3 SELECTION OF DEVELOPMENT TOOL......................................................................................................41
4.3.1 VB .NET..........................................................................................................................................414.3.2 ASP.Net..........................................................................................................................................424.3.3 SQL Server 2000 DBMS.................................................................................................................434.3.4 Internet Information Services (IIS)................................................................................................43
In the current era of science and technology it is necessary to develop cost effective and
useful software for general public.
The huge rise in number of job seekers are now using internet for finding their next
carrier. For the employer successful online recruitment can reduce process cost,
increases the speed to hire, improve productivity and reach the best applicants. Web
Based Recruitment is an independent online recruitment consultancy to help companies
with all aspects of their online recruitment activities.
1.2 Introduction to organization
Information Architects is a wholly owned subsidiary of Data Design Dynamics, which has
been providing knowledge based solutions and services to various clients since 1999.
The team at Information Architects has been a data warehousing and business
intelligence specialist, and has a 100% success rate on projects for both major and mid-
sized enterprise clients. It has skilled data warehouse and business intelligence execution
practitioners with the experience of Fortune 100 companies such as Chase Manhattan
Bank, Avis Rent A Car, Budget Rent A Car, AT&T and Cendant Corporation. Information
Architects employ an open architecture (vendor independent), open tool (product
agnostic) policy. We help clients develop solutions in their own preferred environment
configured to maximally leverage existing resources, therefore providing flexibility to
accommodate variable budgets, and we are equally well versed with Oracle, SQL Server,
Teradata and Sybase.
1.3 Purpose of the document
This document presents the Requirements and the complete external behavior of the
intended system that will be developed for the information architect they shall be the
basis for the design and implementation of the different components in the context of
the RMS system.
1.4 Scope
A new on-line Recruitment Management System (RMS). This web-based system will
facilitate and automate many of the labor-intensive, paper-driven aspects of the staff
recruitment and hiring processes
Page 7 of 65
RMS will allow its intended User (Organization) to post all vacant classified positions,
which they intend to fill, into the current centralized system referred to as the Recruit.
The requisitions for the vacant positions will be advertised to the public through the
Department of Human Resource Management’s (DHRM) web site. The system should
allow agencies to track agency applicant data that is received in response to the
requisitions, completely through the hiring process, from receipt of application through
candidate selection. RMS, by providing an online application, should also provide job
applicants with a solution that will make applying for a job from any where in the world in
a very convenient and efficient manner.
RMS will be equipped with the dynamic reporting engine which will perform the all
reporting work for the client.
1.5 Vision
The Recruitment Management System (RMS) is an innovative, practical tool which is
designed to save the employer time and cost during the recruitment cycle. It is a highly
flexible web-based system allowing on-line applications and automatic filtering of
candidates via a structured series of tailored web-based questions.
Candidates can be contacted at any time, via SMS or email. The RMS tracks all
candidates giving an instant overview of any application - making the management of
vacancies fast and simple.
Ideal for organizations with ongoing recruitment needs, the RMS modules can
accommodate high volume ‘response management’ through to low volume individual
vacancies. Job specific questioning, based on both hard (factual) like questionnaire,
written tests and soft (personality) information, provides a Personal overview of each
applicant. Further features within the system allow for the uploading of documents such
as CV’s exactly when the client requires them, often after initial screening.
The RMS can generate a searchable database of job applicants and candidates who wish
to work for you - making proactive job filling cheaper, easier and more focused.
1.6 Aims and Objectives
Goals are to make the recruitment process accessible to all citizens, increase efficiencies
and develop state government as a more attractive employer. Improvements will be
measured in the following areas. An Executive Dashboard will be created via the
software.
EEO statistics (Equal employment opportunity )
Customer walk-in traffic.
Number of resumes and applications received ( Against a specific position)
Number of applications received from all counties
Page 8 of 65
Customers’ (applicants, state employees, hiring managers and personnel
Executives) feedback using customer surveys.
Operational and production statistics reviewing resumes and applications.
1.7 Process Model Selection
Here I have followed incremental process, as the incremental process is populated by set
of framework activities that occur for all business-critical web applications. The following
framework activities will be considered for this purpose. These activities are applied
iteratively:
Formulation:-formulation identifies the goals and objectives of application and
establishes the scope further, Includes what recruitment process will be and how
it will suffix the requirement of the client.
Planning:-Planning estimates overall project cost, evaluates risks, and defines a
development schedule for the initials of web application.
Analysis:-Analysis establishes requirements for the application and identifies the
content items that will be incorporated.
Modeling:-This activity incorporates two parallel activities: content design and
production which results in the creation or acquisition of content within web
application. This includes architectural design, navigation and interface design
that establishes the structure of web application.
Page generation:-This is pre requisite activity in which certain prototype is
generated. (initial forms are pasted at the end).Basic coding is also done in this
phase.
Testing:-this is also pre-requisite activity in which the application is run for
certain tests that manipulates errors within application.
1.7 Automation of Recruitment Management
The management perceived the need for a Recruitment Engine to deliver greater
administrative and communication efficiency to the recruitment system. This complete
and secure applicant tracking and recruitment automation system benefited not just the
HR department, but the entire company. The benefits are encapsulated as follows:
Page 9 of 65
Greater speed and efficiencies in applicant tracking and resume
management tasks.
Easy interface for updating by recruiters.
Report generation for process examination and refinement.
Reduced cost-per-hire and time-to-hire.
Internet protocol based system allows universal and cost-effective access
to both applicants and recruiters.
This model has delivered several advantages to the group as a whole. The broad value-
add of this Recruitment Engine lies in easy management of information, workflow and
communication between the various entities involved in the recruitment process. This
has enhanced the efficiency of the HR department and facilitated the recruitment
Process. Without doubt, the web-based system has increased the productivity of the
employees while greatly enhancing the collaboration among various departments to
achieve collective business goals.
1.8 Glance at Requirements
The Basic theme of the RMS (Recruitment Management System) that will incorporate all
the feature of the recruitment of any organization. The proposed system should be
capable of performing all required functions within the Commercial off-the-shelf software
package.
RMS will incorporate following highlighted features:
Job Requisition - The creation and advertisement of a job announcement, to
include capture of recruitment costs and where the position was
posted( Newspaper)
• On-Line Employment Application
• Applicant Tracking
• Reporting
Resume Building – Online creation of the resume which includes complete bio
data of the candidate. That will be sorted according to the qualification and
experience basis.
Panel Selection – Once the Vacancy will be announced the panel will be selected
from the existing employees by the top management.
Page 10 of 65
Short listing and Call Generation – The intended system will short list the
candidates by sorting them according to the desired qualification and experience
and the generate the test calls to selected candidates.
Final Screening – Final screening of the candidates will be made after the test
and the interview and basic data of the candidate will be online send to the
central server.
Dynamic Reporting – This will be separate module that will not only be help full
in RMS but very general in purpose. and will incorporate following features:
The core module will be filtration that consists of two parts first is Dynamic
query analyzer and second is parsing of the format to the Reporting tool.
Query analyzer will generate the queries according to the user defined
criteria (what view of the data user is interested) and parsing module will
transform this criterion to the user defined format.
Finally the display the reports in all the desired formats in the crystal
report:
In the end RMS along with the Dynamic reporting capabilities will the serve
the need of Basic recruitment of the organization and polishing its
capabilities by the use of reporting.
1.9 Detailed Functional Requirements
The functional requirements of the system are given in the table below with their
importance level and detail.
R1. JOB REQUISITION
General
Description
The List of all services currently running on the remote server.
Importance Top level
Need for Administrative purposes.
Constraints Information must be updated on each request.
Details The job postings entered into the system will be referred to as
requisitions and will include all information that is necessary for
posting and advertising job vacancies.
The system will generate a unique requisition number for each
job posting that will serve as an identifier for tracking the
Page 11 of 65
requisition and related applicant data through the system. The
system will allow agencies to create job requisitions for vacant
job.
R2. Create New Requisition
General
Description
This option will provide the user with a data entry screen that
should include the following fields for the information of the
candidate
Importance Top level
Need for Administrative purposes.
Constraints Candidate must have to enter the required information
Details The system will permit authorized users to create new open
requisitions. The user will not be allowed to enter the position
data on a requisition.
R3. Update Requisition
General
Description
This option will provide the user to update screen that will include
the following fields for the information of the candidate
Importance Top level
Need for Administrative purposes.
Constraints Candidate must have already entered the required information
Details The system will permit authorized users to update open
requisitions. The user will not be allowed to update the position
data on a requisition. This will prevent the user from having the
ability to use the same requisition to post vacancies for
multiple positions.
R4. Close Requisition
General
Description
The system will close a requisition at 5:00 p.m. to reflect the close
of business for the requisition closing date
Importance Top level
Need for Administrative purposes.
Constraints -- --
Details The system will close a requisition at 5:00 p.m. to reflect the
close of business for the requisition closing date. Example - If
the close date on a requisition is March 25, 2007, the system
will close the requisition at 5:00 p.m. on March 25, 2007.
Page 12 of 65
The system will permit authorized users to close a requisition
that has been created with either of the options "open until
filled" or "continuous recruitment".
R5. View / Open Requisitions
General
Description
The system will provide an option that will allow authorized
users to view all open requisitions.
Importance Top level
Need for Administrative purposes.
Constraints ----
Details The user will be able to define the order in which to view the
requisitions. Suggested choices:
a. Requisition Number Order
b. Requisition Creation Date Order
c. Filled Requisitions
d. Closed Requisitions
e. Currently Open Requisitions
R6. Delete Requisition
General
Description
The system will permit authorized users to key in the reason for
deleting requisitions.
Importance Top level
Need for User purposes.
Constraints ----
Details The system will permit authorized users to key in the reason for
deleting requisitions for which there are no applicant data
records. The requisition number for a deleted requisition cannot
be used again by the system. Requisition should not be closed
unless in error—this could be used to support no applicants
available or a difficult to fill position
R7. ON-LINE EMPLOYMENT APPLICATION Submission
General
Description
The online job application component of the RMS will provide
job applicants with the ability to complete the employment
application online.
Importance Top level
Need for Administrative purposes.
Page 13 of 65
Constraints Information must be updated on each request from user.
Details The online job application component of the RMS will provide
job applicants with the ability to complete the employment
application online. After completing the application, the
application data can be submitted electronically into the central
applicant database in response to a specific job requisition. The
application data should be saved and accessed by the applicant
using a Username and password for updating and future
submission. The applicant will also be allowed to print the
application data. Each electronically submitted application
must create an applicant record in the database.
R8. Screening
General
Description
Screening will be done by the panel of higher management to
shortlist the candidates.
Importance Top level
Need for Administrative purposes.
Constraints Information must be updated after every selection period
Details Final screening of the candidates will be made after the test
and the interview and basic data of the candidate will be online
send to the central server.
R9. User Interface
General
Description
The system will provide job applicants with an interface that
will include but not limited to the following options:
Importance Top level
Need for Administrative purposes.
Constraints ---
Details User interface will provide the following Screens.
1. Instructions for System Use
2. Create New Employment Application
3. Print Application
4. Update/Submit Employment Application
5. Save Application
6. Exit
Page 14 of 65
R10. Interaction with client
General
Description
Candidates can be contacted at any time, via SMS or email. The
RMS tracks all candidates giving an instant overview of any
application
Importance Top level
Need for Administrative purposes.
Constraints ----
Details The system will generate pre-defined applicant
correspondence. The system will provide the flexibility to allow
the user to develop agency specific correspondence or select
from a list of pre-defined letters.
R11. Applicant Ranking and List
General
Description
System will produce a report listing of applicants and their
rankings according to their test and interview criteria.
Importance Top level
Need for Administrative purposes.
Constraints Candidate must be registered first.
Details The user can define the maximum number of rankings to
report. i.e. top 5 candidates. User should set priority of
screening criteria to include multiple criteria
R12. Reporting engine
General
Description
This section helps the user to create many kinds of reports
that will be dynamic in nature as this can also be considered
as separate module;
Importance Top level
Need for Administrative purposes.
Constraints -- ----
Details Reporting engine will be equipped with the dynamic query
generation and basic automated reporting that will map the
report in the crystal report format.
R13. Help
General This section helps the user learn how to use software. It is
Page 15 of 65
Description needed to help users when they first use the product and make
them understand how to use it in the future for the company
Importance Top level
Need for Administrative purposes.
Constraints ----
Details Text based. A button allowing the user to return to the main
and directions to use the back button on the user's browser.
1.10 Non Functional Requirements
1.10.1 Document Conventions
Following are some of the conventions:
Font Name: Verdana.
All Headings are Bold and numbered properly.
Points under headings are arranged with bullets
1.10.2 Intended Audience and Reading Suggestions
Information in this document is at a level that can be reviewed and understood by
different audience. This document’s audience includes:
Project Manager
Developers
Testers
Client
The following are recommend readings for each audience group:
1.10.2.1 Project Manager and Developer
Project Managers and Developers should read this document from top to bottom
paying attention to the requirements themselves, both functional and non-functional.
Page 16 of 65
This document is meant to be read in its entirety and in sequential order.
Descriptions and explanations are often built upon previously revealed information.
Use cases especially should be read in sequential order. Often the text will direct the
reader to a specific section of this document to enhance understanding of the current
reading material.
Developers who define and implement interpreters and involved in the development
of libraries and applications.
1.10.2.2 Testers
Testers shall derive system test cases from reading the Related Requirements of
each feature and interface requirement. Testers are required to thoroughly read and
understand the use cases in section four of this document. The use cases should be
read in sequential order. All notations and references should be unearthed. The tester
should experiment with the prototype in conjunction with the use cases to develop a
complete understanding of correct functionality. The tester should also understand
the non-functional requirements in this document.
Additionally, familiarization with the external interface requirements is strongly
suggested.
1.10.2.3 Client
Client should be extremely familiar with the Vision and Scope document for RMS
Wizard. They also should have a clear understanding of the external interface
requirements and non-functional requirements mentioned in this document.
1.10.3 Product Perspective
RMS is the product demanded by Info Architect Limited. Project Managers, Team
Leaders and Software Engineers in INFO ARCHITECT will use the RMS Wizard. The
system is self-contained and PC based. However, it is possible to migrate data of a
database placed in one system with other system through external interface if
required. This wizard is a newly developed product for INFO ARCHITECT.
1.10.4 User Classes and Characteristics
The End users will mainly use the Application. The following table describes general
user’s characteristics that will affect the functionality of the software product.
Page 17 of 65
Type of
UserUser Characteristic
User Technical
Expertise
How the user
characteristic and
technical expertise
affect RMS Wizard
functionality
Enduser
Good understanding
to RMS
operation .i.e.
Applicant, panel,
management
Responsible for RMS
operation.
Administrator.
Average in technical
proficiency
Must have the
knowledge of
provided databases
User interface with
less input steps.
Easy to learn and
control able.
Table 1.1: User Classes and Characteristics
1.10.5 Operating Environment
The Windows operating system will be used. The languages used to support the
features and functionality of the application is Visual Basic.NET and SQL.
1.10.6 General Constraints
1.10.6.1 The Product
Must work on Windows Operating System
Adequate checks are to be incorporated to ensure proper acceptance and
validation of critical data.
Must have clear help/error messages
Page 18 of 65
1.10.6.2 Hardware Constraints
Monitors: 800x600 minimum resolution at 256 colors minimum
I/O: Two button mouse and standard 101-key keyboard
MHz: at least 333 MHz should be on the computer
1.10.6.3 Operating System
Microsoft Windows XP, 2000
1.10.6.4 Software Tools Methods and Techniques
Microsoft Visual Studio .NET
1.10.6.5 Memory Constraints
The operation of RMS will be constrained by the amount of memory available in the
local machine. At least 64MB of RAM is expected in the local machine and there are
no upper memory constraints.
1.10.7 Assumptions and Dependencies
There are several important assumptions for the project and its team members:
It is assumed that the project development team (I) has sufficient
knowledge to undertake and complete the project.
The support for the technologies will be available for the duration of the
project (VB.NET and ASP.NET)
It is being assumed that required operating system is available to the user.
1.11 External Interface Requirements
1.11.1 User Interfaces
The proposed application will interface with user in order to do the migration tasks,
which are mentioned above. The dialogues to be established must be simple and
easy understandable.
Page 19 of 65
Step-By-Step interfaces will be provided to user for the RMS process as
well as for installing the software.
The interface will be visual and in case of errors and bugs in any of the
communicative tasks the interface must provide information to the user
through messages in rich text box or through message box.
It will be multitasking window oriented interface. Interface must be less
typographic and should be instructive.
Proper shortcut keys in the main screen must be given.
Process successful and completion messages will be provided.
Exit, Cancel, Next, Start and Finish buttons will be provided.
It will allow the user to interact with the product using mouse and
keyboard.
1.11.2 Software Interfaces
The application will interface with the system software and also with the user through
a friendly user interface.
1.11.3 Hardware interfaces
The hardware interface for the system will be a standard keyboard, mouse, and
monitor. The system will also require a server to interface with the databases.
1.12 Other Nonfunctional Requirements
1.12.1 Performance Requirements
The overall performance depends on the time of translation of data. We need to
define a threshold that in what time the translation should be completed.
Performance also depends on Response Time. The system will run stably, capable to
furnish enough power for all demand conditions, and capable to furnish enough
power in case of rapid demand increases, and has capability for the resilience to data
base outage, etc. Response time will depend upon the speed of the processor and the
size of the database.
Page 20 of 65
1.12.2 Safety Requirements
System may have bugs and has data subject to corruption from environmental
accidents, such as electric power loss or from the viruses entering the system on the
PC in which the software operates. Well-designed system will be able to detect
corruption, repair damage, define the problem, and alert the user with emphasis that
varies from system to system
1.12.3 Security Requirements
Authorization requirement for system operation. All user data information is
confidential. Access to some features will be restricted by username and passwords.
1.12.4 Accuracy
The system will provide complete correctness of data and data storage. This feature
is the capital feature. The functionality will provide a complete confident to the
organization while tracking the its recruitment process.
1.12.5 Simplicity
The system will be developed keeping in mind that the Recruitment process is
designed according to the workflow of the actual process and thus will be easy to use.
1.12.6 Scalability
The system must be able to maintain its functionality; any performance constraint
must be product of the limitations of the machine the system is running on (for
example, processor or memory limitations), but not from the software itself.
1.12.7 Reliability
Reliability is vital to RMS. The RMS wizard should not have any unscheduled down
time during operational hours. This can be ensured by using proper outage at
weekends and downtimes.
1.12.8 Adaptability
Page 21 of 65
The RMS must provide flexible and extensible migration process.
2 Analysis
2.1 Use case AnalysisIdentification of the use cases for the RMS.
Register User
Generate/Update Resume
Page 22 of 65
Generate Vacancy
Advertise Vacancy
Apply for the vacancy
Select Panel
Selection Criteria
Initial level screening / Generate test calls
Selection for the interview calls
Final Screening / Sending initial information to data bases
Reporting Module
Extract the Tables and views from the databases
Built criteria.
Built Dynamic query
Parsing to Crystal report format
Use Case Diagram of RMS
Page 23 of 65
Use Cases description
Use case name Register User
Page 24 of 65
Summary This use case will register the user as a candidate
Actors AdministratorsPre conditions Open the recruit web site Description This use case begins when the new candidate wants to
register with the system. The system will generate the Unique id and save its ID and password
Invariants -----Post conditions Registration Data saved in DatabasesNormal paths User must access the Subjected web site.
Use case name Create / Replace ResumeSummary This use case will allow the user to create or replace
Resume .Actors UserPre conditions User must be already registeredDescription This use case begins when the new candidate wants to
Resume or an existing candidate wants to update his resume.
Invariants User must have true ID ,PasswordPost conditions Resume saved in DatabasesNormal paths User must access the Subjected web site.
Use case name Generate VacancySummary This Use case will be responsible for the generation of new
vacancies in organizationActors SystemPre conditions Login as administratorDescription This use case begins with the new requirement of the
vacancy in the subject organization. Vacancy with the complete description will be loaded in the databases
Invariants -----Post conditions vacancy saved in DatabasesNormal paths User must access the Subjected web site.
Use case name Advertise VacancySummary This Use case will be responsible for the advertisement of
the generated vacancy on the Organizations WebsiteActors AdministratorPre conditions Vacancy needed to generated firstDescription This use case will be responsible for the advertisement of
the vacancy on the site with its complete description and the time starting and closing of the vacancy along with require experience and qualification.
Invariants -----Post conditions Advertise Data saved in Databases status must be
mentioned (open/close)Normal paths User must access the Subjected web site.
Use case name Apply for the VacanciesSummary This Use case will be responsible for the applying for the
vacancy.Actors UserPre conditions Vacancy Status must be open and the User must have a
resume.Description This use case will register the candidates for the subject
Page 25 of 65
vacancy that is advertiseInvariants Status of vacancy must be openPost conditions Check user resume against the selected vacancy in
Databases Normal paths User must access the Subjected web site.
Use case name Selection of the PanelSummary This Use case selects the employee’s i.e. mangers or
others for the selection of the candidates.Actors AdministratorPre conditions There should be a Vacancy advertised.Description This use case will select the employees that will conduct
test and interviews of the candidatesInvariants -----Post conditions Panel names saved in Databases Normal paths Access the local databases for the employee selection.
Use case name Initial Screening and Generate test callsSummary This Use case will manage the initial Screening as per
criteria defined for the particular vacancy and calls the candidates for test.
Actors AdministratorPre conditions There should be a Vacancy advertised and its status must
be closed.Description This Use case will manage the initial Screening as per
criteria defined in the job description and expertise required matched from the resume of the candidate
Invariants -----Post conditions Candidates names saved in Databases Normal paths Select Resume from the databases
Use case name Selection and interview callsSummary After the result of the panel of test the interview calls will
be generated.Actors AdministratorPre conditions There should be a Vacancy advertised and its status must
be closed and tests must be conductedDescription This Use case will manage the Screening as per test results
and the generation of the interview calls.Invariants -----Post conditions List of the candidates saved in Databases Normal paths
Use case name Final Screening Summary This use case will involve final selection and sending call
via mail to the recipient and sending required data to data bases.
Actors AdministratorPre conditions Pre screening tasks are done (short listing)Description This use case will manage the final screening and the
generation of the offer latter to the candidate.Invariants -----Post conditions List of the candidates saved in Databases
Page 26 of 65
Normal paths
Reporting Module
Use case name Manage extraction of tables and views from databases
Summary This use case will involve final selection of the all the tables and views for the databases.
Actors AdministratorPre conditions Login to data base server Description This use case will manage the selection of all the tables
and views along with its columns listed from the selected data bases
Invariants -----Post conditions -----Normal paths
Use case name Built Criteria Summary This use case will mange Dynamic user selection of criteria
Actors AdministratorPre conditions Tables are loaded in the dataset Description This use case will allow the user to select the required
fields from the table and mange where clause restrictionsInvariants -----Post conditions Query must be displayedNormal paths
Use case name Built Dynamic querySummary This use case will display the Dynamic user selection of
criteria in the form of Query the will generated correspondingly.
Actors AdministratorPre conditions User selection must be finalizedDescription This use case will manage the dynamic user criteria for the
report including its header and different clauses in the form of the SQL query.
Invariants -----Post conditions Query must be displayedNormal paths
Use case name Parsing to Crystal report formatSummary This use case will parse the query it to the crystal report
format Actors SystemPre conditions Data query should be parsed and data set is availableDescription This use case will perform the main task of parsing the
dynamic query to its recipient Crystal report formatInvariants -----Post conditions Report must be generated in the crystal report format.Normal paths
Page 27 of 65
3 System Design
3.1 Preliminary Object-Oriented Domain Analysis
3.1.1 Class Modeling
Design allows a software engineer to model the system or product that is to be built. The
aim of design is to produce a model or representation that exhibits firmness, commodity,
and delight.
The software design is aimed at finding the conceptual solution that fulfils the
requirements, rather than its implementation. For example description of database
schema and software objects.
The system design is the bridge through which requirements are transformed into the
actual software. It is an essential part of software development. It develops the
architectural detail required to build a system or product.
Page 28 of 65
The design must contain the following characteristics:
The design ensures the accurate translation of customer requirements.
It should be readable and understandable.
It should provide complete picture of the software.
Design forms basis for programming and maintenance which will be implemented.
Class Relationship:-
The objects of classes communicate with each other to perform any function. The
type of relationship at class level defines this communication. The interaction of different
class objects defines in class relationship diagram. Class diagram is UML standard for
describing the class interactions
Identified Classes for recruitment management
Job administrator
candidate
Resume
Vacancy
Advertisement
Qualification
Experience
Basic Info
Panel Selection
Short listing
Test
Database
Class Diagram for recruitment management:
Page 29 of 65
Identified Classes for reporting engine:
Database
Report
Class diagram for reporting engine:
Page 30 of 65
3.2 System Sequence Diagrams
System Sequence Diagram
A sequence diagram shows the sequence of method calls of different objects of classes
to implement a use case.
1. Register User
2. Create /Update Resume
Page 31 of 65
Applicant Databases
Get Applicant info ( )
Enter Login Id ( )
Send Unique ID ( )
3. Generate/Update Vacancy
Page 32 of 65
Applicant Resume Databases
Create Resume ( )
Login
Save resume ( )
Send Confirmation Mess ( )
View ( )
Get info ( )
Update Resume ( )
Save changes ( )
4. Dynamic Reporting
Database Design
Page 33 of 65
Generate Vacancy ( )
Administrator Vacancy Databases
Login ( )
Save ( )
Send Vacancy Id ( )
Open/close Vacancy ( )
Opened/closed ( )
Administrator Report Data Bases
Login ( )Extract Objects ( )
Open Tables/views ( )
Set Criteria ( )
Built Query ( )
Parse Data ( )
Display Report( )
Database associated with the system is not very complicated one yet it is quite
significant since the proper working of the system depends on the information provided
by the database. Tables are formatted like this to meet the requirements of already HRM
system on the client side. RMS is basically data base driven project so it contains large
table, views and function:
Main tables involved and fields are described as below:
RM_Users
RM_Vacanies
RM_Resume
RM_Countries
RM_Cities
RM_Panel
RM_Panel/Vacancy
RM_Screened candidates
Page 34 of 65
Table Name: RM_ USERS
Primary Key: User_id
Table Description: This table Contains the list of all the Users/candidates that will be
registered on the site.
Field Name Data Type Length P.K/F.K Null/Not Null Description
User_id numeric 3 P.K Not Null ---
User_Name varchar 50 ---- Not Null Name
Date_Time_Ad
ded
Date Time 8 ---- NOT NULL Date time
Password numeric 6 ---- Not Null ---
IS_Local numeric 2 ---- Null Is the key to suggest
whether the user is
candidate or local
ser
Table Name: RM_ Vacanies
Primary Key: VC_id
Table Description: This table is used to store information about all the Vacancies that
created and also maintains its history
Field Name Data Type Length P.K/F.K Null/Not Null Description
VC_id numeric 3 P.K Not Null --
VC_Name varchar 50 ----- Not Null Name of vacancy
Status Boolean 1 ------ Not Null Whether vacancy
is open or not
Department Varchar 50 NULL Name of the
department for
which the vacancy
is launched
Table Name: RM_ Resume
Primary Key: RM_ID
Table Description: This table is used to store all the Basic Resume that will be created
by the users
Field Name Data Type Length P.K/F.K Null/Not Null Description
RM_ID numeric 3 P.K Not Null --
Page 35 of 65
RM_Name nvarchar 50 ----- Not Null Name Of the
resume
Candidate_Name nvarchar 50 ----- Not Null Name of the
candidate
Gender numeric 2 -- Not Null --
DOB Date/time -- Not Null Date Of Birth
Objective Nvarchar 800 -- NULL Objective of
the resume
Nationality Varchar 50 -- Null --
ID_Card_NO Numeric 9 -- Not Null
Country Varchar 12 -- Not Null --
City Varchar 12 -- Not Null --
Address Varchar 50 -- Not Null --
Zip _Code Numeric 10 -- Not Null
Contact NO Numeric 10 -- Not Null
Mobile No Numeric 10 -- Not Null
Email Varchar 12 -- Not Null --
Table Name: RM_ Countries
Primary Key: CID
Table Description: This table is used to store the information all the countries of the
world.
Field Name Data Type Length P.K/F.K Null/Not Null Description
CID numeric 3 PK Not Null CID
C_Name Varchar 12 -- Not Null Country Name
Table Name: RM_Cities
Primary Key: CI
Foreign Key: CID (Country)
Table Description: This table contains the name of the cities against the respective
country names
Page 36 of 65
Field Name Data Type Lengt
h
P.K/F.K Null/Not Null Description
CI Numeric 3 P.K Not Null City ID
CID Numeric 3 F.K Not Null Country Id
C_Name Varchar 50 ------ Not Null Name of city
Table Name: RM_Panel
Primary Key: PID
Foreign Key: VC_id (Vacancy)
Table Description: This table will contain the panel name and the nominees of the
panel.
Field Name Data Type Lengt
h
P.K/F.K Null/Not Null Description
PID Numeric 3 P.K Not Null Panel ID
P_Name Numeric 3 F.K Not Null Country Id
Candidates ID Varchar 50 ------ Null ---
Table Name: RM_ Panel/Vacancies
Foreign Key: VC_id,P_ID
Table Description: This table is used to store information about the entire Panel that is
assigned against a vacancy
Field Name Data Type Length P.K/F.K Null/Not Null Description
VC_id numeric 3 F.K Not Null --
P_ID numeric 3 F.K Not Null --
Table Name: RM_ Screened Candidates
Primary Key: S_ID
Foreign Key: VC_ID (vacancy)
Table Description: This table is used to store information about the entire Panel that is
assigned against a vacancy
Field Name Data Type Length P.K/F.K Null/Not Null Description
S_ID numeric 3 P.K Not Null --
PC_ID numeric 3 F.K Not Null --
Page 37 of 65
CID Numeric 3 -- Null This the candidate
it that will be taken
against the
candidate
3.3 Design Decision
Application Design: I opt for three tier architecture, a special type of client/server
architecture consisting of three well-defined and separate processes, each running on
a different platform:
1. The user interface, which runs on the user's computer (the client).
Highlighted classes are:
Vacancy
Resume
Applicant
Experience
Basic info
Qualification
Advertisement
2. The functional modules that actually process data. This middle tier runs on a server
and is often called the application server.
Highlighted classes are:
clsVacancy
clsResume
clsApplicant
clsExperience
clsBasic info
clsQualification
clsAdvertisement
3. A database management system (DBMS) that stores the data required by the
middle tier. This tier runs on a second server called the database server.
Highlighted class is Databases.
The three-tier design has many advantages over traditional two-tier or single-tier
designs, the chief ones being:
The added modularity makes it easier to modify or replace one tier without
This provides the brief overview of tools and technologies used in the development of
the system. The coding convention used in the software source code is also
mentioned in this chapter and system also provides the deployment of the system.
5 Testing
Page 56 of 65
5.1 Introduction
Simply stated, quality is very important. It is much easier to explain to a customer
why there is a missing feature than to explain to a customer why the product lacks
quality. A customer satisfied with the quality of a product will remain loyal and wait
for new functionality in the next version. Quality is a distinguishing attribute of a
system indicating the degree of excellence. The importance of software testing can
not be overemphasized. Once the source code has been generated, software must be
tested to allow errors to be identified and removed before the delivery of software.
While it is not possible to remove every error in large software package, our goal is to
remove as many as possible in the early software development cycle.
5.20 Software Testing Objectives
Testing of the application is done to achieve following objectives.
Execution of the program is done with intent to find the errors in the program.
Test Cases are designed so that these have high probability of finding an as-yet-
undiscovered error.
Test Cases
Test cases are designed so that these maps with following functional
requirements of the system.
Req. No. R.1
Test Case
Identifier
Register user
Test
Location
E:/Document Editor/test cases/testR1
Features to be
tested:
Validation of User name,
Validation of the password and
User is login successfully or not.
Feature
Pass/Fail
Criteria
The test passes if the Home page is will be displayed
Means of
Control
DRIVER: Sign-in button is the driver class.
STUB: login is the stub class.
Data Input the User name=”sidrah”, password=”sidrah” and click on
Page 57 of 65
the Sign-In button.
Test
Procedure
The test started by clicking the test case at the specified location.
Login.aspx is opened
User Inputs the User name, password and click on the Sign-In
button.
Progress bar appears, after 10 seconds Login page appears
Special
Req.
The user should have a user name and password.
Req. No. R.2
Test Case
Identifier
Create Resume
Test
Location
E:/Document Editor/test cases/testR2
Features to be
tested:
Validation of user resume creation,
Validation of the data saved in data base
Feature
Pass/Fail
Criteria
The test passes if the message “data has been saved successfully
“ is will be displayed
Means of
Control
DRIVER: create resume button in the driver class.
STUB: login as applicant in the first page of i.e. basic information
Data Input user information includes basic information, objective,
career information and other related information.
Test
Procedure
The test started by clicking the test case at the specified location.
Create resume page will be opened
User Inputs the required information and clicks on the next page
and fills all the pages of resume then user can view and save its
resume by clicking these buttons.
Progress bar appears, after 10 seconds at every page appears
Special
Req.
The user should have to register first.
Req. No. R.3
Test Case
Identifier
Apply for the vacancy
Page 58 of 65
Test
Location
E:/Document Editor/test cases/testR3
Features to be
tested:
Validation of vacancy applying procedure,
Validation of the whether the vacancy is generated against
required job
Feature
Pass/Fail
Criteria
The test passes if the message “data has been saved successfully
“ is will be displayed
Means of
Control
DRIVER: generate vacancy button in the driver class.
STUB: vacancy generated page appear
Data Input vacancy information includes basic information, objective ,
criteria information and other related information.
Test
Procedure
The test started by clicking the test case at the specified location.
Create vacancy page will be opened
User Inputs the required information and clicks on the next page
and fills all the pages of requirements of the vacancy then user
can view and save its vacancy by clicking these view button.
Progress bar appears, after 10 seconds at every page appears
Special
Req.
The user should be a administrator.
Req. No. R.4
Test Case
Identifier
Change resume
Test
Location
E:/Document Editor/test cases/testR4
Features to be
tested:
Validation of edition of the resume,
Validation of the whether the resume can be modified and the
data in the database can be altered accordingly
Feature
Pass/Fail
Criteria
The test passes if the message “data has been saved successfully
“ is will be displayed
Means of
Control
DRIVER: Edit resume button in the driver class.
STUB: data has been saved page appear
Page 59 of 65
Data Input user information includes updated information, objective,
career information and other related information.
Test
Procedure
The test started by clicking the test case at the specified location.
Create resume page will be opened in edit mode
User changes the required information and clicks on the next
page and optionally edits all the pages of resume then user can
view and save its resume by clicking these buttons.
Progress bar appears, after 10 seconds at every page appears
Special
Req.
The user should have a resume r.
5.3 System Evaluation
Evaluation is the final step in the development of any system. Almost all the systems,
no matter how carefully designed and developed, still have a chance of logical or
runtime errors. That is why the system evaluation forms an important phase of the
software development process.
System evaluation involves whether the system meets the requirements stated in the
requirement analysis phase or not. Following table gives an indication whether the
functional and non-functional requirements match.
Following requirements are cleared
Register user
Create resume
Update resume
Create multiple resume
Built screening criteria
Online apply for vacancy
Strong and reliable database in sql server 2000
User friendly interface
Reporting engine
Reporting parser
5.4 System Limitations
Log on Dependent
Page 60 of 65
Every user must be log on and also registered in the network and user site
Privilege factor
System is presumed to be used on workstations controlled by restricted
administrative rights, so that clients cannot disable the see the hidden data on it.
.
Operating System
System is presumed to be used on Windows XP and Windows 2003 Server,
Windows 2000 and Windows NT Workstation 4.0 SP4 and later.
6 Risk Management
Risk Management
Risk# Risk Category Impact
1 Inability to meet the
dead line
Project risk critical
2 System Crash Product Risk critical
3 Lack of training on
new tools to be used
The
Development
Environment Risk
marginal
Risk Mitigation, Monitoring and Management Plan
Page 61 of 65
Risk#1
Mitigation
Schedule of each task to be done in the project will prepared and followed.
Monitoring
In following the “Spiral Model” more importance will be given to schedule risks.
Management
If in spite of all these efforts if I will be failed to meet the deadline then I will
throwaway prototypes made for modules not yet completed and made some
enhancement to them to integrate them with developed system.
Risk#2
Mitigation
I will make sure before starting the project that the system I am going to use is
virus free and its parts are not out of order.
Monitoring
System scan will be performed at the start and end of the day to ensure no virus
are present in system
Taking regular backup of project by the DBA(data base administrator)
Management
The backup taken during the monitoring plan will be used in case of system crash.
Risk#3
Mitigation
Online help will be use to master tool and technology
Manual ,books or documentation of tool helps a lot
Monitoring
I will purchase good books search the relevant material on the net.
Management
If the things go wrong I will be consulting with the some language and tool
professional.
Page 62 of 65
Project Management
Gantt chart:
When creating a software project schedule, the planner begins with a set of tasks. If
automated tools are used, the work break down is input as a task network or task out
line. Effort, duration and start date are then input for each task. As a consequence of
this input, a time line chart also called Gantt chart is created.
The Gantt chart for EOBSM is as follows:
Page 63 of 65
References
Page 64 of 65
[PRE04] Pressman R. S., “Software Engineering - A Practitioner’s Approach”, 5th Edition. McGraw Hill Inc.[OES05] Oestereich B., “Developing Software with UML- Object oriented analysis and design in practice”, Addison Wesley Publishing Company Inch.[SOM00] Sommerville I., “Software Engineering”, 5th Edition, Addison Wesley Publishing Company Inc.[MSDN02] Microsoft Developing Network Library, April 2002.[LAR00] Larman C., “Applying UML and Patterns – An Introduction To Object- Oriented Analysis And Design”, Prentice Hall PTR.[1] Documentation of MySQL [ULL01] Ullman L., “Php and MySQL” .Peachpit Press Techmedia[SCO00] Scollo Ch., “Professional PHP programming” WROX inc.[ARE00] Arehart ch., “Professional WAP” WROX inc.
1 Herb Schildt “The Complete Reference C#” Tata McGraw Publications2. Chris Payne “SAMS teach yourself ASP.Net in 21 days”, Publications.3. Powell, Thomas, ”The Complete Reference HTML”, 2nd Edition4. Jaworski, James “Mastering JavaScript and Jscript”, BPB Publication.5. Larman, Craig “Applying UML and Patterns – An Introduction To Object Oriented Analysis And Design”, Prentice Hall PTR.2000.6. Somerville, Ian (Lancaster University) (1998), “ Software Engineering”, 5th