《软件需求模式》阅读笔记01
本學期我選擇《軟件需求模式》作為我的精讀書目,以此來加強我對軟件需求分析這門課的學習。
這本書的譯者就在序中寫到:“需求是平衡的藝術,既要對開發人員有指導意義,又要能幫助解決業務問題,如何在兩者之間取得平衡,本書中的大量實例對此有自己的獨特見解”。顯然,需求分析就是連接客戶和軟件開發者,或者說,連接業務與軟件的最關鍵的橋梁。需求是開發人員開發軟件的基礎,需求也是業務人員的業務目標。
首先,我們應該認識到的就是,什么是需求?需求應該是用最清晰的文字來闡明系統所必須具有的所有功能和其他能力,即需求定義了系統必須做什么和它必須完成的行為。本書中就定義了需求的一些基本原則:(1)定義問題,而不是解決方案。我們要理解問題的本質,在需求中明白問題是什么,而不是應該怎么做。(2)定義系統,而不是項目。需求所體現的是這個系統的功能,而系統就是一組目標,但是項目卻是如何完成這一目標。(3)區分正式和非正式部分。我們應該從大量的需求信息中,通過背景知識、前后關系、流程以及結構來正確地認識到需求的正式組成部分,即系統必須做什么,而其他的都是非正式的。(4)避免重復。每一項信息應該只需要表達一次,重復會產生額外的工作而且加大了不一致的可能性。在認識和定義需求的同時,本書也為我們提供了一個典型的傳統需求階段的步驟:(1)準備。(2)收集信息。(3)編寫需求規格草稿。(4)評審規格。(5)評審后修改。
在了解了什么是需求和需求階段的步驟之后,我進一步學習了需求規格的內容。首先是介紹部分,系統規格的介紹部分有:系統目的、文檔目的、需求格式、詞匯表、參考書目以及文檔歷史。其實這六個主題的目的都是為了讓開發者能夠更清楚地認識到需求,才能更好地去開發軟件。在我看來一個好的需求分析,應該讓我們很清楚明白地認識到我們的系統本身的目的是什么,我們要使用更簡潔明了的語言用來代替一些難懂的專業術語去描述每一個需求。所以介紹部分就是讓我們更好地認識需求,才能使我們把握好開發系統的方向。其次是上下文部分,就在上課老師也讓我們練習了這一部分的內容,即上下文圖。在上下文圖中我們需要展示組件、用戶角色、范圍邊界、系統間的接口,在這之中,我們就需要對每一個是真的事情,清楚明確地聲明為假設,同時也要把不需要的東西排除在外,最后我們要確定關鍵業務實體(即系統就是為了產生和操縱這些東西而開發的),然后構件基礎架構(支持一個或多個需求所需的一組基礎的能力)。然后就是定義系統的核心部分——功能域部分。我們需要在需求中詳細地列舉出系統的所有功能,將其分為大量的小節而更方便管理也更容易理解,然后需要根據功能的使用頻率、發起者的相對重要性或者對業務的價值來區分不同的功能的重要性,并且從高到低依次排列。最后是主要非功能要求部分,我們需要篩選出系統功能中不重要的部分,把它們分配到規格內容的其他部分當中,而對于主題太大的不主要功能就加到“主要非功能要求”當中,并組織語言,定義最合適的標題。
通過本次的閱讀,我比較清楚地認識到了需求就是闡明系統功能或者說定義系統行為的工具,而且也學習掌握了在編寫需求文檔時的一些規格內容,讓我對軟件需求在總體的分析和編寫上有了大致的了解。
轉載于:https://www.cnblogs.com/wxyxxx/p/5925242.html
總結
以上是生活随笔為你收集整理的《软件需求模式》阅读笔记01的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: C# WPF Application 下
- 下一篇: 四人团队项目申请