Context: Component-based middleware, such as the Lightweight COR-BA Component Model, is increasingly used to implement enterprise distributed real-time and embedded (DRE) systems. In addition to supporting the quality-of-service (QoS) requirements of individual DRE systems, component technologies must also support bounded latencies when effecting deployment changes to DRE systems in response to changing environmental conditions and operational requirements.Objective: The goals of this paper are to (1) study sources of inefficiencies and non-deterministic performance in deployment capabilities for DRE systems and (2) devise solutions to overcome these performance problems.Method: The paper makes two contributions to the study of the deployment and configuration of distributed component based applications. First, we analyze how conventional implementations of the OMG's Deployment and Configuration (D&C) specification for component-based systems can significantly degrade deployment latencies. Second, we describe architectural changes and performance optimizations implemented within the LocalityEnhanced Deployment and Configuration Engine (LE-DAnCE) implementation of the D&C specification to obtain efficient and deterministic deployment latencies.Results: We analyze the performance of LE-DAnCE in the context of component deployments on 10 nodes for a representative DRE system consisting of 1,000 components and in a cluster environment with up to 100 nodes. Our results show LE-DAnCE's optimizations provide a bounded dePreprint submitted to Information and Software Technology July 27, 2012 ployment latency of less than 2 seconds for the 1,000 component scenario with just a 4 percent jitter.
Conclusion:The improvements contained in the LE-DAnCE infrastructure provide an efficient and scaleable standards-based deployment system for component-based enterprise DRE systems. In particular, deployment time parallelism can improve deployment latency significantly, both during pre-deployment analysis of the deployment plan and during the process of installing and activating components.