网络聊天室项目可行性研究报告.docx
《网络聊天室项目可行性研究报告.docx》由会员分享,可在线阅读,更多相关《网络聊天室项目可行性研究报告.docx(24页珍藏版)》请在冰豆网上搜索。
网络聊天室项目可行性研究报告
网络聊天室项目
1.1编写目的
计算机技术的快速发展,特别是计算机网络的发展,越来越深刻的改变了人们生活的方方面面。
使得人们能以更低廉的价格,开发出更方便、更实用的网络工具。
各种在线服务系统,更是深刻的影响了人们的联系和交流方式,使得人们可以自傲远隔千里之遥随时通讯。
过去的种种陈旧的联系方式,已经不能满足现代生活的需要。
网上聊天系统作为一种方便人们之间联系的使用系统便应运而生。
网上聊天系统是人们进行交流和联系提供的一个平台。
通过提供完善的网上聊天系统的管理,可以达到增进人与人之间的交流和沟通。
在网络世界中,聊天室(ChatRoom)是一个最常见的服务,它最早起源于BBS站点,聊天室作为一个在漫漫长夜打发消遣时间的最佳软件,除了能够用于聊天消遣时间以外,还拥有语音聊天、视频聊天、共享图片、文件等功能。
现在随着网络的发展,聊天室发展的速度已经非常迅速了,现在的聊天室技术,都已经运用到了“网络会议”上,现在有很多的会议在网上视频聊天会议[9]。
该网络聊天室项目可行性研究报告是对项目课题的全面通盘考虑,是项目分析员进行进一步工作的前提,是软件开发人员正确成功的开发项目的前提与基础.写软件项目可行性研究报告可以使软件开发团体尽可能早的估计研制课题的可行性,可以在定义阶段较早的认识到系统方案的缺陷,就可以少花时间和精力,也可以省成资金,并且避免了许多专业方面的困难.所以该软件项目可行性研究报告在整个开发过程中是非常重要的.
本报告的预期读者为项目管理人,教师,软件用户学生,软件开发工程师等。
1.2项目概述
在Internet上,qq,MSN,飞信等网上软件,极大程度方便了各地友人之间的联系,也使世界一下子缩小了,不管你在哪里,只要你上了网,打开这些软件,就可以给你的朋友发信息。
现在,企业,机关,学校都纷纷建立起自己的局域网。
在局域网里,虽然可以通过文件共享的方式进行通讯,但单单使用这种方式,是不方便的。
首先在局域网里的网上邻居,只能看到机器名,不清楚对方是谁,也不知道对方机器有什么资源可以共享,而且当局域网机器很多时,这种方式更加麻烦。
在市面上,聊天室的应用软件出现得比较早,比如说,MicrosoftChat,一个在界面及功能方面都已经非常完善的“聊天室”的应用软件,它是一套独立于浏览器之外的,即与浏览器无关的,需要下载客户端安装使用的套装软件,在使用它之前还需要先熟悉其中的操作界面,才能够使用这个软件,这对于新时代匆匆忙忙,并没有太多时间去学习的网友来说,是一个非常不方便的缺陷。
因此,开发出来一个操作简单,方便,不需要下载客户端安装使用的聊天软件已经成为广大网民的迫切需求。
所以,根据网民的需求,越来越多的公司和网站开始开发基于浏览器的,不需要下载客户端安装使用,不需要熟悉界面操作的聊天室,以便造福更多的网友[12]。
1.3背景
A.软件系统的名称为:
“基于B/S架构的网络聊天室系统”
B.本项目的任务提出者:
软件工程方向课教研室
C.本项目的开发者:
长春工业计算机学院120403班第组。
D.本项目的用户:
学校全体学生
E.实现该软件的单位:
长春工业计算机学院120403班第组。
。
F.项目使用的软件:
MyEclipse、MySQL。
随着众多软件的推广和应用,系统的开发环境对于大多数软件已经不是那么重要,然而现阶段大多数用户所用的系统环境基本上是一样的,因此我们还必须在通用性的基础上考虑到大多数用户的系统开发环境。
电子科技的迅速发展,网络时代到来,人们通讯方式也不断的发生改变,从以前的写信到后来的呼机,到现在的手机,不断地往高科技方向发展。
然而人们的聊天的方式也在发生改变,因此聊天室也随之慢慢的发展起来了,慢慢受到人们喜爱,现在我们QQ中就有各种各样的群,有的娱乐、有的技术交流、有的用来工作,总之应用非常广。
聊天室的开发是有必要的,其发展的前景也是非常大的。
聊天室现在用于娱乐方面还是比较少的,主要还是用于商业方面,就目前聊天室的市场结构来看,现在大多数的网站几乎都拥有一个完全属于自己的聊天室,现在的聊天室,运作起来是非常的简单,当然也有非常复杂的,如像QQ和YY那种聊天的工具。
在国外,现在就一个普通的商务网上或者娱乐网站都有属于自己的聊天工具。
聊天室的之所以这么普及主要有两个原因:
一、由于现在这方面的技术已经是相当的成熟,开发这种软件的成本高;二、聊天这种软件不管是运作起来还使用起来都是比较方便的。
所有很受人们的欢迎,现在都有很多专门做这种软件的公司了。
在我国,聊天室市场集中度还不是很高,其中只有一些大型的商业网站或者一些专门娱乐性的网站才有,所有在我国的市场还是相当的大。
在我国,由于现在的电脑的价格非常的便宜,人们的生活水平的提高,对网络的需要越来越大,除了在网上玩游戏、谈生意、购物、查阅资料以外,还有就是用于聊天娱乐,当我们身处在一个群体当中的时候,不管是在工作还是在学习中也好,我们都会建立起一个属于自己的聊天室,它的聊天功能是聊天室中运用最广的功能,这是网上最受欢迎和最普通以中聊天方式。
聊天具有应用广泛、开发简单、操作方便、功能齐全、信息传递、简单快捷等的特独有性,因为它是用文字来传播信息,所有用于聊天时候的信息交流比较方便,相当于人与人面对面的交流,受到大多数人喜欢,因此有很多人喜欢在聊天室中聊天,还没面对面那种羞涩[2]。
首先,是操作系统的选定。
操作系统种类繁多,如微软公司的DOS、WINDOWS、VISTA操作系统,还有在网络服务器上广泛用用的UNIX操作系统,还有红级一时的中国人的操作系统LINUX等等。
根据应用的广泛性、普遍性和实用性,系统决定选用MICROSOFTWINDOWS7(中文版)操作系统作为软件的操作系统平台。
其次,是编程软件的选定了。
本项目研究的是基于局域网的聊天室,用java编写的程序,程序实现一般的文字聊天功能,可作为某局域网的交流工具
1.4定义
1.3.1专业术语介绍:
SQL语言:
SQL全称是“结构化查询语言(StructuredQueryLanguage)”,SQL是一个非过程化的语言,因为它一次处理一个记录,对数据提供自动导航。
对象:
object是一些相关的变量和方法的软件集。
软件对象经常用于模仿现实世界中我们身边的一些对象。
对象是理解面向对象技术的关键。
控件:
控件实际上是子窗口,在应用程序与用户进行交互的过程中,控件是主要角色。
经济可行性---估计开发费用以及最终从开发成功的系统所获得的收入或利益,衡量比较支出的费用和收到的利益.
技术可行性--分析功能,性能以及限制条件,能否是一个技术上可实现的系统.
法律可行性--明确系统开发可能导致的责任,有无违法问题.
不同的方案--对系统开发的各种方案进行评价.
1.4.2相关技术与开发工具介绍
Java是一种可以撰写跨平台应用程序的面向对象的程序设计语言。
Java技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。
与传统程序不同,Sun公司在推出Java之际就将其作为一种开放的技术。
全球数以万计的Java开发公司被要求所设计的Java软件必须相互兼容。
“Java语言靠群体的力量而非公司的力量”是Sun公司的口号之一,并获得了广大软件开发商的认同。
这与微软公司所倡导的注重精英和封闭式的模式完全不同。
Sun公司对Java编程语言的解释是:
Java编程语言是个简单、面向对象、分布式、解释性、健壮、安全与系统无关、可移植、高性能、多线程和静态的语言。
Java平台是基于Java语言的平台。
这样的平台非常流行。
因此微软公司推出了与之竞争的.NET平台以及模仿Java的C#语言。
Java是功能完善的通用程序设计语言,可以用来开发可靠的、要求严格的应用程序。
MyEclipse企业级工作平台(MyEclipseEnterpriseWorkbench,简称MyEclipse)是对EclipseIDE的扩展,利用它我们可以在数据库和JavaEE的开发、发布以及应用程序服务器的整合方面极大的提高工作效率。
它是功能丰富的JavaEE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML,Struts,JSP,CSS,Javascript,Spring,SQL,Hibernate[1]。
MyEclipse是一个十分优秀的用于开发Java,J2EE的Eclipse插件集合,MyEclipse的功能非常强大,支持也十分广泛,尤其是对各种开源产品的支持十分不错。
MyEclipse可以支持JavaServlet,AJAX,JSP,JSF,Struts,Spring,Hibernate,EJB3,JDBC数据库链接工具等多项功能。
可以说MyEclipse是几乎囊括了目前所有主流开源产品的专属eclipse开发工具
MySQL[1]是一个关系型数据库管理系统,由瑞典MySQLAB公司开发,目前属于Oracle旗下公司。
MySQL最流行的关系型数据库管理系统,在WEB应用方面MySQL是最好的RDBMS(RelationalDatabaseManagementSystem,关系数据库管理系统)应用软件之一。
MySQL是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。
MySQL所使用的SQL语言是用于访问数据库的最常用标准化语言。
MySQL软件采用了双授权政策(本词条“授权政策”),它分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择MySQL作为网站数据库。
由于其社区版的性能卓越,搭配PHP和Apache可组成良好的开发环境。
[3]浏览器-Web服务器的结构如图1-1所示
图1-1 浏览器-Web服务器结构
Web应用的执行过程如图1-2所示
客户端
Web浏览器
访问并调用Web
服务器上的应用
Web
服务器
CGI
Java应用
数据库
返回动态HTML
图1-2 Web应用的执行过程
1.5选题的意义
现在的通讯系统,除了我们生活中用于正常交流和联系以外,在现在的商业中也慢慢的兴起,运用到网上交易中,聊天室为客户与客户之间的沟通提供了一个有效交流平台,使得与客户之间的聊天没有时间和空间的距离感。
在时间上,这边发一条信息到另外一边所用的时间只需要不到1秒的时间,几乎是立即得到响应,比发送一份邮件的信息传递速度快了几百倍,非常的节省时间;在经济上,我们打电话是按时间分钟来计费的,如果是长途电话的话更贵,而我们的聊天室是通过互联网来接通的,价格十分便宜。
当然我们不能否定邮件和电话,在用于不同的地方,它们又比聊天室好。
基于B/S的聊天室是浏览器/服务的,与基于C/S架构的腾讯QQ等聊天软件相比起来,这种B/S[7]架构的聊天室,是不需要下载安装,直接是在浏览器上运行。
因此,对于一个公司和企业来说,开发一个用于网站、娱乐或者论坛来交流的聊天室,其中包括群聊和私聊,成为了现在众多公司或集体的重要需求[14]。
这次开发的基于B/S架构的聊天室,是用现在流行JAVA[1]语言来开发的,用MyEclipse8.5作为开发平台,因为MyEclipse8.5开发B/S[6]架构运行在浏览器上的系统比较方便,并且用到的数据库是当前非常受欢迎的MySQL数据,作为后台数据库存储一些信息,建立一些表格。
现在的随着WEB技术不断加强,B/S架构的设计模式开始流行起来,因为B/S架构的是网页版的,作为客户端只需要在浏览器上操作,没有下载安装客户端的说法。
B/S模式将实现系统核心功能的代码全部都放着到服务器上,只有该系统的服务器够强大就可以无限的运行,如果客户端崩溃,也只是在浏览器上而已,只需要重新打开一个页面就可以了,从某种一定程度上,这个系统只需要开发一个强大的服务器,从而简化了系统的开发和维护。
基于B/S架构的聊天室系统,与那些C/S[8]模式聊天室相比较,最大的优点:
只要你有浏览器,就可以随时随地进行聊天,而不需要下载安装客户端,从而实现了客户端零安装、零维护的需求,提高了其中的效率[6]。
1.6参考资料
1.软件工程开发报告模板标准。
GB-8567--88
2.《程序设计教程与实训》
3.《软件工程导论》(第5版)清华大学出版社张海藩编著
2可行性研究的前提
开发环境
随着众多软件的推广和应用,系统的开发环境对于大多数软件已经不是那么重要,然而现阶段大多数用户所用的系统环境基本上是一样的,因此我们还是必须在通用性的基础上考虑到大多数用户的系统开发环境。
本聊天室系统由JSP技术与MySQL数据库相结合基于B/S模式开发完成,以Struts2框架作为主要的技术框架,以MyEclipse8.5作为开发工具,以apache-tomcat-6.0.28做为服务器。
本聊天室系统的主要有普通用户和管理员两个角色,普通用户主要有注册登录、找回密码、群聊私聊、字体设置、背景颜色设置、在线音乐试听、退出这几个功能;管理员的主要功能有登录、在线用户管理、用户资料管理、过滤字段管理、聊天记录管理、音乐管理。
2.1要求
a.网络聊天室功能:
系统功能需求根据用户对象的不同分为普通会员功能的需求和管理员对功能的需求两部分。
普通会员对功能的需求:
新用户注册
取回密码
在线发送消息
修改个人基本信息
离开聊天室
管理员对功能的需求:
用户管理
浏览所有用户信息
查找用户
用户权限分配
删除不合法用户
踢人
b.网络聊天室软件的性能:
开发该软件的基本要求与功能是实现用户信息数据包括与用户有关的数据的管理与操作处理,基于MySQL数据库系统的数据管理使该软件有更优异的性能.软件的基本数据流动为用户数据的输入,用户信息,用户地址,用户的留言,以及有关用户提出的对其它用户的信息等等的查询要求所产生的数据输出.数据的输入与输出处理流程都依靠数据库的支持.数据的安全基本保证MySQL的安全性能比较令人满意,该软件设计中保持与其他一些数据库的基本兼容.
c.输出:
用户基本信息和发言各种处理的结果表格文档形式。
d.输入:
用户根据自身需要,或者评论网络最新最热门话题展开讨论。
e. 处理流程和数据流程图用图表的方式表示出最基本的数据流程和处理流程,并辅之以叙述.
f.安全保密方面的要求:
对该软件系统设置不同级别的访问权限,通过对不同权限的管理,实现对用户的管理的安全性与保密方面的要求.
g.完成期限2015年11月15日到2015年12月11日
2.2目标
该软件的设计目标必须尽量达到人力与设备费用的节省,并且使软件处理数据的速度提高,软件的整个设计过程必须通过生产能力的提高,人员工作效率的提高等等使软件开发成本最小化.实现保证软件质量的前提下的资金投入最小化.
2.3条件、假定和限制
a.本网络聊天室建议运行寿命为:
5-10年
b.进行系统方案比较的时间:
1周
c.经费投资方面的来源和限制用户
d.法律政策方面的限制:
1.严禁违反宪法确定的基本原则。
2.严禁危害国家安全,泄露国家秘密,颠覆国家政权,破坏国家统一。
3.严禁损害国家荣誉和利益。
4.严禁传播发布会妨害第三方权益的文件或者信息,包括但不限于:
病毒代码,黑客程序,软件破解注册信息.
5.严禁抄袭剽窃他人作品
e.硬件软件运行环境和开发环境方面的条件和限制
MyEclipse开发环境Jsp
系统投入使用的最晚时间:
2015-12-11
2.4技术可行性评价
就目前使用的开发技术来说建议系统的功能目标应该能够达到;利用现有的技术在规定的期限内开发工作基本能够完成
3.对现有系统的分析
3.1处理流程和数据流程
建议本系统的研究主要集中在用户之间的消息的发送与接收是每个公司都会遇到的问题,大多数公司使用的是人员流动方式,使公司的管理困难重重。
如果采用一套软件,由数据库来记录这些信息,则大大的方便了企业内部人员沟通,方便员工及时的了解公司的动态,与其他功能模块联机操作使企业的日常管理步入了科学系统管理的轨道上。
现有系统的数据处理与流程基本为用户数据的录入与查询,管理员删除修改等操作。
流程图可表示如下:
3.2工作负荷系统工作流
由于数据量越来越大,现有的系统已明显不能适应目前的庞大数据量,系统工作负荷过大。
3.3费用开支
由于现有系统的工作负荷严重超载,在现有系统上投入的人力,设备,空间,材料,等等与其他的一系列支持性服务越来越大,导致开发费用支出巨大,严重影响系统的可用性,急需改进。
3.4人员
鉴于原有系统的技术性含量比较低,故不需要多少高技术人员的操作,只是由于数据量的日益扩大,所需要的操作人员数量不断增大。
这一点已不再适应目前信息化时代的步伐。
3.5设备
设备的科技含量也比较低,没有达到大量的计算机普及程度。
3.6局限性
经过严谨的分析,可知原有的系统存在很大的局限性,比如技术的过于陈旧,人员工作负荷大,系统维护等方面存在很多的局限性。
4.进行可行性研究的方法
实行软件的可行性研究方法主要有:
成本效益分析,对估算问题的看法,软件的作用范围,软件的成本估算,速度安排等。
具体将在下面叙述。
4所建议的系统
4.1对所建议系统的说明
网络聊天室工作主要是用户的聊天功能,包括数据输入、修改、删除、追加、查询、统计和打印报表等功能,要能高效、准确地完成这些功能,并要达到界面美观友好、使用方便。
对网络聊天室实现要求以及如何得到满足:
1.对用户基本信息文件的存储要求采用PB+后台数据库技术,实现对文件的输入以及保存.
2.对用户搜索的功能要求,可以通过在数据库设置关键字,并通过关键字来实现对基本信息的各种搜索功能.
3.输入输出要求:
4.安全方面要求通过对软件登陆用户设置不同的管理级别来实现。
4.2处理流程和数据流程
下面列出主要事务的数据流图:
查看发表言论查询留言
.
增删评论
统计数据回复留言
单用户B
发言回复
单用户A
4.3改进之处
很明显,在以上几点中已可以看出新系统的性能与功能上与现有系统的差别,首先新系统克服了原来系统的资金投入大,人员设备技术含量低,系统工作负担重等缺点。
而且加入了对数据的安全性保护的功能,使原有系统在可用性与稳健性方面有了很大的进步。
4.4影响
采用建议系统与现有系统的差别在上面已所过,在此从不同方面具体说一下:
(1).设备;
(2).现有软件;
(3).用户;建议系统使用的新技术是完全基于原有的系统上的,故用户不必考虑新系统带来的人员培训等等。
(4).经费支出;建议系统是为了改善原有系统在经费支出过高的缺点的,所以新系统一经使用在经费支出方面一定会得到很好的改善,用户在使用了新系统后只需要花一定资金购买一部分计算机与软件就能实现自动化。
4.4.1对设备的影响
采用建议系统后,改进了原有系统的性能所以对设备要求自然更高,建议系统使用了最先进的技术使设备也必须跟着升级。
4.4.2对软件的影响
由于建议系统采用了先进的数据库技术以及一系列高技术含量软件,部分用户可能无法使用。
4.4.3对用户单位机构的影响
要求用户单位操作人员熟悉软件运行的基本环境Windows操作系统。
4.4.4对系统运行过程的影响
说明所建议系统对运行过程的影响,如:
a.用户的操作规程;
b.管理员对服务器的操作规程;
c.服务器与用户之间的关系;
d.源数据的处理;
e.数据进入系统的过程;
f.对数据保存的要求,对数据存储、恢复的处理;由用户提出输出请求,文档管理系统响应请求,由打印机输出
f.输出报告的处理过程、存储媒体和调度方法;
g.系统失效的后果及恢复的处理办法。
4.4.5对开发的影响
说明对开发的影响,如:
a.为了支持所建议系统的开发,用户需进行的工作;
b.为了建立一个数据库所要求的数据资源;
c.为了开发和测验所建议系统而需要的计算机资源;
d.所涉及的保密与安全问题。
4.4.6对地点和设施的影响
在学校建立一个计算机中心,实施人员限制,无尘恒温管理,以放置运行该系统的后台服务器.
4.4.7对经费开支的影响
建议系统是为了改善原有系统在经费支出过高的缺点的,所以新系统一经使用在经费支出方面一定会得到很好的改善,用户在使用了新系统后只需要花一定资金购买一部分计算机与软件就能实现自动化。
4.5局限性
数据的庞大的限制,不允许大容量数据录入数据库和保存.产生原因:
这些问题是由于采用的后台数据库SQLsever的局限性所致.
4.6技术条件方面的可行性
以现有的技术和开发人员的数量和质量条件下,可在规定期限内完成该系统的开发.
5投资及效益分析
经济可行性分析中最重要的内容之一是成本--效益分析。
对于一个基于计算机系统的研制项目要在经济方面评价其是否合理,成本--效益分析要估计出研制开发的花费并与收益(包括有形的可以用货币计数的及无形的利益)衡量比较。
5.1支出
就目前使用的开发技术来说建议系统的功能目标应该能够达到;利用现有的技术在规定的期限内开发工作基本能够完成。
基本支出为2.5万。
5.1.1基本建设投资
a.房屋和设施2.5万
b.环境保护设备0
c.安全与保密设备:
0
d.数据库管理软件:
MySQL
5.1.2其他一次性支出
a.研究(需求的研究和设计的研究)费用:
0
b.数据库的建立:
0
c.检查费用和技术管理性费用:
0
d.培训费用.旅差费用开发人员所需要的一次性支出1000元
5.1.3非一次性支出
列出在系统生命期内按月支出和维护费用:
a.设备的维护费用:
100元
b.软件的维护费用:
100元
c.人员的工资,奖金:
0
d.房屋空间的使用开支:
电费50元
e.公共设施方面的开支:
100元
f.保密安全方面的开支:
网络杀毒软件0
g.其他经常性的支出:
100元
5.2收益
对于所选择的方案,说明能够带来的收益,这里所说的收益,表现为开支费用的减少或避免、差错的减少、灵活性的增加、动作速度的提高和管理计划方面的改进等。
5.2.1一次性收益
a.开支缩减,运行效益1000元
b.应用系统价值的增值而引起的收益:
500元
c.其他如多余设备出售回收的收入5000元
6.所建议系统的技术可行性分析
6.1技术背景
根据客户提出的系统功能、性能及实现系统的各项约束条件,根据新系统目标来衡量所需的技术是否具备,本系统是一个数据库管理和查询的系统,现有的技术较为成熟,硬件软件的性能要求、环境条件等各项条件良好,估计利用现有技术条件可完全达到该系统的功能目标。
同时,考虑给予的开发期限也较为充裕,预计系统可以在规定期限内完成开发。
6.2拟用技术
技术上的可行性分析主要分析技术条件能否顺利完成开发工作,软硬件能否满足开发者的需要等。
该管理系统采用了当前新兴的Browser/Server模式进行开发。
三层的Browser/Server体系结构具有许多