Share to: share facebook share twitter share wa share telegram print page

Software archaeology

Software archaeology or source code archeology is the study of poorly documented or undocumented legacy software implementations, as part of software maintenance.[1][2] Software archaeology, named by analogy with archaeology,[3] includes the reverse engineering of software modules, and the application of a variety of tools and processes for extracting and understanding program structure and recovering design information.[1][4] Software archaeology may reveal dysfunctional team processes which have produced poorly designed or even unused software modules, and in some cases deliberately obfuscatory code may be found.[5] The term has been in use for decades.[6]

Software archaeology has continued to be a topic of discussion at more recent software engineering conferences.[7]

Techniques

A workshop on Software Archaeology at the 2001 OOPSLA (Object-Oriented Programming, Systems, Languages & Applications) conference identified the following software archaeology techniques, some of which are specific to object-oriented programming:[8]

More generally, Andy Hunt and Dave Thomas note the importance of version control, dependency management, text indexing tools such as GLIMPSE and SWISH-E, and "[drawing] a map as you begin exploring."[8]

Like true archaeology, software archaeology involves investigative work to understand the thought processes of one's predecessors.[8] At the OOPSLA workshop, Ward Cunningham suggested a synoptic signature analysis technique which gave an overall "feel" for a program by showing only punctuation, such as semicolons and curly braces.[9] In the same vein, Cunningham has suggested viewing programs in 2 point font in order to understand the overall structure.[10] Another technique identified at the workshop was the use of aspect-oriented programming tools such as AspectJ to systematically introduce tracing code without directly editing the legacy program.[8]

Network and temporal analysis techniques can reveal the patterns of collaborative activity by the developers of legacy software, which in turn may shed light on the strengths and weaknesses of the software artifacts produced.[11]

Michael Rozlog of Embarcadero Technologies has described software archaeology as a six-step process which enables programmers to answer questions such as "What have I just inherited?" and "Where are the scary sections of the code?"[12] These steps, similar to those identified by the OOPSLA workshop, include using visualization to obtain a visual representation of the program's design, using software metrics to look for design and style violations, using unit testing and profiling to look for bugs and performance bottlenecks, and assembling design information recovered by the process.[12] Software archaeology can also be a service provided to programmers by external consultants.[13]

In popular culture

The profession of "programmer–archaeologist" features prominently in Vernor Vinge's 1999 sci-fi novel A Deepness in the Sky. [14]

See also

References

  1. ^ a b Robles, Gregorio; Gonzalez-Barahona, Jesus M.; Herraiz, Israel (2005). "An Empirical Approach to Software Archaeology" (PDF). Poster Proceedings of the International Conference on Software Maintenance.
  2. ^ Ambler, Scott W. "Agile Legacy System Analysis and Integration Modeling". agilemodeling.com. Retrieved 2010-08-20. Without accurate documentation, or access to knowledgeable people, your last resort may be to analyze the source code for the legacy system... This effort is often referred to as software archaeology.
  3. ^ Moyer, Bryon (4 March 2009). "Software Archeology: Modernizing Old Systems" (PDF). Embedded Technology Journal.
  4. ^ Hopkins, Richard; Jenkins, Kevin (2008). "5. The Mythical Metaman". Eating the IT Elephant: Moving from greenfield development to brownfield. Addison-Wesley. p. 93. ISBN 978-0-13-713012-2.
  5. ^ Spinellis, Diomidis; Gousios, Georgios (2009). "2. A Tale of Two Systems § Lack of Cohesion". Beautiful Architecture. O'Reilly. p. 29. ISBN 978-0-596-51798-4.
  6. ^ An early discussion is Grass, Judith E. (Winter 1992). "Object-Oriented Design Archaeology with CIA++" (PDF). Computing Systems. 5 (1).
  7. ^ For example, the "32nd ACM/IEEE International Conference on Software Engineering". May 2010..
  8. ^ a b c d Hunt, Andy; Thomas, Dave (March–April 2002). "Software Archaeology" (PDF). IEEE Software. 19 (2): 20–22. doi:10.1109/52.991327.
  9. ^ Cunningham, Ward (2001). "Signature Survey: A Method for Browsing Unfamiliar Code". Workshop Position Statement, Software Archeology: Understanding Large Systems, OOPSLA 2001.
  10. ^ Cook, John D. (10 November 2009). "Software Archeology". The Endeavour.
  11. ^ de Souza, Cleidson; Froehlich, Jon; Dourish, Paul (2005). "Seeking the Source: Software Source Code as a Social and Technical Artifact" (PDF). Proceedings of the 2005 International ACM SIGGROUP Conference on Supporting Group Work. pp. 197–206. doi:10.1145/1099203.1099239. ISBN 1595932232.
  12. ^ a b Rozlog, Michael (28 January 2008). "Software Archeology: What Is It and Why Should Java Developers Care?". java.sys-con.com.
  13. ^ Sharwood, Simon (3 November 2004). "Raiders of the Lost Code". ZDNet.
  14. ^ Rees, Gareth (2013-06-12). "Software archaeology and technical debt".

