Dict.CN 在線詞典, 英語學習, 在線翻譯

          都市淘沙者

          荔枝FM Everyone can be host

          統計

          留言簿(23)

          積分與排名

          優秀學習網站

          友情連接

          閱讀排行榜

          評論排行榜

          UML的用例(Use Case)概念分析及實例

          UML的用例(Use Case)概念分析及實例

          /登峰 

          2005-02-25 

          UMLuse case似乎最簡單的,用例建模的最主要功能就是用來表達系統的功能性需求或行為,依我的理解用例建??煞譃橛美龍D和用例描述。用例圖由參與者(Actor)、用例(Use Case)、系統邊界、箭頭組成,用畫圖的方法來完成。用例描述用來詳細描述用例圖中每個用例,用文本文檔來完成,以及由箭頭所組成的各種關系,包括泛化,包含,擴展等。本文準備向大家介紹以下內容,所有圖示均用PowerDesigner所畫.

          u       用況

          u       參與者

          u       泛化

          u       <<use>>

          u       <<include>>

          u       <<extend>>

          u       用例描述 

          1.             用況(use case 

           

                                       圖1 用況圖 

          是對一組動作序列(其中包括它的變體)的描述,系統執行該動作為執行此動作的參與者產生一個可觀察的結果值。比如你使用計算器,這里可以把計算器看作為用況,參與者是登峰,登峰按了3+3(用況執行的序列),計算機器返回一個結果6。 

          2.             參與者(Actor)

             

          參與者不是特指人,是指系統以外的,在使用系統或與系統交互中所扮演的角色。因此參與者可以是人,可以是事物,也可以是時間或其他系統等等。還有一點要注意的是,參與者不是指人或事物本身,而是表示人或事物當時所扮演的角色。比如小明是圖書館的管理員,他參與圖書館管理系統的交互,這時他既可以作為管理員這個角色參與管理,也可以作為借書者向圖書館借書,在這里小明扮演了兩個角色,是兩個不同的參與者。參與者在畫圖中用簡筆人物畫來表示,人物下面附上參與者的名稱。


           

          3.             泛化

          泛化和類中的泛化概念是一樣的,子用況繼承父用況的行為和含義,還可以增加或覆蓋父用況的行為;子用況可以出現在任何父用況出現的位置(父和子均有具體的實例)。下面給出兩種圖示來說明泛化的概念和含義                                             

                    

              

              

              

          圖2 含義繼承                                 圖3 行為繼承

           4.<<user>>

          <<use>>: 關系非常象一個函數調用或一個子過程以這種方式使用的用例稱為抽

          象用例因為它不能單獨存在而必須被其它用例使用,請看下圖

           

           

                     圖4 使用<<use>>示例

           

           

          5.<<include>>

          怎么解釋這個定義呢? 還是說明一下它的功能吧,<<include>>可以把幾個用例的公共步驟分離出來成為一個單獨的被包含用例。學過C的朋友知道它的含義了吧。呵呵

          好的,定義都已經知道了,下面用一個示例來加深大家的印象。假如有個人事系統,經理可以查看員工的信息,并可以增加,修改和刪除,但每次執行這三個操作時,都要定位到相應的員工,即先查詢定位到要操作的員工。圖5給出了這種表述的use case ,請理解<<include>>的含義

           

           

                                    圖5 <<include>>的用法

          6<<extend>>

            <<extend>>為已存在用例添加新的行為提供了一種方法。 基礎用例提供了一組擴展點(extend points),擴展點是鉤子,在此可以添加新的行為,擴展用例提供了一組插入片段,這些片段可被插入到基礎用例的鉤子位置。需要注意的是基礎用例不知道擴展用例的任何細節,它僅為擴展用例提供了鉤子。這與<<include>>不同,此時如果沒有被包含用例,客戶用例將不完整。圖6說明了主述文字描述

           

                       

                       圖6 <<extend>>的用法

          7.用例描述

             當然用例描述就是對用例的文字性說明。具體要描述哪些項,這里就不多說了,給大家一個具體示例一看就明白。假如有個家教網,下面只是一個抽象片段。主要是為了說明用例描述的含義。 

           

           

           

           

          下面就是用例網站公告發布的用例描述

           

          posted on 2006-03-14 21:09 都市淘沙者 閱讀(1029) 評論(0)  編輯  收藏 所屬分類: PatterDesign/UML/Rose/ERwin

          主站蜘蛛池模板: 南投市| 大渡口区| 利川市| 彝良县| 太仓市| 苏尼特右旗| 名山县| 额尔古纳市| 罗平县| 伊春市| 保靖县| 广河县| 宿迁市| 莱芜市| 阳山县| 中卫市| 大连市| 来宾市| 丰宁| 吉木萨尔县| 故城县| 肃南| 类乌齐县| 格尔木市| 涞水县| 元朗区| 贵港市| 莱阳市| 葵青区| 台山市| 承德市| 同心县| 宜都市| 河北省| 古蔺县| 敦煌市| 宁波市| 商丘市| 澄城县| 门源| 宁河县|