首页> 外文OA文献 >Feature-based methodology for supporting architecture refactoring and maintenance of long-life software systems
【2h】

Feature-based methodology for supporting architecture refactoring and maintenance of long-life software systems

机译:基于功能的方法,用于支持架构重构和维护长寿命的软件系统

摘要

The long-life software systems withstand many significant changes throughout their life-cycle in orderto follow the evolution of the problem domains. Usually, the software system architecture can notfollow the rapid evolution of a problem domain and with time, the diversion of the architecture inrespect to the domain features becomes prohibiting for software evolution. For avoiding this problem,periodical refactorings of the system architecture are required.Usually, architecture refactorings are postponed until the very last moment, because of the relativelyhigh risk involved and the lack of short-term profit. As a rule, the management is unwilling to acceptarchitecture refactorings unless they become absolutely necessary. The preferred way of working is toadd new system features in an ad-hoc manner and to keep the rule ”Never touch a running system!”.The final result is an architecture decay. The need of performing small refactoring activities turns intoneed for architecture reengineering. In contrast to refactoring, which is a normal evolutionary activity,reengineering is a kind of software ”revolution”. Reengineering projects are risky and expensive. Theeffectiveness of reengineering is also usually not as high as expected. When finally after reengineeringthe required architecture changes take place, it can be too late. Despite the enormous invested efforts,the results of the reengineering usually do not satisfy the expectations. It might happen that verysoon a new expensive reengineering is required.This thesis deals with the problem of software evolution and the decay of software architectures.It presents a method, which assists software evolution in its crucial part, the architecture refactoring.The assistance is performed for both technical and organizational aspects of the software evolution.The thesis provides new techniques for supporting reverse engineering, architecture recovery and redesigningactivities. It also proposes changes to the software engineering process, which can forcetimely architecture refactorings and thus avoid the need of performing architecture reengineering.For the work in this thesis feature modeling is utilized as a main asset. Features are used to fill theabstraction gap between domain requirements and system architecture. Feature models are also usedas an outline for recovering of lost system architectures. Through feature-based analyses a number ofuseful hints and clues for architecture redesign are produced. Finally, feature modeling is used as acommunication between different stakeholders of the software engineering process and on this basis anew requirements engineering process is proposed, which forces the needed architecture refactorings.
机译:长寿命软件系统在其整个生命周期中承受着许多重大变化,以适应问题领域的发展。通常,软件系统体系结构无法跟上问题域的快速发展,并且随着时间的流逝,就领域特征而言,体系结构的转移已成为软件发展的障碍。为了避免此问题,需要定期对系统体系结构进行重构。通常,由于涉及的风险较高且缺乏短期利润,因此将体系结构重构推迟到最后一刻。通常,除非绝对必要,否则管理层不愿接受架构重构。首选的工作方式是临时添加新的系统功能,并保持“永远不要触摸正在运行的系统!”的规则。最终结果是体系结构崩溃。执行小型重构活动的需求已成为架构重组的必然。与重构是正常的进化活动相反,重构是一种软件“革命”。重新设计项目是冒险且昂贵的。重新设计的效果通常也没有预期的那么高。重新设计所需的架构后,如果最终发生变化,可能为时已晚。尽管付出了巨大的努力,但重新设计的结果通常无法满足期望。可能很快就会需要进行新的,昂贵的重新设计。本文研究了软件进化和软件体系结构的衰落问题。它提出了一种方法,该方法在关键部分帮助软件进化,即体系结构重构。本文提供了支持逆向工程,体系结构恢​​复和重新设计活动的新技术。它还提出了对软件工程过程的更改,该更改可以强制及时进行体系结构重构,从而避免了进行体系结构重构的需要。本文将特征建模作为主要资产。功能用于填补域需求和系统体系结构之间的抽象鸿沟。功能模型还用作恢复丢失的系统体系结构的概述。通过基于特征的分析,可以得出许多有用的提示和线索,以进行体系结构重新设计。最后,将特征建模用作软件工程过程的不同利益相关者之间的通信,并在此基础上提出了新的需求工程过程,以强制进行所需的架构重构。

著录项

  • 作者

    Pashov Ilian;

  • 作者单位
  • 年度 2005
  • 总页数
  • 原文格式 PDF
  • 正文语种 deu
  • 中图分类

相似文献

  • 外文文献
  • 中文文献
  • 专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号