Dissimilarity NWA Algorithm

From OO Lab
(Difference between revisions)
Jump to: navigation, search
(Created page with "=Introduction= 程式執行時,所拜訪過的程式碼片段,組合而成一個序列,稱之為執行序列(Execution Sequence)。不同執行序列間因可能執行...")
 
 
(5 intermediate revisions by one user not shown)
Line 1: Line 1:
=Introduction=
 
 
 
程式執行時,所拜訪過的程式碼片段,組合而成一個序列,稱之為執行序列(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

Personal tools