1.需求VS功能
需求:客戶想要的效果,對客戶有價值的事情
功能:系統為了實現客戶的價值而提供的能力/功能
舉例:
汽車:駕駛是需求,剎車、加速、轉彎是功能
打印機:打印是需求,進紙、設定、與電腦連接等是功能
pos機:買單是需求,商品掃描、金額匯總、收銀等是功能
2.需求的重要性
1/3的項目失敗或陷入困境是因為需求原因導致的
garbagein,garbageout
垃圾上了生產餅干的流水線,最后產出的是像拉吉一樣的餅干
修復需求錯誤的問題成本極高
1編碼階段修復發現一個錯誤耗費人類是1個單位
2測試階段修復需求錯誤的成本是5-10倍
3維護階段(產品上線后),修復需求錯誤成本是20倍
ps:在需求階段修復錯誤,成本只需要0.1-0.2即可
結論:需求錯了,幾乎要把軟件項目重做一遍
3.需求分析的目的
1記錄員,記錄客戶的需求
2分析員,和客戶一起分析,完善需求
3引導員,能夠引導客戶的需求
4.需求分析的方法
1需求分析518方法,簡稱我要發,具體就是5w1h8c
5w+1h屬于功能屬性8c屬于質量屬性
5w:
when:用戶想在什么時間用,例如半夜備份的任務,很明顯我們得知該需求需要自動化執行
where:用戶想在什么地方用,例如垃圾桶室內和室外的區別,同樣的事物放到不同地方用肯定不一樣
who:用戶想讓誰來用,不僅是人,也可以是一個系統
what:用戶想要我們程序的輸出結果是什么,如圖片,文檔,系統
why:問一問用戶為什么要這么做,(你不問,他基本不說),包括客戶所有覺得不爽的事情
ps:why是核心
1h:how
8c:8個constraint約束
性能performance
性能是系統提供相應服務的效率。主要包括響應時間、吞吐量
性能是很多系統架構設計的關鍵約束條件之一
例如,同樣一個web網站,雖然都是提供信息給用戶流量,設計一個日訪問量1w的網站與
日訪問量10億的網站,二者的設計截然不同
成本cost
成本指為了實現系統而需要付出的代價
成本也是很多系統架構設計的關鍵約束之一
例如客戶只愿意花100w,而我們卻設計了一個耗費1000w的系統
時間time
指客戶要求什么時候交付
可靠性reliability
指系統長時間正確運行的能力,銀行、證券、電信這些公司,對宕機時間要求很嚴格
安全security
指對信息安全的保護能力,涉及到錢、身份證、社會保險號等需求對這個要求很高
合規性compliance
指滿足各種行業標準、法律法規、規范等,例如3C、SOX、3GPP,ITUT
技術性technology
有的客戶可能要求我們采用某種技術
例如客戶現在都是windows服務器,要求我們基于windows平臺開發
兼容性compatibility
指我們的產品與客戶其他已有的產品或系統的兼容能力,要知道現在很少有產品是孤立運行的,特別是在大企業、大公司中,多個系統都是相互交互、互相配合的。新的系統必須能夠和已有的系統配合,否則將無法運行
以上內容為大家介紹了Python需求模型,希望對大家有所幫助,如果想要了解更多Python相關知識,請關注IT培訓機構:千鋒教育。