Model-Driven Business Process PlatformsDavid S. FrankelLead Standards Architect –Model Driven SystemsSAP LabsSAP AGand David S Frankel 2005, MDA /‹#›Economic Driver: The Innovation EconomyLast-generation value propositionApplications embody well-validated, accepted business processesNext-generation business realityInnovative business model and associated processes define an enterprise’s competitive advantageNot enough to have a great productMust also have a great business modelNot attractive to simply follow a business process defined elsewhereOutsourcing all but core business processesNeed flexibility in designing and executing innovative business processesCore business processesValue Chains /Value Networks for accessing mission-critical, non-core processesSAP AGand David S Frankel 2005, MDA /‹#›Business Process PlatformRaising the Abstraction Level of the Software PlatformOperating System /VMMachineDBMSNetwork SystemsTransactionSystemsBusinessProcess PlatformCustom businessprocesses & analyticsApplication PlatformTechnical PlatformMiddlewareReusable, Executable Enterprise Application ServicesComposite ApplicationsSAP AGand David S Frankel 2005, MDA /‹#›Composite App: Procure-to-Pay, Order-to-Cash, Manufacture-to-Inventory= InvokeSupply ChainPrice Look UpParts InventoryProductDescriptionsProduct-PriceOptimizerManufacturingPlanning & ProductionDavid Burdett, SAP LabsSeller’s AuctionCompositeSAP AGand David S Frankel 2005, MDA /‹#›Model Compilers and the Abstraction LevelApplication ModelCheckingAccountminBalance : Float<
>Accountid : Stringbalance : Float<>Customerid : String<>1..*1+account1..*+customer1context PreferredChecking inv:--Cannot go below the minBalancebalance >= minBalanceSavingsAccount<>Model CompilationAbstraction GapLevel of AbstractionOperating System /VMMachineDBMSNetwork SystemsTransactionSystemsMiddlewareSAP AGand David S Frankel 2005, MDA /‹#›Model-Driven Tools Empowering the Business Process Expert (BPX)Operating System /VMMachineDBMSNetwork SystemsTransactionSystemsBusinessProcess PlatformTechnicalSoftware PlatformComposite ApplicationsAbstraction GapComposite Application ModelsModel CompilationBusiness Process ModelsDirect Model ExecutionMiddlewareApplication PlatformReusable, Executable Enterprise Application ServicesSAP AGand David S Frankel 2005, MDA /‹#›This Will Not be an Easy TransitionThis jump in the platform abstraction level is more difficult than the last jump (middleware)Just as raising the abstraction level for development languages above 3GLs is more difficult than the last jump to 3GLsCrawl, Walk, RunProvide business value at every stepSAP AGand David S Frankel 2005, MDA /‹#›As Service-Oriented BPPs Scale Up…Semantically thin specifications reach their limitsHow do you achieve semantic interoperability on top of syntactic interoperability?Do collaborating parties have a common understanding the contract of a service?You can’t rely on informal conversations among peopleThe parties might have different human languages as native tonguesHow do you find suitable services to compose? Suitable functional behaviorSuitable quality of service?Same for reusable business processesConfiguration/version/dependency management problems do not go awayThey can even get worseSAP AGand David S Frankel 2005, MDA /‹#›A Metadata-Rich EnvironmentNeed a metadata-rich environment to assisthumans using the business process platformSpecifying ConstraintsService message/data types specified as precisely as possibleInvariantsService operations functional contract specified as precisely as possiblePreconditions and postconditions (more numerous than invariants)Using machine-readable, declarative constraint languagesWe’ve know how to do this for decades Also improves qualityAlso need to learn to specify QoS requirements and capabilities as precisely as possibleInferences identify candidates or flag potential problem combinationsLet the human decide what to doRecord what the human decidesShow the next human what the others decidedLearnSAP AGand David S Frankel 2005, MDA /‹#›context PreferredChecking inv:--Cannot go below the minBalancebalance >= minBalanceCheckingAccount<>minBalance : MoneyAccount<>id : Stringbalance : MoneyCustomer<>socialSecurityNum : Stringname : Stringaddress : String1..n1+account1..n+customer1PreferredChecking<>{disjoint}Money<>SavingsAccount<>interestRate : DecimalDecimal<>Abstract Business Information Model: IT Viewpoint With an Invariant RuleInvariant rule expressed in UML’s Object Constraint Language (OCL).This invariant is independent of implementation technologySAP AGand David S Frankel 2005, MDA /‹#›Formal Abstract Model of a Business ServiceWith Pre-conditions and Post-ConditionsFundsXFer<>XFerFromChecking(in fromAcct : CheckingAccount, in toAcct : SavingsAccount, in amount : Money) context FundsXFer::XFerFromChecking (fromAcct : CheckingAccount, toAcct : SavingsAccount amount : Money) : voidpre: --There must be sufficient funds in the checking account to support the transferfromAcct.balance >= amountpre:--The checking account and the savings account must belong to the same customerfromAccount.customer = toAcct.customerpost:--The balance of the checking account is reduced from its orginal amount by the amount of the transfer fromAcct.balance = fromAcct.balance@pre -amountpost:--The balance of the savings account is increased from its original amount by the amount of the transfertoAcct.balance = toAcct.balance@pre + amountSignaturePre/post conditions—Independent of implementation technologySAP AGand David S Frankel 2005, MDA /‹#›Constraint Languages for the Business Process Expert (BPX)Operative business ruleIf the drop-off locationof a rentalis not the EU-Rent siteof the return branchof the rentalthen it is obligatory that the rentalincurs a location penalty charge. Supporting fact typesrentalhas drop-off locationrentalhas return branchbranchis located at EU-Rent siterentalincurs location penalty chargeAdapted from Semantics of Business Vocabulary and Business Rules, OMG document dtc/06-03-02SAP AGand David S Frankel 2005, MDA /‹#›Configuration InvariantsConstraints having to do with a component’s design-time or deployment-time configuration parametersThe value of one configuration parameter may constrain the values of others Tools can enforce these kinds of constraints, with some limitationsTools can also detect collisions among configuration constraints that would result from specific combinations of components Sometimes detection is certain and sometimes only suspectedCategories of tool support1Constraint checking: Checking whether a particular configuration satisfies the constraintsConstraint propagation: Inferring the values of undecided configuration settings from the values of decided settingsConstraint satisfiability: Checking whether a set of constraints has at least one solution1Krzysztof Czarnecki and Chang Hwan Peter Kim, ―Cardinality-Based Feature Modeling and Constraints: A Progress Report,‖ Proceedings of the First International Conference on Software Factories, OOPSLA 2005.SAP AGand David S Frankel 2005, MDA /‹#›Seeking Formal Grounding for MDATo Improve Automated AssistanceMOF/XMI Based Tooling (e.g. Semantic Web Eclipse Plug-In)OWL-XMI BridgeNative Semantic WebOntology DevelopmentToolGeneric UML Modeling ToolXMI OWL DocumentNative OWL DocumentUML ModelUsing UML ProfileUML-OWL BridgeGenericUML ModelABCMeans tool A outputs B, and B serves as input to tool C. ER ModelER ToolER-OWL BridgeOntology Definition Metamodel (ODM)SAP AGand David S Frankel 2005, MDA /‹#›Another Scaling Up ChallengeHow do you build reusable components?Component-based development has proven hard in practiceHow do you anticipate requirements of composite applications?SAP AGand David S Frankel 2005, MDA /‹#›Product Line PracticesReusable assets for the product lineCreated via core asset developmentIndividual systems produced via product developmentIndividualProduct 1IndividualProduct nIndividualProduct 2…ProductionPlanThe Sims “Water Line”ArchitectureComponentsDomain-SpecificLanguage(s)Specialized Compiler(s)SAP AGand David S Frankel 2005, MDA /‹#›Applying Product Line PracticesBusiness Process PlatformAsset Bases for Product LinesLevel of AbstractionCompositeApplicationsAsset Bases for Product LinesCompositeApplicationsSAP AGand David S Frankel 2005, MDA /‹#›SummaryBusiness process platforms are comingTransition will be gradual, but powerfulModel-driven tools are important for making the platforms usableConfiguration management has to be faced square-onMetadata-rich environments, formal grounding, and product line practices needed to manage the complexityVigorous competition for a growing pie—if we do this right
MissPowerPoint 7/20/2008 |
61 |
8 |
0 |
business
tlindeman 2/23/2008 |
158 |
10 |
0 |
business
tlindeman 2/23/2008 |
163 |
18 |
0 |
business
sammyc2007 3/26/2008 |
122 |
3 |
0 |
business
tlindeman 2/23/2008 |
79 |
3 |
0 |
business
BeunaventuraLongjas 8/4/2008 |
256 |
40 |
0 |
business
user002 2/5/2008 |
358 |
43 |
0 |
business
David77 4/15/2008 |
211 |
30 |
0 |
business
ocak 1/14/2008 |
424 |
43 |
0 |
business
Kelly77 7/30/2008 |
301 |
26 |
0 |
business
longboat 12/10/2007 |
152 |
0 |
0 |
business
ocak 1/28/2008 |
181 |
12 |
0 |
business
info5partan 9/6/2008 |
125 |
17 |
0 |
business
user002 2/5/2008 |
261 |
32 |
0 |
business
user002 2/5/2008 |
528 |
135 |
0 |
business
tlindeman 4/4/2008 |
411 |
5 |
0 |
technology
tlindeman 4/4/2008 |
253 |
6 |
0 |
technology
tlindeman 4/4/2008 |
264 |
13 |
0 |
technology
tlindeman 4/4/2008 |
274 |
16 |
0 |
technology
tlindeman 4/4/2008 |
310 |
24 |
0 |
technology
tlindeman 4/4/2008 |
238 |
2 |
0 |
technology
tlindeman 4/4/2008 |
260 |
1 |
0 |
technology
tlindeman 4/4/2008 |
593 |
5 |
0 |
technology
tlindeman 4/4/2008 |
331 |
5 |
0 |
technology
tlindeman 4/4/2008 |
217 |
0 |
0 |
technology