版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、北京邮电大学软件学院软件项目需求设计说明书项目名称:基于oSIP聊天室的开发项目时间:2011-1-13 -2011-1-20小组成员:第六小组目录1. 文档介绍 31.1 文档目的与范围 31.2 读者对象 31.3 参考文献 31.4 术语与缩写解释 42. 系统概述 63. 设计要求 64. 软件系统结构图 74.1 客户端系统登录模块 84.2 客户端聊天功能模块 94.3 客户端系统功能模块 104.4 服务器端转发功能模块 124.5 服务器日志备份模块 135. 功能模块设计概述 135.1 模块汇总 135.2 模块之间的关系 146. 用户界面设计概述 147 稳定性和可扩展
2、性 158 性能分析 169 项目小结 161.文档介绍1.1 文档目的与范围该软件项目需求设计文档的目的主要是明确用户的需求,指导我们在分析 和设计系统时候能够更加贴近用户的需求, 提高团队的开发效率。 通过此需求 分析文档能够了解本小组所做的聊天室软件的产品描述, 产品功能, 具体功能 需求等多方面的信息。 同时此需求分析文档是根据客户对软件系统的功能和性 能方面的需求, 向客户以及项目组开发成员提供详细明确的描述。 同时也为软 件使用者和软件开发者之间建立共同的需求目标,进行一定程度的交流沟通。 同时对软件所需实现的功能模块做了全面的描述。 它是后续开发工作和验收工 作的依据文件,软件使
3、用者和软件开发者以此为共同的基础。该软件项目需求设计文档的范围主要是明确聊天室系统的基本架构和将 要实现的基本功能。 此系统基本功能可以实现多人在线文字聊天, 并由管理员 统一管理维护,今后可以在此基础上增加语音和视频功能。1.2 读者对象本需求设计说明书的预期读者包括:实训指导老师 第六小组全体组员 对此聊天系统感兴趣的组织或个人1.3 参考文献 osip 开发者手册 Artech House - SIP. Understanding the Session Initiation Protocol, Second Edition基于CMMI3软件工程过程管理与实践董玉龙 . 胡亮 . 王天宝
4、 基于 eXosip2 下 SIP 电话的设计与实 现 期刊论文 - 成都信息工程学院学报 2008(1)王世卿.李洵.王二红 基于oSIP的嵌入式SIP终端的研究与 实现 期刊论文 - 微计算机信息 2007(35)单德君 基于SIP协议的VoIP网关的设计与实现 学位论文硕士 2007杨润萍 基于SIP协议的语音通信技术的研究学位论文硕士 2006杨钊秦雅娟 基于VoIP的SIP服务器和嵌入式终端的研究 和实现期刊论文-计算机与现代化 2010(10)1.4术语与缩写解释缩写、术语解释OS操作系统(Operating System,简称OS)是管理计算机系统 的全部硬件资源以及软件资源;控
5、制程序运行;改善人 机界面;为其它应用软件提供支持等,使计算机系统所 有资源最大限度地发挥作用,为用户提供方便的、有效 的、友善的服务界面。SIP协议SIP ( Session Initiation Protocol,会话发 起协议)是下一代网络中应用层的核心控制协议,正得到越来越广泛的关注.2001年,SUN公司发布了基于 JA2VA技术的规范 JAIN ( Java Advaneed Intelligent Net2work)SIP API,将SIP协议规范为标准的 JAVA接口,开发者可 以方便实现SIP网络架构中的所有 SIP实体,并使其具有 JAVA网络编程语言方便移植的特点。Osi
6、p2Osip2是一个开放源代码的sip协议栈,是开源代码中不多使用C语言写的协议栈之一,它具有短小简洁的特点, 专注于sip底层解析使得它的效率比较咼。但缺点也很 明显,首先就是可用性差,没有很好的api封装,使得上层应用在调用协议栈时很破碎;其次,只做到了 transaetion层次的协议过程解析, 缺少call、session、dialog 等过程的解析,这也增加了使用的难度;再次,缺少线 程并发处理的机制,使得它的处理能力有限。eXosipC/S结构eXosip是Osip2的一个扩展协议集,它部分圭寸装了 Osip2协议栈,使得它更容易被使用。eXosip增加了 call、dialog、
7、registration、subscription等过程的解析,使得实用性更强。但是eXosip局限于UA的实现,使得它用于 registrar 、sip server等应用时极其不容易。另外,它并没有增加线程并发处理的机制。而且只实现 了音频支持,缺少对视频和其它数据格式的支持。即客户机/服务器模式)分为客户机和服务器两层, 客户机 不是毫无运 算能力的输入、输出设 备,而是 具 有了一定的数据处 理和数据 存储能力,通过把应 用软 件的计算和数据合理地分配在客户机和服务器两端, 可以有 效地降低网 络通信量 和服务器运 算量。由于服 务器连接个数和数据通信量 的限制,这种结构的 软件 适于
8、在用户数目不多的局域网。O-SIP 的、易用性、7*24 小时 ,支持可以2. 系统概述本系统是基于“ O-SIP 传输协议的聊天室系统” ,通过利用 API 开发出的一套聊天工具。本系统的主要功能:私密聊天公共聊天 服务器信息备份 客户端在线查询3. 设计要求软件环境 各种版本的 widows 操作系统( X86)硬件环境 CPU英特尔80386 以上配置内存: 32MB 硬盘空间: 128M接口 /协议的约束:支持标准的IP , TCP传输协议软件质量的约束,如正确性、健壮性、可靠性、效率(性能) 清晰性、安全性、可扩展性、兼容性、可移植性等等。 软件需求能在各种 Windows 操作系统
9、上使用;能连续工作 界面清晰,易于使用;最大支持 2000 个用户同时在线聊天; 进一步扩大在线人数,切在客户端可以进一步添加功能。4. 软件系统结构图基于OSIP传输擁设的輔天室曰志备曲转发功能系统功盍4.1客户端系统登录模块(开始一丄輪入用户姓名向脸劳器发送逹册信息( 进入聊天室 )4.2客户端聊天功能模块遴入聊I天室 )维绫II天JV4.3客户端系统功能模块遊入軸天臺是否;aim期户服劳器返回在线用户舗入对方的URL维续聊天继续聊天4.4服务器端转发功能模块接寰喜户爲消息岌医亜新包装的利聊消戛11取收发戏方地址, 包装炭医信息是否查海在线用户是否为用户登录腿岀广爲发逶公聊消息4.5服务器
10、日志备份模块( 服奔器启动T喜户消宴的錐续按作)5. 功能模块设计概述5.1模块汇总子系统A O-SIP聊天室客户端模块名称功能概述系统登录登录客户端,需要输入用户名和客户端所在的IP地址,自动分配一个(8000-999 号)端口;聊天功能直接输入想说的话可以实现聊天室公共发言;“ $+想说的话”可以与某一在线用户私密聊天(前提要先设置密聊对象);接受公共聊天和私密聊天的内容;系统功能发送“ *|ist ”,服务器可以返回当前在线用户URL ;发送“ *help ”客户端会提供所有支持的系统功能提示;发送“ *quit ”客户端会退岀,并发送离开消息给服务器,服务器给所有用 户广播此离开消息;
11、O-SIP聊天室服务器端模块名称功能概述转发功能接收用户的信息并按照不同的类型,重新包装发送(其中用户登录消息和离 开消息为广播,私聊消息为转发,查询在线用户消息为回发);日志备份接收每个用户的每一条信息(包括公聊,私聊,以及系统信息),加入服务器的系统时间,保存在“D:log.txt ”文件里;5.2模块之间的关系6. 用户界面设计概述目前我们O-SIP的聊天室系统的开发主要是基于控制台,由于开发时间比较仓促,所以用户界面设计部分还未完成,在后续的开发和维护中我们将此部分予以完善,给用户展示一个美观,易用,可靠的用户界面。I 入 11i A h1p |A 疔EHL |A f,* 15 Fil
12、伽“ *3朿 lp a i-jiBcr e 】H;r Uim.Hng xr he 11*xangil-fl 1 za;- 111谓辙九 f 卸苗科號的RS v |Vi:V4n1pi*iVi37rvr0n l=T?刊肘申M胆ihVi喩址的窑罕,谓翔人慫的iFmh12 礼 SI H i亍I EpIP”Q*magrtVU址-rpp4厲局I堆的咄也址,L27.0.B.1 1 Es0IP_grtMEUM:彌耐giang-lQl wy:-.- ft w .fak.rt-.b-.h-.h-fl户十 售| 工iAAAAAM淳爭注i警輕g 馬户却n阿裤科QHLEniSA IMSJE-Lung 1a 1 a-Ay
13、: Ihi budiiran方 KEcr口1咕 a &utl:ang*B 1 ay I *) lx*fci:xanlli 27.a_a. H lp:-u-UkAWilI =T7曲刘、席谀匕明,log,trtI2011/1/20 16:43 站宜档1 KB7稳定性和可扩展性提示:在“软件”生命周期内,判断哪些需求是不变的,预测哪些需求可能发生的变化。 在总体设计的时候,既要使总体结构稳定,又要适应需求变化。稳定性软件应正常完成所有功能需求。服务器应长时间运行无故障,故障修复 时间一般控制在3小时内,除非出现恶性攻击、病毒破坏、系统资源不足、硬 件故障、操作系统崩溃网络中断等情况,不允许出现内存泄
14、露。要求系统可以承受告警风暴和大数据量的冲击,不出现内存溢出等现象。可扩展性系统建成后,应在现行系统上不需要做大的改动或不影响整个系统结构,就可以增加功能模块, 这就必须在系统设计时留有接口,使其具有可扩展性和维护性,这样就方便在后期的维护过程中根据用户的需求添加相应的功能,同时也不会影响系统其他功能模块的正常运行。8 性能分析由于开发时间比较仓促,以及我们开发团队技术能力和经验方面的限制, 所以在以下几个方面还有不足之处, 在后续的开发过程中我们将予以改进和完 善。容错性需求 当出现代码异常时,出现正确的提示,不会影响整个系统的运行。用户之 间信息传输不会因为数据封装问题出现丢失或乱码。 因
15、用户的误操作产生 的异常应作为及时的处理或信息提示。软件设计可靠性 要确定合适的模块粒度,各模块之间要求松耦合,高内聚;从而使整个系 统的可靠性和稳定性得到提高,并且便于系统维护和新模块的添加。安全性 安全性是防止网络方面的攻击。 在后续的开发中我们将采用数据加密存储 技术, 因为数据大多数是明文存放, 如果黑客一旦有机会侵入系统, 如果 是明文存放的, 该数据很容易暴露出来。所以对一些核心数据,需要在数 据存储时,就进行了数据加密。易用性 由于我们的系统是基于控制台的,所以在用户在客户端操作起来不是很 方便,因此在后续的开发中,我们将开发出基于MFC勺图形用户界面,充分发挥“以用户为中心的进
16、行设计”设计理念,从设计过程的开端便把 用户所关注的东西包含于其中,并规定用户应该是任何设计决定中最重 要的因素。9 项目小结在这次 O-SIP 聊天室系统的开发过程中,虽然我们遇到过许多困难,经历 了许多波折,但最终设计出的软件还是符合我们最初的设想,由于开发的时间 比较仓促,软件还有许多方面需要完善,但是我们仍然收获很大,主要体现在 以下两个方面:让我们深刻理解了团队的力量在软件开发中的作用 。在 开发过程中我 们遇到过许多莫名其妙的问题, 通过大家在一起交流, 最后都一一解决了, 如果让个人去解决,由于每个人的思维定势和编程经验的限制,可能最后 解决这个问题会花费大量的时间,从而严重影响我们开发的效率。但是通 过大家在一起讨论,研究,这些问题很快就解决了,因此团队协作的力量 对开发效率的影响是不容忽视的,现在的软件开发行业再不是个人英雄主 义,而是更加注重团队的力量。采用科学的软件设计的方法 。在组长宋磊同学的组织下, 我们首先对项 目的需求分析进行讨论,每个组员都可以表达自己的观点,然后大家一起 讨论,确定最终的设计方案,因此我们组花了大量的时间进行需求
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 二零二五年度危化品物流配送与仓储服务合同3篇
- 2025年度科技创新项目试用合作全新试用协议3篇
- 2025年度宠物店宠物用品定制生产与销售权转让协议3篇
- 2025年度文化产业融资合同范本集3篇
- 二零二五年度绿色环保产业市场拓展营销策划合同3篇
- 2025年度内架承包与施工噪声及光污染控制协议3篇
- 2025年度智能网联汽车制造企业整体转让协议版3篇
- 二零二五年度展会现场展台搭建与物料租赁合同2篇
- 养殖业产业链金融支持2025年度合作协议3篇
- 2025年度海外空间科学与技术留学合同
- GB/T 6344-2008软质泡沫聚合材料拉伸强度和断裂伸长率的测定
- GA/T 798-2008排油烟气防火止回阀
- GA/T 1163-2014人类DNA荧光标记STR分型结果的分析及应用
- 《中国红》诗歌朗诵
- 光伏工程启动验收鉴定书
- 承揽合同纠纷答辩状范例2篇
- 管线管廊布置设计规范
- 招聘与录用选择题
- 《工资、薪金的个人所得税的计算》教学设计
- 周视瞄准镜的初步设计-北京理工大学-光电学院小学期作业
- Writing写作教学设计
评论
0/150
提交评论