新聞中心
本文和大家重點(diǎn)討論一下UML各種圖形的表達(dá)焦點(diǎn)和語言特點(diǎn),用例圖的目的并不是表達(dá)流程,而是系統(tǒng)對外服務(wù)的門,而狀態(tài)圖的焦點(diǎn)在一個對象上,每種圖形都有各自的特點(diǎn)。下面請看本文的詳細(xì)介紹吧。

成都創(chuàng)新互聯(lián)公司專業(yè)為企業(yè)提供青云譜網(wǎng)站建設(shè)、青云譜做網(wǎng)站、青云譜網(wǎng)站設(shè)計(jì)、青云譜網(wǎng)站制作等企業(yè)網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計(jì)與制作、青云譜企業(yè)網(wǎng)站模板建站服務(wù),十載青云譜做網(wǎng)站經(jīng)驗(yàn),不只是建網(wǎng)站,更提供有價值的思路和整體網(wǎng)絡(luò)服務(wù)。
分辨UML各種圖形的表達(dá)焦點(diǎn)和語言特點(diǎn)
用例圖:
正像嘉文所說,用例圖的目的并不是表達(dá)流程,而是系統(tǒng)對外服務(wù)的門。是系統(tǒng)存在的真正價值所在。所以,它的焦點(diǎn)是用戶和它的意圖(價值目標(biāo))。但是,為什么在用例場景中有時要表達(dá)那些系統(tǒng)內(nèi)部的并不外現(xiàn)的內(nèi)容呢?說到底,那是表達(dá)了用戶在實(shí)現(xiàn)這個目標(biāo)的過程中涉及到了其它相關(guān)利益者。雖然它們不在場,但是它們的互交契約仍在起作用。所以,用例圖進(jìn)一步表達(dá)了人物之間的契約關(guān)系,可以視為是靜態(tài)關(guān)系,而不是流程(不含真正的時間序列)。
狀態(tài)圖:
焦點(diǎn)在一個對象上,一個對象響應(yīng)多個動詞(消息),可以表達(dá)實(shí)時性。
協(xié)作圖:
UML各種圖形中協(xié)作圖的焦點(diǎn)在一個動詞(腳本),多個對象圍繞一個動詞,即可表達(dá)靜態(tài)協(xié)作關(guān)系,也可以更進(jìn)一步表達(dá)各個角色的協(xié)作順序關(guān)系。
順序圖:
多個對象之間的交互關(guān)系。多個對象,多個動詞。提供最完整的對象模型:刺激響應(yīng)等待模型,無頭無尾,是一個全局表達(dá)模式。
刺激響應(yīng)模型是在表達(dá)順序呢還是在表達(dá)間斷呢?我看更在表達(dá)等待中的間斷狀態(tài)。
所以說是個等待響應(yīng)的模型。正是在這里,它與流程方法關(guān)注的不同,它不是自動執(zhí)行到底的,或者說凡是可以自動執(zhí)行到底的活動腳本并不是我們表達(dá)的重點(diǎn),那是DFD流程圖的重點(diǎn)。我們可以反過來問,為什么不繼續(xù)執(zhí)行活動了呢?因?yàn)槲覀冊诘却盘?。這也是個對象適應(yīng)環(huán)境刺激的模型。
DFD數(shù)據(jù)流圖:
表達(dá)了一個動詞的內(nèi)在含義,即定義了傳遞函數(shù):將輸入轉(zhuǎn)換為輸出的算法。
活動圖:
以一個完整業(yè)務(wù)中多個動詞之間的起始終止關(guān)系為焦點(diǎn),是真正意義上的業(yè)務(wù)流程圖。因?yàn)樗梢员磉_(dá)活動的轉(zhuǎn)移條件,并行活動。特別重視一個活動的起始與終止。與DFD數(shù)據(jù)流程圖相比,它關(guān)注的是單個活動外部之間的邏輯關(guān)系,而不是這個活動的內(nèi)部含義。所以它適合作為工作流的描述模型。特別是活動圖同時也畫出活動的發(fā)起者,即所謂的泳道圖,這正是工作流的元語言模型所要求的。
健壯圖:
UML各種圖形中健壯圖在反映業(yè)務(wù)需求的用例圖和系統(tǒng)實(shí)現(xiàn)的順序圖之間。也就是把每個用例落實(shí)為所謂三層結(jié)構(gòu):邊界對象,控制對象和實(shí)體對象(數(shù)據(jù)庫)。
這就是嘉文所說的軟件對象。軟件對象與業(yè)務(wù)對象是兩個不同的概念,軟件對象中有許多不符合自然語言的東西。比如,一個表單是個對象,它常把對它的操作動作定義為它的行為方法,比如所謂的CUDI等,這是顛倒了主語與賓語,混淆了主動與被動,特別讓業(yè)務(wù)人員別扭,是要去對象化的重要原因。真正的業(yè)務(wù)需求分析語言,應(yīng)該去掉這些中間對象,留下外部對象,如人物,還原實(shí)體對象的被動性?,F(xiàn)在的工作流模型元語言就區(qū)分為:動作提供者,動作活動,輸入輸出數(shù)據(jù)(被處理對象),動作控制信息四個部分。
比較系統(tǒng)論的狀態(tài)方程
UML各種圖形中如果把對象主動發(fā)出的控制信息(消息)與對象被動狀態(tài)相聯(lián)系,同時關(guān)注多個對象的狀態(tài)轉(zhuǎn)移圖,從而形成封閉的面向?qū)ο蟮拇碳し磻?yīng)模型,把狀態(tài)圖,順序圖和DFD數(shù)據(jù)流程圖表達(dá)的有機(jī)融為一體。
這個模型就是有限自動機(jī)模型,也就是系統(tǒng)論中大名鼎鼎的狀態(tài)方程。在這里,狀態(tài)轉(zhuǎn)移函數(shù)既表達(dá)了DFD的傳遞函數(shù),也表達(dá)了對象的狀態(tài)圖,而多個對象之間的刺激響應(yīng)的封閉關(guān)系,則表達(dá)了順序圖面向?qū)ο蟮目傮w模型。
附錄:
有限自動機(jī)的數(shù)學(xué)定義(就是狀態(tài)方程的離散形式):
一個有限自動機(jī)M是指一個五元組:M=(Q,I,O,δ,F),
其中Q表示狀態(tài),I是輸入,O為輸出,δ是狀態(tài)轉(zhuǎn)移函數(shù),
F是狀態(tài)到輸出O的映射函數(shù)。
則有:
Qn+1=δ(Qn,In),即下一時刻的狀態(tài)值Qn+1由前一時刻的狀態(tài)Qn與前一時刻的
輸入In共同決定。
比如一般可用矩陣來表達(dá)δ轉(zhuǎn)移函數(shù):Qn+1=Qn×In。
On=F(Qn),即此刻的輸出值是由此刻的狀態(tài)值惟一決定,注意與當(dāng)前的輸入值并無直接關(guān)系。
【編輯推薦】
- UML各種圖形的重要性排行
- UML各種圖形的建立步驟專家指導(dǎo)
- 繪制UML圖時應(yīng)避免的六大問題
- UML部署圖繪制及應(yīng)用說明
- 九步實(shí)現(xiàn)UML包圖創(chuàng)建
標(biāo)題名稱:分辨UML各種圖形的表達(dá)焦點(diǎn)和語言特點(diǎn)
網(wǎng)頁URL:http://www.5511xx.com/article/djghdec.html


咨詢
建站咨詢
