Generating linkage between source code and evolvable domain knowledge for the ease of software evolution

Yang Li, Hongji Yang, W. Chu
{"title":"Generating linkage between source code and evolvable domain knowledge for the ease of software evolution","authors":"Yang Li, Hongji Yang, W. Chu","doi":"10.1109/ISPSE.2000.913239","DOIUrl":null,"url":null,"abstract":"Business software systems without exception need to be evolved to cater for new/changed market requirements, or to adapt to a new operating environment. One of the most significant problems in current software evolution practice is that software maintainers usually find it quite difficult to locate the program sections in the source code which need to be modified and to identify the extent to which the changes in these program sections could affect the rest of the software system. In this paper, we propose a knowledge engineering-based approach to solving this problem. In particular, we match a software program with a pre-defined domain knowledge base in the representation of a simplified semantic network that we have proposed in order to link the source program with its domain-level interpretation. The domain knowledge base contains only important domain knowledge where potential evolutions could occur; this reduces the size of the knowledge base. Moreover, a domain-oriented program partitioning method is also proposed in order to partition a program into self-contained modules of manageable size. In these ways, the computational complexity involved in generating the linkage is significantly reduced, which makes this approach usable. An example shows that software evolution can be carried out easily as the domain knowledge that it links with evolves.","PeriodicalId":170375,"journal":{"name":"Proceedings International Symposium on Principles of Software Evolution","volume":"1 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2000-11-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"8","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Proceedings International Symposium on Principles of Software Evolution","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/ISPSE.2000.913239","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 8

Abstract

Business software systems without exception need to be evolved to cater for new/changed market requirements, or to adapt to a new operating environment. One of the most significant problems in current software evolution practice is that software maintainers usually find it quite difficult to locate the program sections in the source code which need to be modified and to identify the extent to which the changes in these program sections could affect the rest of the software system. In this paper, we propose a knowledge engineering-based approach to solving this problem. In particular, we match a software program with a pre-defined domain knowledge base in the representation of a simplified semantic network that we have proposed in order to link the source program with its domain-level interpretation. The domain knowledge base contains only important domain knowledge where potential evolutions could occur; this reduces the size of the knowledge base. Moreover, a domain-oriented program partitioning method is also proposed in order to partition a program into self-contained modules of manageable size. In these ways, the computational complexity involved in generating the linkage is significantly reduced, which makes this approach usable. An example shows that software evolution can be carried out easily as the domain knowledge that it links with evolves.
查看原文
分享 分享
微信好友 朋友圈 QQ好友 复制链接
本刊更多论文
生成源代码和可演化领域知识之间的链接,以方便软件演化
商业软件系统无一例外地需要不断发展,以迎合新的/变化的市场需求,或适应新的操作环境。当前软件发展实践中最重要的问题之一是,软件维护者通常发现很难找到源代码中需要修改的程序部分,也很难确定这些程序部分的更改对软件系统其余部分的影响程度。在本文中,我们提出了一种基于知识工程的方法来解决这个问题。特别是,我们将软件程序与我们提出的简化语义网络表示中的预定义领域知识库相匹配,以便将源程序与其领域级解释联系起来。领域知识库只包含可能发生潜在演化的重要领域知识;这减少了知识库的大小。此外,还提出了一种面向领域的程序划分方法,将程序划分为可管理大小的自包含模块。通过这些方法,生成连杆所涉及的计算复杂性大大降低,这使得该方法可用。一个实例表明,软件进化可以很容易地作为它所链接的领域知识进行进化。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 去求助
来源期刊
自引率
0.00%
发文量
0
期刊最新文献
Dynamic compilation of a reflective language using run-time specialization An approach for constructing component-based software systems with dynamic adaptability using LEAD++ Operating systems support for the evolution of software: an evaluation using WWW server software Managing software evolution with the service concept Towards a theory of software evolution - and its practical impact
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
现在去查看 取消
×
提示
确定
0
微信
客服QQ
Book学术公众号 扫码关注我们
反馈
×
意见反馈
请填写您的意见或建议
请填写您的手机或邮箱
已复制链接
已复制链接
快去分享给好友吧!
我知道了
×
扫码分享
扫码分享
Book学术官方微信
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术
文献互助 智能选刊 最新文献 互助须知 联系我们:info@booksci.cn
Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。
Copyright © 2023 Book学术 All rights reserved.
ghs 京公网安备 11010802042870号 京ICP备2023020795号-1