點擊查看:計算機軟考軟件設計師知識點匯總
結構化分析概述
需求分析是發(fā)現、求精、建模、規(guī)格說明和復審的過程。為了發(fā)現用戶的真正需求,首先應該從宏觀角度調查、分析用戶所面臨的問題,也就是說,需求分析的第一步是盡可能準確地了解用戶當前的情況和需要解決的問題。例如,僅僅知道“用戶需要一個計算機輔助設計系統(tǒng),因為他們的手工設計系統(tǒng)很糟糕”是遠遠不夠的。除非開發(fā)人員準確地知道目前使用的手工系統(tǒng)什么地方很糟糕,否則新開發(fā)出的計算機輔助設計系統(tǒng)很可能也同樣糟糕。類似地,如果一個個人計算機制造商打算開發(fā)一個新的操作系統(tǒng),他首先應該做的工作就是評價目前使用的操作系統(tǒng)并準確地分析它不能令人滿意的原因。只有開發(fā)人員對用戶面臨的問題有了清楚的了解之后,才能正確地回答出“什么是新產品必須做到的”這個關鍵問題。
如果軟件是新開發(fā)的計算機系統(tǒng)的一個組成部分,則系統(tǒng)工程師所確定的軟件職責范圍,可以作為軟件需求分析的出發(fā)點。
分析員對用戶提出的初步要求應該反復求精多次細化,才能充分理解用戶的需求,得出對目標系統(tǒng)的完整、準確和具體的要求。
為了更好地理解問題,人們常常采用建立模型的方法。所謂模型,就是為了理解事物而對事物做出的一種抽象,是對事物的一種無歧義的書面描述。通常,模型由一組圖形符號和組織這些符號的規(guī)則組成。在技術層次上,軟件工程是從一系列建;顒娱_始的,這些建模活動導致對要求開發(fā)的軟件的完整的需求規(guī)格說明和全面的設計表示。結構化分析就是一種建立模型的活動,通常建立數據模型、功能模型和行為模型等三種模型。
除了用分析模型表示軟件需求之外,還要寫出準確的軟件需求規(guī)格說明。模型既是軟件沒計的基礎,也是編寫軟件規(guī)格說明的基礎。
在分析軟件需求和編寫軟件規(guī)格說明的過程中,軟件開發(fā)者和軟件用戶都起著關鍵的、必不可少的作用。只有用戶才真正知道他們需要什么,用戶必須盡量把他們對軟件功能和性能的模糊需求準確、具體地描述出來,而開發(fā)者則是軟件需求的詢問者、顧問和實現者。
表面看來,需求分析和規(guī)格說明好像是比較簡單的工作,實際上完全相反,這是一項相當艱巨復雜的工作。用戶與開發(fā)者之間需要通信、溝通的內容非常多,在雙方交流信息的過程中很容易出現誤解或遺漏,也可能存在二義性。因此,不僅在整個需求分析過程中應該采用行之有效的通信技術,集中精力過細工作,而且對需求分析的結果(分析模型和規(guī)格說明)必須嚴格審查。
盡管目前存在許多不同的結構化分析方法,但是,所有這些分析方法都遵守下述準則
必須理解和表示問題的信息域,根據這條準則應該建立數據模型。
必須定義軟件應完成的功能,這條準則要求建立功能模型。
必須表示作為外部事件結果的軟件行為,這條準則要求建立行為模型。
必須對描述信息、功能和行為的模型進行分解,用層次的方式展示細節(jié)。
分析過程應該從要素信息移向實現細節(jié)。
相關推薦:
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內蒙古 |