Student Number 
ANONYMOUSLY MARKED 
(Please do not write your name on this exam paper) 
|__|__|__|__|__|__|__|__|__| 
CONFIDENTIAL EXAM PAPER 
 
 
                                          Computer Science 
 
TRIAL   EXAMINATION 
Semester 1 - Trial, 2020 
 
 
COMP9110 System Analysis and Modelling 
 
 
 
EXAM WRITING TIME:  50 minutes  
READING TIME: 
10 minutes 
 
EXAM CONDITIONS: 
This is an OPEN book examination  
MATERIALS PERMITTED: 
(Lecture material, textbook, and calculator)  
MATERIALS TO BE SUPPLIED TO STUDENTS: 
None 
INSTRUCTIONS TO STUDENTS: 
 
1. 
2. 
3. 
             on the question paper. Or take photo of your answers on any papers  
             and save as .jpg image format. 
4.          Save all files as .pdf format or .jpg image format. Zip them into a single  
             .zip file and upload to the Trial Exam of COMP9110 Canvas site before the  
              9pm on 29th May 2020 (Sydney time). 
 
 
Please tick the box to confirm that your examination paper is complete.   
This exam contains three (3) QUESTIONS. All questions must be answered.  
Marks total 100.  
Write or type your answers for all THREE questions in the spaces provided  
 
For Examiner Use Only 
Mark 
Q 
1 
2 
3 
4 
5 
6 
7 
8 
9 
10 
11 
12 
13 
14 
15 
16 
17 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
18 
 
Total  ________ 
Read the following narrative, and develop some fragments of analysis documents as 
directed on the following pages. There may be places where the narrative leaves some 
ambiguity about aspects of the model; when this occurs, you need to clearly identify a 
question you would ask the stakeholders to resolve the issue, and then state which answer 
you have chosen to incorporate into your models. 
Campus Odd-Jobs (COJ) 
COJ provides a service which helps put students in touch with clients who want temporary workers 
to do odd jobs, like filing papers, cleaning floors, etc. A client can appoint COJ as its agent, by 
signing an agreement and providing details of themselves, such as name, address, phone number, 
bank account. A client who has signed the agency agreement can register some jobs as needing to 
be done; for each job, the client will fill in a form with information (eg. description, start date/time, 
end  date/time,  pay  rate  per  hour,    number  of  workers  wanted,  whether  the  worker  must  have 
residency, etc) and hand it to COJ staff who enter it into the system. Any student can consult the 
COJ  system,  to  find  out  about  jobs  that  have  not  yet  been  filled.  They  can  search  for  jobs  with 
particular  characteristics,  for  example,  restricting  their  viewing to jobs on a given day. They are 
shown a list of jobs that meet their criteria and have not yet been completely filled (ie the number of 
workers hired is less than the number needed); they can then view the details (including the client’s 
phone number) for some or all of these, or they can narrow their search by posing extra conditions. 
If they wish to apply for a job, they need to sign up as a worker, unless they did so already. A 
student signs up as worker by providing name, address, residency status.  A worker applies for a job 
by contacting the client directly. Once the client accepts a worker for a job, they notify COJ staff, 
giving job details and worker details. If there are not enough workers accepted to fill the job by the 
day  before  the  job  starts,  all  the  workers  who  were  accepted  must  be  notified  that  the  job  is 
cancelled. The client can also choose to ask COJ to inspect the work on a job; if they want this, a 
COJ staff member will visit the workplace during the job, and file a report on the quality of the 
work; if it is inadequate, the client is told and they will reduce the workers’ pay by 25%.  Clients 
pay  the  workers  directly  for  the  jobs.  At  the  end  of  any  month,  each  client  is  sent  an  invoice, 
showing the total cost of jobs they listed that were filled, and those that were not filled. The client 
must pay COJ a fee which is 10% of the salary paid on filled jobs that were inspected,  5% on filled 
jobs that were not inspected, and 1% of the possible salary on unfilled jobs. The client is sent the 
invoice, and charged by direct debit from their bank account.  
ID:  
12 
Importance Level:  
High 
Q1  
One use-case is “search for suitable job“. We show the normal flow; you must fill in two 
alternate flow in this use-case. 
 
Use Case Name: 
Search for suitable job 
 
Primary Actor:  
Student 
 
Stakeholders and Interests: 
1. Student – wants to know about jobs that are unfilled and suitable 
2. Client – wants to provide information about their jobs to potential workers 
3. University admin – want to improve the quality of life for students, by giving them chances to 
earn income 
Brief Description:  
Student provides some characteristics to indicate what they want in a job, and they search for the 
unfilled jobs that match these characteristics. 
 
Trigger: Student decides to search for suitable jobs 
Type: External  
Normal Flow of Events  
1. Student requests a search 
2. System offers a set of possible characteristics on which to search 
3. Student indicates some characteristics, and gives acceptable values for these characteristics 
4. System provides a list of jobs that match the characteristics and are unfilled 
5. Student selects some jobs to see more detail 
6. System shows detail of selected jobs 
Alternate flows: 
 
 
 
 
 
 
 
 
 
Q2. 
Draw  a  UML  class  diagram  outline  for  the  data  model  of  the  domain  described  in  the 
narrative.  You  should  show  (at  least)  class  names,  attributes,  association  names,  and 
multiplicities on the associations.  
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Q3 Draw a sequence diagram that represents both the normal and alternate flows from 
the use-case of Q1.