Software aging
@article{Parnas1994SoftwareA, title={Software aging}, author={David Lorge Parnas}, journal={Proceedings of 16th International Conference on Software Engineering}, year={1994}, pages={279-287} }
Programs, like people, get old. We can't prevent aging, but we can understand its causes, take steps to limits its effects, temporarily reverse some of the damage it has caused, and prepare for the day when the software is no longer viable. A sign that the software engineering profession has matured will be that we lose our preoccupation with the first release and focus on the long-term health of our products. Researchers and practitioners must change their perception of the problems of…
984 Citations
Modeling and Analysis of Software Aging Process
- Computer SciencePROFES
- 2000
A model of successful maintenance that can represent how maintainability of each software module changes as it ages is proposed and some of the metrics fit the model; i.e., values of those metrics seem to be proportional to the degree of maintainability.
Twenty years of software aging research
- Computer Science
- 2014
It is argued these two visions of software aging should be reconciled, in the hope to open new research areas able to provide a wider and deeper understanding of the very nature ofSoftware aging phenomena.
Causes of premature aging during software development: an observational study
- Computer ScienceIWPSE-EVOL '11
- 2011
This study examines three projects at code level and finds many negative changes causing anti-patterns, at the package, class, and method levels, and finds the specific reasons for the poor design decisions.
The Dual Nature of Software Aging: Twenty Years of Software Aging Research
- Computer Science2014 IEEE International Symposium on Software Reliability Engineering Workshops
- 2014
It is argued these two visions of software aging should be reconciled, in the hope to open new research areas able to provide a wider and deeper understanding of the very nature ofSoftware aging phenomena.
Challenges in software evolution
- Computer ScienceEighth International Workshop on Principles of Software Evolution (IWPSE'05)
- 2005
This article describes what it believes to be some of the most important research challenges in software evolution.
Prolonging the Aging of Software Systems
- Computer Science
- 2009
In this chapter, the notions of software aging and activities undertaken during maintenance are reviewed and challenges and trends for the development of well-maintained systems as well as for aiding in the maintenance of legacy systems are discussed.
Evaluating design decay during software evolution
- Computer Science
- 2012
The approach considers changes to a class as an earthquake that propagates through a long chain of intermediary classes, i.e., how far a change propagation will proceed from a “changed class” to other classes, to measure the scope of change propagation in a system.
On the Evolution of Source Code and Software Defects
- Computer Science
- 2012
Evidence is provided that an integrated view of software evolution, combining source code and software defects information, supports an extensible set of software maintenance tasks.
Challenges in Software Evolution Conference or Workshop Item
- Computer Science
- 2018
This article describes what it believes to be some of the most important research challenges in software evolution, and provides novel research directions in the software evolution domain.
Evolving Critical Systems
- Computer Science2015 Asia-Pacific Software Engineering Conference (APSEC)
- 2015
A research agenda is addressed for building software in computer based systems that is highly reliable and retains this reliability as it evolves, either over time or at run-time and is illustrated with a complex example from the domain of space exploration.
References
SHOWING 1-10 OF 13 REFERENCES
The Modular Structure of Complex Systems
- Computer ScienceIEEE Transactions on Software Engineering
- 1985
This paper shows how the software design technique known as information hiding, or abstraction, can be supplemented by a hierarchically structured document, which it is called a module guide, intended to allow both designers and maintainers to identify easily the parts of the software that they must understand, without reading irrelevant details.
Using documentation as a software design medium
- Computer Science, ArtThe Bell System Technical Journal
- 1981
A software design method based on the principles of separation of concerns and information hiding is described, and many elements of the design method are applied to the development of the No. 2 Service Evaluation System (SES), a multiprocessor data acquisition and transaction system.
Education for computing professionals
- EducationComputer
- 1990
The author examines the state of computer science education and discusses the trend whereby computer science graduates are ending up in engineering jobs, arguing that computer science programs must return to a classical engineering approach that emphasizes fundamentals.
Documentation of requirements for computer systems
- Computer Science[1993] Proceedings of the IEEE International Symposium on Requirements Engineering
- 1993
A functional approach to specifying the requirements of a computer system is discussed, a refinement of the method used in the A-7 aircraft software requirements model document.
Tabular Representation of Relations
- Computer Science
- 1992
10 classes of tables are described, giving their syntax and semantics, and several abbreviations that can be useful in tables are introduced.
Functional Documentation for Computer Systems Engineering (Version 2)
- CRL Report
- 1991
Towards a Formal Semantics of Tables ” , CRL Report 264
Functional Documentation for Computer Systems Engineering (Version 2)
- CRL Report 237,
- 1991
Normal and Inverted Function Tables
- CRL Report 265,CRL,
- 1993