如何編寫高質量“軟件需求說明書”[3]

發表于:2010-04-27來源:作者:點擊數: 標簽:質量需求說明書編寫軟件
如何編寫高 質量 “軟件需求說明書”[3] 軟件測試 可追蹤:你應能將一個軟件與其原始材料相對應,如高級系統需求, 用例 ,用戶的提議等。也能夠將軟件需求與設計元素,源代碼,用于構造實現和驗證需求的測試相對應??勺粉櫟男枨髴摼哂歇毩耸?,細密和結

  如何編寫高質量“軟件需求說明書”[3]  軟件測試 

    可追蹤:你應能將一個軟件與其原始材料相對應,如高級系統需求,用例,用戶的提議等。也能夠將軟件需求與設計元素,源代碼,用于構造實現和驗證需求的測試相對應??勺粉櫟男枨髴摼哂歇毩耸?,細密和結構化的編寫,不應過大,不應是敘述性的文字和公告式的列表。

  需求質量的評審

  這些有關需求質量的特性的描述在理論上都是非常好的,但一個好的需求到底是個什么樣子的呢?為了體現得更切合實際,我們做個小練習。下面有幾個從實際的工程選出的需求,依據上面的質量標準,評估每個需求,看看有什么問題,然后用更好的方式重寫。我將對每個例子都提出自己的分析和改進的建議。也歡迎你提出不同的見解。我所占優的只是我知道每個需求的出處。因為你我都不是真正的客戶,我們只能猜測每個需求的意圖。

  例1.“產品應在不少于每60秒的正常周期內提供狀態信息”

  這個需求是不完整的:狀態信息是什么,如何顯示給用戶。這個需求有幾處含糊。我們在談論產品的哪部分?狀態信息間隔真的假定為不少于60秒?,甚者每10年顯示一條新的狀態信息也可以?也許它的意圖是消息間隔不應超過60秒,那么1毫秒是不是太短?“每”這個詞導致了不確定性。問題的后果,就是需求的不可證實。

  彌補缺陷,重寫需求的一種方法:

  1、狀態信息

  2.后臺任務管理器因該以誤差上下不超過10秒的60秒間隔,在用戶界面的指定位置顯示狀態信息

  3.如果后臺進程處理正常,那么應該顯示任務已完成的百分數/比

  4.任務完成時,應顯示相關的信息

  后臺任務出錯應該顯示錯誤信息

  為了分別測試和追蹤,我將其分成了多個需求。如果將幾個需求串接在一節中,在構造和測試時就很容易漏掉一個。

  例2.“產品應瞬間在顯示和隱藏不可打印字符間切換”

  計算機在瞬間不能做任何事,所以這個需求不切實可行。它的不完整性表現在沒有聲明觸發狀態切換的條件。軟件要在某些條件下更改自己?或者用戶為了模仿更改要做一些動作?而且,在文檔中改變顯示的范圍是多大:選中的文本,整個的文檔,或其他的?這也是個模糊的問題。不可打印字符合隱藏字符一樣嗎?或者是一些屬性標志或一些控制字符?問題的后果,就是需求的不可證實。

原文轉自:http://www.anti-gravitydesign.com

国产97人人超碰caoprom_尤物国产在线一区手机播放_精品国产一区二区三_色天使久久综合给合久久97