會議管理系統(tǒng)介紹課件_第1頁
會議管理系統(tǒng)介紹課件_第2頁
會議管理系統(tǒng)介紹課件_第3頁
會議管理系統(tǒng)介紹課件_第4頁
會議管理系統(tǒng)介紹課件_第5頁
已閱讀5頁,還剩49頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

一、問題陳述

有一個(gè)對外營業(yè)的會議中心,有各種不同規(guī)格的會議室,為用戶提供以下服務(wù):1、用戶可以按照會議人數(shù)、會議時(shí)間預(yù)訂會議室??梢灾活A(yù)訂1次,也可預(yù)訂定期召開的會議。2、開會前允許修改會議時(shí)間、人數(shù),重新選擇會議室,甚至取消預(yù)訂的會議。3、確定會議預(yù)訂后,會議中心負(fù)責(zé)會務(wù)管理:包括通過郵寄或電子郵件,通知開會人員有關(guān)會議信息,制作代表證等。4、系統(tǒng)根據(jù)會議室的使用情況(緊張與否),調(diào)整、更改會議室和會議時(shí)間,并調(diào)整修改預(yù)訂會議的時(shí)間。會議管理系統(tǒng)退出下頁末頁案例三一、問題陳述會議管理系統(tǒng)退出下頁末頁案例三1二、建立用例模型1、識別角色

找出所有可能與系統(tǒng)發(fā)生交互行為的外部實(shí)體、對象、系統(tǒng)??紤]系統(tǒng)的主要功能的使用者,就會想到用戶和系統(tǒng)管理者,但如果直接將用戶定義為角色,系統(tǒng)的所有功能幾乎都由用戶使用。根據(jù)問題的描述,系統(tǒng)要求將會議和會議的召開分開來。從會議的角度看,允許用戶定義、更改或刪除一個(gè)會議。從會議召開的角度看,允許用戶為某個(gè)會議定義召開時(shí)間、參加人數(shù)、更改相應(yīng)的數(shù)據(jù)或刪除已定義的會議召開。因此,將用戶識別為“會議管理者”和“會議申請者”兩個(gè)角色。本系統(tǒng)定義以下角色:會議管理者(MeetingAdministrator)會議申請者(MeetingInstanceRequester)郵局(PostOffice)會議人員管理(AttendeeManagement)系統(tǒng)維護(hù)者(SystemMaintainer)退出上頁首頁下頁末頁二、建立用例模型1、識別角色退出上頁首頁下頁末頁2

在識別角色的基礎(chǔ)上,列出與角色相關(guān)的用例,有的用例與多個(gè)角色相關(guān),經(jīng)過分析,確定系統(tǒng)的用例(打)。⑴與會議管理者相關(guān)的用例:

定義一個(gè)會議(DefineMeeting)更改一個(gè)會議(AlterMeeting)

刪除一個(gè)會議(RemoveMeeting

⑵與會議申請者相關(guān)的用例:

申請會議召開(RequestMeetingInstance)

更改申請(ChangRequest)

取消申請(CancelRequest)

定義參加人員(AddAttendee)

歸還會議室(ReleaseRoom)

2、用例識別退出上頁首頁下頁末頁在識別角色的基礎(chǔ)上,列出與角色相關(guān)的用例,有的用例與多個(gè)32、用例識別

⑶與郵局相關(guān)的用例:

申請會議召開(RequestMeetingInstance)更改申請(ModifyRequest)取消申請(CancelRequest

)⑷與會議人員管理相關(guān)的用例:定義參加人員(AddAttendee)取消申請(CancelRequest)申請會議召開(RequestMeetingInstance)更改申請(ModifyRequest)

⑸與系統(tǒng)維護(hù)者相關(guān)的用例:會議室維護(hù)(MeetingRoomMaintenance)

設(shè)定預(yù)定時(shí)限(SetReservationTomeLimit)

在確定角色和用例的基礎(chǔ)上,畫出用例圖(圖1)。

退出上頁首頁下頁末頁2、用例識別退出上頁首頁下頁末頁43、會議管理系統(tǒng)的Usecase圖圖1會議管理系統(tǒng)的Usecase圖歸還會議室申請會議召開更改申請取消申請定義參加人員會議召開申請者郵局會議人員管理設(shè)置預(yù)定時(shí)限會議室維護(hù)定義會議更改會議刪除會議系統(tǒng)維護(hù)者會議管理員

退出上頁首頁下頁末頁3、會議管理系統(tǒng)的Usecase圖圖1會議管理系統(tǒng)的Us5用例1、定義會議(DefineMeeting)輸入會議名稱確定會議規(guī)模確定會議類型其中會議規(guī)模是指參會人數(shù)范圍。用例2、更改會議(AlterMeeting)改變會議名稱改變會議規(guī)模改變會議召開頻度用例3、刪除會議(RemoveMeeting)如果該會議沒有召開申請從會議列表中刪除如果該會議有召開申請取消與之相關(guān)的會議召開信息刪除該會議使用:用例8刪除參加人員(RemoveAttendee)用例6取消申請(CancelRequest)4、對用例的進(jìn)一步描述用例4、申請會議召開(RequestMeetingInstance)確定召開時(shí)間(年、月、日)確定參加人員確定侯選會議室發(fā)會議通知使用:用例11發(fā)會議通知(InformofMeeting)用例13選擇參加組(SelectGroupAttendee)擴(kuò)展:①如果召開時(shí)間在申請時(shí)限之外用例12申請拒絕(RequestRejection)②如果還沒定義參加人員用例7定義參加人員(AddAttendee

)用例5:更改申請(ModifyRequest)更改召開時(shí)間更改參加人員更改取得會議室發(fā)會議更改通知使用:用例13選擇參加組(SelectGroupAttendee)用例11發(fā)會議通知(InformofMeeting)擴(kuò)展:①如果更改的時(shí)間不合法用例12申請拒絕(RequestRejection)②用例7定義參加人員(AddAttendee)退出上頁首頁下頁末頁用例1、定義會議(DefineMeeting)用例2、更6用例6:取消會議召開(CancelRequest)、取消申請歸還會議室發(fā)會議取消通知使用:用例8歸還會議室(ReleaseRoom)用例14發(fā)會議取消通知(InformRejection)擴(kuò)展:①如果會議已召開用例12申請拒絕(RequestRejection)用例7:定義參加人員(AddAttendee)輸入?yún)⒓尤藛T的詳細(xì)信息定義參加組用例9:會議維護(hù)(MeetingRoomMaintenance)加入一個(gè)會議室(用例15)標(biāo)記一個(gè)會議室不可用(用例16)查詢會議室預(yù)定情況(用例17)用例10:設(shè)置預(yù)定時(shí)限制(SetReservationTomeLimit)設(shè)置時(shí)間限用例11:發(fā)會議通知(InformofMeeting)

