管理信息系統MIS面向對象建模工具_第1頁
管理信息系統MIS面向對象建模工具_第2頁
管理信息系統MIS面向對象建模工具_第3頁
管理信息系統MIS面向對象建模工具_第4頁
管理信息系統MIS面向對象建模工具_第5頁
已閱讀5頁,還剩84頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、Rational Rose 基于UML的面向對象建模工具課程內容n什么是UMLnRational公司的面向對象軟件工程解決方案n使用Rose來進行面向對象建模nRose的其他用途面向對象概念回顧n面向對象中的幾個非常重要的概念:n類類: 類是定義同一類所有對象的變量和方法的藍圖或原型。例如,可以建立一個定義包含當前檔位等實例變量的自行車類。這個類也定義和提供了實例方法(變檔、剎車)的實現。n對象對象: 對象是類的一個實例n封裝和信息隱藏:封裝和信息隱藏:將屬性和操作包裝成一個單元,使得對狀態(tài)的訪問和修改只能通過封裝提供的接口進行。n消息消息: 對象間發(fā)送請求的載體n繼承: 面向對象方法n面向對

2、象方法:面向對象方法:系統開發(fā)的一種方法,這種方法把系統看作是一起系統開發(fā)的一種方法,這種方法把系統看作是一起來完成某項任務的相互作用的對象集合。來完成某項任務的相互作用的對象集合。n對象:對象:計算機系統中可以對消息作出響應的事物。計算機系統中可以對消息作出響應的事物。n類圖:類圖:用面向對象的方法顯示系統中所有對象所屬類的圖形模型。用面向對象的方法顯示系統中所有對象所屬類的圖形模型。Object-oriented analysis (OOA)定義在系統中工作的所有類型的對定義在系統中工作的所有類型的對象,并顯示這些對象如何通過相互象,并顯示這些對象如何通過相互作用來完成任務。作用來完成任務

3、。Object-oriented design (OOD)定義和系統中人機進行通訊所必須定義和系統中人機進行通訊所必須的所有類型的對象,并對每一類型的所有類型的對象,并對每一類型的對象進行細化,以便可以用一種的對象進行細化,以便可以用一種具體的語言或環(huán)境來實現這些對象。具體的語言或環(huán)境來實現這些對象。Object-oriented programming 用某種編程語言書寫語句來定義各用某種編程語言書寫語句來定義各類對象的行為,包括對象間的消息類對象的行為,包括對象間的消息傳遞傳遞.面向對象方法發(fā)展歷史 面向對象方法開始于面向對象方法開始于20世紀世紀60年代挪威年代挪威 Simula 編程語

4、言的開發(fā)。用于創(chuàng)建包括像輪船、浮標以編程語言的開發(fā)。用于創(chuàng)建包括像輪船、浮標以及峽彎中潮汐等及峽彎中潮汐等“對象對象”的計算機模擬。的計算機模擬。 在在20世紀世紀70年代年代, 人們開發(fā)了人們開發(fā)了Smalltalk 語言用語言用于解決創(chuàng)建包括下拉式菜單、按鈕、復選框和對于解決創(chuàng)建包括下拉式菜單、按鈕、復選框和對話框等話框等“對象對象”的圖形用戶界面的問題。的圖形用戶界面的問題。 最近幾年面向對象程序開發(fā)最近幾年面向對象程序開發(fā) C+, Java,用編程用編程語言書寫語句來定義每一類對象的行為。語言書寫語句來定義每一類對象的行為。UML簡介nUnified Modeling Language

5、(面向對象的分析與設計(OOA&D)方法的發(fā)展在80年代末至90年代中出現了一個高潮,UML是這個高潮的產物。它不僅統一了Booch、Rumbaugh和Jacobson的表示方法,而且對其作了進一步的發(fā)展,并最終統一為大眾所接受的標準建模語言)n面向對象建模語言產生于面向對象建模語言產生于1970年代中期年代中期n1990年代初,建模語言數量達到年代初,建模語言數量達到50多種多種n眾多語言各有千秋,缺乏通用性眾多語言各有千秋,缺乏通用性n語言之間的細小差別妨礙了用戶的交流語言之間的細小差別妨礙了用戶的交流n1990年代中期,三位主要的年代中期,三位主要的OO建模大師:建模大師:Booch,R

