Dissimilarity NWA Algorithm
Rickychien (Talk | contribs) (Created page with "=Introduction= 程式執行時,所拜訪過的程式碼片段,組合而成一個序列,稱之為執行序列(Execution Sequence)。不同執行序列間因可能執行...") |
Rickychien (Talk | contribs) |
||
(5 intermediate revisions by one user not shown) | |||
Line 1: | Line 1: | ||
− | |||
− | |||
程式執行時,所拜訪過的程式碼片段,組合而成一個序列,稱之為執行序列(Execution Sequence)。不同執行序列間因可能執行過共同的程式碼片段,而存在著關聯性。執行序列常於測試案例選擇的研究中被探討,類似生物資訊領域中計算序列相似度時,利用一些常見的距離(Distance)或相似度(Similarity)計算公式,探討序列間彼此的差異以提供分類或是選擇的依據。以往執行序列的距離及相似度計算公式,在物件導向的程式執行序列中,並無法分辨出多型(polymorphism)這樣的特性。因此本研究利用生物資訊領域中計算序列相似度的演算法Needleman – Wunsch Algorithm ( NWA ),納入執行序列發生多型行為及程式執行順序等特性為考量,提出計算出執行序列間差異度(Dissimilarity)的方法,以解決目前探討執行序列相似度所存在之問題。 | 程式執行時,所拜訪過的程式碼片段,組合而成一個序列,稱之為執行序列(Execution Sequence)。不同執行序列間因可能執行過共同的程式碼片段,而存在著關聯性。執行序列常於測試案例選擇的研究中被探討,類似生物資訊領域中計算序列相似度時,利用一些常見的距離(Distance)或相似度(Similarity)計算公式,探討序列間彼此的差異以提供分類或是選擇的依據。以往執行序列的距離及相似度計算公式,在物件導向的程式執行序列中,並無法分辨出多型(polymorphism)這樣的特性。因此本研究利用生物資訊領域中計算序列相似度的演算法Needleman – Wunsch Algorithm ( NWA ),納入執行序列發生多型行為及程式執行順序等特性為考量,提出計算出執行序列間差異度(Dissimilarity)的方法,以解決目前探討執行序列相似度所存在之問題。 | ||
Line 9: | Line 7: | ||
<pre>git@140.115.53.53:oolab/dissimilarity.git</pre> | <pre>git@140.115.53.53:oolab/dissimilarity.git</pre> | ||
+ | |||
+ | |||
+ | =Installation= | ||
+ | |||
+ | Dissimilarity專案為Visual Studio 2012,下載原始碼後可以直接透過點擊sln開啟專案。 | ||
+ | |||
+ | |||
+ | =Program structure= | ||
+ | |||
+ | Dissimilarity屬於小型專案,程式碼大約300多行。主體架構分為兩個檔案 | ||
+ | * Program.cs - 程式主體,負責讀檔與輸出結果 | ||
+ | * NeedlemanWunsch.cs - NWA演算法核心 | ||
+ | |||
+ | |||
+ | =Tutorial= | ||
+ | |||
+ | Dissimilarity主要讀取專案目錄底下 Execution Sequence/ 資料夾,預先放置好trace case。<br> | ||
+ | |||
+ | 預設trace case範例以放置於Dissimilarity目錄底下。<br> | ||
+ | |||
+ | 本專案不須經由任何設定。啟動Visual Studio開啟本專案直接執行後,即可得到dissimilarity結果。<br> | ||
+ | |||
+ | 最後Dissimilarity會在console輸出結果,並一同將結果存於Execution Sequence result.txt。 | ||
+ | |||
+ | |||
+ | =Improvements and Problems= | ||
+ | |||
+ | None |
Latest revision as of 15:39, 10 July 2014
程式執行時,所拜訪過的程式碼片段,組合而成一個序列,稱之為執行序列(Execution Sequence)。不同執行序列間因可能執行過共同的程式碼片段,而存在著關聯性。執行序列常於測試案例選擇的研究中被探討,類似生物資訊領域中計算序列相似度時,利用一些常見的距離(Distance)或相似度(Similarity)計算公式,探討序列間彼此的差異以提供分類或是選擇的依據。以往執行序列的距離及相似度計算公式,在物件導向的程式執行序列中,並無法分辨出多型(polymorphism)這樣的特性。因此本研究利用生物資訊領域中計算序列相似度的演算法Needleman – Wunsch Algorithm ( NWA ),納入執行序列發生多型行為及程式執行順序等特性為考量,提出計算出執行序列間差異度(Dissimilarity)的方法,以解決目前探討執行序列相似度所存在之問題。
Contents[hide] |
[edit] Download
原始碼託管於oolab's gitlab,使用git指令下載 (請確認擁有該repository權限)
git@140.115.53.53:oolab/dissimilarity.git
[edit] Installation
Dissimilarity專案為Visual Studio 2012,下載原始碼後可以直接透過點擊sln開啟專案。
[edit] Program structure
Dissimilarity屬於小型專案,程式碼大約300多行。主體架構分為兩個檔案
- Program.cs - 程式主體,負責讀檔與輸出結果
- NeedlemanWunsch.cs - NWA演算法核心
[edit] Tutorial
Dissimilarity主要讀取專案目錄底下 Execution Sequence/ 資料夾,預先放置好trace case。
預設trace case範例以放置於Dissimilarity目錄底下。
本專案不須經由任何設定。啟動Visual Studio開啟本專案直接執行後,即可得到dissimilarity結果。
最後Dissimilarity會在console輸出結果,並一同將結果存於Execution Sequence result.txt。
[edit] Improvements and Problems
None