從會議人員管理獲得參加人員的投遞地址填寫通知(會議召開時(shí)間、會議室號碼)發(fā)送通知用例12:申請拒絕(RequestRejection)作廢當(dāng)前的一切輸入中字止用戶當(dāng)前的操作用例13:選擇會議參加人員組(SelectGroupAttendee)瀏覽會議組成員選擇參加組用例14:會議取消通知(InformofCancellation)從會議人員管理處獲取參加人員地址填寫通知發(fā)送通知

用例8:歸還會議室(ReleaseRoom)輸入會議室號碼輸入使用時(shí)間刪除參加人員歸還會議室使用:用例9會議室維護(hù)(MeetingRoomMaintenance)用例18刪除參加人員(RemoveAttendee)退出上頁首頁下頁末頁用例6:取消會議召開(CancelRequest)、用例77用例15:增加會議室(AddMeetingRoom)輸入會議室號碼輸入會議室規(guī)模輸入會議室可使用狀態(tài)(可使用、不可使用)加入該會議室用例16:設(shè)置會議室不可使用(SetUnusableFlag)輸入會議室號碼通知該會議室的預(yù)定者標(biāo)記該會議室的可所以狀態(tài)為不可用用例17:查詢會議室的使用情況(BrowseMeetingroomusage)輸入會議室號碼查詢本用例返回會議室的使用狀態(tài)(已使用、空閑)和會議室的可否使用情況。用例18:刪除會議參加人員(RemoveAttendee)刪除參加人員刪除參加組圖2描述了會議管理系統(tǒng)完整的用例模型。退出上頁首頁下頁末頁用例15:增加會議室(AddMeetingRoom)退出85、完整的會議管理系統(tǒng)的Usecase圖圖2完整的會議管理系統(tǒng)Usecase圖退出上頁首頁下頁末頁5、完整的會議管理系統(tǒng)的Usecase圖圖2完整的會議管9

除了用例模型外,其他模型都依賴于類模型,因此,類模型是OO方法的核心,類模型從對象的角度描述系統(tǒng)的組成,描述類(對象)及相互間的關(guān)系。為了建立類模型,首先要識別類,鑒于篇幅,這里就不再討論類的識別過程。通過分析,識別以下類:1、Meeting類,標(biāo)識一個(gè)會議(名稱、類型、規(guī)模)。2、MeetingInstance類,Meeting類的子類,對會議時(shí)間、人數(shù)等進(jìn)行描述。3、MeetingRoom類,描述會議室的有關(guān)信息。4、MeetingAdministration類,管理會議。5、Attendee類,描述參會人員(姓名、性別、地址、頭銜等)。6、GroupAttende類,創(chuàng)建一個(gè)參加會議的組。7、Address類,描述郵寄地址E-mail地址。8、PostOffice類,負(fù)責(zé)發(fā)送郵寄通知。9、AttendeeManagement類,數(shù)據(jù)庫管理。10、ReservationCriteria類,定義會議室預(yù)定準(zhǔn)則。11、Information類,構(gòu)造一條通知。三、建立類模型退出上頁首頁下頁末頁除了用例模型外,其他模型都依賴于類模型,因此,類模型是O10

該類與會議召開不同,它標(biāo)識了一個(gè)會議(圖3),因此,其屬性包括會議名稱、類型、規(guī)模(參加會議的人數(shù))。其操作則有:增加會議、取消會議。一個(gè)會議往往有多個(gè)子會議(子類)的召開,因此,必須描述Meeting類與其子類MeetingInstance類之間的關(guān)聯(lián),如圖4所示。2、

MeetingInstance類

MeetingInstance類是Meeting類的子類,描述會議的具體情況,會議的開始(StartTime)、結(jié)束時(shí)間(EndTime),參會的人數(shù)(AttendeeNumber),其操作有:添加參加人員AddAttendee()、添加參加人員組AddGroupAttendee(),而AttachMeetingRoom()表示為該類分配一個(gè)會議室,而Cancel()則表示取消該會議的召開。MeetingMeetingInstanceStartTimeEndTimeAttendeeNumberAddAttendee()AttachMeetingRoom()AddGroupAttendee()Cancel()MeetingNameTypeSizeAddMeetingInstance()CancelMeetingInstance()圖3Meeting類圖圖4MeetingInstance類圖1、