External links

Read other articles:

Map of countries Benedict XVI has visited With an average of three foreign journeys per year from 2006 to 2009, Pope Benedict XVI was as active in visiting other countries as his predecessor, John Paul II, was at the same age from 1999 to 2002. Pope Benedict was more active since then, however, making five foreign journeys each in both 2010 and 2011, significantly more than the six total trips made by Pope John Paul II at the same age in 2003 and 2004. As of the 2012 apostolic journey to Mexico …

Questa voce sull'argomento calciatori estoni è solo un abbozzo. Contribuisci a migliorarla secondo le convenzioni di Wikipedia. Segui i suggerimenti del progetto di riferimento. Oskar Üpraus Nazionalità  Estonia Altezza 165 cm Peso 68 kg Calcio Ruolo Attaccante Termine carriera 1927 Carriera Squadre di club1 1920-1927 Sport Tallinn? (?) Nazionale 1920-1927 Estonia26 (7) 1 I due numeri indicano le presenze e le reti segnate, per le sole partite di campionato.Il simbolo → indic…

NA-111 Nankana Sahib-IConstituencyfor the National Assembly of PakistanRegionSangla Hill TehsilShah Kot TehsilNankana Sahib Tehsil (partly) of Nankana Sahib DistrictElectorate411,484Current constituencyMember(s)VacantCreated fromNA-135 Nankana Sahib-I-cum-SheikhupuraNA-136 Nankana Sahib-II-cum-SheikhupuraNA-137 Nankana Sahib-III NA-111 Nankana Sahib-I (این اے-111، ننکانہ صاحب-١) is a constituency for the National Assembly of Pakistan.[1] Area During the delimitation of 2…

Bendera Kabupaten Miaoli. Kabupaten Miaoli (Hanzi: 苗栗縣) adalah sebuah kabupaten di Taiwan, Republik Tiongkok. Kabupaten ini identik sebagai pusat dari populasi Orang Hakka-Taiwan di samping Kabupaten Hsinchu. Kabupaten ini terletak di Taiwan bagian utara, secara geografis berbatasan dengan: Utara: Kabupaten Hsinchu Timur: Kabupaten Hsinchu Selatan: Kabupaten Taichung Barat: Selat Taiwan Kabupaten ini beribu kota di Kota Miaoli. lbsPembagian administratif Republik Tiongkok (Taiwan)Provinsi …

Wapenschild van de abdij Vijgenconfituur met porto, gemaakt in de abdij De Abdij van Sept-Fons, ook Notre-Dame de Sept-Fons en Notre-Dame de Saint-Lieu Sept-Fons genoemd, is een cisterciënzerabdij van de trappisten in Diou in Bourbonnais in Frankrijk. Eerste stichting De abdij werd opgericht als klooster van de cisterciënzers in 1132. Het was een dochterklooster van de Abdij van Fontenay. Dankzij gulle giften van de oprichters kon al snel een kerk en een klooster worden gebouwd, maar daarna wa…

