零碎技术栈01_UML画图分析
前言: Unified Modeling Language,直接翻譯就是統一建模語言,簡單地說就是一種有特殊用途的語言。UML畫圖共分為結構型和行為型兩種。
- UML圖為什么會分為結構型和行為型兩種呢?
- 顧名思義,結構型的圖描述的是某種結構,這種結構在某段時間內應該是穩定的、“靜態”的;而行為型的圖描述的是某種行為,是“動態”的。
以UML2.x版本分:
結構性:
- 類圖(Class Diagram)
- 對象圖(Object Diagram)
- 構件圖(Component Diagram)
- 部署圖(Deployment Diagram)
- 包圖(Package Diagram)
行為型:
- 用例圖(Use Case Diagram)
- 活動圖(Activity Diagram)
- 狀態機圖(State Machine Diagram)
- 順序圖/序列圖 (Sequence Diagram)
- 通信圖(Communication Diagram)
- 時序圖(Timing Diagram)
一、UML用例圖
原文鏈接:UML用例圖實例解析
UML用例圖包含了用例和參與者,用例之間用關聯來連接以求把系統的整個結構和功能反映給非技術人員(通常是軟件的用戶),對應的是軟件的結構和功能分解。
用例圖主要用來圖示化系統的主事件流程,它主要用來描述客戶的需求,即用戶希望系統具備的完成一定功能的動作,通俗地理解用例就是軟件的功能模塊,所以是設計系統分析階段的起點,設計人員根據客戶的需求來創建和解釋用例圖,用來描述軟件應具備哪些功能模塊以及這些模塊之間的調用關系,UML用例圖包含了用例和參與者,用例之間用關聯來連接以求把系統的整個結構和功能反映給非技術人員(通常是軟件的用戶),對應的是軟件的結構和功能分解。
用例是從系統外部可見的行為,是系統為某一個或幾個參與者(Actor)提供的一段完整的服務。從原則上來講,用例之間都是獨立、并列的,它們之間并不存在著包含從屬關系。但是為了體現一些用例之間的業務關系,提高可維護性和一致性,用例之間可以抽象出關聯(association)、泛化(generalization)、包含(include)和擴展(extend)四種關系。
后三個共性:都是從現有的用例中抽取出公共的那部分信息,作為一個單獨的用例,然后通后過不同的方法來重用這個公共的用例,以減少模型維護的工作量。
1.1 關聯(association)
表示參與者與用例之間的通信,任何一方都可發送或接受消息。
- 【箭頭指向】:指向消息接收方
1.2 泛化(inheritance)
就是通常理解的繼承關系,子用例和父用例相似,但表現出更特別的行為;子用例將繼承父用例的所有結構、行為和關系。子用例可以使用父用例的一段行為,也可以重載它。父用例通常是抽象的。
- 【箭頭指向】:指向父用例
1.3 包含(include)
包含關系用來把一個較復雜用例所表示的功能分解成較小的步驟。
- 【箭頭指向】:指向分解出來的功能用例
理解: 例如:業務中,總是存在著維護某某信息的功能,如果將它作為一個用例,那新建、編輯以及修改都要在用例詳述中描述,過于復雜;如果分成新建用例、編輯用例和刪除用例,則劃分太細。這時包含關系可以用來理清關系。
1.4 擴展(extend)
擴展關系是指用例功能的延伸,相當于為基礎用例提供一個附加功能。
- 【箭頭指向】:指向基礎用例
理解: 例如,系統中允許用戶對查詢的結果進行導出、打印。對于查詢而言,能不能導出、打印查詢都是一樣的,導出、打印是不可見的。導入、打印和查詢相對獨立,而且為查詢添加了新行為。
總結
以上是生活随笔為你收集整理的零碎技术栈01_UML画图分析的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: mysql 自动备份删除_mysql自动
- 下一篇: 简易贪吃蛇c语言贴吧,熬书几个月,终于编