




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
面向對象方法與第一頁,共九十五頁,編輯于2023年,星期二5.1面向對象的概念與開發(fā)方法現實世界就是由各種對象組成的,如建筑物、人、汽車、動物、植物等。復雜的對象可以由簡單的對象組成。在研究對象時主要考慮對象的屬性和行為,有些不同的對象會呈現相同或相似的屬性和行為,如轎車、卡車、面包車。通常將屬性及行為相同或相似的對象歸為一類。類可以看成是對象的抽象,代表了此類對象所具有的共有屬性和行為。第二頁,共九十五頁,編輯于2023年,星期二5.1面向對象的概念與開發(fā)方法Coad和Yourdon給出了“面向對象”的一個定義:
面向對象=對象+類+繼承+消息通信如果一個系統(tǒng)是使用這樣4個概念設計和實現的,則可認為這個系統(tǒng)是面向對象的。
第三頁,共九十五頁,編輯于2023年,星期二對象對象是包含現實世界物體特征的抽象實體,它反映了系統(tǒng)為之保存信息和(或)與它交互的能力。例如,Student對象的數據可能有姓名、性別、出生日期、家庭住址、電話號碼等,其操作可能是對這些數據值的賦值及更改。第四頁,共九十五頁,編輯于2023年,星期二對象對象與后面講的類具有幾乎完全相同的表示形式,主要差別是對象的名字下面要加一條下劃線。對象名有下列三種表示格式:(1)第一種格式是對象名在前,類名在后,中間用冒號連接。形如:
對象名:類名(2)第二種格式形如:
:類名這種格式用于尚未給對象命名的情況,注意,類名前的冒號不能省略。(3)第三種格式形如:
對象名第五頁,共九十五頁,編輯于2023年,星期二對象對象有兩個層次的概念:(1)現實生活中對象指的是客觀世界的實體??梢允强梢姷挠行螌ο螅缛?、學生、汽車、房屋等;也可以是抽象的邏輯對象,如銀行帳號,生日。(2)程序中對象就是一組變量和相關方法的集合,其中變量表明對象的狀態(tài),方法表明對象所具有的行為。第六頁,共九十五頁,編輯于2023年,星期二對象可以將程序中的對象分為5類:物理對象,角色,事件,交互,規(guī)格說明。
物理對象(PhysicalObjects)──物理對象是最易識別的對象,通常可以在問題領域的描述中找到,它們的屬性可以標識和測量。例如,大學課程注冊系統(tǒng)中的學生對象;一個網絡管理系統(tǒng)中各種網絡物理資源對象(如開關、CPU和打印機)都是物理對象。第七頁,共九十五頁,編輯于2023年,星期二對象(2)角色(Roles)──一個實體的角色也可以抽象成一個單獨的對象。角色對象的操作是由角色提供的技能。例如,一個面向對象系統(tǒng)中通常有“管理器”對象,它履行協(xié)調系統(tǒng)資源的角色。一個窗口系統(tǒng)中通常有“窗口管理器”對象,它扮演協(xié)調鼠標器按鈕和其他窗口操作的角色。特別地,一個實際的物理對象可能同時承擔幾個角色。例如,一個退休教師同時扮演退休者和教師的角色。第八頁,共九十五頁,編輯于2023年,星期二對象(3)事件(Events)──一個事件是某種活動的一次“出現”。例如“鼠標”事件。一個事件對象通常是一個數據實體,它管理“出現”的重要信息。事件對象的操作主要用于對數據的存取。如“鼠標”事件對象有諸如光標坐標、左右鍵、單擊,雙擊等信息。第九頁,共九十五頁,編輯于2023年,星期二對象(4)交互(Interactions)──交互表示了在兩個對象之間的關系,這種類型的對象類似于在數據庫設計時所涉及的“關系”實體。當實體之間是多對多的關系時,利用交互對象可將其簡化為兩個一對多的關系。例如,在大學課程注冊系統(tǒng)中,學生和課程之間的關系是多對多的關系,可設置一個“選課”交互對象來簡化它們之間的關系。第十頁,共九十五頁,編輯于2023年,星期二類與封裝類。可以將現實生活中的對象經過抽象,映射為程序中的對象。對象在程序中是通過一種抽象數據類型來描述的,這種抽象數據類型稱為類(Class)。為了讓計算機創(chuàng)建對象,必須先提供對象的定義,也就是先定義對象所屬的類。例如,可以將學生對象所屬的類定義為Student。類的圖形表示如圖所示。第十一頁,共九十五頁,編輯于2023年,星期二類與封裝封裝。面向對象的封裝特性與其抽象特性密切相關。封裝是一種信息隱蔽技術,就是利用抽象數據類型將數據和基于數據的操作封裝在一起。用戶只能看到對象的封裝界面信息,對象的內部細節(jié)對用戶是隱蔽的。封裝的定義是:(1)清楚的邊界,所有對象的內部信息被限定在這個邊界內;(2)接口,即對象向外界提供的方法,外界可以通過這些方法與對象進行交互;(3)受保護的內部實現,即軟件對象功能的實現細節(jié),實現細節(jié)不能從類外訪問。第十二頁,共九十五頁,編輯于2023年,星期二繼承繼承。繼承是一種聯結類的層次模型,為類的重用提供了方便,它提供了明確表述不同類之間共性的方法。我們將公共類稱為超類(superclass)、父類(fatherclass)、祖先(ancestor)或基類(baseclass),而從其繼承的類稱為子類(subclasses)、后代(deslendane)或導出類(derivedclass)。第十三頁,共九十五頁,編輯于2023年,星期二多態(tài)根據為請求提供服務的對象不同可以得到不同的行為,這種現象稱為多態(tài)。在運行時對類進行實例化,并調用與實例化對象相應的方法,稱為動態(tài)綁定、后期綁定或運行時綁定。相應地,如果方法的調用是在編譯時確定的,則稱為是靜態(tài)綁定、前期綁定或編譯時綁定。
通過在子類中覆蓋父類的方法實現多態(tài)。第十四頁,共九十五頁,編輯于2023年,星期二消息通信消息是一個對象與另一個對象的通信單元,是要求某個對象執(zhí)行類中定義的某個操作的規(guī)格說明。發(fā)送給一個對象的消息定義了一個方法名和一個參數表(可能是空的),并指定某一個對象。一個對象接收到消息,則調用消息中指定的方法,并將形式參數與參數表中相應的值結合起來。第十五頁,共九十五頁,編輯于2023年,星期二面向對象的開發(fā)方法面向對象軟件開發(fā)方法的特征方法的唯一性
即方法是對軟件開發(fā)過程所有階段進行綜合考慮而得到的。從生存期的一個階段到下一個階段的高度連續(xù)性,即生存期后一階段的成果只是在前一階段成果的補充和修改。將面向對象分析(OOA)、面向對象設計(OOD)和面向對象程序設計(OOP)集成到生存期的相應階段。第十六頁,共九十五頁,編輯于2023年,星期二Rumbaugh方法
Rumbaugh和他的同事提出的對象模型化技術(OMT)用于分析、系統(tǒng)設計和對象級設計。分析活動建立三個模型:對象模型(描述對象、類、層次和關系);動態(tài)模型(描述對象和系統(tǒng)的行為);功能模型(類似于高層的DFD,描述穿越系統(tǒng)的信息流)。面向對象的開發(fā)方法第十七頁,共九十五頁,編輯于2023年,星期二Coad和Yourdon方法
Coad和Yourdon方法常常被認為是最容易學習的OOA方法。建模符號相當簡單,其OOA過程如下:(1)使用“要找什么”準則標識對象;(2)定義對象之間的一般化/特殊化結構(又稱為分類結構);(3)定義對象之間的整體/部分結構(又稱為組合結構);(4)標識主題;(5)定義對象的屬性及對象之間的實例連接;(6)定義服務及對象之間的消息連接。面向對象的開發(fā)方法第十八頁,共九十五頁,編輯于2023年,星期二Booch方法
包含“微開發(fā)過程”和“宏開發(fā)過程”兩個過程。OOA宏觀開發(fā)過程如下:標識類和對象;標識類和對象的語義;標識類和對象間的關系;進行一系列精化;實現類和對象。面向對象的開發(fā)方法第十九頁,共九十五頁,編輯于2023年,星期二Jacobson方法也稱為OOSE(面向對象軟件工程),其特點是特別強調使用用例——用以描述用戶和產品或系統(tǒng)間如何交互的場景。過程如下:標識系統(tǒng)的用戶和他們的整體責任構造需求模型構造分析模型
面向對象的開發(fā)方法第二十頁,共九十五頁,編輯于2023年,星期二5.2UML簡介面向對象的建模語言很多,目前使用最廣泛的是統(tǒng)一建模語言(UML,UnifiedModelingLanguage);它將Booch、Rumbaugh和Jacobson等各自獨立的OOA和OOD方法中最優(yōu)秀的特色組合成一個統(tǒng)一的方法。第二十一頁,共九十五頁,編輯于2023年,星期二UML的產生和發(fā)展UML(UnifiedModelingLanguage)的概念于1996年由面向對象方法領域的三位著名專家GradyBooch,JamesRumbaugh和IvarJacobson提出的。1996年6月和10月分別發(fā)布了UML0.9,UML0.911997年1月,UML1.0被提交給對象管理組織OMG1997年9月,提交UML1.1,1997年11月被OMG采納作為基于面向對象技術的標準建模語言1998、2000、2001、2003、2005年分別發(fā)布了UML1.2、UML1.3、UML1.4、UML1.5、UML2.02011年發(fā)布了UML2.4,UML2.4.12013年發(fā)布了UML2.5第二十二頁,共九十五頁,編輯于2023年,星期二UML的產生和發(fā)展第二十三頁,共九十五頁,編輯于2023年,星期二(1)統(tǒng)一標準
UML不僅統(tǒng)一了Booch、OMT和OOSE等方法中的基本概念,還吸取了面向對象技術領域中其他流派的長處,其中也包括非OO方法的影響。已經成為OMG的標準。(2)面向對象
UML支持面向對象技術的主要概念,它提供了一批基本的表示模型元素的圖形和方法,能簡潔明了地表達面向對象的各種概念和模型元素。UML的特點第二十四頁,共九十五頁,編輯于2023年,星期二(3)可視化,表達能力強大UML是一種圖形化語言,用UML的模型圖形能清晰地表示系統(tǒng)的邏輯模型或實現模型。UML還提供了語言的擴展機制,用戶可以根據需要增加定義自己的構造型、標記值和約束等。(4)獨立于過程
UML是系統(tǒng)建模的語言,不依賴特定的開發(fā)過程。UML的特點第二十五頁,共九十五頁,編輯于2023年,星期二(5)容易掌握使用
UML概念明確,建模表示法簡潔明了,圖形結構清晰,容易掌握使用。(6)與編程語言的關系
支持UML的一些CASE工具(如Rose)可以根據UML所建立的系統(tǒng)模型自動產生Java、C++等代碼框架。UML的特點第二十六頁,共九十五頁,編輯于2023年,星期二UML的基本模型UML符號為開發(fā)者或開發(fā)工具使用這些圖形符號和文本語法為系統(tǒng)建模提供了標準。這些圖形符號和文字所表達的是應用級的模型,在語義上它是UML元模型的實例。UML模型由事物、關系和圖組成。第二十七頁,共九十五頁,編輯于2023年,星期二UML的基本模型第二十八頁,共九十五頁,編輯于2023年,星期二5.3UML的事物事物是對模型中最具代表性成分的抽象,在UML中,可以分為結構事物、行為事物、分組事物和注釋事物4類。第二十九頁,共九十五頁,編輯于2023年,星期二結構事物結構事物是UML模型的靜態(tài)部分,主要用來描述概念的或物理的元素,包括類、主動類、接口、對象、用例、參與者、協(xié)作、構件和節(jié)點等。(1)類(class)──類用帶有類名、屬性和操作的矩形框來表示。第三十頁,共九十五頁,編輯于2023年,星期二結構事物(2)主動類(activeclass)──主動類的實例應具有一個或多個進程或線程,能夠啟動控制活動。第三十一頁,共九十五頁,編輯于2023年,星期二(3)接口(interface)──描述了一個類或構件的一組外部可用的服務(操作)集。接口定義的是一組操作的描述,而不是操作的實現。一般將接口畫成從實現它的類或構件引出的圓圈,接口體現了使用與實現分離的原則。結構事物第三十二頁,共九十五頁,編輯于2023年,星期二結構事物(4)對象(object)──對象是類的實例,其名字下邊加下劃線,對象的屬性值需明確給出。(5)用例(usecase)──也稱用況,用于表示系統(tǒng)想要實現的行為,即描述一組動作序列(即場景)。而系統(tǒng)執(zhí)行這組動作后將產生一個對特定參與者有價值的結果。第三十三頁,共九十五頁,編輯于2023年,星期二結構事物(6)參與者(actor)──也稱角色,是指與系統(tǒng)有信息交互關系的人、軟件系統(tǒng)或硬件設備,在圖形上用簡化的小木頭人表示。(7)協(xié)作(collaboration)──用例僅描述要實現的行為,不描述這些行為的實現。這種實現用協(xié)作描述。協(xié)作定義交互,描述一組角色實體和其他實體如何通過協(xié)同工作來完成一個功能或行為。類可以參與幾個協(xié)作。第三十四頁,共九十五頁,編輯于2023年,星期二結構事物(8)構件(component)──也稱組件,是系統(tǒng)中物理的、可替代的部件。它通常是描述一些邏輯元素的物理包。(9)節(jié)點(node)──是在運行時存在的物理元素。它代表一種可計算的資源,通常具有一定的記憶能力和處理能力。第三十五頁,共九十五頁,編輯于2023年,星期二行為事物行為事物是UML模型的動態(tài)部分,包括兩類:(1)交互(interaction)──交互由在特定的上下文環(huán)境中共同完成一定任務的一組對象之間傳遞的消息組成。如圖所示。交互涉及的元素包括消息、動作序列(由一個消息所引起的行為)和鏈(對象間的連接)。對象之間的交互第三十六頁,共九十五頁,編輯于2023年,星期二行為事物(2)狀態(tài)機(statemachine)──描述了一個對象或一個交互在生存周期內響應事件所經歷的狀態(tài)序列,單個類或者一組類之間協(xié)作的行為都可以用狀態(tài)機來描述。狀態(tài)機涉及到狀態(tài)、變遷和活動,其中狀態(tài)用圓角矩形來表示。
第三十七頁,共九十五頁,編輯于2023年,星期二分組事物分組事物是UML模型的組織部分。它的作用是為了降低模型復雜性。UML中的分組事物是包(package)。包是把模型元素組織成組的機制,結構事物、行為事物甚至其他分組事物都可以放進包內。第三十八頁,共九十五頁,編輯于2023年,星期二注釋事物注釋事物是UML模型的解釋部分,它們用來描述和標注模型的任何元素。通??梢杂米⑨屝揎棊в屑s束或者解釋的圖。第三十九頁,共九十五頁,編輯于2023年,星期二5.4UML的關系第四十頁,共九十五頁,編輯于2023年,星期二依賴關系依賴(Dependency)是兩個事物之間的語義關系,其中一個事物發(fā)生變化會影響到另一個事物的語義,它用一個虛線箭頭表示。虛線箭頭的方向從源事物指向目標事物,表示源事物依賴于目標事物。第四十一頁,共九十五頁,編輯于2023年,星期二依賴關系第四十二頁,共九十五頁,編輯于2023年,星期二依賴關系第四十三頁,共九十五頁,編輯于2023年,星期二關聯關系關聯(association)是一種結構關系,它描述了兩個或多個類的實例之間的連接關系,是一種特殊的依賴。關聯分為普通關聯、限定關聯、關聯類,以及聚合與復合。第四十四頁,共九十五頁,編輯于2023年,星期二關聯關系——普通關聯普通關聯是最常見的關聯關系,只要類與類之間存在連接關系就可以用普通關聯表示。普通關聯又分為二元關聯和多元關聯。二元關聯描述兩個類之間的關聯,用兩個類之間的一條直線來表示,直線上可寫上關聯名。
第四十五頁,共九十五頁,編輯于2023年,星期二關聯關系——普通關聯多重性(multiplicity):多重性表明在一個關聯的兩端連接的類實例個數的對應關系,即一端的類的多少個實例對象可以與另一端的類的一個實例相關。如果圖中沒有明確標出關聯的多重性,則默認的多重性為1。第四十六頁,共九十五頁,編輯于2023年,星期二關聯關系——普通關聯角色:關聯端點上還可以附加角色名,表示類的實例在這個關聯中扮演的角色。UML還允許一個類與它自身關聯。
第四十七頁,共九十五頁,編輯于2023年,星期二關聯關系——普通關聯多元關聯:多元關聯是指3個或3個以上類之間的關聯。多元關聯由一個菱形,以及由菱形引出的通向各個相關類的直線組成,關聯名可標在菱形的旁邊,在關聯的端點也可以標上多重性等信息。第四十八頁,共九十五頁,編輯于2023年,星期二關聯關系——限定關聯限定關聯通常用在一對多或多對多的關聯關系中,可以把模型中的多重性從一對多變成一對一,或將多對多簡化成多對一。在類圖中把限定詞(qualifier)放在關聯關系末端的一個小方框內。
第四十九頁,共九十五頁,編輯于2023年,星期二關聯關系——關聯類在關聯關系比較簡單的情況下,關聯關系的語義用關聯關系的名字來概括。但在某些情況下,需要對關聯關系的語義做詳細的定義、存儲和訪問,為此可以建立關聯類(associationclass),用來描述關聯的屬性。關聯中的每個鏈與關聯類的一個實例相聯系。關聯類通過一條虛線與關聯連接。
第五十頁,共九十五頁,編輯于2023年,星期二關聯關系——聚合聚合(Aggregation)也稱為聚集,是一種特殊的關聯。它描述了整體和部分之間的結構關系。兩種特殊的聚合關系:共享聚合(sharedaggregation)和復合聚合(compositionaggregation)。如果在聚合關系中處于部分方的實例可同時參與多個處于整體方實例的構成,則該聚合稱為共享聚合。第五十一頁,共九十五頁,編輯于2023年,星期二關聯關系——聚合如果部分類完全隸屬于整體類,部分類需要與整體類共存,一旦整體類不存在了,則部分類也會隨之消失,或失去存在價值,則這種聚合稱為復合聚合。第五十二頁,共九十五頁,編輯于2023年,星期二關聯關系——導航導航(navigability)是關聯關系的一種特性,它通過在關聯的一個端點上加箭頭來表示導航的方向。第五十三頁,共九十五頁,編輯于2023年,星期二泛化關系泛化(generalization)關系就是一般類和特殊類之間的繼承關系。在UML中,一般類亦稱泛化類,特殊類亦稱特化類。泛化針對類型而不針對實例,因為一個類可以繼承另一個類,但一個對象不能繼承另一個對象。泛化可進一步劃分成普通泛化和受限泛化兩類。第五十四頁,共九十五頁,編輯于2023年,星期二泛化關系——普通泛化普通泛化與前面講過的繼承基本相同。但在泛化關系中常遇到抽象類。一般稱沒有具體對象的類為抽象類。抽象類通常作為父類,用于描述其他類(子類)的公共屬性和行為。第五十五頁,共九十五頁,編輯于2023年,星期二泛化關系——普通泛化普通泛化可以分為多重繼承和單繼承。多重繼承是指一個子類可同時繼承多個上層父類。第五十六頁,共九十五頁,編輯于2023年,星期二泛化關系——受限泛化受限泛化關系是指泛化具有約束條件。一般有4種約束:交疊(overlapping)、不相交(disjoint)、完全(complete)和不完全(incomplate)。第五十七頁,共九十五頁,編輯于2023年,星期二實現關系實現(implement)是泛化關系和依賴關系的結合,也是類之間的語義關系,通常在以下兩種情況出現實現關系:(1)接口和實現它們的類或構件之間;(2)用例和實現它們的協(xié)作之間。第五十八頁,共九十五頁,編輯于2023年,星期二5.5UML的圖第五十九頁,共九十五頁,編輯于2023年,星期二1.用例模型用例模型描述的是外部執(zhí)行者(actor)所理解的系統(tǒng)功能。用例模型用于需求分析階段,它的建立是系統(tǒng)開發(fā)者和用戶反復討論的結果,描述了開發(fā)者和用戶對需求規(guī)格達成的共識。在UML中,一個用例模型由若干個用例圖來描述,用例圖的主要元素是用例和執(zhí)行者。用例圖是包括執(zhí)行者、由系統(tǒng)邊界(一個矩形)封閉的一組用例,執(zhí)行者和用例之間的關聯、用例間關系以及執(zhí)行者的泛化的圖。用例圖第六十頁,共九十五頁,編輯于2023年,星期二用例圖用例圖的建模元素第六十一頁,共九十五頁,編輯于2023年,星期二2.用例之間的關系
用例之間可以有泛化、擴展、使用(包含)三種關系。(1)
泛化關系用例泛化是指一個用例可以被特別列舉為一個或多個子用例。用例圖第六十二頁,共九十五頁,編輯于2023年,星期二(2)
擴展關系向一個用例中加入一些新的動作后構成了另一個用例,這兩個用例之間的關系就是擴展關系,后者通過繼承前者的一些行為得來,通常把后者稱為擴展用例。(3)使用(包含)關系當一個用例使用另一個用例時,這兩個用例之間就構成了使用關系。當有一大塊相似的動作存在于幾個用例,又不想重復描述該動作,將重復的部分分離為一個用例,兩用例間關系稱為使用關系。用例圖第六十三頁,共九十五頁,編輯于2023年,星期二銀行儲蓄系統(tǒng)的用例圖第六十四頁,共九十五頁,編輯于2023年,星期二
類圖類圖描述類和類與類之間的靜態(tài)關系,它是從靜態(tài)角度表示系統(tǒng)的,因此類圖屬于一種靜態(tài)模型。類圖是構建其他圖的基礎,沒有類圖就沒有狀態(tài)圖、協(xié)作圖等其他圖,也就無法表示系統(tǒng)其他方面的特性。類圖顯示了類(及其接口)、類的內部結構以及與其他類的聯系。聯系是指類元之間的聯系,在類的建模中可以使用關聯、聚合和泛化(繼承)關系。第六十五頁,共九十五頁,編輯于2023年,星期二銀行儲蓄系統(tǒng)的核心類圖第六十六頁,共九十五頁,編輯于2023年,星期二教學管理系統(tǒng)的類圖第六十七頁,共九十五頁,編輯于2023年,星期二關聯類關聯類是指表示其他類之間關聯關系的類。當一個關聯具有自己的屬性并需要存儲它們時,就需要用關聯類建模。關聯類用虛線連接在兩個類之間的聯系上。第六十八頁,共九十五頁,編輯于2023年,星期二交互圖UML中有兩種類型的交互圖:順序圖和協(xié)作圖。順序圖描述對象之間的動態(tài)交互關系,著重表現對象間消息傳遞的時間順序。順序圖中的符號如下:
第六十九頁,共九十五頁,編輯于2023年,星期二消息的類型交互圖第七十頁,共九十五頁,編輯于2023年,星期二UML定義了三種消息:簡單消息:表示簡單的控制流,它只是表示控制從一個對象傳給另一個對象,而沒有描述通信的任何細節(jié)。同步消息:表示嵌套的控制流,操作的調用是一種典型的同步消息。調用者發(fā)出消息后必須等待消息返回,只有當處理消息的操作執(zhí)行完畢后,調用者才可以繼續(xù)執(zhí)行自己的操作。異步消息:表示異步控制流,發(fā)送者發(fā)出消息后不用等待消息處理完就可以繼續(xù)執(zhí)行自己的操作。異步消息主要用于描述實時系統(tǒng)中的并發(fā)行為。第七十一頁,共九十五頁,編輯于2023年,星期二取款用例的順序圖第七十二頁,共九十五頁,編輯于2023年,星期二通信圖通信圖是順序圖的一種變化形式,用于描述相互協(xié)作的對象間的交互關系和鏈接關系。
第七十三頁,共九十五頁,編輯于2023年,星期二
狀態(tài)圖描述一個特定對象的所有可能的狀態(tài)以及引起狀態(tài)轉換的事件。大多數面向對象技術都用狀態(tài)圖表示單個對象在其生命期中的行為。一個狀態(tài)圖包括一系列狀態(tài)、事件以及狀態(tài)之間的轉移。1.狀態(tài)所有對象都具有狀態(tài),狀態(tài)是對象執(zhí)行了一系列活動的結果。當某個事件發(fā)生后,對象的狀態(tài)將發(fā)生變化。在狀態(tài)圖中定義的狀態(tài)可能有:初態(tài)(初始狀態(tài))、終態(tài)(最終狀態(tài))、中間狀態(tài)和復合狀態(tài)。在一張狀態(tài)圖中只能有一個初態(tài),而終態(tài)則可以有多個。狀態(tài)圖第七十四頁,共九十五頁,編輯于2023年,星期二支票對象的狀態(tài)圖狀態(tài)圖第七十五頁,共九十五頁,編輯于2023年,星期二中間狀態(tài)用圓角矩形表示,可能包含三個部分,第一部分為狀態(tài)的名稱;第二部分為狀態(tài)變量的名字和值,這部分是可選的;第三部分是活動表,這部分也是可選的。中間狀態(tài)狀態(tài)圖第七十六頁,共九十五頁,編輯于2023年,星期二電梯的狀態(tài)圖(本狀態(tài)圖沒有終點)狀態(tài)圖第七十七頁,共九十五頁,編輯于2023年,星期二例:帶有事件說明的狀態(tài)轉換的例子,在上樓及下樓事件中增加參數floor.帶有事件說明的狀態(tài)轉換第七十八頁,共九十五頁,編輯于2023年,星期二在“空閑”狀態(tài),將屬性timer的值置0,然后連續(xù)遞增timer的值,直到“上樓”或“下樓”事件發(fā)生,或守衛(wèi)條件“timer=超時值”。加上屬性的狀態(tài)轉換第七十九頁,共九十五頁,編輯于2023年,星期二活動圖用來捕捉用例的活動,使用框圖的方式顯示動作及其結果?;顒訄D是一個流圖,描述了從活動到活動的流。它是另一種描述交互的方式,它描述采取何種動作,動作的結果是什么(動作狀態(tài)改變),何時發(fā)生(動作序列),以及在何處發(fā)生(泳道)?;顒訄D第八十頁,共九十五頁,編輯于2023年,星期二活動圖中的符號第八十一頁,共九十五頁,編輯于2023年,星期二取款用例的活動圖第八十二頁,共九十五頁,編輯于2023年,星期二構件圖描述軟件構件及構件之間的依賴關系,顯示代碼的靜態(tài)結構。構件是邏輯架構中定義的概念和功能(例如,類、對象及它們之間的關系)在物理架構中的實現。典型情況下,構件是開發(fā)環(huán)境中的實現文件。構件圖第八十三頁,共九十五頁,編輯于2023年,星期二軟件構件可以是下述的任何一種構件。源構件:源構件僅在編譯時才有意義。典型情況下,它是實現一個或多個類的源代碼文件。二進制構件:典型情況下,二進制構件是對象代碼,它是源構件的編譯結果。可執(zhí)行構件:可執(zhí)行構件是一個可執(zhí)行的程序文件,它是鏈接所有二進制構件所得到的結果。一個可執(zhí)行構件代表在處理器(計算機)上運行的可執(zhí)行單元。構件圖第八十四頁,共九十五頁,編輯于2023年,星期二畫圖系統(tǒng)的構件圖第八十五頁,共九十五頁,編輯于2023年,星期二銀行儲蓄系統(tǒng)的構件圖第八十六頁,共九十五頁,編輯于2023年,
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 土地房屋測繪項目投標方案技術標
- 管理會計試卷及答案 卷1
- 5.2 生活中的透鏡 說課稿 2025年初中人教版物理八年級上冊
- 接塵作業(yè)對外周血象和肝功能指標的影響分析
- 《深度學習項目案例開發(fā)》課件-任務一 使用神經網絡完成服飾圖像分類
- 車間定制管理及安全文明設施采購 投標方案(技術方案)
- 購物中心用地居間合同
- 農業(yè)行業(yè)智能灌溉與農產品追溯系統(tǒng)方案
- 國內經濟環(huán)境現狀分析
- 光伏太陽能發(fā)電技術
- 2025年阜陽幼兒師范高等??茖W校單招職業(yè)技能考試題庫學生專用
- 2025年安徽工業(yè)經濟職業(yè)技術學院單招職業(yè)適應性測試題庫附答案
- 2025湖北市政建設集團有限公司管理崗位公開競聘14人筆試參考題庫附帶答案詳解
- 3.13跨學科主題活動-在線學習小能手 課件 川教版(2024)三年級下冊信息科技
- 礦產勘探數據分析-深度研究
- 2025年北京控股集團有限公司招聘筆試參考題庫含答案解析
- 2024年07月江蘇銀行招考筆試歷年參考題庫附帶答案詳解
- 小學生藥品安全課件圖片
- 2021年煤礦應急資源調查報告
- 新入職員工年終工作總結課件
- 專題10 開展心理健康教育 促進身心健康成長-備戰(zhàn)2023年中考英語閱讀理解時文爆點專題訓練(解析版)
評論
0/150
提交評論