6、umbaugh,Jacoson開始致力于建立統一建模語言開始致力于建立統一建模語言的工作。的工作。三位面向對象大師Grady BoochnRational公司首席科學家,Booch方法發(fā)明人。n提出了面向對象軟件工程的概念,將Ada(Ada是一種表現能力很強的通用程序設計語言,它是美國國防部為克服軟件開發(fā)危機,耗費巨資,歷時近20年研制成功的)的工作擴展到整個面向對象領域。nBooch1993比較適合于系統的設計和構造。Jim RumbaughnRational公司高級研究員。n提出了面向對象建模技術(OMT,Object Modeling Technology 對象建模技術) ,該方法用對象

7、模型、動態(tài)模型、功能模型來支持軟件開發(fā)的全過程。nOMT-2特別適用于分析和描述以數據為中心的信息系統。Ivar JacobsonnRational公司副總裁,提出了面向對象軟件工程 OOSE方法。nOOSE(Object_Oriented Software Engineering)面向對象軟件工程)的最大特點是面向用例的,用例(use-case)貫穿了整個開發(fā)過程。nOOSE比較適合于商業(yè)工程和需求分析。UML的發(fā)展歷程公公 眾眾 反反 饋饋UML1.1被OMG(對象管理組織)接納為標準Booch-1OMT-1OOSE其他方法Booch-3OMT-2UML0.9&0.91UML1.0&1.1

8、UML合作者的意見Unified Method 0.8分散的各部分統一標準化工業(yè)化19951996.6和1996.101997.1和1997.91997.11.17目前常用的目前常用的UML2.0版版UML的優(yōu)點 UML是國際軟件工業(yè)界廣泛認可的標準,它統一了對象模擬的標記和含義,使軟件設計工具能發(fā)揮更大的效用。 UML取長補短,適當的平衡了簡捷性和具體化兩個主旨。UML已成為一個單獨的系統,不至于像以前那樣由多種標準而造成誤會。UML元素 靜態(tài)視圖n類圖、包圖、組件圖、配置圖 動態(tài)視圖n用例圖、交互圖(順序圖和協作圖)、狀態(tài)圖、活動圖 描述語言n類描述語言、對象約束語言n 建模建模是人類對客

9、觀世界和抽象事物之間聯系的具體描述。在過去軟件開是人類對客觀世界和抽象事物之間聯系的具體描述。在過去軟件開發(fā)中,程序員利用手工建模,既耗費了大量的時間和精力又無法對整個復發(fā)中,程序員利用手工建模,既耗費了大量的時間和精力又無法對整個復雜系統全面準確的描述,以至于直接影響應用系統的開發(fā)質量和速度。而雜系統全面準確的描述,以至于直接影響應用系統的開發(fā)質量和速度。而今,我們不再為建??鄲?。今,我們不再為建??鄲?。RationalRational公司曾以公司曾以AdaAda語言享譽世界,今天以面語言享譽世界,今天以面向對象的可視化建模工具向對象的可視化建模工具Rational RoseRational

10、 Rose博得了業(yè)界一片好評。正如美國博得了業(yè)界一片好評。正如美國應用程序開發(fā)戰(zhàn)略應用程序開發(fā)戰(zhàn)略YourdouYourdou教授所評價的:教授所評價的:“Rational Rose Rational Rose 將對面向對將對面向對象應用程序開發(fā)技術產生巨大影響;使大型開發(fā)項目的分析,建模、設計象應用程序開發(fā)技術產生巨大影響;使大型開發(fā)項目的分析,建模、設計規(guī)范化了,規(guī)范化了,RationalRational公司已成為公司已成為OO CASEOO CASE界的界的MicrosoftMicrosoft?!眓Rational RoseRational Rose包括了一體化建模語言(包括了一體化建模

11、語言(UMLUML)、)、OOSEOOSE及及OMTOMT。其中一體。其中一體化建模語言(化建模語言(UMLUML)由)由Rational Rational 公司三位世界級面向對象技術專家公司三位世界級面向對象技術專家Grady Grady BoochBooch、IvarIvar Jacobson Jacobson和和Jim Jim RumbaughRumbaugh通過對早期面向對象研究的設計方法通過對早期面向對象研究的設計方法的進一步擴展而得來的,為可視化建模軟件奠定了堅實的理論基礎。的進一步擴展而得來的,為可視化建模軟件奠定了堅實的理論基礎。Rational公司簡介Rational公司簡介

