新聞中心
本文和大家重點(diǎn)討論一下畫UML流程圖時(shí)需要注意的問(wèn)題,軟件開發(fā)中,分析和設(shè)計(jì)時(shí),文檔的編寫和思想的交流,經(jīng)常要繪制各種各樣的圖。

專注于為中小企業(yè)提供成都做網(wǎng)站、成都網(wǎng)站制作服務(wù),電腦端+手機(jī)端+微信端的三站合一,更高效的管理,為中小企業(yè)謝家集免費(fèi)做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動(dòng)了上千家企業(yè)的穩(wěn)健成長(zhǎng),幫助中小企業(yè)通過(guò)網(wǎng)站建設(shè)實(shí)現(xiàn)規(guī)模擴(kuò)充和轉(zhuǎn)變。
畫UML流程圖時(shí)需要注意的問(wèn)題
軟件開發(fā)中,分析和設(shè)計(jì)時(shí),文檔的編寫和思想的交流,經(jīng)常要繪制各種各樣的圖。相對(duì)于人類的自然語(yǔ)言,描繪復(fù)雜結(jié)構(gòu),圖具有直觀和整體的特征,有著不可替代的表現(xiàn)力。
軟件開發(fā)是創(chuàng)造性的勞動(dòng),開發(fā)人員幾乎在每一分鐘都要做出某些選擇,每一個(gè)選擇都好像決定著最后的結(jié)果。繪圖的時(shí)候也是如此,腦中有完整或不完整的想法,要清晰的表現(xiàn)出來(lái)時(shí)相當(dāng)不容易。事實(shí)上,我發(fā)現(xiàn)許多老手不會(huì)畫圖。
在畫UML流程圖實(shí)踐的過(guò)程中,我總結(jié)了一些經(jīng)驗(yàn),得出了一些結(jié)論。
1.不畫沒有必要的圖。
如果簡(jiǎn)單的文字就能說(shuō)得很清楚,還畫圖干什么?對(duì)代碼級(jí)別的細(xì)節(jié),不要畫圖來(lái)表現(xiàn);不要借助圖來(lái)讓你的文檔得變大;畫蛇莫要添足。
2.忽略底層的細(xì)節(jié)。
軟件是一個(gè)多層的東西,一個(gè)圖只展現(xiàn)恰當(dāng)抽象層次之上的細(xì)節(jié)。一個(gè)過(guò)細(xì)的圖,大量的信息會(huì)掩蓋真正重要的東西。比如:在一個(gè)流程圖上,不需要把“文件打開的錯(cuò)誤判斷”也作為一個(gè)分支畫在圖上,除非你“無(wú)聊到”要強(qiáng)調(diào)這個(gè)顯而易見的異常處理;
3.圖不要太大。
UML流程圖中如果一個(gè)圖上包含上百個(gè)對(duì)象,看起來(lái)不舒服,應(yīng)該化整為零,使用多個(gè)圖,每個(gè)圖描述不同的部分。
4.畫純種的圖。
圖傳遞的信息應(yīng)該明確,無(wú)歧義。一定要明確圖中的各個(gè)組成元素都是什么東西,整個(gè)圖要表現(xiàn)什么。盡量使用規(guī)范的圖。比如:流程圖中,應(yīng)關(guān)注控制的傳遞,不要有從文件中讀取數(shù)據(jù)的數(shù)據(jù)流;軟件結(jié)構(gòu)圖中,描述模塊之間的父子關(guān)系的同時(shí),不要有模塊之間的數(shù)據(jù)流。我常見到這樣的圖:在圖中既有“控制流”,也有“數(shù)據(jù)流”,不倫不類,名之曰“示意圖”。個(gè)人認(rèn)為,交流時(shí),這種示意圖在白板上隨手畫畫還可以,決不應(yīng)該出現(xiàn)在正式的文檔上。
這些圖中的控制流,實(shí)是一個(gè)模糊概念,A->B可以表示:
1)A調(diào)用B,把控制傳遞給B;
2)A啟動(dòng)B,把控制傳遞給B;
3)A向B傳遞一個(gè)控制信號(hào);
4)有一個(gè)第三者調(diào)用A完成后,馬上調(diào)用B。
5.圖的布局要簡(jiǎn)潔,美觀。
我聽說(shuō):書寫大幅的毛筆字,特別講究布局。同樣道理,畫UML流程圖,盡量密度分布均勻,減少連線的交叉。為了減少連線的交叉,同樣的單元可以在圖中出現(xiàn)多次。
6.其實(shí)并不需要完備的圖。
使用UML有三種方式:UMLassketch(草圖),使用不完備的圖進(jìn)行系統(tǒng)某一部分或某一方面的內(nèi)容進(jìn)行交流;UMLasblueprint(籃圖),通過(guò)完備的UML圖表現(xiàn)詳細(xì)設(shè)計(jì)的所有決定;UMLasprogramminglanguage,自動(dòng)精確的UML圖,直接編譯成可執(zhí)行的代碼(現(xiàn)在好像還沒有實(shí)現(xiàn))。MartinFowler說(shuō):使用UML繪制草圖的人,真正關(guān)注UML的精髓(大師就是大師,說(shuō)話就是不一樣)。所謂“不足勝有余”,不管什么圖,圖應(yīng)該集中表現(xiàn)其關(guān)注的方面,恰當(dāng)?shù)暮雎砸恍┘?xì)節(jié)時(shí)必要的。類圖中,往往沒有必要包含類的所有函數(shù)合成員說(shuō)明;在表現(xiàn)對(duì)象之間協(xié)作的順序圖中,大多時(shí)候也沒有必要表現(xiàn)存在的分支和循環(huán)。
7.所有的規(guī)則都是用來(lái)遵守和打破的。
上面的所有道理,也并非是不變的真理。但是,道理被打破以前,你應(yīng)該了解它,熟悉它,批評(píng)它,忘記它(追求類似張三豐太極劍的境界)。古人云:事有反道而適權(quán),偽經(jīng)而和道者。笑傲江湖說(shuō):獨(dú)孤九劍,無(wú)招勝有招。蕭大俠:刪繁就簡(jiǎn),取精用宏。規(guī)勸朋友也規(guī)勸自己:連有招的境界尚未達(dá)到,應(yīng)該知道自己該做什么。
【編輯推薦】
- Visio畫UML圖基本操作及技巧解析
- 實(shí)例介紹用Visio畫UML流程圖方法
- UML圖中用例圖和活動(dòng)圖簡(jiǎn)介
- 整潔的UML圖如何繪制?
- UML中各種UML圖形的建立步驟簡(jiǎn)明介紹
新聞標(biāo)題:專家提醒畫UML流程圖時(shí)需要注意的幾個(gè)問(wèn)題
文章URL:http://www.5511xx.com/article/cdhdech.html


咨詢
建站咨詢
