版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、軟件需求分析第三章第三章 軟件需求分析內(nèi)容和學(xué)時(shí)3.1需求基本概念3.2 需求獲取3.3 需求分析建模3.4 軟件需求規(guī)約及評審3.5 實(shí)例分析3.1需求基本概念概念:問題的定義系統(tǒng)的可行性什么是需求分析分析的任務(wù)和原則信息工程問題的定義目標(biāo)是:定義系統(tǒng)的業(yè)務(wù)目的和目標(biāo)獨(dú)立能使系統(tǒng)達(dá)到業(yè)務(wù)目的和目標(biāo)的關(guān)鍵因素分析技術(shù)和平臺(tái)對這些因素的影響分析已有系統(tǒng),并確定其使用范圍.可行性研究的任務(wù)GB 8566-88 計(jì)算機(jī)軟件開發(fā)規(guī)范中指出:可行性研究的主要任務(wù)是“了解客戶的要求及現(xiàn)實(shí)環(huán)境,從技術(shù)、經(jīng)濟(jì)和社會(huì)因素等三方面研究并論證本軟件項(xiàng)目的可行性,編寫可行性研究報(bào)告,制定初步項(xiàng)目開發(fā)計(jì)劃。”系統(tǒng)的可行
2、性原則:(1)技術(shù)可行性(2)經(jīng)濟(jì)可行性(4)法律可行性(5)開發(fā)方案選擇性概念:問題的定義系統(tǒng)的可行性需求分析特征分析的任務(wù)和原則需求有下列特征:(1)需求是正確的:我們和顧客復(fù)查它們確保被無錯(cuò)表達(dá)(2)需求一致:沒有任何沖突或含糊的需求(3)需求完全:所有可能的狀態(tài)、狀態(tài)變化、轉(zhuǎn)入、產(chǎn)品和約束都在某條需求描述了,那么說這個(gè)需求集合是完全(4) 需求是實(shí)際的:從技術(shù)上系統(tǒng)真的能做顧客所請求做的事,每條需求描述的事物是顧客需要的么(5) 需求可檢驗(yàn): 能寫出測試來驗(yàn)證已被滿足了需求。(6) 需求是可跟蹤:每一系統(tǒng)功能都能被跟蹤到要求它的需求集合?容易找到處理一個(gè)系統(tǒng)特定方面的需求集合?需求分析
3、劃分:面向數(shù)據(jù)流的結(jié)構(gòu)化分析方法 (SA)面向數(shù)據(jù)結(jié)構(gòu)的Jackson方法 (JSD)面向數(shù)據(jù)結(jié)構(gòu)的結(jié)構(gòu)化數(shù)據(jù)系統(tǒng)開發(fā)方法 (DSSD)面向?qū)ο蟮姆治龇椒?(OOA) 等分析的任務(wù):準(zhǔn)確地定義未來系統(tǒng)的目標(biāo),確定為了滿足用戶的需求系統(tǒng)必須做什么。用 規(guī)范的形式準(zhǔn)確地表達(dá)用戶的需求概念:問題的定義系統(tǒng)的可行性需求分析特征分析的任務(wù)和原則需求分析步驟:問題分析問題評估方案綜合建模規(guī)約復(fù)審 分析的原則:系統(tǒng)分析員的主要焦點(diǎn)是 “做什么(what)” ,不是 “怎樣做(how)”(1). 必須能夠表達(dá)和理解問題的數(shù)據(jù)域和功能域;(2). 按自頂向下、逐層分解方式對問題分解和細(xì)化;(3). 給出系統(tǒng)的邏
4、輯模型、物理模型4.2 需求獲取 清楚地理解所要解決的問題 完整地獲取用戶需求需求獲?。耗康男枨螳@取方法需求層次快速原型技術(shù)需求獲取的挑戰(zhàn):(1)對提出的問題空間理解、項(xiàng)目提出的問題來源、涉及環(huán)境、現(xiàn)開發(fā)的條件、達(dá)到的目標(biāo)、范圍(2)人與人之間的通信(3)需求的不斷變化需求獲取的過程確定需求開發(fā)過程編寫項(xiàng)目目標(biāo)和范圍文檔將用戶群分類并歸納各自特點(diǎn)選擇各類用戶的產(chǎn)品代表建立起典型用戶的核心隊(duì)伍讓用戶代表確定使用實(shí)例召開應(yīng)用程序開發(fā)聯(lián)系會(huì)議分析用戶工作流程確定質(zhì)量屬性和其它非功能屬性通過檢查當(dāng)前系統(tǒng)的問題報(bào)告來進(jìn)一步完善需求跨項(xiàng)目重用需求某出版社系統(tǒng)調(diào)查表編號提出問題1您在哪個(gè)部門工作?2出版業(yè)務(wù)
5、流程是什么?3您每日都處理那些文件、數(shù)據(jù)、報(bào)表?4工作中手工處理特別麻煩的事情是什么?5工作中手工處理什么問題解決不了?影響效率的問題有哪些?6您認(rèn)為提高工作效率,節(jié)省工作時(shí)間,減輕工作強(qiáng)度可采取哪些辦法?需求獲取調(diào)查舉例:某出版社系統(tǒng)調(diào)查表編號提出問題7您的部門需要成本核算和統(tǒng)計(jì)的內(nèi)容有哪些?8您的部門采用計(jì)算機(jī)管理工作情況如何?9如何改進(jìn)業(yè)務(wù)流程使之更合理?10哪些問題是目前傳統(tǒng)手工方法根本無法解決的?11出版社計(jì)算機(jī)管理信息系統(tǒng)需要解決什么問題?業(yè)務(wù)需求(business requirement):反映組織機(jī)構(gòu)或客戶對系統(tǒng)、產(chǎn)品高層次的目標(biāo)要求。用戶需求(user requirement
6、):描述用戶使用產(chǎn)品必須要完成的任務(wù)。功能需求(functional requirement):定義開發(fā)人員必須實(shí)現(xiàn)的軟件功能。非功能需求(no functional requirement):定義了系統(tǒng)工作時(shí)的特性需求獲?。耗康男枨螳@取方法需求層次快速原型技術(shù)需求包括的全部內(nèi)容功能 性能(3) 環(huán)境(4) 界面(5) 用戶或人的因素(6) 文檔 (7) 數(shù)據(jù)(8) 資源 (9) 安全保密(10)軟件成本消耗與開發(fā)進(jìn)度(11)質(zhì)量保證功能:系統(tǒng)做什么? 系統(tǒng)何時(shí)做什么? 系統(tǒng)何時(shí)及如何修改 或升級?技術(shù)性能指標(biāo): 存儲(chǔ)容量限制 執(zhí)行速度、相應(yīng)時(shí)間 數(shù)據(jù)吞吐量界面需求:有來自其它系統(tǒng)的輸入嗎?
7、有到其它系統(tǒng)的輸出嗎? 對數(shù)據(jù)格式有規(guī)定嗎? 對數(shù)據(jù)存儲(chǔ)介質(zhì)有規(guī)定嗎?(3) 環(huán)境(4) 界面(5) 用戶或人的因素 環(huán)境: 硬件設(shè)備:機(jī)型、外設(shè)、接口、地點(diǎn)、分布、溫度、濕度、磁場干擾等 軟件:操作系統(tǒng)、網(wǎng)絡(luò)、數(shù)據(jù)庫、應(yīng)用程序平臺(tái)用戶或人的因素:用戶類型? 各種用戶熟練程度? 需受何種訓(xùn)練? 用戶理解、使用系統(tǒng)的難度? 用戶錯(cuò)誤操作系統(tǒng)的可能性?文檔需求 需哪些文檔? 文檔針對哪些讀者?數(shù)據(jù)需求輸入、輸出數(shù)據(jù)的格式? 接收、發(fā)送數(shù)據(jù)的頻率? 數(shù)據(jù)的準(zhǔn)確性和精度? 數(shù)據(jù)流量? 數(shù)據(jù)需保持的時(shí)間?資源需求軟件運(yùn)行時(shí)所需的數(shù)據(jù)、軟件。內(nèi)存空間等資源。 軟件開發(fā)、維護(hù)所需的人力、支撐軟件、開發(fā)設(shè)備等
8、。(6) 文檔 (7) 數(shù)據(jù)(8) 資源安全保密要求需對訪問系統(tǒng)或系統(tǒng)信息 加以控制嗎 如何隔離用戶之間的數(shù)據(jù) 用戶程序如何與其它程序 和操作系統(tǒng)隔離 系統(tǒng)備份要求 需要防備非法侵入軟件成本消耗與開發(fā)進(jìn)度需求開發(fā)有規(guī)定的時(shí)間表周計(jì)劃設(shè)定軟硬件投資有無限制投資經(jīng)費(fèi)到位質(zhì)量保證系統(tǒng)的可靠性要求 系統(tǒng)必須監(jiān)測和隔離錯(cuò)誤 規(guī)定系統(tǒng)平均出錯(cuò)時(shí)間 出錯(cuò)后,重啟系統(tǒng)允許的時(shí)間 系統(tǒng)變化如何反映到設(shè)計(jì)中 維護(hù)是否包括對系統(tǒng)的改進(jìn) 系統(tǒng)的可移植性(9) 安全保密(10)軟件成本消耗與開發(fā)進(jìn)度(11)質(zhì)量保證需求獲?。耗康男枨螳@取方法需求層次快速原型技術(shù)建造/修改 原型用戶測試運(yùn)行原 聽取用 戶意見快速原型范型原
9、型的作用:問題:開發(fā)初期很難確定用戶需求規(guī)格解決:用戶與開發(fā)者之間的鴻溝以原型(軟件產(chǎn)品的樣品)為共同語言,實(shí)現(xiàn)用戶與開發(fā)者雙向溝通。原型特點(diǎn):是一個(gè)可實(shí)際工作的系統(tǒng); 沒有固定的生存期,結(jié)局可能是用后立即被拋棄,或可能成為最終系統(tǒng); 可服務(wù)于不同的目的, 從需求分析到最終產(chǎn)品都可做原型; 建立必須快,便宜; 是包含修改、評價(jià)在內(nèi)的完整重復(fù)過程快速原型開發(fā)模型與構(gòu)造過程:原型實(shí)現(xiàn)運(yùn)行評估修改快速分析1. 快速分析或修改; 2. 原型實(shí)現(xiàn); 3. 原型運(yùn)行與評估;運(yùn)用原型化方法的軟件開發(fā)過程快速原型方法的提出使得傳統(tǒng)的軟件生存期在思想方法上受到了影響。如果只是在局部運(yùn)用原型化方法,如將原型開發(fā)過
10、程用于軟件生存期的某一個(gè)階段內(nèi),那么傳統(tǒng)軟件生存期依然不變,只是階段內(nèi)部的軟件定義或開發(fā)活動(dòng)采用了新的方法。但若原型開發(fā)過程代替代了傳統(tǒng)生存期中的多個(gè)階段,則軟件開發(fā)過程就成為一種新的形式 原型模型3.3 需求分析建模需求分析建模需求分析的步驟需求分析模型數(shù)據(jù)建模功能建模和信息流行為建模概念:為確認(rèn)軟件需求,要用不同的視覺去檢查它們,分析建模用三個(gè)“維”表示:步驟、產(chǎn)品、保障措施。步驟:數(shù)據(jù)、功能和行為需求使用一系列不同的圖表格式來建模。數(shù)據(jù):定義數(shù)據(jù)對象、屬性和關(guān)系。功能:指明數(shù)據(jù)在系統(tǒng)內(nèi)變換。行為:描述事件的影響。產(chǎn)品:數(shù)數(shù)據(jù)對象描述,實(shí)體-關(guān)系圖、數(shù)據(jù)流圖、狀態(tài)變遷圖、加工規(guī)約和控制規(guī)約
11、保障措施:分析建模的產(chǎn)品必需評審、以考查其正確性、完整性和一致性需求分析的步驟當(dāng)前系統(tǒng)目標(biāo)系統(tǒng)物理模型邏輯模型邏輯模型物理模型模型化抽象化具體化實(shí)例化怎么做做什么當(dāng)前系統(tǒng)目標(biāo)系統(tǒng)需求定義對象系統(tǒng)模型系統(tǒng)分解、抽象(映射)模型應(yīng)用模型構(gòu)造的過程 模型:是對對象系統(tǒng)的形式化的特征的抽象,概括性或近似地表示;形式化語言、數(shù)學(xué)語言、圖形等;構(gòu)造模型的過程是一個(gè)抽象、分析的過程。需求分析建模需求分析的步驟需求分析模型數(shù)據(jù)建模功能建模和信息流行為建模分析獲取應(yīng)遵循基本原則:分解 抽象 投影例: 開發(fā)一個(gè)CAD軟件的三層抽象抽象層次. 用問題所處環(huán)境術(shù)語來描述這個(gè)軟件:該軟件包括一個(gè)計(jì)算機(jī)繪圖界面,向繪圖員
12、顯示圖形,以及一個(gè)數(shù)字化儀界面,用以代替繪圖板和丁字尺。所有直線、折線、矩形、圓及曲線的描畫、所有的幾何計(jì)算、所有的剖面圖和輔助視圖都可以用這個(gè)CAD軟件實(shí)現(xiàn)。抽象層次. 任務(wù)需求的描述。CAD SOFTWARE TASKS user interaction task; 2-D drawing creation task; graphics display task; drawing task; end. 在這個(gè)抽象層次上,未給出“怎樣做”的信息,不能直接實(shí)現(xiàn)抽象層次. 程序過程表示。以2-D (二維)繪圖生成任務(wù)為例:PROCEDURE:2-D drawing creationREPEAT
13、UNTIL (drawing creation task terminates) DO WHILE (digitizer interaction occurs) digitizer interface task; DETERMINE drawing request CASE; line: line drawing task; rectangle:rectangle drawing task; circle: circle drawing task; (2) 數(shù)據(jù)抽象在不同層次上描述數(shù)據(jù)對象的細(xì)節(jié),定義與該數(shù)據(jù)對象相關(guān)的操作。例如,在CAD軟件中,定義一個(gè)叫做drawing的數(shù)據(jù)對象??蓪ra
14、wing規(guī)定為一個(gè)抽象數(shù)據(jù)類型,定義它的內(nèi)部細(xì)節(jié)為: TYPE drawing IS STRUCTURE DEFIND number IS STRING LENGTH(12); geometry DEFIND notes IS STRING LENGTH(256); BOM DEFIND END drawing TYPE; 邏輯模型與物理模型的比較現(xiàn)行系統(tǒng)目標(biāo)系統(tǒng)描述現(xiàn)實(shí)系統(tǒng)是如何在物理上實(shí)現(xiàn)的。描述新系統(tǒng)的主要業(yè)務(wù)功能和用戶新的需求,無論系統(tǒng)應(yīng)如何實(shí)施。描述新系統(tǒng)是如何實(shí)施的(包括規(guī)約,技術(shù),管理)。 邏輯模型 物理模型 (本質(zhì)模型、概念模型) (實(shí)施模型、技術(shù)模型)描述重要的業(yè)務(wù)功能,不討
15、論該系統(tǒng)是如何實(shí)施的過程。需求分析過程舉例:學(xué)生(1) 通過對現(xiàn)實(shí)環(huán)境的調(diào)查,獲當(dāng)前系統(tǒng)的具體模型(物理模型) 教務(wù)科107劉會(huì)計(jì)206王出納員206李教材303趙學(xué)生購書申請購書單發(fā)票書領(lǐng)單書學(xué)生購買教材的具體模型(2) 去掉具體模型中的非本質(zhì)因素, 抽象出當(dāng)前系統(tǒng)的邏輯模型 學(xué)生購買教材的邏輯模型學(xué)生學(xué)生購書申請書購單發(fā)票領(lǐng)書單書審查有效性開發(fā)票開領(lǐng)書單發(fā)書(3) 分析當(dāng)前系統(tǒng)與目標(biāo)系統(tǒng)的差別, 建立目標(biāo)系統(tǒng)的邏輯模型 計(jì)算機(jī)售書系統(tǒng)的邏輯模型學(xué)生學(xué)生審查并開發(fā)票開領(lǐng)書單購書單發(fā)票領(lǐng)書單無效書單(4) 對目標(biāo)系統(tǒng)進(jìn)行完善和補(bǔ)充,寫出完整需求說明(5) 對需求說明進(jìn)行復(fù)審,直到確認(rèn)文檔齊全,
16、并且符合用戶的全部需求為止。分析建模分類:結(jié)構(gòu)化分析( Structured Analisys, SA) 面向?qū)ο蠓治觯∣bject-Oriented Analisys,OOA)特點(diǎn):SA:最初由Douglas Ross提出,由DeMarco推廣:是基于數(shù)據(jù)流技術(shù)的分析方法。適用數(shù)據(jù)處理類軟件OOA:基于對象、對象間消息傳第等語言機(jī)制的分析方法。當(dāng)前流行使用的建模方法,后面介紹數(shù)據(jù)字典數(shù)據(jù)流圖E-R圖狀態(tài)-遷圖加工規(guī)約控制規(guī)約數(shù)據(jù)對象描 述結(jié)構(gòu)化分析模型結(jié)構(gòu)核心方法 : 抽象與分解。用抽象模型概念,強(qiáng)調(diào) 邏輯而非物理,按照軟件內(nèi)部數(shù)據(jù)傳遞、變換關(guān)系,自頂向下逐層分解,直至找到滿足功能要求的全部
17、可實(shí)現(xiàn)軟件。按照DeMarco的定義,“結(jié)構(gòu)化分析就是使用數(shù)據(jù)流圖(DFD、數(shù)據(jù)字典(DD)、結(jié)構(gòu)化語言、判定表和判定樹等工具,來建立一種新的、稱為結(jié)構(gòu)化規(guī)格說明的目標(biāo)文檔?!苯Y(jié)構(gòu)化分析模型的元素E-R圖(ERD):實(shí)體-關(guān)系圖,描述數(shù)據(jù)對象間的關(guān)系.數(shù)據(jù)字典(DD):模型核心,包含軟件使用或生產(chǎn)的所有數(shù)據(jù)對象的中心庫.數(shù)據(jù)流圖(DFD) .指明數(shù)據(jù)在系統(tǒng)中移動(dòng)時(shí)如何被變換; .描述對數(shù)據(jù)流進(jìn)行變換的功能(和子功能);DFD中每個(gè)功能的描述包含在加工規(guī)約(小說明,PSPEC)中。狀態(tài)變遷圖(STD) 指明作為外部事件的結(jié)果,系統(tǒng)將如何動(dòng)作。STD是行為建模的基礎(chǔ),關(guān)于軟件控制方面的附加信息包含
18、在“控制規(guī)約”(CSPEC)中數(shù)據(jù)建模:數(shù)據(jù)對象、屬性與關(guān)系實(shí)體-關(guān)系圖(ERD)需求分析建模需求分析的步驟需求分析模型數(shù)據(jù)建模功能建模和信息流行為建模數(shù)據(jù)對象:是現(xiàn)實(shí)世界中實(shí)體的數(shù)據(jù)側(cè)面屬性:對數(shù)據(jù)對象命名、性質(zhì)和其它數(shù)據(jù)對象關(guān)聯(lián)的描述數(shù)據(jù)對象、屬性與關(guān)系建立模型的規(guī)范化規(guī)則:(1)數(shù)據(jù)對象的任何實(shí)例對每個(gè)屬性必需有且只有一個(gè)屬性值(2)屬性的原子數(shù)據(jù)項(xiàng),不能包含內(nèi)部數(shù)據(jù)結(jié)構(gòu)(3)當(dāng)數(shù)據(jù)對象關(guān)鍵屬性多于一個(gè),則非關(guān)鍵屬性必須表示整個(gè)數(shù)據(jù)對象而不是部分關(guān)鍵屬性的特征。(4)非關(guān)鍵屬性必須表示整個(gè)對象而不是部分屬性的特征數(shù)據(jù)可以按相應(yīng)數(shù)據(jù)模型進(jìn)行組織。E-R圖中表示實(shí)體聯(lián)系的符號如下:E-R方法 ( Entity-Relationship Approach) 和實(shí)體模型實(shí)體模型是現(xiàn)實(shí)世界的純表示,它不涉及數(shù)據(jù)世界的數(shù)據(jù)結(jié)構(gòu)、存取路徑、存取效率等問題。因此,它可以轉(zhuǎn)換成數(shù)據(jù)庫中的數(shù)據(jù)模型在E-R圖中,每個(gè)方框表示實(shí)體型或?qū)傩?,方框之間的連線表示實(shí)體之間,或?qū)嶓w與屬性之間的聯(lián)系。出現(xiàn)在連線上的短豎線可以看成是“1”,而圓圈隱含表示“0”。例如,在教學(xué)管理中,一個(gè)教師可以教授零門、一門或多門課程,每位學(xué)生也需要學(xué)習(xí)幾門課程。因此,教學(xué)管理中涉及的對象(實(shí)體型)有學(xué)生
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 養(yǎng)老院老人心理健康制度
- 養(yǎng)老院老人緊急救援人員職業(yè)發(fā)展規(guī)劃制度
- 質(zhì)量管理體系制度
- 《運(yùn)動(dòng)健康模板》課件
- 房屋權(quán)屬轉(zhuǎn)移合同(2篇)
- 2024年度市政綠化工程土石方施工補(bǔ)充合同6篇
- 2024年教育軟件銷售與授權(quán)合同3篇
- 《修煉執(zhí)行智慧》課件
- 2025年文山道路客貨運(yùn)輸從業(yè)資格證b2考試題庫
- 2025年昭通下載b2貨運(yùn)從業(yè)資格證模擬考試考試
- 鄂爾多斯盆地煤礦分布圖2014
- 銷售人員心態(tài)培訓(xùn)-銷售人員心態(tài)培訓(xùn)
- 高中物理知識點(diǎn)講解-高中物理中常用的數(shù)學(xué)知識
- ACOG指南:妊娠期高血壓疾病指南(專家解讀)
- 服務(wù)外包公司評價(jià)表(共1頁)
- 高等數(shù)學(xué)D7_5可降階高階微分方程
- 一年級數(shù)學(xué)月考試卷分析
- 污水管網(wǎng)工程監(jiān)理實(shí)施細(xì)則
- 辣椒介紹PPT課件
- 個(gè)人不良貸款清收案例3篇
- RCA成果報(bào)告書(2021參考模版)10docx
評論
0/150
提交評論