跳到主要內容

臺灣博碩士論文加值系統

(3.81.172.77) 您好!臺灣時間:2022/01/21 18:38
字體大小: 字級放大   字級縮小   預設字形  
回查詢結果 :::

詳目顯示

: 
twitterline
研究生:張勝仁
研究生(外文):Sheng-Jun Chang
論文名稱:一個測試並行式主從式架構資料庫應用程式的方法
論文名稱(外文):An Approach To Test Concurrent Client/Server Database Applicaion
指導教授:黃冠寰黃冠寰引用關係
指導教授(外文):Gwan-Hwan Hwang
學位類別:碩士
校院名稱:國立暨南國際大學
系所名稱:資訊管理學系
學門:電算機學門
學類:電算機一般學類
論文種類:學術論文
論文出版年:2002
畢業學年度:90
語文別:中文
論文頁數:117
中文關鍵詞:主從式架構主從式架構測試不可決定行為SQL資料庫交易資料庫
外文關鍵詞:client-serverclient-server testingnon-deterministic behaviorSQL transactiondatabase
相關次數:
  • 被引用被引用:0
  • 點閱點閱:507
  • 評分評分:
  • 下載下載:115
  • 收藏至我的研究室書目清單書目收藏:0
由各Client執行一連串存取Server資料庫的所有transactions event叫作transaction-sequence(or T-sequence)。一個主從式架構資料庫系統會有”不可決定”(non-deterministic behavior)的行為,即使有相同的輸入,重覆的來執行卻往往有不同的執行結果。在我們的論文研究中﹐我們展現了一個測試方法,來測試以主從式為架構的 資料庫應用程式,找出所有可能的T-sequences的一個架構。這個測試 架構就是reachability testing. 我們也定義了資料庫的不同交易中 的race conditions。至於為 了收集所有可執行的T-sequence,我們展現如何籍著分析到race conditions的改變導引出是其他 T-sequences prefix 的race-variant。最後,為了產生新的T-sequence,我們討論如何根據race-variant去對一個資料庫應用系統執行prefix-based 測試。而新的分析race-variant的方法也在我們的論文中提出,這個新的分析race-variant法方叫做2|e|-1 combination 。這個新的方法主要是根據一個T-sequence我們將之導引成一個race-graph,並在race-graph中將有in-edge的node改變它們in-edge的方向來分析所有的race-variants。新的分析race-variant方法雖然在分析race-variant的時間上較使用Race_variant diagram來分析race-variant的時間較長,但相差不多。但在重覆測試的次數上卻減少了很多。而在我們論文中有實驗的數據來比較non-deterministic testing 和reachability testing。

An execution of a client-server application with database access exercises a sequence of database transaction events, calls a transaction sequence (or T-sequence). A client-server database application may have non-deterministic behavior, since its multiple executions with the same input may produce different T-sequences. In our research, we present a framework for testing all possible T-sequences of a client-server database application. Such testing is referred to as reachability testing. We define race conditions between transactions. For a collected T-sequence, we show how to change the outcomes of race conditions in order to derive race-variants, which are prefixes of other T-sequences. Then, we discuss how to perform prefix-based testing of a database application, according to a race-variant, in order to generate new T-sequences. We also present a new approach to analyze and derive race-variant for a T-sequence. The new approach is called “2|e|-1 combination”. The approach is changed the in-edge to out-edge from a node in race-graph. Compare to the approach “Race-variant Diagram”, it reduces the duplicated numbers of testing. And we offer experiment studies to compare non-deterministic testing and reachabiliy tesing.
Keywords: client-server, client-server testing, non-deterministic behavior, SQL transaction, database

