UML学习(一)-----用例图
1、什么是用例圖
用例圖源于Jacobson的OOSE方法,用例圖是需求分析的產(chǎn)物,描述了系統(tǒng)的參與者與系統(tǒng)進(jìn)行交互的功能,是參與者所能觀察和使用到的系統(tǒng)功能的模型圖。它的主要目的就是幫助開發(fā)團(tuán)隊(duì)以一種可視化的方式理解系統(tǒng)的功能需求,包括基于基本流程的“角色”關(guān)系以及系統(tǒng)各個(gè)功能之間的關(guān)系。它通過用例(Use Case)來捕獲系統(tǒng)的需求,再結(jié)合參與者(Actor)進(jìn)行系統(tǒng)功能需求的分析和設(shè)計(jì)。
2、用例圖的組成
用例圖有四部分組成:用例(Use Case)、參與者(Actor)、系統(tǒng)邊界、關(guān)聯(lián)
2.1 參與者?
在一個(gè)系統(tǒng)開發(fā)前,我們必定首先要確定系統(tǒng)的用戶,系統(tǒng)的用戶就是系統(tǒng)的參與者。除此以外,我們還會(huì)想打,我們開發(fā)的系統(tǒng)與其他的系統(tǒng)有什么關(guān)聯(lián)?因此,系統(tǒng)的參與者可分為兩類,一類是人,包括系統(tǒng)的使用者、維護(hù)者等,另外一類是其他系統(tǒng)。
2.2 用例
用例(Use Case)是參與者(Actor)可以感受到的系統(tǒng)服務(wù)或功能單元。
任何用例都不能在缺少參與者的情況下獨(dú)立存在。同樣,任何參與者也必須要有與之關(guān)聯(lián)的用例,所以識別用例的最好方法就是從分析系統(tǒng)參與者開始,在這個(gè)過程中往往會(huì)發(fā)現(xiàn)新的參與者。
用例是有粒度的,用例的粒度指的是用例所包含的系統(tǒng)服務(wù)或功能單元的多少。用例的粒度越大,用例包含的功能越多,反之則包含的功能越少。
2.3 系統(tǒng)邊界
所謂系統(tǒng)邊界是指系統(tǒng)與系統(tǒng)之間的界限。把系統(tǒng)邊界以外的同系統(tǒng)相關(guān)聯(lián)的其他部分稱之為系統(tǒng)環(huán)境。
2.4 關(guān)聯(lián)
為了減少模型維護(hù)的工作量、保證用例模型的可維護(hù)性和一致性,可以在用例之間抽象出包含(Include)、擴(kuò)展(Extend)和泛化(Generalization)這幾種關(guān)系
包含關(guān)系是指用例可以簡單地包含其他用例具有的行為,并把它所包含的用例行為作為自身行為的一部分。
?
擴(kuò)展關(guān)系是指在一定條件下,把新的行為加入到已有的用例中,獲得的新用例稱為擴(kuò)展用例(Extension),原有的用例稱為基礎(chǔ)用例(Base)。
泛化關(guān)系是指一個(gè)父用例可以被特化形成多個(gè)子用例,而父用例和子用例之間的關(guān)系就是泛化關(guān)系。
3、簡單登錄注冊系統(tǒng)用例圖
轉(zhuǎn)載于:https://www.cnblogs.com/tangdrogn/p/7742264.html
總結(jié)
以上是生活随笔為你收集整理的UML学习(一)-----用例图的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Python 字典 values() 方
- 下一篇: 【BZOJ4262】Sum 单调栈+线段