基于序列的软件可靠性分析方法研究
详细信息    本馆镜像全文|  推荐本文 |  |   获取CNKI官网全文
摘要
近几年,基于构件的软件开发方法正逐步成为软件开发的热点和主流方法。但是,一方面,构件的即插即用性质带来了此类软件体系结构的灵活性和易变性,因此,相比较于传统软件质量来说,在开发过程中此类软件的质量更加具有突变性,也更加难以预测;另一方面,此类软件在本质上的增量式、迭代式开发特点,决定了在开发过程中它们的构成成分(即:构件)的选择或然性以及需求和实际构成成分之间绑定的延迟性,加上构件的封装特性所带来的内部细节的不可见性,使得此类软件的质量估计常常在不完全信息的前提下进行。因此,如何确保在COTS(Commercial Off-the-Shelf)构件的基础上构建的软件的质量,如何在软件开发过程中准确地监测和把握软件质量,尤其是可靠性,成为挑战性问题。
     为解决该问题,研究人员提出了各种基于构架的可靠性分析技术和方法。但这些方法在两个方面仍有不足,一是它们大多基于可用信息的子集进行分析;二是它们大多没有考虑可靠性的环境依赖性质,即同一个构件在不同的环境中可能表现出不同的可靠性。因此,本文以基于构件软件的开发模型为基础,提高可用信息利用的充分性和自然性:同时,借鉴基于软件行为和场景的方法,提高可靠性估计的准确性。
     在研究中,本文首先通过基于构件软件及其开发过程的原理性分析,提出了刻画软件可靠性规约的基于序列的场景模型,并从软件行为的角度给出了相关算子的定义;然后借助OCL(Object Constraint Language)描述序列之间的关系,给出了模拟软件行为的场景的合成方法,和扩展UML序列图的场景模型构造方法:最后,给出了基于场景的软件可靠性分析方法。
     在上述研究的基础上,本文在Eclipse环境下设计并实现了基于场景的构件软件可靠性分析工具SoBSRA。该工具支持基于构件软件的可靠性规约描述,支持基于序列的场景模型建模,支持序列和场景的合成,以及支持构件软件的可靠性分析等。
     论文针对基于构件软件及其开发过程的特点,给出的基于场景的构件软件可靠性分析方法适用于基于构件软件的动态开发过程的各个阶段。其支持工具以UML序列图扩展为基础,与基于构件软件开发过程和通用开发环境Eclipse自然衔接,提高了方法的实用性和易用性。论文工作还可以延伸到基于构件软件的测试和面向服务软件的质量保证。
In last few years, Component-based development is being increasingly adopted as a mainstream approach to software development. But, on the one hand, Component-based software architecture is mutable and flexible because of the plug-and-play approach adopted. Compared with traditional software, its occurrence may be related to a sudden change of the software quality, and caused that researchers foresee the quality harder and harder in the process of software development. On the other hand, the characteristic of this kind of software in development process, such as incremental and iterative process, which decides whether components were selected or not, and transparence of interior details which caused by the encapsulation of them, make the quality estimate of this kind of software often go on under the prerequisite of not complete information. Therefore, it has become a challenge that how to validate the COTS(Commercial Off-the-Shelf) quality, monitor their quality and get the quality of software accurately, especially reliability, in software development process.
     To solve this problem, researchers have put forward the various technology and method of reliability based on architecture. But there are two weak points in the methods .one is that they mostly analyze based on the subclass of useable information; the other is that it have not considered reliability is related to the usage environment, that is to say that a same component may show different reliability in different environment. Therefore, we are devoted to improve the sufficiency and naturalness of useable information on the basis of development model of component-based software. And more, improve the estimated accuracy of reliability based on the methods of software behavior and scenario.
     This paper has put forward to scenario model based on sequence which can depict software reliability specifications by analyzing the component-based software and development process. And provide the definition of related arithmetic in view of software behavior. It provides the way by which the scenario that simulates the behavior of software which can be composed through extending the UML sequence diagram. At last, it provides a Scenario-based analysis method of software reliability.
     On the foundation of above-mentioned study, we designs and realizes SoBSRA, a Scenario-based reliability analysis tool of Component-based software. SoBSRA support the reliability specification of component-based software, scenario modeling of sequence, composition of sequence and scenario, and reliability analysis of component-based software etc.
     This paper aims at the component-based software and characteristic of development process, scenario-based reliability analysis of component-based software which is provided applies to every phase in the dynamic development process of component-based software. The tools which based on the extending of UML sequence diagram, joins the development process of component-based software with Eclipse, improves the usability and acceptability. We shall dedicate to the study of test of component-based software and quality guarantee of service-oriented software in future.
