Google
 

Trailing-Edge - PDP-10 Archives - decuslib10-12 - 43,50546/jobs.rno
There is 1 other file named jobs.rno in the archive. Click here to see a list.
.offset right page 6
.page width 72.NO NUMBER
.OUTLINE'JOBS*INTERVIEW*REQUEST*SYSTEM*',1,1,3,1,1
.CENTER NO FILL
.!
.FIGURE 6
.COMMENT.SQUEEZ 5,12,21,27,36,54,67,76.LETTER,3,1;STUDENT
.LETTER,3,1;JOBS
.SQUEEZE 1,2,5,6,10,15,19,28,32,38,39,44,56
.SQUEEZE 63,64,67,68,72,78,79,86,87
.SKIP.LETTER;INTERVIEW
.SQUEEZE 3,21,37,53,60
.skip.letter;REQUEST
.SKIP.LETTER;SYSTEM
.!
.END OBJECT
.SKIP 3
JOBS Interview Request System
.skip
Donald E. Barth
.skip
15-Feb-84
.page.INITIAL PAGE
.figure 24.fill
JOBS, the interview request system described in this manual, was
developed at the Yale School of Management for the automatic allocation
of open job interviews to students in the Master's Degree Program in
Public and Private Management (MPPM).  This manual describes the
administrative procedures needed to prepare for and to process the
requests for job interviews.  Appendices to this manual contain the
instructions for the computer program which is used by the school staff
to enter the recruiting schedules and for the computer program which
is used by the students to request the interviews.
.PAGE.INITIAL PAGE
.nofill
.figure 5
.left margin 6
                     TABLE OF CONTENTS
                     ----- -- --------
.skip 2.spacing 2
Introduction  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  1
The Interview Allocation Process   .  .  .  .  .  .  .  .  1
The Programs  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  5
The Computer Accounts  .  .  .  .  .  .  .  .  .  .  .  .  6
The Files  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  7
Preparation for Student Use  .  .  .  .  .  .  .  .  .  . 10
Processing a Set of Requests .  .  .  .  .  .  .  .  .  . 12
Evaluation of Allocation of Interviews and Times  .  .  . 17
What Takes Place During Processing .  .  .  .  .  .  .  . 19
Maximum Sizes of the Cases Handled by the Programs   .  . 22
Descriptions of the Files .  .  .  .  .  .  .  .  .  .  . 23
.spacing 1
   Contents of the Account Validation File  .  .  .  .  . 23
   Contents of the Password File   .  .  .  .  .  .  .  . 28
   Contents of the Current Stage file .  .  .  .  .  .  . 29
   Contents of the Starting Time Profile File  .  .  .  . 33
   Contents of the Firm Schedule File .  .  .  .  .  .  . 35
   Contents of the Interview Request File   .  .  .  .  . 39
.skip.spacing 2
Using the RSMPSW Program to Assign Passwords   .  .  .  . 45
Machine Dependence  .  .  .  .  .  .  .  .  .  .  .  .  . 48
Differences Between DECsystem10 and DECsystem20 Versions  50
Appendix A: Instructions for Using the JOBS Program  .  . 53
Appendix B: Instructions for Using the JOBADM Program   . 57
Appendix C: Files Included in this Package  .  .  .  .  . 67
Appendix D: Examples of the Listing Files   .  .  .  .  . 73
.left margin 0
.fill.spacing 1
.SKIP LEFT page.INITIAL PAGE.PAGE.INITIAL PAGE
.ltt'>',,'JOBS Interview Request System'
.number page 1
.fill.left margin 0.test page 6
.rtt'Introduction',,'>'
.center
INTRODUCTION
.center
------------
.skip.test page 3
JOBS is an interview request system which can be used at a school to
allocate job interviews among the students and to assign times for
these interviews.  Various bidding schemes can be used to allocate
interviews with firms for which there is excess demand.  The system
includes a program which the school staff uses to enter the recruiting
schedules, a program which the students use to request interviews with
particular firms and to assign priorities to these requests, and a
series of programs which allocate the interviews and which produce
printed schedules for the recruiters and for the students.
.skip.test page 3
All of the firms which are interviewing and the numbers of interviews
which they will hold must be known before the students can run the
program.  This means that the students must use the program several
times during the interview season.  In practice, allocating the
interviews for a month at a time seems to work well.  If there is
sufficient lead time, and if some firms are still undersubscribed after
the students make their initial requests for the coming month, then
the students can be allowed to bid again for the remaining interviews
and for interviews with additional firms added to the pool in the
meantime.
.skip.test page 3
The interview request system handles only open interviews, those for
which the school specifies which students will be interviewed.  The
system does not handle closed interviews, those to which the firms
invite the students, since the firms usually furnish the lists of these
students to the school with too little lead time for the use of an
automated system.
.skip.test page 3
The interview request system was developed on a DECsystem20 computer
and, in various versions, has been used during 2 interview seasons.
The system is written entirely in FORTRAN and, excluding the comment
lines, consists of 9000 FORTRAN statements.  A version for the
DECsystem10 computer is included.
.skip 2.test page 10.left margin 0.fill
.rtt'The Interview Allocation Process',,'>'
.center
THE INTERVIEW ALLOCATION PROCESS
.center
--- --------- ---------- -------
.skip
The interview season is divided into several sections, called rounds.
The students can only request interviews with firms which are holding
interviews during the current round.  Several academic classes of
students can use the program at different times or concurrently and
each class can be entering requests for a different round.  The school
calendar must allow enough time before the start of each round for
all of the students in the class to use the computer to make their
requests, for these requests to be processed, and for the lists of
successful students to be sent to the firms.  The length of each round
is determined only by how far into the future it is known which firms
will be interviewing and how many interviews they will be holding and
when.  All of the students in a class who want to request interviews
for the current round must have finished using the program before
interviews can be allocated to any of them.  However, until the deadline
for completing their requests has been reached, the students can each
run the program as many times as desired to enter or change their
requests.  Typically, the students would have to complete their requests
at least 2 weeks before the start of the round and each round would
consist of approximately a month.
.skip.test page 3
If there is enough lead time before the start of the round, then the
students can be allowed to run the program again to make additional
requests after their initial requests have been processed.  Firms can
be added to the list or can be cancelled from the list, but the list
should essentially remain unchanged.  Each of the times that the
students in a particular class are allowed to run the program to request
interviews with the same set of firms is called a stage of the same
round.  There can be as many stages as desired in each round.  The
positions on the lists of the students who requested interviews during
the previous stages of the current round remain fixed.  The new requests
are only for interviews with the undersubscribed firms or for positions
on the waiting lists for fully subscribed firms.  The students can,
however, cancel requests which they made in earlier stages and this
would release the interviews so that someone else could get them.
.skip.test page 3
The system does not contain any information for rounds other than the
current round for each class.  The description of the schedules for
the recruiters and the requests for interviews made by the students
are stored in an account which is separate from those which are used
by the administrator and by the students.  The account which is used
for storing the schedules and requests is also used for storing the
files which validate accounts to run the programs and which establish
the passwords which are used by the students to gain access to the
program.
.skip
The member of the placement office staff who acts as the administrator
uses the JOBADM program to establish which firms are holding interviews
and when these interviews will be held.  All of the scheduling
information for the firms which will be interviewing students in a
particular class is held in a separate file.  The administrator has
control over how many interviews any one student can request during
each stage, during each round and during the entire interview season.
The type of bidding which will be used for the allocation of over
subscribed firms is set before the start of the season by the computer
services staff at the direction of the administrator, but the
administrator can, before any new stage begins, change the limitations
on the number of high priority requests which can be made or the total
amount which can be bid.
.skip
For each firm, the administrator specifies the name of the firm, its
department name and its address.  The type of position being filled
is not specified, but this could be entered instead of the department
name or address if desired.  The administrator specifies the length
of the interviews and the total number of schedules which will be held.
All of the interviews which are held by a particular firm must be of
the same length.  A profile of the times during the day when interviews
of this length start must already have been established.  If the firm
is only interviewing on a single day, then the number of schedules
will equal the number of recruiters.  If the firm is interviewing on
several days, then the number of schedules is the sum of the number
of recruiters each day.  The administrator specifies the date when
each schedule will be held.  If there is more than 1 profile of starting
times for interviews of the selected length, then the administrator
must select the profile for each schedule.  Finally, the administrator
selects the time of the first and final interviews for each schedule,
and which, if any, interviews in each schedule will not be held.
.skip.test page 3
There is a profile of starting times for interviews which are 30 minutes
long, another for interviews which are 45 minutes long, and a third
for interviews which are 60 minutes long.  If it is really desired
to use a new set of starting times for interviews of some particular
length, then the administrator can have the computer services staff
establish a new profile of starting times.  This is easily done and
only requires adding a new line to the file which defines these
profiles.  The new profile can be for interviews of the same length
as one of the original profiles, or can be for a different length.
If the new profile is for interviews of the same length as an existing
profile, then the administrator will have to select between these
whenever a newly entered firm is holding interviews of that length.
The program which allocates interviews makes sure that the students
have time to get from one interview to another, so it is not necessary
for the profiles to include any more time between successive interviews
than is required by the recruiters.
.skip.test page 3
If the students have their own individual accounts, and if these can
be related in some way to their classes, then they can run the program
from these individual accounts.  Otherwise, a common account will have
to be established for each class.  If common accounts are used, then
it is suggested that the computer services staff assign a password
to each student which can be used to gain access to the program.  It
is also possible to have each student select a password which will
be used to gain access to that student's requests, but this scheme
is subject to possible abuse in that a single student could enter
several sets of requests and thus have an unfair advantage over other
students in the class.
.skip.test page 3
The students run a program named JOBS to request interviews.  The JOBS
program tells the student the dates when the firm is interviewing and
how many interviews will be held.  If the firm is interviewing on
several days, then the student can select on which day he or she would
prefer to have the interview be held.  The student also selects which
of the possible starting times during the day he or she most prefers.
If the student selects more than 1 time, then the second is assumed
to be desired less than the first, the third less than the second,
and so on.  It is not necessary that the student select either a date
or times.  If both a date and times are selected, then the times apply
only to that date.  If an interview cannot be scheduled on that date,
or if no times were selected, then all times on the date when the
interview is actually scheduled will be equally likely.  If the student
is running the JOBS program in the second or a subsequent stage, then
the program will report the status of each request made by the student
in earlier stages including the date and time when each interview is
scheduled or the position on the waiting list.
.skip.test page 3
Once all of the students have finished making their requests for the
stage of the round, the member of the computer services staff who is
managing the running of the program closes the JOBS program to further
use by students in the class.  The firm schedule file produced by the
JOBADM program is copied to a separate account where the requests will
be processed.  The interview request files are appended together and
the resulting composite file is moved to the same account.  Several
programs are then run which process the requests.  The following steps
are performed during the allocation of the interviews.
.list.list element
For each firm, all of the requests which have the highest priority
(are most wanted) or which have the highest bid are placed onto the
end of the list of students who have requested interviews with that
firm in the previous stages.  Then all of the requests which have the
next highest priority or bid are placed onto the end of the list, and
so on.  Each group of requests which have the same priority or bid
are arranged in random order.
.list element
Interviews are allocated to the students, starting with the students
who were placed on the list first.  If more students requested
interviews with the firm than the firm is willing to interview, then
the students who were placed onto the list last will be placed onto
the waiting list.  The students at the top of the waiting list might
get interviews if the firm decides to conduct more interviews or if
some of the students who were allocated interviews decide to cancel
their interviews instead.
.list element
Among the students who have been allocated interviews, actual dates
and times for these interviews are assigned first for the students
who specified the times of day when they would prefer to have the
interviews be held.  The remaining interview times are assigned to
the students who did not specify any preferred times or who specified
preferred times which had already been assigned to someone else.
.list element
Schedules are printed which can be given to each student and to each
recruiter.
.list element
The final version of the composite interview request file is split
into separate files which are written into the original central storage
account.  These individual interview request files reflect the action
taken on each request.
.list element
The final version of the firm schedule file is copied into the central
storage account.  This version of the firm schedule file contains the
number of students who requested interviews with each firm.
.list element
After verifying that the results appear to be correct, the member of
the computer services staff who is managing the running of the program
opens the JOBS program to the students so that they can review their
results, or advances the stage number so that they can make requests
for interviews with any firms which are still undersubscribed.
.end list
.skip.test page 3
.skip2.test page 10.left margin 0.fill
.rtt'The Programs',,'>'
.center
THE PROGRAMS
.center
--- --------
.skip
The interactive programs listed below are the only ones which are used
by anyone other than the computer services staff member who is managing
the running of the job interview request system.  As far as the students
and placement office staff are concerned, these form the entire system.
.LEFT MARGIN 8
.SKIP.TEST PAGE 3.INDENT -8
JOBS####The program which the students use to make their requests for
job interviews.
.SKIP.TEST PAGE 3.INDENT -8
JOBADM##The program used by the staff of the placement office to enter
the schedules of the firms which are conducting interviews.
.skip.test page 3.left margin 0
Once the students have made all of their interview requests, the
following programs are run by the computer services staff member in
the order listed to allocate the actual job interviews.  The first
2 programs in the list perform similar functions and only 1 of these
should be used.
.left margin 8
.SKIP.TEST PAGE 3.INDENT -8
JOBSLO##A small but slow version of the first stage of the processing.
This program sorts the interview requests for each firm by priority
and randomizes the order of the requests which have the same priority.
The entire interview request file is read and rewritten for each firm
which is to be processed so the requests for all students for all firms
do not have to be stored in random access memory at the same time.
The JOBBIG program can be used instead of the JOBSLO program if
relatively large programs can be run.
.SKIP.TEST PAGE 3.INDENT -8
JOBBIG##A fast but large version of the first stage of the processing.
This program sorts the interview requests for each firm by priority
and randomizes the order of the requests which have the same priority.
The entire interview request file is read and rewritten only once.
All of the requests for all students for all firms are stored in random
access memory so the arrays in the program must be large.
.SKIP.TEST PAGE 3.INDENT -8
JOBTIM##The second stage of the processing.  This program assigns actual
times for the requests.  This program also produces the listings of
the interview schedule for each recruiter.  JOBTIM and JOBSCH do not
have to be run if for some reason actual times are not being assigned
yet.
.SKIP.TEST PAGE 3.INDENT -8
JOBSCH##A program which is run after JOBTIM to produce the listings
of the interview schedules for each student.
.SKIP.TEST PAGE 3.INDENT -8
JOBPUT##The final stage of the processing.  This program splits the
composite interview request file into the individual interview request
files and writes them back into the central storage account.
.left margin 0
.skip.test page 6
The following programs are used by the computer services staff member
but are not needed during the regular processing of the requests.
.left margin 8
.SKIP.TEST PAGE 3.INDENT -8
JOBGRF##A program used to check what proportion of the requests for
interviews were filled, and what proportion of the requests for specific
times were filled.
.SKIP.TEST PAGE 3.INDENT -8
JOBMOD##A program used to modify individual interview request files
in the central storage account.  This program should be used with care,
since if used incorrectly it could destroy the ranking already
established in a previous stage.  The program can perform the following
operations.
.skip.test page 11.nofill
 1 = Place request for firm on closed schedule
 2 = Place request on open schedule, not requested by firm
 3 = Place request on open schedule, requested by firm
 4 = Reject request, firm does not want to talk to student
 5 = Delete request from file
 6 = Change firm in request, put on open list of new firm
 7 = Restore high priority vote or bid immediately
 8 = Restore high priority vote or bid next round
 9 = Unsubmit requests if student typed SUBMIT in JOBS program
