Test 1 - SemTest1 MEMO
Test 1 - SemTest1 MEMO
INFORMATICS 271
SEMESTER TEST 1 DATE: 31 August 2020
1 5
2 6
3 6
4 10
5 12
6 11
Total 50
"The University of Pretoria commits itself to produce academic work of integrity. I affirm that I am aware of
and have read the Rules and Policies of the University, more specifically the Disciplinary Procedure and the
Tests and Examinations Rules, which prohibit any unethical, dishonest or improper conduct during tests,
assignments, examinations and/or any other forms of assessment. I am aware that no student or any other
person may assist or attempt to assist another student, or obtain help, or attempt to obtain help from another
student or any other person during tests, assessments, assignments, examinations and/or any other forms of
assessment."
The system Virtual Hire would like to have: Virtual Hire would like a system that will allow a
company to post their job listing online. The company representative must apply to register
their company at Virtual Hire by completing the online application form, indicating their
company details (registered name of company, industry they operate in, representative
name, surname and contact details etc). A Virtual Hire manager will at the start of every day
check for new company applications by viewing all the company applications with an
“applied” status. He will then peruse every application and accept/reject it. The system will
then update the company’s application status to “accepted” or “rejected”. The company’s
representative will then be notified accordingly. If the company’s application was successful,
the company’s representative will login to the system (with details obtained through the
registration process) and proceed to add job listings by specifying the type of job, the annual
salary, the work hours, the type of contract (full time or contract), job location etc. The job
listing will then have an “available” status. The company’s representative can maintain job
listings at any time.
Potential job seekers need to register a profile on the system before they will be allowed to
browse through the available job listings. This profile can be updated at any given time.
During the registration process potential job seekers will input name, surname, contact
number, email address and upload their CV. They will be able to search available jobs by
filtering according to the type of job, the type of contract and the location of the job
offerings. At any given time, job applicants can draw a report detailing all the jobs available
in their preferred location(s). They have options to save jobs (to view later), add an alert for
similar jobs (for future postings) or they can apply for the job. Once they apply for a job, the
Virtual Hire manager will receive an alert which will prompt him to do a credit and criminal
check on the applicant through a third party system. Once he receives feedback on the
credit and criminal check, the Virtual Hire manager will approve/reject the job application
by updating the status of the application status to “approved’ or “rejected”. A message will
then be sent to the company that posted the job listing, alerting them of the new
application.
The company that posted the job listing will be able to view all the applicants who applied
for their specific job listings. They will then desk accept/reject applications whereupon an
applicant will be notified. If an applicant passed the desk review stage, the company will use
the system to invite the applicant for an interview. After the interview, the company will log
into the system to indicate whether the applicant is invited to the next round of interviews;
was unsuccessful; or was successful by updating the job application status to “next round”
or “unsuccessful” or “successful. The job applicant is informed accordingly. When the job
application status is changed to “successful”, the applicant can use the system to
accept/reject the job offer and the company representative will be informed accordingly
and the job listing status will be updated. If an applicant was successful, Virtual Hire will
charge the company with a “success fee” for successfully hiring an applicant through the
Virtual Hire system by generating an invoice and sending it to the relevant company. This is
calculated by identifying the job listings with an “accepted” status and checking to see if the
specific job listing has been invoiced. If not, the system will multiply the latest service fee
percentage with the job listing’s annual salary. The system will then update the job listing
status to indicate that the job listing has been “invoiced”. Companies will then be able to
login to the system to pay a success fee using a third party system whereupon the Virtual
Hire Manager is informed. As soon as confirmation of payment has been received, the
system will update the job listing “paid” status. The system will save the date at which each
job listing status change. At the end of each month the Virtual Hire Manager receives a
Monthly status report detailing the number of Company Profile Registrations, Job Applicant
Registrations and Successful Hire transactions.
2. Consider the Zachman Framework and analyse the case study on the Contextual level. If the
“Who” communication level is Company Representative, indicate the other five
communication levels. Specify at least two aspects per communication level. (5)
(Contextual)
Scope Company Job listing Online send job Anytim For Virtual Hire
Planner Representatives Company listings e to market the
details job listings
3. Consider the Zachman Framework and analyse the case study on the Contextual level. If the
“Who” communication level is Virtual Hire Manager, indicate the other five communication
levels. Specify at least two aspects per communication level. (5)
(10 x ½ =5)
(Contextual)
Scope
Planner Virtual Hire Job listing Email receive job Anytim post the details
employees/manager listings e on a static
website for
potential
applicants to
view
For companies to
provide available
jobs and for
potential
applicants to find
jobs to apply to
4. Consider the Zachman Framework and analyse the case study on the Contextual level. If the
“Who” communication level is a Potential Applicant, indicate the other five communication
levels. Specify at least two aspects per communication level. (5)
(10 x ½ =5)
5. From the Virtual Hire Case Study, identify and explain 2 (two) problems and 3 (three)
opportunities from the “current scenario”. (5)
(1 mark each for any 2 problems and 3 opportunities)
Problems Opportunities
The current website is static, that means Virtual Hire can have a more modern and
updating the content on the website might be a dynamic website since they currently have a
bit hard. static website.
Whenever companies want their job lists to be Virtual Hire can have job listing newsfeed on
posted they need to email Virtual Hire. That their website that will systematically store and
means if there are a lot of emails from different display jobs according to the latest job posted.
companies that would take long for them to be
posted.
Virtual Hire is missing out on important Companies and potential job seekers can have
revenue (success fees) as some companies do their own profiles which can be updated at any
not declare the successful applicants. point in time (profile management
functionality).
Virtual Hire cannot keep track of the number of Virtual Hire can have a new function that will
people who viewed and applied for the job. assist them in effectively managing the
applications of the potential applicants
(application management functionality).
The company that posts the job listings also Companies can keep track and access the
receives applications via emails sent to the application received according to specific job
company representative. So, they have to listings.
manage the applications.
Improved communication through notification
notifications between the company, applicants
and Virtual Hire
Virtual Hire can have a system that performs
reporting functionality that can generate
reports at any time.
1. As a member of the Business Analysis Team that was tasked to design the Virtual Hire
System:
a. Identify two stakeholders that you will approach to identify requirements for the
system. (2)
Company Representative
Potential Applicants
Virtual Hire HR Team
Virtual Hire Finance Team (1 mark each for any 2)
b. Construct two interview questions and state what you would like to learn from the
Virtual Hire Manager by asking each of these questions. (4)
3. As a member of the Business Analysis Team that was tasked to design the Virtual Hire System
you have decided to Interview the Job Applicants as potential users of the system.
a. Explain why this is/is not a good method to collect data on the requirements of the
system. (2)
(1 mark per point)
Is a good method:
o Interviews give the business/system analyst a deeper insight into stakeholders’
concerns and using these insights it will help business/system analysts design a
system that is well-suited to stakeholder needs.
o Body language and facial expressions are more clearly identified and
understood. This allows the business/system analyst to develop empathy for the
stakeholder.
o Most important and most used fact-finding technique, the systems analysts
collects information from individuals face to face.
Is not a good method:
o Limit sample size - The size of the sample is limited to the size of your
interviewing criteria like the number of interviewees in each department.
o Interviews can be time consuming to facilitate and conduct.
o Since interviews are face-to-face, they can be expensive due to the travelling
costs.
o Interviews can deliver biased responses.
b. Construct two questions and state what you would like to learn from the Job
Applicants by asking each of these questions. (4)
How do you know when new job Want to know if there is any
listings have been posted? notification or alert on new job listings
after they have been posted.
How many times do you visit the Virtual Want to learn they’re interest on the
Hire website? content that gets posted.
What improvements would they like Want to find out how they feel and
from the website? think of the website to create empathy
and understanding.
Does the Virtual Hire website get Want to find out on whether the
updated with new job listings? applicant thinks the job listings are up
to date and relevant.
Have you applied to any of the Want to find out about feedback and
companies that were listed? Have you any other form of communication used.
received feedback?
4. As a member of the Business Analysis Team that was tasked to design the Virtual Hire System
you have decided to distribute questionnaires to the Job Applicants as potential users of the
system.
a. Explain why this is/is not a good method to collect data on the requirements of the
system. (2)
(1 mark per point)
Is a good method
o Questionnaires can be inexpensive and less time consuming.
o With questionnaires one can gather a lot of data on different aspects of the
current system.
o Questionnaires allow you to collect information from a large audience.
o Quick to conduct questionnaires.
o Other answers are also accepted. As long as they make sense.
b. Construct two questions and state what you would like to learn from the Job
Applicants by asking each of these questions. (4)
5. As a member of the Business Analysis Team that was tasked to design the Virtual Hire System
you have decided to distribute questionnaires to the Virtual Hire Manager.
a. Explain why this is/is not a good method to collect data on the requirements of the
system. (2)
(1 mark per point)
Is a good method
o Questionnaires can be inexpensive and less time consuming
o With questionnaires one can gather a lot of data on different aspects of the
current system
o Questionnaires allow you to collect information from a large audience.
o Quick to conduct questionnaires
o Other answers are also accepted. As long as they make sense
b. Construct two questions and state what you would like to learn from the Virtual
Hire Manager by asking each of these questions. (4)
Which areas of the current system Want to find out how the user feels
would you like to be improved? about the functionality of the as-is
system. Understanding how they feel
will provide insight on how effective
the system is.
Who are the people involved in the job Knowing the people involved in the
listing process? process will help in knowing who will
actually use the system.
What problems are you faced with Learning the problems will allow the
based on the current system? business analyst team to solve the right
problems.
Can you manage all the job listings sent Learning their ability to manage can
to you via email? help in ensuring that the new solution
has a management feature.
How do you keep track of applications Want to learn the processes and
declared “successful” procedures that are followed to
understand what they go through so
that we can develop a solution that will
support their processes.
o Time – Projects have a deadline date for delivery, it is important to have a schedule
that will ensure that project deliverables are delivered on time. A detailed scope
document can be drafted to provide a perfect foundation for understanding the
project’s time constraint because it can be used to build out a project estimate.
b. Refer to the Virtual Hire system case to explain the difference between a work
breakdown activity and the scheduling activity associated with the Planning phase of
Project Management. (4)
(2 marks to define and 2 marks to relate to case)
Work breakdown activity is when the project manager works with the team to
identify the high-level activities needed to complete the project, and then breaks
these down to smaller components and scheduling activity is input from the WBS
and for each task and adds durations, dependencies, responsible party, and start
and finish dates.
3. Asana is a Project Management Tool. As a member of the Business Analysis Team that was
tasked to design the Virtual Hire System, use the Virtual Hire Case Study to explain why a
Project Management Tool is needed. (6)
(3 marks for explaining why and 3 for relating to case study)
Easy planning – Provides the project manager and the team the ability to easily establish a
hierarchy of tasks for effective and efficient completion. Breaking down the project into
components in order to place the components into a hierarchy of tasks and sub-tasks.
Efficient task management - assign all of the important tasks to employees and monitor
how they are performing. The Project manager can assign tasks to the Business Analysis
team and other stakeholders involved in the project.
Seamless team workflow – the project manager will be able to see the tasks that his team is
working on and which team members are involved in the task.
Precise Project Tracking – setting due dates will allow the project manager to see which
team member is slacking or it will give the project manager an overview of how the project
is progressing.
Shared Documents, Calendars and Contacts - It brings all the information into one
centralized hub. Virtual Hire can upload documents of work completed onto Asana.
4. If you were assigned as the Project Manager for the Virtual Hire System, how would you
decision-making:
o Evaluate the costs and benefits, or pros and cons, associated in the new solution
that is being proposed.
o Defining the problems from the current system, challenges and opportunities that
can be derived from the new system.
o Using logical reasoning to understand tasks/ processes performed in the current
system.
o Solving problems from a critical thinking perspective because it's more factual and it
uses sound reasoning.
Planning:
Leadership:
5. There are 3 questions that are asked during the “Planning” phase – a. What are we going to
do?; b. How are we going to do it?; c. How do we know when the project is done? Briefly answer
these 3 questions in relation to the case study. (6)
1. From the given case study, identify and draw the use case diagram of 6 use cases where the
Virtual Hire manager (VHM) uses the system (where VHM is the PBA). ALSO, include any
reports applicable where the VHM will be the ERA. (10)
2. From the given case study, identify and draw the use case diagram of 6 use cases where the
Company Representative (CoyRep) uses the system (where CoyRep is the PBA). You may
draw by hand or use any software for your solution. If you draw by hand, please make
sure it is legible and visible. (10)
3. From the given case study, identify and draw and upload the use case diagram of 6 use cases
where the Job Applicant (Job App) uses the system (where Job App is the PBA). You may
draw by hand or use any software for your solution. If you draw by hand, please make
sure it is legible and visible. (10)
0. Virtual Hire System
1. Admin Subsystem
<<uses>>
1.2 Accept / Reject Coy Rep (ERA)
company applications
<<uses>>
1.5 Update credit / criminal
check status
Time (PBA)
End of the month
PBA- Time
Description: This use case describes the event where the VHM generates a success fee invoice for
companies that have made payment for success fees. An invoice will be generated by the system
and sent to the relevant company. This is calculated by identifying all job listings with an “accepted”
status, checking to see if that job listing has been invoiced, if not the system will multiply the latest
service fee percentage with the job listing salary.
Step 1: A successful placement occurred. Step 2: The system identifies all the job listings
with an “accepted” status ✔ (where the
ListingStatusName in the JobListingstatus entity
is equal to “accepted” ✔ with the
corresponding ListingStatusID is the FK in
JobListing entity, ) ✔. The system identifies
which job listing’s invoiced field in the Joblisting
entity corresponds to “No” ✔. The system
generates the invoice by retrieving the
company details which correspond to the
joblisting by identifying the PK of the company
that corresponds to the CoyRepID FK✔ in
JobListing Table. The invoice total is then ✔
generated by multiplying the
successfeePercentage associated with the
latest date (in service fee table) ✔ and
multiplying it with the salary entry in the job
listing table. ✔
Step 3: The invoice is emailed to the email
address that corresponds to the company
details✔ in the Company Rep entity✔
Step 4: The system updates the invoiced
attribute in JobListing entity to “yes” ✔✔.
Description: this use case describes an event where the Company representative wants to view a
specific job listing application by selecting all the available job listings associated with this company
and then all the relevant job listing applications associated with the chosen joblisting and then the
Coy Rep will choose to view the specific job listing application.
Trigger: The coy Rep wants to view all the applications for a specific job listing.
Step 1: The coy Rep wants to view all the Step 2: The system retrieves all the job listings
applications for a specific job listing [alt] from the JobListing entity ✔ where the
CoyRepID FK in the joblisting entity corresponds
to the logged in user ✔ with the
ListingStatusName in the JobListingStatus
entity✔ corresponds to “available”. ✔ The
system prompts the user to choose the specific
job listing.✔
Step 3: The coy Rep selects the specific job Step 4: The system retrieves and displays all the
listing. ✔ applications✔ for the selected job listing
(where the selected job listing corresponds to
the FK of the JobID) ✔ and in the application
table ✔ where the jobID FK where the
application statusName equals to “applied”.✔
Step 5: The coy Rep selects to view the specific Step 6: The system displays the chosen
application✔ application by retrieving and displaying the
applicant details associated with the
application (where ApplicantID for the chosen
applicant is the FK in the Application entity) ✔:
• Name
• Surname
• Contactdetails
• Email address
• CV✔
Description: This use case describes the event where a company representative has responded to
the job applicant’s application. The potential job applicant can accept or reject the offer.
Step 1: The Potential Job applicant wants to Step 2: The system retrieves the job offer(s) ✔
accept/reject job offer associated with the logged in applicant by
matching the logged in user to the ApplicantID
FK in the Application entity ✔and retrieve the
job offer details from joblistingapplication, ✔
job listing ✔and application✔ entities where
the joblistingapplicationstatus is equal to Under
Offer. ✔
The system prompts the applicant to accept the
job. ✔
Step 3: The applicant accepts the job. [alt]✔ Step 4: The system captures the acceptance ✔
and updates the status of the
joblistingapplicationstatus to “accepted” ✔
Step 5: The system notifies the coy
✔representative by sending an email to the
company email associated with the companyID
fk in joblisting entity✔
Step 3: The applicant filters the job Step 4: the system displays all the
applications by job type [alt] joblistings for the chosen job type from the
job type table.
step 7: The applicant select the specific job step 8 : The system loads the details for the
listing specific job listing from the Job Listing table
displays the following attributes :
● JobID
● JobListing Status (using the
ListingStatusID FK )
● JobTypeDescription (using the
JobTypeID FK)
● ContractType using the
ContractTypeID FK)
● LocationDescription( using the
LocationID)
● Description
Step 1: The company representative wants Step 2: The system invokes use case 1.4
to accept or reject the job listing View job listing applications
application
Step 3: The system displays the application
details for the chosen application where by
the ApplicantID is the FK in the application
table and following details from the
applicant table:
● Name
● Surname
● Contact Number
● Email Address
● CV
● RegistrationStatusID (using the
ResgistrationStatusID FK)
3. Use the following use case narrative to complete the following primitive level diagram. Only
complete the typical course of events.
VHM (PBA)
Step 1: The VHM wants to update the Step 2: The system invokes use case 1.4
applicant’s credit/criminal check status and search job listing application
enters the Application ID
Step 3: The system displays the application
details for the chosen application where by
the ApplicantID is the FK in the application
table and following details from the
applicant table:
● Name
● Surname
● Contact Number
● Email Address
● CV
● RegistrationStatusID (using the
ResgistrationStatusID FK)