




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、需求工程和過程2.1 需求工程概述 需求工程是軟件工程的核心組成部分,是指應用有效的技術、方法進行需求分析,確定客戶需求,幫助分析和設計人員理解問題,并定義目標系統的一門學科。 它把整個軟件需求工程研究領域劃分為需求開發和需求管理兩部分。2.1 需求工程概述需求開發活動內容獲取每個用戶類的需求。確定產品所期望的用戶類。了解實際用戶任務和目標以及這些任務所支持的業務需求。分析源于用戶的信息,以區別用戶任務需求、功能需求、業務規則、質量屬性。將系統級的需求分為幾個子系統,并將需求中的一部份分配給軟件組件。例了解相關質量屬性的重要性。商討實施優先級的劃分。例將所收集的用戶需求編寫成規格說明和模型。評
2、審需求規格說明,確保對用戶需求達到共同的理解與認識。例用戶類用戶是可分不同類型的,舉例如下:DZ在各種論壇的地位是有目共睹的,特別是BT下載論壇和娛樂論壇,而且用戶的需求是不同的,因此,建議開發不同功能的Discuz!4.0版本,適應不同用戶需求。建議開發:1、標準版,適合一般用戶和可以自己添加修改插件等用戶。2、娛樂版,適合電影、游戲、休閑等論壇和下載論壇,可以集成更多的娛樂插件。3、插件版,適合對Discuz!不熟悉,不能自己修改添加插件、喜歡全功能的用戶。 也可以把2、3合并。需求的變化和改動笑話一則:距離史記載,沒有一個軟件的需求改動少于三次。唯一只改動需求兩次的客戶是個死人。這個可憐
3、的家伙還是在運送第三次需求的路上被車子撞死的。 (cline 1995)問題是:如何來管理好需求呢?需求管理主要包括:建立基線、需求跟蹤、變更控制等幾個方面。需求管理活動內容定義需求基線(迅速制定需求文檔的主體)。評審提出的需求變更、評估每項變更的可能影響從而決定是否實施它。使當前的項目計劃與需求一致。估計變更需求所產生影響并在此基礎上協商新的承諾(約定)。讓每項需求都能與其對應的設計、源代碼和測試用例聯系起來以實現跟蹤。在整個項目過程中,跟蹤需求狀態及其變更情況。需求開發與需求管理之間的界限圖2.2 軟件需求與產品生命周期 軟件產品經歷需求、分析、設計、實現、部署后,軟件將被使用并進入維護階
4、段,直到最后逐漸消亡。這樣一個過程,叫軟件生命周期模型。軟件生命周期模型一 .瀑布模型(線性模型)二. RAD(快速應用開發)模型三. 螺旋模型四. RUP(Rational United Process)五. 如何根據需求選擇生命周期模型軟件生命周期模型 瀑布模型規定了各項軟件工程活動,包括:制定開發計劃,進行需求分析和說明,軟件設計,程序編碼,測試及運行維護,并且規定了它們自上而下,相互銜接的固定順序,如同瀑布流水,逐級下落。它是軟工中基本模型。 一. 瀑布模型(線性模型)軟件生命周期模型瀑布模型圖軟件生命周期模型傳統瀑布模型開發軟件的特點階段間具有順序性和依賴性推遲實現的觀點每個階段必須
5、完成規定的文檔和成果每個階段結束前完成文檔審查, 盡早改正錯誤軟件生命周期模型 快速應用開發模型強調極短的開發周期,是線性順序模型的一個“高速”變種,通過使用基于構件的建造方法贏得了快速開發。如果需求理解得很好且約束了項目范圍,它的過程使得隊伍在很短時間內創建出“功能完善的系統”。二.RAD(快速應用開發)模型軟件生存周期模型一. 需求計劃 采用聯合需求計劃技術來收集需求信息,以結構化方式(自頂向下、逐步求精、模塊化設計 )討論現有業務問題。二. 用戶描述 采用聯合應用設計來管理用戶的參與,開發團隊快速捕捉系統非技術設計階段的用戶信息。三. 構建 包括詳細設計、創建(編碼和測試)以及在某時間內
6、發布給客戶。四. 結束 用戶驗收測試、系統安裝和用戶培訓。 RAD模型的階段軟件生存周期模型RAD(快速應用開發)模型圖60-90天需求計劃用戶描述構建結束開發工作量RAD使用模型的條件系統可基于構件開發和可縮放。用戶能參與到整個生命周期中。項目開發周期短。項目團隊熟悉應用領域,能熟練使用開發工具。舉例:某集團公司的OA系統,煙草公司的資金結算系統等等。軟件生存周期模型三.螺旋模型 對于復雜的大型軟件,開發一個原型往往達不到要求。螺旋模型加入了風險分析。 螺旋模型沿著螺線旋轉,在笛卡爾坐標的四個象限上分別表達了四個方面的活動,即:1.制定方案確定軟件目標,選定實施方案,弄清項目開 發的限制條件
7、。2.風險分析分析所選方案,考慮如何識別和消除風險3.實施工程實施軟件開發4.評估評價開發工作,提出修正建議和相應計劃 沿螺線自內向外每旋轉一圈便開發出更為完善的一個新的軟件版本。 軟件生命周期模型螺旋模型圖 評估舉例:某集團公司的ERP系統建設RUP簡介 Rational Unified Process(簡稱RUP)是一套軟件工程過程,它又是文檔化的軟件工程產品,由Rational公司開發、維護并銷售。 RUP又是一套軟件工程方法的框架,各個組織可根據自身的實際情況,以及項目規模對RUP進行裁剪和修改,以制定出合乎需要的軟件工程過程。RUP簡介 RUP吸收了多種開發模型的優點,具有很好的可操
8、作性和實用性、從它一推出市場,憑借Rational在業界的領導地位、以及與統一建模語言(Unified Model Language,以下簡稱UML)的良好集成、多種CASE工具的支持、不斷的升級與維護,迅速得到業界廣泛的認同,越來越多的組織(如IBM、Microsoft、Sun)以它作為軟件開發模型框架。RUP簡介 RUP二維開發模型RUP可以用二維坐標來描述。橫軸通過時間組織,是過程展開的生命周期特征,體現開發過程的動態結構,用來描述它的術語主要包括周期、階段、迭代和里程碑;縱軸以內容來組織為自然的邏輯活動,體現開發過程的靜態結構,用來描述它的術語主要包括活動、產物、工作者和工作流。 RU
9、P簡介 RUP中的軟件生命周期在時間上被分解為四個順序的階段,分別是:初始階段、細化階段、構造階段和交付階段。每個階段結束于一個主要的里程碑;每個階段本質上是兩個里程碑之間的時間跨度。在每個階段的結尾執行一次評估以確定這個階段的目標是否已經滿足。如果評估結果令人滿意的話,可以允許項目進入下一個階段。 RUP開發過程中的各個階段和里程碑RUP簡介 RUP中的每個階段可以進一步分解為迭代。一個迭代是一個完整的開發循環,產生一個可執行的產品版本,是最終產品的一個子集,它增量式地發展,從一個迭代過程到另一個迭代過程到成為最終的系統。RUP的迭代開發模式圖RUP簡介 1.開發復用。減少開發人員的工作量,
10、保證軟件質量 2. 可降低風險 3.對需求進行有效管理 4.可視化建模(使用ROSE工具) 5.使用組件體系結構,使軟件體系架構更具彈性 6.貫穿整個開發周期的質量核查 7.對軟件開發的變更控制 RUP的特點選擇生命周期模型的總結 需求情況 瀑布 模型 螺旋模型 RAD 迭代模型需求容易定義或明確嗎?是否是否能在早期確定需求嗎?是否是是周期中需求經常變化嗎?否是是是基于需求特點選擇生命周期模型需求工程過程被認為是建立軟件系統最重要的方面之一,在項目中,它涵蓋了與需求相關的所有活動。需求的開發過程Pressman的需求工程過程Boehm的需求工程過程 2.3 需求開發過程 2.3.1 需求開發過
11、程(1)需求開發是一個迭代的過程 2.3.1 需求開發過程(2)需求開發過程框架Pressman的需求工程過程需求獲取需求分析需求規格說明系統建模需求確認需求管理使用在怎樣的需求環境中?Boehm的需求工程過程確定重要的涉眾確定滿足涉眾要求的條件確定2中的沖突因素協商滿足各方面要求的高層協議列出互相滿足要求的選項研究折中選項預期管理將協議融入SRS和計劃中重復1-8,直到完全開發完成面臨和解決新的風險項目12345678910使用在哪些場合或項目中?需求工程的方法需求工程方法分成四類:1.面向過程,注重輸入輸出,如傳統的結構化分析。2.面向數據,強調數據結構,如E-R模型,DD描述。3.面向控
12、制,強調同步、并發,如DFD圖。4.面向對象,它建立在對象間的交互基礎上,對對象模型、動態模型和功能模型三個方面對問題進行描述,如以UML為基礎的Rose的建模工具。結構化分析即使沒有明確指定,軟件項目組中也會有某個人會擔當需求分析員的角色。企業的IS組織中,行使這一職責的專家被稱為業務分析員。對需求分析員的不同稱謂還包括系統分析員、需求工程師、需求經理,也有簡稱分析員的。2.4 需求工程的角色系統分析員2.4.1 需求分析員的職責與要求需求分析員是對項目涉眾的需求進行收集 、分析、記錄和驗證等職責的主要承擔者。如圖所示,需求分析員是用戶群體與軟件開發團隊間進行需求溝通的主要渠道。注意:不要指
13、望優秀的開發人員或知識淵博的用戶可以自動成為優秀的業務分析員,而不需要為他們提供培訓、鍛煉、學習資料和指導。崗位職責:1.收集、整理、分析、提煉、跟蹤、控制用戶的產品需求;2.編寫產品需求說明書,準確描述和解釋業務需求;3.編寫設計文檔,引導UI設計師制作產品原型(可選);4.編寫詳細產品需求分析書,提供給軟件開發工程師,測試工程師。職位要求:1. 大學本科及以上學歷,專業不限;2. 具備N年以上軟件產品需求分析的工作經驗;3. 具備較強的溝通和協調能力,引導用戶提出需求;4. 具備較強的需求分析能力,進行業務需求整理、分析;5. 具有較強的領悟能力和學習能力,能迅速了解行業知識;6. 有較強
14、的語言和文字表達能力;規范的文檔寫作能力;(從畢設開始)7. 熟悉UML語言,能使用軟件工具進行建模。2.4.1 需求分析員的職責與要求需求分析員 職位要求描述舉例計算機或相關專業畢業,本科以上學歷,3年以上開發經驗;熟悉面向對象的分析,設計和開發方法;熟悉UML,Rose,PowerDesigner等軟件工程建模工具;能夠進行需求分析,編寫分析文檔及規格說明書;能夠熟練閱讀MSDN等英文資料;熟悉Windows操作系統,熟悉Windows平臺下編程;熟悉C#,VC+或JAVA;熟悉系統、網絡、數據庫編程;熟悉測試方法,錯誤分析定位;有大型系統開發經驗者優先;一、 業務方面的二 、計算機方面的
15、1. 客戶不懂計算機,不知道如何用計算機術語表達自己的業務需求。 2. 程序員不懂業務,不知道代碼和業務類需求之間聯系。3. 只有系統分析員,既明白客戶的業務需求,也理解程序員的計算機術語,因此,他通過需求調研獲取用戶需求,然后編寫需求規格說明書,告訴程序員做什么。 系統分析員必須具有兩方面的知識2.4.2 需求分析員知識與技能下面列出需求分析員的技能:傾聽的技巧 交談和提問的技巧 大部分需求是通過討論得到的,因此,需求分析員必須能夠與不同的個人或小組就需求展開討論。分析能力 優秀的需求分析員能夠以不同的方式思考問題。2.4.2 需求分析員知識與技能舉例:廈門某中心的調研協調能力 需求獲取過程
16、中,對相關人員進行協調也是需求分析員必備的一項能力。觀察能力 觀察力敏銳的需求分析員能夠從不經意的閑談中發現重要的信息。寫作能力 需求開發提交的主要結果是書面的需求規格說明,用于在客戶、營銷人員、管理人員和技術人員之間傳遞信息。組織信息能力 需求分析員需要處理獲取和分析過程中收集到的大量雜亂的信息。2.4.2 需求分析員知識與技能人際交往能力 需求分析員應具備讓彼此利益競爭的人們進行合作的能力。建模能力 每個需求分析員都應該掌握從傳統的流程圖到結構化的分析模型(數據流圖、實體關系圖等),直至當今的統一建模語言(UML)等多種分析工具。2.4.2 需求分析員知識與技能能力的培養環境:實際項目 2
17、.4.3 需求分析員的工作 需求分析員是客戶與開發人員交流的中間人,負責將客戶對產品的初步想法轉化為明確的需求說明,用來指導開發工作。定義業務需求 需求分析員的第一項工作是幫助業務管理人、產品經理或銷售經理定義項目的業務需求(某大公司SAP上線的原因)。確定項目涉眾和用戶類別 前景和范圍文檔可幫助需求分析員分辨出產品的重要用戶群和其他涉眾。獲取需求需求分析員可能要用到下列信息收集方法:交談、需求討論會、文檔分析、調查、現場訪問客戶、業務流程分析、工作流程分析和任務分析、同類產品分析、根據現有系統導出需求、回顧以往項目。 2.4.3 需求分析員的工作分析需求 需求分析員還要對收集到的需求進行分析,找出那些客戶沒有明確說明的需求。編寫需求規格說明 需求開發的作用是各方對用于解決客戶問題的系統形成了一致的理解。需求分析員負責編寫條理清晰的需求規格說明,從而清楚地表述出這種理解。為需求建模 需求分析員應該適時地選用文字以外的方式來表達需求。 2.4.3 需求分析員的工作主持對需求的驗證 分析員可主持需求驗證會,還要對設計、代碼和測試用例(源于需求說明)進行檢查。引導對需求的優先級劃分 需求分析員安排不同用戶群與開發人員進行合作與協商,以保證他們進行合理
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 安陽車管預約管理辦法
- 自動監控資質管理辦法
- 種植設備設施管理辦法
- 福建游戲游藝管理辦法
- 育嬰護理知識培訓課件
- 肥厚型心肌病
- 股票技術課件
- 原材料管理培訓課件
- 肝癌中醫教學課件
- 廣東20年高考數學試卷
- 六堡茶知識課件
- 2025年上海高考英語復習必背考綱詞匯手冊默寫
- 2025安全生產法律法規專題知識培訓
- 2025年全民反詐知識競賽題庫及答案(共50題)
- 2025年江西省三支一扶考試真題
- 超市安全管理
- 2025年四川省安全員《A證》考試題庫
- 2024年山東省夏季普通高中學業水平合格考試歷史試卷
- 月子中心員工手冊管理制度
- 2025中考數學專項復習:最值問題之瓜豆原理模型(含答案)
- 醫藥制造與流通行業2024年信用回顧與2025年展望-新世紀評級
評論
0/150
提交評論