DocumentCode :
1263446
Title :
Software archaeology
Author :
Hunt, A. ; Thomas, David
Volume :
19
Issue :
2
fYear :
2002
Firstpage :
20
Lastpage :
22
Abstract :
“This isn´t programming, this is archaeology”! the programmer complained, wading through the ancient rubble of some particularly crafty pieces of code. It´s a pretty good analogy, actually. In real archaeology, you´re investigating some situation, trying to understand what you´re looking at and how it all fits together. To do this, you must be careful to preserve the artifacts you find and respect and understand the cultural forces that produced them. But we don´t have to wait a thousand years to try to comprehend unfathomable artifacts. Code becomes legacy code just about as soon as it´s written, and suddenly we have exactly the same issues as the archaeologists. What are we looking at? How does it fit in with the rest of the world? And what were they thinking? It seems we´re always in the position of reading someone else´s code: either as part of a code review, or trying to customize a piece of open source software, or fixing a bug in code that we´ve inherited
Keywords :
software engineering; code review; legacy code; open source software; software archaeology; Computer aided software engineering; Databases; Engines; Humans; Indexing; Java; Programming profession; Terminology; Unified modeling language; Writing;
fLanguage :
English
Journal_Title :
Software, IEEE
Publisher :
ieee
ISSN :
0740-7459
Type :
jour
DOI :
10.1109/52.991327
Filename :
991327
Link To Document :
بازگشت