版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
用例圖的作用?09:381回顧用例圖是需求分析中的產(chǎn)物,主要作用是描述參與者和用例之間的關系,幫助開發(fā)人員可視化地了解系統(tǒng)的功能。借助于用例圖,系統(tǒng)用戶、系統(tǒng)分析人員、系統(tǒng)設計人員、領域專家能夠以可視化的方式對問題進行探討,減少了大量交流上的障礙,便于對問題達成共識。UML-類圖能夠通過分析用例和問題域得到相關的類能夠根據(jù)需求對各種概念和系統(tǒng)內(nèi)部概念進行的建模09:383能力目標1209:384目錄實例練習4.類與類之間的關系3.類圖的組成2.類圖概述1.09:385以小組為單位討論后,用直線連接以下圖形且說明09:386小組討論&操作09:3871.1類圖基本概念09:3881類圖概述
不同的實體(人、事物和數(shù)據(jù))如何彼此相關聯(lián)的包含了類的屬性和操作也包含了他們之間的關系這種描述在系統(tǒng)的整個生命周期中都是有效的類圖展示了系統(tǒng)的靜態(tài)結構1.2類圖和對象圖09:389類圖中一共包含以下幾種模型元素:類(Class)、接口(Interface)、依賴關系(Dependecy)、泛化關系(Generalization)、關聯(lián)關系(Association)以及實現(xiàn)關系(Realization)對象圖中包含:對象(Object)和鏈(Link),對象是類的特定實例,鏈是類之間的關系實例2.1類(Class)具有相同結構、行為和關系的一組對象的描述符號,類封裝了數(shù)據(jù)和行為,是面向對象的重要組成部分,它是具有相同屬性、操作、關系的對象集合的總稱。09:38102類圖的組成職責指的是類要完成什么樣的功能,要承擔什么樣的義務職責分解成為類的屬性和操作(即方法)。類的屬性即類的數(shù)據(jù)職責,類的操作即類的行為職責職責2.2類的分類09:38111實體類:實體類對應系統(tǒng)需求中的每個實體,它們通常需要保存在永久存儲體中,一般使用數(shù)據(jù)庫表或文件來記錄,實體類既包括存儲和傳遞數(shù)據(jù)的類,還包括操作數(shù)據(jù)的類。實體類來源于需求說明中的名詞,如學生、商品等。2控制類:控制類用于體現(xiàn)應用程序的執(zhí)行邏輯,提供相應的業(yè)務操作,將控制類抽象出來可以降低界面和數(shù)據(jù)庫之間的耦合度??刂祁愐话闶怯蓜淤e結構的短語(動詞+名詞)轉化來的名詞,如增加商品對應有一個商品增加類3邊界類:邊界類用于對外部用戶與系統(tǒng)之間的交互對象進行抽象,主要包括界面類,如對話框、窗口、菜單等。2.3類的UML圖示在UML中,類使用包含類名、屬性和操作且?guī)в蟹指艟€的長方形來表示,如定義一個Employee類,它包含屬性name、age和email,以及操作modifyInfo(),在UML類圖中該類如圖所示:public
class
Employee
{private
String
name;
private
int
age;
private
String
email;
public
void
modifyInfo()
{
......
}
}
09:38122.4類的組成09:3813ClassName類名:每個類都必須有一個名字,類名是一個字符串Attributes屬性:屬性是指類的性質,即類的成員變量Operations操作:是類的任意一個實例對象都可以使用的行為,是類的成員方法屬性和操作的”可見性“對于類外的元素而言是否可見publicprivate表示公有的,用加號表示“+”表示私有的,用減號表示“-”protected表示受保護的,用井號表示“#”可見性名稱:類型[=缺省值]可見性名稱(參數(shù)列表)[:返回類型]在現(xiàn)實世界中,萬物皆有聯(lián)系,在軟件系統(tǒng)中,類也不是孤立存在的,類與類之間存在各種關系,對于不同類型的關系,UML提供了不同的表示方式09:38143類與類之間的關系依賴Dependency泛化Generalization關聯(lián)單向關聯(lián)、雙向關聯(lián)、自關聯(lián)、聚合關系、組合關系實現(xiàn)Realization3.1關聯(lián)關系關聯(lián)(Association)關系是類與類之間最常用的一種關系,它是一種結構化關系,用于表示一類對象與另一類對象之間有聯(lián)系,如汽車和輪胎、師傅和徒弟、班級和學生等等如在一個登錄界面類LoginForm中包含一個JButton類型的注冊按鈕loginButton,它們之間可以表示為關聯(lián)關系,代碼實現(xiàn)時可以在LoginForm中定義一個名為loginButton的屬性對象,其類型為JButton。publicclassLoginForm{privateJButtonloginButton;//定義為成員變量……}publicclassJButton{……}09:38153.1.1雙向關聯(lián)默認情況下,關聯(lián)是雙向的。例如:顧客(Customer)購買商品(Product)并擁有商品,反之,賣出的商品總有某個顧客與之相關聯(lián)。因此,Customer類和Product類之間具有雙向關聯(lián)關系publicclassCustomer{privateProduct[]products;……}publicclassProduct{privateCustomercustomer;……}09:38163.1.2單向關聯(lián)類的關聯(lián)關系也可以是單向的,單向關聯(lián)用帶箭頭的實線表示。例如:顧客(Customer)擁有地址(Address),則Customer類與Address類具有單向關聯(lián)關系publicclassCustomer{privateAddressaddress;……}publicclassAddress{……}09:38173.1.3自關聯(lián)在系統(tǒng)中可能會存在一些類的屬性對象類型為該類本身,這種特殊的關聯(lián)關系稱為自關聯(lián)。例如:一個節(jié)點類(Node)的成員又是節(jié)點Node類型的對象publicclassNode{privateNodesubNode;……}09:38183.1.4多重性關聯(lián)多重性關聯(lián)關系又稱為重數(shù)性(Multiplicity)關聯(lián)關系,表示兩個關聯(lián)對象在數(shù)量上的對應關系。在UML中,對象之間的多重性可以直接在關聯(lián)直線上用一個數(shù)字或一個數(shù)字范圍表示。09:3819例如:一個界面(Form)可以擁有零個或多個按鈕(Button),但是一個按鈕只能屬于一個界面,因此,一個Form類的對象可以與零個或多個Button類的對象相關聯(lián),但一個Button類的對象只能與一個Form類的對象關聯(lián)。publicclassForm{privateButton[]buttons;//定義一個集合對象……}publicclassButton{……}09:38203.1.5聚合關系聚合(Aggregation)關系表示整體與部分的關系。在聚合關系中,成員對象是整體對象的一部分,但是成員對象可以脫離整體對象獨立存在。在UML中,聚合關系用帶空心菱形的直線表示。例如:汽車發(fā)動機(Engine)是汽車(Car)的組成部分,但是汽車發(fā)動機可以獨立存在,因此,汽車和發(fā)動機是聚合關系09:38213.1.6組合關系組合(Composition)關系也表示類之間整體和部分的關系,但是在組合關系中整體對象可以控制成員對象的生命周期,一旦整體對象不存在,成員對象也將不存在,成員對象與整體對象之間具有同生共死的關系。在UML中,組合關系用帶實心菱形的直線表示。例如:人的頭(Head)與嘴巴(Mouth),嘴巴是頭的組成部分之一,而且如果頭沒了,嘴巴也就沒了,因此頭和嘴巴是組合關系,如圖09:38223.2依賴關系依賴(Dependency)關系是一種使用關系,特定事物的改變有可能會影響到使用該事物的其他事物,在需要表示一個事物使用另一個事物時使用依賴關系。在UML中,依賴關系用帶箭頭的虛線表示,由依賴的一方指向被依賴的一方。例如:駕駛員開車,在Driver類的drive()方法中將Car類型的對象car作為一個參數(shù)傳遞,以便在drive()方法中能夠調用car的move()方法,且駕駛員的drive()方法依賴車的move()方法,因此類Driver依賴類Car,如圖09:38233.3泛化關系泛化(Generalization)關系也就是繼承關系,用于描述父類與子類之間的關系,父類又稱作基類或超類,子類又稱作派生類。09:3824對應的Java代碼片段:publicclassPersonprotectedStringname;protectedintage;publicvoidmove(){……}publicvoidsay(){……}}publicclassStudentextendsPerson{privateStringstudentNo;publicvoidstudy(){……}}publicclassTeacherextendsPerson{privateStringteacherNo;publicvoidteach(){……}}09:38253.4接口與實現(xiàn)關系在很多面向對象語言中都引入了接口的概念,如Java、C#等,在接口中,通常沒有屬性,而且所有的操作都是抽象的,只有操作的聲明,沒有操作的實現(xiàn)。UML中用與類的表示法類似的方式表示接口,如圖09:3826接口之間也可以有與類之間關系類似的繼承關系和依賴關系,但是接口和類之間還存在一種實現(xiàn)(Realization)關系,在這種關系中,類實現(xiàn)了接口,類中的操作實現(xiàn)了接口中所聲明的操作。例如:定義了一個交通工具接口Vehicle,包含一個抽象操作move(),在類Ship和類Car中都實現(xiàn)了該move()操作,不過具體的實現(xiàn)細節(jié)將會不一樣09:3827對應的Java代碼片段如下publicinterfaceVehicle{publicvoidmove();}publicclassShipimplementsVehicle{publicvoidmove(){……}}publicclassCarimplementsVehicle{publicvoidmove(){……}}09:3828一張圖總結出所有關系09:3829根據(jù)以下類,請繪制出類圖:車、輪胎、發(fā)動機、小汽車、自行車、學生、班級、身份證、suv、嘴巴09:3830(1)以“遠程網(wǎng)絡教學系統(tǒng)”為例,在該系統(tǒng)中參與者為學生、教師和系統(tǒng)管理員:學生包括登錄名稱、登錄密碼、學生編號、性別、年齡、班級、年級、郵箱等屬性;教師包括登錄
名稱、登錄密碼、姓名、性別、教授課程、電話號碼和郵箱等屬性;系統(tǒng)管理員包括用戶名系統(tǒng)管理員密碼、郵箱等屬性。根據(jù)這些信息創(chuàng)建系統(tǒng)的類圖。(2)在上題中如果把參與者學生、教師和系統(tǒng)管理員進行抽象,從而抽象出一個單獨的人員類類,學生、教師和系統(tǒng)管理員分別是人員類的子類。根據(jù)這些信息重新創(chuàng)建類圖。09:38314實例練習(1)09:3832答案圖書管理系統(tǒng)中,有各種類型的讀者,可以借閱各種類型的圖書,圖書由圖書編目員維護,圖書管理員管理圖書、借閱信息和讀者09:38334實例練習(2)09:3834答案09:3835Thanks!UML統(tǒng)一建模語言
時序圖/順序圖UMLUnifiedModelingLanguage09:3837目標知識目標·掌握時序圖的基本元素·熟悉繪制時序圖的步驟和方法Teachinggoal能力目標·具有根據(jù)項目實際情況利用時序圖建模的能力素質目標:培養(yǎng)學生動手、解決問題、邏輯分析的能力09:3838內(nèi)容時序圖案例案例及練習4.時序圖元素2.時序圖繪制步驟及方法3.時序圖概述1.09:3839系統(tǒng)或對象的動態(tài)模型主要包括09:38401序列(順序/時序sequence)圖概述狀態(tài)模型交互模型活動圖狀態(tài)圖協(xié)作圖順序圖09:38411時序圖(SequenceDiagram)概述①描述了與用例相關的多個對象及其之間的動態(tài)交互關系,通常用于解釋系統(tǒng)用例的實現(xiàn)過程。用例常常被細化為一個或多個時序圖。②主要用來描述對象之間信息交換時的時間順序。③可以有效地幫助人們觀察和理解系統(tǒng)的動態(tài)行為。09:38421時序圖概述–例如:用戶登錄登錄(1)用戶將用戶名和密碼提交給LoginAction
(2)由LoginAction調用UserManager
(3)UserManager到用戶數(shù)據(jù)庫UserServer中查找用戶對象并返回(4)由UserManager判斷用戶名是否為空、密碼是否正確(5)然后將User對象返回(6)返回后臺登錄主界面。09:384309:3844活動者(actor)或者對象(object)生命線(lifeline)激活(activation)/控制焦點(focusofcontrol)消息(message)09:38452時序圖的組成元素當執(zhí)行一個用例行為時,順序圖中的每條消息對應了一個類操作或狀態(tài)機中引起轉換的事件。09:3846①活動者活動者和對象按照從左到右的順序排列一般最多兩個活動者,他們分列兩端。啟動這個用例的活動者往往排在最左邊;接收消息的活動者則排在最右端;對象從左到右按照重要性排列或按照消息先后順序排列。09:3847②對象對象的命名方式有三種:包括對象名和類名類名(匿名對象)對象名(不關心類)09:3848③生命線(Lifeline):每個對象都有自己的生命線,用來表示在該用例中一個對象在一段時間內(nèi)的存在,垂直的虛線表示。如果對象生命期結束,則用注銷符號表示對象默認的位置在圖頂部,表示對象在交互之前已經(jīng)存在如果是在交互過程中由另外的對象所創(chuàng)建,則位于圖的中間某處。09:3849④激活當一條消息被傳遞給對象的時候,它會觸發(fā)該對象的某個行為,這時就說該對象被激活了。在UML中,激活用一個在生命線上的細長矩形框表示。矩形本身被稱為對象的激活期或控制期,對象就是在激活期頂端被激活的。激活期說明對象正在執(zhí)行某個動作。當動作完成后,伴隨著一個消息箭頭離開對象的生命線,此時對象的一個激活期也宣告結束。09:3850⑤消息向哪個對象發(fā)消息實際上就是調用它的類中的操作,就是調用箭頭指向的對象所在類的一個operation。順序圖中消息編號可顯示,也可不顯示。訂單類發(fā)消息給客戶類調用客戶類中的“驗證客戶”操作09:3851當進行時序圖建模時,所用到的消息主要包括以下幾種類型:同步消息(SynchronousMessage)自關聯(lián)消息(Self-Message)返回消息(ReturnMessage)異步消息(AsynchronousMessage)09:385209:3853同步消息是指消息的發(fā)送者把控制傳遞給消息的接收者,然后停止活動,等待消息的接收者放棄或者返回控制。在時序圖中,同步消息用實心箭頭表示。自關聯(lián)消息自關聯(lián)消息是指自身調用自身的方法,即自我調用的同步消息09:3854返回消息調用消息中的操作完成后,由接收對象返回給發(fā)送對象的說明執(zhí)行結果的回應。一個同步消息通常對應一個返回消息。異步消息是一種不需要等待返回消息的特殊調用消息。發(fā)送對象發(fā)送消息后可以立刻進行下一步操作,無需一直等待回復。09:3855組合片段組合片段用來解決交互執(zhí)行的條件及方式。它允許在序列圖中直接表示邏輯組件,用于通過指定條件或子進程的應用區(qū)域,為任何生命線的任何部分定義特殊條件和子進程。09:3856片段類型名稱說明Opt選項包含一個可能發(fā)生或可能不發(fā)生的序列。
可以在臨界中指定序列發(fā)生的條件。Alt抉擇包含一個片段列表,這些片段包含備選消息序列。
在任何場合下只發(fā)生一個序列??梢栽诿總€片段中設置一個臨界來指示該片段可以運行的條件。
else
的臨界指示其他任何臨界都不為
True
時應運行的片段。
如果所有臨界都為
False
并且沒有
else,則不執(zhí)行任何片段。Loop循環(huán)片段重復一定次數(shù)。
可以在臨界中指示片段重復的條件。Loop
組合片段具有“Min”和“Max”屬性,它們指示片段可以重復的最小和最大次數(shù)。
默認值是無限制。Break中斷如果執(zhí)行此片段,則放棄序列的其余部分。
可以使用臨界來指示發(fā)生中斷的條件。Par并行并行處理。
片段中的事件可以交錯。Critical關鍵用在
Par
或
Seq
片段中。
指示此片段中的消息不得與其他消息交錯。Seq弱順序有兩個或更多操作數(shù)片段。
涉及同一生命線的消息必須以片段的順序發(fā)生。
如果消息涉及的生命線不同,來自不同片段的消息可能會并行交錯。Strict強順序有兩個或更多操作數(shù)片段。
這些片段必須按給定順序發(fā)生。a.抉擇(Alt)抉擇在任何場合下只發(fā)生一個序列。可以在每個片段中設置一個臨界來指示該片段可以運行的條件。else的臨界指示其他任何臨界都不為True時應運行的片段。如果所有臨界都為False并且沒有else,則不執(zhí)行任何片段。09:385809:3859b.選項(Opt)包含一個可能發(fā)生或不發(fā)生的序列09:3860c.循環(huán)(Loop)片段重復一定次數(shù)??梢栽谂R界中指示片段重復的條件。09:3861d.
并行(Par)09:3862對系統(tǒng)動態(tài)行為建模的過程中,當強調按時間展開信息的傳送時,一般使用時序圖建模技術。一個單獨的時序圖只能顯示一個控制流。一般情況下,一個完整的控制流是非常復雜的,要描述它需要創(chuàng)建很多交互圖(包括時序圖和協(xié)作圖),一些圖是主要的,另一些圖用來描述可選擇的路徑和一些例外,再用一個包對它們進行統(tǒng)一的管理。09:38633時序圖繪制步驟及方法時序圖建立步驟64設置消息4.設置對象生命線開始和結束3.識別參與交互的對象和活動者2.確定交互的范圍1.細化消息5.09:3865①②③⑤④設置交互的語境,這些語境可以是系統(tǒng)、子系統(tǒng)、類、用例和協(xié)作的一個腳本。識別對象在交互語境中所扮演的角色,根據(jù)對象的重要性及相互關系,將其從左至右放置在時序圖的頂部。設置每個對象的生命線。通常情況下,對象存在于整個交互過程中,但它們也可以在交互過程中創(chuàng)建和撤銷從引發(fā)某個消息的信息開始,在生命線之間畫出從頂?shù)降滓来握归_的消息,顯示每個消息的內(nèi)容標識。設置對象的激活期,可視化消息的嵌套或可視化實際計算發(fā)生時的時間點。⑥如果需要設置時間或空間的約束,可以為每個消息附上合適的時間和空間約束。如果需要形式化的說明某控制流,可以為每個消息附上前置和后置條件。時序圖交互建模策略下面將以“教師查看學生成績”為例,介紹如何去創(chuàng)建系統(tǒng)的序列圖09:3866名稱教師查看學生成績標識UC011描述教師查看學生關于某門課程的成績前提學生為在校學生,擁有學號結果顯示學生的成績或空擴展N/A包含N/A繼承N/A09:3867可以通過更加具體的描述來確定工作流程,基本的工作流程如下:李老師希望通過系統(tǒng)查詢某名學生的學科成績。李老師通過用戶界面錄入學生的學號。用戶界面根據(jù)學生的學號向數(shù)據(jù)庫訪問層請求學生信息。數(shù)據(jù)庫訪問層根據(jù)學生的學號加載學生信息。數(shù)據(jù)庫訪問層根據(jù)學生信息和學科科目獲取該名學生的分數(shù)信息。數(shù)據(jù)庫訪問層將學生信息和分數(shù)信息提供給用戶界面。用戶界面將學生信息和分數(shù)信息顯示出來。09:3868在這些基本的工作流程中還存在分支,可使用備選過程來描述。備選過程A:該名學生沒有學科成績。① 數(shù)據(jù)訪問層返回學科成績?yōu)榭?。?系統(tǒng)提示李老師沒有該學生的成績。備選過程B:系統(tǒng)沒有該學生的信息。① 數(shù)據(jù)訪問層返回學生信息為空。② 系統(tǒng)提示李老師該學生不存在。09:386909:387009:387109:3872請使用alt組合片段在一張圖中重新繪制教師查看學生成績的時序圖?09:387309:3874請繪制讀者借閱圖書的時序圖。小提示:有讀者、系統(tǒng)鍵盤鼠標、系統(tǒng)屏幕、書籍對象、讀者對象、借閱對象。09:3875練習09:38764時序圖建模案例及練習圖書管理系統(tǒng)時序圖建模
1.添加借閱者添加借閱者的過程為:系統(tǒng)管理員選擇菜單項“添加借閱者”,彈出AddBorrowerDialog對話框。系統(tǒng)管理員可以在該對話框中輸入借閱者的信息并提交,隨后系統(tǒng)對管理員所提交的借閱者信息進行驗證,查看輸入的借閱證號是否已經(jīng)存在于系統(tǒng)中,若不存在,則為借閱者創(chuàng)建一個賬戶,并存儲借閱者信息。2.修改借閱者修改借閱者的過程為:系統(tǒng)管理員選擇菜單項“修改借閱者”,彈出UpdateBorrowerDialog對話框。系統(tǒng)管理員可以在該對話框中輸入借閱者的借閱證號,隨后系統(tǒng)查詢數(shù)據(jù)庫并顯示相關的借閱者信息(如果輸入的借閱者信息不存在,則顯示提示信息,結束修改操作),修改相關借閱者信息,并存儲。3.刪除借閱者刪除借閱者的過程為:系統(tǒng)管理員選擇菜單項“刪除借閱者”,彈出DeleteBorrowerDialog對話框。系統(tǒng)管理員可以在該對話框中輸入借閱者的借閱證號,隨后系統(tǒng)查詢數(shù)據(jù)庫并顯示相關的借閱者信息(如果輸入的借閱者信息不存在,則顯示提示信息,結束刪除操作),點擊刪除按鈕,系統(tǒng)確認是否存在與該借閱者相關的借閱信息,若有,顯示提示信息,結束刪除操作;若沒有,則系統(tǒng)刪除該借閱者。4.添加書目添加書目的過程為:系統(tǒng)管理員選擇菜單項“添加書目”,彈出AddTitleDialog對話框。系統(tǒng)管理員可以在該對話框中輸入圖書的名稱、ISBN號、出版社名、作者姓名等信息并提交,系統(tǒng)根據(jù)提交的ISBN號查詢圖書的書目是否存在,若不存在,則為創(chuàng)建該書目。5.修改書目修改書目的過程為:系統(tǒng)管理員選擇菜單項“修改書目”,彈出UpdateTitleDialog對話框。系統(tǒng)管理員可以在該對話框中輸入圖書的ISBN號并提交,隨后系統(tǒng)查詢數(shù)據(jù)庫并顯示相關的書目信息(如果輸入的ISBN號不存在,則顯示提示信息,結束修改操作),修改相關書目信息,并存儲。6.刪除書目刪除書目的過程為:系統(tǒng)管理員選擇菜單項“刪除書目”,彈出DeleteTitleDialog對話框。系統(tǒng)管理員可以在該對話框中輸入圖書的ISBN號并提交,隨后系統(tǒng)查詢數(shù)據(jù)庫并顯示相關的書目信息(如果輸入的書目信息不存在,則顯示提示信息,結束刪除操作),點擊刪除按鈕,系統(tǒng)驗證該書目對應的圖書數(shù)目是否為0,如果為0,則刪除該書目信息;反之,則系統(tǒng)提示必須先刪除相應的圖書。7.添加圖書添加圖書的過程為:系統(tǒng)管理員選擇菜單項“添加圖書”,彈出AddBookDialog對話框。系統(tǒng)管理員可以在該對話框中輸入圖書的ISBN號并提交,系統(tǒng)根據(jù)提交的ISBN號查詢圖書的書目是否存在,若不存在,則提示管理員需要先添加書目,然后才可以添加圖書;若存在,則添加一個圖書,并更新圖書對應的書目信息。8.刪除圖書刪除圖書的過程為:系統(tǒng)管理員選擇菜單項“刪除圖書”,彈出DeleteBookDialog對話框。系統(tǒng)管理員可以在該對話框中輸入要刪除圖書的ISBN號并提交,隨后系統(tǒng)查詢數(shù)據(jù)庫并顯示相關的圖書信息(如果輸入的ISBN號不存在,則顯示提示信息,結束刪除操作),系統(tǒng)管理員進行確認并點擊刪除按鈕,刪除該圖書,系統(tǒng)更新相應的書目信息。9.添加管理員添加管理員的過程為:系統(tǒng)管理員選擇菜單項“添加管理員”,彈出AddManagerDialog對話框。系統(tǒng)管理員可以在該對話框中先輸入一個用戶名和初始密碼,然后提交,系統(tǒng)根據(jù)提交的用戶名和密碼驗證該用戶名是否已經(jīng)存在,若該用戶已經(jīng)存在,系統(tǒng)則提示出錯;若不存在,則系統(tǒng)提示先添加管理員的權限為系統(tǒng)管理員還是圖書管理員,并根據(jù)系統(tǒng)管理員的選擇添加一個圖書管理員或系統(tǒng)管理員。10.刪除管理員刪除管理員的過程為:系統(tǒng)管理員選擇菜單項“刪除管理員”,彈出DeleteManagerDialog對話框。系統(tǒng)管理員可以在該對話框中輸入要刪除的管理員的用戶名并提交,隨后系統(tǒng)查詢數(shù)據(jù)庫,以檢驗該管理員是否存在,若存在,則刪除該管理員。11.借閱圖書借閱圖書的過程為:圖書管理員選擇菜單項“借閱圖書”,彈出BorrowDialog對話框,圖書管理員在該對話框中輸入借閱者信息,然后由系統(tǒng)查詢數(shù)據(jù)庫,以驗證該借閱者的合法性,若借閱者合法,則在由圖書管理員輸入所要借閱的圖書信息,系統(tǒng)記錄并保存該借閱信息。12.歸還圖書歸還圖書的過程為:圖書管理員選擇菜單項“歸還圖書”,彈出ReturnDialog對話框,圖書管理員在該對話框中輸入歸還圖書編號,然后由系統(tǒng)查詢數(shù)據(jù)庫,以驗證該圖書是否為本館藏書,若圖書不合法,則提示圖書管理員;若合法,則由系統(tǒng)查找該圖書的借閱者信息,然后刪除相對應的借閱記錄,并更新借閱者信息。13.查詢借閱信息查詢借閱信息的過程為:圖書管理員選擇菜單項“查詢借閱信息”,彈出QueryDialog對話框,圖書管理員在該對話框中輸入要查詢的借閱證號,然后由系統(tǒng)查詢數(shù)據(jù)庫,以獲得該借閱者信息,并通過顯示借閱信息用例顯示該借閱者所借閱的所有圖書信息。14.顯示借閱信息顯示借閱信息的過程為:當BorrowDialog、ReturnDialog和QueryDialog對話框調用Borrower類的GetTitleInfo()方法時,系統(tǒng)獲取該借閱者信息,然后根據(jù)借閱信息找到所借閱的圖書,并進一步獲取所借閱圖書對應的書目信息,最后由相應的對話框負責顯示。15.超期處理超期處理的前提條件是:當發(fā)生借書或還書時,首先由系統(tǒng)找到借閱者的信息,然后調用超期處理以檢驗該借閱者是否有超期的借閱信息。超期處理的過程為:獲取借閱者的所有借閱信息,查詢數(shù)據(jù)庫以獲取借閱信息的日期,然后由系統(tǒng)與當時日期比較,以驗證是否超過了規(guī)定的借閱期限,若超過規(guī)定的借閱時間,則顯示超期的圖書信息,以提示圖書管理員。16.管理員登錄管理員登錄的過程為:當圖書管理員或系統(tǒng)管理員運行系統(tǒng)時,系統(tǒng)將首先運行Login對話框,然后又圖書管理員或系統(tǒng)管理員輸入用戶名和密碼,并提交到系統(tǒng),后來由系統(tǒng)查詢數(shù)據(jù)庫以完成對用戶身份的驗證,當通過驗證后,將根據(jù)登錄的用戶是系統(tǒng)管理員還是圖書管理員,以打開相應的對話框。17.修改密碼修改密碼的過程為:圖書管理員選擇菜單項“修改密碼”,彈出ModifyDialog對話框,圖書管理員在該對話框中輸入舊密碼和新密碼,并提交,然后由系統(tǒng)查詢數(shù)據(jù)庫,以驗證當前用戶的密碼是否與輸入的舊密碼相同,若相同,則將密碼更改為新的密碼,并提示圖書管理員修改密碼成功。在圖中出現(xiàn)了兩個Librarian對象,它們的含義是不相同的,一個代表系統(tǒng)的參與者,它不包含在系統(tǒng)中,另一個是為了實現(xiàn)系統(tǒng)的安全性,在系統(tǒng)中創(chuàng)建的參與者對象的映像。
09:38111Thanks!序列圖由哪幾個元素組成?序列圖常用的有幾種消息?交互框中使用“alt”“opt”“par”分別代表什么意思?一般什么情況下使用序列圖建模?09:38112回顧UML-狀態(tài)圖能夠理解狀態(tài)圖對系統(tǒng)交互建模能夠根據(jù)實體處于不同的狀態(tài)建模09:38114能力目標09:38115目錄建立狀態(tài)圖的步驟4.狀態(tài)圖的組成3.實體的狀態(tài)2.狀態(tài)圖概述1.09:38116狀態(tài)圖(StatechartDiagram)狀態(tài)圖主要用于可視化的描述一個對象在其生存期間的動態(tài)行為,表現(xiàn)一個對象所經(jīng)歷的狀態(tài)序列,引起狀態(tài)轉移的事件(event),以及因狀態(tài)轉移而伴隨的動作(action)。一個狀態(tài)機可以被一個狀態(tài)圖描述,對于一個比較復雜的狀態(tài)機,也可用多張狀態(tài)圖來表示。(狀態(tài)機“StateMachine”
是一種數(shù)學模型,它描述了一個系統(tǒng)或對象在不同時間內(nèi)所處的狀態(tài),以及在不同狀態(tài)下如何響應輸入和事件。)09:381171概述先舉個栗子:09:38118狀態(tài)是指在對象(狀態(tài)從屬于一個特定的對象)的生命期中滿足某些條件、執(zhí)行某些活動或等待某些事件時的一個條件或狀況。下面一些例子形象地說明了對象和狀態(tài)。(1)支票(對象)已付(狀態(tài))。(2)汽車(對象)已啟動(狀態(tài))。(3)小王(對象)睡著了(狀態(tài))。(4)小紅(對象)未婚(狀態(tài))。對象在任何時候都會處于某種狀態(tài)中,所有對象都有狀態(tài)對象所處的狀態(tài)決定了它如何響應所檢測到的事件或所接收的消息。A.清醒-(被批評)-生氣B.醉酒-(被批評)-無反應通常,事件使對象從一個狀態(tài)轉向另一個狀態(tài)(即狀態(tài)的轉換)09:381192首先看看什么是狀態(tài)?(1)狀態(tài)state初態(tài):是狀態(tài)圖的起始點,用實心圓表示,一個狀態(tài)圖只能有一個初態(tài)。終態(tài):是狀態(tài)圖的終點,用套有一個小
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度生物制藥廠房租賃合同及藥品研發(fā)生產(chǎn)服務協(xié)議3篇
- 科技力量團隊榮耀
- 2025年度精密模具加工委托合同協(xié)議書4篇
- 2025年度柴油發(fā)電機租賃與環(huán)保檢測服務協(xié)議3篇
- 二零二五年度出租車租賃運營管理承包合同3篇
- 二零二五年度餐飲行業(yè)健康證照辦理服務合同樣本3篇
- 2025年度產(chǎn)學研合作知識產(chǎn)權共享合同2篇
- 專業(yè)鉆掘設備出租協(xié)議規(guī)范文本一
- 個人租車合同協(xié)議書
- 2025年度廁所清潔能源應用與改造合同3篇
- 深圳2024-2025學年度四年級第一學期期末數(shù)學試題
- 中考語文復習說話要得體
- 《工商業(yè)儲能柜技術規(guī)范》
- 華中師范大學教育技術學碩士研究生培養(yǎng)方案
- 醫(yī)院醫(yī)學倫理委員會章程
- xx單位政務云商用密碼應用方案V2.0
- 風浪流耦合作用下錨泊式海上試驗平臺的水動力特性試驗
- 高考英語語法專練定語從句含答案
- 有機農(nóng)業(yè)種植技術操作手冊
- 塑料件缺陷匯總
- 2020年的中國海外工程示范營地申報材料及評分標準
評論
0/150
提交評論