12、nRational公司成立于1981年,它致力于提高軟件質量,縮短開發(fā)周期。n全球軟件廠商13強之一。n全球數據庫廠商12強之一。n開發(fā)的Ada語言被美國國防部認證為軍用標準語言。n2002年12月6日,IBM宣布以21億美元收購軟件設計工具廠商Rational公司。 Rational RosenROSE是美國Rational公司的面向對象建模工具,利用這個工具,我們可以建立用UML描述的軟件系統的模型,而且可以自動生成和維護C+、Java、VB、Oracle等語言和系統的代碼。nRose通過先建立系統模型,再編寫代碼,從而提高了軟件開發(fā)的可靠性。Rational解決方案Rational公司提

13、供了一套廣泛的軟件工程解決方案。公司提供了一套廣泛的軟件工程解決方案。它包括:它包括:一個集成的軟件產品家族,以實現需求管理、應用設計和建模、編碼、軟件質量保證和測試、組件管理、過程和項目管理以及軟件文檔自動生成的自動化。一整套可配置的用于軟件開發(fā)的過程和技術:通過Use- Case驅動以獲取業(yè)務或系統需求,基于控制的迭代開發(fā)以及一套針對軟件重用的結構化的方法。Rational產品Requisite PronRational公司有一整套用于需求管理的工具,公司有一整套用于需求管理的工具,功能非常強大,包括功能非常強大,包括Requisite Pro等,這些等,這些需求分析工具可以對需求進行全面

14、的管理,需求分析工具可以對需求進行全面的管理,包括記錄需求的變化情況,需求之間的依賴包括記錄需求的變化情況,需求之間的依賴關系等等。關系等等。 n-Rational SQA Suite是一系列基于Windows的黑黑盒測試盒測試工具,這套工具具有動態(tài)跟蹤、自動比較對錯、面向對象錄制等功能,可對多種Windows客戶/服務器應用開發(fā)工具進行測試,為整個測試生命周期提供一套完善的解決方案。Rational公司在開發(fā)研制一流測試工具SQA的同時,還結合開發(fā)應用實踐,總結出了一套測試方法論SQA Process。這一測試方法論為軟件測試人員提供了一系列面向RAD環(huán)境的行之有效的科學測試方法。軟件測試n

15、軟件測試方法一般分為兩種:軟件測試方法一般分為兩種:白盒測試與黑盒測試。白盒測試與黑盒測試。-白盒測試白盒測試又稱為結構測試、邏輯驅動測試或基于程序本身的測試,它著又稱為結構測試、邏輯驅動測試或基于程序本身的測試,它著 重于程序的內部結構及算法,通常不關心功能與性能指標;重于程序的內部結構及算法,通常不關心功能與性能指標;-黑盒測試黑盒測試又被稱為功能測試、數據驅動測試或基于規(guī)格說明的測試,它又被稱為功能測試、數據驅動測試或基于規(guī)格說明的測試,它 實際上是站在最終用戶的立場,檢驗輸入輸出信息及系統性能指標是否實際上是站在最終用戶的立場,檢驗輸入輸出信息及系統性能指標是否 符合規(guī)格說明書中有關功

16、能需求及性能需求的規(guī)定。符合規(guī)格說明書中有關功能需求及性能需求的規(guī)定。- 傳統的黑盒測試往往局限于手工測試,憑借工程人員的經驗自發(fā)地進傳統的黑盒測試往往局限于手工測試,憑借工程人員的經驗自發(fā)地進 行,缺乏嚴格的測試管理機制,因而效果不明顯。事實上,在分發(fā)一個行,缺乏嚴格的測試管理機制,因而效果不明顯。事實上,在分發(fā)一個 應用系統之前,若沒有經過科學、周密的黑盒測試,就等于將大量隱含應用系統之前,若沒有經過科學、周密的黑盒測試,就等于將大量隱含 的缺陷交付到最終用戶手中,這對于開發(fā)團隊自身、項目投資方及最終的缺陷交付到最終用戶手中,這對于開發(fā)團隊自身、項目投資方及最終 用戶來說都是不負責任的表現

