版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
沈阳理工大学课程设计专用纸PAGEPAGE3沈阳理工大学目录1系统概述 12需求分析 22.1ER图 22.2数据流图(分层) 32.3状态转换图 42.4数据字典 53系统设计 73.1总体设计 73.2详细设计 83.3服务器模块的代码: 94测试报告 115总结 156.参考文献 15
1系统概述该网络聊天室程序支持局域网内以及本机的聊天,拥有客户端,服务器。用户通过客户端启动程序,使用需要先进行注册账号,接着用已注册的账号登陆到聊天室。聊天室中,用户可以选择对象进行私人聊天,同时用户也可以把自己的聊天信息保存下来。服务器负责接收用户的登陆与注册请求,并把用户的信息以及聊天的信息存储在Mysql数据库中。2需求分析2.1ER图用户用户服务器登陆注册年龄性别密码邮箱账号数据库访问用户聊天信息表用户账号信息表聊天系统E-R图2.2数据流图(分层)首先,建立顶级数据流图,其中只含有一个代表目标软件系统整体处理功能的转换.根据聊天室系统与外部环境的关系确定顶级数据流图中的外部实体有两个,分别是:用户和服务器0层用户接收登陆用户接收登陆接收注册验证登陆信息更新用户信息表聊天室登陆注册注册信息登陆信息用户账号D1用户信息表聊天子功能的数据流图1层 用户用户接收事物接收事物处理私聊信息另一个用户私聊非私聊聊天信息私聊信息信息聊天信息所有用户2.3状态转换图登陆状态登陆状态输入登陆信息聊天状态状态输入登陆信息注册成功错误登陆注册状态输入注册信息没有账号注册不成功退出退出退出退出2.4数据字典名字:用户注册信息名字:用户注册信息别名:使用地点与方式:注册窗口发送到服务器内容描述:注册信息=用户账号+用户密码+年龄+性别+邮箱号附加信息:注册窗口将注册信息发送给服务器,服务器将注册信息存入数据库中的用户表内名字:用户登陆信息名字:用户登陆信息别名:使用地点与方式:登陆窗口发送到服务器内容描述:登陆信息=用户账号+用户密码附加信息:登陆窗口将登陆信息发给服务器,服务器将登陆信息与数据库中已存在的用户信息进行比对,存在相同允许登陆名字:用户退出信息名字:用户退出信息别名:使用地点与方式:用户退出时发送给服务器内容描述:退出信息=退出用户账户附加信息:用户退出时将该信息发送给服务器,服务器将该用户下线消失发送给其他用户。名字:用户聊天信息名字:用户聊天信息别名:使用地点与方式:聊天室内发送信息内容描述:聊天信息=发送用户账号+接收用户账号+聊天内容附加信息:聊天窗口将聊天信息传送给服务器,服务器分析后将聊天内容发送给接收用户。3系统设计3.1总体设计聊天室系统的HIPO图如下:注册注册登陆服务器聊天室数据库网络聊天室系统用户登陆处理聊天处理用户注册处理公众聊天私人聊天用户退出处理保存聊天内容判断登陆成功跟新用户表连接数据库连接服务器3.2详细设计服务器模块的的PAD图启动服务器启动服务器接收从客户端发来的信息接收从客户端发来的信息用户信息写入数据库登陆与数据库进行比较聊天信息写入数据库判断信息退出服务器聊天系统使用mysql数据库,系统中新建chattingroom数据库,f拥有用户信息表users,该表格式如下name:varchar(20)password:varchar(20)sex:varchar(2)age:varchar(3)mail:varchar(20)如下图所示:3.3服务器模块的代码:主程序入口publicclassChatClient{publicChatClient(){}publicstaticvoidmain(Stringargs[]) { newLogin(); }}信息封装importjava.io.Serializable;importjava.util.Vector;classCustomerimplementsSerializable{ privatestaticfinallongserialVersionUID=1L; StringcustName; StringcustPassword;}//封装注册信息classRegister_CustomerextendsObjectimplementsjava.io.Serializable{ privatestaticfinallongserialVersionUID=1L; StringcustName;StringcustPassword;Stringage;Stringsex;Stringemail;}@SuppressWarnings("serial")//用于发送聊天和在线用户的信息classMessageimplementsSerializable{ @SuppressWarnings("unchecked") VectoruserOnLine; @SuppressWarnings("unchecked") Vectorchat;}//聊天信息序列化@SuppressWarnings("serial")classChatimplementsSerializable{ StringchatUser; StringchatMessage; StringchatToUser; booleanwhisper;}//退出信息序列化@SuppressWarnings("serial")classExit1implementsSerializable{Stringexitname; }4测试报告测试方法:考虑到各种因素和条件的限制,对聊天系统采用黑盒测试方案,即根据软件所需要的输入数据的格式以及应该完成的功能,设计一些合法的测试用例和不合法的测试用例,特别是根据边界条件设计一些便捷测试用例,检查系统是否能正确地完成预期功能,得要希望的输出;或是对不合法的输入和操作能够正确地识别和防御。对个别重要的模块辅以白盒测试,以保证系统的正确性。测试过程:登陆模块测试:(1)当用户名不存在时(2)用户密码输入错误时在1,2两种情况中用户无法登陆,系统提示登陆错误,结果如下图所示:(3)在用户名或者密码为空时,结果如下图注册模块测试:用户名或者某一项为空值的时候,结果如下图当注册的用户名已经存在时:(3)当两次输入密码不一致的时候,结果如下图所示:当邮箱输入不规范时,结果如下图所示聊天室模块测试对所有人聊天
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025湖南省演出公司公开招聘2人笔试参考题库附带答案详解(3卷)
- 2025年鼎和财产保险股份有限公司校园招聘37人笔试参考题库附带答案详解(3卷)
- 2025年安徽芜湖鸠兹水务有限公司第二批工作人员招聘3人笔试参考题库附带答案详解(3卷)
- 2025年中国大唐集团有限公司浙江分公司高校毕业生招聘笔试参考题库附带答案详解(3卷)
- 2025四川泸州市兴泸污水处理有限公司社会招聘笔试参考题库附带答案详解(3卷)
- 杭州市2024中国计量大学招聘28人-统考笔试历年参考题库典型考点附带答案详解(3卷合一)
- 雪糕供销合同范本
- 私人之间借款合同范本
- 幼儿园中班中班综合快乐的小脚丫教案
- 买顶账房合同范本
- 教学查房课件-强直性脊柱炎
- 传染病报告卡
- 句法成分课件(共18张)统编版语文八年级上册
- 2023版中国近现代史纲要课件:07第七专题 星星之火可以燎原
- 通知书产品升级通知怎么写
- 气管插管术 气管插管术
- 大学《实验诊断学》实验八:病例分析培训课件
- GB/T 28400-2012钕镁合金
- 多维阅读第8级Moon Mouse 明星老鼠的秘密
- 骨髓增生异常综合症课件整理
- 心肌梗死院前急救课件
评论
0/150
提交评论