Contents I
Figure Contents IV
Table Contents VI
Abstract VIII
中文摘要 IX
1 Introduction 1
1.1. Client / Server Software Architectures — Overview 1
1.2. Non — deterministic Behavior 2
1.3. Overview Of The Contribution Of The Thesis 4
2 Overview Of Testing Approaches For Con- current Program 5
2.1. Non — deterministic Testing 5
2.2. Deterministic Testing 6
2.3. Prefix-based Testing and Replay 6
2.4. Concept of Reachability Testing 6
2.4.1. Reachability Analysis 7
2.4.2. Reachability Testing 7
3 Race Analysis Technology for Database Operation 9
3.1. Similarities and Dissimilarities With Share Memory 9
3.2. The Data Structure Of Transaction—event and Transaction — sequence 11
3.2.1. Definition of Transaction-event 11
3.2.2. Example of Transaction-event 12
3.2.3. Definition Of Transaction - sequence 13
3.3. The Definition Of Transaction-race 13
3.4. Generate a Race-graph from a T-sequence 17
3.5. Example 18
3.6. Definition Of Prefix Of A Race-graph 20
4 Derive the Race-variant 22
4.1. Generate Race-variant Diagram 22
4.1.1. Description 22
4.1.2. The Data Structure Of A Node In RV-diagram 22
4.1.3. Derive The Race — variants 23
4.1.4. Example 24
4.2. New approach: 2|e| - 1 Combination 25
4.2.1. Description Of The New Approach 25
4.2.2. Limit (Loop & Duplicate) 28
4.2.3. Derive The Race — variants by Using 2|e|-1 combination 32
4.2.4. Example 32
4.3. Proof Of The Approach Of Race-variant Diagram & 2|e|-1 Combination 36
4.3.1. Basic Problem 36
4.3.2. Description Of Proof 37
4.3.3. Definition 37
4.3.4. The steps of proof 38
4.4. Improvement of 2|e|-1 Combination 42
5 Monitor And Replay Protocol For Database 46
5.1. Monitor and Replay 46
5.2. Implement monitor & replay by using DB Lock 47
5.2.1. Description 47
5.2.2. Framework 47
5.2.3. Protocol 48
5.3. Implement monitor & reply by using Java Thread synchronized 49
5.3.1. Description 49
5.3.2. Thread 50
5.3.3. Framework 51
5.3.4. Protocol 51
6 Empirical studies 54
6.1. Description 54
6.2. Example of small case 55
6.2.1. Description of small case 55
6.2.2. Comparison with multiple-execution and reachability testing 56
6.2.3. Comparison with two methods of Prefix-based replay —DB Lock and Java Thread Synchronized 59
6.2.4. Comparison with two algorithm of derive race-variant 61
6.3. Example of large case 65
6.3.1. Description of large case 65
6.3.2. Comparison with multiple-execution and reachability testing 67
6.3.3. Comparison with two methods of Prefix-based replay —DB Lock and Java Thread Synchronized 70
6.3.4. Comparison with two algorithm of derive race-variant 72
6.4. Example of real case 76
6.4.1. Description of real case 77
6.4.2. Comparison with multiple-execution and reachability testing 79
6.4.3. Comparison with two methods of Prefix-based replay —DB Lock and Java Thread Synchronized 82
6.4.4. Comparison with two algorithm of derive race-variant 84
7 Component Object Model For Reachability Testing 90
7.1. Description 90
7.2. Class of Race_Graph_Edge 90
7.2.1. Describe 90
7.2.2. The Class structure 90
7.2.3. Example 91
7.3. Class of Get_Race_Graph 92
7.3.1. Description 92
7.3.2. Class Structure 92
7.3.3. Example 93
7.4. Class of Get_Race_Variant 93
7.4.1. Description 94
7.4.2. Class Structure 94
7.5. Example 95
7.5.1. Example 1 95
7.5.2. Derive Race-variant 96
8 Conclusion 100
References 102
Appendix A:The Program Codes of Component 104