17、,也將嚴重損害這三方的利益。用戶來說都是不負責任的表現,也將嚴重損害這三方的利益。 ClearCase(版本管理)nClearCase的核心功能是版本控制,他是對在軟件研發(fā)進程中一個文件或一個目錄發(fā)展過程進行追蹤的手段。ClearCase對所有文件系統對象(包括文件、目錄和鏈接)增強了版本控制系統功能??啥ò姹镜奈募ㄔ即a、可執(zhí)行文件、位圖文件、需求文件、設計說明、測試計劃、和一些ASCII和非ASCII文件。目錄的版本記錄了整個組織基礎資源的發(fā)展狀況,包括源文件的建立、重新命名、重新構造和刪除操作等。 這種版本控制系統提供了先進的版本分支和歸并功能用于支這種版本控制系統提供了先進的版本分

18、支和歸并功能用于支持并行研發(fā)。持并行研發(fā)。 Soda(文檔管理)u開發(fā)文檔制作過程自動化,節(jié)省時間和成本開發(fā)文檔制作過程自動化,節(jié)省時間和成本 u根據模板根據模板(template)編排文件,使文檔格式標準化編排文件,使文檔格式標準化 u可按用戶要求自定義文件模板,使用多種來源生成文檔可按用戶要求自定義文件模板,使用多種來源生成文檔 u自動維持文檔的一致性,大幅度節(jié)省人工維護的時間和成本自動維持文檔的一致性,大幅度節(jié)省人工維護的時間和成本 u極具彈性的文件制作,新版文件生成時,自動保留在原版本中直接編輯極具彈性的文件制作,新版文件生成時,自動保留在原版本中直接編輯的圖文的圖文 u提供模板制作向

19、導,容易地制作文件模板提供模板制作向導,容易地制作文件模板 u與與Microsoft Word緊密整合,模板和文件的制作均在緊密整合,模板和文件的制作均在Word上進行上進行 可視化建模工具Rose文檔自動化工具SoDA需求工具需求工具需求工具需求工具建模工具建模工具編程環(huán)境編程環(huán)境測試工具測試工具 SQA SuiteSQA Suite 配置管理工具配置管理工具建模工具建模工具 Rose配置管理工具配置管理工具 ClearCase代碼高級調試Pure Series版本管理ClearCase報表警告黑盒測試SQARose界面(1)nROSE的界面分為三個部分Browser窗口、Diagram窗口

20、和Document窗口。Browser窗口用來瀏覽、創(chuàng)建、刪除和修改模型中的模型元素;Diagram窗口用來顯示和創(chuàng)作模型的各種圖;而Document窗口則是用來顯示和書寫各個模型元素的文檔注釋。Browser窗口Diagram窗口Specification對話框工具欄工具箱Rose界面(2)nBrowser窗口有四個視圖:nUse CasenLogicalnComponentnDeploymentRose界面(3)n在在Use Case視圖的圖的類型有:視圖的圖的類型有:用例圖用例圖、順序圖順序圖、協作圖協作圖和和活動圖活動圖。Rose界面(4)n在在Logical視圖中的類型有:視圖中的類

21、型有:類圖類圖和和狀態(tài)圖狀態(tài)圖。Rose界面(5)n在在Component視圖的圖的類型有:視圖的圖的類型有:組件圖組件圖。Rose界面(6)n在在Deployment視圖的圖的類型有:視圖的圖的類型有:配置圖配置圖。面向對象的需求面向對象的需求 類圖類圖 用例圖用例圖 協作圖協作圖 順序圖順序圖 狀態(tài)圖狀態(tài)圖 這五個分離而又相互聯系的面向對象的模型或圖被用于這五個分離而又相互聯系的面向對象的模型或圖被用于從面向對象的角度出發(fā)定義應用需求。它們之間的關系如同從面向對象的角度出發(fā)定義應用需求。它們之間的關系如同下面的這個式子:下面的這個式子: 面面 向向 對對 象象 方方 法法事事 件件 和和

