業(yè)務建模及用例建模-課件_第1頁
業(yè)務建模及用例建模-課件_第2頁
業(yè)務建模及用例建模-課件_第3頁
業(yè)務建模及用例建模-課件_第4頁
業(yè)務建模及用例建模-課件_第5頁
已閱讀5頁,還剩134頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

面向?qū)ο蠓治雠c設計

Object-OrientedAnalysis&Design1ppt課件面向?qū)ο蠓治雠c設計

Object-OrientedAnal學習路線圖OOUMLOOPDP…Case-Study…學習路線圖……

……

……

……123456789102ppt課件學習路線圖OOUMLOOPDP…Case-Study…學核心過程3ppt課件核心過程3ppt課件業(yè)務建模BusinessModeling4ppt課件業(yè)務建模BusinessModeling4ppt課件開發(fā)過程解析業(yè)務建模:用軟件建模方法描述業(yè)務流程;其目標是認識業(yè)務本質(zhì),該業(yè)務本質(zhì)是后續(xù)用例建模的基礎用例建模:采用UML用例建模技術描述軟件需求,該需求模型將為后續(xù)用例分析提供輸入用例分析:采用UML用例分析技術分析軟件需求,建立軟件系統(tǒng)的分析模型架構(gòu)設計:在系統(tǒng)的全局范圍內(nèi),以分析模型為基礎,設計系統(tǒng)的架構(gòu)構(gòu)件設計:根據(jù)架構(gòu)設計的成果,將分析模型細化,設計系統(tǒng)構(gòu)件的實現(xiàn)細節(jié)代碼實現(xiàn):將系統(tǒng)構(gòu)件映射到目標語言上5ppt課件開發(fā)過程解析業(yè)務建模:用軟件建模方法描述業(yè)務流程;其目標是認業(yè)務業(yè)務是指某個組織或者組織單元業(yè)務可以看作一種包含了人、機器、資源的“系統(tǒng)”利用軟件思想(用例思想、對象思想)描述業(yè)務的過程,就是業(yè)務建模業(yè)務建模只是輔助環(huán)節(jié)不是所有項目都需要也不一定和軟件開發(fā)相關6ppt課件業(yè)務業(yè)務是指某個組織或者組織單元6ppt課件業(yè)務建模業(yè)務建模的目的理解將要實施的系統(tǒng)的組織結(jié)構(gòu)和動態(tài)特性理解當前在目標組織中的問題,并明確改進的潛力確保客戶、最終用戶和開發(fā)人員對目標組織有統(tǒng)一的理解獲取用于支持目標組織的系統(tǒng)需求業(yè)務建模關注機構(gòu)的核心價值機構(gòu)的邊界機構(gòu)的參與者機構(gòu)中的工作流及如何優(yōu)化7ppt課件業(yè)務建模業(yè)務建模的目的7ppt課件業(yè)務建模方法研究對象軟件要改進的業(yè)務單元研究目標定義業(yè)務本質(zhì)研究方法用例觀點:把業(yè)務看成對外提供價值的價值流8ppt課件業(yè)務建模方法研究對象8ppt課件業(yè)務建模工件業(yè)務用例模型(BusinessUse-CaseModel)業(yè)務用戶表示為業(yè)務參與者(BusinessActor)業(yè)務過程表示為業(yè)務用例(BusinessUse-Case)和業(yè)務用例實現(xiàn)業(yè)務對象模型(BusinessObjectModel)人們在組織中扮演的角色表示為業(yè)務工人(BusinessWorker)組織管理或制造的“東西”表示為業(yè)務實體(BusinessEntity)9ppt課件業(yè)務建模工件業(yè)務用例模型(BusinessUse-Case業(yè)務建模流程0.建立業(yè)務用例模型1.識別業(yè)務參與者2.識別業(yè)務用例3.詳述業(yè)務用例4.建立業(yè)務對象模型10ppt課件業(yè)務建模流程0.建立業(yè)務用例模型10ppt課件業(yè)務建模流程0.建立業(yè)務用例模型1.識別業(yè)務參與者2.識別業(yè)務用例3.詳述業(yè)務用例1.建立業(yè)務對象模型11ppt課件業(yè)務建模流程0.建立業(yè)務用例模型11ppt課件1.業(yè)務參與者(BusinessActor)識別業(yè)務參與者在業(yè)務之外,與業(yè)務進行交互的人或組織-12-ppt課件1.業(yè)務參與者(BusinessActor)識別業(yè)務參與者區(qū)分業(yè)務工人(BusinessWorker)業(yè)務參與者在業(yè)務外面業(yè)務工人在業(yè)務里面-13-ppt課件區(qū)分業(yè)務工人(BusinessWorker)業(yè)務參與者在業(yè)區(qū)分業(yè)務實體(BusinessEntity)14ppt課件區(qū)分業(yè)務實體(BusinessEntity)14ppt課件識別業(yè)務參與者思路客戶供應商合作伙伴潛在客戶政府組織中未建模部分……-15-ppt課件識別業(yè)務參與者思路客戶-15-ppt課件2.業(yè)務用例(BusinessUseCase)識別業(yè)務用例業(yè)務為業(yè)務參與者提供的價值體現(xiàn)企業(yè)業(yè)務本質(zhì),是有意義的目標-16-ppt課件2.業(yè)務用例(BusinessUseCase)識別業(yè)務用業(yè)務用例與業(yè)務參與者17ppt課件業(yè)務用例與業(yè)務參與者17ppt課件識別業(yè)務用例的方法直接獲得:從業(yè)務參與者的角度,從外部推導出來拼裝:從里面往外面看,內(nèi)部業(yè)務流程的目標是什么直接獲得拼裝-18-ppt課件識別業(yè)務用例的方法直接獲得:從業(yè)務參與者的角度,從外部推導出從業(yè)務流程拼裝業(yè)務用例業(yè)務流程1.收款人在支票背后簽名,寫上身份證件號碼,把支票和身份證件交給營業(yè)員2.營業(yè)員核對印章正確且證件有效3.營業(yè)員操作營業(yè)受理系統(tǒng),辦理支票兌現(xiàn)手續(xù)4.營業(yè)員把現(xiàn)金和證件交給交款人19ppt課件從業(yè)務流程拼裝業(yè)務用例業(yè)務流程19ppt課件識別業(yè)務用例-支持性事件不要遺漏支撐性業(yè)務流程背后的業(yè)務用例支持性事件人員的發(fā)展與維護業(yè)務內(nèi)部IT的開發(fā)與維護辦公室的設立與維護安全性法律活動例:公司為什么要舉行足球比賽?20ppt課件識別業(yè)務用例-支持性事件不要遺漏支撐性業(yè)務流程背后的業(yè)務用例3.詳述業(yè)務用例業(yè)務用例是對業(yè)務流程的封裝,在業(yè)務建模過程中需要逐一描述其內(nèi)部細節(jié),即詳述業(yè)務用例目的詳細說明業(yè)務用例的工作流程說明業(yè)務用例的工作流程,以便于客戶、用戶和涉眾理解21ppt課件3.詳述業(yè)務用例業(yè)務用例是對業(yè)務流程的封裝,在業(yè)務建模過程中三種可選技術文字活動圖順序圖22ppt課件三種可選技術文字活動圖順序圖22ppt課件選擇合適的技術只有文字不生動,不便于和客戶交流只有活動圖難以表達所有細節(jié)業(yè)務用例文檔中插入活動圖活動圖中插入文字(+注釋+基本路徑)順序圖(需要涉及到業(yè)務對象模型)23ppt課件選擇合適的技術只有文字23ppt課件細說活動圖24ppt課件細說活動圖24ppt課件細說活動圖(1)起點、終點活動的一種特殊形式,各自只有一個起點:只有離開的轉(zhuǎn)移終點:只有進入的轉(zhuǎn)移存在從起點出發(fā),到達終點的路徑活動和動作有進有出動賓結(jié)構(gòu)可以簡單,可以復雜分區(qū)定義活動的負責者25ppt課件細說活動圖(1)起點、終點25ppt課件細說活動圖(2)控制流向外轉(zhuǎn)移的條件之和必須是完備集向外轉(zhuǎn)移的條件之間不能重疊決策點注意和流程圖的區(qū)別誤把活動當決策圖中判斷“技術可

行性”需要單獨的

活動來完成26ppt課件細說活動圖(2)控制流26ppt課件細說活動圖(3)并發(fā)(concurrent)同步條(synchronizationbar)的分叉(fork)與合并(join)有分必有合有分必有進有合必有出并發(fā)≠同時27ppt課件細說活動圖(3)并發(fā)(concurrent)27ppt課件活動圖中的對象流指定活動操作的數(shù)據(jù)(對象)以及數(shù)據(jù)的流向(對象流)業(yè)務對象(businessobjects)、對象流(objectflows)指出對某些業(yè)務實體的操作,類似結(jié)構(gòu)化中的數(shù)據(jù)流圖UML2中對象流

由原來的虛線

改為實線28ppt課件活動圖中的對象流指定活動操作的數(shù)據(jù)(對象)以及數(shù)據(jù)的流向(對活動圖的分層活動可以簡單可以復雜,復雜的活動可以進一步細化:分層頂層有起點終點,下層可以沒有出入平衡29ppt課件活動圖的分層活動可以簡單可以復雜,復雜的活動可以進一步細化:4.業(yè)務對象模型業(yè)務對象模型(BusinessObjectModel)勾勒出實現(xiàn)業(yè)務關系中的人、事物、設備、資源以及它們之間的關系;即業(yè)務工人和業(yè)務實體之間的靜態(tài)關系從另一個視角描述現(xiàn)實使用UML類圖描述不要和待開發(fā)系統(tǒng)中的分析設計類相混淆30ppt課件4.業(yè)務對象模型業(yè)務對象模型(BusinessObject餐館的業(yè)務對象模型31ppt課件餐館的業(yè)務對象模型31ppt課件業(yè)務建模實踐:建模指南業(yè)務模型不是UML標準直接支持的,但是通過UML的擴展機制可以很方便的建立業(yè)務模型主要構(gòu)造型(stereotype)業(yè)務用例模型參與者的構(gòu)造型:業(yè)務參與者(BusinessActor)用例的構(gòu)造型:業(yè)務用例(BusinessUseCase)業(yè)務對象模型類的構(gòu)造型:業(yè)務工人(BusinessWorker)、業(yè)務實體(BusinessEntity)32ppt課件業(yè)務建模實踐:建模指南業(yè)務模型不是UML標準直接支持的,但是建模指南:模型的組織利用“包”組織模型用例視圖中“業(yè)務用例模型”每個業(yè)務用例的

”狀態(tài)/活動模型”邏輯視圖中“業(yè)務對象模型”-33-ppt課件建模指南:模型的組織利用“包”組織模型-33-ppt課件建模指南:使用構(gòu)造型業(yè)務用例模型是在UML的用例模型(用例圖)基礎上添加構(gòu)造型來實現(xiàn)的業(yè)務對象模型是在UML的對象模型(類圖)基礎上添加構(gòu)造型來實現(xiàn)的利用已有元素添加構(gòu)造型Rose直接支持這些構(gòu)造型34ppt課件建模指南:使用構(gòu)造型業(yè)務用例模型是在UML的用例模型(用例圖業(yè)務建模實踐:實例分析研究對象:某旅店業(yè)務現(xiàn)狀:某旅店可對外開放50個雙人間和20個單人間,房間費用視情況按季節(jié)調(diào)整,但周一到周五提供半價(周末全價)折扣旅客可以直接入住房間(如果有空房),也可提前預訂;入住和預訂都需要登記個人信息旅客提前預訂房間時,需提交一定的訂金;入住時間24小時之外的旅客可以取消預訂,并退回所有訂金,24小時以內(nèi)則不退還訂金退房時繳納全部的住宿費用服務員每月為經(jīng)理提供房間的預訂情況和入住情況的詳細信息35ppt課件業(yè)務建模實踐:實例分析研究對象:某旅店35ppt課件實例分析:業(yè)務用例模型旅店的本質(zhì)就是為旅客提供住宿服務,其它的只是為達到這個目標而采用的手段(用例觀點:把業(yè)務看成對外提供價值的價值流)36ppt課件實例分析:業(yè)務用例模型旅店的本質(zhì)就是為旅客提供住宿服務,其它實例分析:旅客住宿業(yè)務流程37ppt課件實例分析:旅客住宿業(yè)務流程37ppt課件實例分析:檢查業(yè)務用例模型該業(yè)務用例模型體現(xiàn)了整個旅店的業(yè)務需求嗎?如何考慮這項業(yè)務:服務員每月為經(jīng)理提供房間的預訂情況和入住情況的詳細信息?經(jīng)理是什么,如何體現(xiàn)在業(yè)務建模過程中?是業(yè)務參與者還是業(yè)務工人?體現(xiàn)怎樣的業(yè)務本質(zhì)的差異?38ppt課件實例分析:檢查業(yè)務用例模型該業(yè)務用例模型體現(xiàn)了整個旅店的業(yè)務實例分析:業(yè)務對象模型39ppt課件實例分析:業(yè)務對象模型39ppt課件從業(yè)務模型到系統(tǒng)模型對于軟件開發(fā)而言,業(yè)務建模只是輔助環(huán)節(jié),并不是最終目標軟件工程師最終目標是要構(gòu)造軟件系統(tǒng)業(yè)務建模則是一種定義系統(tǒng)模型的輔助手段從業(yè)務模型到系統(tǒng)模型業(yè)務模型描述了目前的業(yè)務現(xiàn)狀系統(tǒng)模型才是軟件開發(fā)的最終工件40ppt課件從業(yè)務模型到系統(tǒng)模型對于軟件開發(fā)而言,業(yè)務建模只是輔助環(huán)節(jié),業(yè)務模型為系統(tǒng)模型提供素材為用例視圖和邏輯視圖提供輸入對于每個將被系統(tǒng)實現(xiàn)的業(yè)務用例,在用例視圖中確定一個系統(tǒng)用例或用例包(或單獨的子系統(tǒng))來實現(xiàn)該業(yè)務為需要支持自動化業(yè)務確定相應的用例對于業(yè)務對象模型中的業(yè)務實體,可以在系統(tǒng)模型中定義對應的實體類為系統(tǒng)構(gòu)架提供一些重要的構(gòu)架機制在軟件構(gòu)架中定義專用層來實現(xiàn)復雜的業(yè)務邏輯41ppt課件業(yè)務模型為系統(tǒng)模型提供素材為用例視圖和邏輯視圖提供輸入41p業(yè)務模型映射到系統(tǒng)模型從業(yè)務改進點入手,結(jié)合系統(tǒng)遠景,可以幫助獲取系統(tǒng)模型可能的對應關系(并非一一對應)業(yè)務用例系統(tǒng)(子系統(tǒng))業(yè)務參與者系統(tǒng)參與者業(yè)務工人系統(tǒng)參與者業(yè)務工人的操作(活動)系統(tǒng)用例業(yè)務實體實體類42ppt課件業(yè)務模型映射到系統(tǒng)模型從業(yè)務改進點入手,結(jié)合系統(tǒng)遠景,可以幫用例建模UseCaseModeling43ppt課件用例建模UseCaseModeling43ppt課件內(nèi)容安排理解需求從業(yè)務模型獲取需求建立用例模型編寫用例文檔重構(gòu)用例模型其它問題44ppt課件內(nèi)容安排理解需求44ppt課件內(nèi)容安排理解需求從業(yè)務模型獲取需求建立用例模型編寫用例文檔重構(gòu)用例模型其它問題45ppt課件內(nèi)容安排理解需求45ppt課件需求—建造“正確”的系統(tǒng)需求:客戶可接受的、系統(tǒng)必須滿足的條件或具備的能力RUP中的FURPS+軟件質(zhì)量準則功能性(Functionality)使用性(Usability)可靠性(Reliability)性能(Performance)可支持性(Supportability)+非功能性需求46ppt課件需求—建造“正確”的系統(tǒng)需求:客戶可接受的、系統(tǒng)必須滿足的條需求工程的主要活動定義需求理解用戶的需要,建立用戶可理解的系統(tǒng)需求模型分析需求根據(jù)需求模型,建立開發(fā)者無二義性解釋的分析模型需求管理47ppt課件需求工程的主要活動定義需求47ppt課件需求難在何處:石頭問題我要一塊石頭…差不多,但我要小一點的…很好,不過我要藍色的…啊,沒有那么小…咳,還是原來那個好了…小一點的藍色大理石難捕獲,易變!48ppt課件需求難在何處:石頭問題我要一塊石頭…小一點的藍色大理石難捕獲需求:也需要開發(fā)客戶/用戶的要求/想法/期望軟件設計軟件產(chǎn)品開發(fā)編碼和測試驗收有價值的

軟件需求分析和設計49ppt課件需求:也需要開發(fā)客戶/用戶的要求/想法/期望軟件設計軟件產(chǎn)品需求問題:對策難捕獲易變從用戶視角看問題合理的結(jié)構(gòu)用例50ppt課件需求問題:對策難捕獲易變從用戶視角看問題合理的結(jié)構(gòu)用例50p內(nèi)容安排理解需求從業(yè)務模型獲取需求用例建模流程獲取原始需求構(gòu)建初始用例模型編寫用例文檔重構(gòu)用例模型51ppt課件內(nèi)容安排理解需求51ppt課件從業(yè)務模型獲取需求有業(yè)務模型從業(yè)務用例模型中尋找系統(tǒng)改進點結(jié)合系統(tǒng)遠景,獲取系統(tǒng)用例來表達需求采用需求啟發(fā)技術,從涉眾獲得52ppt課件從業(yè)務模型獲取需求有業(yè)務模型52ppt課件從業(yè)務模型獲取需求從業(yè)務用例模型中獲取系統(tǒng)需求,來構(gòu)建系統(tǒng)用例模型1.尋找業(yè)務改進點2.定義項目遠景3.導出系統(tǒng)需求53ppt課件從業(yè)務模型獲取需求從業(yè)務用例模型中獲取系統(tǒng)需求,來構(gòu)建系統(tǒng)用1.業(yè)務改進點業(yè)務模型描述業(yè)務現(xiàn)狀,這些現(xiàn)狀:有些可能一直運轉(zhuǎn)的很好,不需要改進,也就沒有必要作為軟件需求來由系統(tǒng)實現(xiàn)而另外可能更多的業(yè)務在運轉(zhuǎn)過程中存在這樣或那樣的問題,這些問題就成為業(yè)務待改進的改進點,也就很可能作為軟件需求而存在54ppt課件1.業(yè)務改進點業(yè)務模型描述業(yè)務現(xiàn)狀,這些現(xiàn)狀:54ppt課尋找業(yè)務改進點從業(yè)務流程中獲取改進點的思路:信息的自動流轉(zhuǎn)演繹復雜業(yè)務邏輯訪問和操作業(yè)務對象自動工作……55ppt課件尋找業(yè)務改進點從業(yè)務流程中獲取改進點的思路:55ppt課件2.遠景(Vision)系統(tǒng)改進點不等同于軟件需求用戶根據(jù)自身的工作特點和支付能力決定哪些應該改進,哪些不需要改進這就是用戶的遠景,它表明用戶改進的目標,這也將成為項目的目標業(yè)務模型描述了“現(xiàn)實是什么”,遠景則描述“希望的改進”遠景表達了“為什么要開發(fā)這個系統(tǒng)”在業(yè)務現(xiàn)狀(業(yè)務模型)下,開發(fā)系統(tǒng)是為了達到什么目標?56ppt課件2.遠景(Vision)系統(tǒng)改進點不等同于軟件需求56pp定義項目遠景遠景包含了對待開發(fā)系統(tǒng)的目標和約束代表了項目涉及的所有人之間達成的第一個共識是項目核心需求的概覽為更詳細的技術需求提供了契約性的依據(jù)指導團隊實現(xiàn)具體的業(yè)務目標遠景的作用最初,根據(jù)項目的遠景目標來決定項目是否值得繼續(xù)在項目批準后,團隊根據(jù)項目遠景來指導后續(xù)的需求和設計57ppt課件定義項目遠景遠景包含了對待開發(fā)系統(tǒng)的目標和約束57ppt課件遠景說明遠景可以作為一個單獨的文檔存在,而這其中最重要的部分就是關于遠景目標的說明,它建立了一個項目涉及的所有人的共同目標遠景說明應該是精確、清晰和激勵性的描述,以便激勵所有的團隊成員為達成該遠景而努力。一個好的遠景應該具有以下五個特點(SMART):具體的(Specific)可測量的(Measurable)可實現(xiàn)的(Achievable)相關的(Relevant)基于時間的(Time-based)58ppt課件遠景說明遠景可以作為一個單獨的文檔存在,而這其中最重要的部分3.導出系統(tǒng)需求從業(yè)務改進點入手,結(jié)合項目遠景,導出系統(tǒng)需求:對于每一個業(yè)務改進點,明確是否是為了達到遠景目標的需要如果是則作為軟件需求而存在,并把相應地模型作為系統(tǒng)模型如果不是則不作為需求而存在,可能作為一項潛在的需求考慮,也可能直接拋棄59ppt課件3.導出系統(tǒng)需求從業(yè)務改進點入手,結(jié)合項目遠景,導出系統(tǒng)需實例分析:旅店系統(tǒng)開發(fā)背景隨著旅店聲譽日益提高,住宿人員越來越多,旅客為了能夠獲得好的房間,均提前預訂房間然而,隨著預訂的增多、預訂周期的拉長,前臺服務員工作壓力也日益增大,還經(jīng)常出現(xiàn)工作的失誤,使得已經(jīng)預訂好房間的旅客也不能按期入住,這給酒店的聲譽帶來不好的影響為此,旅店老板想到了計算機,希望能夠通過計算機來自動管理這些預訂業(yè)務,不過由于目前資金的問題,目前只開發(fā)一個單機版的系統(tǒng),不提供網(wǎng)上業(yè)務;并且旅店方面的其它業(yè)務暫不考慮信息化問題旅店老板委托某計算機公司開發(fā)該系統(tǒng),并承諾如果系統(tǒng)運轉(zhuǎn)良好的話,將會考慮進一步合作事宜60ppt課件實例分析:旅店系統(tǒng)開發(fā)背景隨著旅店聲譽日益提高,住宿人員越來遠景:旅店預訂系統(tǒng)A很榮幸地成為項目經(jīng)理,并被要求在兩個月之內(nèi)發(fā)布該系統(tǒng)的第一個版本,同時還被要求要為后續(xù)的開發(fā)提供必備的接口結(jié)合現(xiàn)狀和老板的要求,考慮到的項目可擴展的要求,A首先進行了簡單的業(yè)務建模之后,A初步定義了項目的遠景方便、快捷、準確地為旅客預訂房間旅客可以方便的取消預訂的房間旅店經(jīng)理能夠定期的獲取預訂的信息,根據(jù)這些信息可以及時調(diào)整房間的價格及時、快速地計算房間費用、預訂費用、取消預訂后退款金額等信息?預留接口:可以為以后的網(wǎng)絡版,以及其它業(yè)務系統(tǒng)的開發(fā)提供支持61ppt課件遠景:旅店預訂系統(tǒng)A很榮幸地成為項目經(jīng)理,并被要求在兩個月之結(jié)合遠景,獲取系統(tǒng)需求62ppt課件結(jié)合遠景,獲取系統(tǒng)需求62ppt課件業(yè)務模型映射到系統(tǒng)模型思路從業(yè)務改進點入手,結(jié)合系統(tǒng)遠景,可以幫助獲取系統(tǒng)模型可能的對應關系(并非一一對應)業(yè)務用例系統(tǒng)(子系統(tǒng))業(yè)務參與者系統(tǒng)參與者業(yè)務工人系統(tǒng)參與者業(yè)務工人的操作(活動)系統(tǒng)用例業(yè)務實體實體類63ppt課件業(yè)務模型映射到系統(tǒng)模型思路從業(yè)務改進點入手,結(jié)合系統(tǒng)遠景,可內(nèi)容安排理解需求從業(yè)務模型獲取需求建立用例模型編寫用例文檔重構(gòu)用例模型其它問題64ppt課件內(nèi)容安排理解需求64ppt課件1.需求從何而來需求只能來自涉眾(stakeholders)最終用戶、客戶政府、法律、文化開發(fā)人員、管理人員競爭對手…但并不是直接從涉眾中來你們的需求是什么?65ppt課件1.需求從何而來需求只能來自涉眾(stakeholders)涉眾無法直接提供需求涉眾無法陳述自己的需要涉眾說的是解決方案而不是需求涉眾難以構(gòu)想新的工作方法涉眾的利益矛盾涉眾抵制變更“最好也要有”—過度的要求需求引發(fā)需求66ppt課件涉眾無法直接提供需求涉眾無法陳述自己的需要66ppt課件需求啟發(fā)技術需求工程師利用需求啟發(fā)技術,從涉眾中發(fā)掘需求收集資料現(xiàn)場觀察訪談開會原型問卷調(diào)查…67ppt課件需求啟發(fā)技術需求工程師利用需求啟發(fā)技術,從涉眾中發(fā)掘需求672識別參與者(Actor)識別參與者關鍵詞:邊界參與者:在系統(tǒng)之外,透過系統(tǒng)邊界與系統(tǒng)進行有意義交互的任何事物68ppt課件2識別參與者(Actor)識別參與者68ppt課件參與者要點分析系統(tǒng)外參與者不是系統(tǒng)的一部分,處于系統(tǒng)的外部系統(tǒng)邊界參與者透過系統(tǒng)邊界直接與系統(tǒng)交互,參與者的確定代表系統(tǒng)邊界的確定系統(tǒng)角色參與者與使用系統(tǒng)的物理人和職務沒有關系需要從參與系統(tǒng)的角色(作用)來尋找參與者與系統(tǒng)進行信息交互系統(tǒng)需要關注其交互過程,即系統(tǒng)職責任何事物人、外系統(tǒng)、外部因素、時間69ppt課件參與者要點分析系統(tǒng)外69ppt課件要點:與系統(tǒng)進行信息交互70ppt課件要點:與系統(tǒng)進行信息交互70ppt課件要點:任何事物71ppt課件要點:任何事物71ppt課件任何事物:小人與圣小豬-172ppt課件任何事物:小人與圣小豬-172ppt課件小人與圣小豬-2眾所周知,用例圖中的參與者用一個小人表示。但是這個小人具有一定的誤導性,往往讓初學者(包括客戶)理解為一個真實的人。大多數(shù)UML學習者都要花好長一段時間來搞明白小人其實不一定代表的是人,而是很抽象的系統(tǒng)不可控的外部因素,比如說另一個系統(tǒng)。那么為什么不干脆用其它的符號來表示參與者呢?如果我開發(fā)一個豬圈自動供食供水系統(tǒng),豬的前蹄觸發(fā)一個開關系統(tǒng)就供食或供水。顯然,這里的參與者是小豬。那么在用例圖里用小豬代替原來的小人不是更易于交流嗎?73ppt課件小人與圣小豬-2眾所周知,用例圖中的參與者用一個小人表示。但思考:參與者與系統(tǒng)邊界?某企業(yè)要求開發(fā)一個企業(yè)信息管理系統(tǒng),并與原來已有的庫存系統(tǒng)相連接某企業(yè)要求開發(fā)一個企業(yè)信息管理系統(tǒng),并把原來已有的庫存管理系統(tǒng)加以改造,成為企業(yè)信息管理系統(tǒng)的一部分74ppt課件思考:參與者與系統(tǒng)邊界?某企業(yè)要求開發(fā)一個企業(yè)信息管理系統(tǒng),識別參與者的思路可以從以下要點來識別參與者系統(tǒng)在哪些部門使用誰向系統(tǒng)提供信息、使用和刪除信息。誰與系統(tǒng)的需求有關聯(lián)誰使用系統(tǒng)的功能(用例)誰對系統(tǒng)進行維護與外部系統(tǒng)是否有關聯(lián)時間參與者:一種習慣用法,用于激活那些系統(tǒng)定期的、自動執(zhí)行的用例75ppt課件識別參與者的思路可以從以下要點來識別參與者75ppt課件參與者的命名對參與者賦予能更好地表達其角色(作用)的名稱不好的參與者命名的例子:用職務名稱和個人姓名來命名例如,張三、老李、校長、科長…若使用系統(tǒng)的人(職務名稱)變化的話,就不是參與者了好的參與者命名的例子:用能知道其角色的名稱來命名例如,學生、訂單管理員、維護部門…即使使用系統(tǒng)的人改變,從系統(tǒng)來看,使用者的角色(作用)是相同的。76ppt課件參與者的命名對參與者賦予能更好地表達其角色(作用)的名稱76參與者之間的關系:泛化參與者可以通過泛化關系來定義,在這種泛化關系中,一個參與者的抽象描述可以被一個或多個具體的參與者所共享如系統(tǒng)中經(jīng)理可以參加雇員的所有用例-77-ppt課件參與者之間的關系:泛化參與者可以通過泛化關系來定義,在這種泛參與者地位識別用例之前—重要有助于識別用例,寧多勿少開始書寫用例文檔以后—不重要涉及的參與者太多測試和部署階段—重要需要從參與者的角度考慮78ppt課件參與者地位識別用例之前—重要78ppt課件3識別用例關鍵詞:價值定義用例實例是系統(tǒng)執(zhí)行的一系列動作,這些動作將生成特定參與者可觀測的結(jié)果值一個用例定義一組用例實例(場景)簡潔:參與者使用系統(tǒng)達到某個目標79ppt課件3識別用例關鍵詞:價值79ppt課件用例要點可觀測→用例止于系統(tǒng)邊界結(jié)果值→用例是有意義的目標系統(tǒng)執(zhí)行→結(jié)果值由系統(tǒng)生成由參與者觀測→業(yè)務語言、用戶觀點一組用例實例→用例的粒度80ppt課件用例要點可觀測→用例止于系統(tǒng)邊界80ppt課件要點:有意義的目標81ppt課件要點:有意義的目標81ppt課件要點:結(jié)果值由系統(tǒng)生成系統(tǒng)需要處理的,由系統(tǒng)生成82ppt課件要點:結(jié)果值由系統(tǒng)生成系統(tǒng)需要處理的,由系統(tǒng)生成82ppt課要點:用戶觀點而非系統(tǒng)觀點用戶觀點系統(tǒng)觀點83ppt課件要點:用戶觀點而非系統(tǒng)觀點用戶觀點系統(tǒng)觀點83ppt課件用例的命名參與者視角:(狀語)動詞+(定語+)賓語-84-ppt課件用例的命名參與者視角:-84-ppt課件要點:用例粒度-1用例是一組用例實例的抽象;其內(nèi)部要有路徑,路徑要有步驟最常犯錯誤:粒度過細,陷入功能分解通過執(zhí)行用例,參與者完成想做的事情(最終的目的),并為參與者產(chǎn)生價值過細的粒度,一般都會導致技術語言的描述,而不再是業(yè)務語言85ppt課件要點:用例粒度-1用例是一組用例實例的抽象;其內(nèi)部要有路徑,用例粒度-2把步驟當用例把系統(tǒng)活動當用例86ppt課件用例粒度-2把步驟當用例86ppt課件用例粒度-3“四輪馬車”C(Create)

R(Read)

U(Update)

D(Delete)所有業(yè)務最終對會成為CRUD?CRUD能為Actor提供價值?CRUD掩蓋業(yè)務,銳變成關系數(shù)據(jù)庫的建模:“系統(tǒng)就是數(shù)據(jù)的增刪改查”關心數(shù)據(jù)的存儲和維護,反而忽略了用戶的目的-87-ppt課件用例粒度-3“四輪馬車”-87-ppt課件用例粒度-4如果確實是CRUD?如果CRUD不涉及復雜的交互,一個用例“管理××”即可不管是C、R、U、D,都是為了完成“管理”目標甚至很多種的基本數(shù)據(jù)管理都可以用一個用例表示88ppt課件用例粒度-4如果確實是CRUD?88ppt課件用例粒度-5靈活處理CRUD可以把包含復雜交互的路徑獨立出去形成用例89ppt課件用例粒度-5靈活處理CRUD可以把包含復雜交互的路徑獨立出去找出用例的思路用例要考慮如下要點來尋找。參與者的工作是什么參與者的角色(作用)是什么參與者是否生成、參照、刪除系統(tǒng)信息參與者是否需要把外部變更通知給系統(tǒng)系統(tǒng)是否需要把內(nèi)部事情通知給參與者是否存在進行系統(tǒng)維護的用例用例數(shù)量的參考基準1個系統(tǒng)中存在十幾個用例(或更少)1個用例中有多個用例實例(場景)90ppt課件找出用例的思路用例要考慮如下要點來尋找。90ppt課件UML2.4中的常見的14種圖UML2.4-圖Diagrams類圖ClassDiagrams對象圖ObjectDiagrams構(gòu)件圖ComponentDiagrams部署圖DeploymentDiagrams用例圖UseCaseDiagrams順序圖SequenceDiagrams通信圖CommunicationDiagrams狀態(tài)機圖StateMachineDiagrams活動圖ActivityDiagrams靜態(tài)模型

(系統(tǒng)結(jié)構(gòu))動態(tài)模型

(系統(tǒng)行為)包圖PackageDiagrams組合結(jié)構(gòu)圖CompositeStructureDiagrams時間圖TimingDiagrams交互縱覽圖InteractionOverviewDiagrams外廓圖ProfileDiagrams91ppt課件UML2.4中的常見的14種圖UML2.4-圖類圖對象圖構(gòu)件畫用例圖的基本元素92ppt課件畫用例圖的基本元素92ppt課件附錄2-1.UML元語93ppt課件附錄2-1.UML元語93ppt課件用例圖元語返回用例圖94ppt課件用例圖元語返回用例圖94ppt課件活動圖元語返回活動圖95ppt課件活動圖元語返回活動圖95ppt課件類圖、對象圖、包圖元語返回靜態(tài)結(jié)構(gòu)圖96ppt課件類圖、對象圖、包圖元語返回靜態(tài)結(jié)構(gòu)圖96ppt課件組合結(jié)構(gòu)圖元語返回組合結(jié)構(gòu)圖97ppt課件組合結(jié)構(gòu)圖元語返回組合結(jié)構(gòu)圖97ppt課件順序圖元語返回順序圖98ppt課件順序圖元語返回順序圖98ppt課件通信圖元語返回通信圖99ppt課件通信圖元語返回通信圖99ppt課件交互縱覽圖元語返回交互縱覽圖100ppt課件交互縱覽圖元語返回交互縱覽圖100ppt課件時間圖元語返回時間圖101ppt課件時間圖元語返回時間圖101ppt課件狀態(tài)機圖元語返回狀態(tài)機圖102ppt課件狀態(tài)機圖元語返回狀態(tài)機圖102ppt課件構(gòu)件圖元語返回構(gòu)件圖103ppt課件構(gòu)件圖元語返回構(gòu)件圖103ppt課件部署圖元語返回部署圖104ppt課件部署圖元語返回部署圖104ppt課件外廓圖返回外廓圖105ppt課件外廓圖返回外廓圖105ppt課件4構(gòu)建用例圖用例圖:表達參與者與用例關系圖形106ppt課件4構(gòu)建用例圖用例圖:表達參與者與用例關系圖形106ppt課內(nèi)容安排從業(yè)務模型獲取需求建立用例模型編寫用例文檔重構(gòu)用例模型其它問題107ppt課件內(nèi)容安排從業(yè)務模型獲取需求107ppt課件撰寫用例文檔用例文檔:更進一步的精度需求規(guī)格說明書的核心,而用例圖作為用例文檔的索引圖進一步的精度:有層次的文檔文檔中每一句話都有其價值用例圖是骨架,而用例文檔則是其內(nèi)在的肉108ppt課件撰寫用例文檔用例文檔:更進一步的精度用例圖是骨架,而用例文檔用例文檔的組成用例標識(UC)、名稱、描述涉及的參與者、涉及的用例涉眾利益前置條件、后置條件事件流基本路徑備選路徑補充約束字段列表、業(yè)務規(guī)則非功能需求、設計約束待解決問題相關圖(用例圖、活動圖、類圖)109ppt課件用例文檔的組成用例標識(UC)、名稱、描述109ppt課件用例文檔參考模板110ppt課件用例文檔參考模板110ppt課件尋找涉眾的思路區(qū)分涉眾與參與者涉眾是與當前用例存在利益關系的人或組織參與者是啟動或參與用例執(zhí)行過程的人或外部事物可能的涉眾有:當事人上游下游操作對象的主人…111ppt課件尋找涉眾的思路區(qū)分涉眾與參與者111ppt課件前置、后置條件前置條件約束在用例開始前系統(tǒng)的狀態(tài)作為用例的入口限制,它阻止參與者觸發(fā)該用例直到滿足所有條件說明在用例觸發(fā)之前什么必須為真后置條件約束用例執(zhí)行后系統(tǒng)的狀態(tài)用例執(zhí)行后什么必須為真對于存在各種分支事件流的用例,則可以指定多個后置條件把用例看作是參與者與系統(tǒng)交互的流程,前置條件和后置條件則是這個流程的入口和出口狀態(tài)。如圖直線箭頭表示基本事件流,曲線箭頭代表各種備選事件流,注意前置條件和后置條件所處位置-112-ppt課件前置、后置條件前置條件約束在用例開始前系統(tǒng)的狀態(tài)定義前置、后置條件前置、后置條件必須是系統(tǒng)能檢測到的前置條件必須是系統(tǒng)在用例開始前就能檢測到的113ppt課件定義前置、后置條件前置、后置條件必須是系統(tǒng)能檢測到的113p應用前置、后置條件某些用例依賴于其他用例一個用例在離開系統(tǒng)時,可能是另一個用例的前置條件(例如:“登錄”和“管理系統(tǒng)”)有助于識別漏掉的用例如果一個用例的前置條件不能有執(zhí)行其他用例滿足,可能意味著丟失了用例(例如:“管理訂單”卻沒有“登錄”用例)114ppt課件應用前置、后置條件某些用例依賴于其他用例114ppt課件事件流描述-用例交互四部曲1.動作4.響應2.驗證3.處理系統(tǒng)重點寫:1和4(可觀測的、體現(xiàn)客戶利益的文字)用例的核心內(nèi)容就是參與者和系統(tǒng)交互的過程,這個交互過程在用例文檔中采用事件流的方式進行完整的表示。如圖115ppt課件事件流描述-用例交互四部曲1.動作4.響應2.驗證事件流描述要點事件流描述要使用戶和開發(fā)人員互相理解用例的功能,要注意以下幾點:使用業(yè)務語言:使用用戶平時所使用的語言進行描述要明確參與者與系統(tǒng)所交互的信息不使用[例如]、[等]這樣的不清晰的表達不要過多地考慮界面細節(jié)不要描述計算機內(nèi)部的處理,要描述從系統(tǒng)外部所看到的活動除了基本流程,還要描述替代流程要明確描述用例的開始和結(jié)束116ppt課件事件流描述要點事件流描述要使用戶和開發(fā)人員互相理解用例的功能例1:使用業(yè)務語言技術語言:無法與用戶溝通系統(tǒng)通過JDBC建立數(shù)據(jù)庫連接,傳送SQL查詢語句,從“商品表”查詢商品的詳細信息…業(yè)務語言(用戶語言)系統(tǒng)按照查詢條件搜索商品的詳細信息117ppt課件例1:使用業(yè)務語言技術語言:無法與用戶溝通117ppt課件例2:描述參與者與系統(tǒng)交互過程以參與者或系統(tǒng)作為主語描述參與者……系統(tǒng)……示例出納員接收顧客的付款—顧客的付款數(shù)可能高于商品總額出納員錄入顧客所付的現(xiàn)金總額系統(tǒng)顯示出應找還給顧客的余額,打印付款收據(jù)118ppt課件例2:描述參與者與系統(tǒng)交互過程以參與者或系統(tǒng)作為主語描述11例3:不細化界面細節(jié)過細的界面細節(jié)描述會員從下拉框中選擇類別會員在相應文本框中輸入查詢條件會員點擊“確定”按鈕119ppt課件例3:不細化界面細節(jié)過細的界面細節(jié)描述119ppt課件例4:分支和循環(huán)的描述分支:放到備選路徑中參與者的選擇另一條成功線路系統(tǒng)進行驗證……循環(huán):直接描述120ppt課件例4:分支和循環(huán)的描述分支:放到備選路徑中120ppt課件用例文檔中的補充約束用例重點在于描述功能需求,而其它方面的補充約束采用兩種處理策略:與特定用例相關的補充約束,作為該用例文檔中一部分來描述一些全局性的補充約束,單獨形成一份獨立的文檔,如“補充需求規(guī)約”文檔補充約束字段列表業(yè)務規(guī)則非功能需求設計約束121ppt課件用例文檔中的補充約束用例重點在于描述功能需求,而其它方面的補實例分析:撰寫用例文檔用例文檔參考模板旅店預訂系統(tǒng)用例文檔“UC01-預訂房間”用例文檔122ppt課件實例分析:撰寫用例文檔用例文檔參考模板122ppt課件內(nèi)容安排從業(yè)務模型獲取需求建立用例模型編寫用例文檔重構(gòu)用例模型其它問題123ppt課件內(nèi)容安排從業(yè)務模型獲取需求123ppt課件重構(gòu)用例模型對于一些復雜的系統(tǒng),用例可能很多,所以可以利用用例建模高級技術重構(gòu)用例模型用例關系通過用例關系將復雜的用例進行適當?shù)姆纸猓员阌谔岣咝枨蟮膹陀眯院涂蓴U展性等,從而使用例模型的結(jié)構(gòu)更合理用例分級可以根據(jù)用例的重要程度進行分級,以便后續(xù)迭代計劃的制定,高級別的用例優(yōu)先考慮用例分包將相關的用例打包,通過分包的方式可以將用例圖分層表示,以用于大規(guī)模系統(tǒng)的用例建模124ppt課件重構(gòu)用例模型對于一些復雜的系統(tǒng),用例可能很多,所以可以利用用用例關系<<include>><<extend>>擴展包含泛化125ppt課件用例關系<<include>><<extend>>擴展包含泛通過關系整理文檔Extend(擴展)通過擴展用例對基用例增加附加的行為Include(包含)基用例中復用被包含用例的行為提取公共步驟,便于復用Generalization(泛化)派生用例繼承泛化用例的行為并添加新行為126ppt課件通過關系整理文檔Extend(擴展)126ppt課件用例關系:擴展擴展:某個用例在特定情況下,包含其他用例(擴展用例)的行為,表示功能被擴展擴展使用帶有<<extend>>的虛線表示。此時,箭頭由擴展的用例指向原用例,通過擴展點指明在原用例中的擴展位置127ppt課件用例關系:擴展擴展:某個用例在特定情況下,包含其他用例(擴展用例關系:包含包含:表示某個用例中包含了其他用例的行為包含用帶有<<inclu

溫馨提示

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

評論

0/150

提交評論