• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            天空之城
            new,think,program,happy to live
            posts - 39,comments - 39,trackbacks - 0

            UML用例建模的慨念和應用

            作者:不詳 來源:不詳 www.csai.cn 2006年02月13日

              一. UML簡介

              UML(統一建模語言,Unified Modeling Language)是一種定義良好、易于表達、功能強大且普遍適用的可視化建模語言。它融入了軟件工程領域的新思想、新方法和新技術。它的作用域不限于支持面向對象的分析與設計,還支持從需求分析開始的軟件開發的全過程。在系統分析階段,我們一般用UML來畫很多圖,主要包括用例圖、狀態圖、類圖、活動圖、序列圖、協作圖、構建圖、配置圖等等,要畫哪些圖要根據具體情況而定。其實簡單的理解,也是個人的理解,UML的作用就是用很多圖從靜態和動態方面來全面描述我們將要開發的系統。
              二. 用例建模簡介

              用例建模是UML建模的一部分,在我眼里,它也是UML里最基礎的部分。用例建模的最主要功能就是用來表達系統的功能性需求或行為。

              依我的理解用例建模可分為用例圖和用例描述。用例圖由參與者(Actor)、用例(Use Case)、系統邊界、箭頭組成,用畫圖的方法來完成。用例描述用來詳細描述用例圖中每個用例,用文本文檔來完成。

              1. 用例圖

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

              用例是對包括變量在內的一組動作序列的描述,系統執行這些動作,并產生傳遞特定參與者的價值的可觀察結果。這是UML對用例的正式定義,對我們初學者可能有點難懂。我們可以這樣去理解,用例是參與者想要系統做的事情。對于對用例的命名,我們可以給用例取一個簡單、描述性的名稱,一般為帶有動作性的詞。用例在畫圖中用橢圓來表示,橢圓下面附上用例的名稱。

              系統邊界是用來表示正在建模系統的邊界。邊界內表示系統的組成部分,邊界外表示系統外部。系統邊界在畫圖中方框來表示,同時附上系統的名稱,參與者畫在邊界的外面,用例畫在邊界里面。因為系統邊界的作用有時候不是很明顯,所以我個人理解,在畫圖時可省略。

              箭頭用來表示參與者和系統通過相互發送信號或消息進行交互的關聯關系。箭頭尾部用來表示啟動交互的一方,箭頭頭部用來表示被啟動的一方,其中用例總是要由參與者來啟動。

              2. 用例描述

              用例圖只是簡單地用圖描述了一下系統,但對于每個用例,我們還需要有詳細的說明,這樣就可以讓別人對這個系統有一個更加詳細的了解,這時我們就需要寫用例描述。

              對于用例描述的內容,一般沒有硬性規定的格式,但一些必須或者重要的內容還是必須要寫進用例描述里面的。用例描述一般包括:簡要描述(說明)、前置(前提)條件、基本事件流、其他事件流、異常事件流、后置(事后)條件等等。下面說說各個部分的意思:

              簡要描述:對用例的角色、目的的簡要描述;

              前置條件:執行用例之前系統必須要處于的狀態,或者要滿足的條件;

              基本事件流:描述該用例的基本流程,指每個流程都“正常”運作時所發生的事情,沒有任何備選流和異常流,而只有最有可能發生的事件流;

              其他事件流:表示這個行為或流程是可選的或備選的,并不是總要總要執行它們;

              異常事件流:表示發生了某些非正常的事情所要執行的流程;

              后置條件:用例一旦執行后系統所處的狀態;
             

              三. 用例圖和用例描述設計實例

              這里用我開發的一個家教網站來簡單的分析用例圖的畫法和用例描述的寫法。這個網站我用UML完整的分析一下,以下我提取了用例圖和用例描述的部分。這個家教網站分為前臺客戶系統和后臺管理系統。

              前臺客戶系統的用例圖如下:

              后臺管理系統用例圖如下:

              對于用例描述,篇幅有限,我在這里只列了后臺管理系統中的網站公告發布這個用例的描述。如下:

            posted on 2006-05-12 22:54 太極虎~宏 閱讀(195) 評論(0)  編輯 收藏 引用
            囯产极品美女高潮无套久久久| 精品精品国产自在久久高清| 久久精品二区| 国产精品免费久久久久久久久 | 久久天天躁狠狠躁夜夜2020一| 久久久久久噜噜精品免费直播| 国产精品成人久久久| 日产精品久久久一区二区| 办公室久久精品| 午夜精品久久久久成人| 久久久久亚洲AV无码永不| 91久久精品国产免费直播| 精品无码久久久久国产动漫3d| 亚洲国产精品久久久久网站 | 久久久久亚洲AV无码专区桃色| 久久久久99这里有精品10| 精品久久久久久| 丁香色欲久久久久久综合网| 久久97久久97精品免视看秋霞| 天天爽天天狠久久久综合麻豆| 久久久久无码专区亚洲av| 精品国产一区二区三区久久久狼| 美女久久久久久| 99精品久久久久久久婷婷| 国产一区二区精品久久| 伊人久久大香线蕉成人| 久久99精品国产麻豆婷婷| 国产成人精品久久二区二区| 精品久久亚洲中文无码| 亚洲欧美日韩精品久久亚洲区 | 青青草原综合久久| 久久综合给久久狠狠97色 | 久久亚洲精品无码观看不卡| 国产综合久久久久| 精品久久久久久国产潘金莲 | 国产精品无码久久综合| 囯产精品久久久久久久久蜜桃| 亚洲精品成人网久久久久久| 久久伊人色| 尹人香蕉久久99天天拍| 国产精品久久久久蜜芽|