首页> 中文学位 >基于分层结构信息提取的软件架构恢复技术
【6h】

基于分层结构信息提取的软件架构恢复技术

代理获取

目录

第一个书签之前

展开▼

摘要

随着软件系统越来越复杂、规模越来越大,软件架构的复杂度和变化性进一步增强。更糟糕的是,随着产品演化周期的更迭,由于文档得不到及时充分的更新,导致设计架构和实际架构之间的偏差越来越大,仅仅通过文档很难达到对系统原始全面的理解。开发团队往往需要通过人工阅读代码来学习和理解架构,并在此基础上开展系统的开发和维护。人工阅读代码的方式费时费力,而且并非任何人都能通过阅读代码来透彻完整地把握系统的原始架构。这种在系统的演化过程中,预期架构或概念架构与实际架构之间发生偏离的现象,又称为软件架构腐蚀。在此情况下,清晰的、易于理解的软件体系结构说明就显得越来越重要。 本文对目前的软件架构恢复过程、恢复方法和工具进行了系统的研究,归纳出了一般的软件架构恢复技术框架,包括架构信息提取和架构恢复表达两方面的关键技术。本文基于分层结构信息提取技术进行软件架构自动化恢复,主要工作如下: ·本文分别从项目源代码、编译构建过程信息、目录层次结构和架构输入四种信息来源中提取需要的架构信息,其保障了架构的逻辑视图、开发视图和构建视图的一致性。 ·本文提出一种基于多规则聚类的组件识别方法,通过对模块依赖图的分析,根据依赖类型、依赖结构和依赖强度制定的规则,多个角度识别出组件特征,从而实现对目标系统的高度抽象。 ·本文提出有效计算模块距离的度量公式,同时基于该度量公式采用中心-层次混合聚类算法,进行组件聚类。在每次迭代后,围绕选取的聚类中心进行层次聚合,从而实现高效且准确恢复架构。 ·按照软件架构恢复的技术框架,设计并实现一个基于分层结构信息提取的软件架构恢复原型工具——ArcRecoveryTool。 基于大量开源程序的实验表明,本文提出的架构恢复技术具有较好的精度和效率,能够适应较大规模的软件项目。通过该技术恢复的架构图不仅具有较好的易理解性,为开发和维护人员理解和维护代码提供帮助,而且也能够有效反映出软件演化的效果,对软件开发、软件演化的研究提供重要的数据基础和可靠的实现保障。

著录项

  • 作者

    张叶炼;

  • 作者单位

    东南大学;

  • 授予单位 东南大学;
  • 学科 计算机技术
  • 授予学位 硕士
  • 导师姓名 王璐璐,李必信,袁晓东;
  • 年度 2018
  • 页码
  • 总页数
  • 原文格式 PDF
  • 正文语种 中文
  • 中图分类
  • 关键词

    分层结构; 信息提取; 软件架构;

相似文献

  • 中文文献
  • 外文文献
  • 专利
代理获取

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号