Requirement Analysis Document For Recruitment Website
Requirement Analysis Document For Recruitment Website
Requirement Analysis Document For Recruitment Website
net/publication/283356983
CITATIONS READS
0 16,366
1 author:
SEE PROFILE
Some of the authors of this publication are also working on these related projects:
Security Risk Analysis Report for Smart Grid System View project
All content following this page was uploaded by Natnael Gonfa Berihun on 02 November 2015.
Requirements Engineering
Submitted By:
Amsal Woldeyes
Natnael Gonfa
5/31/2012
1. Department heads determine whether the vacant positions duties can be handled by the
existing regular employees and then initiate temporary employee requisition by specifying
need justification, and forward it for approval to hiring manager.
2. Employment of contract workers shall be carried out as per the delegation authority given
to Departments.
3. The company follows the same procedure as above (indefinite period recruitment
process) starting from number two (2) to six (6).
Employee Recruitment Management System Page 5
4. Recruitment Unit shall orient the recruiter the right and obligations stipulated in the
contract form. The contract form contains names of employee, duration of contract, job
title and place of work, task as per attached job description, salary and allowance, right
and obligation of employee, right and obligation of the corporation, termination of
contract, renewal of contract, compensation, and modification of contract and date of
contract.
5. Recruitment Unit shall prepare official acceptance letter and send it with the contract form
to administration office manager.
To identify the problems of the current system we use PIECES framework which is a checklist
for identifying the problems of the existing system. As the current business process is not
automated the company needs to cope up with the following set of problems.
Performance:
Poor time management: Often paper work is slow, which results delay on
client’s services and for the personnel processes of the company.
Response time: Delay in the preparation and distribution of personnel action.
For instance, preparation and distribution of personnel action for permanent
employment takes about eight (8) days.
Information:
Efficiency
The system produces inaccurate results: Once an error occurs in the input process
this error can affect all levels of the division.
The system produces inconsistent results: Inconsistency in decision making with
regard to employees.
Recruitment activities are prolonged for about two months since the existing system is
manual.
Delay in announcing notice for vacant positions.
Poor recording of requisitions.
Performance of work units is humped due to lack of programmed recruitment
activities.
3. The Context
3.1 Domain Properties
Effective and consistent recruitment practices are essential to ensure that all applicants are
treated fairly and with diversity and equality of opportunity and that costly recruitment
mistakes are avoided. The recruitment process must result in the selection of the most
suitable person for the job in respect of skills, experience and qualifications. This Policy
defines the principles that the Company considers important in the recruitment process and
aims to ensure that consistency and good practice is applied across the Company. The
Company policies are listed as follows:
3.2 Stakeholders
The stakeholders are anyone who benefits from the system or who have an interest in the
system. They may be affected by it either directly or indirectly. Stakeholders who will be
involved in this system and their role will be described as follows:
Recruitment Unit: - The primary function of the recruitment unit is to attract highly qualified
candidates to meet the organization need while providing equal opportunities for all. They
prepare job descriptions and personnel specifications, Post job vacancies, screens applicants,
devise and implement selection processes, conduct interviews and routes to hiring managers.
Department Heads: determine whether the vacant positions duties can be handled by the
existing regular employees and then initiate temporary employee requisition by specifying
need justification, and forward it for approval to hiring manager and notify to Recruitment
Unit on the performance of the employee before the probation period ends.
Managers: employees with high authority who make key decisions and run the company.
Hiring Managers: are employees who are responsible for making wise decisions on selecting
potential candidate by working together with recruitment unit.
Job Applicants: job seekers who are applying for a certain vacant position.
1. Recruitment unit
The main goal of this unit is to hire potential candidate and perform different
procedures which is effective related to hiring and can be shown diagrammatically as follows:
Requisition for the new candidate is one of the main goal of this position; pictorial
representation of this goal will be shown below.
The main goal of hiring manager is decision making and approval of the newly selected
candidate with certainty. Pictorial representation of this goal will be shown below.
The main goal of top managers is to manage reports and decisions which incorporate:
The main goal of applicants is getting vacancy information easily and the goal modeling
for this problem will be shown as follows.
Automation is required because time is very essential for stakeholders. Especially recruitment
staff wants to automate all tedious jobs like Preparing the job description and person
specification, Locating and developing the sources of required number and type of employees
(Advertising etc.), Short-listing and identifying the prospective employee with required
characteristics, arranging the interviews with the selected candidates, Conducting the
interview and decision making and etc. Automation also helps to reduce manual errors and
increase accuracy. Basically automation of short listing candidates and selecting the best
potential applicant that could help in achieving its goals are required. Management involves
speeding up recruitment procedures and improves overall management of applicant’s
records. Automating the system can be achieved by the following sub-alternatives:
Low cost :
The decrease in cost of the recruitment is extremely valuable for the company since it allows
spending the savings from the recruitment process to other activities.
Accuracy :
Accurate calculation is very much needed by the company to avoid unfair short listing and
final evaluation of employment process.
Availability of information :
Company wants to avoid delay of information regarding recruitment management when
requested.
Time saving :
Company wants to avoid wastage of time in hiring employees and processing of data. Thus
this criterion is essential to analyze the proposed alternative solutions.
Fairness of Selection:
An ineffective or biased working environment cannot only affect the managerial decision of the
company but could also hinder the output and progress of the business by taking wrong decision;
therefore it is very important for the company to make decisions based on facts.
Hire More (+) Hiring (--) Hiring more (+) By this (-) when the
employees additional staff member alternative the number of staff
employees reduce could have company can members increase
time on analyzing ongoing salary reduce errors unfairness might
data by dividing expense and but still as it is decrease
the tasks among paying a performed by somehow.
the assistants. qualified person human there
every month is could be error.
expensive.
Avoid decision
making under
uncertainty
Establish (-)To avoid (-) Establishing
reviewing uncertain decision, committee might
committee forming reviewing have a small
committee may amount of cost.
take several time.
Manage
Reports and
decisions
Stay with the (--)It is a time (+) As it is (--) As it is
current system consuming staying with the paper work
alternative as it is current system this alternative
based on the and it is already does not assure
current system in operation so that reports
which is that this system will be always
performed has no cost. available at
manually and hand when
tiresome. required.
Minimum cost Building in house product will Delegating Buying off-the- Using E-recruitment
also cost high if the other company shelf product might might not solve all the
developers/analysts could not to build the not fulfill all the needed procedures of
complete the project product will company needs and the hiring process hence
implementation on time. The also does not also it is expensive the company has to hire
maintenance of the software is cost high because the recruitment staffs in
low but the wages/salary costs initially but the maintenance/ addition to use this
will be high. maintenance customization and technology, therefore it
will cost high. licensing per year is costly.
might cost too high
Time saving This alternative also saves time Time-saving, as This alternative Time saving alternative
as any analysis of data is done any kind of saves time of as it is internet based it
by the software. analysis which recruiting process process under good
could be because analyses internet connection
analyzed with are done by the condition.
the system are software.
done by the
software.
1. Economic Feasibility:
Economic feasibility or cost benefit analysis helps the company to determine the benefit and
savings that are expected from the proposed system and compare it with the cost the
company incurs.
Costs: This alternative uses different resources; mainly manual process requires more staff
members and the operation is totally based on paper work. The company could go through
different steps to perform the recruitment and selection process since the tasks are done
manually, therefore it costs a lot.
Benefit: The Company does not gain any benefit from the current system instead it loses a lot
of money due to inaccurate information; hire unqualified staff, loss of data, lack of ease of
accessibility of data.
Cost-benefit Analysis: The amount of money they lose in 6 years is Є 332,575.86 assuming
that a company hires one employee per year which is not feasible economically.
Cost: Choosing this alternative is better than the first one but it is still expensive for the
company since the salary of the newly recruited Staff is an additional cost for the company.
Benefit: this alternative can improve some of the processes in recruitment and selection
process such as attracting candidates, screening, interviewing but still does not alleviate the
problem of accuracy since it is still handled by human.
Alternative 3 Automation: under this alternative there are four sub alternatives.
Cost: The main rationale for buying software is lower initial costs and a reduced time to
deployment. Ongoing per user licensing and maintenance costs until retirement may make
COTS (commercial off the shelf) a very expensive option over the long term.
Benefit: this alternative saves management time and increase accuracy of selection of
candidates and it assures the fairness of the selection.
Cost Benefit Analysis: The Return on Investment (ROI) for 6 years will be 40% and the
payback period for this alternative is approximately 5.5 years.
Cost: The cost for this alternative includes labor, administrative and maintenance costs and
which is less than the cost of alternative 3.1.
Benefit: using this alternative will give more benefit than the above alternative.
Cost Benefit Analysis: The Return on Investment for 6 years will be 70% and the payback
period is 2.9 years.
Cost: The costs involved in this alternative are the same with alternative 3.2 except the
contract cost and maintenance cost.
Benefit: Benefit of this alternative is slightly less than from alternative 3.2.
Cost-Benefit Analysis: The Return on Investment for 6 years will be 48% and the payback
period is approximately 6 month which is shortest of all but it does not satisfy all the
requirements of the company.
Cost: It is one form of automation using internet technology but it is not the same as other
automation alternatives basically both applicants and the company communicate through
internet for receiving candidate documents, interviewing candidate, giving exam, screening
and this all are done by the criteria which is set manually first or by paying for other jobsites
for posting the vacancy.
Benefit: The benefit for this alternative is higher than alternative 1 and 2 but less than other
alternatives.
2. Technical Feasibility
Technical feasibility detects the technology and the resource required by the system is
available or not. We check whether our alternatives are feasible in terms of the current
technology and manpower needed for the company.
The first two alternatives are not technically feasible because it is a manual recruitment
management system in which there is no application of technology and recruitment staff
needs not to be a technical expert because of this reasons the two alternatives are given a
score of 35%.
The other four alternatives use the current latest technologies which is matured enough and
highly available. Company does not need in-house expertise if it buys off the shelf product. So
for this reason score 90% is assigned for this alternative. The company allocates enough
expertise for alternative 3.2 so we give 95% score and for Alternative 3.3 we give 90% score
since the company will outsourced all or parts of the recruitment tasks to an outside service
body. And lastly for alternative 3.4 it is assigned a score of 85% since the company can use for
example his own website for advertising the vacancy or other job sites.
3. Operational Feasibility
Operational Feasibility emphasize on the issues like whether the current system or the system
to be developed will be used by the company staff members.
Alternative 1
The current system used by the company is time consuming and error prone and not effective
as stated in the problem of the existing system. So it makes it Operationally Infeasible and
assigned a score of 35%.
Hiring more recruitment staff reduces the workload for staff members but still problems like
accuracy and error still persists. So it makes it operationally infeasible and assigned a score of
40%.
Alternative 3
Automating the system comes with the benefit from operation perspective in which it reduce
cost of hiring, saves management time, gives accurate and fair selection of high qualified
candidates. Alternative 3.1, 3.2, 3.3 and 3.4 assigned a rank of 80%, 90%, 75%, and 70%
respectively.
4. Schedule Feasibility
Alternative 1: Staying with the current system does not require any time so it is assigned a
score of 100%.
Alternative 2: Hiring more recruitment staff can take up to 1 month duration. Based on this
fact this alternative is assigned a score of 80%.
Description Wt Stay with Hire More Buy off Build in Use Use E-
the Recruitment the shelf house Recruitment Recruitment
current Staff product customizable Process
system software Outsourcing
Economic 30% Score: 30 Score: 40 Score: 70 Score: 80 Score: 70 Score: 75
Feasibility See See Appendix See See Appendix See Appendix
Detailed Appendix A Appendix A See Appendix A
calculations A A A
Cost Є Є 136,816.20 Є Є 188,761.80 Є 197,839.43 Є 97,096.00
Incurred 98,365.43 191,138.11
Payback NA NA 5.5 year 2.9 year 6 month 2.5 year
Period
ROI: - - 40% 70% 48% 64%
Technical 30% 35 35 90 95 90 85
Feasibility
Operational 30% 35 40 80 90 75 70
Feasibility
Schedule 10% 100 80 100 70 75 70
feasibility
Total 100% 40 42.5 82 86.5 78 76
Ranking:
Table 2 Feasibility Analysis Matrix
4.4 Recommendation
All possible alternatives for solving the problem of the company were analyzed to choose the
better one. We conduct feasibility study for choosing the best alternative. Among the
alternatives at hand, automating the current recruitment and selection process brought
significant benefits while the others failed to do so. Some of the benefits are better time
management, reduce cost of hiring, selecting the best qualified candidate and fast report
generation etc. Thus we recommend the company to choose Alternative 3 i.e. automating the
system. And considering the score of each alternative, the best possible automated solution
will be Alternative 3.2 which is to build In-house customizable software.
The major task and responsibility of the recruitment unit is to hire best candidates to the
company. Therefore in order to satisfy the strategic goal (Select best candidate), the following
tactical goals should be satisfied:
Applicant registration should be made
The system will filter out short listed candidates according to the criteria set.
update the entire assessment process
Notify list of short listed candidates for hiring manager
Send e-mail to all shortlisted candidates. And the two tactical goals “retrieve short
listed candidates” and “update assessment process” has positive contribution to
the strategic goal select best candidate.
There should be some means of advertisement to get registered for best competitive
applicants who meet all the requirements of the position posted, thus the recruitment unit
should prepare a well-organized vacancy announcement which contains the needed
professional skill, experiences, certificates, special skills and some other requirements
depending on the nature of the vacant position and post the vacancy on the company website.
Hence the tactical goal called “Applicant registration” achieved by the three tactical goals such
as person specification, job description and post vacancy. The post vacancy tactical goal has a
positive contribution to the applicant’s strategic goal called “Get vacancy information”.
Selecting best candidate using system has a positive contribution to strategic goal “Avoid
Decision Making under Uncertainty”.
Departments request candidates when there is a vacant position within the department.
Before requesting a new candidate the department head should do the following checking’s:
1. Can the existing working employees handle the activities of the vacant position?
2. Is there any means to merge the vacant position with other similar activities?
And when the department head quite sure about the need for a new employee to cover the
vacant position, therefore in order to achieve the strategic goal “request for new candidate”
the department head sends employee requisition to hiring manager for approval. Here
checking whether the vacant position can be handled by the existing employees and sending
requisition are two tactical goals which satisfy the achievement of “request for new
candidate” strategic goal. To send request to the hiring manager the department head should
specify need justification or do nothing if the problem is visible. Specifying need justification
tactical goal fulfills “send requisition to hiring manager for approval” tactical goal. To check
whether the vacant position duties can be fulfilled by the existing employees the department
head can view reports to see the workloads of the employees,” View work load report” tactical
goal achieved by two tactical goals such as “select report criteria” and “generate report” in
order to have clear idea about how employees are overloaded.
After candidates are selected and approved by the hiring manager, hiring manager
should recommend candidates in order to get approval from top manager.
Top managers view notification in order to be informed about the recruitment
process as well as review recruitment. And they can see selection report based on
different criterion to know how the recruitment process has been processed.
This is the responsibility of hiring managers to make the best decision while hiring
candidates for the company. Decision-making is a distinctly human activity but there might be
corruption since the hiring process is performed by several employees who are working on
recruitment process. In order to avoid decisions which arrive at a solution that ends
uncertainty or dispute we use automated system which could avoid decision making under
uncertainty. These enhancements to the decision making process will enable people to make
better decisions in less time and with lower costs. To achieve the strategic goal called “Make
decision on selected candidates” the hiring manager should view report about recruitment
process, view final ranking, prepare minute and recommend candidates for approval, thus
recommendation will be send to top managers through notification and those activities are
tactical goals that supports the decision making. “Prepare minute” and “recommend
candidates for approval” tactical goals have positive contribution to strategic goal called
“manage reports and decisions” by top managers.
Figure 10 Tactical Goal Model for Avoid decision making under uncertainty
Applicants get vacancy information through the company’s website; to achieve the strategic
goal (Get vacancy information) an applicant should do the following activities or in other
word should satisfy the following tactical goals.
In order to get vacancy information an applicant has to search job and view available
vacancies, thus the two tactical goals “search job” and “view available vacancy” has positive
contribution to strategic goal “Get vacancy information”.
Get vacancy information using system strategic goal has a positive contribution to get hired
goal .Before getting hired an applicant has to do the following tasks:
Actors: Applicant
Normal Flow: 1. The user selects create Applicant option from main
page.
2. The system displays create application page.
3. The user fills all necessary information and asks the
system to save.
4. The system validates the entry.
5. The system saves the entry.
Post conditions: Applicant information is added.
Description: This use case is used to update candidate status for those who have
been passed the exam and to add additional information.
Trigger: Candidate accepts the offer
Normal Flow: 1. The user selects Edit candidate option from main page.
2. The system displays all the information.
3. The user modifies the data.
4. The user selects update option.
5. The system validates the entry.
6. The system updates the entry.
Post conditions: Candidate full information is added.
Frequency of Use: Some times when vacancy is posted and a candidate is selected to
be an employee.
Description: In this use case the recruitment unit can retrieve and view
short list of candidate who have fulfilled the given criteria.
Trigger:
Normal Flow: 1. The user selects retrieve short listed candidates option
2. The system display list of criteria with their corresponding
information.
3. The user selects criterion from list of criteria displayed.
4. The user selects View short listed candidates’ option.
5. The system displays list of short listed candidates.
Post conditions: List of short listed candidates will be displayed.
Alternative Flows:
Description: This use case is used to update the whole interview and
examination results of shortlisted candidates.
Trigger:
Normal Flow: 1. The user selects View short listed candidates’ option from
main page.
2. The system displays view page together with list of job.
3. The user selects a job from the list and select view option.
4. The system displays list of short listed applicants.
5. The user selects applicant’s name.
6. The system displays all the applicants’ info.
7. The user selects edit option.
8. The system displays the editable form.
9. The user modifies some of the applicants’ data and selects
update option.
10. The system validates the entry.
11. The system updates the data and displays a confirmation
message.
Post conditions: Short-listed Candidates info updated.
Description: This use case is used to view final ranking of short listed candidates.
Trigger:
Normal Flow: 1. The user selects View short listed candidate’s option from
main page.
2. The system displays view page together with list of jobs.
3. The user selects a specific job from the list and selects rank
candidates option.
4. The system displays names of candidates in a rank.
Alternative Flows:
Description: In this use case the recruitment unit prepares person specification for
the vacancy post.
Trigger:
Normal Flow: 1. The user selects person specification option from main page.
2. The system displays person specification page
3. The user fills the form and selects save option.
4. The system validates the entry.
5. The system saves the entry and displays a confirmation
message
Post conditions: Person specification information is added.
Alternative flow2
Description: This use case is used to prepare job descriptions, which will be
the responsibility of the would be employee
Trigger:
Normal Flow: 1. The user selects Job Description option from main page.
2. The system displays Job Description page
3. The user fills the form and selects save option.
4. The system validates the entry.
5. The system saves the entry and displays a confirmation
message
Alternative flow2
7.2.1. The user selects edit option from job description page.
7.2.1.1. The system display list of jobs with their
corresponding information,
7.2.1.2. The user selects job from list of jobs displayed.
7.2.1.3. The system populates selected job data on the job
description page.
7.2.1.4. The user modifies job description data.
7.2.1.5. The user selects update option.
7.2.1.6. The system validates the entry.
7.2.1.7. The system updates the data.
7.2.1.6.1. The entry is not valid
7.2.1.6.1.1. The system displays error message
7.2.1.6.1.2. The user corrects the entry.
Description: This use case is used to notify and congratulate the shortlisted
candidates and to address the reporting date and time. To accept the
company offers the candidate should report in person. Also
notification as a form of report is generated for managers about
these new candidates so that the top management will take the matter
into hand and take measures.
Trigger:
Normal Flow: 1. The user selects View short listed candidates’ option from
main page.
2. The system displays view page together with list of job.
3. The user selects a job from the list and select rank candidates’
option.
4. The system displays names of candidates in a rank
5. The user selects the candidates to be notified and selects notify
option.
6. The system send e-mail to the selected candidates and displays
a confirmation message
Alternative Flows:
Description: This use case used to inform hiring manager about the selection
result and let him to approve or disapprove the selection.
Trigger:
Normal Flow: 1. The user selects View final ranked candidates’ option from
main page.
2. The system displays view page together with list of job.
3. The user selects rank candidates option.
4. The system displays names of candidates in a rank
5. The user selects the top needed candidates from the list and
select notify option.
6. The system sends notification to hiring manager and displays a
confirmation message
Post conditions: List of candidates has been notified to hiring managers.
Alternative Flows:
Normal Flow: 1. The user selects Report option from main page.
2. The system displays reporting page.
3. The user selects reporting criteria’s and selects show option.
4. The system validates the entry.
5. The system display reports.
Post conditions: Hiring managers have seen reports.
Alternative Flows:
Frequency of Use: Sometimes, if there is vacancy post and the recruitment process ends.
Description: This use case is used to take notes about the held recruitment
process and that would be used as a report by the top
managers to make decisions.
Trigger:
Normal Flow: 1. The user selects Prepare Minute option from main page.
2. The system displays Minute page.
3. The user fills all necessary information and selects save
option.
4. The system validates the entry.
5. The system saves the entry.
Post conditions: Minute is added.
Alternative2
Trigger:
Normal Flow: 1. The user selects View short listed candidates’ option from
main page.
2. The system displays view page together with list of job.
3. The user selects a job from the list and selects rank
candidates option.
4. The system displays names of candidates in a rank
5. The user selects the top needed candidates from the list
Alternative Flows:
Normal Flow: 1. The user selects show recommended candidates option from
main page.
2. The system displays recommended candidates page.
3. The user selects job from the list and selects show
recommended candidates option.
4. The system displays list of candidates.
5. The user selects the confirmation option.
6. The system sends the data and display a confirmation
message.
Post conditions: Top managers approve recommended candidates.
Description: This use case is used for top managers to see notifications that
are sent from hiring manager.
Trigger:
Normal Flow: 1. The user selects View Notification option from main page.
2. The system displays Notification page.
3. The user selects notifications from the list and selects show
option.
4. The system displays notifications.
Alternative Flows:
Actors: Applicant
Description: This use case used to search jobs to find job listings based on
some criteria set which is performed by the applicants on the
company website.
Normal Flow: 1. The user selects List all vacancies option from main page of
company’s website.
2. The system displays list of currently available vacancies.
3. The user selects based on his interest and select view detail
option.
4. The system displays detail information.
Alternative Flows:
Actors: Applicant
Description: This use case is used to apply job for those who are qualified and
fulfill the criteria set on the vacancy post. Here basic information,
full name and address of an applicant shall be registered.
Trigger: After completion of account creation or logged in.
Normal Flow: 1. The user selects show vacancy option from main page of
company’s website.
2. The system displays list of currently available vacancies.
3. The user selects based on his interest and selects view detail
option.
4. The system displays detail information and an apply option.
5. The user selects the apply option.
6. The system displays a form to be filled by the user
7. The user fills all the information and selects save option
8. The system validates the entry.
9. The system saves the entry and displays a confirmation
message
Post conditions: Job application has been be made.
Description: This use case is used to inform top managers about the
finalized recruitment process.
Normal Flow: 1. The user selects Send Notification option from main page.
2. The system displays Notification page.
3. The system displays a form to be filled by the user
4. The user fills the form and selects notify option.
5. The system validates the entry.
6. The system saves the entry and displays a confirmation
message.
Post conditions: Notification has been sent.
Actors: Applicant
Description: This use case is used for applicants to view the status of their
application process on the web.
Normal Flow: 1. The user selects job result option from main page.
2. The system displays view job result page.
3. The user selects jobs from the list and selects show result
option.
4. The system displays list of applicants passed and list of
applicants failed for that position.
Alternative Flows:
Description: The top manager and department head needs to view reports
on recruitment activity based on different criteria.
Normal Flow: 1. The user selects Report option from main page.
2. The system displays reporting page.
3. The user selects reporting criteria’s and selects generate
option.
4. The system validates the entry.
5. The system display reports.
Post conditions: Reports have been seen.
Description: This use case is used for the department head when he/she
has to justify why additional human resource is needed for the
company.
Trigger:
Normal Flow: 1. The user selects Justification option from main page.
2. The system displays Justification page.
3. The user fills notes.
4. The system validates the entry.
5. The system saves the note and displays confirmation
message.
Post conditions: Justification has been saved.
Class diagram describes the structure of a system by showing the system's classes, their
attributes, operations (or methods), and the relationships among the classes. The classes in a
class diagram represent both the main objects and or interactions in the application and the
objects to be programmed. Bellow, the association among classes and their attribute and
operations will be discussed.
Candidate class: This class contains basic information of an applicant. The major attributes
are name, status and email. The methods that are hold by this class are:
selectResume() this method is used to select good resumes from group of resumes that
have been uploaded using some criteria set.
announce() method is used to announce the status of the candidates.
viewApplicant() This method allow to view candidates who are interested to the
application.
Job Post Class: The main attributes of this class are category, JobDescription,
numberOfCandidate and jobName and this class contains detail information of job post. The
methods contained in this class are:
getJobList() This method is used to show list of jobs which are posted.
insertJob() In this method available jobs will be inserted.
updateJobList() In this method some modification can be made.
Contact Info Class: this class holds contact information and has a relationship with Candidate
class; the attributes are address, phone and E-mail. The method contained by this class is
getAddress() which is used to get address of a candidate.
Department: This class contains department information. The attributes which is included in
this class is deptName, the methods contained in this class are:
Criteria: This class contains attributes such as qualification, cgpa and serviceYear in addition
it contains a method called getListOfCriteria() which allows to see list of criteria’s in order to
help applicants to know the required criteria’s or qualifications.
Top Managers: In this class three methods are contained which are:
Application: This class is an association class of candidate and Job post. In this class one
method isSelectedCandidate() and two attributes (hireDate and terminationDate) are
included.
Exam and Interview Result: This class contains two attributes called examCode and
examResult and One method which is updateExamResult().
1. Department for each instances of the class Department, deptName of the department
must be unique.
2. Candidate for each instances of the class Candidate, email of the candidate must be
unique.
3. Before registering a candidate, the candidate must not exist in the system.
context c: Candidate:: RegisterCandidate(name,surname,email,address)
pre : c.allInstances() -> forAll(c1 | c1. email <> email)
post : c.allInstances() -> includes(self)
5. Before registering a candidate, a job specification and job description must exist in the
system.
N.B: This sequence diagram is needed when the recruitment unit wants to update the
assessment process.
The recruitment unit wants to update the assessment process and selects job list
option.
The system provides list of job information using getJobList() method.
The recruitment unit selects a job from the list.
The system displays list of candidate’s assessment information.
The recruitment unit modifies the specific candidate’s assessment data and selects
update option.
The system validates the data.
The system updates the candidate information using updateCandidateInfo()
method and displays confirmation message.
N.B: This sequence diagram is needed when the recruitment unit wants to register job
description.
The recruitment unit wants to add a new job description, fill the job description
information and select add option.
The system validates the data.
The system saves the new job description using insertJob()method and displays a
confirmation message.
N.B: This sequence diagram is needed when the recruitment unit wants to register
person specification.
The recruitment unit wants to register a new person specification, enters person
specification information and selects add option.
The system validates the data.
The system saves the person specification using insertCriteria() method and
displays a confirmation message.
The user wants to view a recruitment report and selects view report option.
The system provides list of criteria using getListofCriteria() method.
The user selects criteria.
The system displays the specific report for the given criteria.
The following state machine diagram depicts the various states that an applicant may be in
and the transitions between those states starting from application submission until he/she
passed the final Interview or becomes an employee.
All interested applicants submit their application when the application is opened.
After screening took place the applicants would be on the state called short listed
candidates who are qualified.
After they completed the interview and/or examination they shall be on the state of
waiting for the final result.
If the applicants passed the interview they will be an employee of the company, if they
failed they will be on the state of unqualified, qualified candidates might not be chosen
because of the limitation in number of required candidates.
Activity diagrams enable you to depict both the basic course of action as well as the alternate
courses. The following activity diagram illustrates the whole activity that is done during the
hiring process. In the activity diagram we tried to show the whole activities that are
performed throughout the recruitment process.
The diagram illustrates different steps that will be performed in the recruitment process,
which will be discussed below.
In the beginning if a user is registered he/she can log in and access the job information
by entering his/her registration id; otherwise he/she must be registered as a new
applicant.
After logged in an applicant can search a job.
If the registered user found a convenient job, he/she can apply for it.
The recruitment unit is responsible to post jobs on web and follow what the applicants
do. And to check the status of the posted jobs.
After the recruitment unit notices that there are enough candidates to start the
selection, then the official selection process will be started.
After the selection processes have been made, the recruitment unit set interview for
the selected candidates; those who are not selected can see their status.
Those applicants who passed the interview will be approved by the top managers but
those who did not pass receive an e-mail or can see their status on the web.
After approval the selected candidates shall be announced or congratulated by e-mail.
In the beginning before any job gets posted there should be the need for human
resource.
If there is a need or extra task the department head has to be sure whether they should
hire a new candidate or not thus he shall check performance and work load.
After the checking’s(whether the work could be handled by the existing employees or
not) made , if the job could be handled by the existing employees the department head
assigns the corresponding task to the free employee/s, if not he request for the new
candidate.
After the requisition hiring manager checks whether the request is appropriate or not,
if it is inappropriate, he/she rejects the requisition, if not he Approve.
After approval of hiring manager recruitment unit shall process the selection.
Finally the candidate shall be hired.
CR1. The proposed system to be developed is a web based application with client/server
architecture. The system will be deployed in a server machine to be accessed by the client
machines of the company connected in an intranet network.
CR2. A technical person is required to administer the system, manage database backup and
manage errors which might occur.
CR3. The top managers have to check notifications every time, since requisition is asked
through notifications.
1. Notifying candidates through email or post on the website to inform their screening
and final result is based on the assumption that they check their e-mail as well as visit
the website regularly.
2. Notifying top managers through email or using the system is based on the assumption
that he/she checks the e-mail or use the system regularly.
3. First screening is Performed based upon the assumption that applicants upload their
resume and other documentation accurately and the data obtained from there is
accurately entered to identify the discrepancies. This is important because screening
once finalized cannot be reverted.
Selecting candidate
FR6 The system shall use a dynamic screening system that allows accurate real-time
analysis of how much applicant should be selected, based on the needed
number of applicant.
FR7 The system should rank candidates based on the criteria set.
FR8 The system should be flexible to set criteria’s based on the company interest.
FR12 The system should provide candidates information to update the assessment
result.
FR13 The system shall provide a form to add applicants’ interview and exam result
after the manual assessment has been made.
FR14 The system should save the data filled by the recruitment unit.
FR15 The system shall add results based on the recruitment unit interest and rank
applicants in ordered manner.
FR16 The system should display ranked candidates in a list.
FR17 The system should accept criteria as an input to make the final ranking.
FR18 The system should provide detail information when one needs to see detail
about a single applicant.
FR19 The system should provide a form to be filled by the recruitment unit.
FR20 The system should save the data to the database.
FR21 The system should have a way to identify which person specification is for
which job type.
FR22 The system should have a way to check the validity of the data to be saved.
FR23 The system should provide a form to be filled by the recruitment unit. The data
to be filled is information about the requirement of the job. All necessary
informations must be catched in a database.
FR24 The system should display detail job description when an applicant wants to
see.
Notify candidates
FR25 The system shall notify all candidates by generating automatic e-mail.
FR26 The system should save e-mails of candidates.
FR27 The system should identify the candidates who need notification.
FR28 The system shall distinguish hiring managers from other system users and send
notification message.
FR29 The system shall provide list of candidates’ together with the respective full
information.
FR30 The system shall allow users to view any notes attached during notifying hiring
managers.
View Report
FR31 The system shall offer user to enter job code to view the report for every jobs
recorded.
FR32 The system shall display report for all jobs posted if user prefers to see.
FR33 The system shall offer user various options like viewing jobs whose status is on
progress, finalized, or in any recruitment stage.
FR34 The system shall provide report about the newly hired employees.
FR35 The system shall have a feature to print any form of reports.
Prepare Minute
FR36 The system should offer the user a minute registration page whenever the user
wants to add to it.
FR37 The system shall offer the user to view registered minutes.
FR38 The system shall allow user to edit registered minutes any time the user
wanted.
FR41 The system shall list candidates in a rank when a user wants to view
recommended candidates.
FR42 The system shall also show candidates basic info (name, result, etc.) for a user
to help him decide during the approval process.
View Notification
FR43 The system should have a view option for the user to see any notifications sent.
FR44 The system shall provide several view options ( view notifications in group, or a
single notification )
Search Job
FR45 The system shall provide a search facility for a user.
FR46 The system should display a search result.
FR47 The system shall incorporate several search criteria’s to make the searching
activity more user- friendly.
Send Notification
FR52 The system shall send notification automatically through e-mail.
FR53 The system should have a default notification message.
See Status
FR54 The system shall provide applicants status info when a user requests status
info.
FR55 The system should have a status change notification to the user.
1. Usability
The system shall have a clean interface with only The system’s functionality can be tested by layman
needed features, clear terminology and tool tips who didn’t develop the system; and those persons
wherever necessary. Warnings or alerts shall be have a contribution for the system to be approved or
specified in clear way. rejected. In this way, it can be known whether the
system is easy to use or not.
More than one type of user can use the Check the speed with which user can apply for a job,
system at a time, specifically an applicant or use any other functionality offered by the system.
and the recruitment unit can use the The new user interface design shall increase the speed
system at the same time. with which users can apply and upload his/her
There is no need of training to use the documents by some amount of percent.
system. Someone who has basic computer A person with minimum computer skill can learn to
knowledge can open the page and apply use the job application page in a short period of time.
for jobs. Navigation among pages should be done in no effort.
The system is easy to learn because there
are several types of users having different
system usage capability.
The system shall protect users not to make
any errors during filling application forms
and making decisions.
The navigation labels shall be explanatory
so that anyone can understand easily.
2. Efficiency
2.1. Performance Testing must be done on different machines with
The system shall respond to different different capabilities in order to check the response
searches being conducted like searching time of the system.
particular job, search applicant, etc. in a The system shall respond to search requests within 2
very fast way. seconds while handling up to 50 transactions per
The system shall generate the report in second for eight hours.
less time. The reports should be generated within 1-2 minutes.
The system shall rank candidates in In case if the data file is too large then the system
reasonable amount of time. should take no more than 5-6 minutes.
The job announcement must be updated in The maximum data upload limit will be 4M when an
Employee Recruitment Management System Page 80
real time. applicant tries to upload related documents.
The system shall respond confirmation The system response time shall not exceed 10 seconds
message in lesser time after an applicant’s to confirm a data is saved.
saved their data.
The system shall accept a big size of data’s
especially when a user wants to upload
documents like curriculum vitae.
3. Interoperability
The system shall be able to interact with other Check whether the figures obtained after exporting of
systems. The system should able to be supported information to some of the software (budget
at least one software which has a relationship with analyzing) is accurate or not.
recruitment process. The system have some functionalities (job application
page) shall be accessed from another system.
4. Portability
The system shall be independent of the specific Check whether the system runs well on different
technological platform used to implement it. platforms like Linux, Microsoft Windows (x86, x86-
64), Mac OS X (PowerPC, x86, x86-64) etc.
5. Security
The system shall have a full permissions system, There should be no complaints regarding the
allowing each user’s access to functions to be unauthorized use of the system.
controlled. The log information should display all significant user
A user log shall be maintained allowing an audit of interactions.
which user performed which actions. When there is a report of unauthorized usage of
A user access to any data or the system itself shall system resources (for instance if someone access the
be controlled. recruitment unit role and send notification to
The physical security shall be maintained. applicants) the system shall provide a way to trace it.
The system should be physically secured.
6. Documentation
The system shall provide context sensitive help There should not be any complaints or doubts related
that takes the user to the specific help topic to using system features.
related to their present screen. The system shall All system users shall access the system satisfactorily.
have a demo version available. Documentation should be available when one wants
The system shall provide user specific to refer.
documentation.
The documents shall address the following system
users:
1. Applicants
2. Recruitment unit
3. Hiring managers
7. Manageability
7.1. Automatic Backup : System back Do some cyclic redundancy checks or md5 check of
shall be maintained by system the data file, and then back up the data file. Then
administers and the system shall restore the backed up data file and do md5 checksum
provide automatic backup options on restored data file and check whether the data on
restored file is correct or not.
7.2. Mistake Tolerance: The system shall
The backup file shall be checked (weather it is
allow easy recovery from errors corrupted file or not) every time.
like allowing merging of duplicate There should not be any duplicate entries of same
entry of same applicant item in an applicant’s info or while creating new
information; the system shall have application.
data update mechanism until The administer should have a capability to admin
8. Reliability
Reliability defined as a measure of the time Check whether there is any critical failure for a
between failures occurring in a system (measures consecutive 72 hour period when heavy operations
how frequently the system fails), so that the being carried out.
system shall operate without any failure for a
particular period of time. The system shall not allow unauthorized personnel to
Users expect the system to be reliable access to the data.
which means applicant’s information
registered yesterday in the system shall be
there today.
Accuracy is part of the sense of reliability –
the system checks and reports must be
mathematically correct, including ranking
candidates.
9. Availability
Availability measures the percentage of time the There should not be any complainant regarding the
system is in its operational state so that the system availability of the system. The system should be
shall be available for use 24 hours per day and 365 capable of serving its intended function.
days per year. The system shall be available 24/7 and 365/year.
The system shall manage Input errors while a Input validation has to be performed in detail
user fills application form. in order to notify each and specific errors occur
while a user is filling forms.
The system shall have a way to notify the When a system faces extreme conditions like
system administers when an extreme accessing a big data or uploading a big file or
conditions happens. any other conditions there must be a way to
notify the condition to the user.
Figure 29 Cost Benefit Analysis for buying off the shelf product