10 = Block further requests but process requests already made
11 = Block further requests and ignore requests already made
.fill
.SKIP.TEST PAGE 3.INDENT -8
JOBSRT##A program used to sort the list of student numbers and names
which was produced by the JOBSLO or JOBBIG program.  This list is used
to locate the individual students in the listings produced by the JOBSCH
program.  This program is a slightly modified version of a program
which was developed for the student resume system.
.SKIP.TEST PAGE 3.INDENT -8
JOBTST##A program which can be used to change the type of priorities
used in the test case which is supplied with the interview request
system.
.SKIP.TEST PAGE 3.INDENT -8
RSMPSW##A program which merges passwords selected from any text file
and a list of student names into an annotated password file.
.left margin 0
.left margin 0.fill.skip 2
.test page 10
.rtt'The Computer Accounts',,'>'
.center
THE COMPUTER ACCOUNTS
.center
--- -------- --------
.skip.test page 3
The following types of accounts must be established in order to use
the interview request system.
.list
.list element
The central storage account in which the requests for interviews made
by all of the students in all of the classes are stored.  The requests
made by students in different classes are kept separate by the use
of the class numbers as part of the names of the files.  The requests
made by the students in different classes cannot be stored in separate
accounts.
.list element
The account to be used by the staff of the placement office.  The JOBADM
program is run from this account to enter the recruiting schedules
for the firms which are going to be conducting interviews.  If 1 person
is responsible for entering the schedules for all of the classes, then
a single account should be used.  If several people are entering the
schedules and if each is responsible for a separate class, then each
should use a separate account and each of these accounts should be
validated for use by the administrator for only 1 class.  Instructions
for validating accounts for use by the administrator are given later
in this manual.
.list element
The account to be used by the member of the computer services staff
who is managing the running of interview request system.  The files
will be moved into this account for processing.  This account does
not have to be specially validated in any of the files in the central
storage account.
.list element
The account from which all of the students in a particular class can
run the JOBS program.  There should be 1 of these shared accounts for
each class.  Alternatively, if the students have their own individual
accounts, then they can run the program from their separate accounts.
.end list
.skip 2.test page 10.fill.left margin 0
.rtt'The Files',,'>'
.center
THE FILES
.CENTER
--- -----
.skip.test page 3
The following files must be prepared by the member of the computer
services staff who is managing the running of the interview request
system before the students are allowed to use the JOBS program.  These
files should all be in the central storage account into which the JOBS
program will write the files containing the interview requests which
are made by the students.
.left margin 12
.skip.test page 3.indent -12
ACOUNT.JOB##specifies which accounts can be used for which classes.
This file is prepared using the system text editor.
.skip.test page 3.indent -12
CURENT.JOB##specifies the current round and stage for each class, the
type of bidding scheme, and whether the JOBS program is open for use
by the students.  This file is prepared using the system text editor.
.skip.test page 3.indent -12
FRMXXX.JOB##where XXX is the 3 digit class number.  This file identifies
the firms, and specifies when the firm will be conducting interviews.
It is written by the JOBADM program.  An updated version is created
when the requests have been processed, but this must be copied back
manually into the central storage account.
.skip.test page 3.indent -12
PSWXXX.JOB##where XXX is the 3 digit class number.  This file specifies
the passwords and the numbers which can be used to identify the students
if all of the students in a class run the JOBS program from the same
account.  This file can be prepared either using the system text editor
or using the RSMPSW program which is described later in this manual.
.skip.test page 3.indent -12
TIMES.JOB###specifies the starting times of the interviews of each
possible length.  This file is prepared using the system text editor.
.skip.test page 10.left margin 0
The following files are produced when the JOBS program is run by the
students.  These files do not have to be prepared in advance by the
computer services staff.
.left margin 12
.skip.test page 5.indent -12
JOBS.DOC####(if the student is not using a password)
.break
or
.indent -12
YYYYYY.DOC##(if the student is using a password)
.break
contains a list of the interviews requested by the student.  YYYYYY
is based upon the password or the account being used or is a number
assigned to the student.  If this number is less than 100000, then
extra zeros are inserted at the left to obtain 6 digits.  These files
are written into the account being used by the students when the
students select the PAPER command in the JOBS program.
.skip.test page 3.indent -12
YYYYYY.XXX##where YYYYYY is the 6 digit number identifying the student
and XXX is the 3 digit class number.  Each of these files contains
the interview requests made by a single student.  These files are
written by the JOBS program into the central storage account.  After
the requests have been processed, these files also specify the rankings
of the requests, and the times when the interviews have been scheduled.
Whether or not the students get particular interviews depends upon
the rankings stored in these files versus the numbers of interviews
available stored in the firm schedule file.
.left margin 0
.skip.test page 10
The following data and listing files are used or generated during the
processing of the requests.  The names of these files are selected
by the member of the computer services staff who is managing the running
of the interview request system.
.left margin 12
.skip.test page 3
The firm schedule file.  This is written into the central storage
account by the JOBADM program.  It is rewritten in the processing
account by the JOBSLO or JOBBIG program and by the JOBTIM program.
.skip.test page 3
The composite interview request file.  This is constructed using an
APPEND command.  It is rewritten in the processing account by the JOBSLO
or JOBBIG program and by the JOBTIM program.
.skip.test page 3
The list of student numbers and names.  This is written by the JOBSLO
or JOBBIG program.  This file can be sorted into alphabetical order
based upon the student names using the JOBSRT program.  This is
essentially a listing file.  It is not needed for processing.
.skip.test page 3
The list of students requesting each firm.  The students are arranged
by whether they have gotten interviews, and by their order on the
waiting list if they have not.  This listing file is written by the
JOBSLO or JOBBIG program.
.skip.test page 3
The list of students scheduled for each recruiter.  This listing file
is written by the JOBTIM program.
.skip.test page 3
The list of interviews gotten by each student.  This listing file is
written by the JOBSCH program.
.skip.left margin 0.test page 3
The files which are read and written during the processing of the
requests can be given any names desired.  However, use of regularly
constructed names will make them easier to identify.  A scheme which
has been found to work well is to assign a basic name such as R1S284
to the files for round 1, stage 2, class of 84, and to use a regular
pattern of numbers for the 3 letter file name suffixes.  The various
programs which are necessary for the processing prompt using these
numbers.  The file name R1S284.001 could be used for the initial firm
schedule file, R1S284.002 for the initial composite interview request
file, and R1S284.003 for the file containing the profiles of starting
times.  Each of the requests for the name of a new output file would
then be answered with the same base name but with the suffix .004 for
the file logically next in the series, then .005, and so on.  The file
names which result when these conventions are used are listed below.
.skip.nofill.test page 10
R1S284.001 is the initial firm schedule file
R1S284.002 is the initial composite interview request file
R1S284.003 is the file which defines the profiles of starting times
R1S284.004 is the listing of students requesting each firm
R1S284.005 is the final firm schedule file
R1S284.006 is the intermediate interview request file
R1S284.007 is the list of student numbers and passwords
R1S284.008 is the final interview request file
R1S284.009 is the listing of all recruiter schedules
R1S284.010 is the listing of all student schedules
R1S284.011 is the list of student numbers and passwords sorted by name
.fill.skip.test page 7
.left margin 0
After the processing of the requests has been completed, the final
versions of the firm schedule file and the interview request files
must be moved back into the central storage account.  These files must
once again have the following names which are expected by the JOBADM
and JOBS programs.
.left margin 12
.skip.indent -12.test page 3
FRMXXX.JOB##The final version of the firm schedule file produced during
the processing of the requests is copied back into the central storage
account by issuing a COPY command.
.skip.indent -12.test page 3
YYYYYY.XXX##The final versions of the individual interview request
files in the composite file produced during the processing of the
requests are written back to the central storage account by the JOBPUT
program.
.left margin 0
.skip 2.test page 10.fill.left margin 0
.rtt'Preparation for Student Use',,'>'
.center
PREPARATION FOR STUDENT USE
.CENTER
----------- --- ------- ---
.SKIP
Preparation for the use of the interview request system on a DECsystem20
computer is described below.
.left margin 1.list.le
Build the central storage account in which the interview requests will
be stored.  This account should have the following characteristics:
.list.display element'',LU,'.'.le
Disk storage allocation of about 2 pages per student.  Each of the
interview request files requires just 1 page, but there has to be room
for a modest set of deleted former versions which have not yet been
expunged.  There should also be enough disk allocation for a duplicate
set of interview request files for any class.  This is necessary since
the JOBPUT program produces a new copy of each interview request file
each time that the requests have been processed.
.le
Default file protection of 776400.  This prevents other accounts from
using the directory commands to find out what files are in the account.
The files can be overwritten by new versions.
.le
Directory protection of 774400.  This allows accounts in the proper
user group to write new files into the central storage account.
.le
Directory groups the same as the user group of the accounts which the
students will use to run the JOBS program and the same as the user
group of the account which the administrator will use to run the JOBADM
program.  If this cannot be done, then make sure that the right 2 digits
of the various protection codes are all the same as the middle 2 digits
instead of 00.
.le
The central storage account must contain the following files which
are to be read from the accounts used by the students, but these files
should not be able to be rewritten from these accounts.  These files
should have 775200 protection.
.skip.left margin +12.test page 8
.indent -12
ACOUNT.JOB##required to validate accounts
.indent -12
CURENT.JOB##defines current round and stage for each class
.indent -12
PSWXXX.JOB##optional passwords for class XXX
.indent -12
TIMES.JOB###starting times for interviews of each possible length
.left margin -12.skip.fill
The contents of these files are described elsewhere in this manual.
.le.test page 6
The following file should be stored in an account which is a parent
of the central storage account.
.left margin +12
.skip.test page 3.indent -12
JOBS.CTL####The file which controls the batch job which expunges the
central account, and which then submits itself to be run again later.
.left margin -12
.end list
.le
Insert the name of the account where the interview request files will
be stored into the DATA statement which defines the NUMDIR character
string in the BLOCK DATA routine.  This character string must contain
exactly 40 characters.  Fill out the right end of the string beyond
the end of the name with spaces.  Do not include the less than and
greater than signs in the name.
.list element
If the central storage account already exists, delete the interview
request files from the previous year.  These are the files having names
of the form YYYYYY.XXX where YYYYYY is the 6 digit student number and
XXX is the 3 digit class number.  If this is not done, then a student
who only entered requests in stage 1 of round 1 in the previous year
would attempt to add to the old decisions in the current interview
season rather than starting fresh.  Also, the running totals of bids
and of the numbers of interviews requested might continue those from
the previous year unless the old files are deleted.
.list element
If the central storage account already exists, delete the firm schedule
files from the previous year.  These are the files having names of
the form FRMXXX.JOB where XXX is the 3 digit class number.
.list element
In the file named CURENT.JOB which defines the current round and stage
for each class, set the current round and stage for each class to 1.
Add new lines for any new class numbers which will be in use this year
and remove those that are no longer active.  It is suggested that each
class be identified to the program by the right 2 digits of the year
of its graduation.  See the description of the contents of the current
stage file for further information.
.le
Validate an account or accounts to act as the administrator by inserting
their account names into the ACOUNT.JOB file.  Instructions for
validating these accounts are given elsewhere in this manual.
.le
If this is the first year that these particular students have run the
JOBS program, validate their accounts by inserting a line describing
their accounts into the ACOUNT.JOB file.
.le
If the students are all to use a single account to run the JOBS program,
set up this account.  It should be in the same user group as the
directory group of the central storage account.  Insert this account
name into the ACOUNT.JOB file and indicate that the students must use
passwords to run the JOBS program.  It is recommended that passwords
be assigned to them, rather than letting them select their own.
.le
If the passwords are to be assigned to the students, rather than
selected by the students, then construct a file named PSWXXX.JOB, where
XXX is the class number, in the central storage account.  This should
have 775200 protection.  This file can be constructed using the RSMPSW
program, or by hand using a text editor.  The contents of this file
and the use of the RSMPSW program are described elsewhere in this
manual.
.le
Replace the account named in the JOBS.CTL file by the current name
of the central storage account.  Either in the central storage account,
or preferably from an account higher in the directory tree, submit
the JOBS.CTL to run a batch job.  This expunges the central storage
account, and resubmits itself to run again later.  The time until the
next run of the batch job must be short enough that the central storage
account will not run out of disk space until then.  A half hour interval
is suggested.
.le
Compile, load and save the JOBS program and the JOBADM program.  Rename
or copy the resulting _.EXE files into the system library account.
If the central storage account is unchanged, then the versions of these
files from the previous year can still be used.
.le
If the students will be running the JOBS program from a single account
and if the students are selecting their own passwords, then some
students will probably type the login password when the JOBS program
itself asks for a password.  The only problem with this would be that
if 2 or more students select the same password, then they will destroy
each other's requests.  To protect against this, log into the shared
account, run the JOBS program using the login password and then exit
without having made any decisions.  Do not make any requests using
this password.  After you have exited from the JOBS program, use the
JOBMOD program to block further requests and to ignore any requests
already made by this fictitious student.  This will change the value
of ISUBMT, the first number in the second line of the resulting file,
to 4.  This causes the students selecting this password inside the
program to be told that the password is not meant to be used at that
point, and they will be asked to select another password.
.end list
.SKIP 2.test page 10.left margin 0.fill
.rtt'Processing a Set of Requests',,'>'
.center
PROCESSING A SET OF REQUESTS
.center
---------- - --- -- --------
.skip
The procedures described below are performed to allocate the interviews
once the time period allowed for the submission of interview requests
has expired.
.left margin 1.list
.list element
Log into the account which will be used for processing the interview
requests, and connect to the central storage account where the requests
are stored.
.list element
Type the file named FRMXXX.JOB where XXX represents the 3 digit class
number.  If the left number in the first line in this file has the
value 2 indicating that the JOBADM program has not been run, then either
use the text editor to change this number to 1 or log into an account
which is validated to run the JOBADM program and then use the JOBADM
program to read and write a new version of this file.  If you have
logged into another area to run the JOBADM program, then log back into
the account from which the requests will be processed and again connect
to the central storage account.
.list element
Change the fifth number to -1 in the line for the class in the
CURENT.JOB file in the central storage account.  This prevents anyone
else in the class from running the JOBS program and prevents the
administrator from running the JOBADM program.  If they are already
running the programs, however, this does not force them to exit since
this information is only read when the programs are started.
.list element
Check that none of the students are still running the JOBS program.
If they are, try to get them to complete their selections and exit
from the program.
.list element
Check that the administrator is not running the JOBADM program.  If
the administrator is still running the JOBADM program, try to get him
or her to finish and exit from the program.
.list element
Wait until all of the students in the class have finished running the
JOBS program and until the administrator has finished running the JOBADM
program.
.list element
While still connected to the central storage account, copy the firm
schedule file FRMXXX.JOB into the processing account.  The original
version of this file should remain in the central storage account.
The copy of this file in the processing account can be given any name
which is convenient.  Since it is likely that there will be several
versions of these files in the processing account, it is suggested
that the files in the processing account be given names which
incorporate the round number, the stage number and the class number.
For round 1, stage 2, class of '84, the copy of the firm schedule file
might be named R1S284.001.
.list element
While still connected to the central storage account, append together
all of the interview request files for the class which is to be
processed.  It is suggested that the composite file should be given
a name similar to R1S284.002 to reflect the current round, stage and
class.
.skip.test page 3
On the DECsystem10 computer, the command which would be issued to append
together the files for round 1, stage 2 for the class of '84 would
be
.skip.indent 5
COPY R1S284.002=*.084
.skip
On the DECsystem20 computer, the commands which would be issued to
append together the files would instead be
.skip.indent 5
DELETE R1S284.002
.INDENT 5
APPEND *.084 R1S284.002
.skip
On the DECsystem20 computer, it is necessary to make sure that the
new file does not already exist since, if it did exist when the APPEND
command was issued, then the contents of the interview request files
would merely be appended to whatever already happened to be in the
file.  It should also be noted that the positions of the source and
destination files are reversed between the 2 computers, and that a
COPY command cannot be used on the DECsystem20 computer to append files
together.
.list element
While still connected to the central storage account, copy or rename
the composite file into the processing account.
.list element
While still connected to the central storage account, copy the time
profile file TIMES.JOB into the processing account.  The original
version of this file should remain in the central storage account.
It is suggested that the file should be given a name similar to
R1S284.003 to reflect the current round, stage and class.
.list element
Connect to the processing account.  Run either the JOBBIG program or
the JOBSLO program to place the students on the ranked lists for the
firms which they have requested.  If bidding scheme 1 is being used,
in which the failure of a request boosts the priority of all lower
priority requests made by the same student, then the JOBBIG program
must be used.  Otherwise, either can be used interchangeably.  The
JOBBIG program only has to read and write the data files once since
it stores all of the requests made by every student for every firm
in arrays.  The JOBBIG program is fast, but large.  The JOBSLO program
only stores in its internal arrays the information for the firm which
is presently being processed.  Since any student can request any firm,
the JOBSLO program must read and then write the entire student request
file for each firm.  The JOBSLO program is small, but it takes a long
time to process all of the requests since it has to read and copy all
of the interview requests in order to process a single firm.
.skip.test page 3
Both the JOBBIG program and the JOBSLO program will ask for the kernel
for the random number generator.  This number is used to select what
sequence of pseudo-random numbers is used to randomize the order of
the requests for a particular firm which all have the same priority
or bid.  A value such as 1000 or 2000 or the current year is appropriate
for the kernel.  Use of the same kernel if the program has to be run
again with the same data allows these programs to duplicate the same
results.  Of course, if so much as 1 request is added or deleted or
given a different priority between the runs, then the results will
be different even if the same kernel is used.  The kernel which was
used is reported on the first page of the listing of the students
requesting interviews with each firm.
.skip.test page 3
A negative kernel should not be used.  Any kernel which is -1 or less
causes the value 0.5 to be used each time that a random number in the
range 0.0 to 1.0 is needed.  This would produce a predictable shuffling
of the requests for a particular firm which all have the same priority
or bid, but does not randomize their order.  Such a negative kernel
could be used when preparing test cases to verify the working of the
interview request system when it is being moved to another computer
or when the operating system is being changed, since the resulting
order is not dependent upon the particular random number generator
employed.
.skip.test page 3
The JOBSLO program will also ask for the number of the first and last
firms to be processed, but, unless there is some problem, -1 can be
typed to allow all of the firms to be processed.  The JOBBIG program
always processes all firms.
.skip.test page 3
Shown below are the times which were required for the sequence of
programs which are run in turn to process a typical set of 1008 total
interview requests which were made by 108 students.  These times are
for a lightly loaded DECsystem2060.  The sizes of the programs are
also indicated.
.skip.nofill.test page 4
                     JOBBIG   JOBSLO   JOBTIM   JOBSCH   JOBPUT

 Computation time    30 sec   16 min   14 min   18 sec   15 sec
     Elapsed time   108 sec   32 min   29 min   36 sec   30 sec
Total array space     70600    15422    42750    21641      115
.fill.skip.test page 3
The long times required by the JOBSLO and JOBTIM programs are due to
these programs reading and writing the entire composite interview
request file for each firm which is processed.  The JOBSLO program
also reads and writes the entire firm schedule file for each firm,
and the JOBTIM program reads the firm schedule file from the start
through the entry for the next firm being processed, but the firm
schedule file is much shorter than the composite interview request
file and requires much less time to be read or written.
.skip.test page 3
The sizes of these programs depend upon the maximum number of firms,
available interviews, interview schedules, students and total requests
which these programs are configured to handle.  These limits are
described elsewhere in this manual.  The size of the JOBBIG program
is largely proportional to the maximum number of requests which can
be made by all students for interviews with all firms, this being set
to 5000 in the supplied version.  The size of the JOBTIM program is
essentially proportional to the maximum number of students who can
get interviews with a single firm, this being set to 350 in the supplied
version.
.list element
If the students are to be allowed to request undersubscribed firms,
but actual time assignments are to be made later, but not now, then
proceed to the running of the JOBPUT program.  After the students have
finished making further requests, the interview request files must
be collected together again and either the JOBBIG or JOBSLO program
must be run again.
.list element
If the time assignments are to be made now, then run the JOBTIM program.
The JOBTIM program is slow, since it, like the JOBSLO program, makes
one pass through the data for each firm.  The JOBTIM program will ask
for the minimum number of minutes to allow between interviews for each
student.  The scheduling algorithm works quite well with a break between
interviews of 30 minutes and this should allow the students ample time
to get from one interview to the next.  The longer the interval allowed,
the more likely it is that the interviews for which a particular student
already has been assigned times will start to interfere with the
assignment of times for the rest of the interviews for the same student
on the same days.  The JOBTIM program will also ask for the number
of the first and last firms to be processed, but, unless there is some
problem, -1 can be typed to allow all of the firms to be processed.
.list element
If the JOBTIM program has been run to make the time assignments, then
run the JOBSCH program to produce the schedules which will be given
to the students.
.list element
Run the JOBPUT program to write new copies of the individual interview
request files back into the central storage account.
.list element
Copy the final version of the firm schedule file produced by the JOBBIG
or JOBSLO program back into the central storage account where it must
have a name of the form FRMXXX.JOB where XXX represents the 3 digit
class number.
.list element
Set the fifth number to 1 in the line for the class in the CURENT.JOB
file in the central storage account.  This allows the students to use
the JOBS program to review the actions which were taken for their
requests but does not allow them to make any new requests yet.  This
also allows the administrator to run the JOBADM program again.
.list element
If some students forgot to request interviews before the deadline,
but they are to be allowed to request interviews after the running
of the JOBPUT program, then set the fifth number to 2 in the line for
the class in the CURENT.JOB file in the central storage account.  Do
not change the stage number.  This allows students who have not run
the JOBS program yet during the current stage to do so, but those who
did run the program before the requests were processed will only be
able to get reports.  When the late students have finished, process
the requests again.  The requests which were made before the first
processing will not be changed.  The new requests will merely be added
to the bottoms of the lists and will only be allocated interviews in
firms which were undersubscribed.
.list element
If all of the students are allowed to bid for undersubscribed firms
in the current round, increment the third number by 1 and change the
fifth number to 2 in the line for the class in the CURENT.JOB file
in the central storage account.  This advances the stage number and
allows the students to use the JOBS program to request additional
interviews.  Run the JOBADM program and exit from it to merge the new
stage number into the firm schedule file.
.list element
If a new round is to be started, rather than a new stage, increase
the second number by 1, set the third number to 1, and set the fifth
number to 0 in the line for the class in the CURENT.JOB file in the
central storage account.  This allows the administrator to enter a
new set of firms for the first stage of the next round and locks the
students out.  Finally, when the students are to be allowed to request
interviews for the firms in the new round, set the fifth number to
2 in the line for the class in the CURENT.JOB file in the central
storage account.
.end list.left margin 0
.skip 2.test page 10.fill.left margin 0
.rtt'Evaluation of Allocation of Interviews and Times',,'>'
.center
EVALUATION OF ALLOCATION OF INTERVIEWS AND TIMES
.center
---------- -- ---------- -- ---------- --- -----
.skip
The JOBGRF program can be run after either of the ranking programs
JOBBIG or JOBSLO have been run to check what proportion of the students
have gotten most of the interviews which they requested, or after the
time assignment program JOBTIM has been run to check what proportion
of the students got the times which they requested.
.skip.test page 3
The performance of the interview allocation process is indicated by
a chart which is similar to that shown below.
.skip.nofill.test page 10.left margin 10
       0  0  0  0  0  0  0
G  5   0  0  0  0  0 34  0
o  4   0  0  0  0  3 33  0
t  3   0  0  0  0  2 19  0
t  2   0  0  3  2  0 10  0
e  1   0  2  0  1  0  0  0
n  0   0  0  0  0  0  0  0

       0  1  2  3  4  5
       Requested
.left margin 0.fill
.skip.test page 3
In this chart, the horizontal axis indicates the number of interviews
requested in the current round, and the vertical axis indicates the
number actually gotten.  The values in the chart are the numbers of
students asking for the number indicated by the column and actually
getting the number indicated by the line.  For example, 10 students
requested 5 interviews but only got 2, and 19 students requested 5
interviews but only got 3.
.skip.test page 3
The unnumbered right column would indicate the students who requested
more interviews than can be represented by the numbered columns, and
the unnumbered top line would indicate the students who got more
interviews than can be represented by the numbered lines.  The chart
will automatically expand to represent up to 20 interviews requests,
so the unnumbered column and line would only be used if the students
can request more than 20 interviews in a single round.  It is, however,
only the smaller numbered columns and lines which are important.
.skip.test page 3
The JOBGRF program should be run after the JOBBIG or JOBSLO program
has been run to check that no students have been completely shut out
of getting any interviews.  If students who requested a reasonable
number of interviews are shown as having gotten only 0 or 1 interview,
then the ranking program should probably be run again with a different
kernel for the random number generator to see if a better allocation
of interviews can be obtained.
.skip.test page 3
The JOBGRF program can also be run after the JOBTIM program has assigned
times for the interviews, but this is really only useful for verifying
the operation of the JOBTIM program if it is changed.  The assignments
are summarized by a chart similar to that shown below.
.left margin 10.skip.nofill.test page 10
Summary of students getting time preferences
.skip
Did not ask for either date or time
  Got
 None
   13
.skip
Asked for date but not for time
  Got  Got
 None Date
    4    0
.skip
Asked for time but not for date
  Got       Got  ...
 None         1    2    3    4    5    6    7    8
   49       220   46   18   12    5    3    0    1
.skip
Asked for both times and date
  Got  Got  Got  ...
 None Date    1    2    3    4    5    6    7    8
    6    0   23    1    5    1    1    1    0    1
.left margin 0.fill.skip.test page 3
The upper left number in the chart is the number of interviews for
which the students did not indicate any preference for date or time.
This number appears under the caption "Got None" since, of course,
the date and time which were actually assigned could not match a date
or a time which was requested by the student.  The remaining captions
do not just restate the obvious.
.skip.test page 3
The numbers which appear below the series of numbers 1, 2, 3 and so
on indicate the number of interviews which were able to be scheduled
at the most preferred time specified by the student, at the second
most preferred time, at the third most preferred time, and so on.
.SKIP 2.test page 17
.rtt'What Takes Place During Processing',,'>'
.center
WHAT TAKES PLACE DURING PROCESSING
.center
---- ----- ----- ------ ----------
.skip
ALLOCATION OF INTERVIEWS
.skip.test page 3
The interviews are allocated to the students by either the JOBBIG or
JOBSLO programs.  The interview requests are sorted by the following
criteria in turn.
.skip.nofill.test page 8
1.  By firm being requested.
2.  By whether the request has been processed in a previous stage.
    If previously processed, then lowest rank comes first.
    If new request, then this comes after those previously processed.
