共查询到18条相似文献,搜索用时 62 毫秒
1.
对不同软件进行演化相似性度量和比较能帮助软件维护人员理解软件演化及预测其演化趋势。然而,传统的研究大多度量单一软件演化属性的变化,虽然有些也涉及到多维演化属性,但并没有与软件的演化相似性相联系;同时亦缺乏在较高抽象层次度量软件演化相似性的有效途径。为此,以构件为基本单位,提出了一种基于多维演化属性的构件化软件演化相似性度量模型。即通过在原子构件层和系统(复合构件)层定义演化属性,进而度量原子构件之间以及系统(复合构件)之间的演化相似性。初步的实验表明,在原型工具的支持下该方法能辅助软件维护人员进行软件演化相似性的判断。 相似文献
2.
软件演化信息是一种重要的、能反映软件变化历史的信息.然而,传统的软件演化信息以文件或者项目作为跟踪软件变化的基本单元,不能有效地支持构件化软件演化信息的存储和检索.提出了采用本体概念表示构件化软件演化信息的策略,并利用Jena推理机实现构件化软件演化信息的荻取.该方法不仅能检索构件化软件的基本演化信息,而且可以通过定义规则的方式检索出蕴含的演化信息.同时,文中也提出了一种构件化软件演化度量的模型,该模型通过对演化属性的计算分析来预测构件化软件的演化趋势. 相似文献
3.
4.
为了清晰、全面地获取构件化软件的演化历史信息, 通常需要提供演化信息表示和建模的有效手段。分析了构件化软件演化信息获取所需解决的若干问题, 提出了在软件构件模型基础上, 增加建模元素以表示软件演化信息的方法; 通过结合软件配置管理系统, 实现对构件化软件变化过程的追踪和管理。基于该方法和相应的系统支持, 可以为实施软件重构和后期开发提供指导。 相似文献
5.
软件持续演化已经是不争的事实,演化意味着需求的变化,也就必然导致了缺陷的不断产生.现有的缺陷预测技术多偏重于基于软件工作制品,如文档、代码、测试用例等的属性来预测缺陷,但如果把软件看作一种物种,其生命周期内的演化本质上是一个物种的逐步进化,其缺陷的表现也必然带着该物种的特征,而且还受到进化历史中的演化轨迹的影响.已有一些研究人员开始研究软件演化过程,并提出了一些演化度量元.研究和提出了可以刻画软件演化轨迹的两类演化度量元,并通过案例研究,建立缺陷预测模型.在6个著名开源软件数据集上训练和验证了由软件演化度量元建立的缺陷预测模型,获得了良好的预测性能,验证了演化度量元对缺陷预测性能的改进. 相似文献
6.
基于构件运算的软件演化研究 总被引:1,自引:2,他引:1
当前对软件构件的描述均采用图形加文本的方式或形式化描述语言,这些描述对构件的动态行为、互操作和演化特征方面的描述明显不足,无法系统科学地描述软件演化。针对该问题,文章引入用代数理论对构件的属性和行为特征进行抽象而提出的构件调用运算、协作运算和条件运算的新方法。对软件系统进行抽象化,把软件系统的演化归结为构件表达式的变化,利用代数理论对软件演化中构件的增加、删除、相互关系的修改进行系统研究,并给出将演化后的结果用图形方式表示的方法。 相似文献
7.
随着用户需求和开放的网络计算环境的不断变化,软件复杂性与演化要求也随之不断增强。为适应基于关注点分离的方面化构件软件的动态演化需求,提出一种动态方面编织框架DWAC(Dynamic Weaving Framework for Aspectual Component-based Software)。该框架以方面化构件为基本单位,基于软件体系结构规约和系统实现,给出方面化构件增加、删除和修改的具体执行过程,并举例验证了其对面向方面的构件化软件动态演化的支持能力。 相似文献
8.
基于动态构件框架的构件演化 总被引:7,自引:2,他引:7
软件系统是对现实世界模型的反映,现实世界的变化要求软件系统进行相应的演化。软件演化是软件系统的动态行为,贯穿整个软件生命周期,从系统的初始开发阶段到最终的软件维护。软件演化包括软件系统的过程、方法、技术、组织方式等的演化。基于软件构架和构件的开发方法实现的系统比传统的开发方法具有更好的易演化性。软件构架高度抽象地描述了软件系统的结构,包括系统元素的描述、元素之间的交互、用于指导元素复合的模式和这些模式的约束。我件是组成构架的基本元素,是对系统应用功能的实现;构件封装了功能性,有着自己的内部状态信息;构件的实现是异质的(可以用多种语言实现),而且在系统实现中可能使用的是第三方提供的构件。基本构架和构件的系统可以有两种方式的演化:一是整体构架的演化,重组系统的构架,增加、删除系统的构件,修改构件之间的拓扑结构;二是系统中单个构件的演化,着眼于系统的单个构件,修改构件的接口、功能。本文着重于研究构架构件系统中构件的演化,对系统使用的构件进行演化,在不修改系统中其他的构件,保持构件之间的基本连接拓扑结构不变的情况下,将演化后的构件替换系统中的原有构件,实现对系统功能的修改。 相似文献
9.
10.
构件演化是指构件根据用户的需求和技术的变化而不断改变,它是由一系列复杂的变化活动组成的。分析了构件演化的特点及其对度量的影响,根据GQM度量定义模型,给出了构件演化过程中的主要度量。希望通过度量和测评,能够有效地对构件演化进行控制,保持构件系统的一致性和稳定性。 相似文献
11.
为了提高演化的实用性, 研究了演化过程实例的在线迁移, 并采用高效的过程继承技术来检验实例的可迁移性。过程继承技术虽然很适合用来检验可信过程的可迁移性, 但其局限性较大, 在多色集合的相关理论基础上, 提出了基于基本结构的Petri网分解方法并证明了这种分解方法符合Petri网的一些基本且重要的性质, 用这种方法使不能按原计划一步迁移的多个过程分解开来多步迁移并尽可能保证其并行性。这种改进的过程继承技术提高了迁移的成功率, 使过程继承技术适用范围更广, 使软件更可信。最后通过一个网上银行支付系统说明方法在实例迁移方面的实用性。 相似文献
12.
通过在软件体系结构层次实施软件重构,能够改善软件的质量、提高软件的易演化性。提出了基于演化信息实施软件体系结构重构的策略,通过分析体系结构的演化历史,采用概念格的方法分析其中构件间的演化依赖关系,从而达到改善体系结构质量的目的。 相似文献
13.
14.
15.
16.
基于本体的可信软件演化框架模型* 总被引:1,自引:0,他引:1
为系统化地考虑开放环境对软件可信性的影响和驱动作用,提出了一种基于本体空间并支持动态演化的框架模型。该模型采用本体空间的方法解决用户、系统和环境三者之间交互的语义问题,在此基础上,通过预定义的规则对软件行为的可信性和自主调整的必要性进行评估,依据评估结果从微观层次的规约制导和宏观层次的人机协同在软件生命周期内对其调整、配置与修正。应用实例及测试结果验证了该框架模型的有效性与可行性。 相似文献
17.
演化是软件可信性的核心问题。为了研究在动态、开放、多变环境下,干扰对软件可信性的影响,在分析软件系统可信性传递过程的基础上,结合元胞自动机机理和耗散理论,构建基于用户视角的软件系统可信性演化的移动元胞自动机仿真模型,仿真研究了软件系统在受到干扰的情境下,软件可信性的变化过程。研究表明,软件系统在受到干扰的环境下,当运行状态发生变化时,其可信性评价值降低,在经历了多次干扰后,系统可信性评价值最终稳定,这为动态评价、预测软件系统可信性提供了一个新的模型与方法。 相似文献
18.
Jesus M. Gonzalez-Barahona Gregorio Robles Martin Michlmayr Juan José Amor Daniel M. German 《Empirical Software Engineering》2009,14(3):262-285
Software evolution studies have traditionally focused on individual products. In this study we scale up the idea of software
evolution by considering software compilations composed of a large quantity of independently developed products, engineered
to work together. With the success of libre (free, open source) software, these compilations have become common in the form
of ‘software distributions’, which group hundreds or thousands of software applications and libraries into an integrated system.
We have performed an exploratory case study on one of them, Debian GNU/Linux, finding some significant results. First, Debian
has been doubling in size every 2 years, totalling about 300 million lines of code as of 2007. Second, the mean size of packages
has remained stable over time. Third, the number of dependencies between packages has been growing quickly. Finally, while
C is still by far the most commonly used programming language for applications, use of the C++, Java, and Python languages
have all significantly increased. The study helps not only to understand the evolution of Debian, but also yields insights
into the evolution of mature libre software systems in general.
Jesus M. Gonzalez-Barahona teaches and researches in Universidad Rey Juan Carlos, Mostoles (Spain). His research interests include libre software development, with a focus on quantitative and empirical studies, and distributed tools for collaboration in libre software projects. He works in the GSyC/LibreSoft research team, . Gregorio Robles is Associate Professor at the Universidad Rey Juan Carlos, where he earned his PhD in 2006. His research interests lie in the empirical study of libre software, ranging from technical issues to those related to the human resources of the projects. Martin Michlmayr has been involved in various free and open source software projects for well over 10 years. He acted as the leader of the Debian project for two years and currently serves on the board of the Open Source Initiative (OSI). Martin works for HP as an Open Source Community Expert and acts as the community manager of FOSSBazaar. Martin holds Master degrees in Philosophy, Psychology and Software Engineering, and earned a PhD from the University of Cambridge. Juan José Amor has a M.Sc. in Computer Science from the Universidad Politécnica de Madrid and he is currently pursuing a Ph.D. at the Universidad Rey Juan Carlos, where he is also a project manager. His research interests are related to libre software engineering, mainly effort and schedule estimates in libre software projects. Since 1995 he has collaborated in several libre software organizations; he is also co-founder of LuCAS, the best known libre software documentation portal in Spanish, and Hispalinux, the biggest spanish Linux user group. He also collaborates with and Linux+. Daniel M. German is associate professor of computer science at the University of Victoria, Canada. His main areas of interest are software evolution, open source software engineering and intellectual property. 相似文献
Daniel M. GermanEmail: |
Jesus M. Gonzalez-Barahona teaches and researches in Universidad Rey Juan Carlos, Mostoles (Spain). His research interests include libre software development, with a focus on quantitative and empirical studies, and distributed tools for collaboration in libre software projects. He works in the GSyC/LibreSoft research team, . Gregorio Robles is Associate Professor at the Universidad Rey Juan Carlos, where he earned his PhD in 2006. His research interests lie in the empirical study of libre software, ranging from technical issues to those related to the human resources of the projects. Martin Michlmayr has been involved in various free and open source software projects for well over 10 years. He acted as the leader of the Debian project for two years and currently serves on the board of the Open Source Initiative (OSI). Martin works for HP as an Open Source Community Expert and acts as the community manager of FOSSBazaar. Martin holds Master degrees in Philosophy, Psychology and Software Engineering, and earned a PhD from the University of Cambridge. Juan José Amor has a M.Sc. in Computer Science from the Universidad Politécnica de Madrid and he is currently pursuing a Ph.D. at the Universidad Rey Juan Carlos, where he is also a project manager. His research interests are related to libre software engineering, mainly effort and schedule estimates in libre software projects. Since 1995 he has collaborated in several libre software organizations; he is also co-founder of LuCAS, the best known libre software documentation portal in Spanish, and Hispalinux, the biggest spanish Linux user group. He also collaborates with and Linux+. Daniel M. German is associate professor of computer science at the University of Victoria, Canada. His main areas of interest are software evolution, open source software engineering and intellectual property. 相似文献