天天看點

系統分析和需求分析

系統分析不完全是需求分析;需求分析屬于系統分析。

在我印象中,系統分析和需求分析是同一件事,說法不同而已,平時也是混合使用,不加區分。但事實上,二者還是有所差別。教程裡,系統分析和需求分析分别位于不同的章節,其中系統分析自成一章,而需求分析則放在需求工程章節裡。

從書本表述看,系統分析與需求分析用的技術,包括調查方法和分析内容,基本上是一緻的,而系統分析的産物是《系統需求規格說明書》,需求分析之後進行需求定義,産物是《軟體需求規格說明書》,輸出也一樣。

一、系統分析

按照書本的理論,系統分析階段也稱為邏輯設計階段,其任務是根據系統設計任務書所确定的範圍,對現有系統進行詳細調查,描述現有系統的業務流程,指出現有系統的局限性和不足之處,确定新系統的基本目标和邏輯功能要求,即提出新系統的邏輯模型。

系統分析的工作内容包括:

1)詳細調查

2)現有系統分析

3)組織結構分析

對使用系統的企業或機關進行組織結構分析

4)系統功能分析

5)業務流程分析

6)資料與資料流程分析

7)輸出系統需求規格說明書

二、需求分析

需求分析就是提煉、分析和仔細審查已經擷取到的需求,把雜亂無章的使用者要求和期望,轉化為使用者需求,以確定所有的項目幹系人都明白其含義,并找出其中的錯誤、遺漏或其他不足的地方。需求分析的工作通常包括7個方面:

1)繪制系統上下文範圍關系圖

2)建立使用者界面原型

3)分析需求的可行性

4)确定需求的優先級

5)為需求建立模型

6)建立資料字典

7)使用QFD(品質功能部署)

即将使用者需求精确無誤地轉變為技術要求。QFD是一種在設計階段應用的系統方法。

QFD(Quality Function Deployment,品質功能部署)是一種将使用者要求轉化成軟體需求的技術。其目的是最大限度地提升軟體工程過程中使用者的滿意度。為了達到這個目标,QFD将軟體需求分為三類:正常需求、期望需求和意外需求。

【正常需求】

使用者認為系統應該做到的功能或性能,實作越多使用者越滿意。

【期望需求】

使用者想當然認為系統應當具備的功能或性能,但并沒有或不能正确地描述自己想要這些功能或性能。如果期望需求沒有實作,使用者會不滿意。

【意外需求】

也稱為興奮需求。是使用者要求範圍外的功能或性能,實作了使用者會更高興,但不實作也不影響購買決策。意外需求實施與否,控制在開發人員手中。開發人員可以選擇實作,以便獲得使用者的更高忠誠度;也可以從成本角度出發,不予實作。

​​需求擷取及記錄​​​​聯合需求計劃(JRP)​​​​需求分析工作過程​​

三、系統分析與需求分析的差別

按我的了解,系統分析和需求分析的差別如下:

1、系統分析針對的是在現有系統基礎上更新或建立系統;而需求分析說的是從無到有地建立一個系統

2、系統分析适用于機關或企業内部建設系統;而需求分析适用于對外的商業系統開發

3、系統分析的範圍比需求分析廣。系統分析包括系統調查、現有系統分析、輸出系統需求規格說明書,而需求分析隻是需求工程之需求開發中的一個步驟,需求開發的步驟依次是需求擷取、需求分析、需求定義、需求驗證。

或者說,系統分析對标的是需求開發。

四、系統分析與需求分析沒有差別

但如果根據國家标準(GB/T 8566-2007)對軟體生命周期的劃分,則需求分析又等同于系統分析,是對其中一個階段的命名。

繼續閱讀