semi合集-English.pdf - 第2409页

SEMI E86-0200 © SEMI 1999 , 2000 9 /* Return a set of Person s qualified to operate a process or m aterial handling machin e. The Person is qualified to operate the mach ine if the machine is noted in the Person' s …

100%1 / 7923
SEMI E86-0200 © SEMI 1999, 2000 8
6.3.3 PersonManager Interface
Interface: PersonManager
Inherited Interface: ComponentManager
Description: This is the interface between the Person Management Component and the rest of the CIM
environment. The PersonManager creates instances of Persons within the factory and
manages those Persons (shift, job assignment and status information). There are no
limitations to the number of PersonManagers within a factory.
Exceptions:
/* This signal is raised with attempted creation of Person through the use of a Person identifier that already exists. */
exception PersonDuplicateSignal {string identificationNumber;};
/* This signal is raised when a retrieval operation fails because the Person specified by the argument could not be
located. */
exception PersonNotFoundSignal {string identificationNumber;};
/* This signal is raised when a removal operation fails because the Person specified by the argument is not assigned
to the PersonManager. */
exception PersonNotAssigned { Person unknownPerson;};
exception PersonRemovalFailedSignal { };
Published Events:
PersonLifecycleEvent
Provided Services:
/* Create an instance of Person with a unique identifier and add to the list managed by PersonManager. */
Person createPersonWithIdentifier (in string identificationNumber)
raises (FrameworkErrorSignal, PersonDuplicateSignal);
/* Delete the Person identified by the argument from the list managed by PersonManager. */
void removePerson (in Person aPerson)
raises (FrameworkErrorSignal, PersonRemovalFailedSignal,
PersonNotAssignedSignal);
/* Return a set of Persons managed by the PersonManager. */
PersonSequence allPersons ( ) raises (FrameworkErrorSignal);
/* Search for an instance of Person using its unique identifier. Raises an exception if the Person is not found. */
Person findByIdentifier (in string identificationNumber)
raises (FrameworkErrorSignal, PersonNotFoundSignal);
/* Return a set of all Persons logged on to the specified shift. */
PersonSequence allOnShiftPersons (in shift aShift) raises (FrameworkErrorSignal);
/* Return a set of all Persons available for work. */
PersonSequence allAvailableForWorkPersons ( ) raises (FrameworkErrorSignal);
/* Return a set of all Persons not available for work. */
PersonSequence allNotAvailableForWorkPersons ( ) raises (FrameworkErrorSignal);
/***** Manage Person / Machine relationship. *****/
SEMI E86-0200 © SEMI 1999, 20009
/* Return a set of Persons qualified to operate a process or material handling machine. 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 method does not check the availability of the person to actually perform a task. */
PersonSequence allPersonsWithSkill (in Skill aSkill) raises (FrameworkErrorSignal);
/* Return a set of Persons available (“on duty” on the current shift) to operate the specified machine. This service
assumes that a Person is qualified to operate the machine. */
PersonSequence allPersonsAvailableForMachine (in Machine aMachine)
raises (FrameworkErrorSignal);
/* Return a set of all Persons currently assigned to the specified machine. */
PersonSequence allPersonsAssignedToMachine (in Machine aMachine)
raises (FrameworkErrorSignal);
/* Return a set of all Persons currently assigned to machines. */
PersonSequence allAssignedToMachinesPersons ( ) raises (FrameworkErrorSignal);
/***** Manage Person/Job relationship. *****/
/* Return a set of Persons qualified to perform a process or material handling job. The Person is qualified for the job
if the job qualification 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 job. This method
does not check the availability of the person to actually perform a task. */
PersonSequence allPersonsQualifiedForJob (in Job aJob)
raises (FrameworkErrorSignal);
/* Return a set of Persons available (“on duty” on the current shift) to perform a process or material movement job.
This service assumes that a Person is qualified to perform the job. */
PersonSequence allPersonsAvailableForJob (in Job aJob)
raises (FrameworkErrorSignal);
/* Return a set of Persons currently assigned to the specified job. */
PersonSequence allPersonsAssignedToJob (in Job aJob) raises (FrameworkErrorSignal);
/* Return a set of all Persons currently assigned to jobs. */
PersonSequence allAssignedToJobsPersons ( ) raises (FrameworkErrorSignal);
Contracted Services: None.
Dynamic Model: Same as inherited interface (Component Manager).
6.3.4 Person Interface
Interface: Person
Inherited Interface: Resource
Description: This interface represents factory personnel. As currently defined, Person refers
specifically to operating personnel within the manufacturing facility. Instances of this
interface hold the following information pertaining to these individuals: employee
information (full name, identification number, department, shift assignment); training and
medical certification; and factory operations (e.g., operate a machine, perform a process)
qualified to perform.
Exceptions:
SEMI E86-0200 © SEMI 1999, 2000 10
/* This signal is raised when an addition operation fails because the Qualification specified by the argument already
exists. */
exception QualificationDuplicateSignal {
QualificationData qualificationInformation;};
/* This signal is raised when a removal operation fails because the Qualification specified by the argument could not
be located. */
exception QualificationNotAssignedSignal {string identificationNumber;};
/* This signal is raised when a retrieval operation fails because the Qualification specified by the argument could not
be located. */
exception QualificationNotFoundSignal {string identificationNumber;};
/* This signal is raised when an addition operation fails because the Responsibility specified by the argument
already exists. */
exception ResponsibilityDuplicateSignal {any responsibility ;
string responsibilityCategory;};
/* This signal is raised when an operation fails because the Responsibility category specified by the argument could
not be located. */
exception ResponsibilityCategoryNotFoundSignal {
string responsibilityCategory;};
exception ResponsibilityCategoryRemovalFailedSignal { };
/* This signal is raised when a removal operation fails because the Responsibility specified by the argument could
not be located. */
exception ResponsibilityRemovalFailedSignal {
any responsibility;
string responsibilityCategory;};
/* This signal is raised when an addition operation fails because the skill specified by the argument already exists. */
exception SkillDuplicateSignal {Skill aSkill;};
/* This signal is raised when a removal operation fails because the skill specified by the argument could not be
located. */
exception SkillRemovalFailedSignal {Skill aSkill;};
exception SkillNotAssignedSignal {Skill aSkill;};
Published Events:
/* This event is posted when a Person's capacity to do work has changed. This includes assignment to/deassignment
from machines and jobs. It also includes changing the number of jobs and/or machines to which a Person may be
assigned. */
PersonCapacityChangedEvent
/* This event is posted when a Person's availability has changed. This includes logging on/off a shift,
leaving/returning to a work station, or capacity exceeded. */
PersonStateChangedEvent
/* This event is posted when a Person has been reassigned to a different shift. */
PersonShiftChangedEvent