22、事事 件件 表表實實 體體實實 體體 - -聯聯 系系 圖圖關關 聯聯 圖圖D DF FD D片片 斷斷0 0層層 圖圖數數 據據 流流 定定 義義類類 圖圖用用 例例 圖圖狀狀 態(tài)態(tài) 圖圖順順 序序 圖圖協協 作作 圖圖過過 程程 描描 述述傳傳 統統 方方 法法活活 動動 圖圖基于UML的軟件開發(fā)過程問題描述用例圖數據字典類圖順序圖協作圖活動圖狀態(tài)圖詳細類圖包圖組件圖配置圖需求階段分析設計階段實現階段面向對象的需求面向對象的需求類圖類圖 一種用于識別組成新系統的對象并進行分類的圖。類圖一種用于識別組成新系統的對象并進行分類的圖。類圖是是OO方法的核心。它與數據模型不同,不僅顯示了信息的方法

23、的核心。它與數據模型不同,不僅顯示了信息的結構,還顯示了系統的行為(操作)。結構,還顯示了系統的行為(操作)。姓姓 名名地地 址址電電 話話客客 戶戶添添 加加 新新 的的刪刪 除除修修 改改與與 說說 明明 相相 連連類類 名名屬屬 性性 : 類類 中中 所所 有有 的的 對對 象象每每 個個 對對 象象 都都 有有 一一 個個 值值方方 法法 : 類類 中中 的的 所所 有有 對對 象象 知知 道道 如如何何 去去 做做類圖的概念nClass Diagramn一個分類或類表示相似對象的集合,類圖表示系統中所有一個分類或類表示相似對象的集合,類圖表示系統中所有對象的類型對象的類型n對于每一個

24、類,也許有更具體的子類對于每一個類,也許有更具體的子類n子類和對象繼承類的所有特性子類和對象繼承類的所有特性 ,類可以復用。,類可以復用。Class CarSubclass FordSubclass GMMustangCLASSSUBCLASSINSTANCEISAnBased on notion of “objects” things in the computer system (and the world) which have behaviours and respond to “messages”nObjects can be anythingnA menu bar, or wind

25、ow on the screennA carnA housenA number etc.!nCan send a message to an objectnE.g. to a window to draw itself on the computer screennE.g. to a number to square itself!nCan model very complex systems (e.g. a reactor)對象的概念面向對象方法的優(yōu)點自然性自然性面向對象方法對人而言是自面向對象方法對人而言是自然的或是直觀的,因為人們然的或是直觀的,因為人們傾向于按照可感知的對象來傾向于按照

26、可感知的對象來思考世界。思考世界。軟件復用軟件復用例如所有系統都使用菜單、例如所有系統都使用菜單、對話框、窗口以及按鈕,而對話框、窗口以及按鈕,而同一個公司中的許多系統也同一個公司中的許多系統也可以復用顧客類、產品類和可以復用顧客類、產品類和發(fā)貨清單類。發(fā)貨清單類。面向對象的需求面向對象的需求類圖類圖n類包括屬性和操作n屬性:=可見性 名稱:類型缺省值 約束特性n操作:=可見性 名稱(參數表):返回類型約束特性面向對象的需求面向對象的需求類圖類圖在介紹類圖時我們需要介紹以下兩個概念: 概括/具體層次圖:把類按照從最概括的父類把類按照從最概括的父類到最具體的子類的順序進行排列的層次圖,亦稱繼到最

