面向对象—构件的软件动态演化技术研究
详细信息    本馆镜像全文|  推荐本文 |  |   获取CNKI官网全文
摘要
软件发展的历史表明,影响软件技术发展的主要要素为计算平台、人的思维模式以及问题域,而以上要素在软件开发活动中又被抽象为平台空间、认知空间以及问题空间。因此从本质上,软件技术的发展是人们对三个空间的认识不断深化,而且促进他们相互之间演化的过程。而当前随着因特网的迅速发展,同时具有计算和组网能力设备的小型化、微型化和嵌入化使得网络无处不在,人们对三个空间的认识发生重大变化,从而推动针对因特网环境下新型软件技术的研究。目前,杨芙清、梅宏、吕建等针对因特网开放、动态、难控的网络环境提出网构软件的概念;IBM的Kephart和Chess等针对软件之间的协同、自我管理(包括调整、维护等)等问题提出自治计算的概念。但无论是网构软件、自治计算或者还是其他针对因特网的软件模型,均面临软件运行环境易变带来的挑战—动态演化,即软件系统要能在开放、动态、难控的环境下,针对外部环境的变化而变化,并通过自我调整达到外部期望的过程。当前软件的动态演化也已成为软件工程中研究的热点,成为实现动态、开放、灵活多变系统的关键技术,本文也对动态演化进行深入地研究。
     本文首先从因特网环境下软件动态演化的需求出发,提出的软件动态演化区分原则,分析软件动态演化的研究现状,并从软件如何支持动态演化、怎样动态演化以及演化后正确性和一致性方面进行系统地阐述,并重点讨论了软件动态演化的建模、系统框架等问题。进而在对现有软件动态演化的分析和总结的基础上,提出一种新型的软件动态演化概念模型,为下一步软件动态演化的研究提供指导。
     软件演化中的行为一致性、相容性以及系统完整性约束,长期以来是动态演化中研究的热点,而现有形式化理论一般只针对演化的某一方面,难以对动态演化的性质提供完整的分析和验证,并且对环境及环境变化的描述较少。因此本文在Milner的Bigraph理论基础上,提出基于Bigraph的建模方法,并论证动态演化的相关特性。与以往基于Petri Net、π演算以及进程代数不同,综合Bigraph能融合π演算和移动Ambient演算的优点,同时引入环境上下文参与系统的迁移,使系统的描述更为直观和精确,适合对动态演化的形式化建模,并由于利用Bigraph可模拟其他演算,因此也可充分利用以前的研究成果。实例表明,基于Bigraph提出的软件建模机制,可为软件动态演化的形式化方法提供坚实的基础。
     软件动态演化机制是动态演化中的关键问题之一。本文基于设计模式中的命令模式,依据方法调用与方法执行分离的原则,采用集中调度控制所有方法执行的方式,在反射的基础上设计出一种灵活的软件在线演化机制(FOEM)。该机制的设计原理是把系统中所有的方法调用封装成命令请求,加入主动队列,而在具体调度时检查内部配置配置文件,根据配置的具体对象类型、方法名称以及相关动作,动态增加或者替换该方法调用,从而达到在线变更软件系统行为的目标。实验表明该机制灵活多变,且具有普遍的适用性,能满足大多数动态演化软件的需求。但该机制并不适合涉及多个对象的复杂演化流程,因此本文从面向服务的计算模型中得到启发,提出面向服务对象的”伪面向服务”动态演化机制(SOSA),并利用服务对象注册表解耦直接对象引用,从而在运行中动态解释服务对象的调用,进而完成复杂的演化逻辑变更。该机制把SOA方式引入程序设计内部,与外部的服务调用统一风格,便于局部/远端对象的无缝迁移以及服务流程的动态组合,可灵活实现软件的动态演化。
     系统框架是动态演化软件能否被快速开发和广泛部署的关键指标。本文基于对象动态替换机制,设计实现一种适合嵌入式环境的动态演化框架。该框架利用面向对象模型中,对象的内存布局只与类中的变量以及虚函数相关,当这两部分保持不变时,新对象的内存映像将保持与原始对象一致,故当新对象替换原始对象后(完全取代原始对象的地址空间),系统调用对应地址的指令时,其实是对新对象的调用,从而“透明”地切换至新对象,利用对象的更新完成系统演化需求。
     针对当前动态演化主要从宏观层面研究动态演化软件的形式化、模型以及框架,且主要侧重功能性需求,而对非功能性需求的研究较少或采用定性的方法,本文对动态演化过程中的非功能性需求,特别是性能与可靠性进行定量的研究。提出基于体系结构模型的动态组件分派方法,满足系统动态演化过程中的性能需求,并证明该组件分派问题为NP问题,给出相应的启发式算法。对于可靠性,本文提出基于分布式体系结构模型的逆序组件分派算法满足动态演化过程的系统可靠性需求。通过实验表明,本文提出的相关算法适合于满足在实时抉择条件下动态演化的相关非功能性需求,为动态演化的演化决策提供指导思路。
     综上,通过对动态演化软件的形式化、演化机制、系统框架等问题的研究,建立了软件动态演化的全局研究视图,提出了若干适用于动态演化的关键技术和算法,这些为动态演化软件广泛的研究和部署提供了理论基础和实际的指导意义。