Meeting類退出上頁首頁下頁末頁該類與會議召開不同,它標(biāo)識了一個(gè)會議(圖3),因此11MeetingRoomCapacityBuildingCodeDoorCodeStatusAssignMeetingInstance()SetInvalidate()Release()MeetingInstanceMeeting圖5MeetingRoom類圖該類描述了有關(guān)會議室的情況,因此MeetingRoom類的屬性包括:會議室的規(guī)模Capacity,位置BuildingCode、DoorCode,使用狀態(tài)Status(正在使用、已預(yù)定、空閑和不可用)等。該類的操作有:AssignMeetingInstance()將MeetingRoom分配給MeetingInstance對象,而SetInvalidate()則表示當(dāng)會議室出現(xiàn)故障時(shí),將其狀態(tài)設(shè)置為不可用。Release()為歸還會議室。當(dāng)會議被預(yù)定后,為了便于查詢某個(gè)會議室預(yù)定給了哪個(gè)會議,應(yīng)建立類MeetingRoom與類MeetingInstanc之間的雙向關(guān)聯(lián),這里定義為1:1。3、MeetingRoom類退出上頁首頁下頁末頁MeetingRoomCapacityAssignMeeti12AttendeeNameSexPostaddressEmailAddressTitleMeetingInstance11..*圖6Attendee類圖Attendee類描述參加會議人員的有關(guān)信息,如:姓名、性別、地址、E-mail地址、頭銜等。MeetingInstance類與Attendee類之間有一對多的關(guān)聯(lián)“1..*”。

5、GroupAttendee類MeetingInstanceGroupAttendeeMemberNumberGroupNameAddAttendee()DeleteAttendee()10..*Attendee11..*圖7GroupAttendee類圖該類可創(chuàng)建一個(gè)參加會議的組,便于按照小組選擇參加會議的人員。MeetingInstance類與GroupAttendee類之間有一對多的關(guān)聯(lián)“0..*”。4、Attendee類退出上頁首頁下頁末頁AttendeeName11..*圖6Attendee類圖13系統(tǒng)中有兩種地址:電子郵件地址(EmailAddress)和郵寄地址(PostAddress),而且,每個(gè)參加會議的人,可以有一個(gè)或者多個(gè)郵寄地址,有0個(gè)或多個(gè)E-mail地址。有關(guān)地址的屬性,在再內(nèi)這里不再討論。負(fù)責(zé)發(fā)送郵寄通知。PostOffice類分別與PostAddress、EmailAddress和Information之間有一對多的關(guān)聯(lián)。

7、PostOffice類1..*InformationEmailAddress1..*PostAddress1..*(fromUseCaseView)DelieverInformation()圖9PostOffice類圖PostOfficeAddress

