轉自:http://www.2cto.com/os/201502/377091.html
最近准備研究下volley的源碼,但看了網上一些大牛的博客都是配合圖這樣看起來更直觀,分析起來邏輯也很好,什么類圖可以很清晰的分析下各類之間的關系,怎么樣抽取的,所以首先先學習下建模的工具軟件,我是用了start uml作為畫圖工具,start uml可以畫用例圖 類圖 時序圖 部署圖等,哪就一個一個耐心的去學,一口氣吃不了一個胖子,學習貴在堅持!
用例圖概述:
由參與者、用例以及它們之間的關系構成的用於描述系統功能的動態視圖稱為用例圖
參與者:是指存在於系統外部並直接與系統交互的人、系統或設備等
參與者的分類:
參與者按是否使用系統核心功能可分為主要參與者與次要參與者
參與者在start uml工具中如圖表示:
用例概述:
是系統為參與者提供的功能,對於用例的命名我們可以給用例取一個簡單的名稱,概括性的名稱。一般是帶有動作性的名稱.用例在畫圖中用橢圓來表示。橢圓下面附有用例的名稱,實線箭頭,在用例圖中用於連接參與者與用例,用例方向指向用例
參與者與用例之間的關系就是參與者使用系統的功能用一個箭頭指向用例並且是實線如圖:
用例與用例之間也是有關系的,分為三種:
1:泛化(generalization)代表一般與特殊的關系
在泛化關系中,子用例繼承了父用例的行為和含義,子用例也可以增加新的行為和含義或父用例中的行為和含義。
下面以機票預訂方式畫一個用例之間的泛化關系圖:
2:包含(include)關系
指的是兩個用例之間的關系,其中一個用例(稱作基本用例,base use case)的行為包含了另一個用例(稱作包含用例,inclusion case)的行為
3:擴展(extend)關系
將基用例中一段相對獨立並且可選的動作,用擴展(Extension)用例加以封裝,再讓它從基用例中聲明的擴展點(Extension Point)上進行擴展,從而使基用例行為更簡練和目標更集中