3.  By the priority which the student assigned to this request.
    If requests are ranked 1 to N then low numbers come first.
    If requests are given high or low priority, then high comes first.
    If requests are bid in an auction, then high bid comes first.
.skip.fill.test page 3
The order of the new requests having the same values for the priority
or bid is then randomized.  It is known how many interviews will
actually be held by each firm, so the students who happen to fall within
this distance from the start of the list get interviews, and the
remaining students appear on the waiting list.
.skip.test page 3
The JOBSLO program only has available the requests for 1 firm at any
1 time.  As each firm is processed, the JOBSLO program reads the entire
file containing the requests made by all of the students, gathers those
for the current firm, allocates the interviews, then reads the file
again and writes an updated copy of the requests made by each student
into a new version of the file.  The interview request file is thus
read twice and written once for each firm, and the firm schedule file
is read once and written once for each firm.  Since the JOBSLO program
processes each firm in turn, it cannot attempt to adjust a student's
chances for the lesser wanted requests based upon what happens for
the more wanted requests.
.skip.test page 3
The JOBBIG program has available all requests for all firms at once.
The JOBBIG program reads and writes the composite interview request
file only once and reads and writes the firm schedule file only once.
The JOBBIG program allocates the interview requests in the same order
as that used by the JOBSLO program unless it is attempting to increase
the chances of a particular student getting lesser wanted requests
when those which the student more wanted cannot be assigned.  In the
latter case, the JOBBIG program allocates all the most wanted requests
across all firms first, then the second most wanted requests across
all firms, and so on.  If a particular student misses out on a request,
then the JOBBIG program can adjust the lesser wanted requests to be
processed earlier than would have been the case otherwise.  This
adjustment can only be done if the students assigned values to the
requests ranging from 1 for the most wanted to N for the least wanted
where N is the maximum number of requests which can be made by 1
student.  This adjustment is performed by subtracting 0.6 from values
which the student assigned to the remaining requests.  Thus if a student
misses out on the second most wanted request, then the third most wanted
request made by that student becomes a 2.4 instead, the fourth most
wanted request becomes a 3.4 and so on.  The request which was third
most wanted but which is now assigned a 2.4 will be processed before
the third most wanted requests made by students who have so far gotten
their requests.  If the same student then misses out on the third most
wanted request which has become a 2.4, then the fourth most wanted
request made by that same student becomes a 2.8 (i.e., 4.0-0.6-0.6),
and so on.
.skip 2.test page 5
ASSIGNMENT OF TIMES FOR THE INTERVIEWS
.skip.test page 3
Interview times are assigned by the JOBTIM program.  The JOBTIM program
reads the interview request file once for each firm which is processed.
A list sorted by rank is kept which identifies each student who gets
an interview with the present firm.  As the information for a student
is read, the times and dates of all interviews which could block a
request for the present firm by that student are placed into the first
unused location on the list or at the top of the list since it will
not be known whether the student requested the current firm until the
end of the requests made by the student is reached.  The information
for possible blocking interviews with other firms is discarded if the
student does not request the current firm, or is moved into the correct
spot if the student does request the current firm.
.skip.test page 3
The date and time assignments are then made in the following steps.
.list.list element
A matrix is prepared which has 1 line for each recruiter and 1 column
for each possible interview held by that recruiter.  A value in the
matrix is zero if it corresponds to an interview which can be held,
-1 if it is in a schedule which is not necessary due to too few students
having requested interviews with the firm, and -2 if it is in the line
for a recruiter but corresponds to an interview which is not being
held due to its being too early, too late or skipped.
.list element
In the first pass, the numbers of all students who have been previously
assigned interview times are inserted into the matrix.  If an interview
which was previously assigned is no longer being held, then the
recruiter number for the student previously assigned that time is set
to -1 so that a new time can be assigned in the next steps.
.list element
In the second pass, all students who have requested specific times
are given these times if possible.  If they also requested a specific
date, then only interviews being held on that date are considered.
Starting with the first student in the ranked list, an attempt is made
to give each student the most desired time trying each recruiter
schedule in turn.  For those who could not get their most desired time,
then an attempt is made to give them the second most desired time.
This process continues until all of the requested times have been tried.
In each case, the student is given the requested time if it is still
available and if it does not overlap with an interview previously
assigned to the same student.  An interview is reserved for a student
by placing the student number into the matrix and by inserting the
recruiter number, date and time into the appropriate arrays.
.list element
In the third pass, students who requested a specific date but no times,
or who specified a list of times on a specific date but who were blocked
from getting any of the times which they requested are assigned
interviews which are still available on the requested dates which are
not blocked by interviews previously assigned to the students.
.list element
In the fourth pass, all students who have not yet been assigned
interviews, either because they did not specify either a date or times,
or who were blocked from getting their requested date or times, are
assigned the remaining interviews if they are not blocked from getting
them.
.list element.
In the fifth and final pass, students who were assigned interview times
are shifted to the still open times to make room for those who could
not be assigned interview times.  For each student who could not be
assigned an interview time, each of the times which are not blocked
by other interviews previously assigned to that student are tried in
turn.  The only positions which are considered are those which are
occupied by students for whom an open position is not blocked by other
interviews previously assigned to the student being moved into the
open position.  If several times could be made available in this manner,
then the student who is moved to make room is the student for whom
the open position is highest on that student's list of preferred times.
.end list
.page
.skip 2.test page 10.fill.left margin 0
.rtt 'Maximum Sizes of the Cases Handled by the Programs',,'>'
.center
MAXIMUM SIZES OF THE CASES HANDLED BY THE PROGRAMS
.center
------- ----- -- --- ----- ------- -- --- --------
.skip.fill
The variables which store the sizes of the arrays used in the interview
request system have the same names in all programs.  Unique but logical
values have been chosen for each of these variables to make
identification of the arrays to which they apply easier.  In the table
listed below, the appropriate limits are shown only under the programs
which are limited in the respect described.
.skip 2.test page 32.NOFILL
         JOBADM     JOBS   JOBBIG   JOBSLO   JOBTIM   JOBSCH   JOBPUT

.test page 3
LMTFRM = firms interviewing during round
            200      200
.test page 3
LMTINT = blocks of contiguous interviews for 1 firm (schedules+breaks)
                                       150      150
.test page 3
LMTLIN = schedules for 1 firm
                                                130
.test page 3
LMTMJR = requests by all students for all firms in round
                             5000
.test page 3
LMTONE = requests by all students for 1 firm in round
                                       400
.test page 3
LMTPRF = time preferences for single request
                      13       13       13       13                13
.test page 3
LMTRCT = blocks of contiguous interviews all firms (schedules+breaks)
           1000     1000     1000
.test page 3
LMTREQ = firms any 1 student can talk to on same days as are being
         used for interviews by 1 firm requested by that student
                                                 20
.test page 3
LMTSCH = students one recruiter can speak to in 1 day.
             16       16*                        16
.test page 3
LMTSIN = requests made by single student in round
                     100
.test page 3
LMTSLT = profiles of possible starting times of interviews
             50       50                         50
.test page 3
LMTSTD = students in class who have made requests in round
                              500
.test page 3
LMTTIM = all starting times in all profiles of starting times
            500      500                        500
.test page 3
LMTTLK = 1 more than students which single firm can interview
                                                350
.test page 3
.skip
* no array size in JOBS program actually depends upon LMTSCH
.FILL
.page
.SKIP 2.TEST PAGE 10.LEFT MARGIN 0.FILL
.rtt'Descriptions of the Files',,'>'
.center
DESCRIPTIONS OF THE FILES
.center
------------ -- --- -----
.skip
The following sections of this manual describe each of the types of
data files which are stored in the central storage account.  The
computer services staff member who is managing the use of the interview
request system must be familiar with the contents of the account
validation file, the current stage file and the file which specifies
the profiles of starting times since these files are maintained using
a text editor.  Descriptions are also included for the firm schedule
file and the interview request files since the contents of these files
must be referred to if the results of the allocation process must be
sight verified.  Instructions are also given for the use of the RSMPSW
program which is used to generate the initial versions of the password
files.
.left margin 0
.skip 2.test page 10.left margin 0.fill
.RTT'Contents of the Account Validation File',,'>'
.center
CONTENTS OF THE ACCOUNT VALIDATION FILE
.center
-------- -- --- ------- ---------- ----
.skip.test page 3
The JOBS and JOBADM programs can only be run from accounts which are
specified in a file named ACOUNT.JOB in the central storage account.
The items in this file are changed using a text editor.  The account
validation file contains 1 line for each account, or for each group
of accounts, from which the programs can be run.  Lines are read from
the account validation file until a line is found which exactly
specifies the account from which the program is being run or which
specifies a group of accounts of which the current account is a member.
The subsequent lines in the account validation file are ignored even
if they also specify the current account.  It is thus possible to treat
a few members of a group of accounts differently than the rest of the
members of the group by inserting lines which specify the accounts
to be treated specially before the line which specifies the rest of
the group of accounts.
.skip
A typical account validation file is shown below.
.skip.nofill.test page 5
-1 84 85  2  A.A.PLACEMENT     !ADMINISTRATOR
85  2  0  2  A.JOBS.85         !CLASS OF 1985
84  2  0  2  A.JOBS.84         !CLASS OF 1984
-1  1 99  2  A.P.BARTH         !PROGRAMMER RUNNING AS ADMINISTRATOR
=
.skip.test page 3.fill
The general form of an entry in the ACOUNT.JOB file is
.skip
NUMBER1 NUMBER2 NUMBER3 NUMBER4 <ACCOUNT.NAME>
.skip
or
.skip
NUMBER1 NUMBER2 NUMBER3 NUMBER4 [PROJECT NUMBER,PROGRAMMER NUMBER]
.skip.test page 5
where
.skip.left margin 10
.i-10
NUMBER1#=#-1, enables administrative functions
.i-2
=#0 through 999, places account into class having this value
.i-2
=#1000 or greater, prevents use of the JOBS program
.skip.test page 3
.i-10
NUMBER2#=#for administrator, is lowest class which can be processed
.i-2
=#0 for students, indicates each student has own account
.i-2
=#1 for students, indicates all students use same account and select
their own passwords
.i-2
=#2 for students, indicates all students use same account and supply
both numbers and passwords assigned to them
.skip.test page 3
.i-10
NUMBER3#=#for administrator, is highest class which can be processed
.i-2
=#for students, ignored
.skip.test page 3.i-10
NUMBER4#=#0, any terminal which does not fit one of the following
classifications
.i-2
=#1, video terminal which scrolls
.i-2
=#2, video terminal which scrolls and on which form feeds clear the
screen
.left margin 0
.SKIP.test page 3
Anything which appears to the right of an exclamation point is treated
as a comment and is ignored.  The end of the file is marked by a line
which starts with an equal sign.  The line which starts with an equal
sign and all lines which follow the line which starts with an equal
sign are ignored.  It is not necessary however that the end of the
file be marked by a line which starts with an equal sign.
.skip.test page 3
The numbers which can appear on each line are described in more detail
below.
.left margin 10
.skip.test page 3.indent-10
NUMBER1#=#specifies the class number which will be assigned to the
accounts matching the specification on the current line.  NUMBER1 can
also be used to grant administrator privileges to the account.
.skip.test page 3.indent-2
=#-1, the account can be used by the administrator.  NUMBER2 and NUMBER3
are taken as the lowest and highest class numbers for which firm
schedules can be entered using the JOBADM program.
.skip.test page 3
For example, if the file contained the lines
.skip.test page 4.nofill
-1 999 999 2 <F.STAFF>       !COMPUTER SERVICES STAFF
-1 1 4 2 <S.STAFF>           !COMPUTER SERVICES STAFF
.skip.test page 3.fill
then the account <F.STAFF> could enter the schedules for firms
interviewing students in class 999 and the account <S.STAFF> could
enter the firm schedules for classes 1 through 4.
.skip.test page 3.indent-2
=#0 through 999, allows the account to be used to run the JOBS program
to request interviews.  The administrative program cannot be run.
NUMBER1 is taken to be the class number.  The JOBS program works
identically for all classes.  The class number appears in the name
of the file in which the interview requests are stored so that the
interview requests for the various classes can be kept separate.
.skip.test page 3.indent-2
=#1000 or greater, prevents running of the programs from this account.
The programs also cannot be run from accounts which do not match any
of the accounts specified in the file.  However, putting in a line
with NUMBER1=1000 can be used to block use of the programs by a subset
of a group of accounts validated by a later line.
.skip.test page 3
For example, if the file contained the lines
.skip.nofill.test page 2
1000 0 0 2 <S.O.SMITH>
   2 0 0 2 <S.O.*>
.skip.fill.test page 3
then accounts such as <S.O.JONES> and <S.O.JOHNSON> which are validated
by the second line would be able to run the JOBS program, and would
be taken to be in class 2, but the account <S.O.SMITH> would not be
able to run the program.
.skip.test page 3.indent-10
NUMBER2#=#if NUMBER1 is -1 so that the administrator can run the JOBADM
program from this account, then NUMBER2 specifies the lowest class
number for which the firm schedules can be entered.
.skip.test page 3.indent -2
=#if NUMBER1 is in the range 0 through 999, then NUMBER2 specifies
whether each student will use a separate account or whether the students
will run the JOBS program from a shared account.  If the students run
the program from a shared account, then NUMBER2 also specifies whether
they use passwords which are assigned to them or will choose their
own passwords.
.skip.test page 3
All of the accounts which are used by the students in the same class
must have identical values for NUMBER2.  The reason for this is that
the names of the interview request files are based only on the value
of NUMBER1 and a second number which represents either the password,
the student or the account.  The program protects against ambiguity
in the conversion of the password to a number, and the account numbers
are unique, but there is no protection against the password being
converted to a number which happens to identify another student or
another account.
.skip.test page 3
For example, a student running from a shared account might choose the
single letter Z as a password which would be converted to the number
26.  If some of the students in the same class were allowed to run
the program from individual accounts without stating passwords, then
a student running the program later from such an individual account
for which the account number also happened to be 26 would gain access
to the interview requests started by the first student.  This ambiguity
could be avoided very easily by just having the students who are using
individual accounts also use passwords to gain access to the JOBS
program.
.skip.test page 3.indent -2
=#0, and if NUMBER1 is in the range 0 through 999, then it is expected
that each student has a separate account.  There can only be 1 interview
request file associated with each of these accounts.  The student will
not be asked to supply a password to identify which interview request
file belongs to the student.
.skip.test page 3.indent -2
=#1, and if NUMBER1 is in the range 0 through 999, then several students
can use the same account.  The student can access any interview request
file for the current class for which the password is known.  To create
a new interview request file, the student merely enters a password
which is not already in use.  It is not necessary that a interview
request file which is to be modified have been created from the same
account, only that it have been created using a password chosen by
the student from an account having the same class number.  There might,
for example, be 5 accounts any of which could be used by any of the
students at any time, but all of these accounts would need to have
the same value of NUMBER2.
.skip.test page 3.indent -2
=#2, similar to NUMBER2=1, except that the student must supply both
a number and a password which the computer services staff has assigned
to the student.  This number and password combination must appear
together on a line in a file named PSWXXX.JOB, where XXX is the class
number, in the central storage account.  The contents of this file
are described elsewhere in this manual.
.skip.test page 3.indent-10
NUMBER3#=#if NUMBER1 is -1 so that the administrator can run the JOBADM
program from this account, then NUMBER3 specifies the highest class
number for which the firm schedules can be entered.
.skip.test page 3.indent -2
=#if NUMBER1 is in the range 0 through 999, then NUMBER3 is ignored.
.skip.test page 3.indent -10
NUMBER4#=#specifies the type of terminal which will be used by most
of the students using this account.  This specifies the general type
of display, not the particular brand or model of terminal.  If some
students use a different type of terminal, then these students will
have to specify the type of terminal which they are using each time
that they run the JOBS program.  The terminal type can be changed either
when the JOBS program asks if the student's name is correct or any
time that the program asks the "WHAT NEXT?"  question.
.skip.test page 3.indent -2
=#0, the terminal produces paper output or does not match any of the
other terminal types supported by the JOBS program.
.skip.test page 3.indent -2
=#1, the terminal is a video terminal which scrolls the lines currently
being displayed upwards to display the new lines at the bottom and
to discard the oldest lines at the top.  The terminal cannot clear
the screen when a form feed character is issued.  The screen can display
24 lines of 80 columns each.  The JOBS program will scroll short dialogs
but will stop whenever the screen fills and wait for the student to
press the RETURN key when displaying the list of firms, the list of
interviews which have been requested, or lengthy help messages.  The
program will scroll the next page of text onto the screen after the
student presses the RETURN key.
.skip.test page 3.indent -2
=#2, same as NUMBER4=1 except that the screen can be cleared by issuing
a form feed character.  The JOBS program will scroll short dialogs,
but will clear the screen before displaying the list of firms, the
list of interviews which have been requested, or lengthy help messages.
Whenever the screen fills when these lists or long help messages are
being displayed, the program will stop and wait for the student to
press the RETURN key before clearing the screen again and then
displaying the next page of text.
.skip.test page 3.left margin 0
The accounts which can be used to run the programs are specified by
name on the DECsystem20.  Accounts are arranged in a tree structure
with periods separating the list of nodes.  The account names which
appear to the right of the numbers in the account validation file should
be preceded by a less than sign and followed by a greater than sign
although any sequence of printing characters which does not start with
a left square bracket is also taken to be an account name.  There must
not be any blanks either between the leading less than sign and the
name of the account or within the name of the account.  The alphabetic
letters A through Z in the account names can appear in either upper
or lower case.  An asterisk can be included at the right end of the
account name if any sequence of nodes is to be allowed starting at
that point.  A period can appear between the names of the nodes to
the left and the asterisk but is not required.  In order to be matched,
the name of the account being used must include a node at the location
of the asterisk.  An account name consisting only of nodes to the left
of the location of the asterisk will not be matched.
.skip.test page 11
For example,
.skip.test page 9.nofill
1 0 0 0 <*>         !allows any account

1 0 0 0 <S.O>       !allows <S.O> but not <S.O.SMITH> or <S.O.JONES>

1 0 0 0 <S.O.*>     !allows <S.O.SMITH> and <S.O.JONES> but not <S.O>

1 0 0 0 <S.O*>      !same as the above

1 0 0 0 <S.O.SMITH> !allows <S.O.SMITH> but not <S.O> or <S.O.JONES>
.fill
.skip.test page 3
The accounts which can be used to run the program are specified by
numbers on the DECsystem10.  Each purpose for which the computer can
be used is assigned a project number and these project numbers are
paired with a programmer number which identifies a particular person
who is allowed to use the computer.  The project and programmer numbers
are octal numbers, and never include either of the decimal digits 8
or 9.  Accounts are specified in the account validation file by a left
square bracket, followed by the project number, a comma, the programmer
number and a right square bracket.  Spaces can appear on either side
of the numbers and can replace the separating comma.  A question mark
can appear anywhere in either number where any digit is to be allowed.
An asterisk can appear instead of a number if any number is to be
allowed.  A comma can separate the asterisk from the other number but
is not necessary.
.skip.test page 13
For example,
.skip.test page 11.nofill
1 0 0 0 [201,3556]  !allows programmer 3556 to use project 201

1 0 0 0 [*,3556]    !allows programmer 3556 to use any project

1 0 0 0 [*3556]     !same as the above

1 0 0 0 [201,*]     !allows any programmer to use project 201

1 0 0 0 [?01,*]     !allows any programmer to use project 1 or 101
                    !or 201 or 301 or 401 or 501 or 601 or 701
