[工作筆記]關於UML的一點小分享. 前言 - Lily Ho
文章推薦指數: 80 %
大學時期的程式課上學過如何畫程式的流程圖(點我看更多關於流程圖的介紹)來確認程式邏輯和架構、釐清思路,透過特定圖形取代固定文字來簡化說明,例如:橢圓形表示開始 ...
UpgradeOpeninappHomeNotificationsListsStoriesWrite[工作筆記]關於UML的一點小分享前言大學時期的程式課上學過如何畫程式的流程圖(點我看更多關於流程圖的介紹)來確認程式邏輯和架構、釐清思路,透過特定圖形取代固定文字來簡化說明,例如:橢圓形表示開始或結束、方形表示事件、菱形表示是否判斷的那種程式流程圖,像這樣:圖片取自http://www2.lssh.tp.edu.tw/~hlf/class-1/lang-c/flow/flow-chat.htm網站的範例什麼是UML在去年參加的曼陀號其中一次月會上,Mosky給了我們其中一項作業是去了解UML(UnifiedModelingLanguage,統一塑模語言)並完成一個實作。
一開始我完全沒聽過UML,花了點時間研究才發現原來以前學過的程式流程圖也算是UML的其中一種(更詳細介紹可以參考這個:維基百科-統一塑模語言)。
因為UML是透過被定義的圖形和符號來表達邏輯概念和需求分析,不需要撰寫或瞭解程式碼,很常被用在軟體架構、甚至是工業流程的可視化和說明,讓新來的人更容易了解內容、進入狀況。
在UML系統裡定義了14種不同類型的圖示,每種圖示都是針對不同強調的主題設計出來的架構,不過UML圖畫出來是為了要讓人更容易了解其內容,因此有很多種不同的變形方式,不同圖示的結構結合在一起也有特別的表達方式。
學會UML之後我在那次月會討論中分享了學習UML後,畫出在請假系統網站上登入功能的流程狀態說明,以及系統中的角色用例圖。
曼陀號月會中我分享自己畫的兩個UML圖後來在去年Q3左右也使用了UML,把公司內部已定型的開發流程說明畫了出來。
其實公司之前就有一份文字檔的開發流程文件,不過因為最近做法有調整,我就想趁機練習,把整個流程畫成(或許)更容易理解的UML圖,讓新進的人更能快速理解我們每次開發軟體版本的流程。
一開始我是畫在紙上,畫好之後和主管稍微討論了下,大致確認過內容後我就改使用draw.io(點我進網站)把整個流程製作成電子檔。
詳細的操作就不在這邊詳述,大家可以點這裡參考電腦玩物的這篇draw.io使用介紹。
最後也輸出成紙本貼在辦公室牆上給其他同事參考。
掛出來的成品,我是故意讓照片不清楚的,因為文字內容不是重點XD這次做出來的開發流程圖和一般程式流程圖我認為最大的差別是,我在畫開發流程圖的時候把UML循序圖的概念用了進去,將整個圖的橫軸切割成四個欄,用來代表四個不同角色(工程師、主管、客戶A、客戶B);另外也將垂直軸切割成五個列,代表開發到上線整個過程中的五個階段(需求分析、開發及單元測試、整合測試、交付、上線)。
我認為這樣套用可以讓開發流程更清楚地看出,在哪個階段要由哪個角色做哪些事情。
結語在畫過幾次UML圖後,發現其實這個方法在閱讀理解別人的思維上很好用,但如果自己還在思考邏輯架構、仍在分析階段的時候,就先畫UML圖型,在大幅度修改上就滿費時間的。
因為UML有很多規定的畫法,即便已經使用了圖形來簡化部分文字,但整個架構中間突然要插入點新想法時在修改上不是很方便。
我自己覺得如果想法架構已經確定的階段再做這種圖是比較好的選擇,如果還在整理思緒階段的話可以使用自己的簡筆符號或數學符號做紀錄先,等確定了整個架構在做成UML的形式給其他人參考,這樣也比較省時間和力氣。
其他參考資料UML入門:統一建模語言入門:http://www.dotspace.idv.tw/Jyemii/umlcolumn/articles/umlwriting/UMLBasics/UMLBasics.htmUML学习入门就这一篇文章:https://blog.csdn.net/soft_zzti/article/details/79811923?utm_source=copy25MorefromLilyHoFollow分享學到的小知識或心得,努力變成週更(ง๑•̀_•́)ง如果你覺得我的文章有趣或有幫助的話,請別吝嗇給我幾個拍手吧👏Lovepodcastsoraudiobooks?Learnonthegowithournewapp.TryKnowableGetstartedLilyHo53Followers分享學到的小知識或心得,努力變成週更(ง๑•̀_•́)ง如果你覺得我的文章有趣或有幫助的話,請別吝嗇給我幾個拍手吧👏FollowRelatedCinemaTheCinemaFlowersandfruitbowlsIliketobuymyselfflowersatthegrocerystore.Nottoooften,Ilikeittofeelindulgent.Thisistheheightofadultinessforme.I’mjustgoingtokeepwritingeventhoughthiscouldreallysuckandisaterribleplan.CovidvaccinationsvsSocialMediaBackground:HelpStatusWritersBlogCareersPrivacyTermsAboutKnowable
延伸文章資訊
- 1[工作筆記]關於UML的一點小分享. 前言 - Lily Ho
大學時期的程式課上學過如何畫程式的流程圖(點我看更多關於流程圖的介紹)來確認程式邏輯和架構、釐清思路,透過特定圖形取代固定文字來簡化說明,例如:橢圓形表示開始 ...
- 22022年最佳的8款流程圖軟體 - GitMind
- 3如何畫好一張架構圖?(內含知識圖譜)
本文從架構的定義說起,分享了阿里文娛高階技術專家簫逸關於畫架構圖多年 ... 如果要問程式設計師最重要的能力有哪些,我相信抽象一定是其中最重要的 ...
- 4程式設計師如何畫好架構圖? - 最鐵資訊
系統架構圖是為了抽象的表示軟體系統的整體輪廓和各個元件之間的相互關係和約束邊界,以及軟體系統的物理部署和軟體系統的演進方向的整體檢視。 3、架構圖 ...
- 5Draw.io 中文線上製作流程圖首選!專業水準完全免費 - 電 ...
最近在研究可以畫出流程圖、架構圖、線路圖、網站模板等圖表的製作工具,一開始先 ... 硬碟應用程式,這樣一來你可以從Google Drive 直接新增「 Draw.io 」的流程圖。