• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
    • 軟件測試技術
    • 軟件測試博客
    • 軟件測試視頻
    • 開源軟件測試技術
    • 軟件測試論壇
    • 軟件測試沙龍
    • 軟件測試資料下載
    • 軟件測試雜志
    • 軟件測試人才招聘
      暫時沒有公告

    字號: | 推薦給好友 上一篇 | 下一篇

    Rose建模初步

    發布: 2007-5-25 11:35 | 作者: 未知 | 來源: 系統分析之窗 | 查看: 67次 | 進入軟件測試論壇討論

    領測軟件測試網

    Rose建模初步


    blueski推薦 [2005-5-8]
    出處:UMLChina
    作者:Richard Felsinger,蓋九
     

    建模對每一位軟件開發人員都不陌生。Rational ROSE建模工具的出現,使程序員從手工建模的工作中解脫出來,并使大型開發項目的分析,建模、設計更加規范化。我們曾經通過《ROSE 技術白皮書》對Rose的可視化建模有了了解,從今天開始,我們將循序漸進地指導您如何應用Roe工具完成建模。同時,我們還將提供一個使用Rational Rose UML CASE 工具創建完整的UML模型的范例。對那些想高效地使用和評估Rational Rose工具(而不是其他UML CASE 工具)的新用戶,我們建議做下面的工作:

    首先:創建使用Rational Rose CASE 工具(www.rational.com)的圖表和報告,如下所示。

    第二:使用Rational Rose——UML CASE 工具在你的問題領域創建一個類似的實例,如一個訂單系統、產品系統,客戶系統,等等。

    第三(如果需要),使用其他 UML CASE 工具創建這些實例,以充分比較不同工具的性能。

    我們的目標是創建一個系統的正確、可靠、可理解、可擴展、可復用、完整的UML模型。該模型應該混合了可復用的類、組件和模式。這里提供一個經簡化的銀行存款模型。


    從Rational Rose開始


    啟動 Rose

    選擇菜單File-New,選擇File-SaveAs,將文件另存為BusinessModel.然后選擇File-New-SaveAs,另存為Requirements-AnalysisModel;

    注意,當Requirements-Analysis(需求分析)完成后要另存為Design-ImplementationModel(設計-實現模型);

    選擇View(視圖)選中Status Bar,Browser, Documentation, As Unified;

    選擇Tools-Options-Diagram 選中Stereotype Display(構造型顯示)標簽并選中Show/Display 的所有項目(Three-Tier Diagram除外);

    可以在文檔窗口(Documentation Window)為每個瀏覽器元素(Browser element)鍵入"文檔信息";

    可以在圖上增加文本框(text boxes)"ABC"(譯注:ABC 是文本框符號的標志);

    可以在圖上增加注釋;也可以通過"File-Delete"(譯注:似乎應是Edit-Delete)從模型中刪除不正確的元素。Check Model后,選擇Window-Log查看日志文件;

    可以選擇Report-Documentation Report;

    選擇Help,查看Rational Rose Help Topics(幫助主題)。

    創建Rose 用例圖:在瀏覽器窗口,選擇Use Case View(用例視圖),將"Main"重命名為"Use Case Diagram",在Use Case View雙擊可以顯示用例圖,在圖上放置參與者(ACTOR)和用例,選擇一種關系連接各元素。


    參與者 用例


    創建Rose 類圖

    在瀏覽器窗口選擇Logical View(邏輯視圖),將“Main”重命名為“class diagram”;在Class Diagram上雙擊以顯示類圖;

    在圖上放置"類";選擇一個"類"然后按鼠標右鍵,選擇New Attribute鍵入屬性;

    選擇"類"然后按鼠標右鍵,再選擇:"New Operation"鍵入操作;

    從工具條中選擇"泛化"(Generalization)關系箭頭,從子類到超類拖曳,放置一個泛化關系;

    從工具條中選擇實現(Realize)箭頭,由實現類向接口拖曳,放置一個實現關系;

    從工具條中選擇關聯(Association)箭頭從較大/上級類向較小/從屬類拖曳,放置一個關聯關系;

    在離較小/從屬類最近的關聯線上單擊鼠標右鍵,鍵入角色名及角色多重性;

    從工具條中選擇菱形的聚合符號,然后從較大/整體類向較小/部分類拖曳,放置一個聚合/組成關系;

    在到部分類最近的關聯線上單擊鼠標右鍵,鍵入角色名稱及角色多重性;

    從工具條中選擇依賴箭頭,從源/客戶類(source/client class)向目標/供應端(destination/supplier class)拖曳,放置一個依賴(dependency)關系;選擇Tools-Check Model;

    選擇Report - Show Usage/Show Instances/Show Access Violations;

    選擇 File - Save。

    創建Rose 順序圖

    在瀏覽器窗口選擇Logical View;

    選擇Browse-Interaction Diagram-Logical View- <View> ;

    選擇Sequence Diagram;

    鍵入圖名;

    在圖上放置對象(object)以表示類的對象;

    雙擊對象并且選擇從下拉列表中選擇類名;

    選擇Rose 對象消息(Object Message)符并在兩個對象間拖曳;

    雙擊消息,選擇操作。

    選擇Tools - Check Model;

    選擇Report - Show Unresolved Objects/Show Unresolved Messages;

    選擇 File - Save。


    使用統一過程生命周期階段


    文章中,我們使用了“統一軟件開發過程”。(參見《The Unified Software Development Process》(Ivar Jacobson,Grady Booch, James Rumbaugh 著)、《The Rational Unified Process An Introduction Second Edition》(Krutchen著))。統一過程生命周期階段圖示如下:


    系統/子系統/組件 包/類/對象
    Ⅰ-需求→→ Ⅱ-分析
    需求描述/產品性能 類圖

    所有用例的用例圖 包圖

    每個用例場景(scenario)的順序圖 順序圖和/或寫作圖

    每個用例所有場景的活動圖 活動圖和狀態圖

    Ⅳ-實現 ←←Ⅲ-設計
    過程環境硬件&軟件
    組件圖&部署圖 過程環境硬件(HW)&軟件(SW)
    更新的類/包/順序/協作/活動/狀態圖

    ---Ⅴ&Ⅵ 構建/測試


    下表中總結了在統一過程中不同的模型:

      業務模型 需求模型 分析模型 設計模型 實現模型; 測試模型
    關鍵UML元素 業務過程(用例),業務域對象 系統,參與者,用例,交互 業務包,類,對象,消息 硬件&軟件配置,包,類,對象,消息 組件,節點,編碼 測試計劃和測試實例
    主要關注點 模型業務 黑盒模型系統 問題領域模型的業務元素(不含實現細節) 更新特定實現的分析圖/規約,例如硬件&軟件配置 分布式環境模型物理元素;對應所有需求的編碼 單元(類/操作)測試,集成,整個系統測試
    目標:元素間弱耦合-強內聚 充分的業務/企業信息 所有用例/場景的充分信息,所有計劃過的增量/迭代。 滿足需要的最簡業務/問題領域模型 生成最大量代碼或手動編碼需要的足夠的信息 界面友好、最適當的組件架構-網絡;滿足所有需求的代碼 編碼可滿足所有需求的充分測試
    靜態/結構性圖 業務領域對象 顯示參與者的塊圖和用例圖 包/類圖 包/類圖 組件和部署圖;逆向類圖
    動態的/基于時間的圖 業務過程(用例) 每個用例場景的用例圖、順序圖,每個用例的活動圖 每個用例場景的順序圖,基于狀態的類的狀態圖,復雜操作的活動圖 每個用例場景的順序圖,基于狀態的類的狀態圖,復雜操作的活動圖 可選地,顯示分布式信息的更新順序圖
    關鍵團隊成員 業務分析員 業務分析員 業務分析員 開發人員 架構師,開發人員 開發人員/測試人員
    模型簽認 項目經理,架構師,客戶 項目經理,架構師,客戶 項目經理,架構師,客戶 項目經理,架構師 項目經理,架構師 項目經理,架構師,客戶(驗收)

    建議的任務/練習:基于統一過程創建一個UML模型。

    0 ——業務建模-企業級

    評審業務模型:前景文檔,組織結構圖,業務事件和過程(用例),業務參與者,工作人員(worker),實體(域模型),業務規則目錄,業務接口(操作集),業務模式,業務系統體系結構-組件圖,術語表。參見《The Rational Unified Process An Introduction Second Edition》(Krutchen著)及《Business Modeling with UML》(Eriksson 和Penker 著)。

    Ⅰ-需求-系統/子系統/組件級(與語言無關的)

    1.需求-對需求描述、系統圖(System Drawing),系統塊圖(客戶提供)進行評審。創建系統協作圖[環境圖(Context Diagram)]以說明對象/數據的輸入輸出、設定系統的邊界(可選)。創建需求可追蹤性表,列出需求名、需求號、引用、用例、UML元素、測試實例、描述、職責,等等(可選)。評審管理計劃、時間表、風險、命名/編碼標準、方法設計-UML 過程/構造型/特征/約束(可選)。

    2.所有用例-創建用例圖說明所有用例。說明用例關系(包含,擴展、泛化)和/或分級用例(從高級到細節)(可選)。確定用例的增量和迭代。

    3.每個用例-為每個用例創建用例規約描述:用例名、觸發、輸入、輸出、前置條件/異常、后置條件/異常,基本的和替代性可選場景【從樂觀到悲觀】、業務規則。為每個用例場景創建順序圖(可選)。為每個用例創建輸入/輸出表和測試實例(可選)。

    4.每個用例所有的場景-為每個用例創建活動圖說明所有的用例場景(樂觀到悲觀)。用文本、流程圖或其他圖說明每個用例的場景/路徑(可選)。

    5.信息--創建產品性能(Product Capabilities)列出非功能性的需求:可用性(可靠性、性能、安全、人員因素),一般性(generality)、可移動性、兼容性,時間,空間,存儲等等。創建一個語義數據模型(高級類/包圖)(可選)。

    Ⅱ-分析-類和對象級(與語言無關的)

    6.類和包-創建候選類清單,CRC 卡,類圖和包圖。創建對象圖顯示屬性值(可選)。

    7.對象和消息-為每個用例-樂觀場景創建順序圖。為所有其他用例場景創建順序圖(可選);蛘,為每個用例創建協作圖。

    8.狀態和轉移-為每個基于狀態的類創建狀態圖,說明狀態、事件、條件、動作。

    9.操作-為每個復雜的操作創建一個操作規約,說明前置條件、轉換,后置條件,以及異常。為每個復雜操作創建活動圖,說明活動的順序、狀態、條件和動作(可選)。

    III -設計-類和對象級(特定的過程環境下的)

    10.過程環境-創建由已計劃的"實現硬件和軟件配置清單"組成的goig過程環境:操作系統,語言,類庫,組件,GUI,分布--對象請求代理,永久數據存儲,等等?闪谐鰸撛诘哪J,組件標準((Active X, Java Bean, CORBA),命名約定,編碼標準,代碼生成腳本,工具(CASE, 編譯器,配置管理,測試等等)(可選)。

    11.更新的分析圖及規約-更新所有圖表和說明,為過程環境增加細節,包括數據類型,參數/返回值,支持類,操作細節(前置條件/異常)轉換,后置條件/異常),等等。提供了實現模式,例如多態操作,異常(異常的超類/子類),線程,數據訪問,事務,安全,消息隊列等等。目標是:圖和規約為手工編碼或代碼生成提供正確的信息(可選)。

    Ⅳ 實現-系統/子系統/組件級(特定過程環境下的)

    12.實施過程環境,組件標準和組件模式-更新過程環境,顯示已提供的組件(GUI,數據訪問,事務,分布,消息隊列,安全等)、組件標準(ActiveX, Enterprise Java Bean,CORBA)、組件到組件模式,例如小的單個操作組件、基于組件的類、每一用戶-實體組件,基于組件的包,大的多包組件。

    13.實施組件-創建組件圖顯示所有需要的帶有依賴關系的組件和文件,例如.EXE, DLL, .OCX, .LIB, .TXT, .HLP等等。顯示接口(棒棒糖)、創建接口圖顯示公有操作(exposed operation)(可選)。顯示IDL 代碼(Interface Definition Language,接口定義語言)例如 CORBA IDL, Microsoft IDL, Java(可選)。

    14.實施節點(處理器和設備)- 創建部署圖,顯示所有需要的處理器、設備和其他器材,例如客戶網絡計算機(NC),Windows PC, NT Server,事務服務器,WEB 服務器,郵件服務器,傳真,打印機,網絡等。

    V -構建

    15.編碼標準和代碼生成腳本-更新編碼標準和代碼生成腳本.編碼標準為所有主要UML元素編碼列出了樣本代碼、關系以及繼承策略、接口、異常、線程等。

    16.每個組件的編碼、圖表逆向工程

    VI - 測試

    17.測試計劃-更新測試計劃,列出測試實例(名稱,輸入,輸出,條件),測試步驟(每一個測試用例的每一步用法),測試組件【驅動器(driver),測試裝置(harnesses),腳本】

    18.測試-引導測試(conduct tests),例如類/操作測試(單元測試),個體組件測試(基于用例的),全范圍系統-多組件測試(基于用例的集成/驗收測試)。

    VII - 模型和構建其他需要的組件

    19.圖形用戶接口/用戶/外部接口組件-可選的-創建GUI 組件(窗口,菜單,對話框,面板)

    20.永久存儲組件的-可選的-數據存儲表/存儲過程/觸發器。

    小結


    當我們開始一項工作時,并不知道接下來會發生什么。我們關心的只是如何能出色地完成這項工作,F在,我們已經安裝了Rational Rose,并從頭開始創建了類圖,下面的工作將是“使用Rational CASE”,這才是重點。

     

    延伸閱讀

    文章來源于領測軟件測試網 http://www.kjueaiud.com/


    關于領測軟件測試網 | 領測軟件測試網合作伙伴 | 廣告服務 | 投稿指南 | 聯系我們 | 網站地圖 | 友情鏈接
    版權所有(C) 2003-2010 TestAge(領測軟件測試網)|領測國際科技(北京)有限公司|軟件測試工程師培訓網 All Rights Reserved
    北京市海淀區中關村南大街9號北京理工科技大廈1402室 京ICP備10010545號-5
    技術支持和業務聯系:info@testage.com.cn 電話:010-51297073

    軟件測試 | 領測國際ISTQBISTQB官網TMMiTMMi認證國際軟件測試工程師認證領測軟件測試網

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>