[1] K.C. Tai and Richard H. Carver, Testing of Distributed Programs, published in “Parallel and Distubted Computing Handbook” p 955~978
[2] Chu H. and Dobson, J. Towards Qualiy Programing in the Automated Testing of Client/Server Application. In Proc. of PNSQC98 and join with ICSQ’98, Oct. 1998, Oregon, USA.
[3] Hwang, G. H. , ai, K. C., and Huang T.L., Reachabiliy Testing:An Approach To Testing Concurrent Software, International Journal of Software Engineering and Knowledge Engineering Vol. 5 No. 4(1995) 493-510
[4] Gwan-Hwan Hwang, Juey-Der Chu, and K. C. Tai. Testing of Non-Deterministic Client-Server Database Applications,. Regular Research Paper in the 2001 International Conference on Parallel and Distributed Processing Techniques and Applications (PDPTA 2001: June 25-28, 2001, Monte Carlo Resort, Las Vegas, Nevada, USA).
[5] Elmasri / Navathe “Fundamentals Of Database Systems”, Second Edition
[6] Gwan-Hwan Hwang,” A Systematic Parallel Testing Method for Concurrent Programs”. Master Thesis, Institute of Computer Science and Information Engineer, National Chiao-Tung University, Taiwan, 1993.
[7] Martin Gruber ,”Mastering SQL”
[8] Thmas J.Leblanc and John M. Mellor-Crummey,“Debugging Parallel Programs with Instant Replay”, IEEE Transactions on computers, VOL . C-36, No. 4 ,April 1987
[9] Scott Oaks and Henry Wong “Java Threads”,Second Edition
[10] George Reese,”JDBCTM and JAVATM”,2nd Edition
[11] Charles E. McDowell and David P. Helmbold. ``Debugging Concurrent Programs''. ACM Computing Surveys, 21(4), pp. 593--622, December 1989.
[12] Jason Gait. ``A Debugger for Concurrent Programs''. Software---Practice and Experience, 15(6), June 1985.
[13] Jason Gait. ``A Probe Effect in Concurrent Programs''. Software---Practice and Experience, 16(3), March 1985.
[14] Kuo-hung Tai, Richard H. Carver, and Evelyn E. Obaid. ``Debugging Con? current Ada Programs by deterministic Execution''. IEEE Transactions on Software Engineering, 17(1), pp. 45--63, January 1991.
[15] Charles E. McDowell. ``A Practical Algorithm for Static Analysis of Parallel Programs''. Journal of Parallel and Distributed Computing, 6, pp. 515--536, 1989.
[16] Michal Young and Richard N. Taylor. ``Combining Static Concurrency Analysis with Symbolic Execution''. IEEE Transactions on Software Engineering, 14(10), pp. 1499--1511, October 1988.

QRCODE
 
 
 
 
 
                                                                                                                                                                                                                                                                                                                                                                                                               
第一頁 上一頁 下一頁 最後一頁 top
1. 林寶貴、錡寶香(民79):高職階段聽覺障礙學生「高級瑞文氏圖形補充測驗」之研究。特殊教育學報,5期,159-185頁.
2. 林寶貴、錡寶香(民78):聽覺障礙學生「高級瑞文氏圖形補充測驗」常模之建立及其相關之研究。特殊教育學報,4期,111-146頁.
3. 林寶貴、李真賢(民76):聽覺障礙學生國語文能力之研究。教育學院學報,12期,1-27頁。
4. 古明峰(民88):加、減法文字題語意結構、問題難度及解題關係之探討。新竹師院學報,12期,1-25頁。
5. 邱上真、王惠川、朱婉艷、沈明錦(民84):解題歷程導向教學對國小四年級數學科低成就學生解題表現之成效研究。特殊教育與復健學報,2期,235-271頁。
6. 范金玉(民76):國民小學數學能力發展測驗編製之研究。特殊教育學報,2期,275-290頁。
7. 張蓓莉(民70):聽覺障礙學生之智力結構。師大學報,26期,333-352頁。
8. 張蓓莉(民83):台灣地區聽覺障礙學生句型理解能力。特殊教育研究學刊,10期,209-227頁。
9. 楊美伶、蔣治邦(民81):國民小學數學科加減法教材關鍵字之分析研究。國教學報,4期,109-128頁。
10. 蔣治邦(82):中年級學童解決加減文字題能力之探討:多餘資訊與兩步驟問題。科學教育學刊,1卷,189-212頁。
11. 鄧少林、蔣治邦(民83):三、五年級學生對比較應用問題的分類。國教學報,6卷,97-113頁。
12. 盧台華(民84):身心障礙學生數學能力比較研究。特殊教育研究學刊,12期,25-50頁。
13. 蕭金土(民85)。聽覺障礙學生數學錯誤類型分析與補救教學效果之研究。特殊教育學報,11期,1-33頁。