1 0 0 0 [?01*]      !same as the above
.fill.left margin 0
.left margin 0
.skip 2.test page 10.left margin 0.fill
.RTT'Contents of the Password File',,'>'
.center
CONTENTS OF THE PASSWORD FILE
.center
-------- -- --- -------- ----
.skip.test page 3
The students must supply both a number and a password to gain access
to the JOBS program if they are running the program from an account
for which, in the line for that account in the account validation file,
the second number has the value 2.  These numbers and passwords must
be assigned by the computer services staff.  The numbers and passwords
are stored in files having names similar to PSWXXX.JOB where XXX is
the 3 digit class number.  There must be 1 of these files in the central
storage account for each class which is using assigned passwords to
gain access to the JOBS program.  The password files can be constructed
using a text editor, or can be generated automatically by the RSMPSW
program described elsewhere in this manual.
.skip.test page 3
It should be noted that, although the interview request system and
the student resume system use different central areas and different
names for their password files, the formats of the password files
accepted by these systems are identical.  If both of these systems
are in use at the school, then the same set of passwords and numbers
should probably be used to gain access to both systems.
.skip.test page 3
Each line in the password file starts with a number followed by 1 or
more spaces and then by a password to be associated with this number.
The space between the number and password is required.  An exclamation
mark followed by a comment or by the student's name can appear to the
right of the password.  The file can be terminated by a line which
starts with or contains only an equal sign, although such a line is
not necessary.  Any lines following the line which starts with the
equal sign will not be read and will be ignored.
.skip.test page 3
The number at the start of the line must be in the range 0 through
999999 and must be composed only of the digits 0 through 9.  There
must not be any duplication of the numbers within a particular class
since these numbers are used in the construction of the names of the
files in which the requests made by the students are stored.  It is
recommended that there also should not be any duplication of the
passwords within a class, but such duplication of the passwords will
not cause the JOBS program any difficulty.
.skip.test page 3
The password can consist of 1 or more words.  Spaces between the words
merely mark word boundaries.  It does not matter if just 1 or if several
spaces appear between the words.  The password can contain up to 20
characters, counting the separations between words as 1 character each.
The passwords can be constructed from any printing characters other
than the exclamation point.  The capital and lower case forms of the
alphabetic letters A through Z are considered to be equivalent.
.skip.test page 3
The student can type both the number and the password together on the
same line when the JOBS program asks for these, or can type just the
number in which case the program will ask again for the password.  If
both the number and password are typed together on the same line, then
a space or spaces can separate the number and the first character of
the password, but the separating spaces are not required unless the
password itself starts with one of the digits 0 through 9.  If the
password consists of more than a single word, then the student must
type at least 1 space between pairs of words, and at least 1 space
must appear between the words in the password file, but the exact number
of spaces is ignored.  It does not matter if the student types the
alphabetic letters A through Z in the password as capitals or as small
letters.
.skip.test page 3
A typical password file is shown below.
.skip.nofill.test page 5
2164 sticks and stones!John Doe
3729 STORM            !JANE SMITH
1000 mighty
12 789                !DICK JONES
=
.fill
.left margin 0
.skip 2.test page 10
.rtt'Contents of the Current Stage File',,'>'
.center
CONTENTS OF THE CURRENT STAGE FILE
.center
-------- -- --- ------- ----- ----
.skip.test page 3
The file named CURENT.JOB in the central storage account defines the
current round and stage, the type of bidding priority scheme being
used by each class, and whether the JOBS program is open or closed.
The items in this file are changed using a text editor.  This file
is read by both the JOBADM program and the JOBS program.  It is not
used when the requests are processed.
.skip.test page 6
The following is a typical CURENT.JOB file
.skip.NOFILL
84 1 1 11  1 !GRADUATING CLASS
85 1 1 11  2 !FIRST YEAR CLASS
3 1 2  1  2 !TEST CLASS
=
.FILL.SKIP.TEST PAGE 3
The file can be terminated by a line which starts with an equal sign.
Any lines which appear after the line which starts with an equal sign
are ignored.
.skip.test page 4
Each line in the CURENT.JOB file has the form
.skip
NUMBER1 NUMBER2 NUMBER3 NUMBER4 NUMBER5 !COMMENT
.skip.test page 5
where
.skip.nofill
NUMBER1 = Class
NUMBER2 = Round
NUMBER3 = Stage within the round
NUMBER4 = Priority type
   1 ranked requests. If request fails, boost lower priority
   2 ranked requests. No boosting of lower priority requests
  11 high/low priority bids.  Total of high bids fixed during season
  12 high/low priority bids.  Total of high bids fixed during round
  13 high/low priority bids.  Total of high bids fixed for each stage
  21 auction.  Total of all bids fixed for entire season
  22 auction.  Total of all bids fixed for single round
  23 auction.  Total of all bids fixed for each stage
NUMBER5 = Whether JOBS and JOBADM programs can be used
  -1 neither the JOBS nor the JOBADM programs can be used
   0 JOBS program cannot be used
   1 JOBS program can be run only to obtain reports
   2 JOBS program can be run to request interviews
.fill.skip.test page 3
.skip.test page 3
The contents of the CURENT.JOB file are described in more detail below.
.left margin 10
.skip.indent -10.test page 3
NUMBER1#=#the class number.  This must be in the range 0 through 999.
The class number is determined by matching the account used to run
the JOBS program with the line validating this account in the account
validation file, then the first line starting with this class number
in the current stage file is used to set the current round and stage.
.skip.indent -10.test page 3
NUMBER2#=#the round number.  The first round is number 1, the second
2, etc.  During each round, the students can sign up for interviews
with a particular batch of firms.  There can be 1 or more stages in
each round.  If there is more than 1 stage in the round, then the
ranking of the requests made during the second stage starts after the
ranking already assigned to the requests made in the first stage.  Firms
can be added from one stage to the next in the same round, but the
list of firms should remain largely the same.  At the start of the
following round, the entire list of firms is cancelled and a new list
is begun.
.skip.indent -10.test page 3
NUMBER3#=#the stage within the round.  The first stage of a round is
number 1, the second 2, etc.  There are usually only 1 or 2 stages
to each round.  If there are 2 stages, then the students can sign up
in the second stage for any firms which are not fully subscribed, or
can ask for their names to be added to the waiting list.  See the
description of NUMBER2.
.skip.left margin 10
.indent -10.test page 3
NUMBER4#=#indicates how interviews are allocated when there is excess
demand, i.e., when more students request interviews than the firm can
handle.  Each student uses the priority scheme selected by NUMBER4
to indicate which of the requested interviews are considered to be
the most important to the student.  NUMBER4 selects whether the
interview requests are ranked, whether a few are assigned a higher
priority, or whether the interviews are auctioned using pretend money.
For the latter 2 schemes, NUMBER4 also selects the time frame across
which the bids are totalled.
.skip.test page 3
.indent -2
=#1 or 2, requests are ranked by the student.
.skip.test page 3
The request for each interview must be assigned a different value.
These values range from 1 through and including the number of interview
requests allowed.  A priority value of 1 is the most likely to be
honored.  Larger values are less likely to be honored.
.skip.test page 3.indent -2
=#1, all 1 priority requests are assigned first, then all 2 priority,
and so on.  When an interview cannot be granted, all of the student's
lower priority requests are given higher priority than those made by
other students whose requests were granted.  Requests made using this
scheme must be processed by the JOBBIG program.
.skip.test page 3
In practice, the priority values which are stored in the student's
file are 10 times those selected by the student.  If the student can
make 6 requests, then the values which are stored for these to indicate
the priorities selected by the student are 10, 20, 30, 40, 50 and 60.
If the student does not get a particular request, then all those having
higher values are reduced by 6.  If the student does not get the first
choice (value 10), then the second choice priority 20 becomes a 14,
the third choice priority 30 becomes a 24, etc.  The modified second
choice priority of 14 would then be processed before anyone else's
unmodified second choice priority of 20.  If the student does not get
the second choice either, then the third choice priority which was
originally 30 becomes 18, the 40 becomes 28, etc.
.skip.test page 3.indent -2
=#2, all 1 priority requests are assigned first, then all 2 priority
requests, and so on.  There is no adjustment of the lower priority
requests when an interview cannot be granted.  Requests made using
this scheme can be processed by either the JOBSLO or the JOBBIG program.
.skip.test page 3.indent -2
=#11, 12 or 13, requests are assigned high or low priorities.
.skip.test page 3
Each student is allowed to indicate that some requests are to be given
higher priority than requests made by other students without this
priority.  The maximum number of these high priority requests which
can be made by each student during a particular period is specified
in the firm schedule file and is set when the administrator runs the
JOBADM program.  There are only 2 classes of priorities.  These are
called priority A for the high priority or most desired requests and
priority B for the low priority or lesser desired requests.  Once the
requests have been processed, the high priority bids which have been
used are lost regardless of whether the student gets the interviews.
High priority bids for interviews which cannot be allocated are not
returned to the students.
.skip.test page 3
.indent -2
=#11, the total number of high priority bids placed throughout the
interview season cannot exceed the maximum.
.skip.test page 3
.indent -2
=#12, the total number of high priority bids in all stages of a single
round cannot exceed the maximum.  All bids are restored for the
following round.
.skip.test page 3
.indent -2
=#13, the total number of high priority bids in a single stage cannot
exceed the maximum.  All bids are restored for the following stage
of the same or the next round.
.skip.test page 3.indent -2
=#21 or 22 or 23, the interviews are auctioned.
.skip.test page 3
Each student is allowed to make bids for interviews.  The maximum amount
of any one bid, and the maximum sum of the bids which the student can
make during a particular time period, are stored in the firm schedule
file and are set when the the administrator runs the JOBADM program.
The administrator can select any maximum amount up to 9,999,999. Once
the requests have been processed, the amount bid is lost regardless
of whether the student gets the interviews.  Bids for interviews which
cannot be allocated are not returned to the students.
.skip.test page 3
This scheme can be similar to a cash auction if the maximum amounts
allowed are large, or can be a multi-tiered priority scheme if the
amounts allowed are small.  For example, if the total amount bid is
set to 10 and the maximum amount which can be bid for any firm is 2,
then the students in reality can make high (2), moderate (1) and low
(0) priority requests, but the number of high priority requests made
reduces the number of moderate priority requests which can be made.
.skip.test page 3
.indent -2
=#21, the sum of the bids placed throughout the interview season cannot
exceed the maximum.
.skip.test page 3
.indent -2
=#22, the sum of the bids in all stages of a single round cannot exceed
the maximum.  All bids are restored for the following round.
.skip.test page 3
.indent -2
=#23, the sum of the bids in a single stage cannot exceed the maximum.
All bids are restored for the following stage of the same or the next
round.
.left margin 10
.skip.test page 3.indent -10
NUMBER5#=#specifies whether the JOBS program and JOBADM program can
be run.
.skip.test page 3.indent -2
=#-1, neither the JOBS program nor the JOBADM program can be run.  This
probably indicates that the deadline for submission has passed, and
the requests are being processed.
.skip.test page 3.indent -2
=#0 or 1 or 2, the JOBADM program can be run.
.skip.test page 3.indent -2
=#0, the JOBS program cannot be run.
.skip.test page 3.indent -2
=#1, the JOBS program can be used only to obtain a report of which
interview requests were successful.  This might be used if the requests
have all been processed, but requests are not yet being accepted for
the following stage.
.skip.test page 3.indent -2
=#2, the students can use the JOBS program to request interviews.
However, if the students have already made requests in the current
stage and these requests have been processed, then the students can
only get reports of the results unless the stage or round number is
advanced.  Setting NUMBER5 to 2, but not advancing the stage or round
number, might be used to let students who forget to enter their requests
use the JOBS program while effectively locking out the other students.
.left margin 0
.left margin 0
.skip 2.test page 10
.rtt'Contents of the Starting Time Profile File',,'>'
.center
CONTENTS OF THE STARTING TIME PROFILE FILE
.center
-------- -- --- -------- ---- ------- ----
.skip.test page 3
The file named TIMES.JOB in the central storage account specifies the
profiles of starting times for the interviews of each of the possible
lengths.  The items in this file are changed using a text editor.  Each
line in the file specifies the times which are in a particular profile.
Each line can be at most 80 characters wide.  Anything appearing to
the right of an exclamation point in the line is ignored.  The file
can be terminated by a line starting with an equal sign, although this
is not necessary.  Any lines appearing after the line staring with
the equal sign are ignored.
.skip.test page 3
The contents of each line in the profile file have the form
.skip
NUMBER1 NUMBER2 TIME 1 through TIME N !Comment
.SKIP
where
.skip.left margin 10.indent -10.test page 3
NUMBER1#=#is the length of each interview in minutes.  There can be
more than one profile for interviews of a particular length, but NUMBER2
must be different for each of these.  If NUMBER1 and NUMBER2 have the
same values as those appearing in a previous line, then the times
specified in the current line are appended to the profile started by
the previous line having the same values of NUMBER1 and NUMBER2.  This
allows a profile to contain more interviews than can be specified by
a single line of 80 characters.
.skip.indent -10.test page 3
NUMBER2#=#is a number which uniquely identifies each of the profiles
for interviews having the same length.  If there is more than a single
profile for interviews of a particular length, then NUMBER2 must be
different for each of these.  It is not necessary that the lines in
the TIMES.JOB file be sorted either based upon NUMBER1 or upon NUMBER2.
NUMBER2 does not have to be unique among the profiles for interviews
of different lengths.  For example, NUMBER2 might have the value 0
for a profile of starting times for half hour interviews and might
also have the value 0 for a profile of starting times for full hour
interviews.
.skip.indent-10.test page 3
TIME 1 through TIME N#=#are the starting times for the interviews.
Consecutive times in this list can be separated by either spaces or
commas.  Each time can be expressed either in the 12 hour system, or
in the 24 hour system.  If an interview starts at midnight or noon,
then the 24 hour system should be used to prevent ambiguity.  It should
be noted that 12am is interpreted as midnight at the start of the day,
12m as noon and 12pm as midnight at the end of the day.  The
abbreviation am stands for ante meridiem or before noon and pm stands
for post meridiem or after noon, and, of course, noon itself is neither.
If an interview does start at or near midnight, then the conflict
checking in the JOBTIM program will not be able to protect against
overlapping interviews in the adjoining day.
.skip.test page 3
Each time in the list is expressed as the hour, followed immediately
by a colon and the minutes.  The starting times for interviews held
in the morning, if expressed in the 12 hour system, can be followed
by the abbreviation AM, but this is not necessary except for times
between midnight and 1am.  If the starting times of interviews held
in the afternoon are expressed in the 12 hour system, then each of
these times must be followed by the abbreviation PM.  Spaces can appear
between the numbers and the abbreviations AM, M or PM, but are not
required.  A period can appear immediately after each of the letters
in the abbreviations AM, M or PM but is not necessary, and the letters
can be either capitals or lower case.  If an interview starts on the
hour, then the minutes need not be expressed.  For example, an interview
starting at noon could be represented as 12m, 12:00m, 12m., 12:00m.,
12 or 12:00.  An interview starting at 2 in the afternoon could be
represented as 2pm, 2:00pm, 2p.m., 2:00p.m., 14 or 14:00.
.skip.test page 3
Each profile of interview starting times does not need to be sorted
into order of increasing times, but the file will be easier to maintain
if the lists are sorted in this manner.  Regardless of whether the
times in each profile are sorted in the file, they will be sorted by
the programs using them, and any duplicate times will be discarded.
Each profile can contain up to 16 starting times.  This means that
a single recruiter can interview no more than 16 students in a single
day.
.skip.test page 9.left margin 0
The contents of a typical profile file are shown below.
.nofill.skip.test page 7
30 0  9:00  9:30 10:00 10:30 11:00 12:45 13:15
45 0  8:45  9:30 10:15 11:00 13:00 13:45 14:30 15:15 16:00
60 1  9:30 10:30 13:30 14:30 15:30 16:30
30 0 13:45 14:30 15:00 15:30 16:00 16:30 !rest of 30 minute profile
60 0  9:00 10:00 11:00 13:00 14:00 15:00 16:00
60 2  8:45  9:45 10:45 12:45 13:45 14:45 15:45
=
.fill
.left margin 0
.skip 2.test page 10
.rtt'Contents of the Firm Schedule File',,'>'
.center
CONTENTS OF THE FIRM SCHEDULE FILE
.center
-------- -- --- ---- -------- ----
.skip.test page 3
The file named FRMXXX.JOB, where XXX is the class number, in the central
storage account specifies which firms are interviewing, when they are
interviewing, and how many interviews they will hold.  This file is
first written by the JOBADM program.  The file is changed to reflect
the number of interviews which have been allocated each time that the
interview requests are processed.  This file should not exist before
the first round is started.  Only the information contained in the
first 2 records in this file is retained from one round to the next.
.skip.test page 3
The first 2 records in the file describe the current round and stage.
These initial 2 records are followed by the records which describe
each firm.  The description of each firm consists of 4 records, the
first 3 contain the name of the firm, department and address,
respectively, and the fourth record contains numeric information about
the firm.  If the firm is conducting interviews, then an additional
line describing each contiguous group of interviews in each schedule
appears after the description of the firm.
.skip.test page 3
The variables in each type of record are listed below.  The names shown
here are the same as those which are used in the various program.
.skip.nofill.test page 10
at the start of the file:
   IAUTHR,ICLASS,IMOVE,IPASS,IVERSN,NUMWHO
   KNTINC,MAXNUM,MANNER,MAXSTG,MAXRND,MAXALL,MAXBID,MAXPAY
for each firm:
   LTRINC
   LTRDPT
   LTRADR
   NUMBER,LENGTH,KNTOPN,INTRVW,IUSDUP,INCLSD,JNCLSD
for each contiguous block of interviews for the firm:
   JDATE,JFIRST,JFINAL,JSCHDL
.fill
.skip.test page 3
The contents of each of these types of records are described below.
.left margin 14
.skip 2.test page 7
.indent -14
First record in file
.skip.indent -14
IAUTHR,ICLASS,IMOVE,IPASS,IVERSN,NUMWHO
.skip
.indent -9
IAUTHR#=#identifies which program last wrote this file.
.skip.test page 3.indent -2
=#1, the firm schedule file was last written by the JOBADM program.
.skip.test page 3.indent -2
=#2, the firm schedule file was last written by the JOBSLO or JOBBIG
program during the processing of the requests.
.skip.indent -9
ICLASS#=#the class number.
.skip.indent -9
IMOVE##=#the current round number.  The first round is number 1.
.skip.indent -9
IPASS##=#the current stage within the current round.  The first stage
of each round is number 1.
.skip.indent -9
IVERSN#=#the number of times this file has been rewritten by the
administrator program or processed by the assignment programs.
.skip.indent -9
NUMWHO#=#the number identifying the account which last wrote this file.
.skip 2.test page 7
.indent -14
Second record in file
.skip.indent -14
KNTINC,MAXNUM,MANNER,MAXSTG,MAXRND,MAXALL,MAXBID,MAXPAY
.skip
.INDENT -9
KNTINC#=#the total number of firms specified by this file.
.skip.indent -9
MAXNUM#=#the number identifying the final firm in this file.
.skip.indent -9
MANNER#=#the number which identifies the type of bidding scheme which
the students will use to obtain the most desired interviews.  See the
description of the current stage file.
.skip.indent -9
MAXSTG#=#the maximum number of interviews which a student can request
in this stage of this round.
.skip.indent -9
MAXRND#=#the maximum number of interviews which a student can request
in all stages of this round.
.skip.indent -9
MAXALL#=#the maximum number of interviews which a student can request
during the entire interview season.
.skip.indent -9
MAXBID#=#the maximum amount which each student can bid for an interview
with a single firm if the interviews are being auctioned.
.skip.indent -9
MAXPAY#=#the maximum total amount which each student can bid for all
highly desired interviews during the time period specified by MANNER.
.skip 2.test page 7.indent -14
First 3 records for each firm
.skip.indent -14
LTRINC,LTRDPT,LTRADR (in consecutive records)
.skip.test page 3
.indent -9
LTRINC#=#the firm name.
.skip.indent -9
LTRDPT#=#the department name.
.skip.indent -9
LTRADR#=#the address.
.skip 2.test page 7.indent -14
Fourth record for each firm
.skip.indent -14
NUMBER,LENGTH,KNTOPN,INTRVW,IUSDUP,INCLSD,JNCLSD
.skip
.indent -9
NUMBER#=#the firm number.
.skip.indent -9
LENGTH#=#the length of each interview.
.skip.indent -9
KNTOPN#=#the total number of open interviews which this firm will hold.
.skip.indent -9
IUSDUP#=#the total number of students who have requested interviews
with this firm.
.skip.indent -9
INCLSD#=#the total number of students who requested interviews with
this firm but who have been moved off the open schedule to the closed
schedule.  The interviews that these people might have used are
therefore available to others.  INCLSD does not include those students
who might have been invited to closed interviews but for some reason
are still being scheduled on the open list.  The total number of
interviews which have been assigned is thus KNTOPN-IUSDUP+INCLSD.  If
this number is negative, then its absolute value is the length of the
waiting list.
.skip.indent -9
JNCLSD#=#the total number of students who requested interviews with
this firm and who are above the cut-off line but who have been moved
off the open schedule to the closed schedule.  To determine whether
a particular student is on the waiting list, it is necessary to compare
the position of the person on the list with KNTOPN+JNCLSD.
.skip 2.test page 7
.indent -14
Record for each contiguous block of interviews for each firm
.skip.indent -14
JDATE,JFIRST,JFINAL,JSCHDL
.skip.test page 3
.indent -9
JDATE##=#-1, these interviews are an extension of the previous schedule.
Those between the previous schedule and the current schedule will not
be held.
.skip.test page 3.indent -2
=#if positive, these interviews start a new schedule.  The value of
JDATE is the Smithsonian date when the interviews in this schedule
will be held.  The Smithsonian date is the number of days since 18
November 1858 taking that base date as day 1.
.skip.test page 3
.indent -9
JFIRST#=#-1, this schedule has been cancelled.  JFINAL will also be
-1.  JDATE will still contain the Smithsonian date for the interviews
which were previously in this schedule.
.skip.test page 3.indent -2
=#0 or greater, the time in minutes from midnight when the first
interview will be held.
.skip
.test page 3.indent -9
JFINAL#=#-1, this schedule has been cancelled.  JFIRST will also be
-1.  JDATE will still contain the Smithsonian date for the interviews
which were previously in this schedule.
.skip.test page 3.indent -2
=#0 or greater, the time in minutes from midnight when the final
interview will be held.
.skip
.test page 3.indent -9
JSCHDL#=#the number which identifies the profile of starting times
from among all of the profiles for interviews of the same length.  This
matches the second number in the corresponding line in the file which
specifies the profiles of the starting times.
.LEFT MARGIN 0
.skip.test page 7
A short firm file specifying 2 firms is listed below.
.skip.nofill
     1     4     1     1     3    255
     2     2    21    10    15    20     5    30
