Show simple item record

Principles for Safe and Automated Middleware Specializations for Distributed, Real-time and Embedded Systems

dc.creatorDabholkar, Akshay Vishwas
dc.date.accessioned2020-08-22T00:35:57Z
dc.date.available2012-04-23
dc.date.issued2012-04-23
dc.identifier.urihttps://etd.library.vanderbilt.edu/etd-04182012-070958
dc.identifier.urihttp://hdl.handle.net/1803/12191
dc.description.abstractDeveloping distributed applications, particularly those for distributed, real-time and embedded (DRE) systems, is a difficult and complex undertaking due to the need to address four major challenges: the complexity of programming interprocess communication, the need to support a wide range of services across heterogeneous platforms and promote reuse, the need to efficiently utilize resources, and the need to safely adapt to runtime conditions. The first two challenges are addressed to a large extent by standardized, general-purpose middleware. However, the need to support a large variety of applications in different domains has resulted in very feature-rich implementations of these standardized middleware. Consequently, this feature-richness acts counter productive to resolving the remaining two challenges; instead it incurs excessive memory footprint and performance overhead, as well as increased cost of testing and maintenance. Moreover, despite the richness in general-purpose features, middleware often lacks application-specific behavior that is needed to adapt to runtime conditions including faults. To address the four challenges all at once while leveraging the benefits of general-purpose middleware, this dissertation describes a scientific approach to specializing the middleware. To enable better comprehension, easier validation and to promote reuse, the dissertation presents a three dimensional taxonomy to document recurring specializations, and assess the strengths and weaknesses of the documented techniques. The principles of separation of concerns are used in the context of this taxonomy to define six stages of a middleware specialization process lifecycle. Finally, to overcome the accidental complexities stemming from the manual use of specialization techniques, such as aspect-oriented programming (AOP), feature-oriented programming (FOP), and reflection, the six-stage specialization process has been codified resulting in concrete tool artifacts that automate the specialization process for different requirements. The tooling resulting from this dissertation includes (1) FORMS (Feature Oriented Reverse Engineering based Middleware Specializations), which provides coarse-grained middleware feature pruning through a decision tree based reasoning of desired middleware features and a novel reverse-engineering algorithm, (2) GeMS (Generative Middleware Specializations), which provides fine-grained middleware feature pruning through an automated process that deduces the context for specializations through application invariant properties and subsequently optimizes the middleware design patterns and frameworks through generative source-to-source transformations, (3) GrAFT (Generative Aspects for Fault-Tolerance), which provides fine-grained middleware feature augmentation by weaving application-specific reliability concerns in system artifacts through model-to-text, model-to-code transformations, and (4) SafeMAT (Safe Middleware Adaptation for Real-Time Fault-Tolerance), which enables safe middleware adaptation to runtime failures while improving predictability and resource utilization within the hard real-time constraints.
dc.format.mimetypeapplication/pdf
dc.subjectlatency
dc.subjectfootprint
dc.subjectSpecialization
dc.subjectAlgorithms
dc.subjectGeneration
dc.subjectReal-time
dc.subjectDistributed
dc.subjectFault Tolerance
dc.subjectresource constrained
dc.subjectSystem-of-Systems
dc.subjectthroughput
dc.subjectOptimization
dc.subjectAdaptation
dc.subjectMiddleware
dc.subjectutilization
dc.subjectoverhead
dc.titlePrinciples for Safe and Automated Middleware Specializations for Distributed, Real-time and Embedded Systems
dc.typedissertation
dc.contributor.committeeMemberDr. Douglas Schmidt
dc.contributor.committeeMemberDr. Gabor Karsai
dc.contributor.committeeMemberDr. Jeffrey Gray
dc.contributor.committeeMemberDr. Janos Sztipanovits
dc.type.materialtext
thesis.degree.namePHD
thesis.degree.leveldissertation
thesis.degree.disciplineComputer Science
thesis.degree.grantorVanderbilt University
local.embargo.terms2012-04-23
local.embargo.lift2012-04-23
dc.contributor.committeeChairDr. Aniruddha Gokhale


Files in this item

Icon

This item appears in the following Collection(s)

Show simple item record