淺說軟件需求分析(2)

發表于:2012-07-16來源:博客園作者:蟲師點擊數: 標簽:軟件需求分析
----------------------------------------------------------------------------------------------- 如何進行需求分析 進行需求分析不象情人之間的浪漫做法讓我摸摸你的頭發,感

  -----------------------------------------------------------------------------------------------

  如何進行需求分析

  進行需求分析不象情人之間的浪漫做法——“讓我摸摸你的頭發,感覺它是什么顏色。”我們需要了解需求分析的渠道和過程。

  需求分析的過程

  (1)可行性研究

  它指明現有的軟件、硬件技術能否實現用戶對系統的要求,從業務角度來決定系統開發是否可行以及在預算范圍內能否開發出來??尚行匝芯康慕Y果是清楚的回答:該系統是否值得開發

  (2)需求導出和分析

  這是一個通過對現有系統分析、與潛在客戶討論、進行任務分析等導出系統需求的過程,也可能需要開發一個或多個不同的系統原型,以幫助分析員了解所要描述的系統。

  (3)需求描述

  需求描述就是把在分析活動中收集的信息通過分析整理之后以文檔的形式確定下來。該文檔中有兩類需求:用戶需求是從客戶和最終用戶角度對系統需求的抽象描述;系統需求是對系統要提供的功能的詳盡描述。

  (4)需求有效性驗證

  主要是通過評審、驗證等一系列活動來找出需求文檔中的錯漏并加以改正。

  (5)需求管理

  需求管理需求管理是一種系統化方法,可用于獲取、組織和記錄系統需求并使用戶和開發方在系統變更需求上始終保持一致

  -------------------------------------------------------------------------------------------------------------------

  需求分析的方法

  1 . 功能分析方法

  那怕是天下最無能的市長或書記,都知道在作報告時要先從宏觀上講一、二、三、四、五,再從細節上講 A、B、C、D、E;需求分析不象偵探推理那樣從蛛絲馬跡著手。應該先了解宏觀的問題,再了解細節的問題。

  功能分析法功能分解法以系統提供的功能為中心來組織系統。首先定義各種功能, 然后把功能分解為子功能, 同時定義功能之間的接口。數據結構是根據功能/子功能的需要設計的。 其基本策略是以分析員的經驗為依據, 確定新系統所期望的處理步驟或子步驟, 然后, 將問題空間映射到功能和子功能上。

  2 . 數據流方法

  周末,小明一覺醒來突然想吃紅燒肉,那想得口水直流,于起床,穿好衣服,打開錢包一看空的,好吧,先去銀行取錢,然后去菜那買了一肉、各種配料,然后回家,開火,各種材料往鍋里一放,開始小火慢燉,半個小時后,小明終于吃上了美味可口的紅燒肉。這是一個典型的流程,如果把它看成一個系統功能的話,那么小明吃到紅燒肉是這個功能的目的,那么中間要經歷許多環節,起床穿衣---取錢---習材料----制作完成。而且各個功能(步驟)之間是相互聯系的,小明總不能不穿衣服直接去取錢吧。

  數據流法也叫結構化分析, 其基本策略是研究問題域中數據如何流動以及在各個環節上進行何種處理, 從而發現數據流和加工。 問題域被映射為由數據流、加工以及文件、端點等成份構成的數據流圖(DFD) , 并用數據字典對數據流和加工進行詳細說明。這種方法的關鍵是動態跟蹤數據流動。

  3 . 信息建模方法

  一個貴婦去報案,我丟了一個輛車,小明是警察,然后問貴婦,你丟的什么樣的車子?貴婦噼里啪啦的給小明描述車子樣子:我的車子有四個輪子,前面兩個小,后面兩個大,車身是流線型的,后面帶尾翼,里面只一排坐位的那種,車坐上都用的真皮做套子,后面…..你聽著聽頭大了,然后對貴婦說:等等,我給你畫下來。于是,貴婦邊說,你邊畫,然后貴婦指出畫的不對的地方由你來修改。當然了這只是實體的樣子。我們還需要知道汽車各個部件的功能以及各部件之間的關系。

  信息建模法的核心概念是實體和關系, 主要工具是語義數據模型(實體關系圖) , 其基本策略是找出現實世界的對象, 然后用屬性來描述對象, 增添對象與對象之間的關系, 定義父類與子類, 用父類型/子類型提煉屬性的共性, 用關聯對象關系作細化的描述, 最后進行規范化處理。 其實質是將問題空間直接映射成模型中的對象。

  ----下面三種方法,我還不能理解-----

  4 . 面向對象方法

  我想你如果學習過面向對象編程的話,會很容易理解。

  面向對象分析 OOA(Object- Oriented Analysis) 的基本策略是通過信息隱藏將比較容易變化的元素隱藏起來, 分析員基于比較穩定的元素建立其思想和規格說明的總體結構。

  面向對象分析的主要特性是加強了對問題域( Problem Domain) 和系統責任( System Responsibili-ties)的理解; 改進與分析有關的各類人員之間的交流; 對需求的變化具有較強的適應性; 支持軟件復用

  5 . 面向本體方法

  面向本體的需求分析 OORA (Ontology- Oriented Require-ments Analysis) , 是 OOA方法的有效補充和提升。 面向本體方法強調相關領域的本質概念以及這些概念之間的關聯。其實質是在面向對象方法中引入對象關聯, 并給出各種關聯的語義語用。

  OORA方法由 4 個階段來完成。第一階段: 用一種自然語言BIDL( Bisiness Information Description Language) 描述事務; 第二階段: 確認隱含在 BIDL文本中的本體和對象; 第三階段: 將這些本體和對象轉換成另一種語言 Ononet (Ontology and Object- Ori-ented Network) , 得到用 Ononet 書寫的需求預定義; 第四階段: 在采用 Ononet 作為知識表示形式的領域本體知識庫中搜索相關的知識, 并和前面的需求預定義合并, 得到軟件完整的需求定義。

  6 . 形式化方法

  形式化方法, 廣義上講, 是應用數學的手段來設計、 模擬和分析, 得到像數學公式那樣精確的表示。從狹義上講, 就是使用一種形式語言進行語言公式的形式推理, 用于檢查語法的良構

  性并證明某些屬性。在需求分析階段, 利用形式化方法得到需求規格說明書, 可以規范軟件開發過程, 為獲得更好的系統性能提供重要保證。

原文轉自:http://www.anti-gravitydesign.com

国产97人人超碰caoprom_尤物国产在线一区手机播放_精品国产一区二区三_色天使久久综合给合久久97