Yellow Pencil Manufacturers
Marketing
NY
     1    30    31     5     0     0     0
 45734   600   990     0
 45734   540   630     0
    -1   795   870     0
    -1   930   990     0
 45735   540   900     0
Roaring Rocket Engines Inc.
Production
CA
     2    60    12     5     0     0     0
 45732    -1    -1     1
 45732    -1    -1     1
 45732    -1    -1     1
 45732   570   990     1
 45732   570   990     1
.skip.fill.test page 7
The listing file which would be produced by the JOBADM program based
upon the above firm schedule file is shown below.  The lines in this
listing have been shortened slightly to fit into this manual.
.skip.nofill.test page 10
Interviewer Schedules for Class   4, Round   1, Stage   1

 5-Jan-84 14:25

Students bid for interviews in an auction.
Total amount bid during entire season is fixed.

Each student can request  10 interviews in this stage of this round
Each student can request  15 interviews in all stages of this round
Each student can request  20 interviews during entire interview season
Each student can bid up to     5 for a single firm
Each student can bid a total of    30 during entire season

      Number:     1
        Name: Yellow Pencil Manufacturers
    Division: Marketing
    Location: NY
      Length:  30 minutes
   Schedules:   3
       Total:  31 interviews
Schedule   1:  11 Interviews Sat 4-Feb-84 10:00am to  4:30pm (Profile 0)
Schedule   2:  10 Interviews Sat 4-Feb-84  9:00am to  4:30pm (Profile 0)
                                     skip 11:00am to 12:45pm
                                     skip  3:00pm
Schedule   3:  10 Interviews Sun 5-Feb-84  9:00am to  3:00pm (Profile 0)

      Number:   2
        Name: Roaring Rocket Engines Inc.
    Division: Production
    Location: CA
      Length:  60 minutes
   Schedules:   5
       Total:  12 interviews
    1 to   3:3* 0 Cancelled  Thu 2-Feb-84                    (Profile 1)
    4 to   5:2* 6 Interviews Thu 2-Feb-84  9:30am to  4:30pm (Profile 1)
.fill
.left margin 0
.skip 2.test page 10
.rtt'Contents of the Interview Request File',,'>'
.center
CONTENTS OF THE INTERVIEW REQUEST FILE
.center
-------- -- --- --------- ------- ----
.skip.test page 3
The files with names similar to YYYYYY.XXX, where YYYYYY is a number
identifying a particular student and XXX is the class number, in the
central storage account specify which interviews have been requested
by each student.  These files are first written by the JOBS program.
All of the files for the class are collected together into a single
file before the requests are processed.  These files are changed when
the requests are processed to reflect the positions of the requests
on the lists for the various firms and the times at which the interviews
are scheduled.  The composite interview request file is split into
individual interview request files which are written back into the
central storage account by the JOBPUT program after the processing
has been completed.
.skip.test page 3
The first 4 records in the interview request file identify the current
round and stage, the number of requests and bids made in previous
rounds, the account being used and the name of the student.  This
general information is then followed by either 1 or 2 records for each
of the requests made by the student during the current round.  The
first of these 2 records is always present and describes the request.
The second record contains the times at which the student would prefer
to have the interview be held and is present only if the student has
specified 1 or more such times.
.skip
The file is always terminated by a record which contains a single minus
sign.
.skip.test page 3
The variables in each type of record are listed below.  The names shown
here are the same as those which are used in the various programs.
.skip.nofill.test page 12
at the start of the file:
   IAUTHR,ICLASS,IMOVE,IPASS,IVERSN,NUMWHO,LTRPSW
   ISUBMT,IUSED,KNTSIN,LOCKUP,MANNER,KNTALL,IGVBAK
   LTRWHO
   LTRNAM
for each firm:
   NUMVOT,KNDVOT,KNTPRF,IDATE,KLOSED,IRANK,JRANK,KLOCK,MTIME,
   MDATE,MRECRT,ISOURC (continuation of the above record)
if times are requested for the firm:
   IPREFR
at the end of the file:
   -
