首页 | 官方网站   微博 | 高级检索  
相似文献
 共查询到17条相似文献,搜索用时 760 毫秒
1.
对软件演化信息的度量能发现软件演化过程中的问题,预测其变化趋势。传统的软件演化信息度量技术主要是以文件、目录或者项目作为度量的基本单位,缺乏在较高抽象层次对软件系统进行度量的能力。在基于构件的软件配置管理模型的基础上,以构件作为软件演化度量的基本单位,提出了一组基于属性变化、适用于构件以及软件系统演化度量的公式(包括较近、较早演化度量,演化相似性度量等),并开发了原型支撑系统。  相似文献   

2.
钟林辉  宗洪雁 《计算机科学》2015,42(1):196-200,231
软件演化信息是一种重要的、能反映软件变化历史的信息.然而,传统的软件演化信息以文件或者项目作为跟踪软件变化的基本单元,不能有效地支持构件化软件演化信息的存储和检索.提出了采用本体概念表示构件化软件演化信息的策略,并利用Jena推理机实现构件化软件演化信息的荻取.该方法不仅能检索构件化软件的基本演化信息,而且可以通过定义规则的方式检索出蕴含的演化信息.同时,文中也提出了一种构件化软件演化度量的模型,该模型通过对演化属性的计算分析来预测构件化软件的演化趋势.  相似文献   

3.
对共同变化的识别有利于软件维护人员对软件变化的理解和控制。传统的软件共同变化识别方法通过对软件版本控制系统中的数据挖掘,进而识别源程序文件或者类之间的共同变化,但这种方法不适合对构件化软件中构件间共同变化的识别。为此,本文在基于构件的软件配置管理模型的基础上,设计了构件化软件演化信息本体模型以及两者间的映射规则,并提出了构件化软件共同变化模式(基本模式和复合模式)和相应的本体推理规则,开发了原型支撑系统。  相似文献   

4.
软件资产追踪关系逆向恢复是软件维护和逆向工程领域的一个重要研究内容。然而,大多数现有的资产追踪研究都是针对同一软件版本内的追踪关系。与已有的研究工作不同,文中主要关注多个层次(变更文档层、配置管理层、实现代码层)上的演化信息之间的追踪关系逆向恢复。这些演化信息之间追踪关系的恢复对于理解软件演化和维护过程、学习并借鉴软件维护知识都具有重要的意义。针对不同层次演化信息的特点,提出了一种结合关键字检索和启发式规则的演化信息追踪关系逆向恢复方法,并针对一个开源软件系统的演化过程进行了实验分析。  相似文献   

5.
基于构件运算的软件演化研究   总被引:3,自引:2,他引:1  
当前对软件构件的描述均采用图形加文本的方式或形式化描述语言,这些描述对构件的动态行为、互操作和演化特征方面的描述明显不足,无法系统科学地描述软件演化。针对该问题,文章引入用代数理论对构件的属性和行为特征进行抽象而提出的构件调用运算、协作运算和条件运算的新方法。对软件系统进行抽象化,把软件系统的演化归结为构件表达式的变化,利用代数理论对软件演化中构件的增加、删除、相互关系的修改进行系统研究,并给出将演化后的结果用图形方式表示的方法。  相似文献   

6.
王丹丹  王青 《软件学报》2016,27(12):3014-3029
软件持续演化已经是不争的事实,演化意味着需求的变化,也就必然导致了缺陷的不断产生.现有的缺陷预测技术多偏重于基于软件工作制品,如文档、代码、测试用例等的属性来预测缺陷,但如果把软件看作一种物种,其生命周期内的演化本质上是一个物种的逐步进化,其缺陷的表现也必然带着该物种的特征,而且还受到进化历史中的演化轨迹的影响.已有一些研究人员开始研究软件演化过程,并提出了一些演化度量元.研究和提出了可以刻画软件演化轨迹的两类演化度量元,并通过案例研究,建立缺陷预测模型.在6个著名开源软件数据集上训练和验证了由软件演化度量元建立的缺陷预测模型,获得了良好的预测性能,验证了演化度量元对缺陷预测性能的改进.  相似文献   

