2023年-软件工程导论作业.docx
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《2023年-软件工程导论作业.docx》由会员分享,可在线阅读,更多相关《2023年-软件工程导论作业.docx(9页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。
1、南京邮电大学计算机学院软件工程导论大作业南京邮电大学即时通讯系统分析与设计姓名:李卿专业:软件工程学号:B10040914指导教师:陈志2010/12/8第一章引言摘要即时通信IM (I nstant Messagi ng)是目前I nternet上最为流行的通讯方式, 而各种各样的即时通信软件也层出不穷:服务提供商也提供了越来越丰富的通信 服务功能。随着互联网的发展,即时通信的运用日益广泛,即时通信软件业方兴 未艾。点对点网络已经被越来越多的用户所需要并且作为一种标准的分发信息标 准方式登堂入室,因为它的结构使得网络富有延展性,相较普通网络有更高的效 率和更好的表现。P2P (peertop
2、eer)网络是非中心化,自组织和动态的网络, 并且为传统的客户端一服务器计算模型提供另外一种选择。客户端服务器(c /s) 结构允许用户链接到某一个服务器,尽管服务器是可扩展的,但这总有限制。而 P2P网络却拥有几乎无限的扩展可能。本文首先描述了P2P技术的发展和现状,然后初步探讨了即时通信所涉及到 的一些技术:如通讯协议、服务模式等;最后对现有的技术进行了对比和分析, 提出了一些可能的改进方案,并且设计了一个基于P2P的即时通信系统。;本系 统基于C+,使用VC作为开发工具。最终实现了多个用户可以点对点的进行即时 通信。关键词:P2P,即时通信,TCP,客户端,服务器课题要求通过本课题的最终
3、设计,要求设计者实现一个基于P2P的即时通信方案,能 搜索并记录双方网络IP地址,基于TCP协议进行文本内容的传输,并实现一对 多发送文本信息的功能;要求设计者对基于P2P的即时通信技术有一个系统地、 全面地了解,为基于P2P相关领域的软件开发打下一定的编程基础。P2P模型简介最近几年,P2P迅速成为计算机界关注的热门话题之一,财富杂志更将P2P 列为影响Internet未来的四项科技之一。P2P打破了传统的CI ient / Server (C /S)模式,在网络中的每个结点的地位都是对等的,既充当服务器,为其他结点 提供服务,同时也享用其他结点提供的服务。P2P技术的特点体现在以下几个方
4、面:1 .非中心化网络中的资源和服务分散在所有结点上,信息的传输和服务的实现都直接在 结点之间进行,可以无需中间环节和服务器的介入,避免了可能的瓶颈。P2P的 非中心化基本特点,带来了其在可扩展性、健壮性等方面的优势。2 .可扩展性在P2P网络中,随着用户的加入,不仅服务的需求增加了,系统整体的资源 和服务能力也在同步地扩充,始终能较容易地满足用户的需要。整个体系是全分 布的,不存在瓶颈。理论上其可扩展性几乎可以认为是无限的。3 .健壮性P2P架构天生具有耐攻击、高容错的优点。由于服务是分散在各个结点之间 进行的,部分结点或网络遭到破坏对其它部分的影响很小。P2P网络一般在部分 结点失效时能够
5、自动调整整体拓扑,保持其它结点的连通性。P2P网络通常都是 以组织的方式建立起来的,并允许结点自由地加入和离开。P2P网络还能够根据 网络带宽、结点数、负载等变化不断地做自适应式的调整。4 .高性能/价格比性能优势是P2P被广泛关注的一个重要原因。随着硬件技术发展,个人计算 机的计算和存储能力以及网络带宽等性能依照摩尔定理高速增长。采用P2P架构 可以有效地利用互联网中散布的大量普通结点,将计算任务或存储资料分布到所 有结点上。利用其中闲置的计算能力或存储空间,达到高性能计算和海量存储的 目的。通过利用网络中的大量空闲资源,可以用更低的成本提供更高的计算和存 储能力。5 .隐私保护在P2P网络
6、中,由于信息的传输分散在各结点之间进行而无需经过某个集中 环节,用户的隐私信息被窃听和泄漏的可能性大大缩小。此外,目前解决Internet隐私问题主要采用中继转发的技术方法,从而将通信的参与者隐藏在 众多的网络实体之中。在传统的一些匿名通信系统中,现这一机制依赖于某些中 继服务器结点。而在P2P中,所有参与者都可以提供中继转发的功能,因而大大 提高了匿名通讯的灵活性和可靠性,能够为用户提供更好的隐私保护。6 .负载均衡P2P网络环境下由于每个结点既是客户端又是服务器,减少了对传统c/s 结构服务器计算能力、存储能力的依赖,同时因为资源分布在多个结点,更好的 实现了整个网络的负载均衡。第二章系统
7、需求系统系统要实现的即时通信系统是一个简单、方便的通信系统,用户通过网上进 行交互。此即时通信系统要可以方便用户之间进行交流,信息时发送,即时回复。 这里的信息可以是文字,图像,视频和文件。系统角色DCIient:客户端,使用进行即时通信的人2) MessageSender. 一端对端传输消息或发送文件时的发送端3) MessageRece i ver :端对端传输消息或者文件时的接收端其中,MessageSender 和 MessageRece i ver 从属于 CI i ent系统用例概况根据需求分析,开始系统的图形化建模。用例技术通过用例 执行者和用 例以及用例之间的关系来描绘系统外在
8、可见的需求情况,它是用户和开发者共同 剖析系统功能的起点。即时通信系统用例由以下组成。1)注册用例是使用者通过注册成为用户的。2)登录:连接服务器获得服务;3)更改状态:更改自己在服务器的状态,状态分为:在线 隐身、离线三种:4)更改资料:更改自己的资料并保存在数据库服务器;5)查找好友:从服务器获得好友信息;6)管理好友列表:对好友进行添加 删除、分组操作;7)个性化配置:对进行本地化配置;8)传输信息:传送文本信息或者富文本信息给好友;9)退出系统:从服务器退出,取消服务:用户注册用例1)填写注册信息2)检查信息格式3.)新注册申请4)串行化数据5)传输注册数据6)生成新ID7)添加新用户
9、命令8)在数据库中添加新用户用户登录用例1)输入登录信息2)发送登录请求3)验证登录信息4)传输好友列表5)传输留言信息6)刷新在线用户列表7)通知好友上线8)改变好友状态9)读取用户数据命令10)从数据库中读取用户信息重复登录用例说明:1)输入登录信息2)发送登录请求3)验证登录信息4)通知好友地址更改5)更改好友地址6)更改用户地址信息命令7)在数据库中更改用户地址信息更改状态用例说明:1)更改状态2)上线3)隐身4)离线5)更改状态消息6)通知好友状态变化7)更改好友状态8)更改用户状态命令9)在数据库中更改用户状态数据更改资料用例说明1)输入更改内容2)发送更改资料请求3)返回反馈信息
10、4)更新用户资料命令5)在数据库中更新用户资料建立客户通信用例建立客户通信用例说明:1)自定义查找2)查找在线用户3)高级查询4)选择查询条件5)查询好友请求6)返回好友信息7)查询好友命令8)从数据库查询好友信息客户信息传输用例客户信息传输用例说明:1)选择发送内容2)加密信息3)传输信息4)解密信息5)显示信息退出系统用例1)退出2)发送退出消息3)刷新在线用户列表4)通知好友下线5)改变好友状态6)选择离线7)关闭8)更改用户状态命令9)在数据库中更改用户状态数据第三章系统规划1)全系统采用学籍信息识别注册,防止恶意注册发生2)该系统面向全体师生开放,设置IP地址锁定,故该系统仅限校内网
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2023 软件工程 导论 作业
![提示](https://www.deliwenku.com/images/bang_tan.gif)
限制150内