软件测试及评价的复用策略研究及其实现
详细信息    本馆镜像全文|  推荐本文 |  |   获取CNKI官网全文
摘要
随着应用系统软件的规模越来越大,软件内部机构变得越来越复杂,软件已经成为人类创造的最复杂的实体。如何确保应用系统软件的质量,是计算机科学工作者和产业界所面临的一个最严峻的问题。本文拟解决的科学问题是“目前软件测试量大、效率低下,软件质量评价的不准确性导致软件质量不高,由此分析研究软件测试与评价的复用策略,建立可复用的软件测试用例模型,提出通用的软件评价模型,用以提高软件测试效率和评价的准确性,保障软件的质量”。围绕该科学问题,本文针对软件测试和软件评价、程序内部复杂调用关系对应的复杂网络展开研究,所做的贡献主要体现在以下几个方面:
     1)提出了软件测试过程管理中的复用策略。软件测试技术复用策略研究,主要从软件测试的管理过程、软件测试方法、软件测试用例三个方面阐述了软件测试技术复用的策略,并提出了复用的软件测试用例模型,以及自动化测试工具的脚本复用实例,从多方面研究了软件测试的复用技术与策略。
     2)建立了可复用的软件评价模型,对软件评价实施了量化。针对软件评价技术复用策略研究,主要是从软件评价的概念、软件评价的定义和软件评价的级别,提出软件评价的通用模型。该软件评价通用模型可以复用到不同领域的应用系统软件测试评价过程中。并以工程测量软件产品质量评价模型及实例,对工程测量软件产品质量评价进行了量化,获得了评价结果。
     3)利用复杂网络的研究结果,获得了软件测试用例与评价复用的策略。将复杂网络与应用系统软件中内部的模块调用关系有机的结合起来,基于复杂网络研究的结果,提出了与应用系统软件内部调用关系对应的复杂网络的一些基本概念,如:路径回路、节点的度分布、网络节点平均度、前驱节点与后继节点等,并阐述了程序模块的网络特性关系,从调用的网络关系看,被调用的后继节点所代表的软件模块的软件缺陷将影响前驱节点的功能,说明了软件测试用例的关联性,软件缺陷的传递性,将这些特性复用在软件测试过程中,可以指导软件测试用例的投入。
     4)采用测试结果的软件用例与缺陷分布统计,预测软件缺陷类型与存在的复用策略。主要是针对软件测试公共服务平台进行了大量的应用系统软件测试,对所获得的测试数据和报告结果进行分析,得到软件测试用例投入分布、软件缺陷的分布以及软件缺陷的类型,这些统计结果可以被复用到将来的软件测试过程中,作为软件测试用例的投入和缺陷预测的重要依据。
     本文从软件测试技术与方法、软件评价技术及评价模型、基于复杂网络研究的结果以及分析大量软件测试报告入手,提出了软件测试管理过程中的复用策略和软件评价的复用策略,创建了复用的软件测试用例模型和复用的软件评价模型,开发了具有自我知识产权的软件测试公共服务平台软件,解决了软件测试用例有效的存储、查询、管理和抽取等复用技术的问题,奠定了软件测试与评价复用策略的基础,为保障软件质量起着重要的作用。
