<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    憨厚生

    ----Java's Slave----
    ***Java's Host***

      BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
      165 隨筆 :: 17 文章 :: 90 評論 :: 0 Trackbacks
    轉 http://www.ibm.com/developerworks/cn/rational/tip-uml/index2.html

    用例建模技巧

    適合于更好的 UML 用例模型的技術

    developerWorks
    文檔選項
    將打印機的版面設置成橫向打印模式

    打印本頁

    將此頁作為電子郵件發送

    將此頁作為電子郵件發送


    級別: 初級

    Scott W. Ambler (scott.ambler@ronin-intl.com), 總裁, Ronin International

    2001 年 1 月 04 日

    本文介紹了一些提高系統用例模型質量的技巧和技術。本文改編自 Object Primer 2nd Edition 的第 6 章。

    從參與者的角度并以主動語態編寫用例。
    應該以主動語態:“學生表明參加研習班意向”,而不是被動語態“研習班意向被學生表明”來編寫用例。而且,應該從參與者的角度來編寫用例。畢竟,用例的目的是理解用戶如何對系統進行操作。

    編寫方案文本,而非功能需求。
    用例描述的是對參與者來說有價值的一系列行動,而不是特性集。例如,“招收研習班的學生”用例描述的是學生如何與系統交互來參加研習班。它沒有描述用戶界面看上去是什么樣子,或者它是如何工作的。有一些其它的模型來描述這些重要的信息,例如用戶界面模型和增補規范。面向對象分析非常復雜,因此需要對它使用幾種模型,并且應該適當地應用每一種模型。

    用例只記載行為需求。
    用例既不是類規范,也不是數據規范。這是應該由概念性模型捕捉的一種信息,在對象世界中,它是通過 UML類模型建模的。您往往會引用概念性模型中描述的類,例如,“參加研習班”用例包括了“研習班”和“學生”等概念,它們都將由概念性模型描述。

    不要忘記用戶界面。
    系統用例經常引用主用戶界面 (UI)元素,這些元素常常稱為“邊界”或“用戶界面”項,例如 HTML頁面和報表。用例有時也引用一些次要的 UI元素,例如按鈕或數據輸入字段,但這種級別的細節并不太常見。

    創建用例模板。
    用例包含了相當數量的信息,這些信息可以輕易地以常見格式記載。您應該考慮開發自己的模板(請參閱技巧“ 記載用例”)。

    始終如一地組織用例圖。
    一般的做法是垂直地繪制繼承 (inheritance) 和擴展 (extend)關聯,在父/基本用例下面繪制繼承/擴展用例。同樣,通常水平繪制包含(include) 關聯。請注意,這些是簡單的經驗法則 --只要始終遵循這些法則,產生的圖將很容易理解。

    不要忘記系統對參與者行動的響應。
    用例既應該描述參與者是如何與系統交互的,也應該描述系統如何響應這些交互。例如,在“參加研習班”用例中,如果系統在學生表明他們希望參加研習班時沒有做出響應,學生就會很沮喪地離開。

    備選行動過程非常重要。
    如果一切順利,使用的將是基本行動過程 --但也不要忘記備選過程。引入備選過程是為了描述潛在的使用錯誤以及商業邏輯錯誤和異常。這些重要的信息對于驅動系統的設計來說很有必要,因此不要忘記在用例中對它們建模。

    不要被 <<include>> 和 <<extend>>關聯所困擾。
    我不是很確定到底發生了什么事,但我總是在想包含 (include) 和擴展(extend) 關聯,以及舊版本 UML 中使用 (uses) 和擴展 (extends)關聯的正確使用從來沒有得到很好的描述。結果,用例建模小組往往在這些關聯的正確應用上爭論不休,在整個建模技術中一些有趣但次要的部分上浪費了驚人的時間。我曾在一個組織中工作,這家組織居然取締了<<include>> 和 <<extend>>原型的使用,幾個星期后,當意識到公司仍然需要這些概念時不得不撤消了這種極端的解決方案,而這時該組織對它們的正確使用還沒有達成共識。

    讓用例帶動用戶文檔。
    用戶文檔的目的是描述如何使用系統。每個用例都描述了參與者通過使用系統所采取的一系列動作。簡而言之,用例包含從中開始編寫問黨用戶穩當的信息。例如,可以使用“參加研習班”用例作為基礎來編寫系統用戶文檔的“如何參加研習班”一節。

    讓用例帶動演示。
    軟件開發過程中的一部分是向項目資金管理者通報工作成果,因此有時需要提供演示。因為用例是從用戶的角度編寫的,它們包含了演示中對資金管理者可能希望聽到的事物的有價值的深刻見解。換句話說,用例通常包含制定演示稿所需的邏輯。



    參考資料



    關于作者

    Author photo

    Scott W. Ambler 是 Ronin International 的總裁,該公司是一家專門提供面向對象軟件過程指導、體系結構建模和 Enterprise JavaBean (EJB) 開發的咨詢企業。他創作或者與其他人合著了幾本有關面向對象開發的書籍,包括最近出版的 Object Primer 2nd Edition,該書詳細介紹了本文所概述的主題。可以通過 scott.ambler@ronin-intl.com 與他聯系,他的網站位于 www.ambysoft.com


    posted on 2009-03-10 17:36 二胡 閱讀(160) 評論(0)  編輯  收藏 所屬分類: 設計相關
    主站蜘蛛池模板: 亚洲男人的天堂网站| 国产一级a毛一级a看免费视频 | 亚洲五月午夜免费在线视频| 成人网站免费大全日韩国产| 亚洲精品不卡视频| 国产男女性潮高清免费网站| 99久久国产精品免费一区二区| 亚洲国产综合第一精品小说| 免费少妇a级毛片| 亚洲大片免费观看| 国产AV日韩A∨亚洲AV电影| 91亚洲精品视频| 亚洲国产精品人人做人人爱| 91精品国产免费久久久久久青草| 乱人伦中文视频在线观看免费| 亚洲第一香蕉视频| 国产亚洲精品线观看动态图| 成年人免费网站在线观看| 中文字幕在线免费观看视频| 亚洲精品伦理熟女国产一区二区| 亚洲第一AV网站| 亚洲成A∨人片天堂网无码| 日本免费人成在线网站| 中国性猛交xxxxx免费看| 亚洲色偷偷色噜噜狠狠99网| 久久久久亚洲精品影视| 亚洲高清最新av网站| 久久WWW免费人成人片| 久久99热精品免费观看动漫 | 91老湿机福利免费体验| 特级毛片aaaa免费观看| 亚洲久热无码av中文字幕| 久久久无码精品亚洲日韩蜜臀浪潮| 亚洲国产午夜中文字幕精品黄网站 | 亚洲色无码专区一区| 亚洲欧洲日韩综合| 亚洲大尺度无码专区尤物| 亚洲AV无码一区二三区| 日韩一区二区免费视频| 久久国内免费视频| 91成人在线免费视频|