®
IBM Software Group Enterprise – Business Process Management/ Business Performance Management: Architecture, Technology, Standards Donald F. Ferguson IBM Fellow, SWG Chief Architect, dff@us.ibm.com
bpm2006 17-Sep-06 © 2006 IBM Corporation IBM Software Group Enterprise BPM: © 2006 IBM Corporation Architecture, Technology, Standards Agenda Introduction Disclaimer A sample business problem Context and major trends Business Process/Performance Management Model, and why more than “process.” Assemble and Customize; EDA and SOA Deploy Manage/Monitor Summary, Discussion and Challenges, and “A Grand Challenge!”
bpm2006 17-Sep-06 2 IBM Software Group Enterprise BPM: © 2006 IBM Corporation Architecture, Technology, Standards Agenda Introduction Disclaimer A sample business problem Context and major trends Business Process/Performance Management Model, and why more than “process.” Assemble and Customize; EDA and SOA Deploy Manage/Monitor Summary, Discussion and Challenges, and “A Grand Challenge!”
bpm2006 17-Sep-06 3 IBM Software Group Enterprise BPM: © 2006 IBM Corporation Architecture, Technology, Standards A Sample Business Problem – HW PO/Supply Chain Manual Entry Manufacturing and Tracking
Warehouse Customer POs for PCs, SAN, … Assembly
Customer System Warehouse/ Staging Shipping
bpm2006 17-Sep-06 4 IBM Software Group Enterprise BPM: © 2006 IBM Corporation Architecture, Technology, Standards Example: Complexity is Forcing Change
Mainframe
PC/NT apps Depository Unix apps Vendor Setup Banks Vendor Process Servers I17 Customer Perceived Maintenance 3rd Party Interface Budget (Imaging) NEW Soundscan Sterling VAN UAR - Universal Account In-Stock NPD Group Analysis Tool Mesa Data Roadshow Mailbox (Value) Reconciliation Printer S20-Sales AIG Warranty Guard Maintenance Polling I13- Auto I15 Hand Scan I06 - Customer Replenishment Printer PO Apps Insertions S01 - Sales Order AIS Reports AIS Calendar Orders Corrections Due Dates Print Costing I06 Warehouse General Invoice App Management Stores & Mrkts Broadcast Maintenance E13 Filter E3 Interface Fringe PO Smart Plus Smart Plus M03 - Millennium 3.0 Launcher S04 - Sales Posting S07 - Cell P16 - Tally Sheet Phones I03 Return to M02 - Millennium D01 Post Load Vendor S06 - Credit App Billing Equifax Stock Options P15 EES Employee I12 Entertainment S09 - Digital Satellite L02-Resource Change Notice Software A04 - Cust System Scheduling 1 L01-Promo Refund Chks E01-EDI (Campbell) Analysis P14 On-line New Hire Entry AAS V02-Price Resumix P01- Marketing Employee Washington, Support Masterfile RGIS, Ntl Bus Systems P09 - P17 Cobra Frick S11 - ISP Cyborg CTO2.Bestbuy. CTS Co I10 Cycle Physical Tracking com I04 Home Inventory ACH Deliveries V04-Sign Prodigy System U18 - CTO I02 - Banks - ACH and Pos to POS Transfers X92-X96 Pay Host to AS400 Plan Administrators Communication (401K, PCS, Life, Spec Source B01 - Stock Unicare, Solomon SKU Tracking Status I11 Price Smith Barney) I09 Cycle Counts S08 - Vertex Testing Supplier Intercept Sales NPD, S02 - Compliance E02-Employee Tax SoundScan Layaways Purchase Spec Source I01 PO Scorecard - HR Receiving SKU V03- Mkt Performance Reactions L60 MDF P09 S03-Polling V01-Price Management I05 Coop Bonus/HR SKU Selection System Inventory Info Tool
I35 - CEI K02 ASIS Customer Repair I35 Early Warning Arthur Planning Tracking I18 System Rebate SKU Rep Transfer I55 SKU I07 Purchase Information Store Order Ad Expense Monitor ELT PowerSuite G02 - General Ledger Store Scorecard Texlon 3.5 Sign System NARM I14 Count Corrections Store Budget Reporting Valley Media U16-Texlon B02 Merchandise CopyWriter's Analysis BMP - Bus Workspace performance Mngt EDI Coordinator
Merch Mngr Approval Batch Forcasting AIMS Journal Entry Tool Kit Ad Measurement A05 - AP AIMS Admin
Cellular INVENTORY CONTROL APPS - PC INVENTORY CONTROL APPS - PC ACCTS REC APPS - PC Rollover Code Alarm DPI/CPI 990COR AIMS OTHER APPS - PC Debit Receivings IC Batching Bad Debt Ad Reporting S05 - House AP - Collections/Credit Devo Sales Inventory Adj/Count Correct Beneficial Fees Launcher Charges TM - Credit Card DB Display Inventory Inventory Control Reports Beneficial Reconcile In Home Inventory Levels JEAXF Junkouts Inventory Roll JEBFA Optika US Bank Recon Merchandise Withdrawal Merchandise Withdrawal JEBKA PSP File Promo Credits Open Receivings JEDVA C02 - Capital RTV Accrual PI Count Results JESOA Projects Shrink PI Time Results from Inv JEVSA Connect 3 ICMS Credit AP Research - Inv Cntrl Price Protection JEVSF SiteSeer AP Research-Addl Rpts Sales Flash Reporting NSF In-Home Book to Perpetual Inventory Shrink Reporting TeleCredit Fees Data Warehouse Close Out Reporting SKU Gross Margin Repair Connect 3 (Interfaces to and from the Connect 3 Computer Intelligence Data SKU Shrink Level Detail PDF Transfe Reports Cash Receipts/Credit Count Corrections USM Data Warehouse are not F06 - Fixed Cross Ref for VCB Dnlds VCB Downloads displayed on this diagram) Warranty Assets Misc Accounting/Finance Apps - PC/NT Damage Write Off Billing COBA (Corp office Budget Assistant) Debit Receivings Star Repair Cash Over/ PCBS(Profit Center Budget System) DFI Vendor Database System Display Inventory Reconcile Short Prepared by Michelle Mills Merchandising Budget Display Inventory Reporting Actual Application Architecture for Consumer Electronics Company bpm2006 17-Sep-06 5 IBM Software Group Enterprise BPM: © 2006 IBM Corporation Architecture, Technology, Standards Some Challenges and Trends Challenges Seams between “people activities,” “information integrated” and “automated SOA activities” Choice may change in a solution over time Reusable solution templates with customization/configuration. Policy and rules Information – Processes are a mix of “documents,” “people” and choreography. Rich information model – PO, Customer, … … Legacy integration Federated/decentralized control and goals Some trends SOA and Web services, obviously. Improved but fragmented formal modeling standards Coming together of IT processes and business processes (MUWS) Coherent models for EDA and {BPM, EAI} Domain standards Governance.
bpm2006 17-Sep-06 6 IBM Software Group Enterprise BPM: © 2006 IBM Corporation Architecture, Technology, Standards Business Process and Performance Management: Model – Assemble – Deploy – Manage/Monitor Discover Integrate people Construct & Test Integrate processes Compose Manage and integrate information
Gather requirements Model & Simulate Design A “better napkin”
Financial transparency Manage applications & Business/IT alignment services Process control Manage identity & Charge back compliance Who saw what and did what for whom? Monitor business metrics
bpm2006 17-Sep-06 7 IBM Software Group Enterprise BPM: © 2006 IBM Corporation Architecture, Technology, Standards Agenda Introduction Disclaimer A sample business problem Context and major trends Business Process/Performance Management Model, and why more than “process.” Assemble and Customize; EDA and SOA Deploy Manage/Monitor Summary, Discussion and Challenges, and “A Grand Challenge!”
bpm2006 17-Sep-06 8 IBM Software Group Enterprise BPM: © 2006 IBM Corporation Architecture, Technology, Standards Model BPM is more than process Business Objects, Content Model (e.g. scans) Business and object state Organization (people) Interaction Model in “business user” Policy terms and concepts, not Key Performance Indicators (KPIs)/XSD or com.payroll.Why Model? … Observation, Events Slow, time consuming, … … Business Vocabulary Real programmers “extreme” program Standards matter Standards are more than runtime protocols Runtime interoperability Well, everyone models White boards, PowerPoint, … Federated tools Design Time Napkins, crayons, … … Portability What does company A’s tools give to B’s? Monitoring and reporting How does the caller know invocation seqs? Why model formally? Evolution, Substitutability What CA’s does the service support? Precise notation Currently a bit of a mess Programmers don’t guess Portability UML Reliable hand-off (“structure," code here”) Flexible placement over disparate product E-R Traceable and change management WSDL, BPEL, … choices BPMN Decouple BPM from infrastructure evolution SBVR …… bpm2006 17-Sep-06 9 IBM Software Group Enterprise BPM: © 2006 IBM Corporation Architecture, Technology, Standards Information as a Service – An Example of Going Beyond Process
Tools & Applications Dashboards In-line, Real-time Insight
Insightful Relationships Master Data, Entity Analytics, Decision Standards based: e.g., Master Data & Data Portals, Exec Dashboards, XQuery, JSR170, JDBC, Content Industry Data Models Web Services... Information as a Service Extracted or Real-Time (Information Virtualization)
Heterogeneous Applications & Information
and IBM DB2 abc… Content xyz… Oracle more… Manager
bpm2006 17-Sep-06 10 IBM Software Group Enterprise BPM: © 2006 IBM Corporation Architecture, Technology, Standards Why Use Information Services in SOA? Customer Exists? Customer Exists?
Create Info Create Info Receive Receive Account Account Info Info
Why use Information Server/Services? Efficiency Sophisticated clean/link/… … functions Simplifies process design Reuse in other processes, as well as applications, portal, … …
bpm2006 17-Sep-06 11 IBM Software Group Enterprise BPM: © 2006 IBM Corporation Architecture, Technology, Standards Agenda Introduction Disclaimer A sample business problem Context and major trends Business Process/Performance Management Model, and why more than “process.” Assemble and Customize; EDA and SOA Deploy Manage/Monitor Summary, Discussion and Challenges, and “A Grand Challenge!”
bpm2006 17-Sep-06 12 IBM Software Group Enterprise BPM: © 2006 IBM Corporation Architecture, Technology, Standards Service Components ESB • Required Interfaces • Events • Policy Points Stub •…… Prolog
Types
Messages “Resources” JMS/MQ HTTP Port Types IIOP Container BPEL …… Operations ABO Impl. CICS TP Bindings JAVA “Abstract Process” SQL “Business State” …… Policy Control Descriptors Deployment Descriptors
bpm2006 17-Sep-06 13 IBM Software Group Enterprise BPM: © 2006 IBM Corporation Architecture, Technology, Standards Service Components “Web services describes the outsides. How do you implement a service? How do you compose services?” Encapsulate Components for Reuse; All look the same from outside Components may be wired together and aggregated via flow Business Objects are the data flowing on wires between Components Enable type, role and skills specific tools. Policy
Interface: Interface: How to call How to call this component this component Reference: Reference: What this Component What this Java components calls Java components calls Interface Interface Uniform Representation of JavaJava WSDL Interface WSDL Encapsulated Interface Port Type Port Type Implementation
WSDLWSDL PortPort Type Type
Business Business Business Human Interface SQL Business Business Business Human Interface Selector Java SQL Process State Machine Rule Task Map Selector Java XQuery Process State Machine Rule Task Map XQuery
bpm2006 17-Sep-06 14 IBM Software Group Enterprise BPM: © 2006 IBM Corporation Architecture, Technology, Standards Service Components “Web services describes the outsides. How do you implement a service? How do you compose services?” Encapsulate Components for Reuse; All look the same from outside Components may be wired together and aggregated via flow Business Objects are the data flowing on wires between Components Policy Enable type, role and skills specific tools.
Interface: Interface: How to call How to call this component this component Reference: Reference: What this Component What this Java components calls Java components calls Interface Interface Uniform Representation of JavaJava WSDL Interface WSDL Encapsulated Interface Port Type Port Type Implementation
WSDLWSDL PortPort Type Type
Business Business Business Human Interface SQL Business Business Business Human Interface Selector Java SQL Process State Machine Rule Task Map Selector Java XQuery Process State Machine Rule Task Map XQuery
bpm2006 17-Sep-06 15 IBM Software Group Enterprise BPM: © 2006 IBM Corporation Architecture, Technology, Standards A Simple Example and Some Concepts /* Something a DB dude Pragma This; Pragma That; recognizes */ SELECT Deployment Tools ticker,value, activity FROM StockQuotes WHERE Author Tools ticker == QuoteRequest.ticker INTO or quoteResponse.ticker quoteResponse.value, Text Editor quiteResponse.sharesTraded;
Deployment Package
public class QuoteRequest { Interface(s) String ticker; Data Svc. Date when; SDOs }
Public class quoteResponse { String ticker; float value; Generated Code float sharesTraded; } Interpreted Metadata
bpm2006 17-Sep-06 16 IBM Software Group Enterprise BPM: © 2006 IBM Corporation Architecture, Technology, Standards Assembling Services – Modules and Subsystems UDDI, Service Registry Project, SCCS ad hoc exchange, ……
May “drill into” a specific get Approved
component’s details Approved/ Denied
Simple wiring metaphor and tools.
Unaware of “how” the component works.
If Approved then Send letter offering gold
If NOT Approved Send letter offering Credit counseling service
bpm2006 17-Sep-06 17 IBM Software Group Enterprise BPM: © 2006 IBM Corporation Architecture, Technology, Standards Services Oriented Architecture and Mediations Credit Card Service Commerce Service Found a CC Service
Needs a CC Service
Transform But it’s not quite right. Darn Route Augment Side Effect Mediation Policy Selection Matching
bpm2006 17-Sep-06 18 IBM Software Group Enterprise BPM: © 2006 IBM Corporation Architecture, Technology, Standards SCA, SOA and Event Driven Architectures
------Wiring is a simple model ------but is limited Implements
------Transparent ------Mediation ------
Emit Event
------Topics ------Subscription ------Filter ------Filter ------Analyze ------Rules ------
bpm2006 17-Sep-06 19 IBM Software Group Enterprise BPM: © 2006 IBM Corporation Architecture, Technology, Standards Customizing Services – A “Design Pattern” Bind using Required “Services” • Date/Time document POVs • Application Version Simple rule templates • Message Predicate Call •… … Java, JavaScript Rule Engines Prolog Decision Table Decision Tree Types Mediate …… Messages Just another “service” Port Types Operations Impl Web Service Binding (Find) Bindings POV = Impl. Model for calling a service, e.g. JAX RPC Stub, BPEL Invoke Control Descriptors Deployment Descriptors
bpm2006 17-Sep-06 20 IBM Software Group Enterprise BPM: © 2006 IBM Corporation Architecture, Technology, Standards Services and Components There is a set of standards (emerging) for formally representing a service component’s behavior WSDL, XSD BPEL, UML WS-Policy WS-ResourceFramework There is an emerging, extensible set of service component kinds that provide a natural mapping for model elements Process, Business State Machine, Selector Eliminates the “miracle happens here” model High level, portable implementations emerging Support for very dynamic Structural composition Behavioral composition Configuration/customization This “BPM” solution is a set of Bridge to existing skill sets. documents enabling a “wiki like” BPM evolution.
bpm2006 17-Sep-06 21 IBM Software Group Enterprise BPM: © 2006 IBM Corporation Architecture, Technology, Standards Some Perspective Haven’t we heard this before? OO, RPC, MDP, … …? This time we really mean it. Can’t you take a joke? There are some differences XML is language neutral; previous approaches implied a language model. WSDL and XML are more forgiving of changes Supports RPC and message/document approaches from beginning Common type model for applications/servers, message systems and DBs Builds on Internet protocols already deployed for “Web browsing.” Uniform model for events/pub-sub, message routing and RPC More focus on logical behavior – WSDL, Policy, etc. SOA component model derives from business modeling, making MDD simpler and eliminating “spooky transformations!”
bpm2006 17-Sep-06 22 IBM Software Group Enterprise BPM: © 2006 IBM Corporation Architecture, Technology, Standards Agenda Introduction Disclaimer A sample business problem Context and major trends Business Process/Performance Management Model, and why more than “process.” Assemble and Customize; EDA and SOA Deploy Manage/Monitor Summary, Discussion and Challenges, and “A Grand Challenge!”
bpm2006 17-Sep-06 23 IBM Software Group Enterprise BPM: © 2006 IBM Corporation Architecture, Technology, Standards A Patch Management – Implementing the Process
Questions: How best to implement the process and make it operational? What tools should be used for sequencing work between people? What tools for automating particular activities in the process?
Review & Deploy Close Change Open Categorize Assess Approve Change RFC RFC RFC Impacts Change Mgmt
Package the Test the Document Open other Release Need to have: change change Impacts RFCs Mgmt Logical Process implemented Apply Verify in executable workflows Patch Patch User Interfaces for process steps Adapters to Management Apps Documentation to customize steps Select Check Update Select Select Schedule Deploy Change Config Done? Servers Subset Change Patch Results Window (verify) DB Change
Query Check TPM Human review Join Policy and approval Results steps Query Manual Rollback DBs Patching Process Instance Task 3 Task 5
Task 1 Task 2 Task 6 Task 4
(Business) Process Engine Infrastructure Mgmt tools automate some process steps SOA Infrastructure
bpm2006 17-Sep-06 24 IBM Software Group Enterprise BPM: © 2006 IBM Corporation Architecture, Technology, Standards Building IT Process Flows Model Assemble
Deploy
Human review and approval steps Provide portal Process Instance Task 3 Task 5 console and run Task 1 Task 2 Task 6 process using Task 4 Process Choreographer (WPC)
Infrastructure Mgmt tools automate process steps bpm2006 17-Sep-06 25 IBM Software Group Enterprise BPM: © 2006 IBM Corporation Architecture, Technology, Standards The Role of the Container Policy Declarations Security Header Reliable Messaging Header Atomic Transaction Header
The Impl. SOAP Message
double deposit(Message m) { checkForDuplicate(m.seqNo); registerForTransaction(m.context); This is fragile, isCAValid(m); changes over time, checkSignature(m); complex for business programmers, updatePerformanceInfo(); error prone, balance += m.amount; etc. // … … updatePerformanceInfo(); } bpm2006 17-Sep-06 26 IBM Software Group Enterprise BPM: © 2006 IBM Corporation Architecture, Technology, Standards The Role of the Container
Security Header Wrapper Reliable Messaging Header Atomic Transaction Header The Impl.
SOAP Message Before After Container Check Certificate Challenge Security etc. Ack. Reliability Retransmit Transactions
Container is a set of policy driven functions. Interceptor pattern for business logic and “stubs.” Before and After factoring of code.
bpm2006 17-Sep-06 27 IBM Software Group Enterprise BPM: © 2006 IBM Corporation Architecture, Technology, Standards 4 Principles Of Application Management Confidence A repeatable approach to sense and respond to performance problems within the composite application infrastructure.
Measure Trace Mediate Monitor & Adjust Response Time Transactions Services & Resources Enforce Policies
bpm2006 17-Sep-06 28 IBM Software Group Enterprise BPM: © 2006 IBM Corporation Architecture, Technology, Standards A Typical Management/Monitor Portal
TopologyTopology View:View: aggregateaggregate interactionsinteractions amongamong services.services. SequenceSequence Diagram:Diagram: ShowsShows exactexact sequencesequence ofof messagesmessages overover timetime
StatisticsStatistics View:View: AA tabletable viewview ofof thethe rawraw datadata collectedcollected byby thethe monitoringmonitoring agentagent atat eacheach interceptioninterception pointpoint
ContentContent View:View: ShowsShows contentcontent ofof aa SOAPSOAP messagemessage bpm2006 17-Sep-06 29 IBM Software Group Enterprise BPM: © 2006 IBM Corporation Architecture, Technology, Standards Business Process/Performance Manage/Monitor
SOA infrastructure monitoring Dynamic and policy driven “Transparent” to application logic Sense – Respond – Act via MUWS Observation/Performance Modeling Observation points are part of modeling Define scorecard view of Key Performance Indicators SOA event infrastructure and event database Enables Dashboard, monitoring, management. Ability to intervene in deployed processes Set situational triggers and notifications Dynamically respond to these alerts Supporting continuous process improvement Monitor in-flight business processes Make process modifications based upon real-time data sent back to the Modeler for simulations
bpm2006 17-Sep-06 30 IBM Software Group Enterprise BPM: © 2006 IBM Corporation Architecture, Technology, Standards Deploy, Manage and Monitor System and application management is a business process Complex, multi-step process with compensation for change management Patches, OS/middleware upgrades, application enhancements Automated steps, manual approval Compensation, recovery, retry Common Management (Information) Database Events, Sense/Respond, Monitor, Act, History, reports Using “standard” BPM technology Enables existing skills (e.g. no arcane SM language and APIs) First class tool support The line between systems/application management and BPM is an illusion Why are PO submissions failing? IT error or process design? Impact analysis Think about “customer on-boarding.” Some updates to CRM, account system, etc. Also calls to security for UID, ACLs, … …
bpm2006 17-Sep-06 31 IBM Software Group Enterprise BPM: © 2006 IBM Corporation Architecture, Technology, Standards Agenda Introduction Disclaimer A sample business problem Context and major trends Business Process/Performance Management Model, and why more than “process.” Assemble and Customize; EDA and SOA Deploy Manage/Monitor Summary, Discussion and Challenges, and “A Grand Challenge!”
bpm2006 17-Sep-06 32 IBM Software Group Enterprise BPM: © 2006 IBM Corporation Architecture, Technology, Standards Summary and Directions Business Process/Performance Modeling/Management Is a broad space with many “sub-models.” We are only beginning to Bring them into a coherent whole Without overwhelming business professionals and IT professionals We must drive standards and convergence. Standards are broader than runtime formats and protocols. Tool federation Flexible function placement Evolution There are many open areas Governance Web 2.0 Explosion of casual programmers in the workplace Modeling support for Recipes, Patterns and Templates Service/component identification, factoring, good “size,” … …
bpm2006 17-Sep-06 33 IBM Software Group Enterprise BPM: © 2006 IBM Corporation Architecture, Technology, Standards A Grand Challenge There is good and improving models for Process, Information and State, Events Components Use cases Component collaboration …… Policy is where we are the most “broken” Examples “All POs over $10,000 must be approved by regional sales manager.” “An employee cannot close a customer complaint that he created or marked complete.” “Business class is authorized for flight more than 8 hours or overnight.” We typically write these down in text. Programmers read the text and write code. Can we do better? Many domains have nascent business vocabularies, e.g. law, dentistry We write specs with nascent “grammars,” e.g. MUST, CANNOT, RECOMMEND Documents are often simple combinations of policy Nested lists (Decision Trees) Tables/Forms (Decision Tables) Hyperlinks (Decision Flows) Can we improve hand-offs and traceability for rules and codes through structured language, business vocabularies
bpm2006 17-Sep-06 34 IBM Software Group Enterprise BPM: © 2006 IBM Corporation Architecture, Technology, Standards
bpm2006 17-Sep-06 35 IBM Software Group Enterprise BPM: © 2006 IBM Corporation Architecture, Technology, Standards Some Clarification An Asset is, well an Asset. Can be anything Word document, Powerpoint Presentation We should be more Handy code that I keep lying around helpful than this Excel spreadsheet for costing a project …… A Pattern is a recurring solution for solving a problem Patterns for eBusiness (http://www-106.ibm.com/developerworks/patterns/) Enterprise Integration Patterns (http://www.eaipatterns.com/) J2EE Patterns (http://corej2eepatterns.com/index.htm) …… Read the book and start typing! A Template is a Pattern (or sub-pattern) that Has associated metadata Comes with a design time control (Wizard) Uses code generation or “data driven behavior” to convert to an instance. A Recipe is an directed graph of Templates, with composite controls Which arcs to follow This is my terminology. Metadata flows through the graph as you follow the recipe Subsets, augments, modifies the constituentWe are patterns. trying to come to a A Solution Template is simple, common terminology. A complete solution, with install images Well-defined POVs for tailoring the elements and wizards
bpm2006 17-Sep-06 36 IBM Software Group Enterprise BPM: © 2006 IBM Corporation Architecture, Technology, Standards Pattern Authoring in Rational Software Architect
1. Create Plugin Project with 2. Create the skeleton of the pattern. 3. Add your custom code using the Patterns Templates Define parameters for the pattern and RSA Pattern Framework. It provides constraints on the parameters many extension points
4. Test pattern by launching 5. Export the pattern as a RAS asset. 6. Publish Asset to a RAS repository a new runtime workbench Classify your pattern to facilitate searching
bpm2006 17-Sep-06 37 IBM Software Group Enterprise BPM: © 2006 IBM Corporation Architecture, Technology, Standards Example of applying a Pattern
1. Locate and Import the Asset 2. Select the Pattern from Pattern Explorer from a RAS repository 3. Specify Pattern Parameters
4. Run a Transformation to convert models into Artifacts (code, scripts, docs)
bpm2006 17-Sep-06 38 IBM Software Group Enterprise BPM: © 2006 IBM Corporation Architecture, Technology, Standards Some Principles Minimize concepts and rely on patterns Pub-sub is a SOA pattern Mediation is a style of service Business rules are a way to implement services … … There are very few new things Focus less on code reuse and more on pattern reuse There is no difference between pattern, code, developer tool Basic building blocks (e.g. SCA) enable flexible patterns Benefits Productivity Reduce risk, more predictable projects, technical community, … There are two tiers of programmer Architecture/Pattern/Template provider Template/Pattern user Instantiate Compose Configure Code for customization
bpm2006 17-Sep-06 39 IBM Software Group Enterprise BPM: © 2006 IBM Corporation Architecture, Technology, Standards To Do Governance ITSM Haven’t we heard this before? Web 2.0/ESRI Service Identification and Factoring Component Business Model and abstract models Everyone is a “casual programmer” Patterns
bpm2006 17-Sep-06 40