需求調(diào)研流程_第1頁
需求調(diào)研流程_第2頁
需求調(diào)研流程_第3頁
需求調(diào)研流程_第4頁
需求調(diào)研流程_第5頁
已閱讀5頁,還剩6頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、【精品文檔】如有侵權,請聯(lián)系網(wǎng)站刪除,僅供學習與交流需求調(diào)研流程密級Confidentiality LevelXXX僅供收件方查閱文檔編號Document Code版本Version共13頁XXX08XXX管理系統(tǒng)需求調(diào)研報告Revision Record修訂記錄Date日期Revision Version修訂版本CR ID /Defect IDCR/ Defect號Sec No. 修改章節(jié)Change Description修改描述Author作者201x-xx-xx0.1初稿完成 Catalog目 錄1需求調(diào)研流程41.1調(diào)研整體流程41.2組成部分關系51.3分析過程62需求調(diào)研和分析的

2、方法、策略和步驟72.1如何調(diào)研72.2如何分析72.3調(diào)研方法82.4基本策略82.5結(jié)構(gòu)化方法分析步驟92.6UML方法分析步驟93需求調(diào)研相關要求103.1文檔規(guī)范103.2需求管理123.3調(diào)研成果121 需求調(diào)研流程1.1 調(diào)研整體流程l 問題識別:解決目標系統(tǒng)做什么,做到什么程度。需求包括:功能、性能、環(huán)境、可靠性、安全性、保密性、用戶界面、資源使用、成本、進度。同時建立需求調(diào)查分析所需的通信途徑。l 分析與綜合:從數(shù)據(jù)流和數(shù)據(jù)結(jié)構(gòu)出發(fā),逐步細化所有的軟件功能,找出各元素之間的聯(lián)系、接口特性和設計上的限制,分析它們是否滿足功能要求并剔除不合理部分,綜合成系統(tǒng)解決方案,給出目標系統(tǒng)的

3、詳細邏輯模型。常用的分析方法有面向數(shù)據(jù)流的結(jié)構(gòu)化分析方法SA(數(shù)據(jù)流圖DFD、數(shù)據(jù)詞典DD、加工邏輯說明)、描繪系統(tǒng)數(shù)據(jù)關系的實體關系圖ERD、面向數(shù)據(jù)結(jié)構(gòu)的Jackson方法JSD、面向?qū)ο蠓治龇椒∣OA(主要用UML)、對于有動態(tài)時序問題的軟件可以用形式化技術,包括有窮狀態(tài)機FSM的狀態(tài)遷移(轉(zhuǎn)換)圖STD、時序圖、Petri網(wǎng)。每一種分析建模方法都有其優(yōu)勢和局限性,可以兼而有之以不同角度分析,應該避免陷入在軟件需求方法和模型中發(fā)生教條的思維模式和派系斗爭,一般來說結(jié)構(gòu)化方法用于中小規(guī)模軟件、面向?qū)ο蠓椒ㄓ糜诖笮蛙浖?。l 編制需求分析文檔l 需求評審1.2 組成部分關系需求分析可分為問題識

4、別、分析與綜合、編制需求分析文檔、需求評審等四個階段,包括以下幾個方面:確定軟件所期望的用戶類;獲取每個用戶的需求;了解實際用戶任務和目標以及這些任務所支持的業(yè)務需求;分析員與用戶的信息以區(qū)別用戶任務需求、功能需求、業(yè)務規(guī)則、質(zhì)量屬性、建議解決方法和附加信息;將系統(tǒng)級的需求分為幾個子系統(tǒng),并將需求中的一部分分配給軟件組件;了解相關質(zhì)量屬性的重要性;討論得出實施優(yōu)先級;將所收集的用戶需求編寫成需求規(guī)格說明和模型;評審需求規(guī)格說明,確保與用戶達成共識。1.3 分析過程需求分析的任務是借助于當前系統(tǒng)的物理模型(待開發(fā)系統(tǒng)的系統(tǒng)元素)導出目標系統(tǒng)的邏輯模型(只描述系統(tǒng)要完成的功能和要處理的數(shù)據(jù)),解決

