




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
2023/7/23業(yè)務(wù)建模及用例建模學(xué)習(xí)路線圖OOUMLOOPDP…Case-Study…學(xué)習(xí)路線圖……
……
……
……123456789102核心過(guò)程3業(yè)務(wù)建模BusinessModeling開發(fā)過(guò)程解析業(yè)務(wù)建模:用軟件建模方法描述業(yè)務(wù)流程;其目標(biāo)是認(rèn)識(shí)業(yè)務(wù)本質(zhì),該業(yè)務(wù)本質(zhì)是后續(xù)用例建模的基礎(chǔ)用例建模:采用UML用例建模技術(shù)描述軟件需求,該需求模型將為后續(xù)用例分析提供輸入用例分析:采用UML用例分析技術(shù)分析軟件需求,建立軟件系統(tǒng)的分析模型架構(gòu)設(shè)計(jì):在系統(tǒng)的全局范圍內(nèi),以分析模型為基礎(chǔ),設(shè)計(jì)系統(tǒng)的架構(gòu)構(gòu)件設(shè)計(jì):根據(jù)架構(gòu)設(shè)計(jì)的成果,將分析模型細(xì)化,設(shè)計(jì)系統(tǒng)構(gòu)件的實(shí)現(xiàn)細(xì)節(jié)代碼實(shí)現(xiàn):將系統(tǒng)構(gòu)件映射到目標(biāo)語(yǔ)言上5業(yè)務(wù)業(yè)務(wù)是指某個(gè)組織或者組織單元業(yè)務(wù)可以看作一種包含了人、機(jī)器、資源的“系統(tǒng)”利用軟件思想(用例思想、對(duì)象思想)描述業(yè)務(wù)的過(guò)程,就是業(yè)務(wù)建模業(yè)務(wù)建模只是輔助環(huán)節(jié)不是所有項(xiàng)目都需要也不一定和軟件開發(fā)相關(guān)6業(yè)務(wù)建模業(yè)務(wù)建模的目的理解將要實(shí)施的系統(tǒng)的組織結(jié)構(gòu)和動(dòng)態(tài)特性理解當(dāng)前在目標(biāo)組織中的問(wèn)題,并明確改進(jìn)的潛力確保客戶、最終用戶和開發(fā)人員對(duì)目標(biāo)組織有統(tǒng)一的理解獲取用于支持目標(biāo)組織的系統(tǒng)需求業(yè)務(wù)建模關(guān)注機(jī)構(gòu)的核心價(jià)值機(jī)構(gòu)的邊界機(jī)構(gòu)的參與者機(jī)構(gòu)中的工作流及如何優(yōu)化7業(yè)務(wù)建模方法研究對(duì)象軟件要改進(jìn)的業(yè)務(wù)單元研究目標(biāo)定義業(yè)務(wù)本質(zhì)研究方法用例觀點(diǎn):把業(yè)務(wù)看成對(duì)外提供價(jià)值的價(jià)值流8業(yè)務(wù)建模工件業(yè)務(wù)用例模型(BusinessUse-CaseModel)業(yè)務(wù)用戶表示為業(yè)務(wù)參與者(BusinessActor)業(yè)務(wù)過(guò)程表示為業(yè)務(wù)用例(BusinessUse-Case)和業(yè)務(wù)用例實(shí)現(xiàn)業(yè)務(wù)對(duì)象模型(BusinessObjectModel)人們?cè)诮M織中扮演的角色表示為業(yè)務(wù)工人(BusinessWorker)組織管理或制造的“東西”表示為業(yè)務(wù)實(shí)體(BusinessEntity)9業(yè)務(wù)建模流程0.建立業(yè)務(wù)用例模型1.識(shí)別業(yè)務(wù)參與者2.識(shí)別業(yè)務(wù)用例3.詳述業(yè)務(wù)用例4.建立業(yè)務(wù)對(duì)象模型10業(yè)務(wù)建模流程0.建立業(yè)務(wù)用例模型1.識(shí)別業(yè)務(wù)參與者2.識(shí)別業(yè)務(wù)用例3.詳述業(yè)務(wù)用例1.建立業(yè)務(wù)對(duì)象模型111.業(yè)務(wù)參與者(BusinessActor)識(shí)別業(yè)務(wù)參與者在業(yè)務(wù)之外,與業(yè)務(wù)進(jìn)行交互的人或組織12區(qū)分業(yè)務(wù)工人(BusinessWorker)業(yè)務(wù)參與者在業(yè)務(wù)外面業(yè)務(wù)工人在業(yè)務(wù)里面13區(qū)分業(yè)務(wù)實(shí)體(BusinessEntity)14識(shí)別業(yè)務(wù)參與者思路客戶供應(yīng)商合作伙伴潛在客戶政府組織中未建模部分……152.業(yè)務(wù)用例(BusinessUseCase)識(shí)別業(yè)務(wù)用例業(yè)務(wù)為業(yè)務(wù)參與者提供的價(jià)值體現(xiàn)企業(yè)業(yè)務(wù)本質(zhì),是有意義的目標(biāo)16業(yè)務(wù)用例與業(yè)務(wù)參與者17識(shí)別業(yè)務(wù)用例的方法直接獲得:從業(yè)務(wù)參與者的角度,從外部推導(dǎo)出來(lái)拼裝:從里面往外面看,內(nèi)部業(yè)務(wù)流程的目標(biāo)是什么直接獲得拼裝18從業(yè)務(wù)流程拼裝業(yè)務(wù)用例業(yè)務(wù)流程1.收款人在支票背后簽名,寫上身份證件號(hào)碼,把支票和身份證件交給營(yíng)業(yè)員2.營(yíng)業(yè)員核對(duì)印章正確且證件有效3.營(yíng)業(yè)員操作營(yíng)業(yè)受理系統(tǒng),辦理支票兌現(xiàn)手續(xù)4.營(yíng)業(yè)員把現(xiàn)金和證件交給交款人19識(shí)別業(yè)務(wù)用例-支持性事件不要遺漏支撐性業(yè)務(wù)流程背后的業(yè)務(wù)用例支持性事件人員的發(fā)展與維護(hù)業(yè)務(wù)內(nèi)部IT的開發(fā)與維護(hù)辦公室的設(shè)立與維護(hù)安全性法律活動(dòng)例:公司為什么要舉行足球比賽?203.詳述業(yè)務(wù)用例業(yè)務(wù)用例是對(duì)業(yè)務(wù)流程的封裝,在業(yè)務(wù)建模過(guò)程中需要逐一描述其內(nèi)部細(xì)節(jié),即詳述業(yè)務(wù)用例目的詳細(xì)說(shuō)明業(yè)務(wù)用例的工作流程說(shuō)明業(yè)務(wù)用例的工作流程,以便于客戶、用戶和涉眾理解21三種可選技術(shù)文字活動(dòng)圖順序圖22選擇合適的技術(shù)只有文字不生動(dòng),不便于和客戶交流只有活動(dòng)圖難以表達(dá)所有細(xì)節(jié)業(yè)務(wù)用例文檔中插入活動(dòng)圖活動(dòng)圖中插入文字(+注釋+基本路徑)順序圖(需要涉及到業(yè)務(wù)對(duì)象模型)23細(xì)說(shuō)活動(dòng)圖24細(xì)說(shuō)活動(dòng)圖(1)起點(diǎn)、終點(diǎn)活動(dòng)的一種特殊形式,各自只有一個(gè)起點(diǎn):只有離開的轉(zhuǎn)移終點(diǎn):只有進(jìn)入的轉(zhuǎn)移存在從起點(diǎn)出發(fā),到達(dá)終點(diǎn)的路徑活動(dòng)和動(dòng)作有進(jìn)有出動(dòng)賓結(jié)構(gòu)可以簡(jiǎn)單,可以復(fù)雜分區(qū)定義活動(dòng)的負(fù)責(zé)者25細(xì)說(shuō)活動(dòng)圖(2)控制流向外轉(zhuǎn)移的條件之和必須是完備集向外轉(zhuǎn)移的條件之間不能重疊決策點(diǎn)注意和流程圖的區(qū)別誤把活動(dòng)當(dāng)決策圖中判斷“技術(shù)可
行性”需要單獨(dú)的
活動(dòng)來(lái)完成26細(xì)說(shuō)活動(dòng)圖(3)并發(fā)(concurrent)同步條(synchronizationbar)的分叉(fork)與合并(join)有分必有合有分必有進(jìn)有合必有出并發(fā)≠同時(shí)27活動(dòng)圖中的對(duì)象流指定活動(dòng)操作的數(shù)據(jù)(對(duì)象)以及數(shù)據(jù)的流向(對(duì)象流)業(yè)務(wù)對(duì)象(businessobjects)、對(duì)象流(objectflows)指出對(duì)某些業(yè)務(wù)實(shí)體的操作,類似結(jié)構(gòu)化中的數(shù)據(jù)流圖UML2中對(duì)象流
由原來(lái)的虛線
改為實(shí)線28活動(dòng)圖的分層活動(dòng)可以簡(jiǎn)單可以復(fù)雜,復(fù)雜的活動(dòng)可以進(jìn)一步細(xì)化:分層頂層有起點(diǎn)終點(diǎn),下層可以沒(méi)有出入平衡294.業(yè)務(wù)對(duì)象模型業(yè)務(wù)對(duì)象模型(BusinessObjectModel)勾勒出實(shí)現(xiàn)業(yè)務(wù)關(guān)系中的人、事物、設(shè)備、資源以及它們之間的關(guān)系;即業(yè)務(wù)工人和業(yè)務(wù)實(shí)體之間的靜態(tài)關(guān)系從另一個(gè)視角描述現(xiàn)實(shí)使用UML類圖描述不要和待開發(fā)系統(tǒng)中的分析設(shè)計(jì)類相混淆30餐館的業(yè)務(wù)對(duì)象模型31業(yè)務(wù)建模實(shí)踐:建模指南業(yè)務(wù)模型不是UML標(biāo)準(zhǔn)直接支持的,但是通過(guò)UML的擴(kuò)展機(jī)制可以很方便的建立業(yè)務(wù)模型主要構(gòu)造型(stereotype)業(yè)務(wù)用例模型參與者的構(gòu)造型:業(yè)務(wù)參與者(BusinessActor)用例的構(gòu)造型:業(yè)務(wù)用例(BusinessUseCase)業(yè)務(wù)對(duì)象模型類的構(gòu)造型:業(yè)務(wù)工人(BusinessWorker)、業(yè)務(wù)實(shí)體(BusinessEntity)32建模指南:模型的組織利用“包”組織模型用例視圖中“業(yè)務(wù)用例模型”每個(gè)業(yè)務(wù)用例的
”狀態(tài)/活動(dòng)模型”邏輯視圖中“業(yè)務(wù)對(duì)象模型”33建模指南:使用構(gòu)造型業(yè)務(wù)用例模型是在UML的用例模型(用例圖)基礎(chǔ)上添加構(gòu)造型來(lái)實(shí)現(xiàn)的業(yè)務(wù)對(duì)象模型是在UML的對(duì)象模型(類圖)基礎(chǔ)上添加構(gòu)造型來(lái)實(shí)現(xiàn)的利用已有元素添加構(gòu)造型Rose直接支持這些構(gòu)造型34業(yè)務(wù)建模實(shí)踐:實(shí)例分析研究對(duì)象:某旅店業(yè)務(wù)現(xiàn)狀:某旅店可對(duì)外開放50個(gè)雙人間和20個(gè)單人間,房間費(fèi)用視情況按季節(jié)調(diào)整,但周一到周五提供半價(jià)(周末全價(jià))折扣旅客可以直接入住房間(如果有空房),也可提前預(yù)訂;入住和預(yù)訂都需要登記個(gè)人信息旅客提前預(yù)訂房間時(shí),需提交一定的訂金;入住時(shí)間24小時(shí)之外的旅客可以取消預(yù)訂,并退回所有訂金,24小時(shí)以內(nèi)則不退還訂金退房時(shí)繳納全部的住宿費(fèi)用服務(wù)員每月為經(jīng)理提供房間的預(yù)訂情況和入住情況的詳細(xì)信息35實(shí)例分析:業(yè)務(wù)用例模型旅店的本質(zhì)就是為旅客提供住宿服務(wù),其它的只是為達(dá)到這個(gè)目標(biāo)而采用的手段(用例觀點(diǎn):把業(yè)務(wù)看成對(duì)外提供價(jià)值的價(jià)值流)36實(shí)例分析:旅客住宿業(yè)務(wù)流程37實(shí)例分析:檢查業(yè)務(wù)用例模型該業(yè)務(wù)用例模型體現(xiàn)了整個(gè)旅店的業(yè)務(wù)需求嗎?如何考慮這項(xiàng)業(yè)務(wù):服務(wù)員每月為經(jīng)理提供房間的預(yù)訂情況和入住情況的詳細(xì)信息?經(jīng)理是什么,如何體現(xiàn)在業(yè)務(wù)建模過(guò)程中?是業(yè)務(wù)參與者還是業(yè)務(wù)工人?體現(xiàn)怎樣的業(yè)務(wù)本質(zhì)的差異?38實(shí)例分析:業(yè)務(wù)對(duì)象模型39從業(yè)務(wù)模型到系統(tǒng)模型對(duì)于軟件開發(fā)而言,業(yè)務(wù)建模只是輔助環(huán)節(jié),并不是最終目標(biāo)軟件工程師最終目標(biāo)是要構(gòu)造軟件系統(tǒng)業(yè)務(wù)建模則是一種定義系統(tǒng)模型的輔助手段從業(yè)務(wù)模型到系統(tǒng)模型業(yè)務(wù)模型描述了目前的業(yè)務(wù)現(xiàn)狀系統(tǒng)模型才是軟件開發(fā)的最終工件40業(yè)務(wù)模型為系統(tǒng)模型提供素材為用例視圖和邏輯視圖提供輸入對(duì)于每個(gè)將被系統(tǒng)實(shí)現(xiàn)的業(yè)務(wù)用例,在用例視圖中確定一個(gè)系統(tǒng)用例或用例包(或單獨(dú)的子系統(tǒng))來(lái)實(shí)現(xiàn)該業(yè)務(wù)為需要支持自動(dòng)化業(yè)務(wù)確定相應(yīng)的用例對(duì)于業(yè)務(wù)對(duì)象模型中的業(yè)務(wù)實(shí)體,可以在系統(tǒng)模型中定義對(duì)應(yīng)的實(shí)體類為系統(tǒng)構(gòu)架提供一些重要的構(gòu)架機(jī)制在軟件構(gòu)架中定義專用層來(lái)實(shí)現(xiàn)復(fù)雜的業(yè)務(wù)邏輯41業(yè)務(wù)模型映射到系統(tǒng)模型從業(yè)務(wù)改進(jìn)點(diǎn)入手,結(jié)合系統(tǒng)遠(yuǎn)景,可以幫助獲取系統(tǒng)模型可能的對(duì)應(yīng)關(guān)系(并非一一對(duì)應(yīng))業(yè)務(wù)用例系統(tǒng)(子系統(tǒng))業(yè)務(wù)參與者系統(tǒng)參與者業(yè)務(wù)工人系統(tǒng)參與者業(yè)務(wù)工人的操作(活動(dòng))系統(tǒng)用例業(yè)務(wù)實(shí)體實(shí)體類42用例建模UseCaseModeling內(nèi)容安排理解需求從業(yè)務(wù)模型獲取需求建立用例模型編寫用例文檔重構(gòu)用例模型其它問(wèn)題44內(nèi)容安排理解需求從業(yè)務(wù)模型獲取需求建立用例模型編寫用例文檔重構(gòu)用例模型其它問(wèn)題45需求—建造“正確”的系統(tǒng)需求:客戶可接受的、系統(tǒng)必須滿足的條件或具備的能力RUP中的FURPS+軟件質(zhì)量準(zhǔn)則功能性(Functionality)使用性(Usability)可靠性(Reliability)性能(Performance)可支持性(Supportability)+非功能性需求46需求工程的主要活動(dòng)定義需求理解用戶的需要,建立用戶可理解的系統(tǒng)需求模型分析需求根據(jù)需求模型,建立開發(fā)者無(wú)二義性解釋的分析模型需求管理47需求難在何處:石頭問(wèn)題我要一塊石頭…差不多,但我要小一點(diǎn)的…很好,不過(guò)我要藍(lán)色的…啊,沒(méi)有那么小…咳,還是原來(lái)那個(gè)好了…小一點(diǎn)的藍(lán)色大理石難捕獲,易變!48需求:也需要開發(fā)客戶/用戶的要求/想法/期望軟件設(shè)計(jì)軟件產(chǎn)品開發(fā)編碼和測(cè)試驗(yàn)收有價(jià)值的
軟件需求分析和設(shè)計(jì)49需求問(wèn)題:對(duì)策難捕獲易變從用戶視角看問(wèn)題合理的結(jié)構(gòu)用例50內(nèi)容安排理解需求從業(yè)務(wù)模型獲取需求用例建模流程獲取原始需求構(gòu)建初始用例模型編寫用例文檔重構(gòu)用例模型51從業(yè)務(wù)模型獲取需求有業(yè)務(wù)模型從業(yè)務(wù)用例模型中尋找系統(tǒng)改進(jìn)點(diǎn)結(jié)合系統(tǒng)遠(yuǎn)景,獲取系統(tǒng)用例來(lái)表達(dá)需求采用需求啟發(fā)技術(shù),從涉眾獲得52從業(yè)務(wù)模型獲取需求從業(yè)務(wù)用例模型中獲取系統(tǒng)需求,來(lái)構(gòu)建系統(tǒng)用例模型1.尋找業(yè)務(wù)改進(jìn)點(diǎn)2.定義項(xiàng)目遠(yuǎn)景3.導(dǎo)出系統(tǒng)需求531.業(yè)務(wù)改進(jìn)點(diǎn)業(yè)務(wù)模型描述業(yè)務(wù)現(xiàn)狀,這些現(xiàn)狀:有些可能一直運(yùn)轉(zhuǎn)的很好,不需要改進(jìn),也就沒(méi)有必要作為軟件需求來(lái)由系統(tǒng)實(shí)現(xiàn)而另外可能更多的業(yè)務(wù)在運(yùn)轉(zhuǎn)過(guò)程中存在這樣或那樣的問(wèn)題,這些問(wèn)題就成為業(yè)務(wù)待改進(jìn)的改進(jìn)點(diǎn),也就很可能作為軟件需求而存在54尋找業(yè)務(wù)改進(jìn)點(diǎn)從業(yè)務(wù)流程中獲取改進(jìn)點(diǎn)的思路:信息的自動(dòng)流轉(zhuǎn)演繹復(fù)雜業(yè)務(wù)邏輯訪問(wèn)和操作業(yè)務(wù)對(duì)象自動(dòng)工作……552.遠(yuǎn)景(Vision)系統(tǒng)改進(jìn)點(diǎn)不等同于軟件需求用戶根據(jù)自身的工作特點(diǎn)和支付能力決定哪些應(yīng)該改進(jìn),哪些不需要改進(jìn)這就是用戶的遠(yuǎn)景,它表明用戶改進(jìn)的目標(biāo),這也將成為項(xiàng)目的目標(biāo)業(yè)務(wù)模型描述了“現(xiàn)實(shí)是什么”,遠(yuǎn)景則描述“希望的改進(jìn)”遠(yuǎn)景表達(dá)了“為什么要開發(fā)這個(gè)系統(tǒng)”在業(yè)務(wù)現(xiàn)狀(業(yè)務(wù)模型)下,開發(fā)系統(tǒng)是為了達(dá)到什么目標(biāo)?56定義項(xiàng)目遠(yuǎn)景遠(yuǎn)景包含了對(duì)待開發(fā)系統(tǒng)的目標(biāo)和約束代表了項(xiàng)目涉及的所有人之間達(dá)成的第一個(gè)共識(shí)是項(xiàng)目核心需求的概覽為更詳細(xì)的技術(shù)需求提供了契約性的依據(jù)指導(dǎo)團(tuán)隊(duì)實(shí)現(xiàn)具體的業(yè)務(wù)目標(biāo)遠(yuǎn)景的作用最初,根據(jù)項(xiàng)目的遠(yuǎn)景目標(biāo)來(lái)決定項(xiàng)目是否值得繼續(xù)在項(xiàng)目批準(zhǔn)后,團(tuán)隊(duì)根據(jù)項(xiàng)目遠(yuǎn)景來(lái)指導(dǎo)后續(xù)的需求和設(shè)計(jì)57遠(yuǎn)景說(shuō)明遠(yuǎn)景可以作為一個(gè)單獨(dú)的文檔存在,而這其中最重要的部分就是關(guān)于遠(yuǎn)景目標(biāo)的說(shuō)明,它建立了一個(gè)項(xiàng)目涉及的所有人的共同目標(biāo)遠(yuǎn)景說(shuō)明應(yīng)該是精確、清晰和激勵(lì)性的描述,以便激勵(lì)所有的團(tuán)隊(duì)成員為達(dá)成該遠(yuǎn)景而努力。一個(gè)好的遠(yuǎn)景應(yīng)該具有以下五個(gè)特點(diǎn)(SMART):具體的(Specific)可測(cè)量的(Measurable)可實(shí)現(xiàn)的(Achievable)相關(guān)的(Relevant)基于時(shí)間的(Time-based)583.導(dǎo)出系統(tǒng)需求從業(yè)務(wù)改進(jìn)點(diǎn)入手,結(jié)合項(xiàng)目遠(yuǎn)景,導(dǎo)出系統(tǒng)需求:對(duì)于每一個(gè)業(yè)務(wù)改進(jìn)點(diǎn),明確是否是為了達(dá)到遠(yuǎn)景目標(biāo)的需要如果是則作為軟件需求而存在,并把相應(yīng)地模型作為系統(tǒng)模型如果不是則不作為需求而存在,可能作為一項(xiàng)潛在的需求考慮,也可能直接拋棄59實(shí)例分析:旅店系統(tǒng)開發(fā)背景隨著旅店聲譽(yù)日益提高,住宿人員越來(lái)越多,旅客為了能夠獲得好的房間,均提前預(yù)訂房間然而,隨著預(yù)訂的增多、預(yù)訂周期的拉長(zhǎng),前臺(tái)服務(wù)員工作壓力也日益增大,還經(jīng)常出現(xiàn)工作的失誤,使得已經(jīng)預(yù)訂好房間的旅客也不能按期入住,這給酒店的聲譽(yù)帶來(lái)不好的影響為此,旅店老板想到了計(jì)算機(jī),希望能夠通過(guò)計(jì)算機(jī)來(lái)自動(dòng)管理這些預(yù)訂業(yè)務(wù),不過(guò)由于目前資金的問(wèn)題,目前只開發(fā)一個(gè)單機(jī)版的系統(tǒng),不提供網(wǎng)上業(yè)務(wù);并且旅店方面的其它業(yè)務(wù)暫不考慮信息化問(wèn)題旅店老板委托某計(jì)算機(jī)公司開發(fā)該系統(tǒng),并承諾如果系統(tǒng)運(yùn)轉(zhuǎn)良好的話,將會(huì)考慮進(jìn)一步合作事宜60遠(yuǎn)景:旅店預(yù)訂系統(tǒng)A很榮幸地成為項(xiàng)目經(jīng)理,并被要求在兩個(gè)月之內(nèi)發(fā)布該系統(tǒng)的第一個(gè)版本,同時(shí)還被要求要為后續(xù)的開發(fā)提供必備的接口結(jié)合現(xiàn)狀和老板的要求,考慮到的項(xiàng)目可擴(kuò)展的要求,A首先進(jìn)行了簡(jiǎn)單的業(yè)務(wù)建模之后,A初步定義了項(xiàng)目的遠(yuǎn)景方便、快捷、準(zhǔn)確地為旅客預(yù)訂房間旅客可以方便的取消預(yù)訂的房間旅店經(jīng)理能夠定期的獲取預(yù)訂的信息,根據(jù)這些信息可以及時(shí)調(diào)整房間的價(jià)格及時(shí)、快速地計(jì)算房間費(fèi)用、預(yù)訂費(fèi)用、取消預(yù)訂后退款金額等信息?預(yù)留接口:可以為以后的網(wǎng)絡(luò)版,以及其它業(yè)務(wù)系統(tǒng)的開發(fā)提供支持61結(jié)合遠(yuǎn)景,獲取系統(tǒng)需求62業(yè)務(wù)模型映射到系統(tǒng)模型思路從業(yè)務(wù)改進(jìn)點(diǎn)入手,結(jié)合系統(tǒng)遠(yuǎn)景,可以幫助獲取系統(tǒng)模型可能的對(duì)應(yīng)關(guān)系(并非一一對(duì)應(yīng))業(yè)務(wù)用例系統(tǒng)(子系統(tǒng))業(yè)務(wù)參與者系統(tǒng)參與者業(yè)務(wù)工人系統(tǒng)參與者業(yè)務(wù)工人的操作(活動(dòng))系統(tǒng)用例業(yè)務(wù)實(shí)體實(shí)體類63內(nèi)容安排理解需求從業(yè)務(wù)模型獲取需求建立用例模型編寫用例文檔重構(gòu)用例模型其它問(wèn)題641.需求從何而來(lái)需求只能來(lái)自涉眾(stakeholders)最終用戶、客戶政府、法律、文化開發(fā)人員、管理人員競(jìng)爭(zhēng)對(duì)手…但并不是直接從涉眾中來(lái)你們的需求是什么?65涉眾無(wú)法直接提供需求涉眾無(wú)法陳述自己的需要涉眾說(shuō)的是解決方案而不是需求涉眾難以構(gòu)想新的工作方法涉眾的利益矛盾涉眾抵制變更“最好也要有”—過(guò)度的要求需求引發(fā)需求66需求啟發(fā)技術(shù)需求工程師利用需求啟發(fā)技術(shù),從涉眾中發(fā)掘需求收集資料現(xiàn)場(chǎng)觀察訪談開會(huì)原型問(wèn)卷調(diào)查…672識(shí)別參與者(Actor)識(shí)別參與者關(guān)鍵詞:邊界參與者:在系統(tǒng)之外,透過(guò)系統(tǒng)邊界與系統(tǒng)進(jìn)行有意義交互的任何事物68參與者要點(diǎn)分析系統(tǒng)外參與者不是系統(tǒng)的一部分,處于系統(tǒng)的外部系統(tǒng)邊界參與者透過(guò)系統(tǒng)邊界直接與系統(tǒng)交互,參與者的確定代表系統(tǒng)邊界的確定系統(tǒng)角色參與者與使用系統(tǒng)的物理人和職務(wù)沒(méi)有關(guān)系需要從參與系統(tǒng)的角色(作用)來(lái)尋找參與者與系統(tǒng)進(jìn)行信息交互系統(tǒng)需要關(guān)注其交互過(guò)程,即系統(tǒng)職責(zé)任何事物人、外系統(tǒng)、外部因素、時(shí)間69要點(diǎn):與系統(tǒng)進(jìn)行信息交互70要點(diǎn):任何事物71任何事物:小人與圣小豬-172小人與圣小豬-2眾所周知,用例圖中的參與者用一個(gè)小人表示。但是這個(gè)小人具有一定的誤導(dǎo)性,往往讓初學(xué)者(包括客戶)理解為一個(gè)真實(shí)的人。大多數(shù)UML學(xué)習(xí)者都要花好長(zhǎng)一段時(shí)間來(lái)搞明白小人其實(shí)不一定代表的是人,而是很抽象的系統(tǒng)不可控的外部因素,比如說(shuō)另一個(gè)系統(tǒng)。那么為什么不干脆用其它的符號(hào)來(lái)表示參與者呢?如果我開發(fā)一個(gè)豬圈自動(dòng)供食供水系統(tǒng),豬的前蹄觸發(fā)一個(gè)開關(guān)系統(tǒng)就供食或供水。顯然,這里的參與者是小豬。那么在用例圖里用小豬代替原來(lái)的小人不是更易于交流嗎?73思考:參與者與系統(tǒng)邊界?某企業(yè)要求開發(fā)一個(gè)企業(yè)信息管理系統(tǒng),并與原來(lái)已有的庫(kù)存系統(tǒng)相連接某企業(yè)要求開發(fā)一個(gè)企業(yè)信息管理系統(tǒng),并把原來(lái)已有的庫(kù)存管理系統(tǒng)加以改造,成為企業(yè)信息管理系統(tǒng)的一部分74識(shí)別參與者的思路可以從以下要點(diǎn)來(lái)識(shí)別參與者系統(tǒng)在哪些部門使用誰(shuí)向系統(tǒng)提供信息、使用和刪除信息。誰(shuí)與系統(tǒng)的需求有關(guān)聯(lián)誰(shuí)使用系統(tǒng)的功能(用例)誰(shuí)對(duì)系統(tǒng)進(jìn)行維護(hù)與外部系統(tǒng)是否有關(guān)聯(lián)時(shí)間參與者:一種習(xí)慣用法,用于激活那些系統(tǒng)定期的、自動(dòng)執(zhí)行的用例75參與者的命名對(duì)參與者賦予能更好地表達(dá)其角色(作用)的名稱不好的參與者命名的例子:用職務(wù)名稱和個(gè)人姓名來(lái)命名例如,張三、老李、校長(zhǎng)、科長(zhǎng)…若使用系統(tǒng)的人(職務(wù)名稱)變化的話,就不是參與者了好的參與者命名的例子:用能知道其角色的名稱來(lái)命名例如,學(xué)生、訂單管理員、維護(hù)部門…即使使用系統(tǒng)的人改變,從系統(tǒng)來(lái)看,使用者的角色(作用)是相同的。76參與者之間的關(guān)系:泛化參與者可以通過(guò)泛化關(guān)系來(lái)定義,在這種泛化關(guān)系中,一個(gè)參與者的抽象描述可以被一個(gè)或多個(gè)具體的參與者所共享如系統(tǒng)中經(jīng)理可以參加雇員的所有用例77參與者地位識(shí)別用例之前—重要有助于識(shí)別用例,寧多勿少開始書寫用例文檔以后—不重要涉及的參與者太多測(cè)試和部署階段—重要需要從參與者的角度考慮783識(shí)別用例關(guān)鍵詞:價(jià)值定義用例實(shí)例是系統(tǒng)執(zhí)行的一系列動(dòng)作,這些動(dòng)作將生成特定參與者可觀測(cè)的結(jié)果值一個(gè)用例定義一組用例實(shí)例(場(chǎng)景)簡(jiǎn)潔:參與者使用系統(tǒng)達(dá)到某個(gè)目標(biāo)79用例要點(diǎn)可觀測(cè)→用例止于系統(tǒng)邊界結(jié)果值→用例是有意義的目標(biāo)系統(tǒng)執(zhí)行→結(jié)果值由系統(tǒng)生成由參與者觀測(cè)→業(yè)務(wù)語(yǔ)言、用戶觀點(diǎn)一組用例實(shí)例→用例的粒度80要點(diǎn):有意義的目標(biāo)81要點(diǎn):結(jié)果值由系統(tǒng)生成系統(tǒng)需要處理的,由系統(tǒng)生成82要點(diǎn):用戶觀點(diǎn)而非系統(tǒng)觀點(diǎn)用戶觀點(diǎn)系統(tǒng)觀點(diǎn)83用例的命名參與者視角:(狀語(yǔ))動(dòng)詞+(定語(yǔ)+)賓語(yǔ)84要點(diǎn):用例粒度-1用例是一組用例實(shí)例的抽象;其內(nèi)部要有路徑,路徑要有步驟最常犯錯(cuò)誤:粒度過(guò)細(xì),陷入功能分解通過(guò)執(zhí)行用例,參與者完成想做的事情(最終的目的),并為參與者產(chǎn)生價(jià)值過(guò)細(xì)的粒度,一般都會(huì)導(dǎo)致技術(shù)語(yǔ)言的描述,而不再是業(yè)務(wù)語(yǔ)言85用例粒度-2把步驟當(dāng)用例把系統(tǒng)活動(dòng)當(dāng)用例86用例粒度-3“四輪馬車”C(Create)
R(Read)
U(Update)
D(Delete)所有業(yè)務(wù)最終對(duì)會(huì)成為CRUD?CRUD能為Actor提供價(jià)值?CRUD掩蓋業(yè)務(wù),銳變成關(guān)系數(shù)據(jù)庫(kù)的建模:“系統(tǒng)就是數(shù)據(jù)的增刪改查”關(guān)心數(shù)據(jù)的存儲(chǔ)和維護(hù),反而忽略了用戶的目的87用例粒度-4如果確實(shí)是CRUD?如果CRUD不涉及復(fù)雜的交互,一個(gè)用例“管理××”即可不管是C、R、U、D,都是為了完成“管理”目標(biāo)甚至很多種的基本數(shù)據(jù)管理都可以用一個(gè)用例表示88用例粒度-5靈活處理CRUD可以把包含復(fù)雜交互的路徑獨(dú)立出去形成用例89找出用例的思路用例要考慮如下要點(diǎn)來(lái)尋找。參與者的工作是什么參與者的角色(作用)是什么參與者是否生成、參照、刪除系統(tǒng)信息參與者是否需要把外部變更通知給系統(tǒng)系統(tǒng)是否需要把內(nèi)部事情通知給參與者是否存在進(jìn)行系統(tǒng)維護(hù)的用例用例數(shù)量的參考基準(zhǔn)1個(gè)系統(tǒng)中存在十幾個(gè)用例(或更少)1個(gè)用例中有多個(gè)用例實(shí)例(場(chǎng)景)90UML2.4中的常見(jiàn)的14種圖UML2.4-圖Diagrams類圖ClassDiagrams對(duì)象圖ObjectDiagrams構(gòu)件圖ComponentDiagrams部署圖DeploymentDiagrams用例圖UseCaseDiagrams順序圖SequenceDiagrams通信圖CommunicationDiagrams狀態(tài)機(jī)圖StateMachineDiagrams活動(dòng)圖ActivityDiagrams靜態(tài)模型
(系統(tǒng)結(jié)構(gòu))動(dòng)態(tài)模型
(系統(tǒng)行為)包圖PackageDiagrams組合結(jié)構(gòu)圖CompositeStructureDiagrams時(shí)間圖TimingDiagrams交互縱覽圖InteractionOverviewDiagrams外廓圖ProfileDiagrams91畫用例圖的基本元素附錄2-1.UML元語(yǔ)用例圖元語(yǔ)返回用例圖94活動(dòng)圖元語(yǔ)返回活動(dòng)圖95類圖、對(duì)象圖、包圖元語(yǔ)返回靜態(tài)結(jié)構(gòu)圖96組合結(jié)構(gòu)圖元語(yǔ)返回組合結(jié)構(gòu)圖97順序圖元語(yǔ)返回順序圖98通信圖元語(yǔ)返回通信圖99交互縱覽圖元語(yǔ)返回交互縱覽圖100時(shí)間圖元語(yǔ)返回時(shí)間圖101狀態(tài)機(jī)圖元語(yǔ)返回狀態(tài)機(jī)圖102構(gòu)件圖元語(yǔ)返回構(gòu)件圖103部署圖元語(yǔ)返回部署圖104外廓圖返回外廓圖1054構(gòu)建用例圖用例圖:表達(dá)參與者與用例關(guān)系圖形106內(nèi)容安排從業(yè)務(wù)模型獲取需求建立用例模型編寫用例文檔重構(gòu)用例模型其它問(wèn)題107撰寫用例文檔用例文檔:更進(jìn)一步的精度需求規(guī)格說(shuō)明書的核心,而用例圖作為用例文檔的索引圖進(jìn)一步的精度:有層次的文檔文檔中每一句話都有其價(jià)值用例圖是骨架,而用例文檔則是其內(nèi)在的肉108用例文檔的組成用例標(biāo)識(shí)(UC)、名稱、描述涉及的參與者、涉及的用例涉眾利益前置條件、后置條件事件流基本路徑備選路徑補(bǔ)充約束字段列表、業(yè)務(wù)規(guī)則非功能需求、設(shè)計(jì)約束待解決問(wèn)題相關(guān)圖(用例圖、活動(dòng)圖、類圖)109用例文檔參考模板用例名用例名稱,與用例圖中的名稱保持一致簡(jiǎn)要描述用簡(jiǎn)單的幾句話說(shuō)明用例本身以及使用它的原因參與者與該用例相關(guān)的參與者,應(yīng)與用例圖保持一致涉眾與該用例相關(guān)的其他用戶或部門,該用例的執(zhí)行會(huì)對(duì)這些用戶產(chǎn)生影響相關(guān)用例與該用例存在關(guān)系的用例,對(duì)于不同的關(guān)系可采用不同的表示方式前置條件執(zhí)行該用例之前必須滿足的條件后置條件在該用例執(zhí)行之后,系統(tǒng)所達(dá)到的狀態(tài)基本事件流描述用例在最通常情況下所發(fā)生的事件流的執(zhí)行步驟,采用編號(hào)的方式表示發(fā)生的先后順序;對(duì)于復(fù)雜的事件流還可以采用子流的方式分解為多個(gè)事件流進(jìn)行表述備選事件流描述用例基本流程可能出現(xiàn)的分支事件或異常事件補(bǔ)充約束描述與該用例相關(guān)的約束,包括數(shù)據(jù)需求、業(yè)務(wù)規(guī)則、非功能需求、設(shè)計(jì)約束等待解決問(wèn)題說(shuō)明該用例日前還未明確的相關(guān)問(wèn)題相關(guān)圖與該用例相關(guān)的其他圖形,可以是標(biāo)準(zhǔn)的UML圖,如活動(dòng)圖、類圖等,也可以是其他格式的圖形。尋找涉眾的思路區(qū)分涉眾與參與者涉眾是與當(dāng)前用例存在利益關(guān)系的人或組織參與者是啟動(dòng)或參與用例執(zhí)行過(guò)程的人或外部事物可能的涉眾有:當(dāng)事人上游下游操作對(duì)象的主人…111前置、后置條件前置條件約束在用例開始前系統(tǒng)的狀態(tài)作為用例的入口限制,它阻止參與者觸發(fā)該用例直到滿足所有條件說(shuō)明在用例觸發(fā)之前什么必須為真后置條件約束用例執(zhí)行后系統(tǒng)的狀態(tài)用例執(zhí)行后什么必須為真對(duì)于存在各種分支事件流的用例,則可以指定多個(gè)后置條件把用例看作是參與者與系統(tǒng)交互的流程,前置條件和后置條件則是這個(gè)流程的入口和出口狀態(tài)。如圖直線箭頭表示基本事件流,曲線箭頭代表各種備選事件流,注意前置條件和后置條件所處位置112定義前置、后置條件前置、后置條件必須是系統(tǒng)能檢測(cè)到的前置條件必須是系統(tǒng)在用例開始前就能檢測(cè)到的113應(yīng)用前置、后置條件某些用例依賴于其他用例一個(gè)用例在離開系統(tǒng)時(shí),可能是另一個(gè)用例的前置條件(例如:“登錄”和“管理系統(tǒng)”)有助于識(shí)別漏掉的用例如果一個(gè)用例的前置條件不能有執(zhí)行其他用例滿足,可能意味著丟失了用例(例如:“管理訂單”卻沒(méi)有“登錄”用例)114事件流描述-用例交互四部曲1.動(dòng)作4.響應(yīng)2.驗(yàn)證3.處理系統(tǒng)重點(diǎn)寫:1和4(可觀測(cè)的、體現(xiàn)客戶利益的文字)用例的核心內(nèi)容就是參與者和系統(tǒng)交互的過(guò)程,這個(gè)交互過(guò)程在用例文檔中采用事件流的方式進(jìn)行完整的表示。如圖115事件流描述要點(diǎn)事件流描述要使用戶和開發(fā)人員互相理解用例的功能,要注意以下幾點(diǎn):使用業(yè)務(wù)語(yǔ)言:使用用戶平時(shí)所使用的語(yǔ)言進(jìn)行描述要明確參與者與系統(tǒng)所交互的信息不使用[例如]、[等]這樣的不清晰的表達(dá)不要過(guò)多地考慮界面細(xì)節(jié)不要描述計(jì)算機(jī)內(nèi)部的處理,要描述從系統(tǒng)外部所看到的活動(dòng)除了基本流程,還要描述替代流程要明確描述用例的開始和結(jié)束116例1:使用業(yè)務(wù)語(yǔ)言技術(shù)語(yǔ)言:無(wú)法與用戶溝通系統(tǒng)通過(guò)JDBC建立數(shù)據(jù)庫(kù)連接,傳送SQL查詢語(yǔ)句,從“商品表”查詢商品的詳細(xì)信息…業(yè)務(wù)語(yǔ)言(用戶語(yǔ)言)系統(tǒng)按照查詢條件搜索商品的詳細(xì)信息117例2:描述參與者與系統(tǒng)交互過(guò)程以參與者或系統(tǒng)作為主語(yǔ)描述參與者……系統(tǒng)……示例出納員接收顧客的付款—顧客的付款數(shù)可能高于商品總額出納員錄入顧客所付的現(xiàn)金總額系統(tǒng)顯示出應(yīng)找還給顧客的余額,打印付款收據(jù)118例3:不細(xì)化界面細(xì)節(jié)過(guò)細(xì)的界面細(xì)節(jié)描述會(huì)員從下拉框中選擇類別會(huì)員在相應(yīng)文本框中輸入查詢條件會(huì)員點(diǎn)擊“確定”按鈕119例4:分支和循環(huán)的描述分支:放到備選路徑中參與者的選擇另一條成功線路系統(tǒng)進(jìn)行驗(yàn)證……循環(huán):直接描述120用例文檔中的補(bǔ)充約束用例重點(diǎn)在于描述功能需求,而其它方面的補(bǔ)充約束采用兩種處理策略:與特定用例相關(guān)的補(bǔ)充約束,作為該用例文檔中一部分來(lái)描述一些全局性的補(bǔ)充約束,單獨(dú)形成一份獨(dú)立的文檔,如“補(bǔ)充需求規(guī)約”文檔補(bǔ)充約束字段列表業(yè)務(wù)規(guī)則非功能需求設(shè)計(jì)約束121實(shí)例分析:撰寫用例文檔用例文檔參考模板旅店預(yù)訂系統(tǒng)用例文檔“UC01-預(yù)訂房間”用例文檔122內(nèi)容安排從業(yè)務(wù)模型獲取需求建立用例模型編寫用例文檔重構(gòu)用例模型其它問(wèn)題123重構(gòu)用例模型對(duì)于一些復(fù)雜的系統(tǒng),用例可能很多,所以可以利用用例建模高級(jí)技術(shù)重構(gòu)用例模型用例關(guān)系通過(guò)用例關(guān)系將復(fù)雜的用例進(jìn)行適當(dāng)?shù)姆纸?,以便于提高需求的?fù)用性和可擴(kuò)展性等,從而使用例模型的結(jié)構(gòu)更合理用例分級(jí)可以根據(jù)用例的重要程度進(jìn)行分級(jí),以便后續(xù)迭代計(jì)劃的制定,高級(jí)別的用例優(yōu)先考慮用例分包將相關(guān)的用例打包,通過(guò)分包的方式可以將用例圖分層表示,以用于大規(guī)模系統(tǒng)的用例建模124用例關(guān)系<<include>><<extend>>擴(kuò)展包含泛化125通過(guò)關(guān)系整理文檔Extend(擴(kuò)展)通過(guò)擴(kuò)展用例對(duì)基用例增加附加的行為Include
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 存量房買賣合同修訂
- 三農(nóng)田水利設(shè)施防洪抗旱方案
- 交通行業(yè)車輛排放標(biāo)準(zhǔn)比較表
- 防災(zāi)減災(zāi)活動(dòng)方案
- 放飛心中的夢(mèng)想主題班會(huì)方案
- 2024年氯甲烷項(xiàng)目投資申請(qǐng)報(bào)告代可行性研究報(bào)告
- 2025屆湖南省交通規(guī)劃勘察設(shè)計(jì)院有限公司校園招聘34人筆試參考題庫(kù)附帶答案詳解
- 2024-2025學(xué)年第二學(xué)期天域全國(guó)名校協(xié)作體高三3月聯(lián)考 語(yǔ)文試卷(含答案)
- 2025寧夏寧魯石化有限公司招聘40人筆試參考題庫(kù)附帶答案詳解
- 2025年上半年宜昌猇亭區(qū)城管協(xié)管員招考易考易錯(cuò)模擬試題(共500題)試卷后附參考答案
- 中國(guó)旅游地理(高職)全套教學(xué)課件
- 護(hù)理安全警示案例及分析
- 學(xué)習(xí)委員培訓(xùn)課件
- DB11T 2207-2023 市政橋梁工程數(shù)字化建造標(biāo)準(zhǔn)
- 科華UPS培訓(xùn)資料
- 公務(wù)員考試應(yīng)急處理預(yù)案
- 醫(yī)院安全生產(chǎn)試卷及答案
- 醫(yī)療機(jī)構(gòu)資產(chǎn)評(píng)估報(bào)告
- 5s管理考核標(biāo)準(zhǔn)
- 復(fù)方板藍(lán)根顆粒工藝驗(yàn)證方案大全
- 高效空調(diào)制冷機(jī)房智能控制系統(tǒng)技術(shù)規(guī)程
評(píng)論
0/150
提交評(píng)論