With the scale increase of application software systems, the internal structure of software systems become more and more complex, and software have been the most complex man-made systems. It is a key challenge to assure the software quality in both academia and industry. The scientific problem solved in this thesis is "a huge amount of software test is performed, while the test performance is quite low. The incorrectness of software quality evaluation results in the low software quality. In this situation, I try to analyze the reuse strategy of software testing and evaluation, establish a reusable use case model for software testing, and propose general software evaluation model, in order to improve the effectiveness of software testing and correctness of software evaluation". To address this problem, this thesis investigates the complex invocation relationships in software testing and evaluation within software program based on complex network theory. The major contributions of this thesis are as follows:
     1) Propositon of reuse strategy in software testing process management: Reuse strategy for software testing techniques. This thesis presents the reuse strategy on software testing in three aspects:management process, testing methods, and use cases of software testing. It proposes the reuse-based software testing use case model and test-script reuse cases by automatic testing tool, and investigates the reuse techniques and strategies in multiple aspects.
     2) Establishment of reusable software evaluation model, and quantification of software evaluation:My research focuses on the reuse strategy for software evaluation techniques. In this thesis, I propose a general model for software evaluation in the perspective of concept, definition, and levels of software evaluation. This general software evaluation model can be reused in the testing and evaluation of application software in various domains. I take concrete cases from software products on engineering surveying, and quantify the softare evalution results of engineering surveying products with valuable evaluation results.
     3) Acquisition of reuse strategy for software test cases and evaluation based on research results on complex network:I proposes some basic concepts for the internal invocation relationships of application software systems, which are original from complex network theory, such as degree of node, input degree of node, output degree of node, network path, length of network path, circle of path, degree distribution of node, average degree of node, preceding node, and succeeding node, etc., and describes the network relationship between software modules. These concepts well describe the relationships between software testing cases, the transition of software defects, and these characteristics can be reused in software testing process as guidelines for the investment of software testing cases.
     4) Acquisition of reuse strategy for software defect types and existence based on the distribution statistics of use cases and defects in testing results:I perform a large number of software testing in the public service platform for software testing, and gets the use case cost distribution, defect distribution, and types of software defects, based on the use cases and defects distribution of testing results, especially the analysis of large amount of software testing data reports in application software. The research results act as an important guideline for the prediction of the cost and defect in software testing cases.
     This work of thesis is based on following material, including software testing techniques and methods, software evaluation techniques and models, complex network based research results, and large amount of software testing reports. The author proposes a reuse strategy in software testing management process and software evaluation, establishes a software evaluation model for the model reuse of software testing cases and software evaluation, develops a public service platform for software testing with proprietary intellectual property rights, and solves the technical problems in reuse strategy in repository, query, management, and extraction of testing cases. The research of this thesis provides fundamental work on reuse strategy of software testing and-evaluation, and will make positive impact to software quality assurance.
