首页> 外文学位 >Concern-driven software evolution.
【24h】

Concern-driven software evolution.

机译:关注驱动的软件演进。

获取原文
获取原文并翻译 | 示例

摘要

Concerns are central to software development. In order to understand and modify complex software systems, with requirements that are intertwined and have complex relationships, we need to be able to reason about different concerns in isolation from the rest. This is the essence of the principle of separation of concerns, used in designing any complex software system.;Today's development environments do not adequately support managing the design of the system as it evolves. Concerns are invisible during development because environments focus on the programming language artifacts rather than on a conceptual model. However, most concerns are scattered across multiple source code elements, and tangled together with other concerns in each of these elements. This poses a great problem during evolution, as the ability to effectively reason about concerns deteriorates with time. Determining where concerns are implemented, and whether they are relevant in some part of the system, becomes increasingly difficult, if not impossible.;In this dissertation, we propose an approach that addresses this problem. We support a development process in which concerns are placed in a central role, driving all aspects of development. Our approach is embodied in a prototype implementation, ArchEvol, which enhances Eclipse with support for expressing concerns, linking these concerns to source code fragments, maintaining these links during development, and continuously presenting this data through visualizations. ArchEvol is unique in providing these features in an integrated, coherent development environment.;We evaluate ArchEvol in three different case studies, which complement each other by evaluating different aspects of our approach. The first user study compares the ability of developers to effectively maintain a concern model by using ArchEvol or one of two other alternative solutions. A second study asks two expert developers to evaluate the usefulness of concern-related visualizations in a system that they helped develop. A third study imports, offline, the entire change history from an existing open-source project, and traces four concerns throughout the development life of the project. Combined, these three studies provide evidence of the potential of ArchEvol to effectively support a concern-driven process in which concerns become visible at all times.
机译:关注点对于软件开发至关重要。为了理解和修改复杂的软件系统,这些需求相互交织并具有复杂的关系,我们需要能够推理出与其他问题无关的不同问题。这是设计任何复杂软件系统时所用的关注点分离原则的本质。当今的开发环境在系统的发展过程中并不能充分支持对系统设计的管理。在开发过程中,隐患是看不见的,因为环境专注于编程语言工件,而不是概念模型。但是,大多数关注点分散在多个源代码元素中,并且在每个这些元素中都与其他关注点纠缠在一起。这在进化过程中提出了一个大问题,因为有效思考问题的能力会随着时间而下降。确定关注点在哪里以及在系统的某些部分是否相关变得越来越困难,即使不是不可能的情况也越来越困难。本文提出一种解决此问题的方法。我们支持将关注点置于中心位置,驱动开发的各个方面的开发过程。我们的方法体现在ArchEvol原型实现中,该实现通过支持表达关注点,将这些关注点链接到源代码片段,在开发过程中维护这些链接以及通过可视化不断呈现这些数据的支持来增强Eclipse。 ArchEvol在集成,一致的开发环境中提供这些功能方面是独一无二的。;我们在三个不同的案例研究中评估ArchEvol,它们通过评估我们方法的不同方面来相互补充。首次用户研究比较了开发人员通过使用ArchEvol或其他两个替代解决方案之一来有效维护关注模型的能力。第二项研究要求两名专家开发人员在他们帮助开发的系统中评估与关注相关的可视化的有用性。第三项研究离线地从一个现有的开源项目中导入了整个变更历史,并追踪了该项目整个开发生命周期中的四个关注点。这三项研究相结合,提供了ArchEvol能够有效支持关注驱动过程的潜力的证据,其中关注始终可见。

著录项

  • 作者

    Nistor, Eugen C.;

  • 作者单位

    University of California, Irvine.;

  • 授予单位 University of California, Irvine.;
  • 学科 Computer Science.
  • 学位 Ph.D.
  • 年度 2009
  • 页码 255 p.
  • 总页数 255
  • 原文格式 PDF
  • 正文语种 eng
  • 中图分类 自动化技术、计算机技术;
  • 关键词

  • 入库时间 2022-08-17 11:38:30

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号