分享
分享赚钱 收藏 举报 版权申诉 / 16

类型企业内部消息通讯管理系统-软件工程课程设计报告.doc

  • 上传人:精品资料
  • 文档编号:7769738
  • 上传时间:2019-05-25
  • 格式:DOC
  • 页数:16
  • 大小:1.06MB
  • 配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    企业内部消息通讯管理系统-软件工程课程设计报告.doc
    资源描述:

    1、课程设计报告开课学期:2012-2013 学年第 2 学期 课程名称:软件工程课程设计 学 院:信息科学与工程学院 专业: 计算机科学技术 班 级: 计算机 1008 学号:20101221149姓 名:刘成启 设计题目:企业内部消息通讯管理系统任课教师:马坤 2013 年 3 月 8 日1 项目计划 31.1 引言 31.1.1 编写目的 31.1.2 定义 31.2项目概述 31.2.1 工作内容 31.2.2 程序 31.2.3 文档 31.2.4 运行硬件环境:41.2.5 验收标准 41.3实施计划 41.3.1任务分解 41.4人员组织及分工 42 可行性研究 42.1 经济可行性

    2、 42.2 操作可行性 52.3 技术可行性 53 需求分析 53.1 功能分析 53.1.1 注册 53.1.2 登陆 53.1.3 私聊 53.1.4 群聊 63.1.5 创建分组 63.1.6 创建群 63.1.7 查找好友并加为好友 63.1.8 查找群并加入群 63.1.9 文件共享 63.1.10 下载文件 73.2 性能分析 74 概要设计 84.1 功能模块图 84.2 系统总体结构 94.3 数据库设计 105 详细设计 105.1 文件传输客户端界面 115.2 文件传输服务器端界面 116 测试计划 117 总结 111 项目计划1.1 引言1.1.1 编写目的模仿腾讯

    3、QQ,针对中小企业(200 人以下)设计即时通讯系统。系统应包括客户端和服务器端。系统应保存所有的消息通讯记录。系统要考虑局域网通讯的特点,设计大型文件(超过 1G)的文件传输、后台管理等机制(参考 QQ 中转站) 。1.1.2 定义模仿腾讯 QQ,针对中小企业(200 人以下)设计即时通讯系统。系统应包括客户端和服务器端。系统应保存所有的消息通讯记录。系统要考虑局域网通讯的特点,设计大型文件(超过 1G)的文件传输、后台管理等机制(参考 QQ 中转站) 。1.2项目概述1.2.1 工作内容项目小组根据时间先后安排,分别对项目进行开发:各项主要工作:需求分析需要对各个学生进行调研。负责软件开发

    4、的同学对调查结果进行分析,拟订实现方案(如程序结构,流程,数据结构等) 。软件编程的同学对软件进行集中开发。软件审核的同学对软件进行评定,审核。1.2.2 程序程序名称:企业内部消息通讯管理系统使用语言:java存储形式:磁盘1.2.3 文档许提交的文档:01 项目计划02 可行性研究03 需求分析04 概要设计05 详细设计06 测试计划1.2.4 运行硬件环境:运行软件环境:Windows xp Eclipse 或 myeclipse1.2.5 验收标准系统运行流畅1.3实施计划1.3.1任务分解项目计划及可行性研究 调研需求分析 分析概要设计 设计详细设计 开发测试计划 测试1.4人员组

    5、织及分工组长:李宏建开发设计人员:刘成启 宋希宾 徐波 陈强 李宏建 测试人员:刘成启 徐波 2 可行性研究2.1 经济可行性 :本系统需要一个 mysql 数据库服务器,由于使用人数比较少,安装一个免费的 mysql 数据库完全可以应付需要,所以成本就不用考虑了。2.2 操作可行性 :只要一台以上计算机连接在同一个局域网内,本系统就可以安装使用,所以操作上完全不存在问题。2.3 技术可行性 :本系统采用 Java 语言,是基于 CS 架构的。开发这个系统需要开发者对 socket 编程和 java Swing 这两方面的技术比较熟。由于本人长期从事于 java 语言编程,所以技术方面是可行的

    6、。3 需求分析(系统应具备的主要功能、预期目标)3.1 功能分析3.1.1 注册服务器收到用户的注册请求,便开始接受客户传递的信息,诸如客户的呢称,性别,籍贯,个人资料等,接受完毕后,便通过 Jdbc-Odbc 与后台数据库连接,然后向数据库添加记录,如果成功,便向客户返回其号码。客户收到服务器返回的信息后,便打开主登陆窗口。3.1.2 登陆在客户端,用户输入其号码和密码,然后建立与服务器的连接,告诉服务器我要登录,服务器收到后,开始通过 JdbcOdbc 读取数据库,然后与用户输入的信息比较,如果成功,便打开主程序窗口。然后客户向服务器请求读取好友名单,服务器收到该请求,开始读取数据库中的表

    7、,得到好友的号码后,再在icq 表中读取好友资料,然后向客户端发送这些信息,客户收到后就在主窗口显示好友,并且建立几个矢量(Vector)用以存储好友的呢称,号码。3.1.3 私聊私聊就是两个聊天。客户端首先发送消息到服务器端,服务器端根据发送人信息和接收者信息来转发。例如服务器接收到一个 A 发给 B 的消息先判断 B是否已经在线,如果在线就将信息发送过去。B 接收到 A 发来的信息,如果是未建立对话窗口,就询问是否建立对话,否则就丢弃信息。3.1.4 群聊群聊,就是多人一起聊天。过程与私聊差不多。唯一的不同就是服务器会将信息转发给指定群的所有成员。3.1.5 创建分组用户注册以后默认的好友

    8、分组只有一个。用户在执行添加分组操作以后,客户端分将一个这个动作的信息发送给服务器端(主要是 FromClientlisten) 。服务器端的 fromClientListen 接收到这个请求,会进行数据库操作,将要添加的分组信息插入到数据库中。如果成功,则返回这个分组的信息给客户端,否则返回错误提示信息。3.1.6 创建群用户注册以后群个数为 0。用户在执行添加群操作以后,客户端分将一个这个动作的信息发送给服务器端(主要是 FromClientlisten) 。服务器端的fromClientListen 接收到这个请求,会进行数据库操作,将要添加的群信息插入到数据库中。如果成功,则返回这个群

    9、的信息给客户端,否则返回错误提示信息。3.1.7 查找好友并加为好友输入要查找的用户 ID 号,客户端发送一个查询信息给服务器端,如果找到就返回用户服务信息。打开一个用户信息显示界面,该界面会提供一个“添加为好友”按钮,点击后可将此人加为好友。如果未找到,弹出一个信息提示框。3.1.8 查找群并加入群输入要查找的群 ID 号,客户端发送一个查询信息给服务器端,如果找到就返回用户服务信息。打开一个群信息显示界面,该界面会提供一个“加入此群”按钮,点击后可将此人加为好友。如果未找到,则弹出一个信息提示框。3.1.9 文件共享在启动文件传输服务器的共享文件功能之前,要设置它的 IP 号和端口,如果设

    10、置不好。好友将无法下看到这些共享的文件。还有一个重要的步骤就是添加共享文件或目录。最后启动文件共享。3.1.10 下载文件使用文件传输的客户端要正确配置好服务器的 IP 和端口号,以及下载好的文件的存放目录。如果其中之一配置不好,文件下载将会失败。设置好以后,点击“连接”按钮,如果配置正确,这时将会看到服务器共享的文件。目前不能支持文件夹下载,当看到一个文件夹以后,可以双击该文件夹并查看文件夹里面的文件。3.2 性能分析本系统由于采用免费的 mysql 数据库软件,连接数最多不能超过 200,所以并发访问数据库的人数不能超过 200 人。用例图系统用例图4 概要设计4.1 功能模块图本系统主要

    11、由由两个子系统组成:1)文件传输系统;2)聊天子系统。文件传输系统的功能主要有:1)共享文件;2)查看并下载文件。聊天子系统的功能有:1)注册;2)登陆;3)添加群;4)查找群5)私聊;6)群聊;7)查看好友资料;8)查找好友;9)添加好友;10)创建好友分组。JICQ(javaQQ 通信系统)通信(聊天) 文件传输注册登陆私聊 群聊 查看好友资料 查找好友 添加好友查找群 添加群 创建好友分组 共享文件 查看共享文件并下载图一用户是系统中唯一的活动者,各 usecase 是系统所提供的服务。QQ 初始界面 usecase 图用户成功登录后的系统顶层 usecase 图即时聊天子系统 usec

    12、ase 图联系人管理子系统 usecase 图系统设置子系统 usecase 图安全中心子系统 usecase 图系统中的对象类及其联系4.2 系统总体结构总体设计阶段主要是确定系统的体系结构和主要模块 ,显然系统分客户端子系统和服务器子系统。系统体系结构如图 2 所示:收发界面业务逻辑网络通信聊天服务器监管界面聊天业务处理数据网络通信 访问客户 B客户 A客户 C 数据库/文件TCP/IP TCP/IPTCP/IP图 2 系统体系结构图客户端可以划分成三子层,服务端也可以划分出三个子层,客户和服务器间通信采用的是可靠的 TCP 协议。基本的聊天过程如下:0 客户端启动注册、登录后,进入收发界

    13、面,此时 C/S 连接已建立,C 处于接收状态。1 客户 A 从界面输入消息,确定群发,业务逻辑层从界面获取信息并验证后生成“消息接收请求”消息,再将消息作为参数调用网络通信层的发送函数,发送函数将消息发往服务器,然后等待服务器的消息2 服务器收到消息,确定是客户 A 发来的,从消息中分析出是群发,然后从当前客户列表中取出除 A 以外的与每个客户(B,C)对应的 socket,然后通过socket 将消息转发给客户 B,C。3 服务器在监控界面上显示:客户 A消息 群发4 服务器生成“消息接收成功”消息,向客户 A 回发(可省) 。5 客户 A 收到消息,确定是“消息接收成功”消息后,在界面上

    14、显示发送成功。6 客户 B/C 的通讯模块接收到消息,分析确认是“消息接收请求” ,则在界面上显示:客户 A-消息 群发。不向服务器发送消息收到的确认消息。消息收发的简图如下图 3 所示:接收接收发送3 接收消息成功(可以不要)2.2 接收消息请求2.1 接收消息请求息客户 A聊天服务器客户 B客户 C1 接收消息请求图 3 消息收发示意图4.3 数据库设计QQ 用户表ID账号密码个性签名头像好友分组ID 用户 ID号 分组名用户分组用户群ID 分组ID用户 IDID群 ID用户 ID拥有创建拥有创建1111n1 n群ID 创建人ID群名群公告11留言ID发信人ID收信人 ID拥有内容n系统

    15、E-R 图5 详细设计5.1 私聊界面本界面主要用来显示两个人的对话信息以及发送信息。发送的信息可以设置字体,大小,字体颜色。也可以发送一个 QQ 表情。5.2 群聊界面本界面主要用来显示多人的对话信息以及发送信息。发送的信息可以设置字体,大小,字体颜色。也可以发送一个 QQ 表情。右边显示的是群公告,可以用来公布一些必要的信息。6 测试计划私聊测试1)首先登陆两个账号,如(账号 1 密码 123,账号 2 密码 123)2)打开聊天窗口,如打开两个聊天窗口3)相互发送信息两人相互发送信息图群聊测试1)首先登陆三个账号,如(账号 1 密码 123,账号 2 密码 123,账号 3 密码123)

    16、2)打开三个对话窗口3)各发一条信息(如:我是某某)结果为:群聊测试图7 总结(经过本次课程设计,你有哪些心得与体会;存在的主要问题有哪些;下一步有何打算;有什么意见和建议)通过本次课程设计,我明白要认真掌握扎实的基础才可以进行流畅的开发,本次试验,我们小组,开始进展很慢,主要是由于软件工程的基本原理,基本过程还不是很好的掌握。首先通过学习课本,我们又重新掌握了。存在的问题,就是测试过程并不完美,我们还需要继续学习,进行完美的补充。学无止境。软件工程这门课非常重要,将来,参加软件开发都十分需要扎实的软件工程基础。参考文献(列出所参考的主要文献,如书籍、论文、网页或者案例等)1 赵文清,姜波.基于 Socket 的 Java 语言网络通讯机制和程序设计.信息技术,2006,8(7):2067.2 萨世煊,王珊. 数据库系统概论(第三版). 北京:高等教育出版社,2006,23100.

    展开阅读全文
    提示  道客多多所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:企业内部消息通讯管理系统-软件工程课程设计报告.doc
    链接地址:https://www.docduoduo.com/p-7769738.html
    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    道客多多用户QQ群:832276834  微博官方号:道客多多官方   知乎号:道客多多

    Copyright© 2025 道客多多 docduoduo.com 网站版权所有世界地图

    经营许可证编号:粤ICP备2021046453号    营业执照商标

    1.png 2.png 3.png 4.png 5.png 6.png 7.png 8.png 9.png 10.png



    收起
    展开