.fill
.skip.test page 3
The contents of each of these types of records are described below.
.left margin 14
.skip 2.test page 7
.indent -14
First record in file
.skip.indent -14
IAUTHR,ICLASS,IMOVE,IPASS,IVERSN,NUMWHO,LTRPSW
.skip.test page 3.indent -9
IAUTHR#=#identifies which program last wrote this file.
.skip.test page 3.indent -2
=#11, the file is an individual interview request file written by the
JOBS program.
.skip.test page 3.indent -2
=#12, the file is a composite interview request file in which the
requests have been sorted by priority and in which the order of requests
having the same priority have been randomized.
.skip.test page 3.indent -2
=#13, the file is a composite interview request file in which times
have been assigned by the JOBTIM program.
.skip.test page 3.indent -2
=#14, the file is an individual interview request file which the JOBPUT
program has extracted from the composite interview request file.
.skip.test page 3.indent -2
=#15, the file is an individual interview request file which has been
modified by the JOBMOD program.
.skip.test page 3.indent -9
ICLASS#=#the class number.
.skip.test page 3.indent -9
IMOVE##=#the round during which these requests were made.  The first
round is number 1.
.skip.test page 3.indent -9
IPASS##=#the stage during which these requests were made.  The first
stage of each round is number 1.
.skip.test page 3.indent -9
IVERSN#=#the version number of the file containing these requests.
This is incremented by 1 each time a new copy of the file is written
by the JOBS program.
.skip.test page 3.indent -9
NUMWHO#=#the number by which this program identifies this student from
all others in the same class.
.skip.test page 3.indent -9
LTRPSW#=#the password used by the student to gain access to the program.
If the student does not have to use a password, then this will be blank.
The alphabetic letters A through Z in this password will always be
capitals or upper case regardless of whether the student typed the
password using capitals or lower case letters.
.skip 2.test page 7
.indent -14
Second record in file
.skip.indent -14
ISUBMT,IUSED,KNTSIN,LOCKUP,MANNER,KNTALL,IGVBAK
.skip.test page 3.indent -9
ISUBMT#=#0, the student has not submitted the final version of these
requests yet.
.skip.test page 3.indent -2
=#1, the student typed the word SUBMIT in response the "WHAT NEXT?"
question to submit the final version of these requests.  The student
will not be able to modify this set of requests until the next round
or the next stage of this round.  It is not necessary that a student
submit the requests.  They are acted upon regardless of whether they
have been submitted.
.skip.test page 3.indent -2
=#2, this set of requests has been processed.  The student is prevented
from doing anything other than just getting a report until the round
or the stage number has been advanced.
.skip.test page 3.indent -2
=#3, further access by the JOBS program to this set of requests is
blocked, both in the current stage and in subsequent stages and rounds.
Any requests already made, however, will be treated like those made
by any other student.
.skip.test page 3.indent -2
=#4, further access by the JOBS program to this set of requests is
blocked, both in the current stage and in subsequent stages and rounds.
Any requests already made will be ignored when the requests are
processed and any interviews already allocated in the previous stage
of the current round will be reassigned to other students.  This
effectively cancels these requests.  This would be used mainly to block
a particular password, such as that used to log into a jointly used
account, from being used as the password to gain access to the JOBS
program.
.skip.test page 3.indent -9
IUSED##=#the number of high priority requests or auction bids which
have been placed so far by the student during the time period in which
these are limited.  If a new allocation is made every stage, then IUSED
is zeroed every stage, etc.
.skip.test page 3.indent -9
KNTSIN#=#the number of requests which the student has placed so far
this round.
.skip.test page 3.indent -9
LOCKUP#=#the number of requests which the student placed in the earlier
stages of the current round.  Requests made in earlier stages are kept
in the list if they are cancelled.  Requests made during the current
stage are removed from the list if they are cancelled.
.skip.test page 3.indent -9
MANNER#=#identifies the type of bidding scheme used.  See the
description of the current stage file.
.skip.test page 3.indent -9
KNTALL#=#the number of requests which the student made in earlier
rounds.
.skip.test page 3.indent -9
IGVBAK#=#the number of high priority requests or the amount of auction
bids to be returned to the student at the start of the next round if
the total number of high priority requests or the total bidding
allocation is limited for the entire season.  This adjustment to the
bidding allocation is made using the JOBMOD program at the direction
of the administrator.  The JOBMOD program can also be used to decrease
the value of IUSED in order to restore the use of the high priority
requests or auction bids immediately.
.skip 2.test page 7
.indent -14
Third record in file
.skip.indent -9
LTRWHO#=#the name of the account which was used by the student to enter
these requests.
.skip 2.test page 7
.indent -14
Fourth record in file
.skip.indent -9
LTRNAM#=#the name of the student.
.skip 2.test page 8
.indent -14
First record for each interview request
.skip.indent -14
NUMVOT,KNDVOT,KNTPRF,IDATE,KLOSED,IRANK,JRANK,KLOCK,MTIME,
.indent -14
MDATE,MRECRT,ISOURC
.skip.test page 3.indent -9
NUMVOT#=#the identification code of the firm.
.skip.test page 3.indent -9
KNDVOT#=#priority assigned by the student to this request.
.skip.test page 3.indent -2
=#if the students rank their requests, then KNDVOT is 10 for most wanted
interview, and 10 larger for each lesser wanted interview.
.skip.test page 3.indent -2
=#if the students assign high or low priorities to each request, then
KNDVOT is 1 for high priority requests and 2 for low priority requests.
.skip.test page 3.indent -2
=#if the students bid in an auction for interviews, then KNDVOT is
the amount of the bid placed upon this request.
.skip.test page 3.indent -9
KNTPRF#=#the number of preferred times which were specified by the
student.  If KNTPRF is not zero, then an additional record will follow
specifying these times.
.skip.test page 3.indent -9
IDATE##=#the date when this student would prefer to have this interview
be held.
.skip.test page 3.indent -2
=#0, either the student was asked to specify a date but did not choose
to do so, or else the student was not asked to specify a date since
the interviews are only being held on a single date.
.skip.test page 3.indent -9
KLOSED#=#0, if this interview is a open interview requested by the
student.
.skip.test page 3.indent -2
=#1, if the student has been moved to the closed list.  The interview
is not being automatically scheduled.  Instead, the student will have
to sign up by hand at the placement office.
.skip.test page 3.indent -2
=#2, if the request was cancelled by the firm.  This request must be
kept in the list since otherwise the student might cancel the request
and then make it once more.
.skip.test page 3.indent -2
=#3, if the request was cancelled by the student.  Although the student
can cancel requests made in the previous stages in the current round,
these requests must be kept in the list.
.skip.test page 3.indent -9
IRANK##=#the position of this request in the list of all requests made
for this firm.  This ranking is assigned by either the JOBBIG or JOBSLO
program when the requests are processed.
.skip.test page 3.indent -2
=#0, this request has not yet been processed.
.skip.test page 3.indent -2
=#greater than 0, is the position of this request on the list.  The
lowest numbers get interviews, and the rest are on the waiting list.
.skip.test page 3.indent -9
JRANK##=#the number of students in the ranked list above and including
the current student who are actually eligible for open interviews.
JRANK excludes those for whom KLOSED is not zero.  The students who
are excluded are those who have been moved to the closed list, who
have cancelled an interview after the allocation process, or who have
been rejected by the firm.  JRANK minus KNTOPN (in the firm schedule
file) is thus the position of this request on the waiting list.
.skip.test page 3.indent -9
KLOCK##=#the length of the interview if this request was successful.
.skip.test page 3.indent -2
=#0, no interview has been scheduled for this request.
.skip.test page 3.indent -9
MTIME##=#time at which the interview is scheduled.
.skip.test page 3.indent -9
MDATE##=#date when the interview is scheduled.
.skip.test page 3.indent -9
MRECRT#=#schedule number if the interview is scheduled.
.skip.test page 3.indent -2
=#-1, an interview was scheduled in a previous stage of the current
round, but the schedule containing this interview was cancelled.
.skip.test page 3.indent -2
=#0, no interview has been scheduled.
.skip.test page 3.indent -2
=#if KLOCK is not zero, but MRECRT is zero, then the student should
get an interview if a human can resolve some scheduling conflict which
the time assignment program JOBTIM could not resolve.
.skip.test page 3.indent -9
ISOURC#=#0, an interview with this firm was requested by the student
only.
.skip.test page 3.indent -2
=#1, both the student and the firm requested that the student have
an interview with this firm.
.skip.test page 3.indent -2
=#2, the firm requested that the student have an interview, but the
student did not request such an interview.
.skip 2.test page 7
.indent -14
Second record for each interview request if times are requested
.skip.indent -9
IPREFR#=#a list containing KNTPRF times which the student selected.
These times are stored as the number of minutes since midnight.  The
first time in the list is the most preferred.  The final time is the
least preferred.
.skip 2
.indent -14
The final record contains only a single minus sign.
.fill.left margin 0
.skip 2.test page 3
.rtt 'Using the RSMPSW Program to Assign Passwords',,'>'
.center
USING THE RSMPSW PROGRAM TO ASSIGN PASSWORDS
.center
----- --- ------ ------- -- ------ ---------
.skip.test page 3
The students can be required to use a number and a password assigned
to them by the computer services staff to identify themselves to the
JOBS program.  This feature is enabled by setting NUMBER2 to have the
value 2 in the entry in the ACOUNT.JOB file for the account or accounts
being used by the students.  The instructions for validating accounts
should be consulted for additional information.
.skip.test page 3
The numbers and the passwords by which the students identify themselves
to the JOBS program must be specified by a file named PSWXXX.JOB, where
XXX is the class number.  There must be one of these files in the
central storage account for each class for which passwords are being
assigned.  Each line in this file contains a number followed by the
associated password.  An exclamation point followed by a comment can
appear to the right of the password.  The comment might consist of
the name of the student to aid a visual search of the file, but the
comment is ignored by the password checker in the JOBS program.  The
file can be terminated by a line starting with an equal sign and
containing nothing else.
.skip.test page 3
Although the password file could be constructed by hand, selection
of hundreds of such passwords soon becomes a mental word association
exercise.  Provided that a file which contains a list of the student
names and any arbitrary text file containing at least several pages
of text are available, the RSMPSW program can be used to select words
at random from the text file and assign these as passwords to the
students.  Each line in the resulting file contains a number, a
password, an exclamation point and the student's name.
.skip.test page 3
The RSMPSW program also produces a second file which can be used to
insert the student's name, number and password into a form letter
telling the student how to gain access to the JOBS program.  This file
contains 2 lines for each student.  The student's name is on the first
line and the number and password are on the second line.  This file
is meant to be processed, along with a file which describes the basic
form letter, by the FROFF word processor.  An example of the file which
describes the basic form letter is shown below.
.skip.nofill.test page 13
_.open splice.loop;To:
_.splice 1.skip
You will use the following number and password to identify
yourself when you run the JOBS program.
_.skip.indent 5.splice 1.skip
This password was chosen at random from a list of common
short words.  You can type the number and the password on
the same line, or you can type the number on the first line,
and the password on the next line.
_.skip
If you have any difficulties with the program, please
contact the computer services staff.
_.reset.end loop
.fill.skip.test page
The _.OPEN#SPLICE and .LOOP commands at the start of the file and the
_.RESET and .END#LOOP commands at the end merely prepare for and
terminate each form letter respectively.  The _.SPLICE 1 commands each
insert the contents of the next line from the second file produced
by the RSMPSW program at that point into the letter.
.skip.test page 3
The file of student names which is processed by the RSMPSW program
must contain only 1 name per line.  The maximum length of a single
name is 40 characters, counting each of the separations between the
words as 1 character each.  The names are copied into the resulting
files in the order in which they appear in the original file.  It is
suggested that these names should have been sorted in alphabetical
order before they are processed by the RSMPSW program so that a visual
search can be used to locate the entry belonging to a particular
student.
.skip.test page 3
The RSMPSW program can extract passwords from any text file which
contains enough words so that the same password does not have to be
assigned to many students.  The RSMPSW program would operate correctly
even if this file only contained a single word, but the resulting
duplication of passwords wouldn't really be acceptable.  However, it
doesn't matter if a few of the students have the same password, since
it is only the number which must be unique.  The lines in the file
can each contain up to 80 characters.  Only words containing from 4
to 8 letters each are used as passwords.  The passwords can also be
based upon the file named RSMPSW.DAT which is supplied with this
package.  The RSMPSW.DAT file contains 5000 different words 4 to 8
letters in length sorted by the frequency of the appearance of these
words in a variety of text files which originally contained over 7.5
million words.
.skip.test page 3
The RSMPSW program is able to skip over any number of initial words
in the file from which the passwords are being extracted.  The RSMPSW
program stores 250 words read from the file in a hopper.  The passwords
are selected from this hopper at random and are then discarded from
the hopper.  If only a fraction of the words in the file are being
used as passwords, then the words which are to be discarded without
having been used are also selected at random from the hopper.  When
the hopper is empty, the next group of words read from the file are
placed into the hopper.  Once all of the words in the original file
have been processed, the hopper is filled with words from the start
of the original file again.  Duplicates are discarded each time the
hopper is filled, but a password assigned in 1 filling of the hopper
might have appeared in a previous filling of the hopper.
.skip.test page 10
The RSMPSW program asks the following questions.
.skip.test page 8.nofill
FILE CONTAINING LIST OF STUDENT NAMES?
FILE CONTAINING LIST OF PASSWORDS?
OUTPUT FILE FOR PASSWORD CHECKER?
OUTPUT FILE FOR WORD PROCESSOR?
.fill.skip
These questions merely establish the names of the various files.  On
the DECsystem10 and DECsystem20 computers, these file names must consist
of 1 to 6 letters or digits, a period which must be typed, and an
optional 1 to 3 letters or digits.
.skip.test page 5
KERNEL FOR RANDOM NUMBERS?
.skip
Either zero or a positive integer should be typed in response to this
question.  The number is used to select the sequence of numbers which
are returned by the random number generator.
.skip.test page 5
DISCARD HOW MANY INITIAL PASSWORDS?
.skip
Discarding the initial passwords is really useful only if a single
large file containing many possible passwords is being used repeatedly.
The number typed here would then be the number of passwords processed
the last time that passwords were selected from the file.  If a
different file is being used, or if a different sampling interval
selected by the next question is being used, or if the file was scanned
more than once the last time, then 0 should be typed here.
.skip.test page 5
ON AVERAGE, USE 1 PASSWORD OUT OF HOW MANY?
.skip
If the same large file containing many possible passwords is being
used repeatedly, and if the contents of this file might be known by
the students, then a portion of the possible passwords can be rejected
to make guessing the passwords based upon the known contents of the
original file more difficult.  If either 0 or 1 is typed here, then
all of the passwords in the file will be used until enough have been
obtained.  If a number greater than 1 is typed here, then this is the
number of possible passwords which are discarded each time 1 is used.
If 10 is typed here, then only 1 out of 10 possible passwords is used.
.skip.test page 6
NUMBER TO ASSIGN TO FIRST STUDENT?
.break
INCREMENT EACH STUDENT NUMBER HOW MUCH?
.skip
The answers to these questions are used to obtain the numbers which
are assigned to the students.  If the initial number is 10 and the
increment is 5, then the students would be assigned the numbers 10,
15, 20, 25, etc.  It is suggested that the increment should be greater
than 1 so that there are gaps for the manual insertion of additional
students into the list.
.SKIP 2.TEST PAGE 6.LEFT MARGIN 0.FILL
.rtt 'Machine Dependence',,'>'
.center
MACHINE DEPENDENCE
.center
------- ----------
.skip
The students who use the interview request system have no way of knowing
the language in which it is written.  All of the logic in the programs
in the interview request system is written in FORTRAN.  Together, the
programs contain 9000 FORTRAN statements.  Most of this code is
completely machine independent.  However, a few of the things which
the programs do must be performed differently on different computers.
In so far as possible, these machine dependent aspects of the programs
have been isolated into routines which perform no other functions.
.left margin 1.list
.le
The BLOCK DATA routine specifies the locations of the central storage
account.  This is specified by octal project and programmer numbers
in the DECsystem10 version and by the account name in a character string
in the DECsystem20 version.
.le
The JOBHLP routine which issues the help messages has been built
assuming that the JOBS program will be run from video terminals which
can display 24 lines on the screen.  The _.PAGE LENGTH command in the
rough form of these messages specifies a value which is 2 lines less
than the maximum number of lines which can be shown on the screen,
so that there is room at the bottom for the "PRESS RETURN TO CONTINUE"
message.  The _.PAGE LENGTH command will have to be changed
correspondingly if the program is run from terminals which cannot show
a full 24 lines on the screen, and the FORMAT program will have to
be run again to produce a new version of the JOBHLP routine.  The JOBHLP
routine does not have to be rebuilt if the program is being run from
a hardcopy terminal instead.
.le
The GETLIN routine which reads in a line from the terminal discards
control characters on the DECsystem10 and DECsystem20 computers.  Any
character read by a multiple of an A1 format which has a value between
0 (integer zero, not '0') and '#' (the space character) is discarded.
The 2 statements which perform these tests will have to be removed
for use on any other computer.
.le
The OPEN statements in the RSMOPN and LCLOPN routines and the CLOSE
statements in the RSMCLS and LCLCLS routines will have to be changed
for use on other computers.  The RSMPSW program also contains simple
OPEN and CLOSE statements.
.le
A few simple assembly language routines are used to control the manner
in which the computer system manages the typing of characters onto
the terminal, to identify the account being used to run the program,
to expunge deleted files and to exit gracefully without the usual time
usage messages.  The following is a complete list of these assembly
language routines.
.skip.test page 3
EXPUNG expunges deleted file from the account in which it is run on
the DECsystem20 computer.  This is necessary during processing of the
requests to prevent the accumulation of former versions of the updated
files.  The former versions of files are always expunged on the
DECsystem10 computer, so the version of this routine for the DECsystem10
computer returns directly to the calling program.
.skip.test page 3
JOBINF returns information about the account from which the program
is being run.  The information which is returned includes the name
of the account, the corresponding project number which on the
DECsystem20 always has the value 4, and the corresponding programmer
number.  The DECsystem10 version of this routine is called PPNU which
stands for Project Programmer NUmber.
.skip.test page 3
LEAVE exits from the program without the time statistics produced by
the FORTRAN STOP statement.
.skip.test page 3
TTYSET sets the characteristics of the controlling terminal.  The most
important of these is the turning off of the pausing after a certain
number of lines have been displayed on the screen.  The JOBS program
does its own parcelling out of lines to the screen.
.le
The RSMWIP routine clears the screen of a video terminal by typing
a form feed.  This may have to be done differently on other computer
systems.
.le
The NEWDAT routine returns the current date as the numeric month, day
and year.  These are obtained by decoding a double precision word
containing the date in a form similar to '10-Oct-83'.  Since FORTRAN
has no standardized date routine, this also will have to be done
differently on other computer systems.
.le
The DAVERB routine which is used to identify words typed by the user
contains an array of the lower case alphabetic letters 'A' through
'Z' sorted in numerical order.  On the DECsystem10 and DECsystem20,
this order also happens to be the same as the alphabetic sort.  If
the numeric values of 'a' through 'z' sort in some other order, then
the array containing the lower case characters will have to be changed,
and the array containing the upper case characters will have to be
changed to remain parallel to the new ordering.
.le
The JOBSRT program sorts the student names assuming that the numerical
sort of the upper case letters 'A' through 'Z' is the same as the
alphabetic sort of these same characters.  The sorting procedure will
have to be changed if this is not the case.
.le
The RSMWHO routine calls the JOBINF routine to obtain the name of the
current account and the programmer number of this account.  The RSMWHO
routine then converts these into a form which can be used by the rest
of the program.  This conversion is machine dependent.
.le
The DAHEFT and DAVERB routines are general routines which interpret
a line of text read from the terminal.  These routines all treat a
horizontal tabulation or tab character as equivalent to a space.  In
order to identify the tab character, a variable named ITAB is defined
as the octal value "045004020100 in each of these routines.  This
definition will have to be changed on other computers, either to the
actual numeric value of 'tab' or 1Htab, or else to 'space' or 1Hspace,
where the words tab and space are meant to represent the nonprinting
characters tab and space respectively.
.list element
The RSMPSW program contains code for accepting file names from the
user, and OPEN and CLOSE statements.  This FORTRAN code is simple,
but will have to be changed for use on other computers.
.list element
The JOBBIG, JOBSLO and RSMPSW programs contain calls to the SETRAN
routine which initializes the RAN random number function.  The
corresponding routine on other systems may have a different name and
may require different calling arguments.
.end list
.left margin 0
.left margin 0
.skip 2.test page 6.left margin 0.fill
.rtt 'Differences Between DECsystem10 and DECsystem20 Versions',,'>'
.center
DIFFERENCES BETWEEN DECSYSTEM10 AND DECSYSTEM20 VERSIONS
.center
----------- ------- ----------- --- ----------- --------
.skip
The job interview request system was developed on a DECsystem20
computer.  The programs have been modified for the DECsystem10.  These
computers have basically the same hardware.  Only the operating systems
are different.  The main differences between the versions for the 2
computers result from the differences in the account structures.
.skip.test page 6
The following is a list of the differences between the DECsystem10
and the DECsystem20 versions.
.left margin +1.list
.le
In the BLOCK DATA routine in the DECsystem10 version, the account in
which files are stored is specified by project and programmer numbers.
This account is specified by an integer array dimensioned at 3. The
project number is in the first location, the programmer number is in
the second location and a zero is in the third location.  In the
DECsystem20 version, the location of this account is specified by name
in a character string which is dimensioned for 40 characters.
.le
In the RSMOPN routine in the DECsystem10 version, the OPEN statements
which open the files which are to be written into the central storage
account specify a protection code of octal 100.  This allows subsequent
versions of the same files to replace the current versions.  In the
DECsystem20 version, the default file protection for the account into
which the files are being written can be set so as to allow overwriting
by subsequent versions so it is not necessary that the OPEN statements
specify the protection codes.
.le
In the RSMWHO routine in the DECsystem10 version, the name of the
account is assumed to just be the octal project and programmer numbers
converted so that these can be written with a 40A1 format.  The unique
number which is returned for the account is actually the programmer
number so that the programmer can access the same interview requests
from any project for which the programmer has an account if passwords
are not being used to gain access to the JOBS program.  In the
DECsystem20 version, the actual account names are used.  All accounts
have the same project number.  The programmer number is unique to the
particular account so only the account which was used to make the
interview requests can be used to modify them if passwords are not
being used.
.le
In the assembly language routines in the DECsystem10 version, UUO's
are used.  The routine which sets terminal characteristics is just
a dummy entry point.  In the DECsystem20 version, JSYS's are used
instead of UUO's.  UUO's and JSYS's are the names given to the monitor
calls for the 2 operating systems.
.end list.left margin  0
.skip.test page 3
When setting up the accounts on the DECsystem10, the user file
directories or UFD's of the account into which files are to be written
from other accounts should be given a protection code of 777. The
procedure for this would be to log into the account, and then to run
the PIP program to rename the UFD for each disk structure.  For example,
the following dialog could be used to change the protection of the
account on the DSKB_:  structure.
.skip.nofill.test page 3
R PIP
/R<777>=DSKB:[123,456].UFD
_^C
.SKIP.FILL.TEST PAGE 3
It must be noted that the UFD for a structure will disappear when the
job is logged off unless there is at least one file in the UFD on that
structure.  Therefore, a dummy file, perhaps named A_.  to force it
to be first in the sorted directory, should be created on each
structure.
.SKIP.FILL.TEST PAGE 3
The batch control file which is used on the DECsystem20 expunges the
central storage account.  The expunging is necessary since the students
could be blocked from running the program by old versions of the
requests if the disk quota were to be exceeded.  Files are always
expunged immediately on the DECsystem10, so the batch job is not
necessary.
.skip.test page 3
The RSMCHK routine which determines whether the account being used
is allowed to run these programs is able to handle either the
DECsystem10 account numbers or the DECsystem20 account names.  The
contents of the entries in the ACOUNT.JOB file control which type of
account specification is matched.  If the file contains numbers enclosed
between square brackets, then the DECsystem10 account numbers are
matched.  If the file contains account names enclosed between less
than and greater than signs, then the DECsystem20 account names are
matched.
.page.initial page.skip left page.initial page
.rtt'Appendix A: Instructions for Using the JOBS Program',,'>'
.center
APPENDIX A
.skip 2
.C;INSTRUCTIONS FOR USING THE JOBS PROGRAM
.C;------------ --- ----- --- ---- -------
.SKIP.TEST PAGE 3
You will be using a program named JOBS on the DECsystem20 computer
to indicate your preferences for job interviews with any of the firms
which are conducting open interviews in the near future.  This program
will allow you to request interviews with particular firms, to indicate
how serious you are about the request, to indicate the times at which
you would prefer to have the interviews be held, and to modify or cancel
any request which you have made.
.SKIP.TEST PAGE 3
You can run the JOBS program several times.  Each time that you exit
from the program, the program will save the list of interviews which
you have requested so far.  You can then run the program later to change
your requests.  The next time that you run the program, the program
will start with the list of interviews that you have just requested.
It is not necessary that you run the program more than once during
a single round of the interview season, since you can make all of your
selections at the same time if you prefer.
.SKIP.TEST PAGE 3
Before you run the program, you must first log into the computer account
named A.B.C for which XYZZYX is the password.  Please do not use this
account for anything other than requesting job interviews.  You cannot
use your own individual account to request job interviews.  After you
have successfully logged in, you can start the JOBS program merely
by typing its name.  Up to this point, the dialog would look something
like the following:
.nofill.skip.left margin 5
@A.B.C
Password: XYZZYX       (the password will be invisible)
@JOBS
.skip.fill.left margin 0
.test page 3
The program will respond by asking you to specify a number and another
password.  This combination of number and password identifies you to
the program, and prevents anyone else from gaining access to your
requests.  A sheet of paper telling you this number and password will
be placed in your mailbox shortly before you are scheduled to first
use the program.  This number and password have no relationship to
the name of the account A.B.C from which you are running the program
nor to the XYZZYX password which you used to gain access to this
account.
.skip 2.test page 6
.C;HOW TO CONTROL THE PROGRAM
.C;--- -- ------- --- -------
.skip.test page 3
The program will always tell you what it expects that you will type.
You must press the RETURN key after having typed in the answer.  You
should press the _?  key and then the RETURN key if you do not
understand a question and want further instructions.  If you see that
you have made a mistake and have not yet pressed the RETURN key, press
the key marked on various terminals as DEL, DELETE or RUBOUT as many
times as are necessary to back up past the character in error, then
type the correct character and the rest of the line.  DO NOT use the
keys marked with arrows to correct anything.
.SKIP.TEST PAGE 3
In general, the cases of the alphabetic letters, whether they are
capitals or small letters, do not matter.  The only place where the
cases of the letters are preserved is when you specify your name.  Most
of the words which the program accepts can be abbreviated by discarding
the rightmost letters as long as you type enough letters to distinguish
the response from all others which would be valid.
.skip 2.test page 6
.C;SPECIFYING YOUR NAME
.C;---------- ---- ----
.skip
If this is the first time that you have run the program, then the first
thing that the program will ask you to type will be your name.  You
should type your name exactly as you want it to appear on the lists
which are given to the recruiters.  Use the SHIFT key to get capital
letters where you expect them.  Press the RETURN key after you have
finished typing in your name.  Pressing the RETURN key, here as
elsewhere, indicates to the program that you are done typing this line.
.SKIP.TEST PAGE 3
The program will type your name back to you and ask if this is how
you want your name to appear.  Make sure that it is right.  If it is
not correct, then type NO and press the RETURN key.  If your name is
correct, then type YES and press the return key.
.skip 2.test page 6
.C;THE "WHAT NEXT?" QUESTION
.C;---##----#----###--------
.skip
After you have specified your name, or, if you are running the program
the second time, after you have verified that the spelling of your
name as you specified it before is correct, then you will be asked
.skip
.indent 5;WHAT NEXT?
.skip
You will be asked this question again each time that the program has
completed processing your previous command.  You should respond by
typing one of the following words:
.nofill.SKIP.TEST PAGE 3
CANCEL   to cancel a request for an interview.
EXIT     to save what you have done and exit.  You can continue later.
LIST     to list the firm names together with their codes.
NAME     to check or change how your name is shown to recruiters.
PAPER    to obtain a file describing your requests.
PRIORITY to change the priority or bid you set with the REQUEST option.
REPORT   to see the interview requests you have made so far.
REQUEST  to request an interview with a particular firm.
SAVE     to save what you have done, then continue to run the program.
TIME     to change date or times you selected with the REQUEST option.
.SKIP.TEST PAGE 3.FILL
The CANCEL, PRIORITY, REQUEST and TIME commands require that you
identify the firm, and the particular division if the firm has several
divisions which are recruiting.  Each firm, or each division if several
divisions are recruiting, is identified by a single number.  If you
do not know the number, you can type the word LIST in response to the
"WHAT NEXT?"  question to view the list of firms.  The number which
is required appears at the upper left corner of the description of
the firm.  If you do not type a number to the right of the word CANCEL,
PRIORITY, REQUEST or TIME on the same line, then you will be asked
to type the number on the next line.  Since you might type the wrong
number, the name of the firm and division corresponding to the number
will be shown to you and you will be asked to type YES to verify that
this is the firm you want.
.SKIP.TEST PAGE 5
The commands are described in more detail below.
.lm+9
.SKIP.TEST PAGE 3.I-9
CANCEL###followed by a firm number to cancel a request for an interview
with the firm.  If this request was made in a previous stage, then
you will not receive back the high priority or auction bid you placed
upon this request.
.SKIP.TEST PAGE 3.I-9
EXIT#####to save the requests which you have made so far and then exit
from this program.  You can run this program later to change your
requests.  The PAPER command likewise saves your requests and then
exits, but also produces a file describing your requests which you
can print on the line printer.
.SKIP.TEST PAGE 3.I-9
LIST#####to list the numbers identifying the firms on the terminal.
These numbers are needed for the CANCEL, PRIORITY, REQUEST and TIME
commands.
.SKIP.TEST PAGE 3.I-9
NAME#####to check how your name will be shown to the recruiters, and
to change it if it is not correct.  You should type your name using
both capital letters and small letters.  If you use all capital letters
or all small letters, then the first letter in each part of your name
will be capitalized and the rest will be small letters.
.SKIP.TEST PAGE 3.I-9
PAPER####to obtain a file describing your requests which you can then
print on the line printer.  The descriptions will be the same as are
produced by the REPORT command.  The program will save your current
requests, tell you the name of the file containing the descriptions
of your requests, and then exit.  The name of the file will consist
of the number which you used to gain access to the program, with leading
zeros to get 6 digits, and with .DOC following the number.  If the
program tells you that the name of the file is 012345.DOC, then after
the program exits you would type
.indent 5
PRINT 012345.DOC
.break
to obtain a paper copy of your requests.  Leading zeros, if shown to
you in the name of the file, must be typed.
.SKIP.TEST PAGE 3.I-9
PRIORITY#followed by a firm number to change the priority which you
have assigned to your request for an interview with the firm.  If you
have given this request high priority, then it can be changed to low
priority, and vice versa.  You can assign a high priority to a limited
number of requests.  If you assign a high priority to a request, then
that request will be honored before a low priority request for an
interview with that firm made by anyone else in the current stage of
the current round.
.SKIP.TEST PAGE 3.I-9
REPORT###to display to you on the terminal the firms with which you
have requested interviews so far.  You can issue the PAPER command
instead to produce a file describing your requests which you can then
print on the line printer.  The PAPER command also saves your requests
and then exits from the program.
.SKIP.TEST PAGE 3.I-9
REQUEST##followed by a firm number to request an interview with that
firm.  You will be asked to specify the priority and the time of day
when you would prefer to have your interview with the firm be held.
Please note that you are not required to specify times, and that whether
you specify times will not influence whether you are given an interview.
.SKIP.TEST PAGE 3.I-9
SAVE#####to save the requests which you have made so far.  If the
computer were to stop after this, then these would be the requests
which would be in effect when you run this program the next time or
when your requests are processed.  The SAVE command does not remove
you from the program.  You can continue to modify your requests now.
.SKIP.TEST PAGE 3.I-9
TIME#####followed by a firm number to change the date on which or the
times at which you would prefer to have your interview with the firm
be held.  You will be asked to specify the date when you would most
prefer to have the interview be held only if the firm is holding
interviews on more than 1 date.  You will then be asked to specify
the time at which you would most prefer to have the interview be held.
You can then specify additional times in decreasing order of preference.
It is not necessary that the times be specified on separate lines.
They can instead be specified in decreasing order of preference from
left to right on the same line separated by commas or spaces.  If you
have specified a date, then the times you specify will only apply on
that date.  Please note that you are not required to specify a date
or times, and that whether you specify a date or times will not
influence whether you are given an interview.
.skip.test page 3
You would type 10:30 to select an interview at 10:30 in the morning.
You would type 3 to select an interview at 3 in the afternoon.  The
suffixes am and pm are not necessary, but can be included either
attached to the numbers or separated from the numbers by spaces.  After
you have specified as many times as you want, merely press the RETURN
key an extra time to get back to the "WHAT NEXT?"  question.
.lm 0
.skip.test page 3
If you have used the EXIT command or the PAPER command to save your
requests and to exit from the JOBS program, and if you are done using
the computer for now, then please be sure to terminate your use of
the computer by typing
.skip.indent 5
LOGOUT
.skip
in response to the at sign.
.page.initial page.skip left page.initial page
.rtt'Appendix B: Instructions for Using the JOBADM Program',,'>'
.center
APPENDIX B
.skip 2
.C;INSTRUCTIONS FOR USING THE JOBADM PROGRAM
.C;------------ --- ----- --- ------ -------
.skip.test page 3
The students use a program named JOBS to request interviews with firms
which will be interviewing in the near future.  However, before the
students are able to request interviews with these firms, the staff
of the placement office must enter into the computer information about
which firms will be interviewing, how many interviews each firm will
be conducting, and when these interviews will be held.  The program
which the staff of the placement office uses to enter this information
into the computer is named JOBADM.
.skip.test page 3
The computer services staff will provide and maintain the programs
and accounts necessary for the students to be able to use the computer
to request job interviews, and will perform the behind the scenes
operations necessary to allocate interviews and to assign times for
them.  In these instructions, "the administrator" will be taken to
mean the member or members of the staff of the placement office who
will be entering the firm schedules into the computer, and "the
programmer" will be taken to mean the member or members of the computer
services staff who will be working with the administrator.
.skip.test page 3
During the use of the interview request system, the programmer will
provide the services which are listed below.
.left margin 1.list
.list element
Establishing the account which will be used by the administrator and
validating this account to run the JOBADM program.
.list element
Making sure that the students can use the JOBS program.  This may
involve establishing accounts for them to use, letting them know what
passwords are needed to access these accounts and to run the JOBS
program, and validating these accounts to run the JOBS program.
.list element
Establishing the account in which the files produced by the
administrator and those produced by the students will be stored.
.list element
Checking the programs, loading them onto the computer, and creating
the data files needed by these programs.
.list element
Coordinating the use of the JOBADM program by the administrator and
the use of the JOBS program by the students.  This requires setting
the proper round and stage numbers before the administrator uses the
JOBADM program, and later, during processing, closing the JOBADM program
to the administrator and the JOBS program to the students so that files
are not accidentally overwritten.
.list element
Processing the requests made by the students.  This can only be done
after the deadline for all students to complete making their requests.
This deadline is established by the administrator.
.list element
After the processing has been completed, preparing printed schedules
for each recruiter, for each student, and lists of the students who
requested each firm.  These schedules and lists are given to the
administrator.  It is the responsibility of the administrator to
distribute the schedules to the recruiters and to the students as
appropriate.
.list element
At the request of the administrator, returning to selected students
bidding allocations or the ability to make additional high priority
requests.
.list element
At the request of the administrator, removing students from the open
schedules if they have been given closed schedule interviews or if
their requests are rejected by the firms.
.list element
Correcting errors in the programs when problems arise.  Any new computer
system will include errors, but as the programs are used from year
to year, these should arise less and less often.
.list element
Adding features to the program as these become necessary for the
operation of the placement office.  This is generally time consuming
and the programmer should be given several months notice when changes
are needed.
.end list.left margin 0
.skip.test page 3
Before the administrator can enter interviews for the first round,
the administrator must supply the programmer with the following pieces
of information.
.left margin 1.list.list element
The schedule of when the students will be allowed to use the computer
to make their requests for job interviews.
.list element
The times of the day at which interviews will start.  If interviews
can be of different lengths, then there must be at least 1 profile
of starting times for interviews of each of these lengths.  For example,
half hour length interviews might start at 9, 9:30, 10 and so on with
the final interview starting at 4:30.  Hour length interviews might
start at 9, 10, 11 and so on with the final interview starting at 4.
.list element
The type of bidding scheme which will be used to allocate interviews
with highly sought after firms.
.end list.left margin 0
.skip.test page 3
Different types of bidding schemes can be used for different classes
of students, but the same bidding scheme must be used throughout the
entire interview season for any particular class.  The types of bidding
schemes which are available are described below.
.left margin 1.list
.list element
Each student ranks requests from 1 to N where 1 is the most desired,
2 would be slightly less desired, and N is both the least desired and
the maximum number of requests which can be made.  All of the priority
1 requests will be allocated interviews before any of the priority
2 requests, and so on.  The failure to get a more desired interview
increases the chances of that student getting the interviews which
are less desired by that student.
.list element
Same as the above, except that the failure to get any interview does
not change the chances of that student getting other interviews.
.list element
Each student can specify that some requests are to be given higher
priority than those made by the other students without this priority.
The administrator will use the JOBADM program to specify the maximum
number of high priority requests which each student can make during
the entire interview season.
.list element
Same as the above, except that the administrator specifies the maximum
number of high priority requests which each student can make during
each round.
.list element
Same as the above, except that the administrator specifies the maximum
number of high priority requests which each student can make during
each stage of each round.
.list element
Each student can place a bid upon each request.  The amount bid,
however, is not returned to the student if a request cannot be filled.
The administrator will use the JOBADM program to specify the maximum
amount which each student can bid for a single interview and the maximum
total of all bids placed by each student during the entire interview
season.
.skip.test page 3
This scheme can be similar to a cash auction if the maximum amounts
allowed are large, or can be a multi-tiered priority scheme if the
amounts allowed are small.  For example, if the total amount bid is
set to 10 and the maximum amount which can be bid for any firm is 2,
then the students in reality can make high (2), moderate (1) and low
(0) priority requests, but the number of high priority requests made
reduces the number of moderate priority requests which can be made.
.list element
Same as the above, except that the administrator specifies the maximum
total of all bids placed by each student during each round.
.list element
Same as the above, except that the administrator specifies the maximum
total of all bids placed by each student during each stage of each
round.
.end list.left margin 0
.skip.test page 3
The administrator runs the JOBADM program by logging into the
administrator account, and then typing
.skip.indent 5
JOBADM
.skip.test page 3
The program will respond by identifying itself.  If the account from
which the administrator is running the program can be used to enter
the schedules for more than just 1 class, then the program will ask
for the administrator to identify the class.  The question will be
similar to that shown below.  The range of allowed class numbers will
be displayed enclosed within parentheses.
.skip.indent 5
Set recruiter schedule for which class (  84 thru  86)?
.skip.test page 3
The program will then describe the type of bidding which is allowed.
If this is the first time that the JOBADM program has been used this
year for the class which the administrator has selected, then the
administrator will be asked to specify the total number of interviews
and the total number of high priority requests or the maximum total
bidding allocation.  If the JOBADM program has already been run this
year for this class, then the administrator will be shown the values
which were last specified for these limits and will be asked to verify
that these numbers are correct.  If the administrator indicates that
these numbers are not correct, then the administrator will be asked
to specify each number in turn.  If the previous value is correct for
any particular item, then the administrator can just press the RETURN
key when the program asks for the new value.  The administrator will
be asked to specify the following items.
.skip.nofill.test page 10
   Number of interviews each student can request during entire season
   Number of interviews each student can request during this round
   Number of interviews each student can request during this stage
