All Rights Reserved,Copyright © 2000,Hitachi,Ltd.
BPIBPI-- Business Process based application Integration Business Process based application Integration --
and its application for Supply Chain Management Systemand its application for Supply Chain Management System
Kazuyuki [email protected]
Business Solution Systems Development DivisionHitachi, Ltd.
All Rights Reserved,Copyright © 2000,Hitachi,Ltd.
Why EAI now?
BPIBPI(Business Process based application Integration)(Business Process based application Integration)
The Purpose of EAI:To support improvement and progress of enterprise business systems in order to keep up with the radical change of business environment
The Purpose of EAI:To support improvement and progress of enterprise business systems in order to keep up with the radical change of business environment
But, how?...
Rapid Change inBusiness Environment
Rapid Change inBusiness Environment
Rapid Change inInformation Technology
Rapid Change inInformation Technology
Business system becomes complex more and moreBut still, business style need to be changed...
Business depends on information system and technology
All Rights Reserved,Copyright © 2000,Hitachi,Ltd.
What is BPI?
BPI FrameworkBPI Framework
ApplicationPackage
DDDDatabaseSystemsExisting
SystemsERP
PackageHuman
Business Process DefinitionBusiness Process Definition
Business process definition is set as the core of the integration architectureApplication components and business process are combined
BFC BFC BFC BFCBFC
by BPI Framework Components (BFCs)
All Rights Reserved,Copyright © 2000,Hitachi,Ltd.
Business Process DefinitionBusiness Process Definition
Features of BPI
BPI FrameworkBPI FrameworkBFC BFC
Flexibility for Changes Flexibility for Changes of Application of Application ComponentComponent
Integration includingIntegration includinghuman decisionshuman decisions
Capability for Capability for stepstep--byby--stepstepimprovementimprovement
Reusability of Design & ProgramBusiness Process DefinitionIntegration ModelData Model & Mapping RuleBFC Framework & Adapters
Reusability of Design & ProgramReusability of Design & ProgramBusiness Process DefinitionIntegration ModelData Model & Mapping RuleBFC Framework & Adapters
Flexibility for Flexibility for Changes ofChanges ofBusiness ProcessBusiness Process
BFCBFCBFCBFC
All Rights Reserved,Copyright © 2000,Hitachi,Ltd.
WorkCoordinator WorkCoordinator ServerServer
WorkCoordinator
Support for variety of Support for variety of process modelprocess model
Open interface
Adaptability for changesAdaptability for changes
Hitachi’s Workflow System specialized for IntegrationHitachiHitachi’’s Workflow System specialized for Integrations Workflow System specialized for Integration
Collaborative business processA Semi-predefined process in which operations are different for each process instance
Form-circulation business processA predefined process
Project-type business processAd-hoc process in which a work item is broken down at every step into smaller tasks
CORBA based interfaceA Semi-predefined process in which operations are different for each process instanceRDB data access
A Semi-predefined process in which operationsare different for each process instance
Changes at runtimeChanges of rules in business process definition such as conditions can be done at runtime
Process instance migrationProcess instance migration utility is available to migrate process instances from an old business process definition into new ones.
WorkCoordinatorDefiner
WorkCoordinatorDefiner
Business Process Definition
WorkCoordinatorMonitor
WorkCoordinatorMonitor
Status MonitoringAdministration ofProcess instances
BFC
BFC
Existing application on mainframe
Web-based application
RDB
ERP Package
All Rights Reserved,Copyright © 2000,Hitachi,Ltd.
A Case Study - BPI application for SCM
SCPLAN(Hitachi’s MRP Engine)
Production PlanningSystem
ProductionPlan
Purchasing & InventoryManagement System
(ERP)
PurchaseOrder Inventory
MaterialMaster BOM
WorkCoordinator(controls flow of the process)
WorkCoordinatorWorkCoordinator(controls flow of the process)(controls flow of the process)
Purchasing &Inventory
ManagementSystem(ERP)
Buyers
SCPLAN Generates future material shortage information based on the production plan, current inventory, and issued P.O.
Material shortage information is transformed to purchase requisition and distributed to appropriate buyers
Receiving the purchase requisitions, buyers issue purchase order with their professional decisions
Dataextraction &transform
Execution& completedetection
Datatransform &distribution
Event detection(purchase order,inventory receipt)
Supply Chain Management (SCM) System for Acquisition Process of Supply Chain Management (SCM) System for Acquisition Process of ManufacturerManufacturer
Receipt of Material
All Rights Reserved,Copyright © 2000,Hitachi,Ltd.
Integration Schedule and Outputs
BusinessBusinessAnalysisAnalysis& Design& Design
SystemSystemDesiDesiggggggggnn
ProgramProgramDesign &Design &
ImplementationImplementation
AprilApril MayMay JuneJune JulyJuly AugustAugust SeptemberSeptemberMarchMarchBusiness Process Modeling
Data Modeling
Integration Modeling
Study of Application Components (ERP, SCPLAN)
Data Mapping Design
Study of APIs of Application Components
Coding, Testing, & Debugging
Program Design
BP Definition
Data Model
Integration Model
Data Mapping
BFC Program Design Application
Program Design
BP Definition
Integration Model
Data Mapping
All Rights Reserved,Copyright © 2000,Hitachi,Ltd.
Examples of Design (1)
MRP & Purchase Requisition BP
Execute MRP
Purchase Requisition (Parallel Work Item)
Purchase Requisition for material “A”
Executing MRP
Purchase Requisition for material “F”
Waiting Purchase Requisition
Purchase Order & Inventory Receipt BP
Accept Purchase Requisition
Create Purchase Order
Issue Purchase Order
AcceptingPurchase Requisition
CreatingPurchase Order
WaitingPurchase Order
Inventory Receipt
WaitingInventory Receipt
SCPLAN
Business processes and rules of processes are definedApplication Components should be consideredHowever, business process should not be designed closely dependent on the Application Components
Business processes and rules of processes are definedApplication Components should be consideredHowever, business process should not be designed closely dependent on the Application Components
Business Level: Business Process ModelingBusiness Level: Business Process Modeling
All Rights Reserved,Copyright © 2000,Hitachi,Ltd.
Examples of Design (2)
Application Components are combined to work items in business process definition using BPI Framework Components (BFCs)System Level Process may be defined as a sub-process of a business process
Application Components are combined to work items in business process definition using BPI Framework Components (BFCs)System Level Process may be defined as a sub-process of a business process
BPI FrameworkBPI Framework
MRP Execution BP
Create SCPLANInput Data
ExecuteSCPLAN
Store SCPLANExecution Result
Creating SCPLANInput Data
ExecutingSCPLAN
Storing SCPLANExecution Result
MRP & Purchase Requisition BP
ExecuteMRP
Purchase Requisition(Parallel Work Item)
Purchase Requisitionfor material “A”
Executing MRP
Purchase Requisitionfor material “F”
Waiting Purchase Requisition
System Level Process
AP Start& Complete
Detect
SCPLAN
SCPLANInput File
ERP
ProductionPlanningSystem
ProductionPlan
PurchaseOrder
Inventory
RDB
MaterialShortage
DataTransformer
DataTransformer
Evaluate “Material Shortage”DB and generate parallel workitems for each records
DBEvaluator
System Level: Integration ModelingSystem Level: Integration Modeling
All Rights Reserved,Copyright © 2000,Hitachi,Ltd.
Examples of Design (3)
Material Code*
Material NameEffective Start DateEffective End DateBuyer CodeInventory CategoryInventory BlockMaterial CategoryWarehouse Code...
Material Code
Material TypeRegistered DateEffective Start Date
Material Code (FK)Language Code
Material Name
Fixed by “J”
Tables in ERP SCPLAN Input File Format
Data mapping rules between source and target Application Components are defined for each “Data Transformer” type BFC. Data Model developed at previous step makes this easier.
Data mapping rules between source and target Application Components are defined for each “Data Transformer” type BFC. Data Model developed at previous step makes this easier.
references
System Level: Data MappingSystem Level: Data Mapping
All Rights Reserved,Copyright © 2000,Hitachi,Ltd.
Purchase Order & Inventory Receipt BPPurchase Order & Inventory Receipt BP
Accept Purchase
Requisition
Create Purchase
Order
Issue Purchase
Order
Inventory Receipt
BPBPJunctionJunction
Create SCPLAN Input Data
Execute SCPLAN
Store SCPLAN Execution Result
MRP & Purchase Requisition BPMRP & Purchase Requisition BP
Execute MRPPurchase Requisition
Purchase Requisition for each Material
Overall Structure
BPBPJunctionJunction
SCPLANInput Files
ActivatorProgram
WorkCoordinatorAPI
SCPLANServer
SCPLANAdapter
SCPLANAdapter
MaterialShortage
Info
RDB
RDBAdapter
ERPAdapter
ERP
PurchaseRequisition
Worklistmanagement
P.O. Client
SCPLANClient
(Customized)
ERP
PurchaseOrder
SCPLANServer Purchase
OrderRegistration
InventoryReceipt
ERPAdapter
PurchaseRequisitionRegistration
ProductionPlan
Material-Shop
MaterialMaster
ShopMaster
WarehouseMaster
VendorMaster
ProductionCapacity
MaterialMaster
BOM
RDBAdapter
RDBAdapter
ERPAdapter
ERPAdapter
ERPAdapter
ERPAdapter
ERPAdapter
ERPAdapter
ERPAdapter
ERPAdapter
FileAdapter
FileAdapter
FileAdapter
FileAdapter
FileAdapter
FileAdapter
MPS
Calendar(Local)
ShopMaster
ProductionMaster
LotInfo.
Calendar(Master)
InventoryIn/Out
Inventory
SupplyMaster
ERP
RDB
FileAdapter
FileAdapter
ProductionPlan Detail
RDBAdapter
PurchaseInfo (Org.)
PurchaseInfo.(Gen.)
P.O.
P.ODetail
P.O.Ship
Inventory
ERPAdapter
ERPAdapter
ERPAdapter
Material-Warehouse
BOM
ERPAdapter
ERPAdapter
FileAdapter
Material-Vendor
WCOLink
WCOLink
WCOLink WCO
LinkWCOLink
ERPAdapter
PurchaseRequisition
RDB
Transformer (table to table)Transformer (table to table)
Execution /Execution /Complete DetectionComplete Detection
TransformerTransformer(table to table)(table to table)
TransformerTransformer(record to record)(record to record) WatcherWatcher
WrapperWrapper
Note: Arrows in this diagram indicates the direction of call, or reference.Arrows do not indicate flows of data.
WorklistWorklist
PurchaseRequisition
RDB
Process DataManagement
Process DataManagement
(a) BP Junction BFCActivate sub-process, and notify end of the sub-process
(C) Execution/Complete Detection BFCExecute SCPLAN, and notify WorkCoordinatorthe completion of MRP
(b) Transformer (table to table) BFC Collects data from ERP and other system, and transform it into SCPLAN input files
(d) Transformer (table to table) BFCExtract material shortage data from SCPLAN, transform it, and put it in RDB
(e) BP Junction BFCCreate BP2 Instances for each work item “Purchase Requisition for each Material” in BP1 (f) Transformer (record
to record) BFCRegister Purchase Requisition records
(g) Worklist BFCShow issued purchase requisition records for each buyer
(h) WrapperPut P.O. record into ERP
(i) DB Watcher BFCPeriodically check ERP table,and detect entry of inventory receipt record
Program which is independent to Application Components
Program which is dependent to Application Components
All Rights Reserved,Copyright © 2000,Hitachi,Ltd.
Findings from the SCM Integration (1)
Common Part(WCO Link)
NotifyCompletion
ApplicationIndependent
Execute Notify
ApplicationDependent(Adapter)
ApplicationDependent(Adapter)
ApplicationComponent
Data Import
ApplicationComponent
Data Export
Work ItemWorkCoordinator
Transformer typeTransformer typeBPI Framework ComponentBPI Framework ComponentExecute an application with parameters, detect completion, and notify the
completion to the WorkCoordinator
Import data from multiple tables in source applications, transform the data, and put the data into target applications
Receive record data, transform the data and put the data into target application
Put process instance into a business process with passing parameters, and watch the status of the business process (e.g. completion of the process)
Check data in an application periodically, and notify the result to the WorkCoordinator when predefined condition occurs in the data
Check data in an application once, and notify the result to the WorkCoordinator
Provide list of work items for each users, and activate appropriate application when the user select a work item on the list.
Execution / Complete DetectionExecution / Complete Detection
Transformer (table to table)Transformer (table to table)
Transformer (record to record)Transformer (record to record)
BP JunctionBP Junction
DBDB WatcherWatcher
DBDB EvaluatorEvaluator
WorklistWorklist
Types of BPI Framework ComponentsTypes of BPI Framework Components
All Rights Reserved,Copyright © 2000,Hitachi,Ltd.
BusinessBusinessAnalysisAnalysis& Design& Design
Scrap & buildScrap & build(estimated)(estimated)
BPI withoutBPI withoutreusable templatesreusable templates Generic part of BPIGeneric part of BPI BPI with templatesBPI with templates
(estimated)(estimated)
SystemSystemDesignDesign
ProgramProgramDesign &Design &
ImplementationImplementation
TotalTotal
Cost for the integration/development (Human.Month)
Findings from the SCM Integration (2)Reusability of Reusability of designdesign and programand program
4
12
16
32
Application program (10)SCPLAN Integration (6)
4
12
12
28
Business Template (3)Detail Design (1)
Integration Template (9)Application dependent (3)
Application program (2)BPI Framework Component
Generic (7.3)Customer dependent ( 2.7)
19.3
3
9
7.3
Business Template
Integration Template
Generic part of BPI Framework Component
8.7
1
3
4.7
Relative costusing templates
27.2%27.2%
87.5%
64.7%
All Rights Reserved,Copyright © 2000,Hitachi,Ltd.
BPI ConceptBPI ConceptBPI ConceptBPI MethodologyBPI MethodologyBPI Methodology
Our Challenges
Methods and ProceduresProcedures for BPIBP Design for IntegrationEnhancement of BFC Model
Methods and ProceduresMethods and ProceduresProcedures for BPIBP Design for IntegrationEnhancement of BFC Model
Tools & ProductsEnhancement of WorkCoordinatorBPI Design Support ToolBFC Toolkit
Tools & ProductsTools & ProductsEnhancement of WorkCoordinatorBPI Design Support ToolBFC Toolkit
Application & EvaluationTemplate Development for Business Domains (SCM, CRM, …)Application for Customer’s Business System
Application & EvaluationApplication & EvaluationTemplate Development for Business Domains (SCM, CRM, …)Application for Customer’s Business System