局域网聊天需求分析(修复的)_第1页
局域网聊天需求分析(修复的)_第2页
局域网聊天需求分析(修复的)_第3页
局域网聊天需求分析(修复的)_第4页
局域网聊天需求分析(修复的)_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、中国矿业大学计算机学院精选范本,供参考!中国矿业大学计算机学院软件工程需求分析实验名称:局域网聊天工具小组名称:飞翔工作绢班级:网络工程081班编制时间:2010-09-25小组成员:谷建翔、白键、丁小军李尧、王爽爽目录1 .引言31.1. 课题背景及意义31.2. 课题现状31.3. WindowsSocket网络编程简介31.4. VC+6.0简介42 .需求分析及可行性研究4.2.1. 客户需求分析42.2. 性能需求分析52.3. 运行需求分析53 .可行性研究(具体参见可行性研究报告)5.3.1. 成本可行性53.2. 技术可行性54 .系统案例分析6.5 .系统设计65.1. 系统

2、目标65.2. 发设计思想65.3. 系统功能分析75.4. 系统功能模块设计75.5. 系统流程图错误!未定义书签。5.6. 数据流图85.7. 服务器端程序流程图95.8. 客户端程序流程图105.9. 数据字典116 .详细设计及编码实现1.3.1.引言1.1. 课题背景及意义即时聊天工具是一种可以让使用者在网络上实时通讯的工具,大部分的即时通讯工具提供了状态信息的特性,如显示联络人名单,联络人是否在线及能否与联络人交谈等。目前在互联网上受欢迎的即时通讯软件包括百度QQ、MSNMessenger、Yahoo!Messenger、AOLInstantMessenger、NETMesseng

3、erService、Jabber、ICQ等。在本文中将讨论一种基于MFCSocket的局域网通信工具的设计与实现方法。基于MFCSocket的局域网通信软件可以为局域网提供一种良好、安全、快速的通信机制,在局域网内部通信、教学、讨论等应用中都具有一定的实用价值,它同时很好地诠释了MFCSocket通信的原理。基于Socket的局域网通信软件应用范围广阔,不但可以处理传统的通信需求,而且也能扩展以适应新型的网络应用,如网络教育,数据影音传输等,拥有广泛的应用前景。1.2. 课题现状基于局域网的即时通信工具,实际上是互联网即时通信工具的一个小规模版本,广域网上的即时通信工具,如今一般采用UDP者T

4、CP协议体系来实现,开发技术已经比较成熟,比如较早的ICQ、MSNMessenger、YAHOOS等国外开发的产品,还有国产的有名的QQ新浪UCLAVA-LAVA等,这些工具统统都实现了广域网上的即时通信,尽管都是即时通信,实现了即时聊天,以及文件传输的主要功能,但是也各有各的特色,比如ICQ的巨大客户群,MSN的个性化表情,YAHOO!的易操作f等,而QC&具有一个相当方便的屏幕截图功能,另外就是,所有上述软件都实现了网络即时的视频,语音聊天功能。这些软件,在使用方面各有特色,在实现方面也各有所长,但由于这些产品正在商业运营阶段,其实现方式属于商业机密,具体细节不可能得知,但是它在大的方面无

5、非就是各种利用各种平台上的网络通信接口,建构基于下层TCP/IP,或者UDP/IP协议的软件产品。在局域网内,这些功能的实现跟广域网相比更加简单,因为局域网的网络结构本身比广域网要简单,但是可以借此理解网络协议,以及网络通信工具的实现原理,所以仍然极具研究价值。1.3. WindowsSocket网络编程简介WindowsSockets规范以U.C.Berkeley大学BSDUNIX中流行的Socket接口为范例定义了一套开放的、支持多种协议的、MicrosoftWindows下的网络编程接口,并不是一种网络协议。它不仅包含了人们所熟悉的BerkeleySocket风格的库函数;也包含了一组针

6、对Windows的扩展库函数,以使程序员能充分地利用Windows消息驱动机制进行编程。WindowsSockets规范本意在于提供给应用程序开发者一套简单的API,使应用程序开发者能够使用,并且网络软件供应商能够实现的一套库函数调用和相关语义。现在的WindowsSockets已经基本上实现了与协议无关,你可以使用WindowsSockets来调用多种协议的功能,但较常使用的是TCP/IP协议。Socket实际在计算机中提供了一个通信端口,可以通过这个端口与任何一个具有Socket接口的计算机通信。应用程序在网络上传输,接收的信息都通过这个Socket接口来实现。微软为VC定义了Window

7、sSockets类如CAsyncSocket类和派生于CAsyncSocket的CSocket类,它们简单易用。1.4. VC+6.0简介我们通常所说的VisualC+实际上是一个完善的、非常强大的C+程序开发环境,它的名字是MicrosoftDeveloperStudio。二者之间的细小差别并不重要,通常这两个术语可以互换。但如果你不围绕DeveloperStudio来进行学习,就不能有效地使用VisualC+(DeveloperStudio听起来很像VisualStudio,但它们之间没有关系)。它包含:C+编译器、调试器、应用程序框架生成器、项目管理器、设计和实现菜单等资源的编辑器等等2