if students make high or low priority requests:
   Number of high priority requests which each student can make
   during stage, round or year, whichever scheme was selected
if students bid for interviews in an auction:
   Maximum amount each student can bid for a single interview
      and
   Total amount each student can bid during stage, round or year
.skip.fill.test page 3
After the administrator has been shown the values which are listed
above, and has confirmed that these values are correct, the
administrator will be asked the following question.
.skip.indent 5
WHAT NEXT_?
.skip.test page 3
The program will ask this question again each time that the program
has finished whatever the administrator last instructed that it do.
The administrator can press the question mark key and then the RETURN
key to obtain instructions when the program asks this question or any
other question.  The administrator should respond to the WHAT NEXT_?
question by typing one of the following commands.
.skip.LEFT MARGIN 8
.test page 3.indent -8
ENTER###to enter the schedule for another firm.
.test page 3.indent -8
EXIT####to save the schedules entered so far and exit.  The
administrator can run the program again later to enter additional
schedules and modify existing schedules.
.test page 3.indent -8
LIST####to list on the terminal the numbers identifying the firms.
.test page 3.indent -8
MODIFY##and a firm number to modify the schedule for that firm.
.test page 3.indent -8
PRINT###to produce a disk file containing all of the scheduling
information for every firm.
.test page 3.indent -8
SAVE####to save the schedules entered so far.  The administrator can
continue to enter additional schedules and modify existing schedules.
.test page 3.indent -8
SHOW####and a firm number to display on the terminal all of the the
scheduling information for that firm.
.left margin 0
.skip.test page 3
The MODIFY and SHOW commands require that the administrator identify
the firm, and the particular division if the firm has several divisions
which are recruiting.  Each firm, or each division if several divisions
are recruiting, is identified by a single number.  If the administrator
does not know the number, then the word LIST can be typed in response
to the "WHAT NEXT_?"  question to display the list of firms.  The number
which is required appears at the upper left corner of the description
of the firm.  If the administrator does not type a number to the right
of the word MODIFY or SHOW on the same line, then the program will
ask for the number on the next line.
.SKIP.TEST PAGE 5
The commands which can be typed in response to the "WHAT NEXT?"
question are described in more detail below.
.left margin 8
.skip.test page 3.indent -8
ENTER###to enter the schedules for a new firm.  The number which the
program will assign to the new firm will be the next number which has
not yet been used.  In transferring from one round to the next, the
firm numbers are not reused but continue to increase so there is no
ambiguity about which firm corresponds to a particular number.  The
administrator can cancel the entry of the new firm and get back to
the "WHAT NEXT?"  question by merely pressing the RETURN key when asked
for the firm name, or by typing 0 (zero) when asked for the number
of schedules.
.skip.test page 3
The entry of a new firm is described in detail later in these
instructions.
.skip.test page 3.indent -8
EXIT####to save the schedules entered so far and then to exit.  The
administrator can run the program again later to enter additional
schedules or to modify schedules already entered.  The changes to the
schedules do not become known to the students until and unless the
administrator issues the EXIT, PRINT or SAVE commands.  The schedules
can continue to be updated until the deadline by which all of the
students must have submitted their requests.  The administrator and
the students must exit from the programs before processing can begin.
If the students are to be allowed a second chance or stage in which
to request undersubscribed firms, then, after processing has been
completed, the administrator can resume entering new firms and modifying
firms already entered as additional information becomes known.
.skip.test page 3.indent -8
LIST####to type a short summary for each firm on the terminal.  These
summaries include the code number for the firm at the upper left corner.
An example of one of these summaries is shown below.
.nofill.skip.test page 2
Code:  40, Open slots:  26, Date:  2-Feb-84
Vampire Exterminators, Stake Driver, Transylvania
.fill
.skip.test page 3.indent -8
MODIFY##and a firm number to modify the schedules for that firm.  The
administrator will be shown the general information for the firm and
will be asked if this is correct.  If the administrator confirms that
the general information is correct, then the administrator will be
asked for the number of any schedule which is to be modified.  When
modifying the information about the firm or about the schedules, it
is not necessary to retype the values which are already correct.  Just
pressing the RETURN key will retain the former value which is always
shown enclosed in parentheses in the request for the new value.  The
description of the entry of a new firm later in these instructions
contains additional information about the items which can be changed
by using the MODIFY command.
.skip.test page 3
If the length of the interviews is changed, then the profile numbers
and starting and ending times of each of the schedules will have to
be specified again.  If the number of schedules is increased, then
the information for each of the new schedules will also have to be
entered.
.skip.test page 3.indent -8
PRINT###to produce a disk file containing the same information as is
given by the SHOW command for all firms.  This file can be typed on
a hard copy terminal or printed on the line printer.
.skip.test page 3.indent -8
SAVE####to save the schedules entered so far.  The administrator can
continue to enter additional schedules and to modify existing schedules.
.skip.test page 3.indent -8
SHOW####and a firm number to display all of the scheduling information
for that firm on the terminal.  An example of such a report is shown
below.
.skip
.nofill.test page 8
   Number:   40
     Name: Vampire Exterminators
 Division: Stake Driver
 Location: Transylvania
   Length:   30 minutes
Schedules:    2
    Total:   26 interviews
 1 to   2: 2*13 Interviews 2-Feb-84 9:00am to 4:15pm (Profile 1)
.fill
.skip.test page
The bottom line in the example indicates that schedules 1 and 2 are
identical, and that each contains 13 interviews being held on February
2, 1984 with the first interviews starting at 9am and the final
interviews starting at 4:15pm.  The starting times of the interviews
between these times are the times which are defined by profile 1 for
30 minute interviews.  The 2* before the number 13 indicates that there
are 2 identical schedules being described in the bottom line.
.left margin 0
.skip 2.test page 6.left margin 0
.c;ENTRY OF A NEW FIRM OR MODIFICATION OF AN EXISTING FIRM
.C;----- -- - --- ---- -- ------------ -- -- -------- ----
.skip.test page 3
When the administrator is entering a new firm, the program will first
ask the administrator to specify general information about the firm,
and then will ask the administrator to specify the schedule for each
recruiter on each day.  After the administrator has entered the general
information and again after the administrator has entered each schedule,
the information which the administrator has just entered will be
displayed on the terminal and the program will ask for confirmation
that this information is correct.  If any item in the information is
wrong, then the administrator will be asked to specify each item again,
but the administrator can just press the RETURN key to retain any value
which is correct and to advance to the next item.
.skip.test page 3
If the administrator is modifying the information for a firm which
was entered previously, then the program will display the general
information for the firm and ask for confirmation that this general
information is correct.  After the administrator has confirmed that
the general information is correct, then the program will ask for the
number of any schedule which is not correct.  If all of the schedules
are correct, or when the administrator has completed changing the
schedules, then just the RETURN key can be pressed to display all of
the information for this firm.  The program will ask for confirmation
that all of this information is correct.  If it is not, then the program
will again display the general information for the firm and ask for
confirmation that this general information is correct, and so on.
.skip.test page 3
The general information for each firm which the administrator will
be asked to specify includes the following items.
.left margin +5.skip.nofill.test page 5
The firm name
The division name
A short address
The length of each interview
The number of schedules of interviews
.left margin -5.fill.skip.test page 3
The firm name must be specified, but the division name and the address
are not required.  If the administrator does not want to enter a
division name or an address, then just the RETURN key can be pressed
without anything else having been typed.  When modifying the general
information for the firm, a single asterisk can be typed in response
to the request for the division name or address to discard the previous
division name or address.
.skip.test page 3
The length of the interviews must be one of those for which one or
more profiles of possible starting times has been made known to the
program.  These profiles are easily changed but this should be done
by the programmer.  The administrator can press the question mark key
to obtain a list of the possible lengths.
.skip.test page 3
The number of schedules is equal to the number of recruiter days.  If
a firm is sending 3 recruiters and they all are conducting interviews
on 2 days, then the number of schedules would be 6.  If 0 (zero) is
typed in response to the request for the number of recruiters, and
if a new firm is being entered, then the schedule for the new firm
will be cancelled and the firm number will be available for use by
the next ENTER command.  If the information for a firm is being
modified, and a smaller number of schedules is typed than was originally
specified, then the schedules being abandoned are retained but are
marked as being cancelled.
.skip.test page 7
The program will ask for the following information for each schedule.
.skip.nofill.test page 5.left margin +5
The profile if there are several for interviews of this length
The date the interviews will be held
The starting time of the first interview
The starting time of the final interview
The starting time of any interviews which will not be held
.left margin -5
.skip.fill.test page 3
If more than one profile of starting times is available, then the
program will ask which of these profiles is to be used.  The
administrator can press the question mark key for a list of the starting
times represented by each profile.  For the first schedule, the question
will include enclosed in parentheses the number of the first profile
of the proper length in the file which defines these profiles and this
will be the profile which will be selected if the administrator just
presses the RETURN key in response to the question.  For the second
and subsequent schedules, the number which will be displayed enclosed
in parentheses and which will be used if the administrator just presses
the RETURN key will be the profile number chosen for the previous
schedule.  The profile which is selected by the administrator will
determine which starting times are available.  If the profile selected
by the administrator has interviews starting on the hour at 9, 10,
11, 1, 2, 3 and 4, then the first interview would normally be held
at 9, but if the particular recruiter is known to be arriving late,
then the first interview might be held at 10 or 11 or later.  With
this profile, the final interview would normally be held at 4, but
if the particular recruiter is known be be leaving early, then the
final interview might be held at 3 or 2 or earlier.  If a particular
recruiter has other commitments which conflict with interviews around
the noon break, then the interviews at 11 or at 1 or both might not
be held.
.skip.test page 3
The date when the interviews are to be held can be expressed in any
conventional notation.  All of the following forms are accepted.
.skip.left margin +5.nofill.TEST PAGE 6
12 February 84
12Feb84
February 12, 84
2/12/84
12/FEB/84
12-FEB-84
.fill.left margin -5
.skip.test page 3
When entering the information for the second and following schedules
for a new firm, the question about the date will include enclosed in
parentheses the date of the previous schedule and this will be the
date which will be selected if the administrator just presses the RETURN
key in response to the question.
.skip.test page 3
The starting times of the first interview, of the final interview,
and of any interviews between these which are not to be held, can be
expressed in either the 12 hour system or the 24 hour system.  If the
12 hour system is used, then the starting times of the interviews can
be followed by either am or pm as appropriate, but the following am
or pm is not necessary.  If an interview starts on the hour, then the
minutes need not be included either.  For example, if an interview
starts at 2 in the afternoon, then its starting time could be specified
in the 12 hour system as 2, 2:00, 2 pm, 2:00 pm, 2 p.m_.  or 2:00 p.m_.
or in the 24 hour system as 14 or 14:00.  If an interview starts at
noon, then its starting time would be specified as 12, 12:00, 12 m,
12:00 m, 12 m_.  or 12:00 m., since noon is neither am nor pm.
.skip.test page 3
When entering the information for a new firm, the questions about the
starting times for the first interview and for the final interview
will include enclosed in parentheses the first possible interview time
and the final possible interview time respectively.  The times displayed
in parentheses will be the times which will be selected if the
administrator just presses the RETURN key in response to these
questions.
.skip.test page 3
If several interviews are not to be held, then the starting times of
these interviews can either be specified on separate lines, or together
on a single line separated either by commas or spaces or both.  If
an interview has been specified as being skipped but it is later decided
that this interview will be held instead, then its starting time can
be specified again as a skipped interview and this duplication will
remove it from the list of skipped interviews.  If the starting time
of the first interview is indicated as being skipped, then the first
interview will start at the next available later starting time which
is not being skipped.  If the starting time of the final interview
is indicated as being skipped, then the final interview will start
at the next available earlier starting time which is not being skipped.
If all of the interviews between and including the first and final
interviews are indicated as being skipped, then the schedule will be
abandoned, but will be retained and will be marked as cancelled.  The
administrator can press the question mark key for a list of the possible
starting times and of those which have been indicated as being skipped.
The administrator must press the RETURN key an extra time when all
of the skipped interviews have been specified.
.page.initial page.skip left page.initial page
.rtt'Appendix C: Files Included in this Package',,'>'
.center
APPENDIX C
.skip 2
.center
FILES INCLUDED IN THIS PACKAGE
.center
----- -------- -- ---- -------
.skip
The distributed version of the interview request system contains the
following program and text files.  Versions of the programs are included
for use on both the DECsystem10 computer and the DECsystem20 computer.
.left margin 12
.skip.test page 3.indent -12
ADMHLP.FOR##The FORTRAN source code which produces the help messages
which can be typed by the JOBADM program.  This file is produced by
using the FORMAT program to process the unformatted version of the
messages in the ADMHLP.RNO file.
.skip.test page 3.indent -12
ADMHLP.RNO##The unformatted version of the help messages which can
be typed by the JOBADM program.  This file must be processed by the
FORMAT program to produce the FORTRAN source code which can be loaded
with the JOBADM program.
.skip.test page 3.indent -12
BLKD10.FOR##The BLOCK DATA routine which must be loaded with the various
programs which read from or write to the central storage account on
the DECsystem10.
.skip.test page 3.indent -12
BLKD20.FOR##The BLOCK DATA routine which must be loaded with the various
programs which read from or write to the central storage account on
the DECsystem20.
.skip.test page 3.indent -12
FORMAT.FOR##The version of the FORMAT program which is needed to convert
the unformatted versions of the help messages in the JOBHLP.RNO and
ADMHLP.RNO files into FORTRAN source code.
.skip.test page 3.indent -12
JOBADM.FOR##The interactive program which is used by the staff of the
placement office to enter the firm schedules.
.skip.test page 3.indent -12
JOBBIG.FOR##The fast but large version of the first program in the
series of programs which process the requests.  The JOBBIG program
must be used if the students rank their requests and the failure of
any request is to increase the probability of getting the remaining
interviews which are less wanted.  Otherwise, the JOBSLO program can
be used instead.
.skip.test page 3.indent -12
JOBGRF.FOR##A program which can be used to examine the proportion of
the students making various numbers of requests who actually get
interviews, and the proportion of the students who specify time
preferences who actually get interviews at these times.
.skip.test page 3.indent -12
JOBHLP.FOR##The FORTRAN source code which produces the help messages
which can be typed by the JOBS program.  This file is produced by using
the FORMAT program to process the unformatted version of the messages
in the JOBHLP.RNO file.
.skip.test page 3.indent -12
JOBHLP.RNO##The unformatted version of the help messages which can
be typed by the JOBS program.  This file must be processed by the FORMAT
program to produce the FORTRAN source code which can be loaded with
the JOBS program.
.skip.test page 3.indent -12
JOBMOD.FOR##The program which is used by the computer services staff
to change the state of interview requests made by particular students.
.skip.test page 3.indent -12
JOBPSW.RNO##A file which can be processed by the FROFF word processor,
together with one of the files produced by the RSMPSW program, to
produce form letters which can be given to the students telling them
what their passwords will be.  The description in this file of the
account to be used will have to be changed.
.skip.test page 3.indent -12
JOBPUT.FOR##The program which splits up the composite interview request
file after processing has been completed and puts the individual files
back into the central storage account.
.skip.test page 3.indent -12
JOBS.CTL####The batch control file for the DECsystem20 computer.  The
batch job isn't necessary on the DECsystem10 computer.
.skip.test page 3.indent -12
JOBS.DOC####This instruction manual.  This is produced by using the
FROFF word processor to process the unformatted version of the manual
in the JOBS.RNO file.
.skip.test page 3.indent -12
JOBS.FOR####The interactive program which is used by the students to
make their requests for job interviews.
.skip.test page 3.indent -12
JOBS.RNO####The unformatted version of this instruction manual.  This
is meant to be processed by the FROFF word processor.
.skip.test page 3.indent -12
JOBSCH.FOR##The third program in the series of programs which process
the requests.  This program produces the printed schedules which are
given to the students.
.skip.test page 3.indent -12
JOBSLO.FOR##The small but slow version of the first program in the
series of programs which process the requests.  The JOBBIG program
can be used instead of the JOBSLO program.
.skip.test page 3.indent -12
JOBSRT.FOR##The program which can be used to sort the list of students
produced by the JOBBIG or JOBSLO program into the alphabetical order
of the students' last names.
.skip.test page 3.indent -12
JOBTIM.FOR##The second program in the series of programs which process
the requests.  This program assigns times for the interviews and
produces the printed schedules which are given to the recruiters.
.skip.test page 3.indent -12
JOBTST.FOR##A program which can be used to change the priorities of
the requests in the test file R2S199.002 to different values chosen
at random, or to change the scheme used for assigning these priorities
as well.
.skip.test page 3.indent -12
LIBALL.FOR##Routines which are needed by more than just one of the
programs in this package, but which are relatively independent of the
particular computer being used.
.skip.test page 3.indent -12
LIBD10.FOR##Versions of routines which are specific for the DECsystem10
computer.
.skip.test page 3.indent -12
LIBD20.FOR##Versions of routines which are specific for the DECsystem20
computer.
.skip.test page 3.indent -12
MACD10.MAC##Assembly language routines for the DECsystem10 computer.
.skip.test page 3.indent -12
MACD20.MAC##Assembly language routines for the DECsystem20 computer.
.skip.test page 3.indent -12
RSMPSW.DAT##A file containing 5000 possible passwords which can be
assigned to the students using the RSMPSW program.
.skip.test page 3.indent -12
RSMPSW.FOR##The program which can be used to assign passwords selected
from any arbitrary text file.  This program was developed for the
student resume system which uses the same password checking subroutines
as the interview request system.  The RSMPSW program consists only
of a main program and does not use any subroutines.  It contains simple
OPEN and CLOSE statements which will have to be changed for use on
other computer systems.
.skip.test page 3.left margin 0
The following files can be used to test the programs in this package.
The account numbers or account name of the central storage account
must also be inserted into the BLOCK DATA routine before the programs
can be tested.
.left margin 12
.skip.test page 5.indent -12
ACOUNT.JOB##An example of the account validation file.  This version
allows all accounts to be used for the demonstration class 999. This
file contains 1 line which validates all accounts for use by the
administrator and 1 line which validates all accounts for use by the
students.  Whichever line comes first determines how the accounts can
be used.  Of course, the lines which do this must be replaced before
the JOBS program is actually used by real students.
.skip.test page 5.indent -12
CURENT.JOB##An example of the file which specifies the current round
and stage for each class.  This version sets the round to 2 and the
stage to 1 for the demonstration class 999.
.skip.test page 5.indent -12
PSW999.JOB##An example of a password file.  This version is for the
demonstration class 999 and corresponds to the passwords embedded in
the R2S199.002 composite interview request file.  The number for the
first student is 1 and the password is TEST#1, for the second student
the number is 2 and the password is TEST#2, and so on.
.skip.test page 5.indent -12
R2S199.001##An example of the file which specifies the schedules for
several fictitious firms which are interviewing the students in the
demonstration class 999.  This file should be renamed FRM999.JOB when
it is copied into the central storage account.
.skip.test page 5.indent -12
R2S199.002##An example of the composite file which contains the
interview requests made by several fictitious students in the
demonstration class 999.  The JOBTST program can be used to change
the type of priority bidding specified within this file and in the
R2S199.001 file.  The JOBPUT program can be used to split the composite
file into several separate interview request files in the central
storage account.  Each of these separate interview request files should
have a name similar to YYYYYY.999 where YYYYYY is the 6 digit student
number.  Alternatively, a text editor can be used to split up the
composite file.
.skip.test page 5.indent -12
R2S199.003##An example of the file which specifies the profiles of
the starting times for interviews in each of the possible schedules.
This version specifies several profiles each 30 minutes long, several
each 45 minutes long and several 60 minutes long.  This file should
be renamed TIMES.JOB when it is copied into the central storage account.
.skip.test page 5.indent -12
R2S199.004#through#R2S199.010
.break
Files resulting from the processing of the files R2S199.001, R2S199.002
and R2S199.003 which can be compared with the results obtained on any
computer to verify the working of the processing programs in the
interview request system.  To produce new versions of these files which
can then be compared with the original files which are included with
the interview request system, the value -1 must be specified when the
JOBBIG or JOBSLO programs ask for the kernel for the random number
generator.  A negative kernel causes the processing to be performed
without randomizing the order of the requests for a particular firm
which have the same priority or bid.  A 30 minute minimum interval
between interviews should be selected in the JOBTIM program.
.skip.test page 5.indent -12
R2S299.000#through#R2S299.010
.break
The data and listing files for a second stage based upon the first
stage of the same round which is described in the various R2S199 files.
These files test the reduction, modification and adding of schedules
by the firms, and the cancelling and making of requests by the students
in a second stage.  The changes between stage 1 and stage 2 are
described in the R2S299.000 file.
.skip.test page 3.left margin 0
The following command files are included for loading the programs in
the interview request system on both the DECsystem10 and DECsystem20
computers.  The versions of these command files for the DECsystem10
and DECsystem20 are identical except that the letters "D10" in the
one have been replaced by "D20" in the other.
.left margin 12.no justify
.skip.test page 5.indent -12
ADMD10.CMD##Command file for loading the JOBADM program on the
DECsystem10 computer.
.indent -12
ADMD20.CMD##Same for the DECsystem20 computer.
.skip.test page 5.indent -12
BIGD10.CMD##Command file for loading the JOBBIG program on the
DECsystem10 computer.
.indent -12
BIGD20.CMD##Same for the DECsystem20 computer.
.skip.test page 5.indent -12
GRFD10.CMD##Command file for loading the JOBGRF program on the
DECsystem10 computer.
.indent -12
GRFD20.CMD##Same for the DECsystem20 computer.
.skip.test page 5.indent -12
JOBD10.CMD##Command file for loading the JOBS program on the DECsystem10
computer.
.indent -12
JOBD20.CMD##Same for the DECsystem20 computer.
.skip.test page 5.indent -12
MODD10.CMD##Command file for loading the JOBMOD program on the
DECsystem10 computer.
.indent -12
MODD20.CMD##Same for the DECsystem20 computer.
.skip.test page 5.indent -12
PUTD10.CMD##Command file for loading the JOBPUT program on the
DECsystem10 computer.
.indent -12
PUTD20.CMD##Same for the DECsystem20 computer.
.skip.test page 5.indent -12
SCHD10.CMD##Command file for loading the JOBSCH program on the
DECsystem10 computer.
.indent -12
SCHD20.CMD##Same for the DECsystem20 computer.
.skip.test page 5.indent -12
SLOD10.CMD##Command file for loading the JOBSLO program on the
DECsystem10 computer.
.indent -12
SLOD20.CMD##Same for the DECsystem20 computer.
.skip.test page 5.indent -12
SRTD10.CMD##Command file for loading the JOBSRT program on the
DECsystem10 computer.
.indent -12
SRTD20.CMD##Same for the DECsystem20 computer.
.skip.test page 5.indent -12
TIMD10.CMD##Command file for loading the JOBTIM program on the
DECsystem10 computer.
.indent -12
TIMD20.CMD##Same for the DECsystem20 computer.
.skip.test page 5.indent -12
TSTD10.CMD##Command file for loading the JOBTST program on the
DECsystem10 computer.
.indent -12
TSTD20.CMD##Same for the DECsystem20 computer.
.SKIP.test page 3.left margin 0.justify
There is no command file for loading the RSMPSW program since the RSMPSW
program does not use any subroutines.
.page.initial page.skip left page.initial page
.LEFT MARGIN 0
.rtt'Appendix D: Examples of the Listing Files',,'>'
.center
APPENDIX D
.skip 2
.center
EXAMPLES OF THE LISTING FILES
.center
-------- -- --- ------- -----
.skip.test page 3
Examples of the listings which are produced during the processing of
the requests are shown in this section.  The JOBBIG and JOBSLO programs
produce a listing of all of the students who have requested interviews
with each firm, and a listing of all of the student names, passwords
and identifying numbers.  The JOBSRT program can be used to sort the
listing of student names, passwords and identifying numbers into
alphabetically increasing order based upon the student names.  The
JOBTIM program produces a listing for each recruiter of what students
that recruiter will be talking to at what times during each day.  The
JOBSCH program produces a listing for each student of the dates and
times when that student will be talking to the various firms.
.skip.test page 3
Examples of the listings of student names, numbers and passwords are
shown on the next 2 pages.  The first page shows an example of the
listing of the names, numbers and passwords of the students which can
be written either by the JOBBIG program or by the JOBSLO program.  The
students appear in this listing in the order in which their requests
appear in the composite interview request file.
.skip.test page 3
The second page shows an example of the listing of the names, numbers
and passwords of the students sorted alphabetically according to the
names of the students.  The JOBSRT program produced this listing by
sorting the file shown on the first page which was produced by either
the JOBBIG or JOBSLO program and which contains this same information
for the students in the order in which their requests appear in the
composite interview request file.
.page
.NOFILL
Class  999, Round  2, Stage  1 (printed 28-Jan-84 18:20)
.SKIP
     2 Robert Smith                  TEST 2
     3 William Johnson               TEST 3
     4 Jane Kim                      TEST 4
     5 Richard Brown                 TEST 5
     7 Nancy Jones                   TEST 7
     8 Edward Anderson               TEST 8
     9 Thomas Williams               TEST 9
    10 Charles Cohen                 TEST 10
    11 Peter Harris                  TEST 11
    12 Ann Wilson                    TEST 12
    13 George Moore                  TEST 13
    14 Joseph White                  TEST 14
    15 Susan Kelly                   TEST 15
    16 Mark King                     TEST 16
    17 Mary Evans                    TEST 17
    18 Martha Jackson                TEST 18
    19 Daniel Sullivan               TEST 19
    20 Frank Lewis                   TEST 20
