Campus Units

Computer Science

Document Type

Conference Proceeding

Conference

International Conference on Fundamental Approaches to Software Engineering

Publication Version

Accepted Manuscript

Link to Published Version

https://doi.org/10.1007/978-3-642-19811-3_26

Publication Date

2011

Journal or Book Title

Fundamental Approaches to Software Engineering. FASE 2011. Lecture Notes in Computer Science

Volume

6603

First Page

371

Last Page

385

DOI

10.1007/978-3-642-19811-3_26

Conference Title

FASE 2011: Fundamental Approaches to Software Engineering

Conference Date

March 24-April 1, 2011

City

Tallinn, Estonia

Abstract

The ability to adapt software systems to fix bugs, add/change features without restarting is becoming important for many domains including but not limited to finance, social networking, control systems, etc. Fortunately, many ideas have begun to emerge under the umbrella term “dyanamic updating” to solve this problem. Dynamic updating is critical to address certain software evolution needs. Dynamic updating literature evaluates such systems in terms of coverage (i.e. what type of code changes are supported) and performance. However, we do not have a technique to analyze whether certain updating solution, based on its costs and benefits, is suitable for an application.

In this paper, we present a quantitative analysis model to fill this gap. Our model is parameterized and it can be instantiated with application-specific valuation functions. Given the software evolution history of the application under consideration, our model allows rigorous comparisons of the value of different software updating schemes (e.g. online vs. offline). We illustrate our model using two case studies inspired from the the evolution history of Xerces XML parser library and Apache httpd web server. Other case studies and evaluation examples are presented in our technical report [Gharaibeh, Rajan and Chang 09]. The proposed analysis scheme can serve system architects in evaluating their current updating scheme. For example, to audit the system’s value during previous development cycles and whether a different updating scheme will generate higher value.

Comments

The final publication is available at Springer via https://doi.org/10.1007/978-3-642-19811-3_26. Gharaibeh B., Rajan H., Chang J.M. (2011) Analyzing Software Updates: Should You Build a Dynamic Updating Infrastructure?. In: Giannakopoulou D., Orejas F. (eds) Fundamental Approaches to Software Engineering. FASE 2011. Lecture Notes in Computer Science, vol 6603. doi: 10.1007/978-3-642-19811-3_26. Posted with permission.

Copyright Owner

Springer-Verlag Berlin Heidelberg

Language

en

File Format

application/pdf

Published Version

Share

Article Location

 
COinS