




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
UML系統分析與設計SystemAnalysis&Design冀振燕北京交通大學
第四章UML的符號1、注釋2、參與者3、用例4、協作5、類6、對象7、消息8、接口9、包10、組件11、狀態12、躍遷13、判定14、同步條15、活動16、節點17、UML的擴充機制UML系統分析與設計第2版ZhenyanJi2UML的符號UML的最大貢獻就是提供了一個標準的、統一的建模符號體系,結束了由不同符號體系的應用所帶來的混亂。UML符號體系是可視化的,可為系統建立圖形化的可視模型,使系統的結構變得直觀,易于理解。UML符號具有定義良好的語義,不會引起歧義。UML系統分析與設計第2版ZhenyanJi3注釋注釋是用來對元素或元素集合進行注解或約束時所用的圖形符號。注釋的UML符號表示是右上角帶有折角的矩形。UML系統分析與設計第2版ZhenyanJi4參與者參與者代表與系統交互的人、硬件設備、或另一個系統。參與者并不是軟件系統的組成部分,參與者只存在于系統的外部。
參與者的UML符號表示是如圖所示的“小人”,并可在符號下標出參與者名。UML系統分析與設計第2版ZhenyanJi5用例用例規定了系統或部分系統的行為,它描述了系統所執行的動作序列集,并為執行者產生一個可供觀察的結果。用例的UML符號是橢圓,并可在橢圓下標出用例名。UML系統分析與設計第2版ZhenyanJi6協作協作命名了彼此合作完成某個行為的類、接口和其他元素的群體。協作可以用來定義用例和操作的實現,為系統體系結構上的重要機制建模。協作的UML符號是虛線橢圓,每個協作都有一個名字以與其他協作相區分。UML系統分析與設計第2版ZhenyanJi7類類是分享同樣的屬性、操作、關系和語義的對象的集合。類是現實世界中的事物的抽象,當這些事物存在于真實世界中時,它們是類的實例,并被稱為對象。類可以實現一個或多個接口。類的UML符號是劃分成3個格子的長方形。UML系統分析與設計第2版ZhenyanJi8類邊界類邊界類處理系統環境與系統內部之間的通信,邊界類為用戶或另一個系統(即參與者)提供了接口。邊界類的UML符號表示UML系統分析與設計第2版ZhenyanJi9類實體類實體類是模擬必須被存儲的信息和其關聯行為的類。實體類的UML符號表示。UML系統分析與設計第2版ZhenyanJi10類控制類控制類是用來為特定于一個或多個用例的控制行為建模的類。UML系統分析與設計第2版ZhenyanJi11類參數類參數類又被稱為模板類(TemplateClasses),模板類定義了類族。模板不能直接使用,要首先實例化模板類,實例化包括將這些形式模板參數綁定到實際的參數。參數類的UML符號是在類的UML符號表示的右上角加一個虛線框,在這個虛線框中列出模板參數。UML系統分析與設計第2版ZhenyanJi12對象對象代表了類的一個特定實例。對象具有身份(Identity)和屬性值(AttributeValues)。UML系統分析與設計第2版ZhenyanJi13消息消息是對象間的通信,它傳遞了要執行動作的信息,它能觸發事件。消息的UML符號表示是帶箭頭的實線。UML系統分析與設計第2版ZhenyanJi14接口接口是用來定義類或組件服務的操作的集合。與類不同,接口沒有定義任何結構,也沒有定義任何實現。UML系統分析與設計第2版ZhenyanJi15接口像類一樣,接口可以參與類屬關系、關聯關系和依賴關系,另外,接口還可以參與實現關系。實現接口的類或組件必須實現接口中定義的所有操作。UML系統分析與設計第2版ZhenyanJi16包包是一個用來將模型單元分組的通用機制。包可以用在任何一個UML圖中,但一般多用于用例圖和類圖,它就象文件夾一樣,可以將模型元素分組隱藏,從而簡化UML圖,使得UML圖更易理解。UML系統分析與設計第2版ZhenyanJi17包可見性如同類屬性和操作的可見性是可控制的一樣,包中元素的可見性也是可控制的。包中的元素在缺省情況下是公共的(public),也就是說,對于引入含有該元素的包中的任何元素都是可見的。引入與輸出(ImportingandExporting)引入可以使一個包中的元素單向地訪問另一個包中的元素。在UML中,引入關系用點綴著衍型<<import>>的依賴關系來表示。UML系統分析與設計第2版ZhenyanJi18包類屬關系(Generalization)包間的類屬關系與類間的類屬關系非常類似。UML系統分析與設計第2版ZhenyanJi19組件包(ComponentPackage)。組件包代表了邏輯上相關的組件簇或系統的重要部分。組件包的作用類似于類圖中邏輯包的作用。組件包用來劃分系統的物理模型。組件組件代表了一個接口定義良好的軟件模塊。組件是系統的一個物理的、可替代的部分,它遵循接口定義,并為接口提供了實現。組件的特點如下:組件是物理的。組件是可替代的。組件是系統的一部分。組件可以被多個系統重用。UML系統分析與設計第2版ZhenyanJi20組件與類組件與類的區別:類代表了邏輯的抽象,而組件是物理的、可以存在于現實世界中的。也就是說,組件可以在節點上存在,而類不能。組件代表了其他邏輯單元的物理封裝,與類的抽象存在于不同的層次上。類本身有屬性和操作,但是,組件的操作通常只能通過接口來訪問。UML系統分析與設計第2版ZhenyanJi21組件與接口接口是操作的集合,定義了類或組件的服務。接口通常被用作粘合劑將組件連接在一起。被一個組件實現的接口被稱為該組件的輸出接口(ExportInterface),也就是說,組件將該接口作為服務窗口向其他組件開放。一個組件可以有多個輸出接口。被一個組件使用的接口被稱做該組件的引入接口(ImportInterface)。UML系統分析與設計第2版ZhenyanJi22組件組件的二進制可替代性基于組件的系統是通過組裝二進制的、可替換的組件建立起來的,可以通過使用新組件替換舊組件來發展系統,而不需要重新編譯整個系統。衍型UML的所有擴充機制都可以用于組件。通常,可以用標記值來擴充組件的屬性(例如,規定組件的版本信息),用衍型規定組件的新種類。UML系統分析與設計第2版ZhenyanJi23組件UML定義了5個可以應用于組件的標準衍型。(1)可執行的(executable)。該衍型定義了可以在節點上執行的組件。(2)庫(library)。該衍型定義了靜態或動態的對象庫。(3)表(table)。該衍型定義了代表數據庫表的組件。(4)文件(file)。該衍型定義了代表含有源代碼或數據的文件的組件。(5)文檔(document)。該衍型定義了表示文檔的組件。UML系統分析與設計第2版ZhenyanJi24狀態狀態機(StateMachine)描述了對象在生命周期中響應事件所經歷的狀態的序列以及對象對這些事件的響應。狀態機由狀態、躍遷、事件、活動、動作等組成。狀態描述對象在生命周期中的一種條件或狀況,在這種狀況下,對象滿足某個條件,或執行某個動作、或等待某個事件。一個狀態在一個有限的時間段內存在。UML系統分析與設計第2版ZhenyanJi25狀態狀態由以下6部分組成:1.名字(Name)名字可以用來區分不同的狀態。狀態也可以是匿名的。2.入口/出口動作(Entry/ExitActions)入口動作在進入狀態時執行;出口動作在退出狀態時執行。
3.內部躍遷(InternalTransitions)內部躍遷是沒有引起狀態變化的躍遷。UML系統分析與設計第2版ZhenyanJi26圖4.30狀態狀態4.子狀態(Substate)子狀態是被嵌套的狀態。子狀態包括不相交子狀態(DisjointSubstates)和并發子狀態(ConcurrentSubstates)。不相交子狀態也被稱為順序子狀態(SequentialSubstates)。不含有子結構的狀態被稱為簡單狀態(SimpleState),含有子結構的狀態被稱為組合狀態(CompositeState)。并發子狀態是指并發進行的子狀態。UML系統分析與設計第2版ZhenyanJi27狀態UML系統分析與設計第2版ZhenyanJi28順序子狀態狀態UML系統分析與設計第2版ZhenyanJi29并發子狀態狀態5.延遲事件(DeferredEvents)延遲事件是指不處理那些當前發生的狀態,而將事件推遲到不再被推遲的另外一個狀態中才處理,此時延遲事件發生并可能觸發躍遷,就好像這些事件剛發生一樣。延遲事件的實現需要存在一個內部的事件隊列。6.初始狀態(InitialState)和最終狀態(FinalState)初始狀態和最終狀態是兩種特殊的狀態。初始狀態表示狀態機的執行開始,最終狀態表示狀態機的執行結束。UML系統分析與設計第2版ZhenyanJi30躍遷躍遷是兩個狀態間的一種關系,它表示對象在第一個狀態將執行某些動作,當規定的事件發生或滿足規定的條件時,對象進入第二個狀態。躍遷表示了從活動(或動作)到活動(或動作)的控制流的傳遞。躍遷由以下部分組成:源狀態與目標狀態觸發事件護衛條件動作UML系統分析與設計第2版ZhenyanJi31判定判定(Decision)代表了活動圖或狀態機圖上的一個特殊位置,在這個位置上工作流將根據護衛條件進行分支。判定節點的UML符號是一個空心菱形。UML系統分析與設計第2版ZhenyanJi32同步條同步條(SynchronizationBars)用來定義活動圖中的分叉(Fork)和聯結(Join)。同步條的UML符號表示用粗的水平或豎直條表示。UML系統分析與設計第2版ZhenyanJi33活動活動是在狀態機中進行的一個非原子的執行,它由一系列的動作組成。活動的UML符號表示:UML系統分析與設計第2版ZhenyanJi34節點節點是運行時存在的物理單元,它代表了具有內存以及處理能力的計算資源。節點與組件之間有許多重要的不同之處:組件參加系統的運行;節點是運行組件的硬件。組件代表了其他邏輯組件的物理封裝;節點代表了組件的物理分布。UML系統分析與設計第2版ZhenyanJi35UML的擴充機制UML是可擴充的,UML的擴充機制允許用戶以可控制的方式擴充語言。UML的擴充機制包括3種:衍型(Stereotypes)衍型擴充了UML的詞匯表,使用戶可以從已存在的模型元素派生出新模型元素,這些元素是為特定的問題域定制的。衍型提供了擴充基本模型元素以創建新元素的能力。衍型的概念使得UML雖然有最小的符號集,但是可以隨時擴充以滿足需要。衍型名字被放在“<<”和“>>”之間,且被放在模型元素的名字上面。UML系統分析與設計第2版ZhenyanJi36UML的擴充機制UML系統分析與設計第2版ZhenyanJi37衍型UML的擴充機制標記值(TaggedValues)標記值擴充了UML模型元素的屬性,使用戶可以在模型元素的規格說明中添加新的信息。標記值可以用放在“{}”中的字符串表示,這個字符串由標記名、分隔符“=”以及標記值組成。UML系統分析與設計第2版ZhenyanJi38UML的擴充機制約束(Constraints)約束擴充了UML模型元素的語義,使用戶可以添加新規則或修改已存在的規則。在UML中,可以用約束(Constraint)表示規則。約束是放在“{}”中的一個表達式,表示一個永真的邏輯陳述。UML系統分析與設計第2版ZhenyanJi39小結UML提供了一個標準的、統一的建模符號體系。UML符號體系是可視的,應用UML可為系統建立圖形化的可視模型,使系統的結構變得直觀且易于理解。因此,用UML建模有利于交流。本章對各種UML符號的語義、符號、應用逐一進行了介紹,最后還介紹了UML符號體系的3種擴充機制,即衍型、標記值、約束。UML系統分析與設計第2版ZhenyanJi40UML系統分析與設計SystemAnalysis&Design
第五章視與圖視UML的圖UML系統分析與設計第2版ZhenyanJi42視軟件系統的體系結構可以用5個視來描述,每個視都側重描述系統的一個方面。UML系統分析與設計第2版ZhenyanJi43視1.用例視(UseCaseView)系統的用例視通過用例描述了最終用戶、分析人員和測試人員可以看到的系統行為。2.設計視(DesignView)系統的設計視包括類、接口、和協作,這些類、接口和協作組成了問題域詞匯表和解決方案,支持系統的功能需求,也即系統應該提供給最終用戶的服務。UML系統分析與設計第2版ZhenyanJi44視3.互動視(InteractionView)系統的互動視描述了系統不同部分之間的控制流,包括可能的并發和同步機制。它體現了系統的性能、可擴展性、和總處理能力。4.實現視(ImplementationView)系統的實現視包括了用于組裝和發布物理軟件系統所需的各種產物,主要描述了軟件系統版本的配置管理。實現視的靜態方面由組件圖捕捉;動態方面由互動圖、狀態機圖和活動圖捕捉。UML系統分析與設計第2版ZhenyanJi45視5.部署視(DeploymentView)部署視包括了構成用于運行軟件系統的系統硬件拓撲的節點,它主要描述了物理系統組成部分的分布、交付和安裝。部署視的靜態方面由部署圖捕捉;動態方面由互動圖、狀態機圖和活動圖捕捉。這5個視是彼此相關、交互作用的,運用這5個視,可對軟件系統進行全方位的描述。UML系統分析與設計第2版ZhenyanJi46UML的圖統一建模語言UML是用來對軟件系統的產物進行可視化、規范定義、構造并為之建立文檔的建模語言。UML的13種圖如下:(1)類圖(ClassDiagram)(2)對象圖(ObjectDiagram)(3)組件圖(ComponentDiagram)(4)組合結構圖(CompositeStructureDiagram)(5)用例圖(UseCaseDiagram)(6)順序圖(SequenceDiagram)UML系統分析與設計第2版ZhenyanJi47UML的圖(7)通信圖(CommunicationDiagram)(8)狀態機圖(StateMachineDiagram)(9)活動圖(ActivityDiagram)(10)部署圖(DeploymentDiagram)(11)包圖(PackageDiagrams)(12)定時圖(TimingDiagram)(13)交互概覽圖(InteractionOverviewDiagram)UML系統分析與設計第2版ZhenyanJi48UML的圖上述用于描述系統動態行為的4個圖,即狀態機圖、順序圖、通信圖和活動圖,均可用于為系統的動態行為建模,但它們的側重點不同,應用的目的也不同。組件圖和部署圖都可以用來描述系統實現時的一些特性,包括源代碼的靜態結構和運行時刻的實現結構。組件圖說明代碼本身的結構,部署圖說明系統運行時刻的結構。UML系統分析與設計第2版ZhenyanJi49小結本章簡單介紹了軟件系統體系結構的5個視,即用例視、設計視、互動視、實現視和部署視,以及為系統建模的13種圖,包括類圖、對象圖、組件圖、組合結構圖、用例圖、順序圖、通信圖、狀態機圖、活動圖、部署圖、包圖、定時圖和交互概覽圖,并概括地說明了各種圖的功能和應用,描述了視與圖的關系,從而指導讀者應該如何使用圖為系統的5個視的靜態方面和動態方面建模。UML系統分析與設計第2版ZhenyanJi50UML系統分析與設計SystemAnalysis&Design冀振燕北京交通大學
第六章用例圖用例圖參與者用例用例圖的應用UML系統分析與設計第2版ZhenyanJi52UML系統分析與設計第2版ZhenyanJi53用例圖用例模型描述的是系統外部的參與者所理解的系統功能。用例模型用于需求分析階段,它的建立是系統開發者和最終用戶反復討論的結果,也是開發者和用戶對需求規格定義達成的共識。用例圖用例模型描述了待開發系統的功能需求將系統看作黑盒,從外部參與者的角度來理解系統驅動了需求分析之后各階段的開發工作,用例不僅在開發過程中保證了系統所有功能的實現,還被用于驗證和檢測所開發的系統是否滿足系統需求,從而影響到開發工作的各個階段和UML的各個模型。UML系統分析與設計第2版ZhenyanJi54UML系統分析與設計第2版ZhenyanJi55用例圖用例圖的3種建模元素用例(Use
Case)參與者(Actor)依賴關系、類屬關系和關聯關系。用例圖描述了用例、參與者以及它們之間的關系。用例圖UML系統分析與設計第2版ZhenyanJi56UML系統分析與設計第2版ZhenyanJi57用例圖參與者和用例之間存在的關聯關系通常被稱為通信關聯,因為它代表著參與者和用例之間的通信。這個關聯可以是雙向導航(從參與者到用例,并從用例到參與者),也可以是單向導航(從參與者到用例,或從用例到參與者)。導航的方向表明了是參與者發起了和用例的通信,還是用例發起了和參與者的通信。UML系統分析與設計第2版ZhenyanJi58用例圖在UML中用來實現用例的元素是協作(Collaboration),協作是實現用例行為的類和其他元素的總稱。如圖所示,可以用協作“Dealwithbill”(處理賬單)來實現用例“Payforbill”(付賬單)。通常,每個給定的用例都會由一個相應的協作來實現,所以大多數情況下不必顯式地為這種關系建模。UML系統分析與設計第2版ZhenyanJi59參與者參與者(Actor)代表了與系統接口的事物或人,它是具有某一種特定功能的角色。因此,參與者是虛擬的概念,它可以是人,也可以是外部系統或設備。同一個人可能對應著多個參與者,因為一個人可能扮演了多個角色。參與者不是系統的一部分,它們處于系統的外部。UML系統分析與設計第2版ZhenyanJi60參與者如何識別參與者?可以通過回答一系列問題●誰是系統的主要用戶? ●誰從系統獲得信息?●誰向系統提供信息? ●誰從系統刪除信息?●誰支持、維護系統? ●誰管理系統?●系統需要與其他哪些系統交互(包含其他計算機系統和其他應用程序)?●系統需要操縱哪些硬件? ●在預設的時間內,有事情自動發生嗎?●系統從哪里獲得信息? ●誰對系統的特定需求感興趣?●幾個人在扮演同樣的角色嗎? ●一個人扮演幾個不同的角色嗎?●系統使用外部資源嗎? ●系統要用在什么地方?UML系統分析與設計第2版ZhenyanJi61參與者識別參與者需要注意:參與者代表角色。當建立用例模型時,參與者是用來模擬角色的,而不是用來模擬物理的、現實世界的人、組織或系統本身。角色不是對職位進行建模。UML系統分析與設計第2版ZhenyanJi62參與者UML系統分析與設計第2版ZhenyanJi63用例用例(UseCase)是對系統行為的動態描述可以增進系統設計人員、開發人員與用戶的溝通,正確地理解系統需求;還可以劃分系統與外部實體的界限。用例是系統設計的起點,是類、對象、操作的來源,可以通過邏輯視圖的設計,獲得軟件的靜態結構。UML系統分析與設計第2版ZhenyanJi64用例如何識別用例?可以通過以下問題幫助識別:●每個參與者的任務是什么?●有參與者要創建、存儲、改變、刪除或讀取系統中的信息嗎?●什么用例會創建、存儲、改變、刪除或讀取這個信息?●參與者需要通知系統外部的突然變化嗎?●需要通知參與者系統中正在發生的事情嗎?●什么用例將支持和維護系統?●所有的功能需求都能被用例實現嗎?UML系統分析與設計第2版ZhenyanJi65用例在描述用例事件流時,每個軟件項目都應使用一個標準模板。下面給出一個目前應用最廣泛的模板。
X.用例XX(用例名)的事件流 X.1前置條件(Pre-Conditions) X.2后置條件(Post-Conditions) X.3擴充點(ExtensionPoints) X.4事件流 X.4.1基流(BasicFlow) X.4.2分支流(Subflows)(可選) X.4.3替代流(AlternativeFlows)UML系統分析與設計第2版ZhenyanJi66用例用例與腳本一個用例描述了一個序列集,而序列集中的每一個序列描述了一個流,這個流代表了用例的一個變種,每一個這樣的序列就被稱為一個腳本或場景(Scenario)。腳本是系統行為的一個特定動作序列。腳本與用例的關系就像實例與類的關系,即腳本是用例的一個實例。UML系統分析與設計第2版ZhenyanJi67用例用例間的關系類屬關系用例間的類屬關系如同類間的類屬關系。也就是說,子用例繼承父用例的行為和含義,它也可以添加新行為或覆蓋父用例的行為。UML系統分析與設計第2版ZhenyanJi68用例用例間的關系包含關系多個用例可能具有一些相同的功能,通常將這些共享的功能放在一個單獨的用例中,在這個新用例和
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 供暖小區設備管理制度
- 供熱現金收費管理制度
- 供電完善安全管理制度
- 依托上級公司管理制度
- 促銷物資倉庫管理制度
- 保健食物安全管理制度
- 保安作業現場管理制度
- 保安公司培訓管理制度
- 保安大隊設備管理制度
- 保安自我安全管理制度
- 《RT-Thread實時操作系統內核、驅動和應用開發技術》全套教學課件
- 舌癌放療護理
- PPH術后護理查房
- 三年級數學下冊計算題大全(每日一練共18份)
- 09SMS202-1埋地矩形雨水管道及附屬構筑物(混凝土模塊砌體)
- 重慶市沙坪壩區南開中學校2023-2024學年八年級下學期期末英語試題(無答案)
- 2022-2023學年江蘇省蘇州市高二下學期學業質量陽光指標調研卷英語試卷
- 偏差行為、卓越一生3.0版
- 廣告說服的有效實現智慧樹知到期末考試答案章節答案2024年湖南師范大學
- 蘇教版小學四年級下冊科學期末測試卷及參考答案1套
- 體育場館物業管理操作規范
評論
0/150
提交評論