Genericity - a "Missing in Action" Key to Software Simplification and Reuse

S. Jarzabek
{"title":"Genericity - a \"Missing in Action\" Key to Software Simplification and Reuse","authors":"S. Jarzabek","doi":"10.1109/APSEC.2006.37","DOIUrl":null,"url":null,"abstract":"In controlled lab experiments and industrial projects, we observed 50%-90% rates of repetitions that deliberately recurred in newly developed, well- designed programs. Most often, recurring program structures represented an important concept from software requirements or design spaces. Repetitions increased conceptual complexity and physical size of programs, and also signified unexploited reuse opportunities. Despite potential benefits, avoiding or explicating repetitions with conventional programming techniques was either impossible or would require developers to compromise other important design goals. We believe these problems are common in many program situations. We hypothesize that they have their roots in much similarity that is inherent in software, and not strong enough generic design mechanisms to represent repetitions in a unified, generic way. We discuss mixed-strategy approach that strengthens generic design capabilities of conventional programming techniques with help of a generative meta-programming technique.","PeriodicalId":341929,"journal":{"name":"2006 13th Asia Pacific Software Engineering Conference (APSEC'06)","volume":"21 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2006-12-06","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"8","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2006 13th Asia Pacific Software Engineering Conference (APSEC'06)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/APSEC.2006.37","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 8

Abstract

In controlled lab experiments and industrial projects, we observed 50%-90% rates of repetitions that deliberately recurred in newly developed, well- designed programs. Most often, recurring program structures represented an important concept from software requirements or design spaces. Repetitions increased conceptual complexity and physical size of programs, and also signified unexploited reuse opportunities. Despite potential benefits, avoiding or explicating repetitions with conventional programming techniques was either impossible or would require developers to compromise other important design goals. We believe these problems are common in many program situations. We hypothesize that they have their roots in much similarity that is inherent in software, and not strong enough generic design mechanisms to represent repetitions in a unified, generic way. We discuss mixed-strategy approach that strengthens generic design capabilities of conventional programming techniques with help of a generative meta-programming technique.
通用性——软件简化和重用的关键
在受控的实验室实验和工业项目中,我们观察到在新开发的、设计良好的程序中故意重复的比率为50%-90%。大多数情况下,重复出现的程序结构代表了来自软件需求或设计空间的重要概念。重复增加了概念的复杂性和程序的物理大小,也意味着未开发的重用机会。尽管有潜在的好处,但用传统的编程技术避免或解释重复是不可能的,或者需要开发人员牺牲其他重要的设计目标。我们相信这些问题在很多程序中都很常见。我们假设它们的根源在于软件中固有的相似性,并且没有足够强大的通用设计机制来以统一的、通用的方式表示重复。我们讨论了混合策略方法,该方法在生成元编程技术的帮助下增强了传统编程技术的通用设计能力。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:604180095
Book学术官方微信
小红书