5、目標系統(tǒng)“做什么”的問題,所要做的工作是深入描述軟件的功能和性能,確定軟件設計的限制和軟件同其他系統(tǒng)元素的接口細節(jié),定義軟件的其他有效性需求,通過逐步細化對軟件的要求描述軟件要處理的數(shù)據(jù),并給軟件開發(fā)提供一種可以轉(zhuǎn)化為數(shù)據(jù)設計、結(jié)構(gòu)設計和過程設計的數(shù)據(jù)與功能表示。必須全面理解用戶的各項要求,但不能全盤接受,只能接受合理的要求;對其中模糊的要求要進一步澄清,然后決定是否采納;對于無法實現(xiàn)的要求要向用戶作充分的解釋。最后將軟件的需求準確地表達出來,形成軟件需求說明書SRS。l 獲得當前系統(tǒng)的物理模型:首先分析、理解當前系統(tǒng)是如何運行的,了解當前系統(tǒng)的組織機構(gòu)、輸入輸出、資源利用情況和日常數(shù)據(jù)處理過

6、程,并用一個具體的模型來反映自己對當前系統(tǒng)的理解。此步驟也可以稱為“業(yè)務建?!?,其主要任務是對用戶的組織機構(gòu)或企業(yè)進行評估理解他們的需要及未來系統(tǒng)要解決的問題,然后建立一個業(yè)務USECASE模型和業(yè)務對象模型。當然如果系統(tǒng)相對簡單,也沒必要大動干戈區(qū)進行業(yè)務建模,只要做一些簡單的業(yè)務分析即可。l 抽象出當前系統(tǒng)的邏輯模型:在理解當前系統(tǒng)“怎樣做”的基礎上,取出非本質(zhì)因素,抽取出“做什么”的本質(zhì)。l 建立目標系統(tǒng)的邏輯模型:明確目標系統(tǒng)要“做什么”。l 對邏輯模型的補充,如用戶界面、啟動和結(jié)束、出錯處理、系統(tǒng)輸入輸出、系統(tǒng)性能、其他限制等等。2 需求調(diào)研和分析的方法、策略和步驟2.1 如何調(diào)研需

7、求調(diào)研涉及三個問題: 一是如何確定調(diào)研對象; 二是如何確定被調(diào)研對象; 三是采用何種調(diào)研方法; 調(diào)研對象的組成應以互補為原則,至少要由三類人員組成:技術人員、業(yè)務專家和管理者。被調(diào)研對象主要是人員和業(yè)務兩類,其間主要涉及人與人、人與事物、事物與事物等三種關系。 其中,關鍵是確定調(diào)研范圍。調(diào)研范圍包括關鍵域和關鍵活動。而關鍵活動又由關鍵流程加關鍵點構(gòu)成。 找到關鍵域,明確關鍵流程和關鍵點,對需求調(diào)研至關重要,需要專家或咨詢顧問介入。而能否把握這一時機并找準需求提煉的關鍵點,是考驗需求調(diào)研人員的重要方面。優(yōu)秀的需求調(diào)研人員不僅能認識問題之所在,還能藉此獲取足夠多的知識,最后成為問題領域的專家。 需

8、求調(diào)研非常困難,必須引起重視。因為: 缺乏專門領域的知識,同時應用領域中的許多問題通常模糊,很難界定; 機構(gòu)實踐存在默認知識,難以描述; 多個知識源或信息源既有沖突又有重合; 被調(diào)研對象可能有認知偏見或者欠缺或有時不愿提供確切信息。 這些都會給需求調(diào)研人員帶來障礙和困難。在這種情況下,掌握必要的方法與技巧非常重要。2.2 如何分析需求工程是繼軟件工程之后的又一熱點工程。從理論上說,包括調(diào)研需求、模擬和分析需求、需求描述、需求認可、需求演進這五個層次,并且逐層遞進、螺旋式上升。需求分析是需求工程的核心,貫穿于系統(tǒng)整個生命周期。 需求分析的出發(fā)點在于:對調(diào)研的需求進行進一步提煉并指導需求的抽??;幫

