基于层次依赖结构的程序理解方法研究

来源 :哈尔滨工业大学 | 被引量 : 0次 | 上传用户:plxu
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
随着社会对软件需求的不断增长,正在使用和开发的软件数量与日俱增,许多软件的规模变得越来越大,这些软件的维护问题成为了当前软件产业面临的重要问题.能否准确、迅速、全面地理解程序是决定维护工作成败的关键.由此,程序理解成为了软件维护中的重要的一步.程序的可理解性研究对软件开发、管理和维护有着重要意义,特别是针对遗产软件系统的升级.遗产软件系统指的是很久以前开发的软件系统,经过相当大的改动,如今又不能不使用的软件.多年的运行历史,使得遗产软件系统中包含了企业的众多知识,包括系统需求、设计决策和业务规则.为了能够充分利用这些有用资产,遗产系统持续性演化变得十分重要.程序理解的目的在于获取足够的系统信息以便让系统按所期望的方式演化,因而,程序理解是运产系统成功演化的关键之一.如何选择一个合适的理解策略是今后理解工作顺利进行的保障.该文提出了6种国内外学者在程序理解方面的几种具有代表性的程序理解策略:自顶向下策略、自底向上策略、基于知识策略、Systematic/As-Needed策略、潜在语义分析策略和集成策略,并对这些策略进行了详细的比较.同时,还指出了当前程序理解上存在的困难和程序理解在不同层次上应该完成的任务.该文还根据程序设计语言的公理语义,从公理中剥离出各个结构的断言,抽象出程序设计语言的抽象文法.抽象文法能够直接给出了各种语言构造的各个成分,而不管它们的表示细节.接着指出了采用语法树比较进行程序理解的不足之处.
其他文献
该文研究的MDA(Model Driven Architecture,模型驱动体系结构)是一种基于形式模型的系统规约和互操作性方法,它将系统功能规约与特定技术平台的功能实现规约相分离,以达到"一
作为一种流行的社交网络媒体,微博客(简称微博)使得用户能够更简单地分享、传播和获取信息。用户在使用微博服务的时候,希望能追踪自己所感兴趣事件的实时发展情况。本文主要针对
一般说来,卫星在太空中的运行周期较长,而且所处环境复杂。卫星软件与常见的实时嵌入式软件相比对于实时操作系统的需求具有不同的侧重,本课题对卫星通用实时操作系统的主要需求
随着空间数据库技术的不断发展其应用也越来越丰富,同时空间推理应用的复杂度也在不断增加.方向关系是空间推理研究的重要领域应用十分广泛,因此在空间推理的研究中有关方向
互联网的迅速发展,使得大量的信息洪流以前所未有的方式冲击着社会的政治、经济和文化,改变着人们的生活方式。面对这浩如烟海的信息,人们越发容易陷入一种资讯焦虑的困境之中。
将一个程序从一个运行平台迁移(移植)到另外一个运行平台的过程通常被称为程序迁移,是软件演化与维护的重要内容,也是应用程序扩大用户范围的重要途径。  基于规则的应用程序迁
随着Internet的飞速发展,人们对全球网络数据的访问需求也急剧增加,指数级增长的用户请求给流行的WEB站点提出了前所未有的挑战.如何提高WEB站点的服务性能,为网络客户提供有
该文以指纹自动识别系统(Automated Fingerprint Identification System,简称AFIS)的处理流程为线索,详细讨论了基于结构特征的指纹识别系统及其匹配算法.该文的指纹识别系统
因特网已经为普通的计算机用户在家中,在商业上,以及在教育领域提供了大量而有效的信息.对于许多人来讲,对这些信息的访问已经不再是难不可及而仅仅是一项普通的技能.然而,当
本文结合中国铁路的实际,介绍了分布式信息共享平台技术;从技术的角度切实地考虑在广域网环境下大型业务处理系统信息化过程中如何实现互操作性,解决“信息孤岛”问题,达到信息共