semi合集-English.pdf - 第2415页

SEMI E86-0200 © SEMI 1999 , 2000 15 6.3.4.1 Object State Tables Table 1 Person State Definitions and Query State Definition Query for State via NOT AVAILABLE In this state, a Person is not clocked on to shift and cannot …

100%1 / 7923
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
SEMI E86-0200 © SEMI 1999, 200015
6.3.4.1 Object State Tables
Table 1 Person State Definitions and Query
State Definition Query for State via
NOT AVAILABLE In this state, a Person is not
clocked on to shift and cannot
perform work.
boolean isOnShift ( ) sent to instance of Person returns
FALSE. Person NOT included in set returned by
PersonManager services. PersonSequence
allOnShiftPersons (in Shift aShift) or
allAvailableForWorkPersons ( ).
AVAILABLE In this superstate, a Person is
clocked on to a shift and is ready
to perform work.
boolean isOnShift ( ) sent to instance of Person returns
TRUE. Person included in set returned by
PersonManager services PersonSequence
allOnShiftPersons (in Shift aShift) or PersonSequence
allAvailableForWorkPersons ( ).
AT WORK
STATION
A Person is available to perform
some manufacturing task; that is,
the Person is physically present
at his or her work site.
boolean isAtWorkStation ( ) sent to instance of Person
returns TRUE.
NOT AT WORK
STATION
A Person is not available to
perform any manufacturing task;
that is, the Person is physically
absent from his or her work site.
boolean isAtWorkStation ( ) sent to instance of Person
returns FALSE.
UNASSIGNED TO
MACHINES
In this state, a Person has not
been assigned to any machines.
A Person may or may not be
assigned to a job(s).
boolean isAssignedToMachines ( ) or boolean
isAssignedToMachine (in Machine aMachine) [for all
Machines] sent to instance of Person returns FALSE.
Person NOT included in set returned by PersonManager
services PersonSequence allPersonsAssignedToMachine
(in Machine aMachine) [for all Machines] or
PersonSequence allAssignedToMachinesPersons ( ).
Empty set returned by Person service MachineSequence
assignedMachines ( );
ASSIGNED TO
MACHINES
In this parent state, a Person has
been assigned to one or more
machines.
boolean isAssignedToMachines ( ) or boolean
isAssignedToMachine (in Machine aMachine) sent to
instance of Person returns TRUE. Person included in set
returned by PersonManager services PersonSequence
allPersonsAssignedToMachine (in Machine aMachine)
or PersonSequence allAssignedToMachinesPersons ( ).
Non-empty set returned by Person service
MachineSequence assignedMachines ( );
AVAILABLE FOR
MORE
ASSIGNMENTS
In this substate, a Person is
available for assignments to
more machines.
boolean isAvailableForMoreMachineAssignments ( )
sent to instance of Person returns TRUE.
ASSIGNMENT AT
CAPACITY
EXCEEDED
In this substate, a Person can no
longer be assigned to another
machine; that is, they are AT
CAPACITY with regard to
machine assignment.
boolean isAvailableForMoreMachineAssignments ( )
sent to instance of Person returns FALSE.
SEMI E86-0200 © SEMI 1999, 2000 16
State Definition Query for State via
UNASSIGNED TO
JOBS
In this state a Person has not
been assigned to any jobs. A
Person may or may not be
assigned to job(s).
boolean isAssignedToJobs ( ) or boolean
isAssignedToJob (in Job aJob) [for all Jobs] sent to
instance of Person returns FALSE. Person NOT
included in set returned by PersonManager services
PersonSequence allPersonsAssignedToJob (in Job aJob)
[for all Jobs] or PersonSequence
allAssignedToJobsPersons ( ). Empty set returned by
Person service JobSequence assignedJobs( );
ASSIGNED TO
JOBS
In this parent state, a Person has
been assigned to one or more
job(s).
boolean isAssignedToJobs ( ) or boolean
isAssignedToJob (in Job aJob) sent to instance of Person
returns TRUE. Person included in set returned by
PersonManager services PersonSequence
allPersonsAssignedToJob (in Job aJob) or
PersonSequence allAssignedToJobsPersons ( ). Non-
empty set returned by Person service JobSequence
assignedJobs ( );
AVAILABLE FOR
MORE
ASSIGNMENTS
In this substate, a Person is
available for assignments to
more jobs.
boolean isAvailableForMoreJobAssignments ( ) sent to
instance of Person returns TRUE. Person included in set
returned by PersonManager service PersonSequence
allPersonsAvailableForJob (in Job aJob).
ASSIGNMENT AT
CAPACITY
EXCEEDED
In this substate, a Person can no
longer be assigned to another
job; that is, they are AT
CAPACITY with regard to job
assignment.
boolean isAvailableForMoreJobAssignments ( ) sent to
instance of Person returns FALSE. Person not included
in set returned by PersonManager service
PersonSequence allPersonsAvailableForJob (in Job
aJob).
Table 2 Person State Transitions
#
Current State Trigger New State Action Comment
non-existent createPersonWithIdentifier (in
string identificationNumber);
sent to an instance of
PersonManager.
NOT
AVAILABLE
1 NOT
AVAILABLE
makeOnShift( ); sent to
instance of Person.
AVAILABLE PersonShiftChanged
event posted by instance
of Person.
PersonStateChanged
event posted by instance
of Person.
Person logged on to
shift. Person is
assumed to be
initially available for
work (at work station)
and not assigned to
machines or jobs.
2
AT WORK
STATION
makeNotAtWorkStation ( );
sent to instance of Person.
NOT AT WORK
STATION
PersonStateChanged
event posted by instance
of Person.
Typically used for
situation where
Person is not
physically present at
work site (e.g., on a
break). Person is still
assigned to
machine(s) and/or
job(s). Person may be
busy with a job.