semi合集-English.pdf - 第2413页

SEMI E86-0200 © SEMI 1999 , 2000 13 /* Retu rn a boolean den oting whether or not a Person is available for work . */ boolean isAvailableForWork ( ) raises (FrameworkErrorSignal); /* Retu rn a boolean den oti ng whether …

100%1 / 7923
SEMI E86-0200 © SEMI 1999, 2000 12
/* Add the skill (qualification to operate a specific machine) to the Person’s list of skills. Skills may be assigned or
obtained through the completion of specified course (s) and medical examination (s). This service does not detail
specific course and medical examination requirements. */
void addSkill (in Skill aSkill)
raises (FrameworkErrorSignal, SkillDuplicateSignal);
/* Remove the skill from the Person’s list of skills. */
void removeSkill (in Skill aSkill)
raises (FrameworkErrorSignal, SkillRemovalFailedSignal,
SkillNotFoundSignal);
/* Retrieve the set of skills for which this Person is qualified. */
SkillSequence skills ( ) raises (FrameworkErrorSignal);
/* Add the specified qualification (training course or medical examination) data to the training or medical history of
a Person. */
void addQualification (in QualificationData qualificationInformation)
raises (FrameworkErrorSignal, QualificationDuplicateSignal);
/* Remove the specified qualification data from the training or medical history of a Person. */
void removeQualification (in QualificationData qualificationInformation)
raises (FrameworkErrorSignal, QualificationNotAssignedSignal);
/* Retrieve all information relative to a Person’s particular qualification by performing a search using its unique
identifier. */
QualificationData findQualificationByIdentifier (in string identifier)
raises (FrameworkErrorSignal, QualificationNotFoundSignal);
/* Retrieve the set of qualifications attained by this Person. */
QualificationDataSequence qualifications ( ) raises (FrameworkErrorSignal);
/* Return the sequence of process capabilities that this Person is qualified to perform. */
ProcessCapabilitySequence processCapabilities ( ) raises (FrameworkErrorSignal);
/***** The following services provide basic state control and query. *****/
/* Denote that this person has logged on to the current shift and is AVAILABLE. */
void makeOnShift ( )
/* Denote that this person has logged off of the current shift and is NOT AVAILABLE. */
void makeOffShift ( )
/* Denote that this Person is at a workstation and available for work. It is required that the Person has logged on to
the current shift. Assignment to machine (s) and/or job (s) may or may not have occurred. */
void makeAtWorkStation ( )
raises (FrameworkErrorSignal, InvalidStateTransitionSignal );
/* Denote that this Person is not immediately available at a work station and cannot perform work. An example of
this condition is an operator taking a personal break during a shift. */
void makeNotAtWorkStation ( )
raises (FrameworkErrorSignal, InvalidStateTransitionSignal );
/* Return a boolean denoting whether or not a Person is logged on to the current shift. */
boolean isOnShift ( ) raises (FrameworkErrorSignal);
SEMI E86-0200 © SEMI 1999, 200013
/* Return a boolean denoting whether or not a Person is available for work. */
boolean isAvailableForWork ( ) raises (FrameworkErrorSignal);
/* Return a boolean denoting whether or not a Person is at their work station. */
boolean isAtWorkStation ( ) raises (FrameworkErrorSignal);
/* Determine if a Person is qualified to perform a process or material handling job for a specific machine (has a
specific skill.) The Person is qualified to operate the machine if the machine is noted in the Person's skill list, or if a
comparison of the Person’s course and medical exam histories satisfy the requirements defined within the Skill
Management Component for the noted machine. This service does not check the availability of the Person to
actually perform a task. */
boolean hasSkill (in Skill aSkill) raises (FrameworkErrorSignal);
/* Return a boolean denoting whether or not a Person is qualified for any machine. */
boolean hasSkills ( ) raises (FrameworkErrorSignal);
/* Return a boolean denoting whether or not a Person is available for the specified machine. */
boolean isAvailableForMachine (in Machine aMachine) raises (FrameworkErrorSignal);
/* Assign Person to a machine. A Person may be assigned to more than one machine at a time.*/
void assignToMachine (in Machine aMachine) raises (FrameworkErrorSignal);
/* Terminates personnel assignment to a machine. */
void deassignFromMachine (in Machine aMachine) raises (FrameworkErrorSignal);
/* Return a boolean denoting whether or not a Person is assigned to the specified machine. */
boolean isAssignedToMachine (in Machine aMachine) raises (FrameworkErrorSignal);
/* Return a boolean denoting whether or not a Person is assigned to any machine. */
boolean isAssignedToMachines ( ) raises (FrameworkErrorSignal);
/* Retrieve the set of machines to which a Person is assigned. */
MachineSequence assignedMachines ( ) raises (FrameworkErrorSignal);
/* Return a boolean denoting whether or not a Person is available to be assigned to more machines. */
boolean isAvailableForMoreMachineAssignments ( ) raises (FrameworkErrorSignal);
/***** The following services support job assignment. *****/
/* Return a boolean denoting whether or not a Person is qualified for the specified job. */
boolean isQualifiedForJob (in Job aJob) raises (FrameworkErrorSignal);
/* Return a boolean denoting whether or not a Person is qualified for any job. */
boolean isQualifiedForJobs ( ) raises (FrameworkErrorSignal);
/* Return a boolean denoting whether or not a Person is available for the specified job. */
boolean isAvailableForJob (in Job aJob) raises (FrameworkErrorSignal);
/* Assigns a Person to a job. A Person may be allocated to more than one job at a time. */
void assignToJob (in Job aJob) raises (FrameworkErrorSignal);
/* Terminates personnel assignment to a job. */
void deassignFromJob (in Job aJob) raises (FrameworkErrorSignal);
SEMI E86-0200 © SEMI 1999, 2000 14
/* Return a boolean denoting whether or not a Person is assigned to the specified job. */
boolean isAssignedToJob (in Job aJob) raises (FrameworkErrorSignal);
/* Return a boolean denoting whether or not a Person is assigned to any jobs. */
boolean isAssignedToJobs ( ) raises (FrameworkErrorSignal);
/* Retrieve the set of jobs to which a Person is assigned. */
JobSequence assignedJobs ( ) raises (FrameworkErrorSignal);
/* Return a boolean denoting whether or not a Person is available for more jobs. */
boolean isAvailableForMoreJobAssignments ( ) raises (FrameworkErrorSignal);
Contracted Services: None.
Dynamic Model:
NOT AVAILABLE
AVAILABLE
AT WORK STATION
NOT AT WORK STATION
UNASSIGNED TO JOBS
ASSIGNED TO JOBS
AVAILABLE FOR MORE ASSIGNMENTS
ASSIGNMENT AT CAPACITY EXCEEDED
UNASSIGNED TO MACHINES
ASSIGNED TO MACHINES
AVAILABLE FOR MORE ASSIGNMENTS
ASSIGNMENT AT CAPACITY EXCEEDED
AT WORK STATION
NOT AT WORK STATION
AT WORK STATION
NOT AT WORK STATION
UNASSIGNED TO JOBS
ASSIGNED TO JOBS
AVAILABLE FOR MORE ASSIGNMENTS
ASSIGNMENT AT CAPACITY EXCEEDED
UNASSIGNED TO MACHINES
ASSIGNED TO MACHINES
AVAILABLE FOR MORE ASSIGNMENTS
ASSIGNMENT AT CAPACITY EXCEEDED
UNASSIGNED TO MACHINES
UNASSIGNED TO JOBS
ASSIGNED TO JOBS
AVAILABLE FOR MORE ASSIGNMENTS
ASSIGNMENT AT CAPACITY EXCEEDED
AVAILABLE FOR MORE ASSIGNMENTS
ASSIGNMENT AT CAPACITY EXCEEDED
112
2
3
ASSIGNED TO MACHINES
AVAILABLE FOR MORE ASSIGNMENTS
ASSIGNMENT AT CAPACITY EXCEEDED
AVAILABLE FOR MORE ASSIGNMENTS
ASSIGNMENT AT CAPACITY EXCEEDED
4
56
7
811
10
9
Figure 3
Person Dynamic Model