9、助需求分析人員發(fā)現(xiàn)問題。需求模擬則幫助檢查驗證對問題的理解。需求分析和模擬又包含三個層次的工作:需求定義、需求建模、需求模擬。 需求定義,是對經(jīng)調(diào)研獲取的需求進行初步整理,抽取其中基本需求和關鍵需求予以界定,并為需求建模提供必要的需求元素。 需求建模,是把抽象的需求通過概念、符號、數(shù)學模型及邏輯結(jié)構(gòu)表現(xiàn)出來。表現(xiàn)形式有自然語言、半形式化(如圖、表、結(jié)構(gòu)化英語等)和形式化表示等三種。自然語言形式具有表達能力強的優(yōu)點,但不利于捕獲模型語義;半形式化表示可捕獲結(jié)構(gòu)和一定的語義,也可進行一定的推理和一致性檢查;形式化表示具有精確的語義和推理能力,但構(gòu)造一個完整的形式化模型,需要較長時間和對問題領域的深

10、層次理解。相對而言,圖表形式的需求模型直觀常用,比如組織結(jié)構(gòu)圖、系統(tǒng)流程圖、網(wǎng)絡拓撲圖等。 良好的需求概念模型應包括以下幾個特點: 實現(xiàn)的獨立性、足夠抽象、足夠形式化、可構(gòu)造性、利于分析、可追蹤性、可執(zhí)行性、最小冗余性。2.3 調(diào)研方法1、 會談、詢問:圍繞軟件目標提出具體問題;2、 調(diào)查表:經(jīng)過仔細考慮的書面回答可能比會談中的回答更加準確;3、 收集分析客戶使用的各種表格、有關工作責任、工作流程、工作規(guī)范、相關數(shù)據(jù)標準、業(yè)務標準的各種文字資料;4、 收集同類相關產(chǎn)品的宣傳資料、技術資料、演示程序或軟件程序;5、 情景分析:利用情景分析誘導用戶能夠把它們的需求告知分析員(可以描述當前一項業(yè)務怎

11、么做、也可以描述設想的系統(tǒng)中此項業(yè)務怎么做);6、 可視化方法:結(jié)和情景分析,利用畫用戶界面圖、業(yè)務流程圖、功能結(jié)構(gòu)圖、時序圖等圖形與客戶進行討論;2.4 基本策略1、 首先確定用戶的軟件開發(fā)目標,確定系統(tǒng)基本范圍,然后圍繞這一目標,確定要訪問的部門和人員,要了解的業(yè)務,在基本范圍內(nèi)展開調(diào)研;2、 以部門職責為基礎搞清各種現(xiàn)有業(yè)務、要填寫的表簿冊文檔報表等,其數(shù)據(jù)來源及去向;3、 以業(yè)務為主線,搞清每個業(yè)務的每個環(huán)節(jié)的流程關系、涉及部門、輸入輸出項;4、 以數(shù)據(jù)為主線,搞清數(shù)據(jù)采集方式、數(shù)據(jù)流向、數(shù)據(jù)之間的內(nèi)在聯(lián)系;5、 搞清哪些業(yè)務或數(shù)據(jù)是已建系統(tǒng)的,它們和新系統(tǒng)的關系是銜接還是替換;6、

12、應思考是否有新技術可以改進現(xiàn)有工作,用戶提出的需求用現(xiàn)有技術能否實現(xiàn)。2.5 結(jié)構(gòu)化方法分析步驟1、 畫出數(shù)據(jù)流圖。設計數(shù)據(jù)流圖必須逐步求精;2、 決定哪些部分需要計算機化和怎樣計算機化(取決于用戶投資限制和自身技術限制);3、 描述數(shù)據(jù)流細節(jié),大型軟件可以使用數(shù)據(jù)字典描述所有數(shù)據(jù)元素;4、 定義處理邏輯(加工邏輯:每個加工處理做什么);5、 定義數(shù)據(jù)存儲,即定義每個存儲的確切內(nèi)容及其表示法(格式);6、 定義物理資源:如是文件需指定:文件名、組織結(jié)構(gòu)(排序、索引等)、存儲介質(zhì)和記錄;如是數(shù)據(jù)庫需指定每個表的相關信息;7、 確定輸入輸出規(guī)格說明,如輸入內(nèi)容、輸入屏幕、打印輸出格式、輸出長度等等