8、.需求分析及可行性研究需求分析2.1 客户需求分析客户要求聊天软件只在局域网内使用,要有美观、易操作的界面,通过拖动鼠标可以隐藏和显示主界面。在主界面上可以添加好友。一次可以与多个人聊天,聊天记录可以保存。分析客户的需求,形成文本需求说明书。这里只列出比较核心的部分。( 1) 只限于局域网内聊天。( 2) 美观的操作界面。( 3) 主界面可以隐藏和显示。( 4) 可以添加好友、网名和表情。( 5) 可以同时与多个人聊天。( 6) 可以保存和清存聊天记录。( 7) 可以语音视屏聊天。2.2 性能需求分析( 1)可靠性高,能在由于系统问题或其它原因产生错误后,作出相对应处理,比如网络初始化失败、服

9、务器不在线等,可以提示用户安全退出本程序,在出现不可知的错误以后,可以尽量安全的退出程序。在程序的设计过程中,要求能尽可能多的设想到用户使用过程中可能发生的事件,并能在判断事件后做出相应的处理,使程序具有较高的容错性能。( 2)宜操作性,程序简单易懂,容易上手使用。设计界面是,简化界面的复杂性,模拟QQ等现有即时通讯工具的界面,使用户能很容易看懂并使用。( 3)开发文档易理解,保证以后自己二次开发或他人接手开发时,能够清晰的理解整个系统的设计思路和实现细节。( 4)模块化设计此软件的功能,不同的模块实现不同的功能,使得软件易于以后的维护与扩展,在以后可以更好的完善本软件的功能,更方便于在工作中

10、的应用。2.3.运行需求分析( 1)用户界面程序较小,启动速度快,无启动界面。在本地局域网中使用,所以无需进行用户登录,无需认证界面,启动后的应用界面要清爽,设计要简单明了,要具有较高的易用性。( 2)故障处理在遇到可预知的故障与情况时,能提示用户并自动退出;在遇到不可预知的故障时能安全退出。3 .可行性研究(具体参见可行性研究报告)3.1 成本可行性学习研究性开发,暂不考虑成本。3.2 技术可行性已有搭建好的基于Windows的软硬件平台,本组对VC开发环境有一定的了解,需继续深入学习VC和Windowssocket编程。4 .系统案例分析基于上面的需求分析,我们可以列出用户操作的模块,其中

11、的每个模块对应一个功能,如图i所示。5 .系统设计对客户需求进行详细分析以后,接下来就可以进行系统设计了。5.1 系统目标利用VisualC+实现局域网内的聊天,从而达到沟通和交流的目的。5.2 开发设计思想(1) 采用WinSocket进行局域网编程,具体采用点对点的方式。(2) 通过鼠标事件实现主界面的隐藏和显示。(3) 通过双击方式在线好友聊天(4) 一旦有消息发送过来,右下角的图标不停地闪烁,等待用户响应,只要用户在消息编辑框中输入消息,图标停止闪烁。(5) 将用户添加的网名和表情写入到文件中,下次启动后,自动加入到组合框中。(6) 将聊天记录保存到文件中,保存时的文件名包含系统时间。

12、5.3 .系统功能分析根据客户的需求,确定了系统的功能。本系统需要完成的功能如下:(1) 添加好友,其中,必须包含用户的ip地址。(2) 添加自定义的网名。(3) 添加自定义的表情。(4) 发送编辑好的信息。(5) 保存聊天记录。(6) 清除屏幕上的聊天记录。5.4 .系统功能模块设计在系统功能分析的基础上,我们可以生成如图2所示的系统功能模块图。5.5 系统流程图精选范本,供参考!5.6.数据流图服务器端程序流程图启动服务后服务器端开始接收客户端发送过来的初始化信息或确认在线信息,进行判断后作出相应的处理,在最后向客户端返回在线用户列表信息;服务器端使用一个定时器对在线用户列表进行维护。5.

13、8.客户端程序流程图精选范本,供参考!客户端程序流程图精选范本,供参考!并接收服务器返回客户端也设置一个定时器,定时向服务器发送确认在线信息,的在线用户列表信息。发送用户信息作为单独的模块处理。5.9.数据字典名字:用户表别名:iUser描述:详细描述用户信息定义:用户表=账号+昵称+密码+个人介绍+IP+PORT+t态+电子邮件+性别+籍贯位置:数据库名字:好友聊天表别名:friend描述:好友列表定义:好友聊天表=自己帐号+好友帐号位置:数据库名字:帐号名字:IP别名:ID别名:描述:,标识用户身份的关键域描述:当前用户IP地址定义:帐号=整型定义:IP=7字符20位置:用户表位置:用户表名字:别名:描述:定义:位置:昵称nickname表明用户身份的一个方面昵称=1字符6用户表名字:别名:描述:定义:位置:PORT通讯所用端口PORR1字符6用户表名字:密码名字:状态别名:password别名:status描述:确定用户身份合法性描述:表明用户是否在线定义:密码=1字符6定义:状态=整型位置:用户表位置:用户表精选范本供参考!名字:个人介绍别名:info描述:用户相关个

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论