27、具體的子類的順序進行排列的層次圖,亦稱繼承層次圖。承層次圖。 聚合(整體-局部層次圖):對象及其各個對象及其各個 部分之間的一種關系。部分之間的一種關系。面向對象的需求面向對象的需求概括概括/具體層次圖具體層次圖 下圖包含著一張概括下圖包含著一張概括/ /具體層次圖:賬戶是父類,具體層次圖:賬戶是父類,底下兩個是子類。在連接類的一條線上所畫的三角底下兩個是子類。在連接類的一條線上所畫的三角符號表示繼承。符號表示繼承。0 0. . .* *1 1姓姓名名地地址址電電話話客客戶戶支支票票類類型型最最小小余余額額支支票票賬賬戶戶賬賬戶戶余余額額開開戶戶日日期期賬賬戶戶存存款款取取款款利利率率儲儲蓄蓄

28、賬賬戶戶利利息息繼承繼承:允許子類共享其父類所具有的特征的概念。 子類不僅繼承了父類子類不僅繼承了父類的屬性和操作,并可的屬性和操作,并可以增加自己的屬性和以增加自己的屬性和操作,也可以改寫父操作,也可以改寫父類的屬性和操作類的屬性和操作數據的抽象和封裝數據的抽象和封裝MakeDepositWithDrawTransfer Balance interestYTD Owner Account MakeDeposit WithDraw Transfer用戶用戶接口(消息)接口(消息)實現細節(jié)(用戶不可見)實現細節(jié)(用戶不可見)銀行賬戶類數據的抽象與封裝銀行賬戶類數據的抽象與封裝數據的抽象和封裝數據

29、的抽象和封裝 Regist Showprivate: char bookname20; int number;public: void regist(char *a,int b); void show(); 用戶用戶接口(消息)接口(消息) 實現細節(jié)(用戶不可見)實現細節(jié)(用戶不可見)圖書類數據的抽象與封裝圖書類數據的抽象與封裝繼承和派生繼承和派生父母類父母類子女類子女類基類基類派生類派生類哺乳動物哺乳動物熱血、有毛發(fā)、用奶哺育幼仔熱血、有毛發(fā)、用奶哺育幼仔狗狗有犬牙、食肉、群居有犬牙、食肉、群居柯利狗柯利狗尖鼻子、身體顏色紅白相間尖鼻子、身體顏色紅白相間直接基類直接基類間接基類間接基類類的類

30、的層次結構層次結構面向對象的需求面向對象的需求聚合聚合n聚合聚合表示類之間的關系是整體和部分的關系,用端點帶空心菱形的線段表示n組成組成是更強的聚集關系,如果整體不存在了,部分也會消失,比如“方向盤”和“汽車”。組成關系用端點帶實心菱形的線段表示。計計算算機機處處理理器器主主存存鍵鍵盤盤磁磁盤盤存存儲儲器器監(jiān)監(jiān)視視器器n 類圖描述類和類之間的靜態(tài)關系。類圖描述類和類之間的靜態(tài)關系。 上圖是山東快運營業(yè)受理系統類圖,它包括六個類:托運單、交接清單、交付清單、簽約客戶、普通客戶和經辦人。 這張圖與實體聯系圖是存在對應關系的,類與類之間可以發(fā)生關聯。圖中的星號代表“多”,例如托運單和交接清單的關系就

31、可以理解為1張交接清單可以包含1張或更多的托運單,反過來說每張托運單都只能為1張交接清單所有。面向對象的需求面向對象的需求類圖類圖n使用類圖時有三種不同的透視角度:使用類圖時有三種不同的透視角度:1.概念層概念層:類圖描述的應用領域中的概念,這些概念:類圖描述的應用領域中的概念,這些概念與實現時的類并不是一一映射的。概念模型獨立于與實現時的類并不是一一映射的。概念模型獨立于程序設計語言程序設計語言2.說明層說明層:該層次考察的是軟件的接口部分,而不是:該層次考察的是軟件的接口部分,而不是實現部分,也就是說考察的是類型而不是類實現部分,也就是說考察的是類型而不是類3.實現層實現層:只有在這一層中

