基于序列的規范過程 |
未經允許,嚴禁轉載本欄目內容 |
本文經許可轉載自軟件工程專家網 www.21cmm.com , |
規范制定有很多方法。基于順序的規范是指逐步構造出完備、一致和正確的黑盒和狀態盒規范的過程。本節討論的就是這種方法。
在基于序列的規范過程中,按嚴格順序系統地舉出所有可能的激勵(歷史激勵)序列,如按長度0、1、2……排列。因為每個序列映射至其正確的響應,所以可通過應用歸約規則辨識等價序列,當完備和一致地定義了系統以后枚舉過程結束。
基于Mills(1975)、Pamas(1992)、Mao(1993)Drowell(1996)和 Poore(Prowell和Poore,1998)的工作,基于序列的規范產生了明顯的問題,軟件使用的各種情況的組合產生的用例個數是天文數字。通過序列枚舉,開發人員考慮系統激勵的所有排列和組合。每種序列代表一種使用場景。在逐步枚舉過程中,要區別可能的場景和不可能的場景,計劃中的使用和錯誤的使用,可規約的序列和不可規約的序列。這些不可規約的序列(稱為典型序列)是軟件行為的精確規范的基礎,這種精確是指數學意義上的完備性、一致性和可追蹤正確性。
序列書面枚舉提供了完備性的直接驗證。能按序列的從小到大的長度(1,2,3……)逐一驗證激勵的所有組合和排列是否已映射到一個響應。
序列順序枚舉保證了任何所給使用場景只出現一次。和完備性一樣,一致性也是枚舉的直接的推論。
基于序列的規范的每一元素都可追溯到最初的需求。如果一個序列的正確響應在需求中找不到,那么必須澄清所期望的行為并修改需求。
基于序列的規范工作流程以連續方式對掌握需求分析、黑盒規范、狀態盒規范方面提供了自動支持的可能性。其步驟在下面的小節中作簡要說明。 黑盒定義
加上標簽的需求。將需求加上標簽序號用于驗證后續工作產品的每一要素的正確性。有條理的順序枚舉過程可暴露出需求的含糊不清或遺漏的地方。在基于序列的規范中得到清晰的需求是很自然的事。
勵和響應的標識始于最基本層次。進一步考慮(可能包括初期枚舉)后常用抽象這種方法來簡化枚舉進程。
順序枚舉。將所有序列的排列組合按長度順序列舉。對每個序列進行檢查時,完成如下評價工作:
1. 不可能的序列(如在系統啟動之前的激勵)標上"非法"。任何非法序列的擴展仍是非法的,所以標有"非法"的序列在列舉時不再擴展。
2. 對應于需求,對每個序列的正確響應要記錄歸檔。如果沒有需求與之對應,要記下一個導出需求。導出需求代表假設或解釋,所以必須和原來的需求一起進行確認。
3. 如果兩個序列對未來激勵的響應是一樣的,則稱它們是等價的。既然兩個等價序列的擴展對應同樣的行為,就沒有必要都擴展,只需將較短的進行擴展。
當一個給定長度的所有序列或者非法或者和先前的序列等價時,就停止枚舉。
完全的枚舉表示數學上完備的、一致的和可驗證正確的黑盒規范。因為每一個序列映射到一個響應,所以規范是完備的;因為每個序列只對應一個響應,所以規范是一致的。由領域專家去驗證其正確性,每序列對應的行為追溯到需求正好是所需的行為,則驗證了正確性。
典型序列分析。枚舉中的合法的不與任何先前序列等價的序列,稱為典型序列。典型序列代表了系統使用的獨一無二的情況,對于給定抽象層次的黑盒子,對典型序列的分析將產生系統的狀態空間。
在典型序列分析中,用變量來封裝每一激勵序列的條件。這些變量可視為系統的狀態數據。對相關變量的典型序列進行檢查可得到每個變量的范圍。對每一典型序列,變量值的組合是惟一的。這使得在分析完成時典型序列都是不相交的。 狀態盒定義
黑盒規范中每一序列可看作是個元組(當前的激勵、以前的激勵)。黑盒中位于每個序列上的以前的激勵事實上是典型序列。基于這一點,制定系統的狀態盒子規范只是一個裝配的事。可將每個合法的黑盒映射(序列→響應)替換成狀態盒映射(當前激勵、狀態→響應、狀態更新)。狀態盒可以自動從黑盒生成,如果借助認證工具生成,則無需再驗證。
狀態盒的最后形式是一系列映射表的集合,每個激勵對應一個映射表。映射表的格式如下圖所示。
狀態盒規范是規范的最后產品。在從狀態盒細化到明盒子的過程中將繼續用到凈室盒子結構規范和設計方法。在明盒中將進行完整的過程設計。 |
Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=2262
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
