Cos MIC Toolchain Krishnakumar Balasubramanian kittydre vanderbilt edu
Cos. MIC Tool-chain Krishnakumar Balasubramanian kitty@dre. vanderbilt. edu 1/23/2022
Cos. MIC Tool-chain Overview • Deployment & Configuration – Goals • Hands-on Tutorial – Generic Modeling Environment – Links in the Cos. MIC tool-chain – Existing Tools – Planned Tools – Demo of COMPASS Krishnakumar B 2
Cos. MIC Tool-chain CCM Deployment & Configuration (D&C) Spec • New “D&C” spec was adopted recently by OMG • New set of descriptors • XML schema is used instead of plain XML DTDs • Intended to replace Packaging & Deployment chapter of CCM specification • Platform Independent Model (PIM) • Defined in two dimensions – Data models vs. management (run-time) models – Component software vs. target vs. execution Krishnakumar B 3
Cos. MIC Tool-chain Platform-Independent Model (PIM) Dimensions • Modeling view-points – Conceptual, logical, & physical view-point • Platform-independent model – Conceptual & logical viewpoint of deployment & configuration • Defined in two-dimensions PIM Data Model Run-time Model Component Software Meta-data to describe component based applications and their requirements Interfaces to browse, store and retrieve such meta-data Target Meta-data to describe heterogeneous distributed systems & their capabilities Interfaces to collect & retrieve such meta-data and commit resources Execution Meta-data to describe a specific Prepare environment, Execute deployment of an application into a on target to Deployment plan, distributed system manage lifecycle Krishnakumar B 4
Cos. MIC Tool-chain PIM Mapping to CCM • Physical viewpoint – Mapping from PIM to Platform Specific Model (PSM) for CCM • Set of transformations – T 1 PIM to PSM for CCM – T 2 PSM to • PSM for IDL • PSM for XML • Set of Mapping rules – M 1 PSM to IDL – M 2 PSM to XML Schema Krishnakumar B 5
Cos. MIC Tool-chain • Descriptors are passive entities • Manipulated by Actors • Different Stages – Development • Developer • Assembler • Packager – Target • Domain Administrator – Deployment • Repository Administrator • Planner • Executor • Actors are abstract Krishnakumar B D&C Actors 6
Cos. MIC Tool-chain Files in the Component Packaging Stage • Component Interface Descriptor (. ccd) – Describes the interface, ports, properties of a single component • Implementation Artifact Descriptor (. iad) – Describes the implementation artifacts (e. g. , DLLs, OS, etc. ) of a single component • Component Package Descriptor (. cpd) – Describes multiple alternative implementations of a single component • Top-level Package Descriptor (package. pcd) – Describes the top-level component package in a package (. cpk) Krishnakumar B 7
Cos. MIC Tool-chain Files in the Application Assembly Stage • Component Implementation Descriptor (. cid) – Describes a specific implementation of a component interface – Implementation can be either monolithic- or assembly-based – Contains sub-component instantiations in case of assembly based implementations – Contains inter-connection information between components • Component Packages (. cpk) – A component package can contain a single component – A component package can also contain an assembly Krishnakumar B 8
Cos. MIC Tool-chain Component Implementation Specifications Rate Generator Positioning Sensor Displaying Device <!–-Component Implementation Descriptor(. cid) associates components with impl. artifacts--> <Deployment: Component. Implementation. Description > <label>GPS Implementation</label> <UUID>154 cf 3 cd-1770 -4 e 92 -b 19 b-8 c 2 c 921 fea 38</UUID> <implements href="GPS. ccd"/> <monolithic. Impl> <primary. Artifact> <name>GPS Implementation artifacts</name> <referenced. Artifact href="GPS. iad"/> </primary. Artifact> </monolithic. Impl> </Deployment: Component. Implementation. Description > Krishnakumar B 9
Cos. MIC Tool-chain Interconnection Specification Rate Generator Positioning Sensor Displaying Device • A Component Implementation Descriptor (. cid) also specifies how component instances are connected together Krishnakumar B <Deployment: Component. Implementation. Description > <label>HUDDisplay Implementation</label> <assembly. Impl> <instance xmi: id="a_GPS"> <name>GPS Component</name> <reference href="GPS. cpd"/> </instance> <instance xmi: id="a_Rate. Gen"> <name>Rate. Gen Component</name> <reference href="Rate. Gen. cpd"/> </instance>. . . <connection> <name>GPS-Rate. Gen</name> <internal. Endpoint> <port. Name>Refresh</port. Name> <instance xmi: idref="a_GPS"/> </internal. Endpoint> <port. Name>Pulse</port. Name> <instance xmi: idref="a_Rate. Gen"/> </internal. Endpoint> </connection> </assembly. Impl> </Deployment: Component. Implementation. Description > 10
Cos. MIC Tool-chain Files in the System Deployment Stage • Component Domain Descriptor (. cdd) – Describes “Domains” • Domains are composed of nodes, inter-connects, bridges – Can describe shared resources – Allows for tracking resource consumption • Component Deployment Plan (. cdp) – Deployment plan descriptor – Describes artifacts of deployment – Information to create component instances from artifacts – Information about interconnections – Information about where to instantiate component instances – Flattened assembly Krishnakumar B 11
Cos. MIC Tool-chain Questions ? Krishnakumar B 12
- Slides: 12