引文
[1]David L.Pamas,A.John van Schouwen,and Shu Po Kwan,"Evaluation of safety-critical software",Communications of the ACM,33(6),1990,pp.636-648.
    [2]G.Pour,"Software Component Technologies:JavaBeans and ActiveX",Proceeding of Technology of Object-Oriented Languages and systems,1999,pp.398-398.
    [3]CORBA,http://www.corba.org.
    [4]COM Technologies,http://www.microsoft.com/corn/default.mspx
    [5]JavaBeans,http://java.sun.com/products/javabeans/
    [6]EJB Technology,http://java.sun.com/products/ejb/index.isp
    [7]毛晓光,邓勇进,基于构进软件的可靠性通用模型,软件学报,1000-9825/2004/15(01)0027,pp.27-32
    [8]Inica Crnkovie,Magnus Larsson."Building Reliable Component-Based Soft-ware System".London:Artech House,2002,ⅹⅹⅶ-ⅹⅹⅹⅶ.
    [9]Council,W.T.and Heineman,G.T.Definition of a software component and its elements.Addison-Wesley,2001
    [10]Clemens Szyperski.Component Software:Beyond Object-Oriented Programming,2~(nd)edu.Addison-Wesley,2002
    [11]Xia Cai,Michael R.Lyu,Kam-Fal Wong."Component-Based Software Engeering:Technologies,Development Frameworks,and Quality Assurance Schemes".Proceedings APSEC 2000,Seventh Asia-Pacific Software Engineering Conference,Singapore,December 2000:372-379.
    [12]G.Pour,M.Griss,J.Favaro,"Making the Transition to Component-Based Enterprise Software Development:Overcoming the Obstacles - Patterns for Success",Proceedings of Technology of Object-Oriented Languages and Systems,1999,pp.419-419.
    [13]Ian Sommerville.Software Engineering,7~(nd),2004
    [14]K.Goseva-Popstojanova and K.Trivedi,"Architecture-based approach to reliability assessment of software systems," Performance Evaluation,an International Journal,vol.45,pp.179-204,2001.
    [15]Whittaker and M.Thomason,"A Markov chain model for statistical software testing," IEEE Trans.Software Eng.,vol.20,no.10,pp.812-824,Oct.1994.
    [16]Whittaker,K.Rekab,and M.Thomason,"A Markov chain model for predicting the reliability of multi-build software," J.Inform.Software Technol.,vol.42,no.12,pp.889-894,Sept.2000.
    [17]B.Littlewood,Sofware reliability model for modular program structure,IEEE Trans. on Reliability,28(3)(1979)241-246
    [18]R.C.Cheung,A user-oriented software reliability model,IEEE Trans.on Software Engineering,6(2)(1980)118-125
    [19]P.Kubat,Assessing reliability of modular software,Operations Research Letters,8(1989)35-41
    [20]S.Gokhale,W.E.Wong,K.Trivedi,J.R.Horgan,An analytical approach to architecture based software relialbility prediction,in:Proc.3~(rd)Int'l Computer Performance & Dependability Symp.(IPDS'98),1998,pp.13-22
    [21]M.Shoomart,Structural models for software reliability prediction,in Proe.2~(nd)Int'l Conference on Software Engineering,1976,pp.268-280
    [22]Krishnamurthy S,Mathur A P.On the Estimation of Reliability of a Software System using Reliabilities of its Components.In:proc.8th Intl.Symp.on Software Reliability Engineering(ISSRE'97),1997,pp.146-155
    [23]Cai K Y.Software defect and operational profile modeling[M].Boston:Kluwer Academic Publishers,1998
    [24]Sherif Yaeoub.A Scenario-Based Reliability Analysis Approach for Component-Based Software.IEEE TRANSACTIONS ON RELIABILITY,VOL.53,NO.4,DECEMBER 2004
    [25]Daniel Amyot,Neil Hart,Luigi Logrippo et al."Formal Specification and Validation Using a Scenario-Based Approach:The GPRS Group-Call Example".1998
    [26]BAI,X.,PENG,L.C.AND LI,H.,"An Approach to Generate Thin Threads from UML Diagrams".Technical Report,TR-03-12,Software Engineering Research Group,School of Computer and Information Science,Edit Cowan University,2002.
    [27]Johannes Ryser,Martin Glinz."A Scenario-Based Approach to Validating and Testing Software Systems Using Statechart".URL:http://www.ifi.unizh.ch/req/ftp/papers/ICSSEA SCENT Method.pdf.
    [28]Johannes Ryser,Martin Glinz."Using Dependency Charts to Improve Scenario-Based Testing".17th International Conference on Testing Computer Software.
    [29]Abran A.,Symons C.,Oligny S.,An overview of COSMIC-FFP field trial results.URL:http://www.gelog.etsmtl.ca/publications/pdf/614.pdf.
    [30]Hans de Bruin."Scenario-Based Analysis of Component Composition".2000
    [31]Hans de Bruin."A Grey-Box Approach to Component Composition".In Krzysztof Czarnecki and Ulrich W.Eisenecker,editors,Prodeeding of the First Symposium on Generative and Component-Based Software Engineering(GCSE'99),Erfurt,Germany,volume 1799 of Lecture Notes in Computer Science(LNCS),Berlin,Germany,September 28-30,1999.
    [32]ITU,Message Sequence Charts,Recommendation Z.120,International Telecommunication Union,Telecomm.Standardization Sector,1999
    [33]颜炯,基于UML的软件统计测试研究,长沙:国防科技大学工学博士学位论文,2005。
    [34]K.Weidenhaupt et al.,"Scenarios in system development:current practice,"IEEE Software,pp.34-45,Mar./Apr.1998.
    [35]Sebastian Uchitel,Jeff Kramer,and Jeff Magee,"Synthesis of Behavioral Models from Scenarios",IEEE Transactions on Software Engineering,Vol.29 No.2,2003,pp.99-115.
    [36]Kruger,R.Grosu,P.Scholz,and M.Broy,"From MSCs to Statecharts",Distributed and Parallel Embedded Systems,F.J.Ramming,ed.,Kluwer Academic Publishers,1999,pp.61-71.
    [37]J.M.Carroll,Scenario-Based Design:Envisioning Work and Technology in System Development,Wiley,1995.
    [38]OCL,"Object Constraint Language Specification",1 September,1997.
    [39]J.Whittle and J.Schumann,"Generating Statechart Designs from Scenarios",Proc.22~(nd)Int'l Conf.Software Eng.(ICSE'00),2000,PP.314-323.
    [40]P.Harmon and M.Watson,Understanding UML:The Developers Guide,Morgan Kaufman,San Fransisco,1998.
    [41]UML et http://homepage.mac.com/martin.auer/umlet/changes.htm

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

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

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