PostAddressEmailAddressAttendee圖8Address類圖1..*0..*6、Address類退出上頁首頁下頁末頁系統(tǒng)中有兩種地址:電子郵件地址(EmailAddres14InformationNoticeTopicReceiverTitleReceivernameTimeEventExplanationSendTimeSendrSignatureCreate()MeetingRoom圖10Information類圖該類用于構(gòu)造一條通知,由于在本系統(tǒng)中,通常有三種:會議召開通知,會議更改通知,會議取消通知。如下例所示,通知的內(nèi)容常包括標(biāo)題、接受者、會議內(nèi)容、會議時(shí)間及發(fā)通知的時(shí)間等。XXXX會議召開通知XX先生:定于2005年9月15日在櫻都會議中心召開XXXX會議。

XXXX會議籌備組2005年8月20日8、Information類退出上頁首頁下頁末頁InformationMeetingRoom圖115

八、Iformation類GroupAttendeeAttendeeAttendeeManagement(fromUseCaseView)AttendNumber()GroupAttendeeNumber()AddAttendee()ChangeAttendee()AddGroupAttendee()DeleteGroupAttendee()圖11AttendeeManagement類圖該類使用數(shù)據(jù)庫對參加會議的人員進(jìn)行管理。分析階段只確定該類與系統(tǒng)的接口,有關(guān)數(shù)據(jù)庫的設(shè)計(jì)在設(shè)計(jì)階段解決。該類與GroupAttendee類及Attendee類的關(guān)聯(lián)如圖11所示。

10、ReservationCriteria類

該類定義了預(yù)定會議室的準(zhǔn)則(如時(shí)間),并建立會議實(shí)例(MeetingInstanee類)與該類之間的聯(lián)系。ReservationCriteriaTimeCriteriasetCrieria()GetCriteria()MeetingInstanee圖12ReservationCriteria類圖9、AttendeeManagement類退出上頁首頁下頁末頁八、Iformation類AttendeeManageme16

八、Iformation類該類管理系統(tǒng)中由用戶定義的所有會議,并提供給用戶友好的用戶界面。由于該類有定義會議(DefineMeeting)、更改會議(AlterMeeting)、刪除會議(RemoveMeeting)等操作,建立與Meeting類之間的關(guān)聯(lián)關(guān)系。MeetingName:stringMeetingAdministration(fromeetingPack)MeetingNumber:intDefineMeeting()AlterMeeting()RemoveMeeting()Meeting(fromMeetingPack)圖13MeetingAdministration類圖11、MeetingAdministration類退出上頁首頁下頁末頁八、Iformation類該類管理系統(tǒng)中由用戶定義的所17MeetingMeetingName:stringMeetingAdministrationReservationCriteriaMeetingInstanceInformationMeetingRoom1..*1..*1..*PostOfficeGroupAttendeeAttendeeManagement

Address

PostAddressEmailAddressAttendee1..*0..*1..*0..*110..*0..*0..*111圖14會議管理系統(tǒng)類圖會議管理系統(tǒng)類圖退出上頁首頁下頁末頁MeetingName:stringMeetingAdmin18四、建立系統(tǒng)包圖引入包圖來對類進(jìn)行管理,圖15為本系統(tǒng)的包圖。系統(tǒng)由會議包(MeetingPack)、人員包(AttendeePack)和郵寄包(PostOfficePack)三類包組成。圖16、圖17、圖18分別描述了這三類包的構(gòu)成。PostOfficePack圖15系統(tǒng)包圖MeetingPackAttendeePack退出上頁首頁下頁末頁四、建立系統(tǒng)包圖引入包圖來對類進(jìn)行管理,圖15為本系統(tǒng)的191、會議包(MeetingPack)2、人員包(AttendeePack)3、郵寄包(PostOfficePack)GroupAttendeeAddress

PostAddressEmailAddressAttendee圖17人員包構(gòu)成0..*1..*1..*1圖18郵寄包構(gòu)成InformationPostOffice(fromUseCaseView)1..*0..*MeetingMeetingName:stringMeetingAdministrationReservationCriteriaMeetingInstanceMeetingRoom圖16會議包構(gòu)成111包圖退出上頁首頁下頁末頁1、會議包(MeetingPack)2、人員包(Att20

靜態(tài)模型關(guān)注的是系統(tǒng)各成分的組織結(jié)構(gòu),而動(dòng)態(tài)模型則要描述系統(tǒng)各成分之間的交互行為,即系統(tǒng)的動(dòng)態(tài)特征。結(jié)合本系統(tǒng),建立動(dòng)態(tài)模型,包括交互圖、合作圖、活動(dòng)圖。(一)對象交互模型

在面向?qū)ο蟮姆椒ㄖ?,一切元素都與對象緊密相關(guān),事件也不例外。因此,對象在其生命期中不斷地與其它對象交互。使用對象交互模型來描述用例圖中的每個(gè)用例,從對象觀點(diǎn)來描述用例的動(dòng)態(tài)交互過程。在UML中,交互模型由兩類圖來描述:順序圖(Sequencediagram)強(qiáng)調(diào)的是對象交互行為的時(shí)間“順序”,直觀描述了對象的生存期,用消息傳送來清晰地描述了在對象生存期中某一時(shí)刻的動(dòng)態(tài)行為。只適宜描述簡單的對象交互情況。合作圖(Collaborationdiagram)強(qiáng)調(diào)的是對象合作的交互行為關(guān)系,對象間由各種關(guān)聯(lián)連接,對象之間的合作情況(交互情況)使用消息流來表示,但消息沒有發(fā)送時(shí)間和傳送時(shí)間的概念。適宜描述對象數(shù)目較多,交互情況教復(fù)雜的情況。五、建立動(dòng)態(tài)模型退出上頁首頁下頁末頁靜態(tài)模型關(guān)注的是系統(tǒng)各成分的組織結(jié)構(gòu),而動(dòng)態(tài)模型則要描述系21:MeetingAdministration:Meeting:MeetingAdministrattor1:DefineMeeting(meeting)[IsMeetingExisted=.T.]3:Fail(MeetingExisted)2:{new(meeting)}圖19定義會議的順序圖當(dāng)用戶向會議中心申請召開會議時(shí),首先要定義一個(gè)會議。會議管理者發(fā)送DefineMeeting消息給MeetingAdministration對象,消息參數(shù)是有關(guān)會議的一個(gè)臨時(shí)對象(meeting),根據(jù)該臨時(shí)對象檢查會議是否存在?若不存在,創(chuàng)建新會議:2:{new(meeting)},若當(dāng)條件表達(dá)式為真時(shí):[IsMeetingExisted=.T.],表示會議已經(jīng)被定義,不需要再定義。1、用例:定義會議(DefineMeeting)的順序圖退出上頁首頁下頁末頁:Meeting1:DefineMeeting(meetin22當(dāng)用戶確定要取消某個(gè)會議時(shí),首先檢查會議是否定義,如果沒有可以直接刪除,否則要先取消相關(guān)的會議。如圖20所示,首先系統(tǒng)用戶對象MeetingAdministrator發(fā)出RemoveMeeting(MeetingName)消息給對象MeetingAdministration,通過消息的參數(shù)檢索要取消的會議對象,并向該對象發(fā)出取消會議召開的消息。表達(dá)式“[IsOpen=.F.]”表示如果會議不處于召開狀態(tài),就取消它。表達(dá)式“[IsAllMeetingInstancesCanceled=.T.]”表示該會議的所有會議召開都已經(jīng)被取消,則會議管理就發(fā)出取消會議召開的消息。否則返回取消失?。ㄈ鐣h正在召開)的消息。2、用例:取消會議(RemoveMeeting)的順序圖圖20取消會議的順序圖:MeetingAdministration:MeetingInstance:MeetingAdministrator1:RemoveMeeting(MeetingName)[IsAllMeetingInstancesCanceled=.F.]5:Fail(MeetingExisted)2:CancelMeetingInstance():Meeting[IsAllMeetingInstancesCanceled=.T.]4:Fail(MeetingExisted)[IsOpen=.F.]3:Cancel()退出上頁首頁下頁末頁當(dāng)用戶確定要取消某個(gè)會議時(shí),首先檢查會議是否定義,如233、用例:撤消會議召開(CancelRequestment)的順序圖:MeetingAdministration:Meeting:MeetingInstance:MeetingRoom:PostOffice1:CancelMeetingInstance(Instance)[IsOpen=.F.]2:Cancel()3:Release()4:DelieverInformation(cancellation)圖21撤消會議召開的順序圖要撤消某個(gè)會議召開,發(fā)送Cancel信息給MeetingInstance對象。該對象先要在Meeting對象中注銷自己,再歸還已分配的會議室,并向參會人員發(fā)撤消會議的通知。圖21中會議管理對象發(fā)送給會議對象的消息CancelMeetingInstance(Instance)中的參數(shù)用于檢索會議召開。條件表達(dá)式[IsOpen=.F.]表示如會議召開未進(jìn)行,則撤消會議召開。如果會議已進(jìn)行,則返回失敗消息(圖中未列出)。退出上頁首頁下頁末頁3、用例:撤消會議召開(CancelRequestment24圖22撤消會議召開的順序圖:PostOffice:MeetingAdministration:Meeting:MeetingInstance:MeetingRoom1:AddMeetingInstance(instance)2:{new}6:AssignMeetingInstance()7:DelieverInformation(info)5:AttachMeetingRoom(room)4:AddGrooupAttendee(group)3:AddAttendee(member)如果時(shí)間合法,就創(chuàng)建一個(gè)會議召開對象。4、用例:申請會議召開(RequestMeetingInstance)的順序圖用戶申請一個(gè)會議召開時(shí),應(yīng)該指定會議召開的名稱,召開的時(shí)間,及會議參加人員。圖22中instance、member、group、room、info都是臨時(shí)對象,instance記錄了用戶指定的會議屬性(時(shí)間、參加人數(shù)等),member為一個(gè)參會代表,是Attendeegroup參會人員組的對象;而room是滿足要求的會議室。4、用例:申請會議召開退出上頁首頁下頁末頁圖22撤消會議召開的順序圖:PostOffice1:Ad25六、合作圖與活動(dòng)圖對于簡單的對象交互情況,順序圖可以作很好的描述,可是,當(dāng)交互對象數(shù)目增加,交互情況復(fù)雜時(shí),順序圖就很難描述清楚了,可用合作圖來描述。合作圖描述了系統(tǒng)中所有對象之間的交互合作關(guān)系,注重對象之間的整體交互情況,交互關(guān)系由消息流來表示。在Rose中,還可以將順序圖與合作圖進(jìn)行轉(zhuǎn)換。本案例不再給出合作圖。

七、活動(dòng)圖

活動(dòng)圖模型主要用于描述系統(tǒng)在問題域空間中的活動(dòng)流程,活動(dòng)圖可以方便地描述系統(tǒng)中的并發(fā)活動(dòng)。由于本例中并沒有復(fù)雜的并發(fā)活動(dòng),而且也也沒有明顯的基于核心的、具有復(fù)雜狀態(tài)和行為的對象,所以可以不必畫出合作圖和活動(dòng)圖。六、合作圖退出上頁首頁六、合作圖與活動(dòng)圖對于簡單的對象交互情況,順序圖可以作很26演講完畢,謝謝觀看!演講完畢,謝謝觀看!27

一、問題陳述

有一個(gè)對外營業(yè)的會議中心,有各種不同規(guī)格的會議室,為用戶提供以下服務(wù):1、用戶可以按照會議人數(shù)、會議時(shí)間預(yù)訂會議室??梢灾活A(yù)訂1次,也可預(yù)訂定期召開的會議。2、開會前允許修改會議時(shí)間、人數(shù),重新選擇會議室,甚至取消預(yù)訂的會議。3、確定會議預(yù)訂后,會議中心負(fù)責(zé)會務(wù)管理:包括通過郵寄或電子郵件,通知開會人員有關(guān)會議信息,制作代表證等。4、系統(tǒng)根據(jù)會議室的使用情況(緊張與否),調(diào)整、更改會議室和會議時(shí)間,并調(diào)整修改預(yù)訂會議的時(shí)間。會議管理系統(tǒng)退出下頁末頁案例三一、問題陳述會議管理系統(tǒng)退出下頁末頁案例三28二、建立用例模型1、識別角色

找出所有可能與系統(tǒng)發(fā)生交互行為的外部實(shí)體、對象、系統(tǒng)??紤]系統(tǒng)的主要功能的使用者,就會想到用戶和系統(tǒng)管理者,但如果直接將用戶定義為角色,系統(tǒng)的所有功能幾乎都由用戶使用。根據(jù)問題的描述,系統(tǒng)要求將會議和會議的召開分開來。從會議的角度看,允許用戶定義、更改或刪除一個(gè)會議。從會議召開的角度看,允許用戶為某個(gè)會議定義召開時(shí)間、參加人數(shù)、更改相應(yīng)的數(shù)據(jù)或刪除已定義的會議召開。因此,將用戶識別為“會議管理者”和“會議申請者”兩個(gè)角色。本系統(tǒng)定義以下角色:會議管理者(MeetingAdministrator)會議申請者(MeetingInstanceRequester)郵局(PostOffice)會議人員管理(AttendeeManagement)系統(tǒng)維護(hù)者(SystemMaintainer)退出上頁首頁下頁末頁二、建立用例模型1、識別角色退出上頁首頁下頁末頁29

在識別角色的基礎(chǔ)上,列出與角色相關(guān)的用例,有的用例與多個(gè)角色相關(guān),經(jīng)過分析,確定系統(tǒng)的用例(打)。⑴與會議管理者相關(guān)的用例:

定義一個(gè)會議(DefineMeeting)更改一個(gè)會議(AlterMeeting)

刪除一個(gè)會議(RemoveMeeting

⑵與會議申請者相關(guān)的用例:

申請會議召開(RequestMeetingInstance)

更改申請(ChangRequest)

取消申請(CancelRequest)

定義參加人員(AddAttendee)

歸還會議室(ReleaseRoom)

2、用例識別退出上頁首頁下頁末頁在識別角色的基礎(chǔ)上,列出與角色相關(guān)的用例,有的用例與多個(gè)302、用例識別

⑶與郵局相關(guān)的用例:

申請會議召開(RequestMeetingInstance)更改申請(ModifyRequest)取消申請(CancelRequest

)⑷與會議人員管理相關(guān)的用例:定義參加人員(AddAttendee)取消申請(CancelRequest)申請會議召開(RequestMeetingInstance)更改申請(ModifyRequest)

⑸與系統(tǒng)維護(hù)者相關(guān)的用例:會議室維護(hù)(MeetingRoomMaintenance)

設(shè)定預(yù)定時(shí)限(SetReservationTomeLimit)

在確定角色和用例的基礎(chǔ)上,畫出用例圖(圖1)。

退出上頁首頁下頁末頁2、用例識別退出上頁首頁下頁末頁313、會議管理系統(tǒng)的Usecase圖圖1會議管理系統(tǒng)的Usecase圖歸還會議室申請會議召開更改申請取消申請定義參加人員會議召開申請者郵局會議人員管理設(shè)置預(yù)定時(shí)限會議室維護(hù)定義會議更改會議刪除會議系統(tǒng)維護(hù)者會議管理員

退出上頁首頁下頁末頁3、會議管理系統(tǒng)的Usecase圖圖1會議管理系統(tǒng)的Us32用例1、定義會議(DefineMeeting)輸入會議名稱確定會議規(guī)模確定會議類型其中會議規(guī)模是指參會人數(shù)范圍。用例2、更改會議(AlterMeeting)改變會議名稱改變會議規(guī)模改變會議召開頻度用例3、刪除會議(RemoveMeeting)如果該會議沒有召開申請從會議列表中刪除如果該會議有召開申請取消與之相關(guān)的會議召開信息刪除該會議使用:用例8刪除參加人員(RemoveAttendee)用例6取消申請(CancelRequest)4、對用例的進(jìn)一步描述用例4、申請會議召開(RequestMeetingInstance)確定召開時(shí)間(年、月、日)確定參加人員確定侯選會議室發(fā)會議通知使用:用例11發(fā)會議通知(InformofMeeting)用例13選擇參加組(SelectGroupAttendee)擴(kuò)展:①如果召開時(shí)間在申請時(shí)限之外用例12申請拒絕(RequestRejection)②如果還沒定義參加人員用例7定義參加人員(AddAttendee

)用例5:更改申請(ModifyRequest)更改召開時(shí)間更改參加人員更改取得會議室發(fā)會議更改通知使用:用例13選擇參加組(SelectGroupAttendee)用例11發(fā)會議通知(InformofMeeting)擴(kuò)展:①如果更改的時(shí)間不合法用例12申請拒絕(RequestRejection)②用例7定義參加人員(AddAttendee)退出上頁首頁下頁末頁用例1、定義會議(DefineMeeting)用例2、更33用例6:取消會議召開(CancelRequest)、取消申請歸還會議室發(fā)會議取消通知使用:用例8歸還會議室(ReleaseRoom)用例14發(fā)會議取消通知(InformRejection)擴(kuò)展:①如果會議已召開用例12申請拒絕(RequestRejection)用例7:定義參加人員(AddAttendee)輸入?yún)⒓尤藛T的詳細(xì)信息定義參加組用例9:會議維護(hù)(MeetingRoomMaintenance)加入一個(gè)會議室(用例15)標(biāo)記一個(gè)會議室不可用(用例16)查詢會議室預(yù)定情況(用例17)用例10:設(shè)置預(yù)定時(shí)限制(SetReservationTomeLimit)設(shè)置時(shí)間限用例11:發(fā)會議通知(InformofMeeting)

從會議人員管理獲得參加人員的投遞地址填寫通知(會議召開時(shí)間、會議室號碼)發(fā)送通知用例12:申請拒絕(RequestRejection)作廢當(dāng)前的一切輸入中字止用戶當(dāng)前的操作用例13:選擇會議參加人員組(SelectGroupAttendee)瀏覽會議組成員選擇參加組用例14:會議取消通知(InformofCancellation)從會議人員管理處獲取參加人員地址填寫通知發(fā)送通知

用例8:歸還會議室(ReleaseRoom)輸入會議室號碼輸入使用時(shí)間刪除參加人員歸還會議室使用:用例9會議室維護(hù)(MeetingRoomMaintenance)用例18刪除參加人員(RemoveAttendee)退出上頁首頁下頁末頁用例6:取消會議召開(CancelRequest)、用例734用例15:增加會議室(AddMeetingRoom)輸入會議室號碼輸入會議室規(guī)模輸入會議室可使用狀態(tài)(可使用、不可使用)加入該會議室用例16:設(shè)置會議室不可使用(SetUnusableFlag)輸入會議室號碼通知該會議室的預(yù)定者標(biāo)記該會議室的可所以狀態(tài)為不可用用例17:查詢會議室的使用情況(BrowseMeetingroomusage)輸入會議室號碼查詢本用例返回會議室的使用狀態(tài)(已使用、空閑)和會議室的可否使用情況。用例18:刪除會議參加人員(RemoveAttendee)刪除參加人員刪除參加組圖2描述了會議管理系統(tǒng)完整的用例模型。退出上頁首頁下頁末頁用例15:增加會議室(AddMeetingRoom)退出355、完整的會議管理系統(tǒng)的Usecase圖圖2完整的會議管理系統(tǒng)Usecase圖退出上頁首頁下頁末頁5、完整的會議管理系統(tǒng)的Usecase圖圖2完整的會議管36

除了用例模型外,其他模型都依賴于類模型,因此,類模型是OO方法的核心,類模型從對象的角度描述系統(tǒng)的組成,描述類(對象)及相互間的關(guān)系。為了建立類模型,首先要識別類,鑒于篇幅,這里就不再討論類的識別過程。通過分析,識別以下類:1、Meeting類,標(biāo)識一個(gè)會議(名稱、類型、規(guī)模)。2、MeetingInstance類,Meeting類的子類,對會議時(shí)間、人數(shù)等進(jìn)行描述。3、MeetingRoom類,描述會議室的有關(guān)信息。4、MeetingAdministration類,管理會議。5、Attendee類,描述參會人員(姓名、性別、地址、頭銜等)。6、GroupAttende類,創(chuàng)建一個(gè)參加會議的組。7、Address類,描述郵寄地址E-mail地址。8、PostOffice類,負(fù)責(zé)發(fā)送郵寄通知。9、AttendeeManagement類,數(shù)據(jù)庫管理。10、ReservationCriteria類,定義會議室預(yù)定準(zhǔn)則。11、Information類,構(gòu)造一條通知。三、建立類模型退出上頁首頁下頁末頁除了用例模型外,其他模型都依賴于類模型,因此,類模型是O37

該類與會議召開不同,它標(biāo)識了一個(gè)會議(圖3),因此,其屬性包括會議名稱、類型、規(guī)模(參加會議的人數(shù))。其操作則有:增加會議、取消會議。一個(gè)會議往往有多個(gè)子會議(子類)的召開,因此,必須描述Meeting類與其子類MeetingInstance類之間的關(guān)聯(lián),如圖4所示。2、

MeetingInstance類

MeetingInstance類是Meeting類的子類,描述會議的具體情況,會議的開始(StartTime)、結(jié)束時(shí)間(EndTime),參會的人數(shù)(AttendeeNumber),其操作有:添加參加人員AddAttendee()、添加參加人員組AddGroupAttendee(),而AttachMeetingRoom()表示為該類分配一個(gè)會議室,而Cancel()則表示取消該會議的召開。MeetingMeetingInstanceStartTimeEndTimeAttendeeNumberAddAttendee()AttachMeetingRoom()AddGroupAttendee()Cancel()MeetingNameTypeSizeAddMeetingInstance()CancelMeetingInstance()圖3Meeting類圖圖4MeetingInstance類圖1、

Meeting類退出上頁首頁下頁末頁該類與會議召開不同,它標(biāo)識了一個(gè)會議(圖3),因此38MeetingRoomCapacityBuildingCodeDoorCodeStatusAssignMeetingInstance()SetInvalidate()Release()MeetingInstanceMeeting圖5MeetingRoom類圖該類描述了有關(guān)會議室的情況,因此MeetingRoom類的屬性包括:會議室的規(guī)模Capacity,位置BuildingCode、DoorCode,使用狀態(tài)Status(正在使用、已預(yù)定、空閑和不可用)等。該類的操作有:AssignMeetingInstance()將MeetingRoom分配給MeetingInstance對象,而SetInvalidate()則表示當(dāng)會議室出現(xiàn)故障時(shí),將其狀態(tài)設(shè)置為不可用。Release()為歸還會議室。當(dāng)會議被預(yù)定后,為了便于查詢某個(gè)會議室預(yù)定給了哪個(gè)會議,應(yīng)建立類MeetingRoom與類MeetingInstanc之間的雙向關(guān)聯(lián),這里定義為1:1。3、MeetingRoom類退出上頁首頁下頁末頁MeetingRoomCapacityAssignMeeti39AttendeeNameSexPostaddressEmailAddressTitleMeetingInstance11..*圖6Attendee類圖Attendee類描述參加會議人員的有關(guān)信息,如:姓名、性別、地址、E-mail地址、頭銜等。MeetingInstance類與Attendee類之間有一對多的關(guān)聯(lián)“1..*”。

5、GroupAttendee類MeetingInstanceGroupAttendeeMemberNumberGroupNameAddAttendee()DeleteAttendee()10..*Attendee11..*圖7GroupAttendee類圖該類可創(chuàng)建一個(gè)參加會議的組,便于按照小組選擇參加會議的人員。MeetingInstance類與GroupAttendee類之間有一對多的關(guān)聯(lián)“0..*”。4、Attendee類退出上頁首頁下頁末頁AttendeeName11..*圖6Attendee類圖40系統(tǒng)中有兩種地址:電子郵件地址(EmailAddress)和郵寄地址(PostAddress),而且,每個(gè)參加會議的人,可以有一個(gè)或者多個(gè)郵寄地址,有0個(gè)或多個(gè)E-mail地址。有關(guān)地址的屬性,在再內(nèi)這里不再討論。負(fù)責(zé)發(fā)送郵寄通知。PostOffice類分別與PostAddress、EmailAddress和Information之間有一對多的關(guān)聯(lián)。

7、PostOffice類1..*InformationEmailAddress1..*PostAddress1..*(fromUseCaseView)DelieverInformation()圖9PostOffice類圖PostOfficeAddress

PostAddressEmailAddressAttendee圖8Address類圖1..*0..*6、Address類退出上頁首頁下頁末頁系統(tǒng)中有兩種地址:電子郵件地址(EmailAddres41InformationNoticeTopicReceiverTitleReceivernameTimeEventExplanationSendTimeSendrSignatureCreate()MeetingRoom圖10Information類圖該類用于構(gòu)造一條通知,由于在本系統(tǒng)中,通常有三種:會議召開通知,會議更改通知,會議取消通知。如下例所示,通知的內(nèi)容常包括標(biāo)題、接受者、會議內(nèi)容、會議時(shí)間及發(fā)通知的時(shí)間等。XXXX會議召開通知XX先生:定于2005年9月15日在櫻都會議中心召開XXXX會議。

XXXX會議籌備組2005年8月20日8、Information類退出上頁首頁下頁末頁InformationMeetingRoom圖142

八、Iformation類GroupAttendeeAttendeeAttendeeManagement(fromUseCaseView)AttendNumber()GroupAttendeeNumber()AddAttendee()ChangeAttendee()AddGroupAttendee()DeleteGroupAttendee()圖11AttendeeManagement類圖該類使用數(shù)據(jù)庫對參加會議的人員進(jìn)行管理。分析階段只確定該類與系統(tǒng)的接口,有關(guān)數(shù)據(jù)庫的設(shè)計(jì)在設(shè)計(jì)階段解決。該類與GroupAttendee類及Attendee類的關(guān)聯(lián)如圖11所示。

10、ReservationCriteria類

該類定義了預(yù)定會議室的準(zhǔn)則(如時(shí)間),并建立會議實(shí)例(MeetingInstanee類)與該類之間的聯(lián)系。ReservationCriteriaTimeCriteriasetCrieria()GetCriteria()MeetingInstanee圖12ReservationCriteria類圖9、AttendeeManagement類退出上頁首頁下頁末頁八、Iformation類AttendeeManageme43

八、Iformation類該類管理系統(tǒng)中由用戶定義的所有會議,并提供給用戶友好的用戶界面。由于該類有定義會議(DefineMeeting)、更改會議(AlterMeeting)、刪除會議(RemoveMeeting)等操作,建立與Meeting類之間的關(guān)聯(lián)關(guān)系。MeetingName:stringMeetingAdministration(fromeetingPack)MeetingNumber:intDefineMeeting()AlterMeeting()RemoveMeeting()Meeting(fromMeetingPack)圖13MeetingAdministration類圖11、MeetingAdministration類退出上頁首頁下頁末頁八、Iformation類該類管理系統(tǒng)中由用戶定義的所44MeetingMeetingName:stringMeetingAdministrationReservationCriteriaMeetingInstanceInformationMeetingRoom1..*1..*1..*PostOfficeGroupAttendeeAttendeeManagement

Address

PostAddressEmailAddressAttendee1..*0..*1..*0..*110..*0..*0..*111圖14會議管理系統(tǒng)類圖會議管理系統(tǒng)類圖退出上頁首頁下頁末頁MeetingName:stringMeetingAdmin45四、建立系統(tǒng)包圖引入包圖來對類進(jìn)行管理,圖15為本系統(tǒng)的包圖。系統(tǒng)由會議包(MeetingPack)、人員包(AttendeePack)和郵寄包(PostOfficePack)三類包組成。圖16、圖17、圖18分別描述了這三類包的構(gòu)成。PostOfficePack圖15系統(tǒng)包圖MeetingPackAttendeePack退出上頁首頁下頁末頁四、建立系統(tǒng)包圖引入包圖來對類進(jìn)行管理,圖15為本系統(tǒng)的461、會議包(MeetingPack)2、人員包(AttendeePack)3、郵寄包(PostOfficePack)GroupAttendeeAddress

PostAddressEmailAddressAttendee圖17人員包構(gòu)成0..*1..*1..*1圖18郵寄包構(gòu)成InformationPostOffice(fromUseCaseView)1..*0..*MeetingMeetingName:stringMeetingAdministrationReservationCriteriaMeetingInstanceMeetingRoom圖16會議包構(gòu)成111包圖退出上頁首頁下頁末頁1、會議包(MeetingPack)2、人員包(Att47

靜態(tài)模型關(guān)注的是系統(tǒng)各成分的組織結(jié)構(gòu),而動(dòng)態(tài)模型則要描述系統(tǒng)各成分之間的交互行為,即系統(tǒng)的動(dòng)態(tài)特征。結(jié)合本系統(tǒng),建立動(dòng)態(tài)模型,包括交互圖、合作圖、活動(dòng)圖。(一)對象交互模型

在面向?qū)ο蟮姆椒ㄖ?,一切元素都與對象緊密相關(guān),事件也不例外。因此,對象在其生命期中不斷地與其它對象交互。使用對象交互模型來描述用例圖中的每個(gè)用例,從對象觀點(diǎn)來描述用例的動(dòng)態(tài)交互過程。在UML中,交互模型由兩類圖來描述:順序圖(Sequencediagram)強(qiáng)調(diào)的是對象交互行為的時(shí)間“順序”,直觀描述了對象的生存期,用消息傳送來清晰地描述了在對象生存期中某一時(shí)刻的動(dòng)態(tài)行為。只適宜描述簡單的對象交互情況。合作圖(Collaborationdiagram)強(qiáng)調(diào)的是對象合作的交互行為關(guān)系,對象間由各種關(guān)聯(lián)連接,對象之間的合作情況(交互情況)使用消息流來表示,但消息沒有發(fā)送時(shí)間和傳送時(shí)間的概念。適宜描述對象數(shù)目較多,交互情況教復(fù)雜的情況。五、建立動(dòng)態(tài)模型退出上頁首頁下頁末頁靜態(tài)模型關(guān)注的是系統(tǒng)各成分的組織結(jié)構(gòu),而動(dòng)態(tài)模型則要描述系48:MeetingAdministration:Meeting:MeetingAdministrattor1:DefineMeeting(meeting)[IsMeetingExisted=.T.]3:Fail(MeetingExisted)2:{new(meetin

溫馨提示

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

評論

0/150

提交評論