7.
基于动态构件框架的构件演化   总被引:9,自引:2,他引:7  
软件系统是对现实世界模型的反映,现实世界的变化要求软件系统进行相应的演化。软件演化是软件系统的动态行为,贯穿整个软件生命周期,从系统的初始开发阶段到最终的软件维护。软件演化包括软件系统的过程、方法、技术、组织方式等的演化。基于软件构架和构件的开发方法实现的系统比传统的开发方法具有更好的易演化性。软件构架高度抽象地描述了软件系统的结构,包括系统元素的描述、元素之间的交互、用于指导元素复合的模式和这些模式的约束。我件是组成构架的基本元素,是对系统应用功能的实现;构件封装了功能性,有着自己的内部状态信息;构件的实现是异质的(可以用多种语言实现),而且在系统实现中可能使用的是第三方提供的构件。基本构架和构件的系统可以有两种方式的演化:一是整体构架的演化,重组系统的构架,增加、删除系统的构件,修改构件之间的拓扑结构;二是系统中单个构件的演化,着眼于系统的单个构件,修改构件的接口、功能。本文着重于研究构架构件系统中构件的演化,对系统使用的构件进行演化,在不修改系统中其他的构件,保持构件之间的基本连接拓扑结构不变的情况下,将演化后的构件替换系统中的原有构件,实现对系统功能的修改。  相似文献   

8.
在软件演化中,构件的重要性度量可以为软件演化的控制和监测提供依据。以软件体系结构为蓝图和支撑,提出软件体系结构有向图模型,引入节点介数对构件的重要性进行度量。并对构件的请求依赖、服务依赖进行分析和研究,通过使用Pearson相关系数进行分析,找出与节点介数最相关的因素。对大量开源软件源代码进行实验,实验结果表明,用节点介数度量构件的重要性是有效的,并且构件的请求依赖和服务依赖的总和与构件的节点介数最为相关。这也为下一步利用依赖关系衡量构件重要性指明了另一个研究方向。  相似文献   

9.
陶传奇  李必信  JerryGao 《软件学报》2015,26(12):3043-3061
基于构件的软件构建方法目前被广泛使用在软件开发中,用于减少软件开发的工程成本和加快软件开发进度.在软件维护过程中,由于构件更新或者新版本的发布,基于构件的系统会受到影响,需要进行回归测试.对于指定的软件修改需求,维护者可以实施不同的修改手段.不同的修改手段会导致不同的回归测试复杂性,这种复杂性是软件维护成本和有效性的重要因素.目前的研究没有强调构件软件的回归测试复杂性问题.基于修改影响复杂性模型和度量,提出一种回归测试的复杂性度量框架.该度量框架包括两个部分:基于图的模型和形式化度量计算.该度量可以有效表示构件软件分别在构件和系统层面的回归测试复杂性因素,可视化地体现复杂性变化.然后根据模型,提出具体的度量计算方式.最后,通过实验研究,针对同一个构件软件的相同修改需求,利用若干个实验组进行独立修改实施,然后比较回归测试的复杂性.实验结果表明,所提出的度量方式是可行和有效的.  相似文献   

10.
为了清晰、全面地获取构件化软件的演化历史信息, 通常需要提供演化信息表示和建模的有效手段。分析了构件化软件演化信息获取所需解决的若干问题, 提出了在软件构件模型基础上, 增加建模元素以表示软件演化信息的方法; 通过结合软件配置管理系统, 实现对构件化软件变化过程的追踪和管理。基于该方法和相应的系统支持, 可以为实施软件重构和后期开发提供指导。  相似文献   

11.
基于构件的软件开发已成为软件开发的主流方法,针对构件式软件动态演化后的一致性保持问题,目前大多数学者主要是从构件式软件的外部一致性角度进行分析和研究。为此,从构件内部的角度出发,提出一种保证构件式软件动态演化构件内部一致性的方法。首先,对构件及其相关模型进行建模,并给出了构件内部类有向图的同态映射关系的判定算法;其次,给出构件式构件动态演化内部一致性的标准,基于进程代数的强模拟理论和图论中的同态映射关系,分别从全局和局部的角度定义了构件式软件动态演化前后构件内部一致性标准的充分条件和必要条件,并对其进行了证明;然后,基于上述工作,给出了构件动态演化内部一致性保证方法的流程;最后,通过案例研究表明该方法的可行性和有效性。  相似文献   

