{"title":"Architecture and Design Recovery","authors":"M. Golm","doi":"10.1081/E-ESE-120045715","DOIUrl":null,"url":null,"abstract":"The current practice in software development is focused on code production, while maintaining accurate architectureanddesigndocumentationisoftenperformedasalow-priorityactivity.Thisneglectimpactsthe long-term maintainability and quality of software systems. Architecture and design recovery is the activity of uncoveringarchitectures and designs as wellas thedecisions that led tothem. There arestudies indicating that more than 50% of all software development effort is spent understanding code that has been written by other developers. While isolated algorithms can be understood by source code inspection, it is almost impossible to understand the architecture of a larger system without a methodology and good tool support. This entry explains a methodology that supports reverse engineering activities to uncover architectures and designs.","PeriodicalId":386020,"journal":{"name":"Encyclopedia of Software Engineering","volume":"18 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2010-11-22","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Encyclopedia of Software Engineering","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1081/E-ESE-120045715","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0
Abstract
The current practice in software development is focused on code production, while maintaining accurate architectureanddesigndocumentationisoftenperformedasalow-priorityactivity.Thisneglectimpactsthe long-term maintainability and quality of software systems. Architecture and design recovery is the activity of uncoveringarchitectures and designs as wellas thedecisions that led tothem. There arestudies indicating that more than 50% of all software development effort is spent understanding code that has been written by other developers. While isolated algorithms can be understood by source code inspection, it is almost impossible to understand the architecture of a larger system without a methodology and good tool support. This entry explains a methodology that supports reverse engineering activities to uncover architectures and designs.