天天看點

《需求工程——軟體模組化與分析》閱讀筆記之一

      IEEE對需求定義為:①使用者為了解決問題或達到某些目标所需要的條件或能力。②系統或系統部件為了滿足合同、标準、規範或其他正式文檔所規定的要求而需要具備的條件或能力。③對①或②中的一個條件或一種能力的一種文檔化表述。通過這個定義了解了需求并不是使用者想要的,想實作的,了解了需求本質的内涵。

      功能需求是軟體系統需求中最常見、最主要和最重要的需求,同時也是最為複雜的需求。功能需求通常展現為三個層次:業務需求、使用者需求、系統需求。

      業務需求描述了組織為什麼要開發系統,滿足使用者的業務需求。業務需求是使用者需要在業務上使自己更加友善的開展工作的需求。

      使用者需求表達了使用者對系統的期望,但是要透徹和全面地了解使用者的真正意圖,僅僅擁有期望是不夠的,還需要期望的背景知識。是以,對所有的使用者需求,都應該有充分的問題域知識作為背景支援。而在實際工作中,使用者表達自己的期望時,通常不會提及需求所涉及問題域知識,是以需求工程需要根據使用者的需求整理完整的問題域知識。

      系統需求是使用者對系統行為的期望,一系列的需求聯系在一起可以幫助使用者完成任務,達到使用者需求,進而滿足業務需求。需求工程可以直接映射為系統行為,定義了系統中需要實作的功能,描述了開發人員需要實作什麼。

      将使用者需求轉化為系統需求的過程,在該過程中,首先需要分析問題領域的特性,從中發現問題域和計算機系統的共享知識,建立系統的知識模型。然後将使用者需求部署到系統模型中,即定義系列的系統行為,讓它們聯合起來實作使用者需求,每一個系統行為即為一個系統需求。

     需求工程的應執行的路線:1.問題分析:明确問題;定義業務需求;制定解決方案及系統特性。2.需求擷取 3.需求分析  4.文檔化和驗證。需求工程的執行路線簡明地展示了一個需求工程如何運作的流程,也了解了需求工程的整個過程。

     書中也列舉了常見的需求定義錯誤,更好地解釋了之前需求的定義,也更加讓我們了解了需求的定義,以及産生需求定義錯誤的原因,通過分析原因可以讓我們在實際過程中注意到并且避免。也可以有更好的方法來避免這些錯誤。

    需求工程活動:1.需求擷取;2.需求分析;3.需求規格說明;4.需求驗證;5.需求管理

    需求擷取是從人、文檔或者環境中擷取需求的過程。在需求擷取中,需求工程師需要執行的任務包括:1.收集背景資料;2.定義項目前景和範圍;3.選擇資訊的來源;4.選擇擷取方法,執行擷取;5.記錄擷取結果。

   需求分析的主要工作室通過模組化來整合各種資訊,進而使人們更好地了解問題。在需求分析階段,需求工程師主要的任務包括:1.背景分析;2.确定系統邊界;3.需求模組化;4.需求細化;5.确定優先級;6.需求協商

   需求規格說明:擷取的需求需要被編寫成文檔,其中項目前景和範圍文檔記錄記錄業務需求、使用者需求分析記錄使用者需求、系統需求被寫入需求規格說明記錄系統需求。需求工程師在這個階段的主要工作包括:1.定制文檔模闆;2.編寫文檔

   需求驗證:為了保證以上标準的,滿足,需求規格說明文檔,尤其是最終定稿的需求規格說明文檔,在傳遞給相關人員之前要進行嚴格的驗證。需求驗證階段的主要任務包括:1.執行驗證;2.問題修正

   需求管理:需求管理會進行變更控制,納入和實作合理的變更請求,拒絕不合理的變更請求,控制變更的成本和影響範圍。需求管理階段的主要任務包括:1.建立和維護需求基線集;2.建立需求跟蹤資訊;3.進行變更控制

     這一部分詳細介紹了需求的定義及分類,需求過程的活動,使我們了解了需求工程的作用和意義,明确了軟體需求的來源和去向。還針對需求工程中理論與實踐并重的現狀,對理論、技術和實踐方法進行了融合。

下一篇: 1的數目