History of software technology indicated that computing platforms, thinking pattern and underlying property of problems, corresponding to the computing space, thinking space and problem space, are the mainly reasons affecting software development. In essence, the development of software technology is the process of in-depth understanding of the three spaces and promoting the transition between them. With the rapid developing of internet, tiny devices of computing power and networking capabilities are making network ubiquitous. All these change people's understanding of the three spaces and will promote new software technology oriented internet.Currently, according to the opening, dynamic and difficult control environment in the field of internet, Fuqing Yang, Hong Mei, Jian Lu, et al proposed Internetware. Kephart and Chess in IBM proposed autonomic computing for collaboration, self-managing and the like. But no matter Internetware, autonomic computing or other software models, there are all a common challenge, that how to change with the opening, dynamic and difficult controlled external environment and meet external expectations by self-adapting. Obviously the research to dynamic evolution of software is very important to achieve dynamic, open and flexible system and has become an important field in the software engineering community.
     According to the requirements of dynamic evolution in internet, first analyze the background of dynamic evolution and describe it in detail from the aspect of how to support evolution, evolve and verify the correctness and consistence of evolution. Then propose some principles to classify dynamic evolution and emphasizes on model, framework of dynamic evolution. Further propse a conception model of dynamic evolution based on these to provide guidance for further study of dynamic evolution.
     The behavior's consistency, coherence and integrity of system have long been the research focus in dynamic evolution. But today the formalism of dynamic evolution mainly concentrates on some particular aspect and little involves the environment, it hard to analyze and verify all the characteristics in dynamic evolution. Based on the theory in Bigraph which is proposed by Robin Milner, propose a modeling method based on Bigraph and demonstrate the relevant characteristics of the dynamic evolution. Different from tradition method utilizing Petri Net,π calculus and process algebra, Bigraph merge the advantages of π calculus and mobile ambient calculus and introduce environment context to participate system transition, which enable more intuitive and accurate description of system and make it more suitable for modeling of dynamic evolution. A case study of Bigraph shows that software modeling mechanism based on Bigraph can offer solid foundation for the formalism of dynamic evolution.
     Evolution mechanism is one of the key problems in dynamic evolution. On the basis of command pattern, separating method invocation from method execution and handling the method execution by centralized dispatching, an online evolution mechanism (FOEM) is designed. In FOEM, the method invocation is encapsulated into command request and put into active queue, when dispatching changes its behavior according to configuration in deploy file, for example to add method before or after original method or replace original method dynamically during running time. Experiments show that FOEM is flexible and ligthweight, which meets most of dynamic evolution requirements, But FOEM is not suit for complex evolution process involving large number of objects. Inspiring from service oriented computing, another dynamic evolution mechanism is proposed, which is based on service object and we may call it a pseudo SOA. The mechanism decouple the object reference by registry so that it can interpret the invocation of service object during running time and accomplish the evolution with complex evolution logic. The mechanism introduces SOA in the internal of program design; enable the same unified invocation style whenever from internal or external. It is convenient for migration between local and remote service object, and also dynamic composition of service object to realize dynamic evolution flexibly.
     Framework is the key factors for software dynamic evolution which enable fast develop and widely deploy. Based on the mechanism of dynamic object replacing, a dynamic evolution framework is designed for embedded environment. The principle used in the framework is that when classes have the same number of variables and virtual functions and signatures, memory layout of object belonging to different classe is the same. By means of this way, when the two part of class is the same, the same is the memory layout of the old object as the new object. So after replace the old object, the system execute the instruction of the same address which is now change to the new object, so it can switch from the old object to the new object transparently and satisfy the evolution requirements.
     In view that current research of dynamic evolution is mainly focus on the functional requirement and little about the nonfunctional requirement or almost useing qualitative method, the research of quantitative mothods about the nonfunctional requirement during evolution, especially performance and reliability, is carrying out in this paper. First a component assignment method is proposed on the basis of architecture model to satisfy the performance and resource constrains during dynamic evolution.
     The component assignment problem is proved to be NP, so a corresponding heuristic algorithm is proposed. As for reliability, a component assignment algorithm based on distributed architecture model is also proposed to satisfy the reliability during dynamic evolution. Experiments show that all these algorithms proposed is suit for evolution decision-making during running time, which provides guidance for the nonfunctional evolution.
     Our work has focused on the following aspects:1) through the study on dynamic evolution modeling, evolution mechanism, system infrastructure and applications, this dissertation establishes a global view of software dynamic evolution;2) proposes many key technologies and algorithms for software dynamic evolution. All of these can provide effective direction and guideline on the research of software dynamic evolution.
