Optimization Techniques for Enhancing Middleware Quality of Service for Product-line Architectures

Loading...
Thumbnail Image

Journal Title

Journal ISSN

Volume Title

Publisher

Abstract

Product-line architectures (PLA)s are an emerging paradigm for developing software families by customizing reusable artifacts, rather than hand-crafting the software from scratch. In this paradigm, each product variant is assembled, configured, and deployed based on specifications of the required features and service-level agreements. To reduce the effort of developing software PLAs and product variants, it is common to leverage general-purpose -- ideally standard -- middleware platforms. These middleware platforms provide reusable services and mechanisms (such as connection management, data transfer protocols, concurrency control, demultiplexing, marshaling/demarshaling, and error-handling) that support a broad range of application requirements (such as efficiency, predictability, and minimizing end-to-end latency). A key challenge faced by developers of software PLAs is how to optimize standards-based -- and thus largely application-independent -- middleware to support the application-specific quality of service (QoS) needs of different product variants created atop a PLA.

This dissertation provides four contributions to research on optimizing middleware for PLAs. First, it describes the evolution of optimization techniques for enhancing application-independent middleware to support the application-specific QoS needs of PLAs. Second, it presents a taxonomy that categorizes the evolution of this research in terms of (1) applicability, i.e., are the optimizations applicable across variants or specific to a variant, and (2) binding time, i.e., when are the optimizations applied during the middleware development lifecycle. Third, this taxonomy is applied to identify key challenges that have not been resolved by current research on PLAs, including reducing the complexity of subsetting, configuring, and specializing middleware for PLAs to satisfy the QoS requirements of product variants. Finally, the dissertation describes the OPTEML solution approach that synergistically addresses key unresolved research challenges via optimization strategies that encompass pattern-oriented, model-driven development, and specialization techniques to enhance the QoS and flexibility of middleware for PLAs. These optimizations have been prototyped, integrated, and validated in the context of several representative applications using middleware developed with Real-time Java and C++.

Description

Keywords

quality of service, middleware specialization, optimizations techniques, Middleware, Software product line engineering

Citation

Endorsement

Review

Supplemented By

Referenced By