计算机科学 ›› 2018, Vol. 45 ›› Issue (10): 189-195.doi: 10.11896/j.issn.1002-137X.2018.10.035

• 软件与数据库技术 • 上一篇    下一篇

构件系统演化一致性的判定方法

郑交交1, 李彤2, 林英1,2, 谢仲文1,2, 王晓芳1, 成蕾1, 刘妙1   

  1. 云南大学软件学院 昆明650091 1
    云南大学软件工程重点实验室 昆明650091 2
  • 收稿日期:2017-09-27 出版日期:2018-11-05 发布日期:2018-11-05
  • 作者简介:郑交交(1992-),女,硕士生,主要研究方向为系统分析与集成,E-mail:506950231@qq.com;李 彤(1963-),男,博士,教授,CCF会员,主要研究方向为软件工程、软件过程、软件演化等,E-mail:tli@gnu.edn.cn(通信作者);林 英(1973-),女,博士,副教授,CCF会员,主要研究方向为信息安全、软件工程等;谢仲文(1982-),男,博士,讲师,CCF会员,主要研究方向为软件工程、软件过程、软件演化等;王晓芳(1993-),女,硕士生,主要研究方向为方向软件工程;成 蕾(1993-),女,硕士生,主要研究方向为软件工程理论与方法;刘 妙(1993-),女,硕士生,主要研究方向为系统分析与集成。
  • 基金资助:
    国家自然科学基金项目(61379032,61662085)资助

Judgement Method of Evolution Consistency of Component System

ZHENG Jiao-jiao1, LI Tong2, LIN Ying1,2, XIE Zhong-wen1,2, WANG Xiao-fang1, CHENG Lei1, LIU Miao1   

  1. College of Software,Yunnan University,Kunming 650091,China 1
    Key Laboratory for Software Engineering of Yunnan University,Kunming 650091,China 2
  • Received:2017-09-27 Online:2018-11-05 Published:2018-11-05

摘要: 构件系统演化一致性是确保演化操作可靠的必要条件,若一致性得不到满足,则会致使演化后的系统达不到既定的功能目标。针对该问题,文中提出基于接口、流程结构、内部行为的构件系统演化一致性判断方法。首先,在演化后的系统中将每个构件视为判定执行者,使所有的构件协同参与一致性判定过程,从接口和流程结构出发,判断执行者和全局的一致性;其次,在满足接口、流程结构一致性的情况下,判断演化构件在演化前后的内部行为一致性;最后,通过对一个构件实例的完整分析,详细描述了该判定方法,并验证了其可行性。

关键词: 构件系统, 接口一致性, 结构一致性, 软件演化, 演化一致性

Abstract: A necessary condition to ensure the reliability of evolution operations is the evolution consistency of component system.If this condition is not satisfied,the evolved system will miss the established functional target.In response to this problem,this paper proposed a judgement method of evolution consistency of component system based on interface,process structure and internal behavior.Firstly,in the evolved system,each component is considered as a judgement executor,so that all the components can participate in the process of consistency judgment collaboratively.Based on the interface and the process structure,the consistency between judgement executors and the global system can be judged.Secondly,in the case of satisfying consistency of interface and process structure,the internal behavior consistency of components before and after evolution is judged.Finally,the complete analysis of a component case is used to describe the judgement method in detail and verify the feasibility of the proposed method.

Key words: Component system, Evolution consistency, Interface consistency, Software evolution, Structural consistency

中图分类号: 

  • TP311