引文
[1]杨根兴,蔡立志等.软件质量保证、测试与评价.北京:清华大学出版社.
    [2]杨芙清,梅宏,谢冰,等.面向复用的软件资产与过程管理[M].北京:清华大学出版社,2008.
    [3]Leffingwell D,Widrig D. Managing Software Requirements:A Use Case Approach,Second Edition, Addison-Wesley,2003
    [4]Linden F. Family Evaluation Framework:Overciew & Introduction. Technical Report, European Software Institute, http://www. esi. es/Families/docum/results/FEF-introductio n-vl. pdf
    [5]Mao Chengying, Lu Yansheng. "Research Progress in TestingTechniques of ComponentBasedSoftware", Journal of ComputerResearch and Development, China Science Press, Beijing,2006,43 (10):pp.1767-1774.
    [6]S Beydeda. "Research in Testing COTS Components Built in Testing Approaches", Proceedings of the ACS/IEEE 2005 InternationalConference on Computer Systems and Applications. IEEE ComputerSociety Press, Washington, DC, USA,2005, pp.101-104.
    [7]Delamaro M E,Maldonado J C, Mat hur A P. "Integration TestingUsing Interface Mutations", proceedings of International Symposium on Software Reliability Engineering (ISSRE'96),:IEEE Computer Society Press,1996, pp.112-121.
    [8]Xu, Wuzhi, Offutt, Jeff, Luo, Juan, "Testing Web Services by XML Perturbation", Source:Proceedings the 16th IEEE International Symposium on Software Reliability Engineering, IEEE Computer Society Washington, DC, USA,2005, pp.257266.
    [9]Zhang Nan, Mark D. Ryan, Dimitar P. Guelev. "Synthesising Verified Access Control Systems through Model Checking", Journal of Computer Security, IOS Press Amsterdam, The Netherlands,2008,16(1):pp.161.
    [10]Priscilla Walmsley. "Definitive XML Schema", Tinghua University Press, Beijing,2003.
    [11]Jeremy W B, John S F. "Formal Analysis of Access Control Policies" Inproceedings of International Conference on Formal Engineering Methods.5th All Hands Meeting, AHM2006,18th21st September, Nottingham, UK.2006.
    [12]E. Martin, Tao Xie. A fault model and mutation testing of access control policies [C]//In Proc.11th International Conference on World Wide Web, ACM New York,2007.667-676.
    [13]HP:HP test tools overview [EB/OL]. https://h10078. www1. hp. com/cda/hpms/display/main/hpms_content. jsp? zn=bto&cp=1-10_4000_5_
    [14]T. Illes, A. Herrmann, B. Paech, J. Ruckert. Criteria for Software Testing Tool Evaluation-A Task Oriented View[C]//Proceedings of the 3rd World Congress for Software Quality 2005, Vol.2, pp 213-222.
    [15]Wiegers K E, More About Software Requirements:Thorny Issues and Practical Advice. Microsoft Press,2005
    [16]L. Jiang, "A Framework for the Requirements Engineering Process Development", PhD thesis, Department of Electrical and Computer Engineering, University of Calgary,2005.
    [17]OASIS. XACML v3.0 Administration Policy Version 1.0 working draft [EB/OL]. http://www. oasis-open. org/committees/download. php/25635.
    [18]TestDirector使用手册
    [19]TIAN Jing-dong, HE Zai-lang, WANG Xiang-dong, et al. Research of access control of role-based MAC[J]. Journal of University of Electronic Science and Technology of China.2006,35(6):950-952.
    [20]DING Hong-da, ZENG Qing-kai, BAO Bi-xian. Study of test approach on access control [J]. Computer Engineering,2007,33(1):161-163.
    [21]NIE Nan, Xie Xiao-dong, GAN Yong, et al. Extension Interface Mutation Testing for Component Based on XML API[J]. Computer Science, 2008,35(6):283-287.
    [22]SUN. Sun's XACML implementation[J/OL]. [2006-5-1] http:// sunXACML. sourceforge. net/.
    [23]FEDOEA. Fedora Authorization with XACML Policy Enforcement [J/OL]. [2007-10-1] http://fedora.info/ download/2. lb/userdocs/server/security/AuthorizationXACML. htm.
    [24]Abran A,Moore J W. Guide to the Software Engineering Body of Knowledge(2004Version).Los Alamitos, CA:IEEE Computer Society, February,2004
    [25]Bayer J, Flege O,Knauber P, Laqua R,Muthig D, Schmid K, Widen T,and DeBaud J. PuLSE:A Methodology to Develop Software Product Lines. In: Proceedings of the 5th Symposium on Software Reusability,New York, NY:ACM,1999,122-131
    [26]Bell T E, Thayer T A. Software requirements:Are they really a problem?. In:Proceedings of the 2nd International Conference on Software engineering, Los Alamitos, CA:IEEE Computer Society Press,1976,61-68
    [27]Boehm B W. Software Engineering Economics. Upper Saddle River, NJ: Prentice-Hall,1981
    [28]Clements P, L. Northrop. Software Product Lines:Practices and Patterns, AddisonWesley,2001
    [29]Kang K, Cohen S,Hess J,Novak W, and Peterson A. Feature-Oriented Domain Analysis (FODA) Feasibility Study. Technical Report,CMU/SEI-90-TR-021,Software Engineering Institute, Carnegie Mellon University,1990
    [30]Kang K, Kim S,Lee J, Kim K,Shin E, and Huh M. FORM:A Feature-Oriented Reuse Method with Domain-Specific Reference Architectures.Annals of Software Engineering,1998,5:143-168
    [31]Krut Jr. R. Integrating 001 Tool Support into the Feature-Oriented Domain Analysis Methodology. Technical Report,CMU/SEI-93-TR-11, Software Engineering Institute, Carnegie Mellon University,1993
    [32]Li K,Guo L, Mei H, Yang F. An Overview of JB (Jade Bird) Componnent Library System JBCL. In Proceedings of the 24th International Conference TOOLS Asia, Beijing, Washington, DC:IEEE Computer Society,1997,206-213
    [33]Ma Ben T, Licher H. Deficiencies in Feature Models. Workshop on Software Variability Management for Product Derivation-Towards Tool Support, in Conjunction with The Third Software Product Line Conference,2004
    [34]Mei H, Zhang W, and Gu F. A Feature Oriented Approach to Modeling and Reusing Requirements of Software Product Lines. In:Proceedings of the 27th Annual. International Computer Software and Applications Conference, Washington, DC:IEEE Computer Society,2003,250-255
    [35]Mei H, Zhang W, and Zhao H. A Metamodel for Modeling System Features and Their Refinement, Constraint and Interaction Relationships. Software and System Modeling,2006,5(2):172-186
    [36]Sommerville I. Software Engineering(6th Edition),Addison Wesley,2000
    [37]Whitehead K. Component-Based Development:Princples and Planning for Business Systems. Addison-Wesley,2002
    [38]Wiegers K E,Software Requirements (Second Edition), Microsoft Press,2003
    [39]Zhang W, Zhao H, and Meir H. A Propositional Logic-Based Method for Verification of Feature Models,In:Proceedings of the 6th International Conference on Formal Engineering Methods, Heidelberg:Springer Berlin,2004,115-130
    [40]Zhang W, Zhao H, and Mei H. A Feature-Oriented Approach to Modeling Requirements Dependencies. In:proceedings of the 13th IEEE International Conference on Requirements Engineering,Washington,DC:IEEE Computer Society,2005, pp.273-284
    [41]Zhang W, Zhao H, Mei H and Yang J. Transformation from CIM to PIM: A Feature-Oriented Component-Based Approach. In:Proceedings of the 8th International Conference on Model Driven Engineering Lanaguages and Systems, Heideberg:Springer Berlin,2005,248-263
    [42]Software Engineering Standards Committee of the IEEE Computer Society. IEEE Guide for Developing System Requirements Specifications,IEEE Sts 1998,1223-1998
    [43]Software Engineering Standards Committee of the IEEE Computer Society. IEEE Recommended Pracdice for Software Requirements Specifications, IEEE Std 1998,830-1998.
    [44]Jia-kuan Ma, Ya-sha Wang. A Quantitive Context Model of Software Process Patterns and Its Application Method[C]. QSIC,2006
    [45]Torgersson. Assessing CBD:What's the difference? [C]. Proceedings of the 28th Euromicro Conference,2002,332-340
    [46]B Henderson-Sellers, F Stallinger, B Lefever. Bridging the gap from process modeling to process assessment:the OOSPICE process specification for component-based software engineering[C]. Proceedings of 28th Euromicro Conference.2002,324-331
    [47]C McClure. Software Reuse:A Standards-Based Guide[C]. Wiley-IEEE Computer Society,2001.
    [48]P. Domingos and M. Richardson, Mining the network value of customers. In Proceedings of the Seventh ACM SIGKDD International Conference on Knowledge Discovery and Data Mining, pages 57-66. ACM Press,2001
    [49]Donetti L. Munoz M A. Detecting network communities:a new systematic and efficient algorithm. Cond-mat/0404562,2004
    [50]Zhengping Fan, Guanrong Chen. Evolving Networks:From Topology to Dynamics[J]. Control Theory and Applications,2004, Vol.2, No.1,60-64
    [51]D Gibson, J Klenberg, P Raghavan, inferring Web Communities from Link Topology. Proc. Of the 9th ACM Conf. on Hypertext and Hypermedia. Pittsburgh, PA, USA; 1998.225-234
    [52]Girvan M, Newman M E J. Community structure in social and biological networks, PNAS,2002,99:7821-7826
    [53]Graham-Cumming J. Hits and miss-es:A year watching the Web[C]. In: Proc of 6th Int'1 World Wide Wed Conf Santa Clara, California,1997
    [54]Han J W, and Kambr M. Data mining concepts and techniques, Safrancison:Morgan Kaufmann,2001
    [55]Hand D, Mannila H, Smyth P. Principles of data mining, MIT Press,2001
    [56]Guillaume J-L, Latapy M. The web graph:an overview, Proceedings of Algotel 2002,http://citeseer. nj. nec. com/guillaume02web. html.
    [57]International Conference on Knowledge Discovery and Data Mining,pages 61-70. ACM Press,2002.
    [58]R. P. Satorras, A. Vespignani. Epidemics and immunization in scale-free networks [J]. In "Handbook of Graphs and Networks:From the Genome to the Internet", eds. S. Bornholdt and HG Schuster, Wiley-VCH, Berlin,113-132(2002)[cond-mat/0205260].
    [59]Wang X F, and Chen G R. Complex networks:small-world, scale-free and beyond.IEEE Circuits and Systems Magzine,3(1):6-20,2003.
    [60]Washio T, Motoda H. State of the art of graph-based data mining. SIGKDD Explor. News I.5(1):59-68,2003.
    [61]核电工程建设的专业测量软件使用说明书,武汉大学测绘学院2007.
    [62]F. Wu, B. Huberman. Finding communities in linear time:a physics approach. The European Physics Journal B,38:331-338,2004
    [63]Youssefi A, Duke D, Zaki M, and Glinert E. Toward visual web mining. In Proceeding of Visual Data Mining at IEEE Intl Conference on Data Mining (ICDM), Florida,2003.
    [64]G. Bakos, V. H. Berk. Early Detection of Internet Worm Activity by Meeting Icmp Destination Unreachable Messages [J]. In Proceedings of the SPIE Vol.4708,33-42,2002.
    [65]A. L. Barab'asi, R.Albert, H. Jeong, and G. Bianconi. Power-law distribution of the world wide web. Science,287.2000.
    [66]Albert R, Barabasi A L Statistical mechanics of complex network. Review of Modern Physics,74:47-97,2002.
    [67]Kuramochi M, Desphande M, and Karypis G. Mining scientific datasets using graphs, Next Generation Data Mining, MIT Press,2003.
    [68]Li D Y, Chen G S, Cao B H. Complex networks and networked data mining. Advanced Data Mining and Applications(ADMA2005), Wuhan, China, July 22-24,2005.
    [69]Li Deyi, Complex Networks and Network Intelligence, CAAI, Beijing, China,2006.10
    [70]M. Lijenstam, D.Nicol, V. Berk and R. Gray. Simulating Realistic. Network Worm Traffic for Worm Warning System Design and Testing[J]. Proceedings of the ACM Workshop on Rapid. Malcode(WORM 2003).
    [71]Bin Liu, Bao-hua Cao, Bin Li, De-yi Li, Mining Representative Nodes in Scale-free Networks, Dynamics of Continuous, Discrete and impulsive Systems_B,2005
    [72]Liu Chang-Yu,Li De-Yi, Du Yi, Normal Cloud Models and Their interpretations, IFSA2005,July 2005,Beijing
    [73]D.Moore, V. Paxson, S. Savage, C. Shannon, S. Staniford, N. Weaver. Inside the Slammer Worm [J]. IEEE Security and Privacy,1(4):33-39, July 2003.
    [74]Newman M E J, Girvan M. Finding and evaluating community structure in networks [J]. Physical Review E,2004,69:026113
    [75]G. Palla, I.Derenyi, I. Farkas, T. Vicsek. Uncovering the overlapping community structure of complex networks in nature and society[J], Nature,2005, Vol 435:814-817.
    [76]Pmssman R. Software Engineering:A Practitioner's Approach. Boston, McGraw Hill,2001.
    [77]Binder Robert V. Testing Object-Oriented Systems [M]. Massachusetts:Addison-Wesley,2000.
    [78]E. Martin, T. Xie. A fault model and mutation testing of access control policies. In Proc.11th International Conference on World Wide Web, ACM New York,2007.667-676.
    [79]Jinfu Chen, Yansheng Lu, Xiaodong Xie. Testing Approach of Component Security Based on Fault Injection. in 2007 International Conference on Computational Intelligence and Security (CIS'2007), Harbin, China, IEEE Computer Society,2007.763-767.
    [80]Hoijin Yoon, Eunhee Kim, Joo Young Seo, Byoungju Choi. Testing COM Components Using Software Fault Injection and Mutation Analysis, and Its Empirical Study. Berlin:Springer,2005.210-224.
    [81]LUO Ling, BAI Xiaoying. Web Services-Based Test Report Generation [J]. Tsinghua Science and Technology.2005,10(3):282-287
    [82]XIA Qiming, Study on automatic interoperability testing for E-business, IEEE International Conference on Computational Intelligence and Software Engineering (CSSE 2009),2009, Dec.11-13, 2009 (EI)
    [83]XIA Qiming, NIE Nan, Yao Junfeng, and HE Keqing XML APIbased Test Framework of Extension Interface Using Software utation Analysis forComponent, IEEE ICCS 2009: "Compute. Discover. Innovate. " LSU Center for Computation & Technology Baton Rouge, Louisiana, U. S. A. May 25-27, 2009 (EI)
    [84]夏启明,聂南,何克清,WEB系统用户登陆与访问控制测试模板模型,武汉大学学报(工学版)2009年第6期.
    [85]聂南,夏启明,姚俊峰, 何克清,面向组件接口的XACML变异测试策略,电子科技大学学报第38卷第2期第288页(EI)
    [86]侯萍,龚晓峰.基于TestDirector的软件自动化测试系统的设计[J].计算机工程与设计,2007,28(8):1775-1777.
    [87]张靖.XML技术在软件可靠性测试中的应用[J].电子科技大学学报,2007,36(4):767-770.
    [88]李晓峰,冯登国,徐震.基于扩展XACML的策略管理[J].通信学报,2007,28(1),103-110.
    [89]聂长海,徐宝文.基于接口参数的黑箱测试用例自动生成算法[J].计算机学报,2004,27
    [90]陈东升.软件复用技术研究.硅谷,2008年第18期.
    [91](美)Carma Mcclure.软件复用标准指南[M].王亚沙,谢水,赵俊峰.北京:电子工业出版社,2004.
    [92]何晓阳,王亚沙,基于模型的软件成本估计方法[J].计算机研究与发展,2006,43(5):777-783
    [93]马家宽,石磊,孟祥奚,等.基于模式的过程经验描述[C]NASAC,2007.
    [94]张平.项目管理工具(PKUPM)的设计与实现[D].北京:北京大学,2005
    [95]张春勤.基于过程模板的软件项目经验管理方法的研究与实现[D].北京:北京大学,2005.
    [96]于红军.基于项目仿真的COCOMO模型参数校准工具的设计与实现[D].北京:北京大学,2005.
    [97]张隽.软件过程模式管理工具的设计与实现[D].北京:北京大学,2007.
    [98]俞辉.面向过程模式的过程度量和分析支持工具的设计与实现[D].北京:北京大学,2007.
    [99]张大方,李玮.软件测试技术与管理[M].长沙:湖南大学出版社,2007.
    [100]徐仁佐,陈斌,陈波,等.构造面向对象软件可复用测试用例的模式研究[J].武汉大学学报:理学版,2003,49(5):592-596.
    [101]徐宝文,聂长海,史亮等.一种基于组合测试的软件故障调试方法[J].计算机学报,2006,29(1):132-138.
    [102]许蕾,聂长海,徐宝文.一种基于组合测试的Web应用兼容性故障诊断方法[J].计算机科学.2006,33(12):268-269.
    [103]郑人杰.计算机软件测试技术,北京:清华大学出版社,1992.
    [104]Paul C Jorgensen.软件测试.机械工业出版社,2003.
    [105]胡刚锋. 复杂网络级联失效机理分析与实验计算,2006

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

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

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