32、的類才是嚴格意義上的類,:只有在這一層中的類才是嚴格意義上的類,它揭示了軟件實現體的構成情況。它揭示了軟件實現體的構成情況。面向對象的需求面向對象的需求用例圖用例圖 用例圖用例圖: 一種用以顯示不同的用戶角色和這些用戶角色如何使用系統的圖。 代表參與者,即系統用戶扮演的一個角色代表參與者,即系統用戶扮演的一個角色 代表用例,既由系統為使用系統的用戶完成的一個單代表用例,既由系統為使用系統的用戶完成的一個單 一用途或功能一用途或功能 它們之間的連線用于哪個參與者參與什么用例它們之間的連線用于哪個參與者參與什么用例Rose的使用用例圖(2)取消選定插入文本添加注釋建立注釋到被注釋者之間的連接添加包

33、添加用例添加角色建立角色與用例之間的關聯框圖項目之間的相關性1.用例之間的使用或擴展關系2.角色之間的繼承關系n用例是系統的一個功能模塊n如何尋找用例n查看用戶提交的文檔n詢問系統的使用者n設計用例時的注意事項n用例獨立于實現n用例是系統的高級視圖,數目一般20-50個n用例的命名使用業(yè)務術語,而不是技術術語面向對象的需求面向對象的需求用例圖用例圖 設計用例圖首先要獲取系統的執(zhí)行者,可以通過讓用戶回答一些問題來識別執(zhí)行者,以下問題可供參考:n誰使用系統的主要功能(主要使用者)n誰需要系統支持他們的日常工作n誰來維護、管理,使系統正常工作(輔助使用者)n系統需要操作哪些硬件n系統需要與哪些其他系

34、統交互,包括其他計算機系統和其他應用程序n對系統的結果產生興趣的人和物面向對象的需求面向對象的需求用例圖用例圖客客戶戶制制作作托托運運單單編編輯輯托托運運單單打打印印托托運運單單查查詢詢托托運運單單取取消消托托運運單單客客戶戶自自提提貨貨物物處處理理代代收收貨貨款款處處理理回回執(zhí)執(zhí)單單 與客戶有關的所有用例與客戶有關的所有用例面向對象的需求面向對象的需求用例圖用例圖 前面的兩張圖,一張是貨物受理系統用例圖,另一張是與客戶有關的所有用例。它們用不同方式描述了系統的使用者(角色)和系統的功能模塊(用例)之間的關系。 我們可以看出,用例圖淺顯易懂,方便了客戶和系統設計者之間的交流。面向對象的需求面向

35、對象的需求用例圖用例圖一個一個用例用例面向對象的需求面向對象的需求用例圖用例圖 一個用例用到其他用例的服務是必要的。一個用例用到其他用例的服務是必要的。 以上圖為例,在進行編輯、打印或取消托運單以上圖為例,在進行編輯、打印或取消托運單時,都需要進行托運單的查詢,已確定托運單是時,都需要進行托運單的查詢,已確定托運單是否存在。比如編輯托運單和查詢托運單的關系可否存在。比如編輯托運單和查詢托運單的關系可以讀做編輯托運單包含查詢托運單。以讀做編輯托運單包含查詢托運單。用例圖與結構化技術的比較用例圖與結構化技術的比較 使用用例圖是為了對一個系統進行使用用例圖是為了對一個系統進行概覽,也就是定義系統的范

36、圍,從這一概覽,也就是定義系統的范圍,從這一點來說,它與關聯圖是非常相似的。點來說,它與關聯圖是非常相似的。 但是,結構化建模和面向對象建模同時也存在差別:但是,結構化建模和面向對象建模同時也存在差別: 用例圖與結構化技術的比較用例圖與結構化技術的比較面向對象的需求面向對象的需求順序圖順序圖n順序圖一種用于顯示用例對象之間消息順序的圖,代表對象順序圖一種用于顯示用例對象之間消息順序的圖,代表對象之間的消息和交互的一個特定集。之間的消息和交互的一個特定集。n順序圖用來描述對象之間的動態(tài)交互關系,著重體現對象間順序圖用來描述對象之間的動態(tài)交互關系,著重體現對象間消息傳遞的時間順序消息傳遞的時間順序