.PAGE
Class  999, Round  2, Stage  1 (printed 28-Jan-84 18:20)
.SKIP
     8 EDWARD ANDERSON               TEST 8
     5 RICHARD BROWN                 TEST 5
    10 CHARLES COHEN                 TEST 10
    17 MARY EVANS                    TEST 17
    11 PETER HARRIS                  TEST 11
    18 MARTHA JACKSON                TEST 18
     3 WILLIAM JOHNSON               TEST 3
     7 NANCY JONES                   TEST 7
    15 SUSAN KELLY                   TEST 15
     4 JANE KIM                      TEST 4
    16 MARK KING                     TEST 16
    20 FRANK LEWIS                   TEST 20
    13 GEORGE MOORE                  TEST 13
     2 ROBERT SMITH                  TEST 2
    19 DANIEL SULLIVAN               TEST 19
    14 JOSEPH WHITE                  TEST 14
     9 THOMAS WILLIAMS               TEST 9
    12 ANN WILSON                    TEST 12
.PAGE
.fill
Examples of the listings of the students requesting particular firms
are shown on the next pages.  In the first set of 2 examples, the
students ranked their requests from 1 through N where N is the number
of requests which are allowed in each round.  The value of this ranking
is shown in the second column with 1 digit to the right of the decimal
point.  If a type 1 priority assignment scheme were being used, then
the fractional portion of each ranking value would represent the
adjustment made to the higher valued (less wanted) requests for each
request which the student making that request did not get.
.skip.test page 3
In the second set of 2 examples, the students could indicate that up
to a certain number of their requests were to have higher priority
than those made by other students without similar high priorities.
The letter A appearing in the second column indicates that the student
placed a high priority on the request.  The letter B indicates that
the student did not place a high priority on the request.
.skip.test page 3
In the third set of 2 examples, the students could bid for interviews
in an auction.  The amount bid is shown in the second column.
.skip.test page 3
The ruled line on each page indicates the division of the list between
those getting interviews and those on the waiting list.  The first
person below the line would be the first to be offered an interview
if anyone cancels above the line.  Blank lines appear above the ruled
line if the firm's interviews are undersubscribed.
.page
.nofill
Code:        28 Firm: Castle Remodeling
Date:  1-Feb-84 Dept: Color Coordination
                Adrs: Germany
.skip
    1  1.0  Susan Kelly
    2  2.0  Thomas Williams
    3  2.0  William Johnson
    4  2.0  Joseph White
    5  3.0  Martha Jackson
    6  4.0  Ann Wilson
    7  6.0  Nancy Jones
    8  7.0  Daniel Sullivan
    9  8.0  Robert Smith
   10  8.0  Richard Brown
   11  9.0  Peter Harris
   12 10.0  Mary Evans
   13 10.0  George Moore
          ---------------
      10.0  Frank Lewis
.SKIP -3
* by name indicates student was invited to closed schedule
- by name indicates student was invited, but is shown on open schedule
Class  999, Round  2, Stage  1 (printed 28-Jan-84 18:20)
.PAGE
Code:        35 Firm: Fast Buck Surplus
Date:  6-Feb-84 Dept: Purchasing
  to:  7-Feb-84 Adrs:
.skip
    1  1.0  Mark King
    2  2.0  Nancy Jones
    3  4.0  Richard Brown
    4  5.0  Frank Lewis
    5  5.0  Joseph White
    6  7.0  George Moore
    7  7.0  Jane Kim
    8  7.0  Robert Smith
    9  8.0  William Johnson
   10  9.0  Peter Harris
   11
   12
   13
   14
   15
   16
   17
   18
   19
   20
   21
   22
   23
   24
          ---------------
.SKIP -3
* by name indicates student was invited to closed schedule
- by name indicates student was invited, but is shown on open schedule
Class  999, Round  2, Stage  1 (printed 28-Jan-84 18:20)
.PAGE
Code:        28 Firm: Castle Remodeling
Date:  1-Feb-84 Dept: Color Coordination
                Adrs: Germany
.SKIP
    1  A  Susan Kelly
    2  A  Thomas Williams
    3  A  William Johnson
    4  A  Joseph White
    5  A  Martha Jackson
    6  A  Ann Wilson
    7  B  Nancy Jones
    8  B  Daniel Sullivan
    9  B  Robert Smith
   10  B  Richard Brown
   11  B  Peter Harris
   12  B  Mary Evans
   13  B  George Moore
          ---------------
       B  Frank Lewis
.SKIP -3
* by name indicates student was invited to closed schedule
- by name indicates student was invited, but is shown on open schedule
Class  999, Round  2, Stage  1 (printed 28-Jan-84 18:20)
.PAGE
Code:        35 Firm: Fast Buck Surplus
Date:  6-Feb-84 Dept: Purchasing
  to:  7-Feb-84 Adrs:
.SKIP
    1  A  Mark King
    2  A  Nancy Jones
    3  B  Richard Brown
    4  B  Frank Lewis
    5  B  Joseph White
    6  B  George Moore
    7  B  Jane Kim
    8  B  Robert Smith
    9  B  William Johnson
   10  B  Peter Harris
   11
   12
   13
   14
   15
   16
   17
   18
   19
   20
   21
   22
   23
   24
          ---------------
.SKIP -3
* by name indicates student was invited to closed schedule
- by name indicates student was invited, but is shown on open schedule
Class  999, Round  2, Stage  1 (printed 28-Jan-84 18:20)
.page
Code:        28 Firm: Castle Remodeling
Date:  1-Feb-84 Dept: Color Coordination
                Adrs: Germany
.skip
    1      2000  Susan Kelly
    2      1000  Thomas Williams
    3      1000  William Johnson
    4      1000  Joseph White
    5       800  Martha Jackson
    6       300  Ann Wilson
    7       200  Nancy Jones
    8       100  Daniel Sullivan
    9       100  Robert Smith
   10       100  Richard Brown
   11        80  Peter Harris
   12        80  Mary Evans
   13        80  George Moore
          ---------------
             70  Frank Lewis
.SKIP -3
* by name indicates student was invited to closed schedule
- by name indicates student was invited, but is shown on open schedule
Class  999, Round  2, Stage  1 (printed 28-Jan-84 18:20)
.PAGE
Code:        35 Firm: Fast Buck Surplus
Date:  6-Feb-84 Dept: Purchasing
  to:  7-Feb-84 Adrs:
.skip
    1      2000  Mark King
    2      1000  Nancy Jones
    3       300  Richard Brown
    4       300  Frank Lewis
    5       200  Joseph White
    6       200  George Moore
    7       100  Jane Kim
    8       100  Robert Smith
    9       100  William Johnson
   10        70  Peter Harris
   11
   12
   13
   14
   15
   16
   17
   18
   19
   20
   21
   22
   23
   24
          ---------------
.SKIP -3
* by name indicates student was invited to closed schedule
- by name indicates student was invited, but is shown on open schedule
Class  999, Round  2, Stage  1 (printed 28-Jan-84 18:20)
.PAGE
.fill
The listings on the next 4 pages were produced by the JOBTIM program
and show the schedules for the recruiters for each of 2 firms.  The
interviews for the first firm were completely subscribed, so no blank
lines appear in the schedules.  Although the second firm is willing
to speak to enough students to fill 2 schedules, the second schedule
was not necessary.  When fewer than the offered number of schedules
are needed, no students are assigned to the excess schedules so that
these excess schedules can be cancelled easily.
.nofill
.PAGE
Code:        28 Firm: Castle Remodeling
Date:  1-Feb-84 Dept: Color Coordination
                Adrs: Germany
.SKIP
Open schedule  1 of  2
.SKIP
 9:00 am  Joseph White
.SKIP
10:00 am  Ann Wilson
.SKIP
11:00 am  William Johnson
.SKIP
 1:00 pm  Susan Kelly
.SKIP
 2:00 pm  Peter Harris
.SKIP
 3:00 pm  Thomas Williams
.SKIP
 4:00 pm  Mary Evans
.SKIP -1
Class  999, Round  2, Stage  1 (printed 27-Jan-84 22:27)
.PAGE
Code:        28 Firm: Castle Remodeling
Date:  1-Feb-84 Dept: Color Coordination
                Adrs: Germany
.SKIP
Open schedule  2 of  2
.SKIP
 9:00 am  Nancy Jones
.SKIP
10:00 am  George Moore
.SKIP
11:00 am  Martha Jackson
.SKIP
 1:00 pm  Robert Smith
.SKIP
 2:00 pm  Richard Brown
.SKIP
 3:00 pm  Daniel Sullivan
.SKIP -1
Class  999, Round  2, Stage  1 (printed 27-Jan-84 22:27)
.PAGE
Code:        35 Firm: Fast Buck Surplus
Date:  6-Feb-84 Dept: Purchasing
                Adrs:
.SKIP
Open schedule  1 of  2
.SKIP
 9:00 am  Robert Smith
.SKIP
 9:30 am  Mark King
.SKIP
10:00 am  Richard Brown
.SKIP
10:30 am  Jane Kim
.SKIP
11:00 am  Nancy Jones
.SKIP
12:45 pm  Frank Lewis
.SKIP
 1:15 pm  George Moore
.SKIP
 1:45 pm  William Johnson
.SKIP
 2:15 pm  Joseph White
.SKIP
 2:45 pm  Peter Harris
.SKIP
 3:15 pm  .  .  .  .  .  .  .
.SKIP
 3:45 pm  .  .  .  .  .  .  .
.SKIP
 4:15 pm  .  .  .  .  .  .  .
.SKIP -1
Class  999, Round  2, Stage  1 (printed 27-Jan-84 22:27)
.PAGE
Code:        35 Firm: Fast Buck Surplus
Date:  7-Feb-84 Dept: Purchasing
                Adrs:
.SKIP
Open schedule  2 of  2
.SKIP
 9:15 am  .  .  .  .  .  .  .
.SKIP
 9:45 am  .  .  .  .  .  .  .
.SKIP
10:15 am  .  .  .  .  .  .  .
.SKIP
10:45 am  .  .  .  .  .  .  .
.SKIP
 1:00 pm  .  .  .  .  .  .  .
.SKIP
 1:30 pm  .  .  .  .  .  .  .
.SKIP
 2:00 pm  .  .  .  .  .  .  .
.SKIP
 2:30 pm  .  .  .  .  .  .  .
.SKIP
 3:00 pm  .  .  .  .  .  .  .
.SKIP
 3:30 pm  .  .  .  .  .  .  .
.SKIP
 4:00 pm  .  .  .  .  .  .  .
.SKIP -1
Class  999, Round  2, Stage  1 (printed 27-Jan-84 22:27)
.PAGE
.fill
The listings on the next 2 pages were produced by the JOBSCH program
and show the individual schedules for 2 students.  Even when the student
has several schedules on the same day, the JOBTIM program which assigns
times for the interviews leaves enough time for the student to get
from 1 interview to the next.  If, because of an irresolvable scheduling
conflict, a time cannot be assigned for an interview, then the listing
would instruct the student to contact the staff of the placement office
to schedule that particular interview.  In practice, such conflicts
are extremely unlikely, however.
.nofill
.page
Name: Richard Brown
.SKIP
Open interview schedule
.SKIP
  31  Thumscrews Collection Agency, Enforcement, NYC
      Wed  1-Feb-84   9:00 am to 10:00 am  Schedule:  1
.SKIP
  32  Pauper Bank and Trust, Loans, Boston
      Wed  1-Feb-84  10:30 am to 11:00 am  Schedule:  1
.SKIP
  28  Castle Remodeling, Color Coordination, Germany
      Wed  1-Feb-84   2:00 pm to  2:30 pm  Schedule:  2
.SKIP
  25  U-Wreck-Em Rent-A-Car, Fender Smoothing
      Wed  1-Feb-84   3:00 pm to  3:30 pm  Schedule:  2
.SKIP
  36  Smugglers Imports, Bribery
      Fri  3-Feb-84   9:15 am to  9:45 am  Schedule:  1
.SKIP
  35  Fast Buck Surplus, Purchasing
      Mon  6-Feb-84  10:00 am to 10:30 am  Schedule:  1
.SKIP
  30  Honest Don's Used Cars, Sales
      Mon  6-Feb-84   2:00 pm to  2:30 pm  Schedule:  1
.SKIP
  24  Sticky Floor Theaters, Popcorn sales, Hartford
      Mon  6-Feb-84   3:30 pm to  4:00 pm  Schedule:  1
.SKIP -1
Class  999, Round  2, Stage  1 (printed 27-Jan-84 22:29)
.PAGE
Name: George Moore
.SKIP
Open interview schedule
.SKIP
  28  Castle Remodeling, Color Coordination, Germany
      Wed  1-Feb-84  10:00 am to 10:30 am  Schedule:  2
.SKIP
  32  Pauper Bank and Trust, Loans, Boston
      Wed  1-Feb-84  11:00 am to 11:30 am  Schedule:  1
.SKIP
  25  U-Wreck-Em Rent-A-Car, Fender Smoothing
      Wed  1-Feb-84   2:00 pm to  2:30 pm  Schedule:  2
.SKIP
  38  Monophonic HiFi, Advertising
      Fri  3-Feb-84  10:00 am to 10:30 am  Schedule:  1
.SKIP
  37  Rat Race Jogging Apparel, Product Testing
      Fri  3-Feb-84   3:30 pm to  4:30 pm  Schedule:  2
.SKIP
  30  Honest Don's Used Cars, Sales
      Mon  6-Feb-84   9:00 am to  9:30 am  Schedule:  1
.SKIP
  26  Yellow Brick Pavers, Midwest
      Mon  6-Feb-84  10:15 am to 10:45 am  Schedule:  1
.SKIP
  35  Fast Buck Surplus, Purchasing
      Mon  6-Feb-84   1:15 pm to  1:45 pm  Schedule:  1
.SKIP
  24  Sticky Floor Theaters, Popcorn sales, Hartford
      Mon  6-Feb-84   3:00 pm to  3:30 pm  Schedule:  1
.SKIP -1
Class  999, Round  2, Stage  1 (printed 27-Jan-84 22:29)
.PAGE