簡易檢索 / 詳目顯示

研究生: 顏文賢
Wen Hsain Yen
論文名稱: 針對信息遞送程式 做可及性測試的研究
A General Model to Perform Reachability Testing for Message Passing Programs
指導教授: 黃冠寰
Hwang, Gwan-Hwan
學位類別: 碩士
Master
系所名稱: 資訊工程學系
Department of Computer Science and Information Engineering
論文出版年: 2010
畢業學年度: 98
語文別: 中文
論文頁數: 64
中文關鍵詞: 軟體測試並行程式可及性測試訊息傳遞多個收取者同步訊息傳遞非同步訊息傳遞獨有辨識訊息過濾器
英文關鍵詞: software testing, concurrent program, reachability testing, message passing, multiple receiver, synchronous message passing, asynchronous message passing, unique message id, filter
論文種類: 學術論文
相關次數: 點閱:280下載:4
分享至:
查詢本校圖書館目錄 查詢臺灣博碩士論文知識加值系統 勘誤回報
  • 軟體測試一直是我們最重要的課題,因為軟體出錯的比率不只是我們人類所撰寫的程式語言會出錯,就連系統執行所有程式時所不可能預期的錯誤也會發生。在現實的情況中,通常我們所執行的程式都是concurrent program,很少程式是單一直行的程序,所以軟體出錯的機會很大。
    黃冠寰博士提出了reachability testing[1],此篇主要的研究是根據reachability testing 做一個核心的延伸,所用的架構為 message passing 的模型,依照reachability resting 的精神下去做研究,並且提出一個解法,利用unique message id和filter 增進reachability testing 的功能, 專門針對multiple receiver 的
    synchronization sequence 產生race variants 做過濾,進而得出符合synchronization model 的race variants,此篇論文主要針對兩種message passing 模型進行分析,分別為synchronous message passing 和asynchronous message passing,並且針對Richard H. Carver 和Yu Lei 的work[5][17]提出一些不同的看法和質疑,另外我們發現改良Richard H. Carver 提出的race table 的方式去解決multiple receiver 的問題。

    Software testing is always an important problem during our life, because the big chance of software which has errors is not only in our writing programs, but also in the achine system programs which execute all the times, and then all the nondeterministic errors occur. In the reality world, we usually execute concurrent programs, the very few times to execute a sequential program, It is the big chance that errors will occur.
    Dr. Gwan-Hwan Hwang has proposed “Reachability testing”, this paper is follow this work and view this major study is based on a core of reachability testing an
    extension of the framework used by the message passing model, reachability testing in accordance with the spirit of this research, and propose a solution, using unique
    message id and filter to enhance the function of reachability testing ,we focus on the race variants of synchronization sequences of multiple receiver, this paper mainly two kinds of message passing model for analysis of synchronous message passing and asynchronous message passing, and for Richard H. Carver and Yu Lei’s work[5][17]
    to make some different views and queries. In addition, we found that improvement of Richard H. Carver made race table approach to deal with multiple receiver problems.

    中文摘要 ................................................. I ABSTRACT ................................................ II 1. 簡介 .................................................. 1 1.1 Software Testing ..................................... 2 1.2 Static analysis ...................................... 3 1.3 Dynamic Testing ...................................... 3 1.4 Nondeterministic Testing ............................. 4 1.5 Deterministic Testing ................................ 4 1.6 Model checking ....................................... 5 1.7 Reachability Testing ................................. 6 1.8 A General model to perform reachability testing for message passing programs .............................. 9 2. 文獻探討 ............................................. 11 2.1 Technology for Tesing Nondeterministic Client/Server Database Applications ................................... 11 2.2 Dynamic Effective Testing ........................... 12 2.3 Richard Carver’s work: A general model of Reachability Testing ................................................. 15 2.4 The Discussion for Richard H Carver’s work ......... 28 3. 實作方法 ............................................. 36 3.1 Framework ........................................... 36 3.2 Synchronization Model ............................... 37 3.3 Reachability Testing Concept for Message Passing Programs ................................................ 39 3.4 Race Variant Filter ................................. 42 3.5 Monitor ............................................. 44 3.6 An Example of Our Solution .......................... 45 4. 實驗結果 ............................................. 51 4.1 Framework ........................................... 51 4.2 實驗數據 ............................................ 52 5. 結論與未來展望 ....................................... 58 5.1 結論 ................................................ 58 5.2 未來展望 ............................................ 59 6. REFERENCES ........................................... 61

    [1] G. H. Hwang, K.C. Tai, and T.L. Huang, "Reachability Testing: An Approach To Testing Concurrent Software", Int’l J. Software Eng.
    and Knowledge Eng., vol. 5, no. 4, pp. 493-510, Dec. 1995.
    [2] Abraham Silberschatz, Peter Baer Galvin, and Greg Gagne,"Operating System Concepts", John Wiley & Sons, ISBN: 0471417432, 6th edition (June 26, 2001).
    [3] K.C. Tai and Richard H. Carver,"Testing of Distributed Programs", Chapter 33 in Parallel and Distributed Computing Handbook, editor A. Y. Zomaya, McGraw-Hill, 1996.
    [4] Gwan-Hwan Hwang, Sheng-Jen Chang, and Huey-Der Chu, "Technology for Testing Nondeterministic Client/Server Database Applications", IEEE Transaction on Software Engineering, Volume 30, Number 1, pp. 59-77, Jan.,
    2004.
    [5] Richard H. Carver and Yu Lei, “A General Model for Reachability Testing of Concurrent Programs,” ICFEM 2004, LNCS 3308, pp. 76-89, 200S. Y. Hsu and C. G. Chung,"A heuristic approach to path selection problem in concurrent program testing", Proc. 3rd IEEE Workshop on Future Trends of Distributed Computing System(1992) pp. 86-92.
    [6] K. C. Tai, R. H. Carver, "Use of sequencing constraints for specifying, testing and debugging concurrent programs", Proc. 1994 Int. Conf. Parallel and Distributed
    Systems (December 1994) pp. 280-287.
    [7] R. N. Taylor, D. L. Levine, and C. D. Kelly, "Structural testing of concurrent
    programs", IEEE Trans. Softw. Eng. 18,3(1992) 206-215,
    [8] R. D. Yang and C.G. Chung, "Path analysis testing of concurrent programs",Information and Software Technology 34, 1(1992) 43-56.
    [9] Richard N. Taylor, "A General-Purpose Algorithm for Analyzing Concurrent Programs", Communication of the ACM, Volume 21, Number 7, July 1978.
    [10] Michael Young and Richard N. Taylor, "Combining Static Concurrency Analysis with Symbolic Execution", IEEE Transaction on Software Engineering,Volume 14, Number 10, October 1988.
    [11] Yu Lei and Richard H. Carver, "Reachability Testing of Concurrent Programs," IEEE Transaction on Software Engineering, June 2006 (Vol. 32, No. 6) pp. 382-403Yu Lei, Member, IEEE, and Richard H. , Reachability Testing of
    Semaphore-based Programs, COMPSAC’04
    [12] J. Burch, E. Clarke, K. McMillan, D. Dill, and L. Hwang. Symbolic model checking: 1020 states and beyond. In IEEE Symposium on Logic in Computer Science, pages 428-439, 1990.
    [13] JavePathFinder page, http://javapathfinder.sourceforge.net/.
    [14] A. Pnueli. A temporal logic of concurrent programs.
    [15] Jun Chen, Steve MacDonald ,"Testing Concurrent Programs using Value Schedules",ASE’07.November 5-9,2007.
    [16] D. Helmbold and D. Luckham, “Debugging Ada tasking programs,” IEEE Software, Volume 2, Number 2, 66-74,1985
    [17] Yu Lei and Kuo-Chung Tai, “Efficient Reachability Testing of Asynchronous Message-Passing Programs,”Proc. 8th IEEE Intl. Conf. on Engineering for Complex Computer Systems, pp. 35-44, Dec. 2002.
    [18] L. Lamport, “Time, Clocks, and the Ordering of Events in a Distributed System,”Comm. ACM, vol. 21, no. 7, pp.558-565, July 1978
    [19] Richard N. Taylor, “A General-Purpose Algorithm for Analyzing Concurrent Programs,” Communication of the ACM, Volume 21, Number 7, July 1978.
    [20] Yu Lei and Richard H. Carver, “Reachability testing of semaphore-based programs”, to be published in Proc. of the 28th Computer Software and Applications Conference (COMPSAC), September, 2004.
    [21] J.-D. Choi and H. Srinivasan, "Deterministic Replay of Java Multithreaded Applications," Proc. of the SIGMETRICS Symposium on Parallel and Distributed Tools, pp. 48-59, 1998

    下載圖示
    QR CODE