{"title":"High entropy source models","authors":"AndrewJ. L. Gear","doi":"10.1145/2993412.3003395","DOIUrl":null,"url":null,"abstract":"Architectural recovery techniques depend on an intermediary representation of the source code called a source model. While completely reliant on the source model the majority of the techniques pay inadequate attention to the source model's formation and it is often assumed that the only relevant dependencies should be those of call and field accesses. So pervasive and abstract are these kinds of dependency that they convey almost no information to a programmer, thus making most source models low entropy artefacts absolutely requiring a secondary analysis technique to be applied in order to reveal high entropy interdependencies in the system. We contend in this paper that the secondary analysis, forming the majority of architectural recovery techniques, is often premature and that more effort be spent on creating the initial source model so as to include high entropy dependencies from other first class programming and operating system constructs. In doing so we show, through both theoretical and industrial evaluations, that a source model can be rendered useful to a programmer again, revealing central design concepts for the system's application domain.","PeriodicalId":332835,"journal":{"name":"ECSA Workshops","volume":"30 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2016-11-28","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"ECSA Workshops","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/2993412.3003395","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0
Abstract
Architectural recovery techniques depend on an intermediary representation of the source code called a source model. While completely reliant on the source model the majority of the techniques pay inadequate attention to the source model's formation and it is often assumed that the only relevant dependencies should be those of call and field accesses. So pervasive and abstract are these kinds of dependency that they convey almost no information to a programmer, thus making most source models low entropy artefacts absolutely requiring a secondary analysis technique to be applied in order to reveal high entropy interdependencies in the system. We contend in this paper that the secondary analysis, forming the majority of architectural recovery techniques, is often premature and that more effort be spent on creating the initial source model so as to include high entropy dependencies from other first class programming and operating system constructs. In doing so we show, through both theoretical and industrial evaluations, that a source model can be rendered useful to a programmer again, revealing central design concepts for the system's application domain.