Automated Adaptive Software Maintenance: A Methodology and Its Applications

In modern software development, maintenance accounts for the majority of the total cost and effort in a software project. Especially burdensome are those tasks which require applying a new technology in order to adapt an application to changed requirements or a different environment. This research...

Full description

Bibliographic Details
Main Author: Tansey, Wesley
Other Authors: Computer Science
Format: Others
Published: Virginia Tech 2014
Subjects:
HPC
Online Access:http://hdl.handle.net/10919/33292
http://scholar.lib.vt.edu/theses/available/etd-05272008-161318/
id ndltd-VTETD-oai-vtechworks.lib.vt.edu-10919-33292
record_format oai_dc
spelling ndltd-VTETD-oai-vtechworks.lib.vt.edu-10919-332922020-09-26T05:36:05Z Automated Adaptive Software Maintenance: A Methodology and Its Applications Tansey, Wesley Computer Science Tilevich, Eli Ribbens, Calvin J. Back, Godmar V. Adaptive Maintenance Software Maintenance Upgrading Marshaling HPC Program Synthesis Frameworks Metadata In modern software development, maintenance accounts for the majority of the total cost and effort in a software project. Especially burdensome are those tasks which require applying a new technology in order to adapt an application to changed requirements or a different environment. This research explores methodologies, techniques, and approaches for automating such adaptive maintenance tasks. By combining high-level specifications and generative techniques, a new methodology shapes the design of approaches to automating adaptive maintenance tasks in the application domains of high performance computing (HPC) and enterprise software. Despite the vast differences of these domains and their respective requirements, each approach is shown to be effective at alleviating their adaptive maintenance burden. This thesis proves that it is possible to effectively automate tedious and error-prone adaptive maintenance tasks in a diverse set of domains by exploiting high-level specifications to synthesize specialized low-level code. The specific contributions of this thesis are as follows: (1) a common methodology for designing automated approaches to adaptive maintenance, (2) a novel approach to automating the generation of efficient marshaling logic for HPC applications from a high-level visual model, and (3) a novel approach to automatically upgrading legacy enterprise applications to use annotation-based frameworks. The technical contributions of this thesis have been realized in two software tools for automated adaptive maintenance: MPI Serializer, a marshaling logic generator for MPI applications, and Rosemari, an inference and transformation engine for upgrading enterprise applications. This thesis is based on research papers accepted to IPDPS '08 and OOPSLA '08. Master of Science 2014-03-14T20:38:48Z 2014-03-14T20:38:48Z 2008-05-22 2008-05-27 2008-08-11 2008-08-11 Thesis etd-05272008-161318 http://hdl.handle.net/10919/33292 http://scholar.lib.vt.edu/theses/available/etd-05272008-161318/ thesis.pdf In Copyright http://rightsstatements.org/vocab/InC/1.0/ application/pdf Virginia Tech
collection NDLTD
format Others
sources NDLTD
topic Adaptive Maintenance
Software Maintenance
Upgrading
Marshaling
HPC
Program Synthesis
Frameworks
Metadata
spellingShingle Adaptive Maintenance
Software Maintenance
Upgrading
Marshaling
HPC
Program Synthesis
Frameworks
Metadata
Tansey, Wesley
Automated Adaptive Software Maintenance: A Methodology and Its Applications
description In modern software development, maintenance accounts for the majority of the total cost and effort in a software project. Especially burdensome are those tasks which require applying a new technology in order to adapt an application to changed requirements or a different environment. This research explores methodologies, techniques, and approaches for automating such adaptive maintenance tasks. By combining high-level specifications and generative techniques, a new methodology shapes the design of approaches to automating adaptive maintenance tasks in the application domains of high performance computing (HPC) and enterprise software. Despite the vast differences of these domains and their respective requirements, each approach is shown to be effective at alleviating their adaptive maintenance burden. This thesis proves that it is possible to effectively automate tedious and error-prone adaptive maintenance tasks in a diverse set of domains by exploiting high-level specifications to synthesize specialized low-level code. The specific contributions of this thesis are as follows: (1) a common methodology for designing automated approaches to adaptive maintenance, (2) a novel approach to automating the generation of efficient marshaling logic for HPC applications from a high-level visual model, and (3) a novel approach to automatically upgrading legacy enterprise applications to use annotation-based frameworks. The technical contributions of this thesis have been realized in two software tools for automated adaptive maintenance: MPI Serializer, a marshaling logic generator for MPI applications, and Rosemari, an inference and transformation engine for upgrading enterprise applications. This thesis is based on research papers accepted to IPDPS '08 and OOPSLA '08. === Master of Science
author2 Computer Science
author_facet Computer Science
Tansey, Wesley
author Tansey, Wesley
author_sort Tansey, Wesley
title Automated Adaptive Software Maintenance: A Methodology and Its Applications
title_short Automated Adaptive Software Maintenance: A Methodology and Its Applications
title_full Automated Adaptive Software Maintenance: A Methodology and Its Applications
title_fullStr Automated Adaptive Software Maintenance: A Methodology and Its Applications
title_full_unstemmed Automated Adaptive Software Maintenance: A Methodology and Its Applications
title_sort automated adaptive software maintenance: a methodology and its applications
publisher Virginia Tech
publishDate 2014
url http://hdl.handle.net/10919/33292
http://scholar.lib.vt.edu/theses/available/etd-05272008-161318/
work_keys_str_mv AT tanseywesley automatedadaptivesoftwaremaintenanceamethodologyanditsapplications
_version_ 1719341926087393280