12.
支持构件演化的软件配置管理研究   总被引:2,自引:0,他引:2  
林英  张雁 《计算机工程与设计》2006,27(19):3595-3597
基于构件的软件开发作为一种全新的软件开发方法,与传统的软件开发方式不同,配置管理的需求与传统的配置管理方法也有了很大的不同.在基于构件软件开发的过程中,如何以一种良好的风格和技术来对构件变化进行控制,保持构件系统的一致性、稳定性是软件开发者历来追求的目标.分析了基于构件软件开发过程中构件演化对配置管理技术的新需求,探讨了配置管理的几个关键技术,并提出了一种度量构件演化过程的方法,从而把构件的整个演化过程置于配置管理的支持之下.  相似文献   

13.
一种面向构件化软件的在线演化方法   总被引:13,自引:0,他引:13  
王晓鹏  王千祥  梅宏 《计算机学报》2005,28(11):1890-1897
针对构件化软件系统,提出了一种对软件进行在线演化的方案,并以一个符合J2EE规范的构件运行支撑平台为例讨论了该方案的实现.该方案借助JAVA平台的类装载机制,通过仔细划分构件实例的生命周期,针对不同状态的构件采取相应的措施,实现了以构件为粒度的软件在线演化.  相似文献   

14.
基于可达矩阵的软件体系结构演化波及效应分析   总被引:25,自引:0,他引:25       下载免费PDF全文
王映辉  张世琨  刘瑜  王立福 《软件学报》2004,15(8):1107-1115
构造性和演化性是软件的两个基本特性.软件演化由一系列复杂的变化活动组成.软件演化的复杂性决定了对软件演化的研究首先应从宏观层面入手.软件体系结构SA作为软件的蓝图和支撑骨架,为人们宏观把握软件的整体结构和软件演化提供了一条有效的途径.描述了SA的构件--连接件模型,建立了SA关系矩阵和可达矩阵,凭借矩阵变换与运算对SA演化中的波及效应进行了深入的分析和量化界定;并对演化中的构件删除、增加和修改以及构件的合并与分解等变化活动所引起的各种波及效应给予了阐述;同时,给出了构件在SA中贡献大小相对量的计算方法.为SA演化的管理、控制、利用和评价提供了可靠的依据,并为基于矩阵变换的SA演化的计算机自动处理奠定了基础.  相似文献   

15.
扩充CDL支持基于构件的系统组装与演化   总被引:12,自引:0,他引:12  
基于构件的软件开发方法适应于软件构造性和演化性的特征,也对软件配置管理提出了新要求,在基于构件的软件配置管理模型基础上,提出了在构件描述语言CDL上扩充系统演化信息的方法,使构件组装系统与配置管理系统形成有机的整体,为基于构件的软件开发方法提供了良好的技术支持,不仅可以有效地支持基于构件的系统构造定义,而且可以支持系统的演化以及系统的部署。  相似文献   

16.
基于构件组合运算的SA可演化性度量   总被引:1,自引:0,他引:1  
在满足当前需求的众多软件体系结构(SA)中,选择适应未来发展变化的(SA),需要度量软件体系结构可演化性SAE。本文提出了基于构件组合运算的SA;从构件组合运算和SA两个层次分析了构件操作的波及效应,提出了一种新的SAE度量方法,设计了度量算法;在给出的实例中,度量了同一系统的不同SA的可演化性。最后,根据领域软件工程的特点,利用特征迹,对SAE的度量方法进行了改进。该度量方法克服了传统方法需要大量数据、过度依赖人工参与和个人经验、只适合小规模系统等不足。  相似文献   

17.
基于现有构件以演化方式产生出新的构件是提高软件复用水平和满足用户不断变化需求的关键技术。首先,给出了一种基于多个代理的构件演化交互模型,该模型能够以自治方式实现演化一致性数据处理;其次,利用方面织入机制将新的功能代码准确织入现有构件内部,降低了构件不同功能代码的耦合度;然后,对构件演化的复杂度进行了讨论,给出了四项演化复杂度评价指标和一个复杂度计算模型,以对构件演化成本进行量化估算;最后,以数字化校园中各应用系统间数据交换构件演化为例,证明了方法的可行性和有效性。  相似文献   

设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司    京ICP备09084417号-23

京公网安备 11010802026262号