计算机专业_——毕业论文__基于web的即时聊天系统的总体建设.doc
《计算机专业_——毕业论文__基于web的即时聊天系统的总体建设.doc》由会员分享,可在线阅读,更多相关《计算机专业_——毕业论文__基于web的即时聊天系统的总体建设.doc(41页珍藏版)》请在三一办公上搜索。
1、目 录1 引言11.1 课题背景11.2 国内外研究现状11.3 本课题研究的意义21.4 本课题的研究方法22 可行性分析22.1 经济可行性32.2 技术可行性32.3 操作可行性33 需求分析33.1 目的33.2 任务概述43.3 数据描述43.4 功能描述83.5 性能需求133.6 其它要求134 概要设计144.1 总体设计144.2 三层架构的实现154.3 运行设计164.4 出错处理设计164.5 安全保密设计164.6 维护设计165 详细设计175.1 用户登录模块175.2 用户注册模块195.3 个人信息管理模块205.4 收发消息模块225.5 用户查找模块235
2、.6 好友管理模块245.7 创建用户群模块255.8 收发群消息模块285.9 用户群管理模块286 技术支持296.1 AJAX技术29306.3 信息加密317 系统测试337.1 测试的目的337.2 软件测试的意义337.3软件测试的内容347.4 测试方法347.5 系统测试过程357.6 测试结果36结 论37致 谢38参考文献391 引言 课题背景即时通信是一个终端连往一个即时通信网络的服务。即时通信不同于e-mail在于它的交谈是实时的。大部分的即时通信服务提供了presence awareness的特性显示联络人名单,联络人是否在在线与能否与联络人交谈。最早的即时通信软件是
3、ICQ,ICQ是英文中I seek you的谐音,意思是我找你。四名以色列青年于1996年7月成立Mirabilis公司,并在11月份发布了最初的ICQ版本,在六个月内有85万用户注册使用。目前存在各种各样的即时通信工具,它们的各种工作主要还是依赖于专门的客户端程序,在因特网上受欢迎的即时通信服务包含了MSN Messenger、AOL Instant Messenger、Yahoo! Messenger、NET Messenger Service、Jabber、ICQ与QQ。 这些服务有赖于许多想法更久的的在线聊天媒介,如Internet Relay Chat一样知名。1970年代早期,一种
4、更早的即时通信形式是柏拉图系统(PLATO system)。之后在1980年代,UNIX/Linux的交谈实时信息被广泛的使用于工程师与学术界,1990年代即时通信更跨越了因特网交流。 1996年11月,ICQ是首个广泛被非UNIX/Linux使用者用于因特网的即时通信软件。在ICQ的介绍之后,同时在许多地方有一定数量的即时通信 方式发展,且各式的即时通信程序有独立的协议,无法彼此互通。这引导使用者同时执行两个以上的即时通信软件,或者他们可以使用支持多协议的终端软件,如 Gaim、Trillian或Jabber。近年来,许多即时通信服务开始提供视讯会议的功能,网络 (VoIP),与网络会议服务
5、开始整合为兼有影像会议与实时信息的功能。于是,这些媒体的分别变的越来越模糊。 国内外研究现状 国外研究现状当今,国际上对网络通信系统研究的较好的公司有:思科,Sun,MS等公司,思科主要研究的是底层的传输;MS,Sun公司研究的是应用层。其中MS公司 凭借其在操作系统的垄断地位,为了在网络的发展中取得先机,采用了各种各样的手段。但是,其捆绑的MSN,无论从功能上,还是技术上来说,都不算是非常先进的。当然,IE,同样也不是很受人青睐,这让人想起了,当年的网景公司,网景只是生不逢时。MS不择手段的想打跨网景,可见其对网络的重视。如今,Sun公司在网络应用上捷足先登,凭借着Java,Sun在网络的应
6、用上领先于MS。微软,想用同样的办法搞跨对手,因此它拿出了Visual c#,来对抗Java。这些都是在应用层面的开发工具。应用层上的产品就更显种类繁多。ICQ几乎是国际上通用的即时通信工具,由于在我国它的应用不是很广,所以,其原理也很少被介绍。MSN,是MS的产品,同样在国内没什么市场,所以,对其原理,也很少被讨论过。至于IE,是在Visual c+下开发的产品,虽然有严重的安全隐患,不过,至少能在某种程度上代表当今国际研究的水平。此外,国际上出现了新的浏览器Firefox,其性能 据说是远高于ie,也许在网络的天下,Ms又有了更强劲的对手。 国内研究现状国内在应用层上的网络应用软件目前发展
7、异常的火爆,因为我国有着网络应用的最大的市场,现在国内网络的基础性建设发展迅速,应用软件也层出不穷,其中,在 游戏的领域中,网络通信的工作做的不错,如联众游戏平台,还有其他的一些平台,这些平台基本上都是基于VC+的,用的都是Socket通信,但是为了效率,这些平台没有用MFC提供的CSocket类,而是直接用Socket进行通信。所以效率上不错。此外,tencent的即时通信,也是做的很好的,从某中程度上来说,代表了国内最高的水平。 本课题研究的意义基于WEB的即时聊天系统的总体建设的意义是:以信息安全为基础,以数据整合为核心,开发无须专门客户端软件,维护和升级方便,可跨平台操作,任何一台机器
8、只要装有浏览器软件,均可作为客户机来访问系统,具有良好的开放性和可扩充性,可采用防火墙技术来保护系统的安全性,有效地满足了当前用户对Web通信系统的新需求。 本课题的研究方法 系统采用B/S结构进行设计,使用SQL Server 2005构建数据库,并在.NET环境下使用C#语言和,实现简单的即时聊天与用户群的功能。系统中大量使用了AJAX技术,使得页面可以无刷新或者部分刷新,减少网络资源传输,提高用户体验。2 可行性分析可行性分析也称为可行性研究,即是在系统调查的基础上,针对新系统的开发是否具备必要性和可能性,对新系统的开发从技术、经济、社会的方面进行分析和研究,以避免投资失误,保证新系统的
9、开发成功。可行性研究的目的就是用最小的代价在尽可能短的时间内确定问题是否能够解决。该系统的可行性分析包括以下几个方面的内容。2.1 经济可行性主要是对项目的经济效益进行评价,系统作为一个毕业设计,无需开发经费,对于我们在经济上是可以接受的,所以系统在经济上是可行的。2.2 技术可行性技术上的可行性分析主要分析技术条件是否能顺利完成开发工作,硬、软件能否满足开发者的需要等。首先软件环境都已具备,如,开发用Visual studio 2008,IIS服务器,数据库服务器方面则有SQL Server 2005,均能够处理大量数据,同时保持数据的完整性并提供许多高级管理功能。其灵活性、安全性和易用性为
10、数据库编程提供了良好的条件。因此,系统的软件开发平台已成熟可行。2.3 操作可行性目前,大学的校园网路覆盖了教学区和学生区的主要建筑物,从而满足校内各学院,各职能部门,各直属单位上网需求。学校良好的网络设施为开发使用无纸化网络考试系统提供了坚实的基础。综上所述,此系统开发目标已明确,在技术和经济等方面都可行,并且投入少、见效快。因此系统的开发是完全可行的。3 需求分析 课题目的需求分析是指理解用户需求,就软件功能与客户达成一致,估计软件风险和评估项目代价,最终形成开发计划的一个复杂过程。如果投入大量的人力,物力,财力,时间,开发出的软件却没人要,那所有的投入都是徒劳。如果费了很大的精力,开发一
11、个软件,最后却不满足用户的要求,从而要重新来过,这种返工是让人痛心疾首的。比如,用户需要一个for Linux的软件,而你在软件开发前期忽略了软件的运行环境,忘了向用户询问这个问题,而想当然的认为是开发for windows的软件,当你千辛万苦地开发完成向用户提交时才发现出了问题,那时候你是欲哭无泪了,恨不得找块豆腐一头撞死。需求分析之所以重要,就因为他具有决策性,方向性,策略性的作用,他在软件开发的过程中具有举足轻重的地位。大家一定要对需求分析具有足够的重视。在一个大型软件系统的开发中,他的作用要远远大于程序设计。 任务概述 需达到的目标在当今世界电脑普及的时刻,人们已经习惯用电脑办公交流,
12、即时通信就有着很大的意义,方便用户即时的交流与沟通,但是又不想花费太长时间在客户端下载安装,以及版本更新上,本系统正是根据此需求进行开发的。让用户或者企业能够在不需要专门客户端的情况下,实现即时通信,方便的体验系统最新版本。提高工作效率。 运行环境硬件环境:普通PC机,内存1G,可连接互联网。软件环境: windows XP以上的操作系统,Microsoft Visual Studio 2008,Microsoft Sql Server 2005。 数据描述 实体关系图根据系统的需求和功能划分,可以画出系统的实体-关系图即E-R图,系统实体间的关系主要为用户的好友关系,用户之间发送消息以及用户
13、群和用户之间的关系,详细部分如图描述。用户B群消息用户群用户A消息分组好友发送属于发送1MNNN1NM 用户实体包含多个属性,其中用户名,密码用做身份验证,用户编号作为数据表的唯一标识,用户头像表示用户选择头像的文件名。性别、年龄、血型、职业等做为以及用户其他的基本信息。用户编号用户名密码头像昵称年龄真实姓名性别个性签名毕业学校生肖职业星座个人主页血型个人说明出生日期形象在线状态IP地址图3.2 用户属性用户 好友关系,做为好友多对多的关系,包含编号、好友编号,所属分组、所属用户编号等属性,其中编号做为记录的唯一标识,好友编号与所属用户编号建立了好友关系。好友关系所属分组编号好友编号图3.3
14、好友实体属性编号所属用户编号 消息实体,包含编号、消息内容、发送人编号等属性。其中编号做为记录的唯一标识。发送人编号、消息内容、消息状态和接收人的编号等属性完成消息发送与接收工作。 群成员实体,包含群编号、用户编号、和创建时间属性,其中群编号与用户编号建立了群拥有成员的关系。消息图3.4 消息属性编号发送人编号接收人编号发送时间消息内容消息状态 群成员群编号创建时间用户编号图3.5 群关系属性 用户群实体,包含群编号、群名称和创建者编号等属性。其中群编号做为记录的唯一标识。 群消息实体,包含群编号、发送人编号、消息内容、接收群编号以及已经接收者编号组等属性。用户群群编号创建者编号群简介创建时间
15、图3.6 用户群属性群名称群公告群消息群编号发送时间发送人编号消息内容已经接收者编号组接收群编号图3.7 群消息属性 用户分组实体,包含分组编号、分组名称、所属用户编号等属性。其中分组编号做为记录的唯一标识。 用户请求实体,包含请求编号、请求用户编号,响应用户编号等属性。其中请求编号做为记录的唯一标识。用户分组分组编号所属用户编号排序分组名称创建日期分组类型备注用户请求附加消息响应用户编号请求用户编号附加分组编号图3.9 用户请求属性状态请求编号创建日期 数据表用户信息表:记录了用户的基本信息,包括用户名,密码,头像等信息。表3-1用户信息表字段名字段类型是否为空说明Idint不为空编号Log
16、inNamevarchar(50)可为空用户名Passwordvarchar(50)可为空密码Headvarchar(50)可为空头像Callvarchar(50)可为空昵称Idivarchar(500)可为空个性签名Sexvarchar(50)可为空性别RealNamevarchar(50)可为空真实姓名Ageint可为空年龄Schoolvarchar(50)可为空毕业学校SXvarchar(50)可为空生肖UserWorkvarchar(50)可为空职业Constellationvarchar(50)可为空星座MasterPagevarchar(50)可为空个人主页BloodTypevar
17、char(50)可为空血型Introducetionvarchar(500)可为空个人说明Visualizevarchar(50)可为空形象Brithdaydatetime可为空出生日期Statevarchar(50)可为空在线状态IPvarchar(50)可为空IP地址好友关系表:记录了用户和好友的关系,以及好友的分组情况。表3-2好友关系表字段名字段类型是否为空说明Idint不为空编号BeLongGroupIdint可为空所属组的编号BelongUserIdint可为空所属用户编号FriendIdint可为空好友编号发送消息表:发送的消息存储在数据库中,并且记录时间,发信人和收信人以及消息
18、的状态,包括已读和未读。表3-3发送消息表字段名字段类型是否为空说明Idint不为空编号Contentvarchar(500)可以为空消息内容SendTimedatetime可以为空发送时间BelongSenderIdint可以为空发送人编号BelongReceiverIdint可以为空收信人编号Statevarchar(50)可以为空状态用户群成员表:记录群编号以及在该群众所有用户的编号。表3-4用户群成员表字段名字段类型是否为空说明Idint不为空编号BelongGroupIdint可为空群编号BelongUserIdint可为空群中用户编号CreateTimedatetime可为空创建时
19、间用户群信息表:记录一个群的基本信息,包括公告简介,创建时间,创建人和群的名字等信息。表3-5用户群信息表字段名字段类型是否为空说明Idint不为空编号GroupNamevarchar(50)可为空群名字BelongUserIdint可为空创建人编号GroupCallBroadvarchar(500)可为空群公告GroupInterducevarchar(500)可为空群简介CreateTimedatetime可为空创建时间群消息发送表:记录了群消息的发送与接收情况。表3-6群消息发送表字段名字段类型是否为空说明Idint不为空编号Contentvarchar(500)可为空消息内容Belon
20、gSenderIdint可为空发送人编号BelongGroupIdint可为空群的编号ReceiverArrayvarchar(5000)可为空已经接收者编号组SendTimedatetime可为空发送时间用户组表:记录了用户为好友创建的分组。表3-7用户组表字段名字段类型是否为空说明Idint不为空编号GroupNamevarchar(50)可为空分组的名称BelongUserIdint可为空所属者编号OrderNumint可为空排序CreateDatedatetime可为空创建时间GroupTypevarchar(50)可为空组类型Reamarkvarchar(500)可为空备注用户请求表
21、:当用户添加好友时,将消息保存到这张表中。表3-8用户请求表字段名字段类型是否为空说明Idint不为空编号RequestUserIdint可为空请求者编号AppendToGroupIdint可为空附加到组的编号ResponseUserIdint可为空响应用户编号AppendInfovarchar(500)可为空附加信息CreatTimedatetime可为空创建时间Statevarchar(50)可为空状态 功能描述 功能模块图根据需求分析设计了九大模块,分别为:用户登录模块、用户注册模块、个人信息管理模块、用户查找模块、收发消息模块、用户查找模块、好友管理模块、收发群消息模块和用户群管理模块
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机专业 毕业论文 _ 基于 web 即时 聊天 系统 总体 建设
链接地址:https://www.31ppt.com/p-3949887.html