【摘 要】
:
软件系统理解用于软件维护、软件测试、软件再工程和软件复用等多个软件工程领域,其目的是通过了解系统本身、系统专家和系统历史,得到系统全面而详细的信息。在很多情况下,
论文部分内容阅读
软件系统理解用于软件维护、软件测试、软件再工程和软件复用等多个软件工程领域,其目的是通过了解系统本身、系统专家和系统历史,得到系统全面而详细的信息。在很多情况下,软件系统完整可靠的信息是其程序代码,其他信息必须由此导出,因而程序理解是系统理解的重要形式(甚至是主要形式)。程序理解是一种需要高度智力活动的过程,其效率取决于所理解的程序、理解人员的领域经验和所采用的辅助机制。逆向工程是重要的程序理解辅助手段之一,通过收集程序数据,按照一定的数据模型加以组织和管理,并将程序信息表达成抽象视图辅助用户浏览分析程序。因此,本论文着重探讨和研究基于文法高级概念化抽象的程序理解,方便用户从不同层次不同方面来得到源程序的设计意图,实现语言平台的无关性。本文中词法分析使用LEX工具,进行封装生成动态库。语法分析采用自顶向下的LL(1)预测分析方法。程序理解过程中采用语法类库、语义子程序库,这使得它具有很好的开放性和适应性;采用观察者模式提供相应的理解模型,帮助用户准确、迅速、全面、多层次地理解软件系统。综上所述,本文在程序理解工具的通用性和可扩展性方面进行了探索和研究,具有一定的理论意义和实用价值;对程序理解的集成开发环境的研究有一定的意义。
其他文献
随着全球网络化经济的发展,世界市场的竞争变得越来越激烈,企业项目的规模越来越大,对项目管理的要求也越来越高,而有效地计划和控制工作(活动)、资源、时间三个变量是确保项
随着网络攻击行为的日益多样化,单纯依靠防火墙来进行网络被动防御的局限性越来越明显,网络安全防护的发展体现出有机结合的趋势,即安全设备通过集成共同实现整体安全目标。UTM
基于软交换的下一代网络(NGN)是目前通信业界的一个热点技术,它所倡导的以分组提供承载,控制与承载分离的思想得到了业界的广泛认同。目前国内外传统的和新兴的运营商都在从不
随着网络和多媒体技术的发展,信息技术在课堂教学中变得越来越重要了。本文在现有的课堂多媒体制作和演示系统的基础之上力求研究和开发一个完全针对教师课堂教学中使用的系
传统的身份识别技术把识别身份的问题转化为检测标识一个人身份的事物,这种方式具有无法弥补的缺陷。比如:个人的物品有可能会丢失,密码有可能会遗忘或被别人窃取,无法区分真
伴随着计算机技术、通信技术、图像压缩技术等的进步,多媒体技术得到了迅速的发展。作为多媒体应用的一个重要组成部分,视频会议系统越来越受到人们的关注。视频会议系统能为
计算机网络的发展大大影响了计算机产业和整个人类的工作、生活方式,人们对计算机的使用不再局限于单机环境,网络化不仅使得单机环境变得黯然失色,而且还使得共享网络资源成为可
P2P(Peer-to-Peer)技术作为Internet的重要技术之一,近些年来受到了计算机业界越来越多的关注。P2P技术直接将人们联系起来,让人们通过互联网可以直接交流。P2P使得网络上的沟
因特网上的信息日益丰富,己经成为知识获取的一个重要来源。信息资源的丰富也使信息的检索有如大海捞针,检索到自己所需要的信息资源效率不高。对信息进行整理,提高信息检索