1、概要设计说明书1 引言1.1 编写目的全面分析了用户需求,明确了所要开发软件应具有的功能、性能与界面,使软件开发人员能清楚地了解用户的需求,并在此基础上进一步的提出软件概要设计和完成后续的开发设计工作1.2 背景说明:a 待开发的软件系统的名称:多线程聊天平台;b 本项目的任务提出者:罗老师开发者:朱军用户:实现该软件的计算中心或计算机网络;c 该软件系统同其他系统或其他机构的基本的相互来往关系:本聊天平台是基于 J2ME和/java EE 开发、在 Windows 系统上运行的客户端在线聊天系统,不投入商业使用。 1.3 定义列出本文件中用到的专门术语的定义和外文首字母组词的原词组。1.4
2、参考资料a 概要设计说明书(GB856788)b李刚,疯狂 Java 讲义 (第三版),电子工业出版社 2008.9c 李中尉,马文强,陈丹丹,Java 从入门到精通。清华大学出版社,2008,9,12 总体设计2.1 需求规定客户端需满足下图中的规格:在线聊天平台用户注册注私聊显显示聊天信息显显示在线用户用户登录陆查看个人资料群聊查看用户资料修改个人资料用户退出1) 在登录首页,输入账号和密码,点击“登录”按钮,若账号或密码错误,将提示“登录失败,账号、密码错误或注册账号” ;若是账号和密码正确,将成功进入聊天室,并显示所有在线用户、群聊内容及私聊内容。如果用户是第一次登陆的话,那么必须进行
3、注册,填写注册信息和个人资料,否则将无法登陆到我们的聊天室中。(2) 进入聊天室后,就可以选择相应的聊天对象和聊天方式,字体设置和插入表情;查看在线用户的基本资料;查看个人的基本资料及修改个人的基本资料或是退出聊天室。详细的说明可参见附录 C。2.2 运行环境操作系统:Windows 7数据库管理系统:mysql5.6开发工具:myeclipse 或者 eclipse开发平台: java详细说明参见附录 C。2.3 基本设计概念和处理流程说明本系统的基本设计概念和处理流程,尽量使用图表的形式。系统框架图多线程聊天平台登陆注册模块聊天模块在线用户模块退出模块操作流程图 数据库用户登陆帐号判断帐号
4、或密码错误密码提示重新输入或注册帐号正确显示在线用户选择聊天对象选择表情选择字体颜色查看好友资料修改个人资料查看个人资料显示聊天内容开始查看聊天记录公聊私聊数据流程图是否退出结束2.5 功能器求与程序的关系本条用一张如下的矩阵图说明各项功能需求的实现同各块程序的分配关系:登陆注册模块 聊天模块 在线用户模块 退出模块注册 登陆 私聊 公聊 查看聊天记录 选择表情 选择字体颜色 保存聊天信息 显示在线好友 显示离线好友 查看个人资料 修改个人资料 查看好友资料 退出聊天平台 3 接口设计3.1 用户接口本系统采用图形用户接口,以鼠标和键盘为用户接口,方便用户对系统数据的操作。3.2 外部接口外部
5、接口为鼠标、键盘、触摸屏等交互工具,另需配置一台中心服务器,本系统与其他系统通过调用相同的数据库中的数据而保持一致性3.3 内部接口a.通过面向对象语言设计类,在 public 类中实现调用b.各模块之间采用函数调用,参数传递,返回值的方式c.类之间实现严格的封装4 运行设计4.1 运行模块组合客户端:1、 登录模块能够存储一定数量的用户档案信息,并方便有效地进行相应数据操作和管理,主要包括:(1) 用户的登录、注册、密码修改;(2) 管理员登录、注册、密码修改;2、在线用户模块用户通过该用例对该用户好友进行管理,主要包括:(1)显示在线好友(2)显示离线好友(3)查看和修改个人信息3、聊天功
6、能模块(1)个人状态的选择(2)与好友进行即时聊天(3)建立聊天室,进行多人聊天(4)好友之间可以进行文件的发送与接收4.退出模块(1)实现用户退出功能后台系统:1、系统管理对系统进行维护,添加补丁,或添加、删除修改各个功能模块,主要包括:(1)系统的维护;(2)添加、删除、修改各个功能模块;2、公告管理向用户进行广播操作。主要包括:(1)向用户进行广播宣布系统维护,系统更新;(2)向用户发布公共话题或资料,供用户讨论或给大部分用户提供需求资料;3、用户管理通过管理员对用户进行管理,主要包括:(1)系统管理员完成对用户账号的管理,可以添加,删除用户;(2)对用户上传的文件进行管理,可以删除、打
7、开或下载文件;4.2 运行控制在用户登录成功后,进入聊天平台主界面通过菜单选择特定的功能模块结束程序运行4.3 运行时间A.登录模块 小于 5 秒B.在线用户模块 小于 5 秒C.聊天功能模块 小于 5 秒D.退出模块 小于 5 秒5 系统数据结 构设计5.1 逻辑结构设计要点用户表(users)列名 数据类型 大小 约束 描述userid Int 主键 用户 IDusername Varchar 20 非空 用户名Nickname Varchar 20 非空 昵称email Varchar 20 可以为空 邮件Age Int 可以为空 年龄Sex Varchar 4 男或者女 性别Addre
8、ss Varchar 200 默认”地址不详” 地址Remark Int 20 备注好友关系表(friendship)列名 数据类型 大小 约束 描述Userid Int 外键 用户 idFriendid Int 外键 好友 idGroupid Int 外键 分组 id分组表(user_group)列名 数据类型 大小 约束 描述Groupid Inr 主键 分组 idGroupname Varchar 20 非空 分组名称聊天记录表(char_log)列名 数据类型 大小 约束 描述Logid Int 主键 记录 idSenderid Varchar 外键 发送人 idReceiverid
9、Inr 外键 接收Sendtime Varchar 20 非空 发送时间Sendcontent Varchar 200 非空 聊天内容Remark Varchar 200 备注主要涉及如上的个表5.2 物理结构设计要点给用户在使用系统时要有良好的登录界面,用户必须输入正确的用户名和密码才可以登录进入个人聊天的面板,显示所有个人用户的信息,如果输入的密码错误或者没有用户则弹出相应的对话框,注销退出后,则退出5.3 数据结构与程序的关系对于普通用户来说(1)可以查看自己的全部信息和修改(2)自己的信息只能自己操作,权限安全性对于管理员而言(1)提供一个功能全面的管理界面(2)通过管理界面,管理员可以对后台进行相应的操作,如管理用户,查看聊天记录6 系统出错处理设计6.1 出错信息(1)无法与服务器连接时,若不能够正确连接,则应做出正确处理。(2) 根据不同的出错情况给出不同的出错信息,一般用对话框给出。对一般错误,给用户提示信息,让用户重新输入或退出。6.2 补救措施说明故障出现后可能采取的变通措施,包括:故障出现后采取的变通措施,包括: 提示服务器积极拒绝信息。对一般错误,给用户提示信息,让用户重新输入或退出。6.3 系统维护设计由于此项目比较小,除了严格按照软件工程的科学方法开发软件、认真建立文档、编码阶段写详细的注释外,没有特殊的维护设计,如:设置维护模块等。