Seminars & Colloquia
"Understanding the Evolution of Large Software Systems"
Wednesday March 16, 2005 10:00 AM
Location: 402-A, Withers NCSU Historical Campus
(Visitor parking instructions)
Abstract: Successful software products are constantly being changed to adapt to changing customer needs. Furthermore, as software systems become larger, rewriting becomes an increasingly expensive proposition. Thus it is to a software organization's economic interest to ensure the continued viability of evolving its products. However, it is also well known that changing aging software is an activity fraught with risks. We examined this problem in the context of evolving Lucent's 5ESS software. I present two case studies to illustrate our approach towards characterizing this problem and assessing potential solutions.
The goal of problem characterization is to investigate why software gets harder to change over time, resulting in an increasing potential for defects and thus impeding the evolution of the system. A retrospective case study was conducted to identify the metrics that can be used to quantify this phenomenon. Results suggest that software does get harder to change over time as evidenced by the increasing interconnection of changes and the higher defect potential of relatively more recent changes. At the same time, more complex changes are averted or minimized by introducing changes into the organization and its development process.
The goal of solution assessment is to evaluate measures taken to mitigate this problem, especially in the area of technology support. A retrospective case study was conducted to quantify the effects of one such technology, domain engineering, on developer effort, quality and interval. Results show that technologies such as domain engineering can reduce effort, defects and interval, facilitating the continued development of new software features and offsetting the high cost of integrating such technologies into the development process.
This talk concludes with a discussion of the benefits and limitations of these kinds of studies and the feasibility of more controlled empirical studies in an industrial environment. I also outline some directions for future research.
Short Bio: Harvey Siy received his B.S. degree in Computer Science from University of the Philippines in 1989, and M.S. and Ph.D. degrees in Computer Science from University of Maryland at College Park in 1994 and 1996, respectively. He is a member of technical staff at Lucent Technologies responsible for capacity and performance engineering of telecommunication switches. He was previously with the Software Production Research Department of Bell Labs, where he conducted empirical studies of large scale, industrial software engineering processes.
Host: Ana Anton, Associate Professof, Computer Science Department, NCSU
No media files available at this time
Host is responsible for requesting video recording by filling out this Web form. For other technical issues, contact us at email@example.com.
No streaming video available at this time