[1]LI C Y,LI Y,WU J,et al.A Service-Oriented Software Model Supporting Dynamic Evolution[J].Chinese Journal of Compu-ters,2006,29(7):1020-1028.(in Chinese)
李长云,李莹,吴健,等.一个面向服务的支持动态演化的软件模型[J].计算机学报,2006,29(7):1020-1028.
[2]MOKNI A,URTADO C,VAUTTIER S,et al.A formal approach for managing component-based architecture evolution[J].Science of Computer Programming,2016,127:24-29.
[3]QING G,JUN L,YINGFEI X,et al.High-confidence software evolution[J].Science China(Information Sciences),2016,59(7):94-112.
[4]XIE Z W,MING L,LIN Y,et al.The consistency analysis of software dynamic evolution based on Petri net[J].Computer Science,2016,43(11):234-241.(in Chinese)
谢仲文,明利,林英,等.基于Petri网的软件动态演化的一致性分析[J].计算机科学,2016,43(11):234-241.
[5]ZHANG J,LEI H.Research on the reliability evolution of network software[J].Journal of Southwest Jiaotong University,2014,49(2):310-316.(in Chinese)
张靖,雷航.网构软件可靠性演化计算研究[J].西南交通大学学报,2014,49(2):310-316.
[6]JIANMEI G,YINGLIN W,TRINIDAD P,et al.Consistency maintenance for evolving feature models[J].Expert Systems With Applications,2011,39(5):4987-4998.
[7]LYTRA I,TRAN H,ZDUN U.Constraint-Based Consistency Checking between Design Decisions and Component Models for Supporting Software Architecture Evolution[C]∥European Conference on Software Maintenance & Reengineering.IEEE,2012:287-296.
[8]RAMOS R,SAMPAIO A,MOTA A.Conformance notions for the coordination of interaction components[J].Science of Computer Programming,2010,75(5):350-373.
[9]GURUNATHAM C H,RAJARAJESWARI P,VASUMATHI D D.Consistency Evolution of Process models based on Structural Analysis and Behavioral Profiles[J].International Journal of Modern Engineering Research,2012,4(2):2568-2573.
[10]QUINTON C,PLEUSS C,BERRE D L,et al.Consistency Checking for the Evolution of Cardinality-based Feature Models[C]∥International Software Product Line Conference.2014:122-131.
[11]WANG L,PENG X,ZHAO W Y.Framework for Software Dynamic Adaptation Evolution Based on Non-Functional Features[J].Computer Engineering,2008,34(24):74-76.(in Chinese)
王雷,彭鑫,赵文耘.基于非功能性特征的软件动态自演化框架[J].计算机工程,2008,34(24):74-76.
[12]ZHOU Y,GE J D,ZHANG P C,et al.Model based verification of dynamically evolvable service oriented systems[J].Science China(Information Sciences),2016,59(3):5-21.
[13]MA Y T,HE K Q,LI B,et al.Empirical Study on the Characteristics of Complex Networks in Networked Software[J].Journal of Software,2011,22(3):381-407.(in Chinese)
马于涛,何克清,李兵,等.网络化软件的复杂网络特性实证[J].软件学报,2011,22(3):381-407.
[14]LI L M,WANG Z J,TANG L Y.Research on the Testing of Component Functional Behavior[J].Journal of Chinese ComputerSystems,2010,31(4):686-690.(in Chinese)
李良明,王志坚,唐龙业.构件功能行为测试的研究[J].小型微型计算机系统,2010,31(4):686-690.
[15]ZHOU Y,HUANG Y K,HUANG Z Q,et al.Towards an Approach of Consistency Verification for Online Software Evolution in Open Environments[J].Journal of Software,2015,26(4):747-759.(in Chinese)
周宇,黄延凯,黄志球,等.一种开放环境下软件在线演化一致性验证方法[J].软件学报,2015,26(4):747-759.
[16]MILADI M N,JMAIEL M,KACEM M H.A UML profile and a FUJABA plugin for modelling dynarnic software architectures [C]∥Proceedings of the Workshop on Model-Driven Software Evolution.Washington:IEEE Press,2007:20-26.
[17]KACEM M H,KACEM A H,JMAIEL M,et al.Describing dynamic software architectures using an extended UML model [C]∥ACM the Symposium on Applied Computing.New York:ACM Press,2006:1245-1249.
[18]QI X Y,WANG T,MA C.Research on interactive behavior consistency of Component Evolution[J].Computer Engineering,2010,36(24):51-53.(in Chinese)
祁晓园,王涛,马川.构件演化的交互行为一致性研究[J].计算机工程,2010,36(24):51-53.
[1] 张久杰, 陈超, 聂宏轩, 夏玉芹, 张丽萍, 马占飞.
基于类粒度的克隆代码群稳定性实证研究
Empirical Study on Stability of Clone Code Sets Based on Class Granularity
计算机科学, 2021, 48(5): 75-85. https://doi.org/10.11896/jsjkx.200900062
[2] 王继文, 吴毅坚, 彭鑫.
基于演化和语义特征的上帝类检测方法
Approach of God Class Detection Based on Evolutionary and Semantic Features
计算机科学, 2021, 48(12): 59-66. https://doi.org/10.11896/jsjkx.210100077
[3] 何鹏, 喻绿君.
面向群体协作开发的开源软件峭壁分析
Analysis of Open Source Software Cliff Walls for Group Collaborative Development
计算机科学, 2020, 47(6): 51-58. https://doi.org/10.11896/jsjkx.190300140
[4] 张静宣, 江贺.
代码标识符归一化研究现状及发展趋势
Research Status and Development Trend of Identifier Normalization
计算机科学, 2020, 47(3): 1-4. https://doi.org/10.11896/jsjkx.200200009
[5] 钟林辉, 扶丽娟, 叶海涛, 齐杰, 徐静.
软件演化历史的逆向工程生成方法研究
Study on Reverse Engineering Generation Method of Software Evolution History
计算机科学, 2020, 47(11A): 549-556. https://doi.org/10.11896/jsjkx.200200067
[6] 潘浩, 郑巍, 张紫枫, 芦超群.
软件网络分形结构特征研究
Study on Fractal Features of Software Networks
计算机科学, 2019, 46(2): 166-170. https://doi.org/10.11896/j.issn.1002-137X.2019.02.026
[7] 唐倩文, 陈良育.
基于复杂网络理论的Java开源系统演化分析
Analysis of Java Open Source System Evolution Based on Complex Network Theory
计算机科学, 2018, 45(8): 166-173. https://doi.org/10.11896/j.issn.1002-137X.2018.08.030
[8] 王晓芳,谢仲文,李彤,成蕾,郑交交,刘晓芳.
一种带租户演化容忍度的SaaS服务演化一致性判定方法
Saas Service Evolution Consistency Checking with Tenant Tolerance
计算机科学, 2018, 45(5): 147-155. https://doi.org/10.11896/j.issn.1002-137X.2018.05.025
[9] 郑明,李彤,林英,周小煊,李响,明利.
构件系统建模及其动态演化一致性验证方法
Dynamic Evolution Consistency Verification Method for Component System Modeling
计算机科学, 2017, 44(11): 80-86. https://doi.org/10.11896/j.issn.1002-137X.2017.11.012
[10] 赵会群,黄榆涵.
软件模型代数性质的程序化验证
Program Verification of Software Model’s Algebraic Properties
计算机科学, 2017, 44(11): 240-245. https://doi.org/10.11896/j.issn.1002-137X.2017.11.036
[11] 钟林辉,李俊杰,夏鲸,薛良波.
基于多维属性的构件化软件演化相似性度量方法研究
Research on Evolution Similarity Measurement of Component-based Software Based on Multi-dimensional Evolution Properties
计算机科学, 2016, 43(Z11): 499-505. https://doi.org/10.11896/j.issn.1002-137X.2016.11A.112
[12] 钱晔,李彤,郁涌,孙吉红,于倩,彭琳.
一种面向同步交互的软件演化过程建模方法
Approach to Modeling Software Evolution Process for Synchronous Interaction
计算机科学, 2016, 43(8): 154-158. https://doi.org/10.11896/j.issn.1002-137X.2016.08.032
[13] 韩俊明,王炜.
基于LDA的软件演化确认建模
Method of Modeling Software Evolution Confirmation Based on LDA
计算机科学, 2015, 42(Z11): 464-466.
[14] 于涵,王海,彭鑫,赵文耘.
基于3D动画的软件演化信息可视化
Software Evolution Visualization Based on 3D Animation
计算机科学, 2015, 42(12): 36-39.
[15] 刘阳,刘秋荣,刘辉.
函数抽取重构的自动检测方法
Automated Detection of Extract Method Refactorings
计算机科学, 2015, 42(12): 105-107.
Viewed
Full text


Abstract

Cited

  Shared   
  Discussed   
No Suggested Reading articles found!