• 365.58 KB
  • 2023-02-21 11:30:27 发布

会议管理系统介绍( PowerPoint 27页)

  • 28页
  • 当前文档由用户上传发布,收益归属用户
  1. 1、本文档共5页,可阅读全部内容。
  2. 2、本文档内容版权归属内容提供方,所产生的收益全部归内容提供方所有。如果您对本文有版权争议,可选择认领,认领后既往收益都归您。
  3. 3、本文档由用户上传,本站不保证质量和数量令人满意,可能有诸多瑕疵,付费之前,请仔细先通过免费阅读内容等途径辨别内容交易风险。如存在严重挂羊头卖狗肉之情形,可联系本站下载客服投诉处理。
  4. 文档侵权举报电话:19940600175。
一、问题陈述有一个对外营业的会议中心,有各种不同规格的会议室,为用户提供以下效劳:1、用户可以按照会议人数、会议时间预订会议室。可以只预订1次,也可预订定期召开的会议。2、开会前允许修改会议时间、人数,重新选择会议室,甚至取消预订的会议。3、确定会议预订后,会议中心负责会务管理:包括通过邮寄或电子邮件,通知开会人员有关会议信息,制作代表证等。4、系统根据会议室的使用情况〔紧张与否〕,调整、更改会议室和会议时间,并调整修改预订会议的时间。会议管理系统退出下页末页案 例 三第一页,编辑于星期五:十七点二十三分。 二、建立用例模型1、识别角色找出所有可能与系统发生交互行为的外部实体、对象、系统。考虑系统的主要功能的使用者,就会想到用户和系统管理者,但如果直接将用户定义为角色,系统的所有功能几乎都由用户使用。根据问题的描述,系统要求将会议和会议的召开分开来。从会议的角度看,允许用户定义、更改或删除一个会议。从会议召开的角度看,允许用户为某个会议定义召开时间、参加人数、更改相应的数据或删除已定义的会议召开。因此,将用户识别为“会议管理者〞和“会议申请者〞两个角色。本系统定义以下角色:会议管理者〔MeetingAdministrator〕会议申请者〔MeetingInstanceRequester〕邮局〔PostOffice〕会议人员管理〔AttendeeManagement〕系统维护者〔SystemMaintainer〕退出上页首页下页末页第二页,编辑于星期五:十七点二十三分。 在识别角色的根底上,列出与角色相关的用例,有的用例与多个角色相关,经过分析,确定系统的用例〔打〕。⑴ 与会议管理者相关的用例:定义一个会议〔DefineMeeting〕更改一个会议〔AlterMeeting〕删除一个会议〔RemoveMeeting〕⑵ 与会议申请者相关的用例:申请会议召开〔RequestMeetingInstance〕更改申请〔ChangRequest〕取消申请〔CancelRequest〕定义参加人员〔AddAttendee〕归还会议室〔ReleaseRoom〕2、用例识别退出上页首页下页末页第三页,编辑于星期五:十七点二十三分。 2、用例识别⑶ 与邮局相关的用例:申请会议召开〔RequestMeetingInstance〕更改申请〔ModifyRequest〕取消申请〔CancelRequest〕⑷ 与会议人员管理相关的用例:定义参加人员〔AddAttendee〕取消申请〔CancelRequest〕申请会议召开〔RequestMeetingInstance〕更改申请〔ModifyRequest〕⑸ 与系统维护者相关的用例:会议室维护〔MeetingRoomMaintenance〕设定预定时限〔SetReservationTomeLimit〕在确定角色和用例的根底上,画出用例图〔图1〕。退出上页首页下页末页第四页,编辑于星期五:十七点二十三分。 3、会议管理系统的Usecase图图1会议管理系统的Usecase图归还会议室申请会议召开更改申请取消申请定义参加人员会议召开申请者邮局会议人员管理设置预定时限会议室维护定义会议更改会议删除会议系统维护者会议管理员退出上页首页下页末页第五页,编辑于星期五:十七点二十三分。 用例1、定义会议〔DefineMeeting〕输入会议名称确定会议规模确定会议类型其中会议规模是指参会人数范围。用例2、更改会议〔AlterMeeting〕改变会议名称改变会议规模改变会议召开频度用例3、删除会议〔RemoveMeeting〕如果该会议没有召开申请从会议列表中删除如果该会议有召开申请取消与之相关的会议召开信息删除该会议使用:用例8删除参加人员〔RemoveAttendee〕用例6取消申请〔CancelRequest〕4、对用例的进一步描述用例4、申请会议召开〔RequestMeetingInstance)确定召开时间〔年、月、日〕确定参加人员确定侯选会议室发会议通知使用:用例11发会议通知〔InformofMeeting〕用例13选择参加组〔SelectGroupAttendee〕扩展:① 如果召开时间在申请时限之外用例12申请拒绝(RequestRejection〕②如果还没定义参加人员用例7定义参加人员(AddAttendee)用例5:更改申请〔ModifyRequest〕更改召开时间更改参加人员更改取得会议室发会议更改通知使用:用例13选择参加组〔SelectGroupAttendee〕用例11发会议通知(InformofMeeting)扩展:①如果更改的时间不合法用例12申请拒绝〔RequestRejection〕②用例7定义参加人员(AddAttendee)退出上页首页下页末页第六页,编辑于星期五:十七点二十三分。 用例6:取消会议召开〔CancelRequest〕、取消申请归还会议室发会议取消通知使用:用例8归还会议室〔ReleaseRoom〕用例14发会议取消通知〔InformRejection〕扩展:①如果会议已召开用例12申请拒绝〔RequestRejection〕用例7:定义参加人员(AddAttendee)输入参加人员的详细信息定义参加组用例9:会议维护〔MeetingRoomMaintenance〕参加一个会议室〔用例15)标记一个会议室不可用〔用例16)查询会议室预定情况〔用例17)用例10:设置预定时限制〔SetReservationTomeLimit〕设置时间限用例11:发会议通知(InformofMeeting)从会议人员管理获得参加人员的投递地址填写通知〔会议召开时间、会议室号码〕发送通知用例12:申请拒绝〔RequestRejection〕作废当前的一切输入中字止用户当前的操作用例13:选择会议参加人员组(SelectGroupAttendee)浏览会议组成员选择参加组用例14:会议取消通知〔InformofCancellation)从会议人员管理处获取参加人员地址填写通知发送通知用例8:归还会议室〔ReleaseRoom〕输入会议室号码输入使用时间删除参加人员归还会议室使用:用例9会议室维护〔MeetingRoomMaintenance〕用例18删除参加人员〔RemoveAttendee〕退出上页首页下页末页第七页,编辑于星期五:十七点二十三分。 用例15:增加会议室〔AddMeetingRoom〕输入会议室号码输入会议室规模输入会议室可使用状态〔可使用、不可使用〕参加该会议室用例16:设置会议室不可使用〔SetUnusableFlag〕输入会议室号码通知该会议室的预定者标记该会议室的可所以状态为不可用用例17:查询会议室的使用情况(BrowseMeetingroomusage)输入会议室号码查询本用例返回会议室的使用状态〔已使用、空闲〕和会议室的可否使用情况。用例18:删除会议参加人员〔RemoveAttendee〕删除参加人员删除参加组图2描述了会议管理系统完整的用例模型。退出上页首页下页末页第八页,编辑于星期五:十七点二十三分。 5、完整的会议管理系统的Usecase图图2完整的会议管理系统Usecase图退出上页首页下页末页第九页,编辑于星期五:十七点二十三分。 除了用例模型外,其他模型都依赖于类模型,因此,类模型是OO方法的核心,类模型从对象的角度描述系统的组成,描述类〔对象〕及相互间的关系。为了建立类模型,首先要识别类,鉴于篇幅,这里就不再讨论类的识别过程。通过分析,识别以下类:1、Meeting类,标识一个会议〔名称、类型、规模〕。2、MeetingInstance类,Meeting类的子类,对会议时间、人数等进行描述。3、MeetingRoom类,描述会议室的有关信息。4、MeetingAdministration类,管理会议。5、Attendee类,描述参会人员〔姓名、性别、地址、头衔等〕。6、GroupAttende类,创立一个参加会议的组。7、Address类,描述邮寄地址E-mail地址。8、PostOffice类,负责发送邮寄通知。9、AttendeeManagement类,数据库管理。10、ReservationCriteria类,定义会议室预定准那么。11、Information类,构造一条通知。三、建立类模型退出上页首页下页末页第十页,编辑于星期五:十七点二十三分。 该类与会议召开不同,它标识了一个会议〔图3〕,因此,其属性包括会议名称、类型、规模〔参加会议的人数〕。其操作那么有:增加会议、取消会议。一个会议往往有多个子会议〔子类〕的召开,因此,必须描述Meeting类与其子类MeetingInstance类之间的关联,如图4所示。2、MeetingInstance类MeetingInstance类是Meeting类的子类,描述会议的具体情况,会议的开始(StartTime)、结束时间(EndTime),参会的人数(AttendeeNumber),其操作有:添加参加人员AddAttendee()、添加参加人员组AddGroupAttendee(),而AttachMeetingRoom()表示为该类分配一个会议室,而Cancel()那么表示取消该会议的召开。MeetingMeetingInstanceStartTimeEndTimeAttendeeNumberAddAttendee()AttachMeetingRoom()AddGroupAttendee()Cancel()MeetingNameTypeSizeAddMeetingInstance()CancelMeetingInstance()图3Meeting类图图4MeetingInstance类图1、Meeting类退出上页首页下页末页第十一页,编辑于星期五:十七点二十三分。 MeetingRoomCapacityBuildingCodeDoorCodeStatusAssignMeetingInstance()SetInvalidate()Release()MeetingInstanceMeeting图5MeetingRoom类图该类描述了有关会议室的情况,因此MeetingRoom类的属性包括:会议室的规模Capacity,位置BuildingCode、DoorCode,使用状态Status〔正在使用、已预定、空闲和不可用〕等。该类的操作有:AssignMeetingInstance()将MeetingRoom分配给MeetingInstance对象,而SetInvalidate()那么表示当会议室出现故障时,将其状态设置为不可用。Release()为归还会议室。当会议被预定后,为了便于查询某个会议室预定给了哪个会议,应建立类MeetingRoom与类MeetingInstanc之间的双向关联,这里定义为1:1。3、MeetingRoom类退出上页首页下页末页第十二页,编辑于星期五:十七点二十三分。 AttendeeNameSexPostaddressEmailAddressTitleMeetingInstance11..*图6Attendee类图Attendee类描述参加会议人员的有关信息,如:姓名、性别、地址、E-mail地址、头衔等。MeetingInstance类与Attendee类之间有一对多的关联“1..*〞。5、GroupAttendee类MeetingInstanceGroupAttendeeMemberNumberGroupNameAddAttendee()DeleteAttendee()10..*Attendee11..*图7GroupAttendee类图该类可创立一个参加会议的组,便于按照小组选择参加会议的人员。MeetingInstance类与GroupAttendee类之间有一对多的关联“0..*〞。4、Attendee类退出上页首页下页末页第十三页,编辑于星期五:十七点二十三分。 系统中有两种地址:电子邮件地址〔EmailAddress〕和邮寄地址〔PostAddress〕,而且,每个参加会议的人,可以有一个或者多个邮寄地址,有0个或多个E-mail地址。有关地址的属性,在再内这里不再讨论。负责发送邮寄通知。PostOffice类分别与PostAddress、EmailAddress和Information之间有一对多的关联。7、PostOffice类1..*InformationEmailAddress1..*PostAddress1..*(fromUseCaseView)DelieverInformation()图9PostOffice类图PostOfficeAddressPostAddressEmailAddressAttendee图8Address类图1..*0..*6、Address类退出上页首页下页末页第十四页,编辑于星期五:十七点二十三分。 InformationNoticeTopicReceiverTitleReceivernameTimeEventExplanationSendTimeSendrSignatureCreate()MeetingRoom图10Information类图该类用于构造一条通知,由于在本系统中,通常有三种:会议召开通知,会议更改通知,会议取消通知。如下例所示,通知的内容常包括标题、接受者、会议内容、会议时间及发通知的时间等。XXXX会议召开通知XX先生:定于2005年9月15日在樱都会议中心召开XXXX会议。XXXX会议筹备组2005年8月20日8、Information类退出上页首页下页末页第十五页,编辑于星期五:十七点二十三分。 八、Iformation类GroupAttendeeAttendeeAttendeeManagement(fromUseCaseView)AttendNumber()GroupAttendeeNumber()AddAttendee()ChangeAttendee()AddGroupAttendee()DeleteGroupAttendee()图11AttendeeManagement类图该类使用数据库对参加会议的人员进行管理。分析阶段只确定该类与系统的接口,有关数据库的设计在设计阶段解决。该类与GroupAttendee类及Attendee类的关联如图11所示。10、ReservationCriteria类该类定义了预定会议室的准那么(如时间),并建立会议实例〔MeetingInstanee类〕与该类之间的联系。ReservationCriteriaTimeCriteriasetCrieria()GetCriteria()MeetingInstanee图12ReservationCriteria类图9、AttendeeManagement类退出上页首页下页末页第十六页,编辑于星期五:十七点二十三分。 八、Iformation类该类管理系统中由用户定义的所有会议,并提供给用户友好的用户界面。由于该类有定义会议〔DefineMeeting〕、更改会议〔AlterMeeting〕、删除会议〔RemoveMeeting〕等操作,建立与Meeting类之间的关联关系。MeetingName:stringMeetingAdministration(fromeetingPack)MeetingNumber:intDefineMeeting()AlterMeeting()RemoveMeeting()Meeting(fromMeetingPack)图13MeetingAdministration类图11、MeetingAdministration类退出上页首页下页末页第十七页,编辑于星期五:十七点二十三分。 MeetingMeetingName:stringMeetingAdministrationReservationCriteriaMeetingInstanceInformationMeetingRoom1..*1..*1..*PostOfficeGroupAttendeeAttendeeManagementAddressPostAddressEmailAddressAttendee1..*0..*1..*0..*110..*0..*0..*111图14会议管理系统类图会议管理系统类图退出上页首页下页末页第十八页,编辑于星期五:十七点二十三分。 四、建立系统包图引入包图来对类进行管理,图15为本系统的包图。系统由会议包(MeetingPack)、人员包(AttendeePack)和邮寄包(PostOfficePack)三类包组成。图16、图17、图18分别描述了这三类包的构成。PostOfficePack图15系统包图MeetingPackAttendeePack退出上页首页下页末页第十九页,编辑于星期五:十七点二十三分。 1、会议包〔MeetingPack〕2、人员包〔AttendeePack〕3、邮寄包〔PostOfficePack〕GroupAttendeeAddressPostAddressEmailAddressAttendee图17人员包构成0..*1..*1..*1图18邮寄包构成InformationPostOffice(fromUseCaseView)1..*0..*MeetingMeetingName:stringMeetingAdministrationReservationCriteriaMeetingInstanceMeetingRoom图16会议包构成111包图退出上页首页下页末页第二十页,编辑于星期五:十七点二十三分。 静态模型关注的是系统各成分的组织结构,而动态模型那么要描述系统各成分之间的交互行为,即系统的动态特征。结合本系统,建立动态模型,包括交互图、合作图、活动图。〔一〕对象交互模型在面向对象的方法中,一切元素都与对象紧密相关,事件也不例外。因此,对象在其生命期中不断地与其它对象交互。使用对象交互模型来描述用例图中的每个用例,从对象观点来描述用例的动态交互过程。在UML中,交互模型由两类图来描述:顺序图〔Sequencediagram〕强调的是对象交互行为的时间“顺序〞,直观描述了对象的生存期,用消息传送来清晰地描述了在对象生存期中某一时刻的动态行为。只适宜描述简单的对象交互情况。合作图〔Collaborationdiagram〕强调的是对象合作的交互行为关系,对象间由各种关联连接,对象之间的合作情况〔交互情况〕使用消息流来表示,但消息没有发送时间和传送时间的概念。适宜描述对象数目较多,交互情况教复杂的情况。五、建立动态模型退出上页首页下页末页第二十一页,编辑于星期五:十七点二十三分。 :MeetingAdministration:Meeting:MeetingAdministrattor1:DefineMeeting(meeting)[IsMeetingExisted=.T.]3:Fail(MeetingExisted)2:{new(meeting)}图19定义会议的顺序图当用户向会议中心申请召开会议时,首先要定义一个会议。会议管理者发送DefineMeeting消息给MeetingAdministration对象,消息参数是有关会议的一个临时对象(meeting),根据该临时对象检查会议是否存在?假设不存在,创立新会议:2:{new(meeting)},假设当条件表达式为真时:[IsMeetingExisted=.T.],表示会议已经被定义,不需要再定义。1、用例:定义会议(DefineMeeting)的顺序图退出上页首页下页末页第二十二页,编辑于星期五:十七点二十三分。 当用户确定要取消某个会议时,首先检查会议是否认义,如果没有可以直接删除,否那么要先取消相关的会议。如图20所示,首先系统用户对象MeetingAdministrator发出RemoveMeeting(MeetingName)消息给对象MeetingAdministration,通过消息的参数检索要取消的会议对象,并向该对象发出取消会议召开的消息。表达式“[IsOpen=.F.]〞表示如果会议不处于召开状态,就取消它。表达式“[IsAllMeetingInstancesCanceled=.T.]〞表示该会议的所有会议召开都已经被取消,那么会议管理就发出取消会议召开的消息。否那么返回取消失败〔如会议正在召开〕的消息。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()退出上页首页下页末页第二十三页,编辑于星期五:十七点二十三分。 3、用例:撤消会议召开〔CancelRequestment〕的顺序图:MeetingAdministration:Meeting:MeetingInstance:MeetingRoom:PostOffice1:CancelMeetingInstance(Instance)[IsOpen=.F.]2:Cancel()3:Release()4:DelieverInformation(cancellation)图21撤消会议召开的顺序图要撤消某个会议召开,发送Cancel信息给MeetingInstance对象。该对象先要在Meeting对象中注销自己,再归还已分配的会议室,并向参会人员发撤消会议的通知。图21中会议管理对象发送给会议对象的消息CancelMeetingInstance(Instance)中的参数用于检索会议召开。条件表达式[IsOpen=.F.]表示如会议召开未进行,那么撤消会议召开。如果会议已进行,那么返回失败消息〔图中未列出〕。退出上页首页下页末页第二十四页,编辑于星期五:十七点二十三分。 图22撤消会议召开的顺序图:PostOffice:MeetingAdministration:Meeting:MeetingInstance:MeetingRoom1:AddMeetingInstance(instance)2:{new}6:AssignMeetingInstance()7:DelieverInformation(info)5:AttachMeetingRoom(room)4:AddGrooupAttendee(group)3:AddAttendee(member)如果时间合法,就创建一个会议召开对象。4、用例:申请会议召开〔RequestMeetingInstance〕的顺序图用户申请一个会议召开时,应该指定会议召开的名称,召开的时间,及会议参加人员。图22中instance、member、group、room、info都是临时对象,instance记录了用户指定的会议属性〔时间、参加人数等〕,member为一个参会代表,是Attendeegroup参会人员组的对象;而room是满足要求的会议室。4、用例:申请会议召开退出上页首页下页末页第二十五页,编辑于星期五:十七点二十三分。 六、合作图与活动图对于简单的对象交互情况,顺序图可以作很好的描述,可是,当交互对象数目增加,交互情况复杂时,顺序图就很难描述清楚了,可用合作图来描述。合作图描述了系统中所有对象之间的交互合作关系,注重对象之间的整体交互情况,交互关系由消息流来表示。在Rose中,还可以将顺序图与合作图进行转换。本案例不再给出合作图。七、活动图活动图模型主要用于描述系统在问题域空间中的活动流程,活动图可以方便地描述系统中的并发活动。由于本例中并没有复杂的并发活动,而且也也没有明显的基于核心的、具有复杂状态和行为的对象,所以可以不必画出合作图和活动图。六、合作图退出上页首页第二十六页,编辑于星期五:十七点二十三分。 1、了解面对逆境,远比方何接受顺境重要得多2021/9/1213:15:5813:15:581:15:58PM。九月-21九月-21Sunday,September12,20212、一般的伟人总是让身边的人感到渺小Sunday,September12,20211:15:58PM9/12/20211:15:58PM13:15Sep-21。13:15:5813:15:5813:159/12/20211:15:58PM3、13:15Sep-2112-Sep-214、昨天是张退票的支票12-Sep-211:15:58PM13:1513:15:5813:15:5813:15Sunday,September12,20215、积极人格的完善是本,财富确实立是末12-九月-21。九月-21九月-2113:15:5813:15:58September12,20216、昨晚多几分钟的准备9/12/20211:15:58PM12九月20211:15:58下午13:15:58九月-217、每一发奋努力的背,必有加倍的赏赐1:15:58下午九月211:15下午九月-2113:15September12,20218、业余生活要有意义,不要越轨。2021/9/1213:15:5813:15:5812September20219、要及时把握梦想,因为梦想一死9/12/20211:15:58PM。1:15:58下午1:15下午13:15:58九月-2110、一个人的梦想也许不值钱,但一个人的努力很值钱。9/12/20211:15:58PM13:15:5812-九月-2111、在真实的生命里,每桩伟业都由信心开始,并由信心跨出第一步。9/12/20211:15PM9/12/20211:15PM九月-21九月-21谢谢大家第二十七页,编辑于星期五:十七点二十三分。 1、每一个成功者都有一个开始。勇于开始,才能找到成功的路2021/9/1213:16:3113:162、成功源于不懈的努力,人生最大的敌人是自己怯懦。13:16:3113:16:3113:169/12/20211:16:31PM3、每天只看目标,别老想障碍Sunday,September12,2021。九月-2113:16:3113:16Monday,July19,202112-Sep-214、宁愿辛苦一阵子,不要辛苦一辈子1:16:31下午。13:16:3113:16:3113:16Sunday,September12,20215、积极向上的心态,是成功者的最根本要素13:16:31。九月-21九月-2113:16:3113:16:31September12,20216、生活总会给你另一个时机,九月-211:16:31PM1:16:31下午13:16:31九月-217、人生就像骑单车,想保持平衡就得往前走21:19:48九月-2113:16September12,20218、业余生活要有意义,不要越轨。2021/9/1213:16:3113:16:3112September20219、我们必须在失败中寻找胜利Sunday,September12,2021九月-2110、一个人的梦想也许不值钱,但一个人的努力很值钱。9/12/20211:16:31PM13:16:3112-九月-2111、在真实的生命里,每桩伟业都由信心开始,并由信心跨出第一步。9/12/20211:16PM9/12/20211:16PM九月-21九月-21谢谢大家第二十八页,编辑于星期五:十七点二十三分。