欢迎来到天天文库
浏览记录
ID:11176181
大小:249.89 KB
页数:13页
时间:2018-07-10
《局域网聊天需求分析》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、中国矿业大学计算机学院中国矿业大学计算机学院软件工程需求分析实验名称:局域网聊天工具小组名称:飞翔工作组班级:网络工程08—1班编制时间:2010-09-25小组成员:谷建翔、白键、丁小军李尧、王爽爽目录1.引言31.1课题背景及意义31.2.课题现状31.3.WindowsSocket网络编程简介41.4.VC++6.0简介42.需求分析及可行性研究42.1.客户需求分析52.2.性能需求分析52.3.运行需求分析53.可行性研究(具体参见可行性研究报告)63.1.成本可行性63.2.技术可行性64.系统案例分
2、析65.系统设计75.1系统目标75.2开发设计思想75.3.系统功能分析85.4.系统功能模块设计85.5.系统流程图85.6.数据流图95.7.服务器端程序流程图105.8.客户端程序流程图125.9.数据字典136.详细设计及编码实现151.引言1.1课题背景及意义即时聊天工具是一种可以让使用者在网络上实时通讯的工具,大部分的即时通讯工具提供了状态信息的特性,如显示联络人名单,联络人是否在线及能否与联络人交谈等。目前在互联网上受欢迎的即时通讯软件包括百度QQ、MSNMessenger、Yahoo!Messe
3、nger、AOLInstantMessenger、NETMessengerService、Jabber、ICQ等。在本文中将讨论一种基于MFCSocket的局域网通信工具的设计与实现方法。基于MFCSocket的局域网通信软件可以为局域网提供一种良好、安全、快速的通信机制,在局域网内部通信、教学、讨论等应用中都具有一定的实用价值,它同时很好地诠释了MFCSocket通信的原理。基于Socket的局域网通信软件应用范围广阔,不但可以处理传统的通信需求,而且也能扩展以适应新型的网络应用,如网络教育,数据影音传输等,拥
4、有广泛的应用前景。1.2.课题现状基于局域网的即时通信工具,实际上是互联网即时通信工具的一个小规模版本,广域网上的即时通信工具,如今一般采用UDP或者TCP协议体系来实现,开发技术已经比较成熟,比如较早的ICQ、MSNMessenger、YAHOO通等国外开发的产品,还有国产的有名的QQ、新浪UC、LAVA-LAVA等,这些工具统统都实现了广域网上的即时通信,尽管都是即时通信,实现了即时聊天,以及文件传输的主要功能,但是也各有各的特色,比如ICQ的巨大客户群,MSN的个性化表情,YAHOO通的易操作性等,而QQ也
5、具有一个相当方便的屏幕截图功能,另外就是,所有上述软件都实现了网络即时的视频,语音聊天功能。这些软件,在使用方面各有特色,在实现方面也各有所长,但由于这些产品正在商业运营阶段,其实现方式属于商业机密,具体细节不可能得知,但是它在大的方面无非就是各种利用各种平台上的网络通信接口,建构基于下层TCP/IP,或者UDP/IP协议的软件产品。在局域网内,这些功能的实现跟广域网相比更加简单,因为局域网的网络结构本身比广域网要简单,但是可以借此理解网络协议,以及网络通信工具的实现原理,所以仍然极具研究价值。1.3.Windo
6、wsSocket网络编程简介WindowsSockets规范以U.C.Berkeley大学BSDUNIX中流行的Socket接口为范例定义了一套开放的、支持多种协议的、MicrosoftWindows下的网络编程接口,并不是一种网络协议。它不仅包含了人们所熟悉的BerkeleySocket风格的库函数;也包含了一组针对Windows的扩展库函数,以使程序员能充分地利用Windows消息驱动机制进行编程。WindowsSockets规范本意在于提供给应用程序开发者一套简单的API,使应用程序开发者能够使用,并且网络
7、软件供应商能够实现的一套库函数调用和相关语义。现在的WindowsSockets已经基本上实现了与协议无关,你可以使用WindowsSockets来调用多种协议的功能,但较常使用的是TCP/IP协议。Socket实际在计算机中提供了一个通信端口,可以通过这个端口与任何一个具有Socket接口的计算机通信。应用程序在网络上传输,接收的信息都通过这个Socket接口来实现。微软为VC定义了WindowsSockets类如CAsyncSocket类和派生于CAsyncSocket的CSocket类,它们简单易用。1.4
8、.VC++6.0简介我们通常所说的VisualC++实际上是一个完善的、非常强大的C++程序开发环境,它的名字是MicrosoftDeveloperStudio。二者之间的细小差别并不重要,通常这两个术语可以互换。但如果你不围绕DeveloperStudio来进行学习,就不能有效地使用VisualC++(DeveloperStudio听起来很像VisualStudio,但
此文档下载收益归作者所有