收藏本站
收藏 | 手机打开
二维码
手机客户端打开本文

基于程序切片的数据库变更影响分析系统的设计与实现

苏瑞  
【摘要】:现今,随着软件规模的扩大与软件需求的频繁变动,使得软件开发变得越来越复杂,敏捷开发思想的提出,在一定程度上减轻了开发人员的负担,但当软件所依赖的数据库结构发生变更时,却没有好的成型的技术可以应用,需要开发人员去手动审查代码来查找需要对软件的源码做哪些修改以适应数据库结构的变更,这无疑是一项复杂且耗时的工程,而且由于工作量的庞杂,极易出现错误或遗漏的情况。 鉴于这方面研究的还很不充裕,本文在调研了大量国内外文献的基础上,提出了一种当数据库结构发生变更时分析其对软件造成的影响的解决方案。本方案首先抽取软件所依赖的数据库信息,包括表的信息、字段的信息、字段的约束条件以及字段间的依赖关系,然后通过遍历应用程序软件的源代码,抽取出软件系统中的类信息和每个类中涉及到数据库操作的代码信息,包括SQL语句的定义、执行、执行结果应用三方面的信息,接下来根据数据库结构变更的SQL脚本,计算出本次变更对应用程序造成的影响,最后,通过一个真实的应用实例,模拟数据库结构变更的场景,验证该系统对数据库结构变更对程序影响的分析是否准确。其中,在抽取程序中数据库操作相关的语句信息时,考虑到由于设计模式或分布式设计使得SQL语句动态构成的情况,本系统应用程序切片的原理,通过数据流图与基于系统依赖图的算法,来解决这一难题。 本文将程序切片的概念应用于程序波动分析领域,实现了当数据库结构变更时计算其对程序的影响这一功能,首先简要介绍了当前这一领域的研究现状,并在此基础上提出本系统的需求,定义自己的软件切片准则,设计算法从应用程序挖掘出需要关注的信息,从而计算出本次演化对程序的波动。最后,通过一个实际应用的场景测试该系统的可行性与易用性。


知网文化
【相似文献】
中国期刊全文数据库 前20条
1 王鹏飞,张大方,缪力;包含异常处理的Java程序切片[J];计算机工程与科学;2005年04期
2 李必信,郑国梁,王云峰,李宣东;一种分析和理解程序的方法──程序切片[J];计算机研究与发展;2000年03期
3 叶延风,林钧海,秦小麟;一个C程序切片系统的设计与实现[J];南京航空航天大学学报;1996年04期
4 杨洪,徐宝文;PSS/Ada程序切片系统的设计与实现[J];计算机研究与发展;1997年03期
5 李小国;张迎周;张卫丰;周国强;;并发程序切片方法综述[J];南京邮电大学学报(自然科学版);2008年06期
6 李必信,杨朝晖,谭毅,朱平,李宣东,郑国梁;一种基于切片技术度量Java耦合性的框架[J];计算机学报;2001年03期
7 戚晓芳,徐宝文;一种粗粒度并发程序切片方法[J];微电子学与计算机;2004年10期
8 郝杰;;一种程序切片的图示构造方法[J];大众科技;2011年01期
9 董威,王戟,齐治昌;并发程序的切片模型检验方法[J];计算机学报;2003年03期
10 吴洁;丁晓明;;基于程序切片的测试用例集约简方法[J];重庆交通大学学报(自然科学版);2010年02期
11 陈雨亭 ,朱平 ,刘芳 ,谭毅 ,郑国梁;一种基于Java程序分层模型的方法内切片生成算法[J];计算机工程与应用;2002年02期
12 周婕;慕晓冬;王杰;;一种C++程序切片系统的设计与实现[J];计算机技术与发展;2006年07期
13 张艳梅;姜淑娟;袁冠;;一种包含异常传播的类间数据依赖分析方法[J];微计算机信息;2010年06期
14 单锦辉,王戟,齐治昌,吴建平;Gupta方法的改进[J];计算机学报;2002年12期
15 黄光燕,李晓维;软件的变量完整性测试方法[J];计算机辅助设计与图形学学报;2004年11期
16 苏铭,赵荣彩,齐宁;代码翻译中Case语句的识别和恢复[J];计算机应用;2005年10期
17 吴方君;徐升华;;用Z形式化描述程序切片[J];小型微型计算机系统;2007年08期
18 吴军华;汪婷婷;;一种获取Web结构切片的方法及其应用[J];南京工业大学学报(自然科学版);2008年04期
19 朱平,谭毅,李必信,郑国梁;一种基于分层切片模型思想的源程序信息分析方案[J];计算机工程;2001年12期
20 张迎周;徐宝文;;一种基于模块单子语义的动态程序切片方法[J];计算机学报;2006年04期
中国博士学位论文全文数据库 前6条
1 李暾;VLSI RTL级模拟矢量自动生成技术研究[D];国防科学技术大学;2003年
2 郭德贵;ATLAS语言指称语义及程序分析技术[D];吉林大学;2007年
3 余金山;模型驱动的SoC系统级功能验证关键技术研究[D];国防科学技术大学;2007年
4 姜淑娟;异常传播分析技术及其应用研究[D];东南大学;2006年
5 陶红伟;基于属性的软件可信性度量模型研究[D];华东师范大学;2011年
6 曹涌;基于分形的软件可靠性模型和程序证明的数学机械化[D];电子科技大学;2010年
中国硕士学位论文全文数据库 前10条
1 苏瑞;基于程序切片的数据库变更影响分析系统的设计与实现[D];北京邮电大学;2011年
2 孙纪玮;基于程序切片的电子海图系统软件测试技术研究[D];哈尔滨工程大学;2011年
3 时武略;基于程序切片的Java多态性研究[D];东北大学;2009年
4 张红英;基于AspectJ的Java程序切片系统的设计与实现[D];西安电子科技大学;2005年
5 林科学;软件测试/调试技术应用研究[D];南京气象学院;2004年
6 黄山;基于动态二进制程序切片技术的软件攻击诊断[D];上海交通大学;2012年
7 王伟;基于程序切片和Web构件的语义Web服务组合[D];南京邮电大学;2012年
8 战晓娟;基于混淆和水印的Java字节码安全技术的研究[D];大连交通大学;2008年
9 黎超;基于切片的二进制代码可视化分析的研究[D];广东工业大学;2011年
10 朱凯;一种基于相似路径集生成的程序故障定位方法[D];华中师范大学;2007年
中国重要报纸全文数据库 前1条
1 肖敏;娄底加强补充耕地质量全程监管[N];中国国土资源报;2011年
中国知网广告投放
 快捷付款方式  订购知网充值卡  订购热线  帮助中心
  • 400-819-9993
  • 010-62982499
  • 010-62783978