引文
[1]吕建,马晓星,陶先平等.网构软件的研究与进展.中国科学(E辑)信息科学,2006,36(10):1037-1080
    [2]Kephart J. Chess D. The Vision of Autonomic Computing.IEEE Computer,2003, 36(1):41-51
    [3]Porter A.Sztipanovits J. Workshop Report of New Visions for Software Design and Productivity:Research and Applications, www.nitrd.gov/pubs/sdp-wrkshp-final.pdf,2001-12-13
    [4]Weiser M. The computer for the 21st century. Scientific American,1991, 265(3):94-104
    [5]Kiczales G. Hilsdale E. Hugunin J. et al. An Overview of AspectJ. In:Proc of the 15th European Conference on Object-Oriented Programming. Berlin: Springer-Verlag,2001,327-353
    [6]Chiba S. A Metaobject Protocol for C++.In:Proc of the ACM Conference on Object-Oriented Programming Systems, Languages, and Applications (OOPSLA'95). New York:ACM,1995,285-299
    [7]Welch I. Stroud R. Kava-using byte code rewriting to add behavioural reflection to Java.In:Proc of the 6th conference on USENIX Conference on Object-Oriented Technologies and Systems-Volume 6. Berkeley:USENIX Association, 2001,119-130
    [8]Chiba S.Javassist-A Reflection-Based Programming Wizard for Java.In:Proc of the ACM OOPSLA'98 Workshop on Reflective Programming in C++ and Java.New York:ACM,1998
    [9]李长云,李赣生,何频捷.一种形式化的动态体系结构描述语言.软件学报.2006,17(6):1349-1359
    [10]郭成昊,赵颜利,刘凤玉.一种自适应系统的体系结构建模方法.计算机应用研究.2007,24(1):64-65
    [11]Allen R. Douence R. Garlan D. Specifying and analyzing dynamic software architectures. In:Proc of the First International Conference, FASE'98 Held as Part of the Joint European Conferences on Theory and Practice of Software (ETAPS'98), Lisbon, Portugal. Berlin:Springer-Verlag.1998:21-37
    [12]Magee J, Kramer J. Dynamic structure in software architectures. In:Proc of the 4th ACM SIGSOFT symposium on Foundations of software engineering (SIGSOFT'96). SIGSOFT Software Engineering Notes, New York:ACM Press, 1996,3-14
    [13]冯耀东,黄罡,梅宏.一种自适应软件体系结构建模及其实施方法,北京大学学报(自然科学版).2008,44(1):67-76
    [14]李阳,吴朝晖.一种动态自适应体系结构的研究.浙江大学学报(工学版).2005,39(2):20-24
    [15]Zhiming Chang, Xinjun Mao, Zhichang Qi.Formal Analysis of Architectural Policies of Self-Adaptive Software by Bigraph.In:Proc of the 9th International Conference for Young Computer Scientists (ICYCS'08). Washington DC:IEEE Computer Society,2008,118-123
    [16]Hirsch D. Inverardi P. Montanari U. Graph grammars and constraint solving for software architecture styles. In:Proc of the third international workshop on Software architecture (ISAW'98), Orlando, Florida, United States. New York: ACM Press,1998,69-72
    [17]Shen R. Sun X. Huang G. et al.Towards a unified formal model for supporting mechanisms of dynamic component update. In:Proc of the 10th European software engineering conference held jointly with 13th ACM SIGSOFT international symposium on Foundations of software engineering. New York: ACM Press,2005,80-89
    [18]李长云,李莹,吴健等.一个面向服务的支持动态演化的软件模型.计算机学报.2006,,29(7):1020-1028
    [19]余萍,马晓星,吕建等.一种面向动态软件体系结构的在线演化方法.软件学报.2006,17(6):1360-1371
    [20]马晓星,余萍,陶先平等.一种面向服务的动态协同架构及其支撑平台.计算机学报.2005,28(4):467-77
    [21]黄罡,王千祥,梅宏等.基于软件体系结构的反射式中间件研究.软件学报.2003,14(11):1819-826
    [22]Oreizy P. Medvidovic N, Taylor R.Architecture-Based Runtime Software Evolution.In:Proc of the international Conference on software Engineering 1998 (ICSE98) Kyoto, japan. Washington DC:IEEE Computer Society,1998, 177-18
    [23]Oquendo F, Warboys B, Morrison R, et al. Archware:Architecting evolvable software. In:Proc of the 1st European Workshop on Software Architecture (EWSA'2004), St Andrews, UK. Berlin:Springer- Verlag.2004,257-271
    [24]Garlan D, Cheng S W, Huang C. Rainbow:Architecture-based self-adaptation with reusable infrastructure. Computer.2004,37(10):46-54
    [25]Morandini M. Penserini L. Perini A.Modelling Self-Adaptivity:A Goal-Oriented Approach. In:Proc of the Second IEEE International Conference on Self-Adaptive and Self-Organizing Systems (SASO'08). Washington DC:IEEE Computer Society,2008,469-470
    [26]Goldsby H. Sawyer P. Bencomo N.et al.Goal-Based Modeling of Dynamically Adaptive System Requirements.In:Proc of the 15th Annual IEEE International Conference and Workshop on the Engineering of Computer Based Systems (ECBS'08). Washington DC:IEEE Computer Society,2008,36-45
    [27]Whittle J. Sawyer P. Bencomo N.et al.A Language for Self-Adaptive System Requirements. In:Proc of the 2008 International Workshop on Service-Oriented Computing Consequences for Engineering Requirements (SOCCER'08). Washington DC:IEEE Computer Society,2008,24-29
    [28]Dowling J, Cahill V.The K-component architecture meta-model for self-adaptive software.In:Proc of the 3rd International Conference (REFLECTION 2001). Berlin:Springer-Verlag,2001,81-88
    [29]吴卿.面向普适计算的自适应中间件模型与方法研究.[浙江大学博士论文].杭州:浙江大学计算机学院,2006
    [30]Cao Jiuxin.Mao Bo.Luo Junzhou.The Self-adaptive Framework of Learning Object Based on Context.In:Proc of the 2008 International Conference on Computer Science and Software Engineering-Volume 05 (CSSE'08). Washington DC:IEEE Computer Society,2008,941-944
    [31]Capra L, Emmerich W. CARISMA:Context-aware reflective middleware system. IEEE Transactions on Software Engineering.2003,29 (10):929-945
    [32]美国Arizona州大学RCSM中间件项目dpsc.asu.edu.rcsm.2004-4-20
    [33]Hernandez-Sosa, D. Dominguez-Brito, A.C. Guerra-Artal, C. et al. Runtime Self-Adaptation in a Component-Based Robotic Framework.In:Proc of IEEE/RSJ International Conference on Intelligent Robots and Systems.New Jersey:IEEE,2005,2700-2705
    [34]Berry D. Cheng B. Zhang J. The four levels of requirements engineering for and in dynamic adaptive systems.In:Proc of the 11th International Workshop on Requirements Engineering:Foundation for Software Quality (REFSQ'05), Porto, Portugal. Berlin:Springer-Verlag,2005
    [35]Morrison R. Kirby G. Balasubramaniam D. et al.Support for evolving software architectures in the Arch Ware ADL.In:Proc of the Fourth Working IEEE/IFIP Conference on Software Architecture (WICSA 2004). New Jersey: IEEE,2004,69-78
    [36]Brian Warboys,Mark Greenwood,Ian Robertson,et al.The ArchWare Tower:The Implementation of an Active Software Engineering Environment Using a p-Calculus Based Architecture Description Language. In:Proc of the 2nd European Workshop, EWSA 2005, Pisa, Italy.Berlin:Springer-Verlag,2005, 30-40
    [37]Medvidovic N., Rosenblum D.S., and Taylor R.N. A Language and Environment for Architecture-Based Software Development and Evolution. In:Proc of the 21st International Conference on Software Engineering (ICSE'99). Los Angeles, CA. Washington DC:IEEE Computer Society,1999,44-53
    [38]Dashofy E. Andre van der Hoek. Taylor R.A Highly-Extensible, XML-Based Architecture Description Language.In:Proc of the Working IEEE/IFIP Conference on Software Architectures (WICSA 2001), Amsterdam, Netherlands. Washington DC:IEEE Computer Society,2001,103-112
    [39]Dashofy E. Andre van der Hoek. Taylor R. Towards architecture-based self-healing systems. In:Proc of the First Workshop on Self-healing (WOSS'02). New York:ACM Press,2002,21-26
    [40]Georgas C. Taylor R. Towards a knowledge-based approach to architectural adaptation management. In:Proc of the 1st ACM SIGSOFT Workshop on Self-managed Systems. New York:ACM Press,2004,59-63
    [41]Garlan D. Cheng S.Schmerl B.Increasing System Dependabil-ity through Architecture-based Self-repair. Architecting Dependable Systems, LNCS 2677. 2003,2677(1):61-89
    [42]Schmerl B.Aldrich J.Garlan D.et al.Discovering Architectures from Running Systems. IEEE Transactions on Software Engineering,2006,32(7):454-466
    [43]Cheng S. Garlan D. Schmerl B. Evaluating the Effectiveness of the Rainbow Self-Adaptive System. In:Proc of ICSE 2009 Workshop on Software Engineering for Adaptive and Self-Managing Systems (SEAMS'09), Vancouver, BC, Canada. Washington DC:IEEE Computer Society,2009,132-141
    [44]Dowling J. The Decentralised Coordination of Self-Adaptive Components for Autonomic Distributed Systems:[Dissertation]. Dublin:University of Dublin, 2004
    [45]Dowling J, Cahill V. Self-Managed decentralised sysems using k-components and collaborative reinforcement learning. In:Proc of the 1st ACM SIGSOFT Workshop on Self-managed Systems, WOSS'04. New York:ACM Press,2004, 39-43
    [46]Saha D. Mukherjee A. Pervasive computing:A paradigm for the 21st century. Computer.2003,36(3):25-31
    [47]Sousa J P. Garlan D. Aura:An architectural framework for user mobility in ubiquitous computing environments. In:Proc of the IFIP 17th World Computer Congress-TC2 Stream/3rd IEEE/IFIP Conference on Software Architecture: System Design, Development and Maintenance. WICSA 3. Deventer:Kluwer, B.V.,2002:29-43
    [48]Oreizy P.Gorlick M.Taylor R.et al.An Architecture-Based Approach to self-Adaptive Software.IEEE Intelligent Systme,1999,14(3):54-62
    [49]梅宏,黄罡,赵海燕等.一种以体系结构为中心的网构软件开发方法.中国科学(E辑)信息科学.2006,36(10):1100-1126
    [50]胡海洋,马晓星,陶先平等.反射中间件的研究与进展.计算机学报.2005,28(9):1407-1420
    [51]Hirsch D. Inverardi P. Montanari U. Graph grammars and constraint solving for software architecture styles. In:Proc of the third international workshop on Software architecture (ISAW'98). New York:ACM Press,1998,69-72
    [52]Allen R, Douence R, Garlan D. Specifying and analyzing dynamic software architectures.In:Proc of the First International Conference, FASE'98 Held as Part of the Joint European Conferences on Theory and Practice of Software, ETAPS'98 Lisbon. Portugal. Berlin:Springer-Verlag,1998,21-37
    [53]Hoare C.A.R. Communicating Sequential Processes.Oxford:Prentice Hall,1985
    [54]黄崇德,彭鑫,赵文耘.体系结构动态演化中的构件行为分析.计算机工程与应用.2007,43(10):87-92
    [55]郑睿,金龙飞,刘磊.软件体系结构在行为与结构演化中的一致性保.吉林大学学报(理学版).2007,45(4):589-594
    [56]Allen R. A formal approach to software architecture:[Dissertation]. Pittsburgh: Carnegie Mellon University.1997,39-66
    [57]Lau Y M. Zhao W Y. Xin P. et al. A Connector-Centric Approach to Aspect-Oriented Software Evolution.In:Proc of the 31st Annual International Computer Software and Applications Conference-Volume 02 (COMPSAC'07). Washington DC:IEEE Computer Society,2007,391-398
    [58]Robin Milner. A Calculus of Communicating Systems. New Jersey:Springer- Verlag New York,1982
    [59]Perez-Toledano M. Navasa A. Murillo J.et al.TITAN:a Framework for Aspect Oriented System Evolution.In:Proc of Second International Conference on Software Engineering Advances (ICSEA 2007), Washington DC:IEEE Computer Society,2007,4-14.
    [60]张凌浩,马晓星.基于进程代数的软件动态演化模型初探.计算机与数字工程.2008,36(10):63-69
    [61]Wu H G. Wu G Q.Formal Depiction of Composition of Web Services Based on CCS and Modal Mu-Calculus. In:Proc of the 2009 International Symposium on Information Engineering and Electronic Commerce (IEEC'09). Washington DC: IEEE Computer Society.2009,408-412
    [62]Zhang X G. Zhang W S.A Cooperative Service Composition Language and Its Formal Semantics. In:Proc of the Seventh International Conference on Parallel and Distributed Computing, Applications and Technologies (PDCAT'06). Washington DC:IEEE Computer Society,2006,333-338
    [63]Cao Z Y. Li B. Zhang W S. A CCS based Model for Describing and Verifying the Behavior of Web Service.In:Proc of the 2007 IFIP International Conference on Network and Parallel Computing Workshops (NPC'07), Washington DC: IEEE Computer Society,2007,987-994
    [64]Milner R. Communicating and Mobile Systems:The pi-calculus. Cambridge: Cambridge University Press,1999
    [65]龚洪泉,赵文耘,徐如志等.基于Pi演算的构件演化研究.电子学报.2004,32(12A):238-242
    [66]Bracciali A.Brogi A. Canal C. A formal approach to component adaptation. Journal of Systems and Software.2005,74(1):45-54
    [67]袁崇义Petri网原理.北京:电子工业出版社.1999
    [68]Ji Zhang, Betty H. C. Cheng.Model-based development of dynamically adaptive software.In:Proc of the 28th international conference on Software engineering (ICSE'06), Shanghai, China. New York:ACM Press,2006,371-380
    [69]罗毅,李兴宇,关连伟等.构件演化中的系统行为一致性的研究.计算机科学.2008,35(1):266-270
    [70]郁湧,李彤,王炜等.基于Petri网的软件演化过程.计算机应用与软件.2008-10,25(10):46-48
    [71]钱柱中,陆桑璐,谢立.基于Petri网的Web服务自动组合研究.计算机学报.2006,29(7):1057-1066
    [72]常志明,毛新军,齐志昌Bigraph理论在自适应软件体系结构上的应用.计算机学报.2009,32(1):97-106
    [73]Cardelli L, Gordon A. Mobile ambients. In:Proc of International Conference on Foundations of Software Science and Computation Structures FOSSACS'98. Berlin:Springer-Verlag,1998,140-155
    [74]Jensen OH, Milner R.Bigraphs and mobile processes(revised).Computer Laboratory,University of Cambridge,Cambridge:Technical Report UCAM-CL-TR-580,2003
    [75]Milner R. Bigraphs for petri nets. In:Proc of the 4th Advanced Course On PetriNets ACPN 2003, Eichstatt, Germany. Berlin:Springer-Verlag,2004: 161-191
    [76]Milner R. Bigraphs whose names have multiple localities. Technical report, University of Cambridge Computer Laboratory, February 2004
    [77]Milner R.Axioms for bigraphical structure.Journal of Mathematical Structures in Computer Science.2005,15(6),1005-1032
    [78]Milner R. Calculi for interaction. Acta Informatica.1996,33(8):707-737
    [79]Milner R. Bigraphs:a model for mobile agents, www.cl.cam.ac.uk /~rm135/Bigraphs-Lectures.pdf.2008-9-30
    [80]Jensen OH, Milner R. Bigraph and transition.In:Proc of the 30th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, New Orleans, Louisiana, USA. POPL'03. New York:ACM Press,2003,38-49
    [81]胡海洋,吕建,马晓星等.面向对象范型体系结构中构件行为相容性研究.软件学报.2006,17(6):1276-1286
    [82]Garlan D, Schmerl B. Using architectural models at runtime:research challenges. In Proceedings of the First European Workshop, EWSA 2004, St Andrews, UK, May 2004. Berlin:Springer-Verlag,2004,200-205
    [83]孙熙,刘擐哲,焦文品等.一种规则驱动的网络服务组装机制.计算机学报.2006,29(7):1084-1094
    [84]王晓鹏,王千祥,梅宏.一种面向构件化软件的在线演化方法.计算机学报.2005,28(11):1890-1897
    [85]Gamma E. Helm R.Johnson R.et al.设计模式-可复用面向对象软件的基础.李英军等.北京:机械工业出版社.2007
    [86]Blair G S. Coulson G. Andersen A. et al. The design and implementation of open ORB 2, IEEE Distributed Systems Online,2001,2(6)
    [87]Vandewoude Y.Berbers Y.Run-time Evolution for Embedded Component- Oriented Systems.In:Proc of the International Conference on Software Maintenance (ICSM'02). Washington DC:IEEE Computer Society,2002, 242-247
    [88]Papazoglou M P.Service-Oriented Computing:Concepts characteristics and directions.In:proc of the 4th International Conference on Web Information Systems Engineering(WISE03), Washington DC:IEEE Computer Society,2003, 3-12
    [89]邢少敏,周伯生.SOA研究进展.计算机科学.2008,35(9):13-20
    [90]麻志毅,陈泓婕.一种面向服务的体系结构参考模型.计算机学报.2006,29(7):1011-1019
    [91]Kramer J, Magee J. The evolving philosopher's problem:Dynamic change management. IEEE Transactions on Software Engineering.1990,16(11): 1293-1306
    [92]马晓星,余萍,陶先平等.一种面向服务的动态协同框架及其支撑平台.计算机学报.2005,28(4):467-477
    [93]胡海洋,杨玫,陶先平等Cogent后组装技术研究与实现.电子学报.2002,30(12):1823-1827
    [94]梅宏,曹东刚ABC-S2C:一种面向贯穿特性的构件化软件关注点分离技术.计算机学报.2005,28(12):2036-2044
    [95]曹东刚,梅宏,曹建农.在中间件中支持用户自定义连接子.软件学报.2005,16(8):1378-1385
    [96]Kammer P J. Bolcer G A. Taylor R N. et al. Techniques for Supporting Dynamic and Adaptive Workflow.Computer Supported Cooperative Work (CSCW). 2000,9(3-4):269-292
    [97]Georgas J C. Hoek V D. Taylor R N. Using Architectural Models at Runtime to Manage and Visualize Runtime Adaptation. IEEE Computer.2009,42:52-60.
    [98]Forman I R. Danforth S H. Putting Metaclasses to Work. Edinburgh Addison-Wesley Longman.1999
    [99]杨芙清,梅宏,吕建等.浅论软件技术发展.电子学报.2002,30(12A):1901-1906
    [100]陈磊,李三立.网格数据复本管理的动态自适应软件体系结构.软件学报.2006,17(6):1436-1447
    [101]Lippman S B.inside The C++ Object Model.候捷.武汉:华中科技大学出版社.2001
    [102]Feng N, Gang A, White T, et al. Dynamic evolution of network management software by software hot-swapping. In:Proc of the 7th IFIP/IEEE International Symposium on Integrated Network Management(IM 2001), Seattle, WA. New Jersey:IEEE.2001,14-18
    [103]张仕,黄林鹏.基于OSGI的服务动态演化.软件学报.2008,19(5):1201-1211.
    [104]郭慧鹏,怀进鹏,邓婷等.一种可信的自适应服务组合机制.计算机学报.2008,31(8):1434-1444
    [105]Vandewoude Y, Berbers Y. Run-time Evolution for Embedded Component-Oriented Systems.In:Proc of the International Conference on Software Maintenance (ICSM'02). Washington DC:IEEE Computer Society,2002, 242-247
    [106]Laddaga R, Veitech J. Dynamic Object technology.Communications of The ACM.1997,40(5):36-38
    [107]Demitriev M. Towards flexible and safe technology for runtime evolution of Java language applications.In:Proc of the Workshop on Engineering Complex Object-Oriented Systems for evolution,in association with OOPSLA 2001 International Conference.New York:ACM,2001,14-18
    [108]Malabarba S, Pandey R, Gragg J.et al.Runtime support for type-safe dynamic Java classes.In Proceedings of the European Conference on Object-Oriented Programming(ECOOP), Berlin:Springer-Verlag,2000,337-361
    [109]Ciraci S, VD Broek P, Aksit M. Framework for Computer-Aided Evolution of Object-Oriented Designs. In:Proc of the 2008 32nd Annual IEEE International Computer Software and Applications Conference.COMPSAC'08, Washington DC:IEEE Computer Society.2008:757-764
    [110]Le Goaer O, Tamzalit D, Oussalah M, et al. Evolution Shelf:Reusing Evolution Expertise within Component-Based Software Architectures. In:Proc of the 2008 32nd Annual IEEE International Computer Software and Applications Conference.COMPSAC'08, Washington DC:IEEE Computer Society,2008, 311-318
    [111]杜诏,王小鸽,陈渝.反射式中间件综述.计算机研究与发展.2005,2(17):2041-2047
    [112]Hawthorne M J, Perry D E.Exploiting Architectural Prescriptions for Self-Managing, Self-Adaptive Systems:A Position Paper. In:Proc of the 1st ACM SIGSOFT workshop on Self-managed systems, Newport Beach, California.WOSS'04,New York:ACM Press,2004,75-79
    [113]Garlan D, Monroe R, Wile D. ACME:An architecture description interchange language. In:Proc of the 1997 Conference of the Center for Advanced Studies on Collaborative Research, Toronto, Ontario, Canada. CASCON'97, Indianapolis:IBM Press,1997,169-183
    [114]李文中,郭胜,许平等.服务组合中一种自适.应的负载均衡算法.软件学报.2006,17(5):1068-1077
    [115]王远,吕建,徐锋等.一种面向网构软件体系结构的信任驱动服务选取机制.软件学报.2008,19(6):1350-1362
    [116]Mikic-Rkic M, Malek S, Medvidovic N. Improving availability in large, distributed, component-based systems via redeployment. In:Proc of the 3rd Int'l Working Conference on Component Deployment (CD 2005), Grenoble, France. Berlin:Springer-Verlag,2005,83-98
    [117]Gao Z G, Wu Z H. Component assignment for large distributed embedded software development.In:Proc of the 2nd International Conference on Grid and Pervasive Computing GPC 2007,Berlin:Springer Verlag,2007,642-654
    [118]唐磊,廖渊,李明树等.面向普适计算的服务构件动态部署问题及算法.计算机研究与发展.2007,44(5):815-822
    [119]Gofseva-Popstojanova K, Trivedi K.Architecture-Based approach to reliability assessment of software systems.Performance Evaluation.2001,45(2):179-204
    [120]Wang W L, Ye W, Chen M H.An Architecture-Based Software Reliability Model. In:Proc of Pacific Rim International Symposium on Dependable Computing, Hong Kong. Washington DC:IEEE Computer Society,1999,143-150
    [121]Luo J H, Huang C Y, Chen I Y,et al. Reliability assessment and sensitivity analysis of software reliability growth modeling based on software module structure.Journal of systems and software.2005,76(1):3-13
    [122]Gokhale S S, Trivedi K S. Analytical Models for Architecture-Based Software Reliability Prediction:A Unification Framework.IEEE Transactions on reliability.2006,55(4):578-590
    [123]Goseva-Popstojanova K, Trivedi K S. Architecture-Based Approaches to software Reliability Prediction. Computers and Mathematics with Applications. 2003,46(7):1023-1036
    [124]王晓东.计算机算法设计与分析.北京:电子工业出版社,2004
    [125]Gao Z G, Wu Z H. Component Assignment for Large Distributed Embedded Software Development.In:Proc of Second International Conference, GPC 2007, Paris, France., Berlin:Springer-Verlag,2007,642-654
    [126]Nilabja Roy, Yuan Xue, Aniruddha Gokhale, et al.A Component Assignment Framework for Improved Capacity and Assured Performance in Web Portals.In Proceedings of the Confederated International Conferences, CoopIS, DOA, IS, and ODBASE 2009 On the Move to Meaningful Internet Systems:Part I. Berlin:Springer-Verlag,2009:671-689
    [127]Chern M S.On the computational complexity of reliability redundancy allocation in a series system. Operations research letters.1992,11(5):309-315
    [128]Yalaoui A, Chatelet E, Chu C.A new dynamic programming method for reliability and redundancy allocation in a parallel-series system. IEEE Transactions on Reliability.2005,54(2):254-261
    [129]Tavakkoli-Moghaddam T, Safari J. A New Mathematical Model for a Redundancy Allocation Problem with Mixing Components Redundant and Choice of Redundancy Strategies. Applied Mathematical Sciences,2007,1(45): 2221-2230
    [130]Leandro dos Santos Coelho. An efficient particle swarm approach for mixed-integer programming in reliability-redundancy optimization applications. Reliability Engineering and System Safety.2009,94(8):30-837.
    [131]Ramirez-marquez J E, Coit D W, Abdullah Konak. Redundancy allocation for series-parallel systems using a max-min approach. HE Transactions.2004, 36(9):891-898
    [132]Moghaddam R T, Safari J, Sassani F. Reliability optimization of series-parallel systems with a choice of redundancy strategies using a genetic algorithm. Reliability Engineering & System Safety.2008,93(4):550-556
    [133]Ouzineb M, Nourelfath M, Gendreau M. Tabu search for the redundancy allocation problem of homogenous series-parallel multi-state systems. Reliability Engineering & System Safety.2008,93(8):1257-1272
    [134]Nahas N, Nourelfath M, KadiD A. Coupling ant colony and the degraded ceiling algorithm for the redundancy allocation problem of series-parallel systems. Reliability Engineering and System Safety.2007,92(2):211-222
    [135]Habib A, Alsieidi R, Youssef G. Reliability analysis of a consecutive r-out-of-n: F system based on neural networks. Chaos, Solitons & Fractals.2009,39(2): 610-624
    [136]Zia L, Coit D W.Redundancy Allocation for Series-Parallel Systems Using Integer Linear Programming. IEEE Transactions on Reliability.2008,57(3): 507-516
    [137]You P S, Chen T C. An efficient heuristic for series-parallel redundant reliability problems. Computers and Operations Research.2005,32(8):2117- 2127
    [138]Ramirez-Marquez J E, Coit D W. A heuristic for solving the redundancy allocation problem for multi-state series-parallel system. Reliability Engineering & System Safety.2004,83(3):341-349
    [139]Guo H, Huai J, et al. KAF:Kalman filter based adaptive maintenance for dependability of composite services. In:Proc of the CAiSE 2008 Montpellier, France. Berlin:Springer-Verlag,2008,328-342
    [140]Poore J H, Mills H D, Mutchler D. Planning and certifying software system reliability. IEEE Software.1993,10(1):88-99
    [141]Cheung R C A user-oriented software reliability model. IEEE Transactions on software Engineering.1980,6(2):118-125

© 2004-2018 中国地质图书馆版权所有 京ICP备05064691号 京公网安备11010802017129号

地址:北京市海淀区学院路29号 邮编:100083

电话:办公室:(+86 10)66554848;文献借阅、咨询服务、科技查新:66554700