在這一章中,作者將根據個人對需求的理解,對畢業設計進行較為詳細嚴肅的需求分析。
在作者的個人理解中,需求分析分為以下幾個階段:明確系統目標,定義系統角色,用自然語言對待開發功能進行描述,需求條目化。
- 系統目標
因為在現實的軟件開發中,一個軟件開發項目可能會采取分期完成的方式,每一期有每一期不同的開發目標,所以在這一階段主要的意義在於明確系統的邊界,初步明確采用的技術基礎,以及對系統的雛形能產生一個大概的印象。
受限於作者個人的經歷,畢業設計的需求是基於本人的虛構和想象,而在這一階段,完成的內容如下圖。
- 系統角色
在這一階段,主要是為了明確有多少不同的角色與系統進行交互,方便接下來對業務邏輯的分析以及職責划分。完成的內容如下:
- 功能描述
在這一階段,主要完成的目標是用自然語言描述待開發的功能(功能實現的流程,涉及到的角色,產生哪些數據),為下一步需求條目化做准備。
在本系統中,待開發的功能主要有:注冊,登錄,添加購物車,購買,更新商品信息,完成的內容如下:
- 需求條目化
在這一階段中,我將采用用例和活動圖結合的方式來對需求進行條目化的處理。
關於用例:基於本人的理解,采用用例的目的主要是為了更清晰地描述參與者與系統之間的交互過程(參與者向系統提交了什么樣的請求和數據,系統做出了什么樣的響應)。在完成一份質量較高的用例文檔后,能夠更好地和用戶討論需求,一定程度上彌補了開發人員對相應的業務知識不熟悉的問題。
為了實現以上的目標,用例在編寫的過程中需要注意以下幾點:
-
- 站在用戶的角度來進行編寫。
- 不要采用專業術語。
- 控制好用例的粒度,基本路徑中不超過10步。
關於活動圖:采用活動圖,主要是為了將以上的文字描述,轉換為更直觀的圖形描述。能更高效率地與開發人員進行交流。
完成內容如下: