当前位置:文档之家› UML多用户聊天系统

UML多用户聊天系统

UML多用户聊天系统
UML多用户聊天系统

软件学院

课程设计报告书

课程名称面向对象分析与设计课程设计

设计题目多用户聊天系统

专业班级软件工程xxxxx班

学号xxxxxxxxxxx

姓名xxxxxxxx

指导教师xxxxxxxx

2012 年6 月

目录

1 设计时间 (1)

2 设计目的 (1)

3 设计任务 (1)

3.1任务说明 (1)

3.2系统目标 (1)

3.3功能要求 (1)

4 设计内容 (2)

4.1界面构建 (2)

4.2用例图 (2)

4.2.1用例图 (2)

4.2.2用例描述 (4)

5包图 (11)

6系统时序图 (13)

7活动图 (13)

8总结与展望 (14)

参考文献 (15)

1 设计时间

2012.5.28-2012.6.1

2 设计目的

本课程设计是学生学习完《面向对象分析与设计》课程后,进行的一次全面的综合训练,通过课程设计,让学生动手学会使用UML进行面向对象的建模方法,加深对UML建模基础理论的理解,加强学生解决实际软件工程问题的能力,利用所学的知识开发一个多人聊天系统。

3 设计任务

3.1任务说明

(一)必备功能说明

1)、用户管理:实现用户的注册,登录以及验证功能。

2)、用户账户管理:用户管理自身基本信息,例如:上一次登录时间,积分等。

3)、用户显示管理:显示所有的用户,在线用户以红色字体显示其名字,离线用户以灰色字体显示其名字。

4)、用户发言:用户发言时,可以选择发言的表情(插入表情图片)以及文字的字体属性(字体大小,字体颜色等);用户也可以选择具体的某一聊友进行单独留言,进行文件传送等;用户发言时,可插入外来图片,设置超级链接等功能。

5)、显示发言信息:根据用户选择的字体属性显示发言信息。

6)、管理员:删除某用户的发言信息,删除用户等。

3.2系统目标

聊天室使用数据库汇集每个人的发言,然后将数据库中的发言信息显示在页面上,使每一位用户都能看到。

3.3功能要求

1给未注册得用户提供注册的功能

2给注册的用户提供登陆的功能

3系统提供用户登陆验证的功能

4系统提供用户发言的功能

5系统提供用户添加表情的功能

6系统提供用户选择字体的功能

7系统提供用户私聊的功能

8系统提供用户插入超链接的功能

9系统提供管理员删除发言的功能

10系统提供管理员删除用户的功能

11系统提供记录用户信息的功能

12系统提供显示用户状态功能

13系统提供显示用户发言的功能

14系统记录用户登陆状态

4 设计内容

4.1界面构建

1、为了便于各种操作,软件采用单界面使用的模式。用户可在相同的界面进行相应操作(发言、选择表情、选择字体、私聊、插入超链接、),管理员则相应增加删除发言和用户的功能。

2、主界面(显示所有信息页面)是用户进行各种操作的平台,具体操作在用户的使用过程中通过和后台系统的信息交互中实现。

3、主页面的主要功能显示用户的发言、私聊信息、选择操作。

4、当用户在进行登陆或其它的错误输入操作时,会弹出相应对话框提示用户。如当登陆成功或是其它的操作成功,弹出成功以及相应的简明信息提示。

5、界面的布局要尽量得合理,各组件位置分布均匀美观。

4.2用例图

4.2.1用例图

验证

登录

用户

注册

发言

选择表情

选择字体

私聊

插入超链接普通用户

管理自身信息

删除发言管理员

删除用户

信息验证

记录用户信息

显示用户状态

显示用户发言信息

聊天系统记录登录信息

<>

<>

<> 4-1 系统用例图

4.2.2用例描述

1、用例名称:

登陆

2、简要说明:

用户通过登陆界面进入即时聊天系统,进入后获得发言聊天权限

3、事件流:

用户打开登陆界面,填写帐号和登陆密码

提交登陆信息给后台系统

系统利用本地数据库中所存的登陆帐号和密码进行验证

系统判断本次登陆是否有效,若正确则判断用户的类型,若错误则提示登陆

4、非功能需求:

界面设计要简洁合理,增加3次登陆失败24小时内禁止登陆功能

5、前置条件:

确保即时聊天系统已在后台启动

确保登陆前已注册有效的帐号和密码

6、后置条件:

用户在通过系统认证后将会进入即时聊天系统的交互界面,获得操作权限,可

以进行聊天发言的操作

7、扩展点:

包含验证

扩展注册

8、优先级:1(优先级为:1-5级1级为最高)

1、用例名称:

注册

2、简要说明:

用户通过注册功能获得合法的用户帐号和密码,继而获得使用软件的权限3、事件流:

没有合法帐号密码的用户进入注册页面

按提示规范填入账号和密码

向系统提交申请信息

系统查找本地数据库检测账号是否已存在

若不存在则将信息记录到本地数据库的用户列表

提示用户注册成功

若用户账号已存在则不存入信息提示注册失败,重新注册

4、非功能需求:

提示用户按规定填入信息

提示用户注册结果

若成功转到登陆界面

若失败则重新注册

5、前置条件:

即时聊天系统在后台打开

6、后置条件:

若成功跳转到登陆界面i

若失败继续保留在注册页面

7、扩展点:

由登陆用例扩展而来

8、优先级:1

1、用例名称:

验证

2、简要说明:

由即时聊体系统的验证部分对用户提交的信息进行验证,检测信息是否正确3、事件流:

用户进入登陆界面填写登陆信息

提交登陆信息

系统对用户所提交的信息进行验证

若信息正确则进入交互界面

若失败则不能进入交互界面

4、非功能需求:

5、前置条件:

聊天系统已在后台运行

用户提交登陆信息

6、后置条件:

若成功进入交互界面

若失败进入登陆界面

提示错误

7、扩展点:

是登陆用例的包含用例

8、优先级:1

1、用例名称:

发言

2、简要说明:

为用户提供在界面显示信息的功能

3、事件流:

用户成功进入交互界面

在界面的文字输入文本框中输入想要发言的信息

点击发言按钮提交信息

信息显示至显示信息界面

4、非功能需求:

5、前置条件:

用户输入合法的文本信息并提交

6、后置条件:

由后台系统将信息提交的显示界面

7、扩展点:

8、优先级:2

1、用例名称:

选择插入表情

2、简要说明:

用户选择由系统提供的表情图片插入到发言中并显示3、事件流:

用户从表情选项的下拉菜单中选择表情

将表情插入到当前光标位置

用户编辑完发言后选择提交

系统显示信息

4、非功能需求:

可以自由的对表情库进行增加和删除操作

5、前置条件:

用户选择表情

6、后置条件:

将表情插入到合适的位置

7、扩展点:

8、优先级:

3

1、用例名称:

选择字体

2、简要说明:

用户选择由系统提供的字体格式

3、事件流:

用户从字体下拉菜单中选择字体

体统按要求显示文本

4、非功能需求:

5、前置条件:

用户选择字体

6、后置条件:

系统按要求显示字体

7、扩展点:

8、优先级:

3

1、用例名称:

私聊

2、简要说明:

为用户提供一对一形式的聊天

3、事件流:

用户从聊天类型下拉菜单中选择私聊

系统根据请求将信息定向发送

4、非功能需求:

5、前置条件:

用户选择私聊

6、后置条件:

显示私聊界面

7、扩展点:

8、优先级: 2

1、用例名称:

超链接

2、简要说明:

在聊天文本中插入超链接

3、事件流:

用户进入界面开始发言

在文本中插入超链接

4、非功能需求:

5、前置条件:

用户编辑文件插入超链接

6、后置条件:

其他用户可以使用超链接

7、扩展点:

8、优先级:

3

删除发言

2、简要说明:

管理员登陆后可以对用户的发言文本进行删除3、事件流:

管理员登陆系统

删除用户的发言文本

4、非功能需求:

5、前置条件:

管理员登陆系统

6、后置条件:

用户文本被删除

7、扩展点:

8、优先级:

2

1、用例名称:

删除用户

2、简要说明:

管理员登陆后可以对用户进行删除

3、事件流:

管理员登陆执行删除操作

4、非功能需求:

5、前置条件:

管理员登陆执行删除操作

6、后置条件:

用户信息被删除

7、扩展点:

8、优先级:

1、用例名称:

管理自身信息

2、简要说明:

用户负责管理自己的信息

3、事件流:

4、非功能需求:

用户注册

6、后置条件:

7、扩展点:

8、优先级:

3

1、用例名称:

系统验证

2、简要说明:

对用户提交的信息进行核对3、事件流:

用户提交有关信息

系统进行相关验证

4、非功能需求:

5、前置条件:

用户提交信息

6、后置条件:

系统进行操作

7、扩展点:

8、优先级:

1

1、用例名称:

记录用户信息

2、简要说明:

记录用户的相关信息

3、事件流:

用户提交信息

系统进行核对

得出结果

4、非功能需求:

5、前置条件:

用户提交信息

6、后置条件:

数据库进行操作

7、扩展点:

1

1、用例名称:

记录用户登录信息

2、简要说明:

对进行登陆和退出的用户进行记录

3、事件流:

用户登录

系统将用户记录下来

用户退出

系统将用户记录删除

4、非功能需求:

5、前置条件:

用户进行登陆或退出操作

6、后置条件:

系统对用户进行进入删除操作

7、扩展点:

8、优先级:

1、用例名称:

显示用户

2、简要说明:

根据用户所在的状态显示用户的头像颜色3、事件流:

查看用户的状态

若是登陆状态则显示彩色头像

若是退出状态则显示黑白头像

4、非功能需求:

5、前置条件:

6、后置条件:

7、扩展点:无

8、优先级:无

5包图

5-1包图

本次开发的聊天系统从软件的总体结构上来看可以共分为三个层次:界面层、数据层、业务处理层。

从需求功能上分为:客户、服务、网络通信三个层次。依据其功能将其分为三个包如上如上图所示。

5-2 Util包中包括的基本公共类和工具类图

5-3client包中的基本类图 5-4 sever包中的基本类图

6系统的时序图

用户在客户端按规定格式填入必要的信息后,向聊题系统提交自己的信息。聊天系统将按照一定的规则给用户生成一个可用的用户帐号,来和网络上的其它本系统的用户进行及时的收发信息聊天。在以后的每一次登陆中系统都将对用户进行身份验证,以确定该用户是否为合法的用户。

6-1系统时序图

7活动图

7-1系统活动图

说明:用户首先按提示输入帐号和密码,系统自动对输入的信息进行验证,若信息正确则登陆成

功 ,进入聊天界面,否则登陆失败自动调转到登陆界面,重新登陆。

8总结与展望

学校为了加强我们的实际操作和编程能力组织了这次程序设计活动,经过这几天的活动,完全打破了我之前认为这是个很枯燥乏味的过程的那种想法,让原本不感兴趣的我,渐渐对任务充满浓厚的兴趣,软件开发作为一个新兴行业,我个认为最主要的是,它是一个具有挑战性、完善自我的的行业,而且与生活紧密相连。在这几天的活动中我还学到了,软件开发的流程,高级语言在开发时需要注意的一些问题,及各种流行框架的使用,让我更加的了解软件行业是需要细心强和责任心强的员工。如果在工作中我们失去了细心,那么在开发中就不能很好的发挥自身的作用,开发的软件也将达不到理想的效果,失去应有的价值;另外系统功能需求我们了解:怎样才能理解好需求,从而创造出有市场价值的软件时很重要的;然而我们常常忽略需求而只是注重编码。学校的这一次活动有意义的,老师及学校人员都为我们做了很多准备,让我们在学习过程中拥有良好的环境和氛围,让我们融为一体,我们在未来的工作中要端正心态,更加努力!更加自信!

参考文献

[1]李钟尉,马文强,陈丹丹Java从入门到精通[M] 第1版清华大学出版社2008.9

[2]刘万军,梁清华,王松波,宋强Java程序设计实践教程[M] 第1版清华大学出版社2006.9

[3] 王少峰. 面向对象技术UML教程. 清华大学出版社,2004.2

成绩评定

成绩教师签字

相关主题
文本预览
相关文档 最新文档