Presentation is loading. Please wait.

Presentation is loading. Please wait.

Component-based System Integration via (Meta)Model Composition

Similar presentations


Presentation on theme: "Component-based System Integration via (Meta)Model Composition"— Presentation transcript:

1 Component-based System Integration via (Meta)Model Composition
4/25/2017 Component-based System Integration via (Meta)Model Composition Krishnakumar Balasubramanian, Douglas C. Schmidt, Zoltán Molnár, Ákos Lédeczi Kitty, here are my main comments: . You MUST work on not looking at your slides & reading them. This is very disconcerting & will cause your audience to not pay attention to what you’re saying. Vanderbilt University Nashville, Tennessee Institute for Software Integrated Systems

2 Motivating Application
System Domain Shipboard Computing On-demand situation awareness Integration with human operators Distributed System Different client applications Differentiated services to clients Originally built using CORBA Component Model (CCM) Need to integrate with W3C Web Service Clients

3 Component-based System Integration
Integration can be done at multiple levels Data integration Presentation Integration Portal Integration Process Integration Functional Integration System refers to software systems built using Service-Oriented Architecture (SOA) technologies like Web Services Component middleware technologies like Enterprise Java Beans (EJB), CORBA Component Model (CCM) System Integration refers to functional integration done via Distributed Object Integration Service-Oriented Integration

4 Functional Integration Challenges (1/5)
Choosing an appropriate level of integration Select elements from the different technologies Selection Criteria Number of normalizations To/from native types Flexibility of deployment In-process/Out-of-process Evolving the integration architecture Increasing the number of peers integrated Availability of platform-specific infrastructure OS, languages

5 Functional Integration Challenges (2/5)
Reconciling differences in interface specifications Map interface specifications between different technologies Datatype Mapping e.g., CORBA IDL to Web Services WSDL Exception Mapping e.g., SOAP faults to CORBA Exception Language Mapping Different source/target implementation languages Limited scope at level of functional integration Restricted to out-of-process IPC

6 Functional Integration Challenges (3/5)
Reconciling differences in implementation technologies Map low-level technology details such as networking, discovery Protocol Mapping e.g., Internet Inter-ORB Protocol (IIOP) in CCM vs. SOAP in Web Services Discovery Mapping e.g., CORBA Naming Service vs. UDDI repositories Quality of Service (QoS) mapping Ensure service-level agreements are met

7 Functional Integration Challenges (4/5)
Managing deployment of subsystems Declarative notations used to capture various configuration options e.g., CCM deployment descriptors, .NET assembly manifests Functionality of system depends on correct configuration of metadata Development-time default values different from production values e.g., security configuration of Web Servers hosting Web Services

8 Functional Integration Challenges (5/5)
Interoperability issues Multiple implementations of same middleware technology Differences between implementations e.g., Java Web Services stack vs. .NET Web Services stack Problems show up only during system integration e.g., existence of standards like Web Services-Interoperability (WS-I) Need to deal with interoperability issues in a less than ideal world

9 Model-Driven Engineering (MDE)-based Solution
System Integration Modeling Language Developed using Generic Modeling Environment (GME) Part of Component Synthesis using Model-Integrated Computing (CoSMIC) toolchain Capture elements & dependencies visually Define “static semantics” using Object Constraint Language (OCL) Defines “dynamic semantics” via model interpreters Generates domain-specific artifacts

10 System Integration Modeling Language (SIML)
Hierarchical composition from multiple sub-domain-specific Modeling Languages (DSMLs) CCM  Platform-Independent Component Modeling Language (PICML) Web Services  Web Services Modeling Language (WSML) Built in a reusable & extensible fashion “Open-Closed” principle New languages can be added; existing ones reused Preserve existing investment in tools Existing tools work seamlessly in composite DSML

11 Key Properties of (Meta-)Model Composition
Representation of independent concepts Concepts in sub-DSMLs preserved, i.e., no merging of independent concepts Allows Import/Export Supporting model evolution Sub-DSMLs packaged as read-only model libraries Changes to original DSML propagated through library refresh Partitioning model namespaces Sub-DSMLs assigned separate namespaces Handling constraints Namespaces used to provide appropriate context for constraint evaluation

12 Enabling Technology: Usage Scenarios
SIML targets system developers & integrators System Developers Use DSML of corresponding technology Assists in automating key deployment activities Used during development of individual sub-systems System Integrators Use the integration DSML Assists in combining sub-systems together Used during integration of the whole system

13 Resolving Challenge 1 : Choosing Integration Level
Combination of pre-defined & customizable integration levels Pre-defined interactions CCM Ports  Web Service Ports User-defined interactions Component level Assembly level SIML defines new interactions between CCM ports and Web Services ports Allows integration of other middleware technologies e.g., Enterprise Java Beans

14 Resolving Challenge 2: Reconciling Differences in Interfaces
SIML provides a set of tools idl_to_wsdl, idl_to_picml, WSDLImporter Performs datatype mapping Maps CORBA datatypes to WSDL datatypes Performs exception mapping Maps CORBA exceptions to WSDL faults Both IDL and WSDL can be directly imported into models Limited language mapping Maps ISO/ANSI C++ to Microsoft C++/CLI

15 Resolving Challenge 3: Handling Implementation Differences
Resource Adapters are typically used to bridge implementation differences SIML implements resource adapters via Gateways Automatically generates gateways from models Perform protocol mapping IIOP SOAP mapping Perform discovery mapping Connects to CORBA Naming Service Configurable gateway generation GSOAP, Microsoft .NET Web Services

16 Resolving Challenge 4: Managing Heterogeneous Deployment
Deployment of sub-systems requires different mechanisms SIML can use existing tools for individual sub-system deployment Possible because of model composition Deployment metadata configuration & generation Directly from within SIML CCM DeploymentPlan.exe Web Services WSDLExporter.exe

17 Resolving Challenge 5: Handling Interoperability Differences
Knowledge of sub-DSML technologies built into SIML Allows compensating for interoperability differences idl_to_wsdl.exe Maps IDL to WS-I defined subset of WSDL GatewayGenerator.exe Inter-operable subset of RPC encoding WSDLExporter.exe Interoperable XML namespaces in WSDL Newly discovered incompatibilities can be worked around 

18 Related Work Integration Evaluation Tools
Evaluate integration strategy and tools, e.g., IBM’s WebSphere System Execution Modeling Tools Smith, C., & Williams, L. (2001). Performance Solutions Integration Design Tools UML profile for Enterprise Application Integration (EAI) Integration Patterns Hohpe, G., & Woolf, B. (2003). Enterprise Integration Patterns Resource Adapters Java Messaging Specification & J2EE Connector Architecture IBM’s MQSeries (IBM, 1999), Microsoft BizTalk Server Integration frameworks Semantic Web (OWL), GRID System Integration (Foster, 2002), QoS-aware service composition (Zeng et al., 2004) Integration Quality Analysis Web Service-Level Agreement language (WSLA) (Ludwig, 2003)

19 Available as Open-Source tools http://www.dre.vanderbilt.edu/CoSMIC
Concluding Remarks Model-Driven Engineering (MDE)-based approach to functional integration of component-based systems Based on (Meta-)Model Composition System Integration Modeling Language (SIML) Domain-Specific Modeling Language (DSML) for functional integration Composed from DSMLs for two different middleware technologies CORBA Component Model Web Services Available as Open-Source tools

20 Questions?


Download ppt "Component-based System Integration via (Meta)Model Composition"

Similar presentations


Ads by Google