UiO, Ifi, OMS og OMG - en reise i bokstavkjeksenes verden … Arne J. Berre, UiO/SINTEF OMG Bokstavkjeks og TBFer OMG RFI RFP RFC 5 meetings/year 2005 Burlingame-Feb Athens-April Boston-June Atlanta-Sept Workshops-05 -Open source/IDE -WebServ – SOA- MDA -RT/Embedded -SW/Commun. CORBA IDL UML 1, 1.x, 2.0, PTF RealTime Infra structure MOF SysML DTF XMI UML-EDOC, UML-EAI, UML-xx BEI, BEIDTF BPDM BusinessRules Agent-RFI CWM HUTN MDA Ontology-RFP CIM Architecture-RFI QVT Finance-GL Finance-AR/AP Finance-Payment PIM PSM MOF-2-TXT OMG 2 1 OMG (Object Management Group) OMA (Object Management Architecture) Overview Application Objects Vertical CORBA Facilities Horizontal CORBA Facilities Object Request Broker (CORBA) Lifecycle Events Naming Persistence Transactions Concurrency Externalization Security Time Properties Query Licensing CORBA Services OMG Object Management Group (OMG) Domain Activities Architecture Board (AB) Platform Technology Committee (PTC) Domain Technology Committee (DTC) ORB/Object Services Health Object Analysis and Design (UML) Telecommunications Internet Finance Real Time Electronic Commerce End-User SIG Business Objects Security SIG Transportation SIG, C4I SIG Metrics SIG Geographic Information SIG Manufacturing OMG 4 2 OMG Domain Activities •Business Object Domain Task Force: •Workflow RFP Telecommunications Domain Task Force: Notification Service RFP • Calendar Facility RFP CORBA/TMN Interworking RFP •Common Business Objects RFI CORBA/Intelligent Networks RFP Manufacturing Domain Task Force: Telecom Log Service RFP MES RFI PDM Enabler RFP Financial Domain Task Force: Currency RFP • Business Objects RFP Party Management RFP Electronic Commerce Domain Task Force: General Ledger RFP Electronic Payment RFP Negotiation Facility RFP Healthcare Claims Facility RFP Risk Management RFI Asset and Content Mgmt. RFI EC Enabling Tech. & Svcs. RFI OMG 5 OMG Model-Driven Architecture (MDA) www.omg.org/mda OMG 6 3 MDA – Model Driven Architecture UML PIM: Platform Independent Model UML and/or Platform specific notation PSM: Platform Specific Model PSM: Platform Specific Model PSM: Platform Specific Model PSM: Platform Specific Model Platforms: Web Services, ebXML, J2EE/EJB, CORBA, MS .Net, … OMG 7 MDA From 30.000 Feet J2EE .Net A PIM can be retargeted to different platforms Not the only reason why MDA might be of interest to you… OMG 8 4 MDA Overview Platform Independent Model OMG Domain Models Enterprise models Model composition <<realize>> Platform Specific Model Platform-specific artifacts map Non-normative configuration Enterprise Deployment Model Versioned repository Enterprise- And Supplier-Specific configuration map Evolution management: •Business, model, technology, deployment OMG 9 Our approach: reflective and layered architecture QVT language pattern QVTCommon Language Layered QVT-Language approach QVT Mapping QVT-Specific Language QVT-Specific Language QVT-Specific Language Transformatio n QVT-Specific Language QVT-Common Language QVT-Specific Language QVT-RepostiroryAPI OMG 10 5 Automation in Software Development Requirements Requirements Manually implement Requirements Manually implement Manually implement High-level spec (functional and nonfunctional) Source in domain-specific language (DSL) Source in domain-specific language (DSL) Compile Source in a general-purpose language, e.g., Java or C++ Compile Implementation Compile (may generate code in Java or C++) (may generate code in Java or C++) Compile Implementation Implement with Interactive, automated support Compile Implementation OMG 11 Basic MDA Pattern Generic transformations PIM • Additional information • Model markup – Implement best practices, architectural and design patterns, technology patterns (e.g., J3EE patterns), optimizations, etc. Additional information Transformation – Adjust the transformation globally – Similar to compiler options Generic transformation Model markup – Direct the transformation of particular model elements – Not part of the PIM – Different platform mappings may require different markup – Similar to compiler pragmas PSM OMG 12 6 Basic MDA Pattern The basic pattern can be applied multiple times PIMs and PSMs are relative notions – “Someone’s PIM can be someone else’s PSM” Platform independence is relative, too – It’s a scoping issue – It’s a strategic decision OMG 13 Different Abstraction Levels and Multiple PSMs Business Modelling language Domain Model Technology patterns Application models Application Modelling Languages Coding patterns Coding languages Application OMG 14 7 OMG QVT Standard – Current status – Objective of the QVT standard • Define a language to express queries, views and transformations on models – Maturity for the final standard • • • • Initial submission (2003-03) : 8 submissions Revised submission (2003-08): 5 submissions + Kennedy Carter in list 2nd revised submission (2004-01) 3rd revised submission (2005-01), QVT-Merge – Major obstructions: • Consortiums with different or opposite paradigms for model transformation • Current QVT requirements are not user driven, but more technically oriented – e.g. no requirement guarantees QVT code portability (e.g. for rule engines) OMG 15 Our approach: The Pivot Technique QVT Common Language Language Layer Metamodel Abstract Syntax Layer Model Concrete Syntax Layer Instance Execution Layer Execution QVT Specific Language 1 To be standardized Infrastructure R4, R5 Transf. specification (abstract) Transf. specification (concrete) Common semantics (public and shareable) Advanced semantics (private) Proprietary semantics (requires proprietary EE) R2 Mapping constrains Interoperability through Transf. common semantics across Transf. realization transformation componentsrealization (abstract) (abstract) Transf. of transf. spec. to bridge semantics Transf. of transf. spec. to bridge semantics Mapping constrains R4, R5 Transf. specification (abstract) R3 + Proprietary Transf. of transf. spec. to bridge semantics QVT Specific Language 2 Public Interoperability through common semantics across transformation components Private OS, libraries… Private QVT R1 Execution Surface OMG Public Transf. of transf. spec. to bridge semantics Transf. specification (concrete) Model Repository 16 8 Many different views… OMG 17 Microsoft – Software Factories Domain Specific Languages ….. OMG 18 9 OMG TC – Burlingame, 31/1-4/2, 2005 Meeting agenda OMG 19 Business Modeling Packages Busine ss Modeling Strategy Business Process Definition MetaMode l Va lue Chain Organization Busine ss Function Organiza tional Structure Va lue Chain Process Organiza tional Proce ss System Functiona l Mode ling OMG 20 10