agent-based process management for soa and ws applications · 2009-05-28 · agent-based process...
TRANSCRIPT
Agent-based Process Management
for SOA and WS Applications
James Odell
Agentis Software, Inc.
www.jamesodell.com
Agent-based Process Management Page 2
Agent-based approaches for SOA and WS, in print
•W3C Web Services Architecture
http://www.w3.org/TR/ws-arch/
•Service-Oriented Computing:
Semantics, Processes, Agents by Munindar Singh and Michael Huhns
Agent-based Process Management Page 3
Traditional business process handling
Processrequest
Process Process
Business Process Handler
Simplenested processes
Agent-based Process Management Page 4
Service-oriented handling - 1
Current State Plan Library
Objective
Condition 1
Logic
Condition 1
Logic
Condition 1
Logic
Objective
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Objective
Condition 1
Logic
Condition 1
Logic
Condition 1
Logic
Objective
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Objective
Condition 1
Logic
Condition 1
Logic
Condition 1
Logic
Objective
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Objective
Condition 1
Logic
Condition 1
Logic
Condition 1
Logic
Objective
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Objective
Condition 1
Logic
Condition 1
Logic
Condition 1
Logic
Objective
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Adaptive Process Manager (Agent Server)
Condition
Process
Events
Processrequest
Agent-based Process Management Page 5
Service-oriented handling - 2
Current State Plan Library
Objective
Condition 1
Logic
Condition 1
Logic
Condition 1
Logic
Objective
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Objective
Condition 1
Logic
Condition 1
Logic
Condition 1
Logic
Objective
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Objective
Condition 1
Logic
Condition 1
Logic
Condition 1
Logic
Objective
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Objective
Condition 1
Logic
Condition 1
Logic
Condition 1
Logic
Objective
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Objective
Condition 1
Logic
Condition 1
Logic
Condition 1
Logic
Objective
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Adaptive Process Manager (Agent Server)
Condition
Process
Condition
Process
Events
Processrequest
Agent-based Process Management Page 6
Service-oriented handling - 3
Current State Plan Library
Objective
Condition 1
Logic
Condition 1
Logic
Condition 1
Logic
Objective
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Objective
Condition 1
Logic
Condition 1
Logic
Condition 1
Logic
Objective
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Objective
Condition 1
Logic
Condition 1
Logic
Condition 1
Logic
Objective
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Objective
Condition 1
Logic
Condition 1
Logic
Condition 1
Logic
Objective
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Objective
Condition 1
Logic
Condition 1
Logic
Condition 1
Logic
Objective
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Adaptive Process Manager (Agent Server)
Condition
Process
Condition
Process
Condition
Process
Events
Processrequest
Agent-based Process Management Page 7
How goal-directed agents work in agents - 1
Agent Current State Plan Library
Objective
Condition 1
Logic
Condition 1
Logic
Condition 1
Logic
Objective
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Objective
Condition 1
Logic
Condition 1
Logic
Condition 1
Logic
Objective
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Objective
Condition 1
Logic
Condition 1
Logic
Condition 1
Logic
Objective
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Objective
Condition 1
Logic
Condition 1
Logic
Condition 1
Logic
Objective
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Objective
Condition 1
Logic
Condition 1
Logic
Condition 1
Logic
Objective
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Adaptive Process Manager (Agent Server)
Condition
Process
Events
Processrequest
Goal Hierarchy
Goal
Sub-goal
Agent-based Process Management Page 8
How goal-directed agents work in agents - 2
Agent Current State Plan Library
Objective
Condition 1
Logic
Condition 1
Logic
Condition 1
Logic
Objective
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Objective
Condition 1
Logic
Condition 1
Logic
Condition 1
Logic
Objective
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Objective
Condition 1
Logic
Condition 1
Logic
Condition 1
Logic
Objective
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Objective
Condition 1
Logic
Condition 1
Logic
Condition 1
Logic
Objective
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Objective
Condition 1
Logic
Condition 1
Logic
Condition 1
Logic
Objective
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Adaptive Process Manager (Agent Server)
Condition
Process
Goal Hierarchy
Goal
Sub-goal
Condition
Process
Events
Processrequest
Agent-based Process Management Page 9
How goal-directed agents work in agents - 3
Agent Current State Plan Library
Objective
Condition 1
Logic
Condition 1
Logic
Condition 1
Logic
Objective
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Objective
Condition 1
Logic
Condition 1
Logic
Condition 1
Logic
Objective
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Objective
Condition 1
Logic
Condition 1
Logic
Condition 1
Logic
Objective
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Objective
Condition 1
Logic
Condition 1
Logic
Condition 1
Logic
Objective
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Objective
Condition 1
Logic
Condition 1
Logic
Condition 1
Logic
Objective
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Condition 1
Logic
Condition 1Condition 1
LogicLogic
Adaptive Process Manager (Agent Server)
Condition
Process
Condition
Process
Condition
Process
Events
Processrequest
Goal Hierarchy
Goal
Sub-goal
Agent-based Process Management Page 10
Agent-based processing for SOA and WS, thus far
DATA: xxxxDATA: xxxxDATA: xxxxDATA: xxxxDATA: xxxxDATA: xxxxDATA: xxxx
Implicit Programming
Adaptive Process Execution
• Design only Plans and Agent Data• Independent components easily added or modified• Agent manages program flow control by dynamic
process assembly• Agent handles error and recovery path
Not• Program flow
must be explicitlycoded at design
• Complex and rigid• Involves tedious
programming• Becomes
unmanageable orlimits possiblevariations
Agent-based Process Management Page 11
ProcessOrder
C,O
WaferFabrication
C,O
AssemblyC,O
Test NA
C,O
Ship NA
C,O
otherwiseWafer
Test
Wafer
Assem
Ship
ProcessTRUE
ProcessWafer FabricationAssemblyTestShip
VariablesC: Customer (RFID, MCU, RISC)O: Order (RFID, MCU, RISC)
otherwiseAssem
otherwise
Test
otherwise
Ship
Agent SolutionAgent Solution
Explicit ProgrammingExplicit Programming
A few simple plans made of few stepsA few simple plans made of few steps
Implicit Programming
Agent-based Process Management Page 12
ProcessOrder
If “RFID”
N
Y
C,O
ProcureWafer
C,O
WaferFabrication
C,O
AssemblyC,O
Test NA
C,O,R,P
Ship NA
C,O,R,P
ReceiveWafer
C,O
otherwiseWafer
Test
Wafer
Assem
Ship
ProcessTRUE
ProcessWafer Fabrication (In-house or Sub)AssemblyTestShip
VariablesC: CustomerO: Order (RFID, MCU, RISC)
O = RFID
Wafer
otherwiseAssem
otherwise
Test
otherwise
Ship
Explicit ProgrammingExplicit Programming
A few simple plans made of few stepsA few simple plans made of few steps
Implicit Programming
Agent SolutionAgent Solution
Agent-based Process Management Page 13
If “APJ”
ProcessOrder
If “RFID”
N
Y
C,O
ProcureWafer
C,O
WaferFabrication
C,O
AssemblyC,O
YN
Test NA
C,O,R
Ship NA
C,O,R
TestAPJC,O,R
Ship APJ
C,O,R
ReceiveWafer
C,O
otherwiseWafer
Test
Wafer
Assem
Ship
ProcessTRUE
ProcessWafer Fabrication (In-house or Sub)AssemblyTestShip
VariablesC: CustomerO: Order (RFID, MCU, RISC)R: Region (APJ or ROW)
O = RFID
Wafer
otherwiseAssem
otherwise
TestR = APJ
Test
otherwise
ShipR = APJ
Ship
Agent SolutionAgent Solution
Explicit ProgrammingExplicit Programming
A few simple plans made of few stepsA few simple plans made of few steps
Implicit Programming
Agent-based Process Management Page 14
If “APJ”
ProcessOrder
If “RFID”
N
Y
C,O
ProcureWafer
C,O
Y N
YN
WaferFabrication
C,O
GetCapacity
C,O,R
P1 Cap?Ship to
P2C,O,P
AssemblyC,O,P
AssemblyC,O,P
If “APJ”
Test NA
C,O,R,P
Ship NA
C,O,R,P
Test APJ
C,O,R,P
Ship APJC,O,R,P
YN
Test NA
C,O,R,P
Ship NA
C,O,R,P
TestAPJC,O,R,P
Ship APJ
C,O,R,P
ReceiveWafer
C,O
otherwiseWafer
Test
Wafer
Assem
Ship
ProcessTRUE
ProcessWafer Fabrication (In-house or Sub)AssemblyTestShip
VariablesC: CustomerO: Order (RFID, MCU, RISC)R: Region (APJ or ROW)P: Plant (Capacity)
O = RFIDWafer
otherwiseAssem
Cap at P1Assem
otherwise
TestR = APJ
Test
otherwise
ShipR = APJ
Ship
Explicit ProgrammingExplicit Programming
A few simple plans made of few stepsA few simple plans made of few steps
Implicit Programming
Agent Solution Agent Solution
Agent-based Process Management Page 15
If “APJ”
ProcessOrder
If “RFID”
N
Y
C,O
ProcureWafer
C,O
Y N
YN
WaferFabrication
C,O
If “CMOS”
N
GetCapacity
C,O,R
P1 Cap?Ship to
P2C,O,P
AssemblyC,O,P
AssemblyC,O,P
If “APJ”
Test NA
C,O,R,P
Ship NA
C,O,R,P
Test APJ
C,O,R,P
Ship APJC,O,R,P
YN
Test NA
C,O,R,P
Ship NA
C,O,R,P
TestAPJC,O,R,P
Ship APJ
C,O,R,P
Ship toAssembly
C,O
YOutsideAssembly
C,O
P1 TestCap?
Ship toP1
C,O,P
Y
Ship toP2
C,O,P
N
ReceiveWafer
C,O
otherwiseWafer
Test
Wafer
Assem
Ship
ProcessTRUE
ProcessWafer Fabrication (In-house or Sub)Assembly (In-house or Sub)TestShip
VariablesC: CustomerO: Order (CMOS, RFID, MCU, RISC)R: Region (APJ or ROW)P: Plant (Capacity)
O = RFID
Wafer
otherwiseAssem
Cap at P1Assem
O=CMOS
Assem
otherwise
TestR = APJ
Test
otherwise
ShipR = APJ
Ship
Agent SolutionAgent Solution
Explicit ProgrammingExplicit Programming
A few simple plans made of few stepsA few simple plans made of few steps
Implicit Programming
Agent-based Process Management Page 16
If “APJ”
ProcessOrder
If “RFID”
N
Y
C,O
ProcureWafer
C,O
Y N
YN
WaferFabrication
C,O
If “CMOS”
N
GetCapacity
C,O,R
P1 Cap?Ship to
P2C,O,P
AssemblyC,O,P
AssemblyC,O,P
If “APJ”
Test NA
C,O,R,P
Ship NA
C,O,R,P
Test APJ
C,O,R,P
Ship APJC,O,R,P
YN
Test NA
C,O,R,P
Ship NA
C,O,R,P
TestAPJC,O,R,P
Ship APJ
C,O,R,P
Ship toAssembly
C,O
YOutsideAssembly
C,O
P1 TestCap?
Ship toP1
C,O,P
Y
Ship toP2
C,O,P
N
ReceiveWafer
C,O
otherwiseWafer
Test
Wafer
Assem
Ship
ProcessTRUE
ProcessWafer Fabrication (In-house or Sub)Assembly (In-house or Sub)TestShip
VariablesC: CustomerO: Order (CMOS, RFID, MCU, RISC)R: Region (APJ or ROW)P: Plant (Capacity)
O = RFIDWafer
otherwiseAssem
Cap at P1Assem
O=CMOSAssem
otherwise
TestR = APJ
Test
otherwise
ShipR = APJ
Ship
Agent SolutionAgent Solution
Explicit ProgrammingExplicit Programming
A few simple plans made of few stepsA few simple plans made of few steps
Implicit Programming
Agent-based Process Management Page 17
Coded at design execution Only coded execution paths can happen
• Need explicit error and recovery paths
• Complexity limited to “manageable” size
• Failure result in manual intervention
Adaptive Process ExecutionExecution path built as needed “on-the-fly”
• Focused on achieving goals (end-result)
• Automatic recovery in case of failure
• Great number of combinations with few plans
• Significantly reduced manual intervention
Reduces Time To Market and Total Costs of Ownership
• Increases application robustness, especially for unplanned situations• Reduces design requirements faster and cheaper delivery• Lowers cost of operations through reduced manual interventions
DATA: xxxxDATA: xxxxDATA: xxxxDATA: xxxxDATA: xxxxDATA: xxxxDATA: xxxx
Adaptive Process Execution
Agent-based Process Management Page 18
If “APJ”
ProcessOrder
If “RFID”
N
Y
C,O
ProcureWafer
C,O
Y N
YN
WaferFabrication
C,O
If “CMOS”
N
GetCapacity
C,O,R
P1 Cap?Ship to
P2C,O,P
AssemblyC,O,P
AssemblyC,O,P
If “APJ”
Test NA
C,O,R,P
Ship NA
C,O,R,P
Test APJ
C,O,R,P
Ship APJC,O,R,P
YN
Test NA
C,O,R,P
Ship NA
C,O,R,P
TestAPJC,O,R,P
Ship APJ
C,O,R,P
Ship toAssembly
C,O
YOutsideAssembly
C,O
P1 TestCap?
Ship toP1
C,O,P
Y
Ship toP2
C,O,P
N
ReceiveWafer
C,O
otherwiseWafer
Test
Wafer
Assem
Ship
ProcessTRUE
Case 1:MCU for APJ customer, no capacityavailable at plant P1
O = RFIDWafer
otherwiseAssem
No at P1Assem
O=CMOSAssem
otherwise
TestR = APJ
Test
otherwise
ShipR = APJ
Ship
Adaptive Process Execution
Agent-based Process Management Page 19
If “APJ”
ProcessOrder
If “RFID”
N
Y
C,O
ProcureWafer
C,O
Y N
YN
WaferFabrication
C,O
If “CMOS”
N
GetCapacity
C,O,R
P1 Cap?Ship to
P2C,O,P
AssemblyC,O,P
AssemblyC,O,P
If “APJ”
Test NA
C,O,R,P
Ship NA
C,O,R,P
Test APJ
C,O,R,P
Ship APJC,O,R,P
YN
Test NA
C,O,R,P
Ship NA
C,O,R,P
TestAPJC,O,R,P
Ship APJ
C,O,R,P
Ship toAssembly
C,O
YOutsideAssembly
C,O
P1 TestCap?
Ship toP1
C,O,P
Y
Ship toP2
C,O,P
N
ReceiveWafer
C,O
otherwiseWafer
Test
Wafer
Assem
Ship
ProcessTRUE
Case 1:MCU for APJ customer, no capacityavailable at plant P1
O = RFIDWafer
otherwiseAssem
No at P1Assem
O=CMOSAssem
otherwise
TestR = APJ
Test
otherwise
ShipR = APJ
Ship
Adaptive Process Execution
Agent-based Process Management Page 20
If “APJ”
ProcessOrder
If “RFID”
N
Y
C,O
ProcureWafer
C,O
Y N
YN
WaferFabrication
C,O
If “CMOS”
N
GetCapacity
C,O,R
P1 Cap?Ship to
P2C,O,P
AssemblyC,O,P
AssemblyC,O,P
If “APJ”
Test NA
C,O,R,P
Ship NA
C,O,R,P
Test APJ
C,O,R,P
Ship APJC,O,R,P
YN
Test NA
C,O,R,P
Ship NA
C,O,R,P
TestAPJC,O,R,P
Ship APJ
C,O,R,P
Ship toAssembly
C,O
YOutsideAssembly
C,O
P1 TestCap?
Ship toP1
C,O,P
Y
Ship toP2
C,O,P
N
ReceiveWafer
C,O
otherwiseWafer
Test
Wafer
Assem
Ship
ProcessTRUE
Case 1:MCU for APJ customer, no capacityavailable at plant P1
O = RFIDWafer
otherwiseAssem
No at P1Assem
O=CMOSAssem
otherwise
TestR = APJ
Test
otherwise
ShipR = APJ
Ship
Adaptive Process Execution
Agent-based Process Management Page 21
If “APJ”
ProcessOrder
If “RFID”
N
Y
C,O
ProcureWafer
C,O
Y N
YN
WaferFabrication
C,O
If “CMOS”
N
GetCapacity
C,O,R
P1 Cap?Ship to
P2C,O,P
AssemblyC,O,P
AssemblyC,O,P
If “APJ”
Test NA
C,O,R,P
Ship NA
C,O,R,P
Test APJ
C,O,R,P
Ship APJC,O,R,P
YN
Test NA
C,O,R,P
Ship NA
C,O,R,P
TestAPJC,O,R,P
Ship APJ
C,O,R,P
Ship toAssembly
C,O
YOutsideAssembly
C,O
P1 TestCap?
Ship toP1
C,O,P
Y
Ship toP2
C,O,P
N
ReceiveWafer
C,O
otherwiseWafer
Test
Wafer
Assem
Ship
ProcessTRUE
Case 1:MCU for APJ customer, no capacityavailable at plant P1
O = RFIDWafer
otherwiseAssem
No at P1Assem
O=CMOSAssem
otherwise
TestR = APJ
Test
otherwise
ShipR = APJ
Ship
Adaptive Process Execution
Agent-based Process Management Page 22
If “APJ”
ProcessOrder
If “RFID”
N
Y
C,O
ProcureWafer
C,O
Y N
YN
WaferFabrication
C,O
If “CMOS”
N
GetCapacity
C,O,R
P1 Cap?Ship to
P2C,O,P
AssemblyC,O,P
AssemblyC,O,P
If “APJ”
Test NA
C,O,R,P
Ship NA
C,O,R,P
Test APJ
C,O,R,P
Ship APJC,O,R,P
YN
Test NA
C,O,R,P
Ship NA
C,O,R,P
TestAPJC,O,R,P
Ship APJ
C,O,R,P
Ship toAssembly
C,O
YOutsideAssembly
C,O
P1 TestCap?
Ship toP1
C,O,P
Y
Ship toP2
C,O,P
N
ReceiveWafer
C,O
otherwiseWafer
Test
Wafer
Assem
Ship
ProcessTRUE
Case 1:MCU for APJ customer, no capacityavailable at plant P1
O = RFIDWafer
otherwiseAssem
No at P1Assem
O=CMOSAssem
otherwise
TestR = APJ
Test
otherwise
ShipR = APJ
Ship
Adaptive Process Execution
Agent-based Process Management Page 23
If “APJ”
ProcessOrder
If “RFID”
N
Y
C,O
ProcureWafer
C,O
Y N
YN
WaferFabrication
C,O
If “CMOS”
N
GetCapacity
C,O,R
P1 Cap?Ship to
P2C,O,P
AssemblyC,O,P
AssemblyC,O,P
If “APJ”
Test NA
C,O,R,P
Ship NA
C,O,R,P
Test APJ
C,O,R,P
Ship APJC,O,R,P
YN
Test NA
C,O,R,P
Ship NA
C,O,R,P
TestAPJC,O,R,P
Ship APJ
C,O,R,P
Ship toAssembly
C,O
YOutsideAssembly
C,O
P1 TestCap?
Ship toP1
C,O,P
Y
Ship toP2
C,O,P
N
ReceiveWafer
C,O
otherwiseWafer
Test
Wafer
Assem
Ship
ProcessTRUE
Case 1:MCU for APJ customer, no capacityavailable at plant P1
Case 2:RFID for US customer, capacityavailable at plant P1
O = RFIDWafer
otherwiseAssem
No at P1Assem
O=CMOSAssem
otherwise
TestR = APJ
Test
otherwise
ShipR = APJ
Ship
Adaptive Process Execution
Agent-based Process Management Page 24
If “APJ”
ProcessOrder
If “RFID”
N
Y
C,O
ProcureWafer
C,O
Y N
YN
WaferFabrication
C,O
If “CMOS”
N
GetCapacity
C,O,R
P1 Cap?Ship to
P2C,O,P
AssemblyC,O,P
AssemblyC,O,P
If “APJ”
Test NA
C,O,R,P
Ship NA
C,O,R,P
Test APJ
C,O,R,P
Ship APJC,O,R,P
YN
Test NA
C,O,R,P
Ship NA
C,O,R,P
TestAPJC,O,R,P
Ship APJ
C,O,R,P
Ship toAssembly
C,O
YOutsideAssembly
C,O
P1 TestCap?
Ship toP1
C,O,P
Y
Ship toP2
C,O,P
N
ReceiveWafer
C,O
otherwiseWafer
Test
Wafer
Assem
Ship
ProcessTRUE
Case 1:MCU for APJ customer, no capacityavailable at plant P1
Case 2:RFID for US customer, capacityavailable at plant P1
O = RFIDWafer
otherwiseAssem
No at P1Assem
O=CMOSAssem
otherwise
TestR = APJ
Test
otherwise
ShipR = APJ
Ship
Adaptive Process Execution
Agent-based Process Management Page 25
If “APJ”
ProcessOrder
If “RFID”
N
Y
C,O
ProcureWafer
C,O
Y N
YN
WaferFabrication
C,O
If “CMOS”
N
GetCapacity
C,O,R
P1 Cap?Ship to
P2C,O,P
AssemblyC,O,P
AssemblyC,O,P
If “APJ”
Test NA
C,O,R,P
Ship NA
C,O,R,P
Test APJ
C,O,R,P
Ship APJC,O,R,P
YN
Test NA
C,O,R,P
Ship NA
C,O,R,P
TestAPJC,O,R,P
Ship APJ
C,O,R,P
Ship toAssembly
C,O
YOutsideAssembly
C,O
P1 TestCap?
Ship toP1
C,O,P
Y
Ship toP2
C,O,P
N
ReceiveWafer
C,O
otherwiseWafer
Test
Wafer
Assem
Ship
ProcessTRUE
Case 1:MCU for APJ customer, no capacityavailable at plant P1
Case 2:RFID for US customer, capacityavailable at plant P1
O = RFIDWafer
otherwiseAssem
No at P1Assem
O=CMOSAssem
otherwise
TestR = APJ
Test
otherwise
ShipR = APJ
Ship
Adaptive Process Execution
Agent-based Process Management Page 26
If “APJ”
ProcessOrder
If “RFID”
N
Y
C,O
ProcureWafer
C,O
Y N
YN
WaferFabrication
C,O
If “CMOS”
N
GetCapacity
C,O,R
P1 Cap?Ship to
P2C,O,P
AssemblyC,O,P
AssemblyC,O,P
If “APJ”
Test NA
C,O,R,P
Ship NA
C,O,R,P
Test APJ
C,O,R,P
Ship APJC,O,R,P
YN
Test NA
C,O,R,P
Ship NA
C,O,R,P
TestAPJC,O,R,P
Ship APJ
C,O,R,P
Ship toAssembly
C,O
YOutsideAssembly
C,O
P1 TestCap?
Ship toP1
C,O,P
Y
Ship toP2
C,O,P
N
ReceiveWafer
C,O
otherwiseWafer
Test
Wafer
Assem
Ship
ProcessTRUE
Case 1:MCU for APJ customer, no capacityavailable at plant P1
Case 2:RFID for US customer, capacityavailable at plant P1
O = RFIDWafer
otherwiseAssem
No at P1Assem
O=CMOSAssem
otherwise
TestR = APJ
Test
otherwise
ShipR = APJ
Ship
Adaptive Process Execution
Agent-based Process Management Page 27
If “APJ”
ProcessOrder
If “RFID”
N
Y
C,O
ProcureWafer
C,O
Y N
YN
WaferFabrication
C,O
If “CMOS”
N
GetCapacity
C,O,R
P1 Cap?Ship to
P2C,O,P
AssemblyC,O,P
AssemblyC,O,P
If “APJ”
Test NA
C,O,R,P
Ship NA
C,O,R,P
Test APJ
C,O,R,P
Ship APJC,O,R,P
YN
Test NA
C,O,R,P
Ship NA
C,O,R,P
TestAPJC,O,R,P
Ship APJ
C,O,R,P
Ship toAssembly
C,O
YOutsideAssembly
C,O
P1 TestCap?
Ship toP1
C,O,P
Y
Ship toP2
C,O,P
N
ReceiveWafer
C,O
otherwiseWafer
Test
Wafer
Assem
Ship
ProcessTRUE
Case 1:MCU for APJ customer, no capacityavailable at plant P1
Case 2:RFID for US customer, capacityavailable at plant P1
O = RFIDWafer
otherwiseAssem
No at P1Assem
O=CMOSAssem
otherwise
TestR = APJ
Test
otherwise
ShipR = APJ
Ship
Adaptive Process Execution
Agent-based Process Management Page 28
If “APJ”
ProcessOrder
If “RFID”
N
Y
C,O
ProcureWafer
C,O
Y N
YN
WaferFabrication
C,O
If “CMOS”
N
GetCapacity
C,O,R
P1 Cap?Ship to
P2C,O,P
AssemblyC,O,P
AssemblyC,O,P
If “APJ”
Test NA
C,O,R,P
Ship NA
C,O,R,P
Test APJ
C,O,R,P
Ship APJC,O,R,P
YN
Test NA
C,O,R,P
Ship NA
C,O,R,P
TestAPJC,O,R,P
Ship APJ
C,O,R,P
Ship toAssembly
C,O
YOutsideAssembly
C,O
P1 TestCap?
Ship toP1
C,O,P
Y
Ship toP2
C,O,P
N
ReceiveWafer
C,O
otherwiseWafer
Test
Wafer
Assem
Ship
ProcessTRUE
Case 1:MCU for APJ customer, no capacityavailable at plant P1
Case 2:RFID for US customer, capacityavailable at plant P1
Case 3:RFID for US customer, capacityavailable at plant P1Sub does not deliver RFID wafers
O = RFIDWafer
otherwiseAssem
No at P1Assem
O=CMOSAssem
otherwise
TestR = APJ
Test
otherwise
ShipR = APJ
Ship
Adaptive Process Execution
Agent-based Process Management Page 29
If “APJ”
ProcessOrder
If “RFID”
N
Y
C,O
ProcureWafer
C,O
Y N
YN
WaferFabrication
C,O
If “CMOS”
N
GetCapacity
C,O,R
P1 Cap?Ship to
P2C,O,P
AssemblyC,O,P
AssemblyC,O,P
If “APJ”
Test NA
C,O,R,P
Ship NA
C,O,R,P
Test APJ
C,O,R,P
Ship APJC,O,R,P
YN
Test NA
C,O,R,P
Ship NA
C,O,R,P
TestAPJC,O,R,P
Ship APJ
C,O,R,P
Ship toAssembly
C,O
YOutsideAssembly
C,O
P1 TestCap?
Ship toP1
C,O,P
Y
Ship toP2
C,O,P
N
ReceiveWafer
C,O
otherwiseWafer
Test
Wafer
Assem
Ship
ProcessTRUE
Case 1:MCU for APJ customer, no capacityavailable at plant P1
Case 2:RFID for US customer, capacityavailable at plant P1
Case 3:RFID for US customer, capacityavailable at plant P1Sub does not deliver RFID wafers
O = RFIDWafer
otherwiseAssem
No at P1Assem
O=CMOSAssem
otherwise
TestR = APJ
Test
otherwise
ShipR = APJ
Ship
Adaptive Process Execution
Agent-based Process Management Page 30
If “APJ”
ProcessOrder
If “RFID”
N
Y
C,O
ProcureWafer
C,O
Y N
YN
WaferFabrication
C,O
If “CMOS”
N
GetCapacity
C,O,R
P1 Cap?Ship to
P2C,O,P
AssemblyC,O,P
AssemblyC,O,P
If “APJ”
Test NA
C,O,R,P
Ship NA
C,O,R,P
Test APJ
C,O,R,P
Ship APJC,O,R,P
YN
Test NA
C,O,R,P
Ship NA
C,O,R,P
TestAPJC,O,R,P
Ship APJ
C,O,R,P
Ship toAssembly
C,O
YOutsideAssembly
C,O
P1 TestCap?
Ship toP1
C,O,P
Y
Ship toP2
C,O,P
N
ReceiveWafer
C,O
otherwiseWafer
Test
Wafer
Assem
Ship
ProcessTRUE
Case 1:MCU for APJ customer, no capacityavailable at plant P1
Case 2:RFID for US customer, capacityavailable at plant P1
Case 3:RFID for US customer, capacityavailable at plant P1Sub does not deliver RFID wafers
O = RFIDWafer
otherwiseAssem
No at P1Assem
O=CMOSAssem
otherwise
TestR = APJ
Test
otherwise
ShipR = APJ
Ship
Adaptive Process Execution
Agent-based Process Management Page 31
If “APJ”
ProcessOrder
If “RFID”
N
Y
C,O
ProcureWafer
C,O
Y N
YN
WaferFabrication
C,O
If “CMOS”
N
GetCapacity
C,O,R
P1 Cap?Ship to
P2C,O,P
AssemblyC,O,P
AssemblyC,O,P
If “APJ”
Test NA
C,O,R,P
Ship NA
C,O,R,P
Test APJ
C,O,R,P
Ship APJC,O,R,P
YN
Test NA
C,O,R,P
Ship NA
C,O,R,P
TestAPJC,O,R,P
Ship APJ
C,O,R,P
Ship toAssembly
C,O
YOutsideAssembly
C,O
P1 TestCap?
Ship toP1
C,O,P
Y
Ship toP2
C,O,P
N
ReceiveWafer
C,O
otherwiseWafer
Test
Wafer
Assem
Ship
ProcessTRUE
Case 1:MCU for APJ customer, no capacityavailable at plant P1
Case 2:RFID for US customer, capacityavailable at plant P1
Case 3:RFID for US customer, capacityavailable at plant P1Sub does not deliver RFID wafers
O = RFIDWafer
otherwiseAssem
No at P1Assem
O=CMOSAssem
otherwise
TestR = APJ
Test
otherwise
ShipR = APJ
Ship
Adaptive Process Execution
Agent-based Process Management Page 32
If “APJ”
ProcessOrder
If “RFID”
N
Y
C,O
ProcureWafer
C,O
Y N
YN
WaferFabrication
C,O
If “CMOS”
N
GetCapacity
C,O,R
P1 Cap?Ship to
P2C,O,P
AssemblyC,O,P
AssemblyC,O,P
If “APJ”
Test NA
C,O,R,P
Ship NA
C,O,R,P
Test APJ
C,O,R,P
Ship APJC,O,R,P
YN
Test NA
C,O,R,P
Ship NA
C,O,R,P
TestAPJC,O,R,P
Ship APJ
C,O,R,P
Ship toAssembly
C,O
YOutsideAssembly
C,O
P1 TestCap?
Ship toP1
C,O,P
Y
Ship toP2
C,O,P
N
ReceiveWafer
C,O
otherwiseWafer
Test
Wafer
Assem
Ship
ProcessTRUE
Case 1:MCU for APJ customer, no capacityavailable at plant P1
Case 2:RFID for US customer, capacityavailable at plant P1
Case 3:RFID for US customer, capacityavailable at plant P1Sub does not deliver RFID wafers
O = RFIDWafer
otherwiseAssem
No at P1Assem
O=CMOSAssem
otherwise
TestR = APJ
Test
otherwise
ShipR = APJ
Ship
Adaptive Process Execution
Agent-based Process Management Page 33
If “APJ”
ProcessOrder
If “RFID”
N
Y
C,O
ProcureWafer
C,O
Y N
YN
WaferFabrication
C,O
If “CMOS”
N
GetCapacity
C,O,R
P1 Cap?Ship to
P2C,O,P
AssemblyC,O,P
AssemblyC,O,P
If “APJ”
Test NA
C,O,R,P
Ship NA
C,O,R,P
Test APJ
C,O,R,P
Ship APJC,O,R,P
YN
Test NA
C,O,R,P
Ship NA
C,O,R,P
TestAPJC,O,R,P
Ship APJ
C,O,R,P
Ship toAssembly
C,O
YOutsideAssembly
C,O
P1 TestCap?
Ship toP1
C,O,P
Y
Ship toP2
C,O,P
N
ReceiveWafer
C,O
otherwiseWafer
Test
Wafer
Assem
Ship
ProcessTRUE
Case 1:MCU for APJ customer, no capacityavailable at plant P1
Case 2:RFID for US customer, capacityavailable at plant P1
Case 3:RFID for US customer, capacityavailable at plant P1Sub does not deliver RFID wafers
O = RFIDWafer
otherwiseAssem
No at P1Assem
O=CMOSAssem
otherwise
TestR = APJ
Test
otherwise
ShipR = APJ
Ship
Adaptive Process Execution
Agent-based Process Management Page 34
If “APJ”
ProcessOrder
If “RFID”
N
Y
C,O
ProcureWafer
C,O
Y N
YN
WaferFabrication
C,O
If “CMOS”
N
GetCapacity
C,O,R
P1 Cap?Ship to
P2C,O,P
AssemblyC,O,P
AssemblyC,O,P
If “APJ”
Test NA
C,O,R,P
Ship NA
C,O,R,P
Test APJ
C,O,R,P
Ship APJC,O,R,P
YN
Test NA
C,O,R,P
Ship NA
C,O,R,P
TestAPJC,O,R,P
Ship APJ
C,O,R,P
Ship toAssembly
C,O
YOutsideAssembly
C,O
P1 TestCap?
Ship toP1
C,O,P
Y
Ship toP2
C,O,P
N
ReceiveWafer
C,O
otherwiseWafer
Test
Wafer
Assem
Ship
ProcessTRUE
Case 1:MCU for APJ customer, no capacityavailable at plant P1
Case 2:RFID for US customer, capacityavailable at plant P1
Case 3:RFID for US customer, capacityavailable at plant P1Sub does not deliver RFID wafers
O = RFIDWafer
otherwiseAssem
No at P1Assem
O=CMOSAssem
otherwise
TestR = APJ
Test
otherwise
ShipR = APJ
Ship
Y
N
If FAIL
Must create an explicitMust create an expliciterror patherror path
What happens to the explicit programming?
Agent-based Process Management Page 35
The Agent Value Proposition
LOWER TIME AND COST OF DELIVERY BY 65% TO 80%
Time To Market• Initial deployment: 3-4 months
• Continuous evolution of theapplication
• Application always in syncwith most current businessrequirements
• Maximum productivity frombusiness requirement todeployment
• Extensively leveragesexisting IT assets
Total Cost of Ownership• Short time to market
• Low maintenance costs
• Application robustness reduces needfor manual interventions
• Application robustness reduces risk ofhuman error and its adverse financialimpact
• High scalability/performance lowerscost of hardware
• Extensively leverages existing ITassets
THE MORE COMPLEX, THE MORE COST-EFFECTIVE
Agent-basedapproach
Traditionalapproach
Agent-based Process Management
for SOA and WS Applications
James Odell
Agentis Software, Inc.
www.jamesodell.com