03《構建之法》閱讀筆記03

我命傾塵發表於2018-01-04

個人感受:

  過去的做法:

  根據自己的想法來編輯程式程式碼,實現相關功能。

  這樣做的缺陷:

  使用者不喜歡,達不到使用者的要求。

  解決方法:

  在開發軟體之前要對使用者進行充分的調查需求,按照使用者的需求來進行程式設計,使用者才是第一主觀因素。

 重點記錄:

  尋找需求:

  1. 獲取和引導需求

    軟體團隊需要找到軟體的利益相關者,瞭解和挖掘他們對軟體的需求,引導他們表達出對軟體的需求。

  2. 分析和定義需求

   這是指對從各個方面獲取的需求進行規整,定義需求的內涵,從各個角度將需求量化(需求實現的最後期限,實現需求大致所需的時間和資源成本,各個不同需求的優先順序,需求帶來的收益,等等)。

  3. 驗證需求

    軟體團隊要跟利益相關者溝通,通過分析報告、技術原型、使用者調查或演示等形式向他們驗證軟體團隊對於這些需求的認知。

  4. 在軟體產品的生命週期中管理需求

    在軟體的生命週期中,需求在傳送變化,技術在發展,團隊成員的能力在提高。 

  對軟體需求的劃分:

  1. 對產品功能性的需求:要求產品必須實現某些功能。

  2. 對產品開發過程的需求:要求軟體的開發流程必須滿足某些約束條件,例如,開發過程必須產生某種型別的文件,必須在某個時間點達到某個狀態,必須對原始碼施以某種約束(安全性檢查、程式碼版權核查、程式碼規範和支援文件的核查)

  3. 非功能性需求:例如:執行時間限制等。 

  4. 綜合需求:可能牽涉到其他系統的情況。 

軟體產品的利益相關者

  使用者:

    顧客:購買這個軟體或者根據合同或規定接收軟體的人。這些人不一定是軟體的直接使用者。

    市場分析師:市場部門要代表“典型使用者”的需求。

  監管機構:

    軟體工程師:工程師也是軟體需求階段的一個重要角色,軟體的各種約束、特性會影響到他們的工作效率、開發難度和軟體維護的難度。他們應積極參與到軟體需求階段中來。

相關文章