Artikel ini sebatang kara, artinya tidak ada artikel lain yang memiliki pranala balik ke halaman ini.Bantulah menambah pranala ke artikel ini dari artikel yang berhubungan atau coba peralatan pencari pranala.Tag ini diberikan pada Oktober 2022. Hoveyzeh cruise missile. Hoveyzeh (Persia: موشک کروز هویزه) adalah rudal jelajah, semua cuaca, permukaan-ke-permukaan dirancang dan dibangun oleh Iran.[1][2][3] Hoveyzeh berasal dari keluarga rudal jelajah Soumar.[…

Iranian footballer (born 1986) This article uses bare URLs, which are uninformative and vulnerable to link rot. Please consider converting them to full citations to ensure the article remains verifiable and maintains a consistent citation style. Several templates and tools are available to assist in formatting, such as reFill (documentation) and Citation bot (documentation). (August 2022) (Learn how and when to remove this template message) Amin Manouchehri Personal informationFull name Seyyed A…

Artikel ini sebatang kara, artinya tidak ada artikel lain yang memiliki pranala balik ke halaman ini.Bantulah menambah pranala ke artikel ini dari artikel yang berhubungan atau coba peralatan pencari pranala.Tag ini diberikan pada Januari 2023. Jajar Legowo adalah salah satu sistem penanaman padi di Indonesia yang pada intinya dilakukan dengan cara mengatur jarak antar benih pada saat penanaman. Sistem ini telah terbukti dapat meningkatkan hasil padi dibanding dengan penggunaan sistem tradisiona…

You can help expand this article with text translated from the corresponding article in French. (February 2016) Click [show] for important translation instructions. View a machine-translated version of the French article. Machine translation, like DeepL or Google Translate, is a useful starting point for translations, but translators must revise errors as necessary and confirm that the translation is accurate, rather than simply copy-pasting machine-translated text into the English Wikipedi…

Type of plasma diffusion In plasma physics and magnetic confinement fusion, neoclassical transport or neoclassical diffusion is a theoretical description of collisional transport in toroidal plasmas, usually found in tokamaks or stellerators. It is a modification of classical diffusion adding in effects of non-uniform magnetic fields due to the toroidal geometry, which give rise to new diffusion effects. Description Classical diffusion occurs when ions orbiting separate paths around the reactor …

«Його останній уклін»«His Last Bow» Жанр детектив, кримінальне оповіданняd і spy fictiondФорма оповіданняАвтор Артур Конан ДойлМова англійськаОпубліковано 1908 р.Країна  Велика БританіяІлюстратор Сідні ПеджетЦикл Бібліографія Шерлока Холмса і Його останній уклінУ …

Este artigo não cita fontes confiáveis. Ajude a inserir referências. Conteúdo não verificável pode ser removido.—Encontre fontes: ABW  • CAPES  • Google (N • L • A) (Setembro de 2021) A categoria Portugal Colónias - Funchal inclui todas as emissões próprias do Funchal como território de Portugal, durante um curto período da Monarquia de 1892 a 1898. Portugal Colónias - Funchal Funchal, 1892 1892 Funchal - D. Carlos I (18…

Destrucción de un F-117 por parte del Ejército Popular Yugoslavo Parte de Guerra de Kosovo Carlinga, asiento eyectable y ala del F-117 con número de serie 82-0806 en el Museo de la Aviación de Belgrado a finales de 2018Fecha 27 de marzo de 1999 20:15h CET (UTC+1)Lugar Cerca de Buđanovci, Serbia (Yugoslavia)Coordenadas 44°54′00″N 19°52′00″E / 44.9, 19.8667Resultado Victoria yugoslavaBeligerantes Estados Unidos República Federal de Yugoslavia Comandantes Dale Zelko …

日本のルーテル教会ルーテル教会 関連記事 人物 マルティン・ルター ジェームス・シェーラー ラファス・ピーリー 山内量平・山内幹枝 山内直丸 川瀬徳太郎 三浦豕 石松量蔵 佐藤繁彦 鍋谷堯爾 徳善義和 神学校 日本ルーテル神学校 ルーテル学院大学 ルーテル同胞聖書神学校 神学 アウクスブルク信仰告白 和協信条 団体 日本福音ルーテル教会 西日本福音ルーテル教会 …

Character in Shakespeare's drama Hamlet For other uses, see Ophelia (disambiguation). Fictional character OpheliaHamlet characterJohn William Waterhouse's painting Ophelia (1894)Created byWilliam ShakespeareIn-universe informationFamilyPolonius (father)Laertes (brother) Ophelia (/oʊˈfiːliə/) is a character in William Shakespeare's drama Hamlet (1599–1601). She is a young noblewoman of Denmark, the daughter of Polonius, sister of Laertes and potential wife of Prince Hamlet, who, due to Haml…

1954 film The Scarlet SpearDirected byGeorge P. Breakston C. Ray StahlWritten byGeorge P. Breakston C. Ray StahlProduced byIrene Breakston Charles ReynoldsStarringJohn Bentley Martha HyerCinematographyBernard DaviesEdited byJohn ShirleyMusic byIvor SlaneyProductioncompanyCharles Reynolds ProductionsDistributed byUnited ArtistsRelease date1 March 1954Running time87 minutesCountryUnited KingdomLanguageEnglish The Scarlet Spear is a 1954 British drama film directed by George P. Breakston and starri…

Satyalancana Wira NusaTipeSatyalancanaNegara IndonesiaDipersembahkan olehPresiden IndonesiaSyaratMiliterStatusMasih dianugerahkanDidirikan2009 Satyalancana Wira Nusa adalah tanda kehormatan yang diberikan kepada anggota Tentara Nasional Indonesia yang telah bertugas dan mendarmabaktikan diri untuk pengamanan pulau terluar Negara Kesatuan Republik Indonesia dengan waktu paling singkat 90 (sembilan puluh) hari secara terus menerus atau 120 (seratus dua puluh) hari secara tidak terus menerus d…

American rapper DJ King AssassinBornCraig S. Venegas Alvarado (1971-01-15) January 15, 1971 (age 52)Los Angeles, CaliforniaOther namesDJ Raleem, AssassinOccupation(s)Disc jockey, record producer, radio personality, directorYears active1989 - PresentMusical careerGenresHip hop, G-FunkInstrument(s)TurntablessamplerLabels VIP Music Records Def Jam Recordings Musical artistWebsiteOfficial website Craig Venegas Alvarado (born January 15, 1971), known by his stage name DJ King Assassin,…

American actress (born 1984) This article is about the actress. For the comedian, see Lizz Winstead. Mary Elizabeth WinsteadWinstead in 2010Born (1984-11-28) November 28, 1984 (age 39)Rocky Mount, North Carolina, U.S.OccupationActressYears active1997–presentSpouses Riley Stearns ​ ​(m. 2010; div. 2017)​ Ewan McGregor ​(m. 2022)​ Children1Signature Mary Elizabeth Winstead (born November 28, 1984) is an Americ…

Brazilian actor, voice actor and singer Daniel BoaventuraBoaventura performing at the Jazz Festival Brasil in 2010BornDaniel do Rêgo Boaventura (1970-05-19) May 19, 1970 (age 53)Salvador, Bahia, BrazilOccupation(s)Actor (stage, film, voice), singerYears active1991–presentSpouseJuliana Serbeto (1998-2011)ChildrenJoana and IsabelaWebsitedanielboaventura.com.br Daniel Boaventura (May 19, 1970) is a Brazilian actor and singer.[1] Popular worldwide, Boaventura has held the lead r…

Kembali kehalaman sebelumnya