37、n順序圖存在兩個軸:水平軸表示不同的對象,垂直軸表示時順序圖存在兩個軸:水平軸表示不同的對象,垂直軸表示時間間n順序圖中的對象用帶垂直虛線的矩形框表示,在矩形框內標順序圖中的對象用帶垂直虛線的矩形框表示,在矩形框內標有對象名和類名。垂直虛線稱為對象的生命線有對象名和類名。垂直虛線稱為對象的生命線n順序圖中的消息用箭頭表示。箭頭的形狀表示消息的類型,順序圖中的消息用箭頭表示。箭頭的形狀表示消息的類型,有同步消息、異步消息、返回消息等等有同步消息、異步消息、返回消息等等Rose的使用順序圖(2)面向對象的需求面向對象的需求順序圖順序圖順序圖有四個基本符號: 參與者符號, 由 表示 對象符號,由一個

38、名字帶下劃線的方框 表示 生命線符號,由虛線或狹窄的豎直方框 表示,從上到下,顯示消息的順序 消息符號,由帶消息描述的方向箭頭 表示。消息描述器的語法如下:true/false條件返回值:=消息名(參數列表)主 角 1對象 : 對象1Rose的使用順序圖(5)取消選定添加注釋添加對象添加到自身的消息對象生命周期的結束插入文本建立注釋到被注釋者之間的連接添加消息添加返回消息基于UML的軟件開發(fā)過程問題描述用例圖數據字典類圖順序圖協作圖活動圖狀態(tài)圖詳細類圖包圖組件圖配置圖需求階段分析設計階段實現階段用例圖、類圖和順序圖之間的關系 上圖顯示了用例圖、類圖和順序圖這樣的交互圖之間的關系。 通常對于用例

39、圖中的每一個用例,都對應若干個順序圖。 一個特定的順序圖記錄了一個用例或一個場景的信息流。n 交互圖包括從類圖出來的對象和從用例圖出來的參與者。Rose的使用活動圖(1)n活動圖是用狀態(tài)機對工作流進行建模的特殊形式,它和流程圖很類似,不過它支持并發(fā)控制。n活動圖一般不描述所有的運算細節(jié),它顯示活動流,但不顯示執(zhí)行活動的對象。n活動圖處于系統的外部和內部視圖之間,所以它可以作為設計的起點,為了完成設計,每個活動必須擴展成一個和多個操作,每個操作被指派給特定的對象來實現。n將不同對象控制的活動劃分在一起,這類劃分可以通過分隔的區(qū)域來表達,由于它們的外觀,每個區(qū)域稱為泳道(swimlane)。Ros

40、e的使用活動圖(2)n活動圖由活動和轉移組成。n活動圖中的菱形框是判斷標志,表示條件轉移。n活動圖對表示并發(fā)很有用。在活動圖中使用一個稱為同步條的水平粗線可以將一條轉移分為多個并發(fā)執(zhí)行的分支,或將多個分支合為一條轉移。此時,只有輸入的轉移全部有效才能執(zhí)行后面的活動。Rose的使用活動圖(3)CustomerSalesStockroomRequestServicePayTake OrderFill OrderDeliver OrderCollect Order泳道同步條Rose的使用活動圖(4)取消選定添加注釋插入文本建立注釋到被注釋者之間的連接添加狀態(tài)添加結束狀態(tài)添加開始狀態(tài)添加活動添加轉換添

41、加到自身的轉換橫向同步條縱向同步條決策分支泳道Rose的使用狀態(tài)圖(1)n狀態(tài)圖是對單個類的對象的生命周期進行建模,描述了對象時間上的動態(tài)行為,每個對象被認為是事件驅動的孤立實體。n狀態(tài)圖是由狀態(tài)和轉換組成的圖,通常狀態(tài)圖附屬于類,描述類實例對接受事件的響應。n事件表達對象間的調用、顯式信號、值的改變或時間的推移。事件有:n調用事件、變更事件、信號事件、時間事件n狀態(tài)描述對象生命周期的一段時間,可以是等待其它事件時所處的時間,或是執(zhí)行某一活動時所處的時間,狀態(tài)分為簡單狀態(tài)和復合狀態(tài)。Rose的使用狀態(tài)圖(2)n轉換定義對象對某一事件發(fā)生的反應,通常,轉換具有觸發(fā)事件、轉換條件、動作和目標狀態(tài)。n轉換的

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論