企业级即时通讯软件的设计.doc
《企业级即时通讯软件的设计.doc》由会员分享,可在线阅读,更多相关《企业级即时通讯软件的设计.doc(19页珍藏版)》请在沃文网上搜索。
1、 目录目录1第1章 项目背景11.1 研究背景和现状分析21.2 目标21.3 开发环境21.3.1 Visual Studio 200521.3.2数据库31.4 运行环境31.5 技术支持31.5.1 WinSocket技术31.5.1 Remoting技术3第2章 需求分析52.1 系统功能说明52.2 系统流程分析52.3 系统功能分析62.3.1登陆以及身份确认(密码验证)功能的实现62.3.2用户相关信息62.3.3点对点即时通讯/文件传输功能62.4系统用例图72.5用例描述72.6系统交互图9第3章 数据需求分析93.1 数据E-R图103.2 数据库设计113.2.1用户基本
2、信息表113.2.2用户离线消息保存表113.2.3群体信息表123.2.3群体共享文件表12第4章 系统分析与设计134.1 类图134.2 组件图144.3 部署图 154.4 服务器端工作流程图 164.5 客户端界面导航图 16第1章 项目背景1.1 研究背景和现状分析近年来,随着全球信息化进程的不断发展,网络也在飞速发展。出于高效、快速地处理各种事务的目的,越来越多的企业在其内部使用局域网来进行工作。在内部局域网的帮助下,企业得以简化信息流程,提高信息交换的速度,从而提高工作效率。然而,随着企业规模的扩大,业务量的增加,企业内部的信息越来越私密,企业只希望员工通过内部局域网进行沟通与
3、交流,避免企业内部机密通过Internet泄露到外部。为了解决上述矛盾,人们提出了开发局域网聊天软件的构想,通过局域网聊天软件,企业员工可以随时的进行即时消息传递,召开网络会议等,有利于提高工作消息效率,同时又保护了企业内部信息的安全性。基于局域网的即时通信工具,实际上是互联网即时通信工具的一个小规模版本,广域网上的即时通信工具,如今一般采用UDP或者 TCP协议体系来实现 ,开发技术已经比较成熟,比如较早的ICQ,MSN Messenger, Yahoo。除了这些国外开发的产品,还有国产的有名的QQ,新浪UC,LAVA-LAVA等,这些工具统统都实现了广域网上的即时通信,尽管都是即时通信,实
4、现了即时聊天,以及文件传输的主要功能,但是也各有各的特色,比如ICQ的巨大客户群,MSN的个性化表情,YAHOO通的易操作性等。这些软件,在使用方面各有特色,在实现方面也各有所长,但基于这些产品正在商业运营阶段,其实现方式属于商业机密,具体细节不可能得知,但是它在大的方面无非就是各种利用各种平台上的网络通信接口,建构基于下层TCP/IP,或者UDP协议的软件产品。1.2 目标本需求规格说明书编写的目的是为了清晰地说明开发聊天软件要实现的所有功能。同时也为软件使用者和软件开发者之间建立共同的需求目标,进行一定程度的交流沟通。同时对软件所需实现的功能模块做了全面的描述。它是后续开发工作和验收工作的
5、依据文件。软件使用者和软件开发者以此为共同的基础。1.3 开发环境1.3.1 Visual Studio 2005本系统将采用Visual Studio 2005作为开发环境。Visual Studio 2005提供了在设计、开发、调试和部署应用程序时所需的工具,Visual C#集成开发环境(IDE)是Visual Studio IDE中的一种。打开Visual Studio选择C#即可进入Visual C#集成开发环境,它里面有些工具是与其他 Visual Studio 语言共享的,还有一些工具(如C#编译器)是Visual C#特有的。Visual Studio .NET 集成开发环境现
6、在包括开发智能设备(如 Pocket PC)应用程序的工具。通过使用这些工具和 .NET Framework 精简版(.NET Framework 的子集),您可以在个人数字助理 (PDA)、移动电话和其他资源受约束的设备中,创建、生成、调试和部署在 .NET Framework 精简版上运行的应用程序。1.3.2 数据库SQL Server 2005 Express Edition 是一款重要的 Microsoft 产品版本,因为该产品专用于非专业开发人员、ISV 和爱好者。它免费、易用、具有强大的功能,并且可以无缝升级到其他 SQL Server 版本。有一些功能(例如用户实例)是此 SQ
7、L Server 版本的专有功能,并且默认情况下,安装和部署都是安全的。SQL Server Express 与 Visual Studio 2005 的集成也简化了您的数据库设计和部署操作。1.4 运行环境由于本系统是在.NET环境下使用托管代码开发的。所以服务器和客户机都需要装上Framework2.0作为运行环境。1.5 技术支持系统将用到用WinSocket、Remoting等开发技术;1.5.1 WinSocket技术Socket接口是TCP/IP网络的API,Socket接口定义了许多函数或例程,程序员可以用它们来开发 TCP/IP网络上的应用程序。要学Internet上的TCP/
8、IP网络编程,必须理解Socket接口。 选定WINDOWS平台开发网络通信程序,可以选择WINDOWS的SOCKETS编程接口,Windows Sockets是一套开放的、支持多种协议的Windows下的网络编程接口。现在的Winsock已经基本上实现了与协议无关,你可以使用Winsock来调用多种协议的功能,但较常使用的是TCP/IP协议。Windows sockets无疑是我们进行网络编程的利器。所有的Windows Sockets实现都支持流套接口和数据报套接口。应用程序调用Windows Sockets的API实现相互之间的通讯。Windows Sockets又利用下层的网络通讯协议
9、功能和操作系统调用实现实际的通讯工作。1.5.2 Remoting技术采用分布式进行编程的一种技术,Remoting主要用于管理跨应用程序域的同步和异步RPC 会话。在默认情况下,Remoting使用 HTTP 或 TCP 协议,并使用 XML 编码的 SOAP 或本机二进制消息格式进行通信。.NET Remoting 提供了非常灵活和可扩展的编程框架,并且他可以管理对象的状态。Remoting通过信道(channel)来传输消息。.NET Remoting支持两种默认的协议支持通道(Http和Tcp)。Remoting的具体框架结构如下图所示: 图1.1 Remoting架构在.NET的托管
10、环境中,任何应用程序域都不能访问另外的应用程序域,所以我们在客户端只能通过代理来访问服务器端的应用程序域,代码总是能知道实体对象的具体位置,这样我们只对代理的操作,然后由代理去访问真正的对象,这是透明的,你就象是在访问真实的对象一样。代理会通过定义的信道准确的去完成你想要的操作。 第2章 需求分析2.1 系统功能描述聊天交流是目前互联网提供的主要内容。聊天系统有多种实现方式,类似ICQ属于一种点对点的聊天系统;还有一种是基于Socket的集中式聊天系统,这种聊天系统需要登陆统一的聊天服务器。在基于Socket的聊天系统中,主要有两种角色:服务器和客户端,不同的客户端登陆集中式的服务器,通过服务
11、器将一个客户端发出的信息推送到其他所有客户端。基于Socket的聊天系统最早实现是使用网页刷新方式,通过客户端不断地自动刷新,将服务器端整个页面内容下载到客户端显示,这种方式的聊天速度慢,而且有刷屏现象,很快被更新的聊天技术所替代。 聊天系统在客户端和服务器之间主要传送的是文字信息,服务器端只需要把最近的文字信息推送到客户端,这样减少了网络传输内容,节省了网络传输的时间,无疑提高了聊天速度。这种“推”技术是目前基于Socket聊天系统的主要实现技术。在基于Socket的聊天系统,客户端和服务器必须保持随时随地的连接。这有别于普通Web浏览的连接方式。在使用浏览器访问服务器时,先由客户端发出HT
12、TP协议,然后服务器响应处理这个客户端的响应,再返回处理结果;请求(Request)和响应(Response)是一种一对一的前后因果关系。而在基于Socket的聊天系统中,客户端发出聊天信息的同时,客户端也在接受服务器发送过来的其他人的聊天信息,因此,请求和响应不存在那种前后对应关系,是两种分别独立进行的进程。因为服务器任何时候都可能发送信息到客户端,因此,客户端和服务器一旦建立连接,必须能让服务器在以后发送中寻找定位到这个连接。系统是局域网聊天工具,设计能实现局域网内聊天服务端与客户端的功能。主要实现如下功能:聊天服务端:实现与客户端的连接,接收来自客户端的聊天消息,并且根据客户端的要求把这
13、些信息转发到另外一个或多个聊天客户中。并实现对客户端登录用户的管理与控制;实现客户端聊天信息的监控与保存。聊天客户端:实现与服务端的连接,建立和维护与服务器端的连接,向服务器发送本客户的聊天内容,同时从服务器接受对方的响应。实现与其他用户的文本的发送,并实现聊天的功能。2.2 系统流程分析只有充分地了解了聊天程序的工作流程,才能对整个系统的理解更加深刻。所以对该流程进行分析。如下图:加载套接字库初始化套接字绑定本地机到套接字向指定IP地址发送数据关闭套接字库结束聊天创建线程用于接受数据图2.1系统流程分析图2.3 系统功能分析图2.2系统功能图2.3.1 登陆以及身份确认(密码验证)功能的实现
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
15 积分
下载 | 加入VIP,下载更划算! |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 企业级 即时通讯 软件 设计