13、;8、 確定硬件所需有關數(shù)值,如輸入量、打印頻率、CPU、記錄大小、數(shù)據(jù)量大小、文件大小等等;9、 確定軟硬件接口和環(huán)境需求。2.6 UML方法分析步驟一般的應用系統(tǒng)又是各組成部分:問題論域、人機界面、數(shù)據(jù)管理、任務管理,在OOA階段重點對問題論域進行分析,對人機界面、數(shù)據(jù)管理、任務管理等問題,OOA一般較少或沒有分析,而是留待OOD階段解決。1、 調(diào)研、識別系統(tǒng)需求;2、 分析問題領域:主要任務是充分理解領域問題和項目投資者及用戶的需求,對需求進行抽象,提出高層次的解決方案);(1) 確定系統(tǒng)范圍和系統(tǒng)邊界;(2) 確定系統(tǒng)的約束(環(huán)境和條件);(3) 定義活動者;(4) 確定系統(tǒng)的綜合要求

14、(功能、性能、運行);(5) 確定系統(tǒng)的數(shù)據(jù)要求(名稱、范圍、類型、數(shù)量、特點);(6) 建立USE CASE模型、繪制USE CASE圖;(7) 繪制主要交互圖;3、 建立靜態(tài)結(jié)構(gòu)模型(對象類圖、數(shù)據(jù)庫模型、包圖);4、 建立動態(tài)行為模型(順序圖、協(xié)同圖、狀態(tài)圖、活動圖);5、 建立系統(tǒng)物理模型(組件圖、配置圖);3 需求調(diào)研相關要求3.1 文檔規(guī)范A、三種編寫方法1、 用好的結(jié)構(gòu)化和自然語言編寫文本型文檔;2、 建立圖形化模型,這些模型可以描繪轉(zhuǎn)換過程、系統(tǒng)狀態(tài)、和它們之間的變化、數(shù)據(jù)關系、邏輯流或?qū)ο箢惡退麄兊年P系;3、 編寫形式化規(guī)格說明,這可以通過使用數(shù)學上精確的形式化邏輯語言來定義

15、需求。多種編寫方法可在同一個文檔使用,根據(jù)需要選擇,或互為補充,以能夠把需求說明白為目的。B、應有成果1、 各業(yè)務手工辦理流程文字說明;2、 各業(yè)務手工辦理流程圖;3、 各業(yè)務手工辦理各環(huán)節(jié)輸入輸出表單、數(shù)據(jù)來源;4、 目標軟件系統(tǒng)功能劃分(示意圖及文字說明);5、 目標軟件系統(tǒng)中各業(yè)務辦理流程文字說明;6、 目標軟件系統(tǒng)中各業(yè)務辦理流程圖(模型);7、 目標軟件系統(tǒng)中各業(yè)務辦理各環(huán)節(jié)數(shù)據(jù)、數(shù)據(jù)采集方式、數(shù)據(jù)間的內(nèi)在聯(lián)系分析。8、 目標軟件系統(tǒng)用戶界面圖、各式系統(tǒng)邏輯模型圖及說明C、文檔工具推薦1、 調(diào)研結(jié)果需求分析說明書格式參照開發(fā)文檔模板;2、 單位組織結(jié)構(gòu)圖、功能模塊分解圖用VISIO繪

16、制,或直接用WORD中的畫圖工具;3、 業(yè)務流程圖用VISIO中的FLOWCHART模板繪制;4、 系統(tǒng)邏輯模型使用ROSE繪制活用VISIO中的UML模板繪制;5、 軟件用戶界面用VISIO中的WIN95 USER INTERFACE模板繪制;6、 數(shù)據(jù)物理模型用POWERDESINER繪制;D、需求文檔編寫原則1、 句子簡短完整,具有正確的語法、拼寫和標點;2、 使用的術語與詞匯表中所定義的一致;3、 需求陳述應該有一致的樣式,例如“系統(tǒng)必須.”或者“用戶必須.”,并緊跟一個行為動作和可觀察的結(jié)果。;4、 避免使用模糊、主觀的術語,減少不確定性,如“界面友好、操作方便”;5、 避免使用比較性詞語,如“提高”,應定量說明提高程度。3.2 需求管理需求調(diào)研分析過程是一個由粗到細、漸進明晰、持續(xù)完善的過程。在指導后面系統(tǒng)設計,編碼階段時都應當不斷完善修改需求文檔,因此需求管理非常重要。需求管理包括在工程進展過程中維持需求約定集成型和精確性的所有活動,它是CMM模型二級中的首要KPA(關鍵過程域),這些活動包括:(1) 定義需求基線(需求文檔的主體);(

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論