好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

UML建模案例解析即时通信系统.doc

8页
  • 卖家[上传人]:人***
  • 文档编号:453872016
  • 上传时间:2023-12-21
  • 文档格式:DOC
  • 文档大小:62.50KB
  • / 8 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • \案例:即时通信系统1、 问题描述设计一个即时通信系统,实现多个用户进行网上聊天的功能,各个聊天客 户端通过注册、登录才可以和好友进行通信系统既包括客户端部分、也包括 服务器端部分在客户端能够实现消息的查看,添加和删除网上的好友,与选定的好友进 行通信,查询自己与好友的聊天记录等功能服务器端负责好友的维护,同时服务器还应该具有保存用户资料和用 户聊天记录的功能此外,当用户不时,收到的好友消息能够被保存,使 用户在下次登录时可以查看2、 建立用例模型(1) 确定参与者当考虑构造一个系统时,首先要确定系统的边界,即主体系统边界定义了由谁(参与者)使用系统,系统能够为参与者提供什么功能(用例) 根据定义,参与者是指所有存在于系统外部并与系统进行交互的人或其他系统为了 确定参与者,需要考虑谁或什么使用系统,它们在与系统的交互中扮演什么角 色,然后归纳它们一般地,寻找参与者可以从一下问题入手: 系统开发完成后,有哪些人会使用这个系统? 系统需要从哪些人或其他系统获取数据? 系统会为哪些人或其他系统提供数据? 系统会与哪些其他系统相关联? 系统是由谁维护和管理的? 谁启动或关闭系统?这些问题有助于抽象出系统的参与者。

      分析:对于即时通信系统,参与聊天的客户(Client )显然是系统的参与者 为了完成客户的管理和客户信息的验证等功能,需要有一个服务 器(Server)为了实现客户信息和通信记录的存储等功能,需要有一个数据库(DataBase)2) 确定用例确定参与者后,就可以根据参与者来确定系统的用例,用例是参与者想要 系统做的事情需找用例可以从以下问题入手(针对每一个参与者) :参与者希望系统提供什么功能?参与者是否会在系统中创建、修改、删除、访问、存储数据?如果是 的话,参与者又是如何来完成这些操作的? 参与者是否会将外部的某些事件通知给该系统? 系统是否会将内部的某些事件通知给该参与者?分析:参与者Client使用的用例有:Register (注册账号)、Log in (登录系 统)、Log out (退出系统)、Send Message发送消息)、Add Friends (添 加好友)、Delete Friends (删除好友)、Query Record (查询聊天记录) 参与者Server使用的用例有:Log in (登录系统)、Log out (退出系 统)、Add Friends (添加好友)等。

      参与者Database使用的用例有:Register(注册账号)、Send Message发 送消息)、Add Friends (添加好友)、Delete Friends (删除好友)、 Query Record (查询聊天记录)等在用例的抽取过程中,必须注意:用例必须是由某一个参与者触发而产生 的活动如果存在与参与者不进行交互的用例,就可以考虑将其并入其他用例; 或者检查该用例相对应的参与者是否被遗漏?然后补上相应的参与者反之,每个参与者也必须至少涉及到一个用例,如果发现有不与用例相关 联的参与者存在,就应该考虑该参与者是否与系统发生交互?若是,则由该参 与者确定一个新的用例;若不是,则该参与者是一个多余的模型元素,应该将 其删除3、用例描述用例图只是在总体上描述了系统所能提供的各种服务,但是没有提供任何 细节信息为此,对于每个用例,还需要有详细的说明,即用例描述对于用例描述的格式和内容,没有硬性规定,但一般应包括以下几部分: 用例名称 用例编号 参与者 简要描述 事件流:包括基本事件流、可选事件流和异常事件流 前置条件 后置条件对于上述用例图中的用例,其描述如下表:表1用例“注册账号”的描述用例名称:Register 用例编号: UC001优先级:高参与者:客户、数据库简要描述:客户在即时通信系统中注册前置条件:客户端应用程序主界面已经启动基本事件流:1、 客户单击“注册”按钮;2、 系统弹出一个注册交互对话框;3、 客户输入注册信息;4、 客户单击“提交”按钮,发送注册信息到数据库;5、 数据库保存注册信息,并自动生成一个数字 ID 返回;6、 客户端弹出对话框显示注册的 ID,提示注册成 功7、 用例终止。

      可选事件流:在单击“提交”按钮前,客户可随时单击“取消”按钮,关闭注册窗口,返回客户端界面异常事件流:提示注册错误,请稍后再试,客户确认,然后返回客户端主界面后置条件:客户获得一个ID,可用此ID登录系统开始即时通 信表2:用例“登录系统”的描述用例名称:Log in用例编号:UC002优先级:高参与者:客户、服务器简要描述:客户登录即时通信系统前置条件:客户端应用程序主界面已经启动, 并且已经有了注册ID基本事件流:1客户输入ID和密码;2、 客户单击“登录”按钮,发送登录请求到服务器;3、 服务器执行“验证用户”用例,将登录请求中的 信息发送给数据库;4、 数据库将ID和密码与数据库中的注册记录比对;5、 如果用户信息合法,数据库发送合法信息、用户的详细注册资料和用户不期间收到的离线消息 给服务器,否则进入可选事件流6、 服务器将客户加入用户列表,返回登录成功 消息和离线消息给客户,并将用户列表发送给所 有的用户7、 提示登录成功,更新好友列表的状态信息并显示 离线消息8、 用例终止可选事件流:将用户不合法消息发送给客户,提示重新登录异常事件流:提示登录失败,请稍后再试,客户确认,然后返回客 户端主界面后置条件:主界面显示用户好友及好友的状态表3:用例“发送消息”的描述用例名称:Send Message 用例编号: UC003优先级:高参与者:客户、数据库简要描述:客户给自己的好友(和离线)发送消息前置条件:客户已成功登录即时通信系统基本事件流:1客户选择一个好友;2、 系统激活主界面消息编辑文本框;3、 客户在文本框中输入、编辑消息,然后单击 发 送”按钮;4、 如果好友不,发送消息给数据库,数据库保 存该聊天记录;否则执行可选事件流5、 数据库返回聊天记录已保存的通知。

      6、 系统提示“对方在登录时会看到您发的消息”7、 用例终止可选事件流:1、 从好友列表中读出此用户的通信参数,将消息直 接发送给用户2、 用户返回消息收到通知3、 系统提示客户“消息已成功发送对方”异常事件流:提示消息发送失败,请稍后再试,客户确认,然后返回客户端主界面后置条件:客户返回登录后的主界面状态表4:用例“添加好友”的描述用例名称:Add Frie nds用例编号:UC004优先级:高参与者:客户、数据库、服务器简要描述:客户端查询数据库列表并选择添加好友前置条件:客户已成功登录即时通信系统基本事件流:1客户单击“添加好友”按钮;2、 系统弹出“用户浏览”对话框;3、 客户端发送查询请求给数据库;4、 数据库返回用户信息给用户浏览对话框5、 客户选择需要添加的好友,并单击“添加”按钮6、 系统更新客户的好友列表,新添加的好友展示为 离线状态;7、 客户发送刚添加的好友消息给服务器;&服务器查询用户列表,如果用户,返回 消息给客户,否则执行可选事件流;9、 客户端将好友列表中此用户更改为状态;10、 用例终止可选事件流:1、 服务器发送消息给数据库2、 数据库将此用户被添加为好友的消息保存为用户的离线消息异常事件流:提示添加好友失败,请稍后再试,客户确认,然后返回客户端主界面后置条件:返回用户浏览对话框,让用户选择“继续添加好友”或者“返回”。

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.