CH小说网站
[软件开发计划书、需求分析]
作者:陈春旭,习志鹏
1.引言(Introduction)
1.1背景(Background)
随着社会信息量的与日俱增,人们看书不在限制于在书本上了,要是那样不是得通过买
或借等途径来实现,这样既费时又费钱,并不是每个人的理想的途径啊。所以要想出一种简
便的方法来解决这个问题,方便大家使用。在计算机日益普及的今天,要采取一种好的方法
来查看自己想看的书集,让人家不会有所烦恼啊。虽然这些文学类的网站很多,但各个文学
网站并不是十分完美的,也没有具备好的优势,总是有它所不及的地方,这些并不能满足大
家的要求,要想在这基础上有所发展,有所收获,有所创新,就要不断的创新,不断的修改,
才会创建出一个比较好的文学网站来使用。本设计所完成的文学网站是- -种功能比较完善的网站,具有查询、阅读,下载,上传等操作方便高效迅速等优点。该网站也采用大量的数据库软件开发工具来进行开发,具有很好的可移植性,可在应用范围较广的WINDOWS系列操作系统上使用。除此之外,网站还可以通过设置权限不同来进行管理,以备- -些信息的不必要性的损失,维护网站。
1.2目的(Purpose)
为了保证项目团队按时保质地完成项目目标,便于项目团队成员更好地了解项目情况,使项目工作开展的各个过程合理有序,同时便于老师和其他同学了解我们的项目进程安排以给出宝贵的意见建议,因此以文件化的形式,把对于在项目生命周期内的工作任务范围、各项工作的任务分解、项目团队组织结构、各团队成员的工作责任、团队内外沟通协作方式、开发进度、经费预算、项目内外环境条件、风险对策等内容做出的安排以书面的方式,作为项目团队成员共识与约定,项目生命周期内的所有项目活动的行动基础,项目团队开展和检查项目工作的依据。
1.3 范围(Scope)
CH小说网站开发计划书的主要范围包括:
(1)软件规模估计以及相关材料说明
(2)软件开发目标设定
(3)工作模块设计
(4)人力资源计划
(5)进度安排计划
(6)支持条件以及关键问题
(7)项目实施保证
1.4 参考资料(References)
[1] 《GB8567-88计算机软件产品开发文件编制指南》
[2] 吕云翔.软件工程实用教程.北京:清华大学出版社,2015.
[3] 《需求规格说明书》
1.5 相关文档(Related Documents)
[1] 《需求规格说明书》
[2] 《软件设计说明书》
1.6 关键字
数据数据库,记录,字段,首页,查询,论坛,Internet 信息服务,主题,回复,关键
字,用户,管理员,作家,读者,注册,魔法,武侠,散文,名著,登录,科幻,更新,热
门书籍,评论,修改,资料,删除,添加,网站
1.7版本更新记录(Version Updated Record)
2.项目概述(Project Summary)
2.1项目论证
再看一下竞争因素,近十年来小说行业都在稳步上升,所以市场上已经有不少小说网站或者应用,但是经过考察一些网站发现有着许多让用户不方便的地方:第一点就是大部分网站充斥着大量广告,用户总是可能点到广告浪费时间从而降低用户体验。第二点就是部分网站或者应用有部分优良小说需要付费才能看,但是有一些网站又不用付费,从而降低用户对该付费小说网站的感觉。第三点为很多网站发表小说比较麻烦,对于一般的想写一点东西的萌新小说读者不友好。第四点即为现在大部分小说网站一进去,最显眼的就是推荐阅读,超人气小说等等,但是不少却是较为庸俗的爽文,全是这些年火起来的书的套路,对大部分老书友来说如果搜了前一些书全是这样的,就容易觉得该网站没啥用,净是脑残文,而大部分精炼精彩评论都是老书友写的,如果一个网站仅仅留着了初窥小说不久的书友,评论也都是这些书友的简单无脑评论,这个网站最后体验感一定不会长,因为萌新书友也会慢慢变成老书友。
2.2项目审核
综上所述,我们团队发现最基本的几点。小说网站的话,首先市场极大,服务对象极其广泛,受众大。然后小说利用的是碎片化的时间,不像吃鸡或者网站,虽然也是较为碎片化,但是小说碎片化更加明显,随看随停,对现代节奏快的生活较为符合,这是个长期优势。最后竞争方面,总体来说此类网站已经非常多,竞争较为残酷,但是另一方面大部分网站都有零零散散的劣势,如果能做一个体验感不错的小说网站,用户数应该也不会过低。
2.3项目立项
我们小组结果一段时间的讨论,决定做一个小说网站。前期应逐步搭建起框架,首先点击网站可进入,然后摆上小说,提供观看,提供发布小说渠道等等。该小说网站最终要尽量做到。A.无广告,提升用户体验,短时间内增加用户数。B.所有小说不收费,提高用户体验,吸引用户。C.写小说上传网站方便,但是对于读者不多的用户每天上传有字数限制。D.对于优质的小说评论给予重视,发表一定数量的优质评论可升级该用户为“老书友”,同时在该用户进行评论时给予该评论特殊标记,给用户对此小说有一个明确的印象。
2.4 项目目标(Project Purpose)
CH小说网站,主要是用于看小说时拥有一个纯净的环境,获取资源网站中免费的资源,不涉及到VIP的收费资源。可以利用数据库实现离线缓存操作,实现离线看小说的功能。
2.5 项目范围(Project Scope)
2.6 项目使用对象(Project Reader)
本平台最终用户是喜欢网上阅读书籍的网友。
系统维护人员为项目开发团队,对于此系统的相关部分比较熟悉,团队内部具有对数据库、计算机、网络较为熟悉的人员,维护难度不是很大。
管理员为开发团队指定的人选,只需要有论坛管理经验即可,不需要较强的技术限制。
2.7 需要交付的成果(Necessary Items)
2.7.1 需要交付的软件(Necessary Software)
实现一个基于Java EE的数据库后台管理代码生成框架的基本功能和主要流程。该框架应该具有以下功能:
(1)游客看小说功能,不需要登录使用书号在免费资源中查询书籍直接可以看小说;
(2)用户看小说功能,需要登录账号,进行权限校验系统,可以在书架中选择书籍,或者通过书号去查询书籍看小说;
(3)用户登录:账号密码输入→获取数据库数据→匹配登录→权限判断→主页面;
2.7.2 需要交付的文档(Necessary Document)
《需求规格说明书》 、 《软件开发计划书》 、 《软件设计说明书》 、 《测试报告》 、 《用户使用说明书》
2.5 项目开发环境(Project Environment)
本网站采用PC机进行开发,开发环境如下:
操作系统: Windows10 家庭版
数据库系统: SQL SERVER 2012
IDE:eclipse、HBuilder
测试工具: Visual Studio 2013 Unit Test Generator集成unit测试工具
浏览器: Chrome
3.组织安排(Project Organization)
3.1 组织结构(Organization Structure)
为了很好地完成本项目,我们成立了由五人组成的项目团队,根据需求分析和开发进度计划,我们的成员分工如表3.2所示。
3.2 成员分工(Division Of Work)
3.3 协作与沟通(Cooperation And Communication)
3.3.1 协作沟通对象(Communication Object)
为了很好地完成本项目,需要在团队内部以及外部与教师保持良好的沟通。
在本项目中,需要保持沟通的对象包括项目团队开发人员、软件工程课程助教、软件工程任课教师吕云翔老师等。
3.3.2 沟通方式(Communication Mode)
团队成员直接通过微信等即时聊天工具、会议讨论以及电子邮件进行沟通。会议讨论时时限安排为每周一次,讨论的内容主要包括关于项目做出的新的变动或调整,上一阶段任务完成情况的统计以及总结,下一个阶段任务的详细安排和准备,并作相应的会议记录。
与助教、教师间的沟通主要是通过电子邮件和面对面的交流方式。在项目做出较大的调整、项目进度达到一定程度或者项目出现问题时与教师以及助教联系,汇报项目进展情况,并且及时提交相应的文档和源码,提交任务安排等。
3.3.3 协作模式(Cooperation Mode)
在团队内部,协作模式主要是团队内部协调、沟通为主。针对组员或者项目经理提出的建议或问题,组织团队成员进行开会讨论,并参考教师以及助教的建议,统一意见,做出决定。
4.实施计划(Implementation Plan)
4.1 风险估计(Risk estimates)
由于团队成员缺乏团队开发经验,对于相关技术的了解不多,因此存在技术风险和进度风险,而且是技术风险导致进度风险的可能性比较大。
进度风险主要是系统实现阶段和测试阶段进度,可能表现为编码工作进展不顺利、各个子系统模块之间的衔接存在问题、数据库系统与网站之间的传输连接稳定性以及测试结果不符合预定要求等问题导致的进度拖后问题。
4.2 工作流程以及任务分解(Task decomposition)
基于缺乏团队开发的经验,对于相关技术并不熟练,也没有开发过成型的模型的状况,本项目采用瀑布模型进行开发。
整个项目按照技术分解为数据库设计、ASP.NET、HTML以及CSS三个部分,按照功能模块设计,整个项目分解为下面的部分。
4.3 进度安排(Schedule)
项目进度安排使用Project 2013设计,项目进度安排如图4.1,4.2所示,项目进度甘特图如图4.3,4.4所示。
图4.4 项目进度甘特图
4.4 项目控制计划(Project Control Plan)
项目控制依据技术风险和进度风险而制定。
4.4.1 技术风险控制(Technology Risk Control)
针对团队成员对于网站架设技术不熟悉的情况,采用以下计划控制技术风险:
(1)在项目开展前期进行积极有效的技术学习。在项目启动前期,我们将会安排一周的时间进行集中式的技术学习,学习到网站架设方面的基本内容。同时,在项目实际开展过程中,在完成相应任务的同时,继续学习需要的技术。
(2)与教师、助教保持良好、及时的沟通。在技术方面出现问题时,及时与老师助教进行沟通,听取建议,尽量少走弯路,规避可能存在的技术风险。
4.4.2 进度风险控制(Schedule Risk Control)
为了确保团队能够按照项目计划,及时完成相应的任务,我们采取了以下的措施规避进度风险。
(1)项目经理和团队成员之间做好相应的监督工作。团队中,项目经理和组员之间相互监督,相互督促可以有效地减少进度风险。
(2)保持每周一次的例会。在会议上通过总结上一阶段的任务和安排下一阶段的任务,保持整个项目的进度。
(3)与教师保持良好的沟通,及时向教师提交任务安排,通过教师的监督来确保进度的保持。
5.支持条件(Support Conditions)
5.1 计算机系统支持(Computer Systems Support)
5.1.1 开发时需要的支持条件
硬件:
前期使用个人PC当本地的服务器,服务器数量:2台(一台备份用)。
PC工作站的具体配置:
处理器:Intel® Core™ i5-4210U CPU @1.70Ghz 2.40GHz
内存:8.00GB
硬盘容量:500GB
输入输出设备:打印机等。
网络设备:宽带
后期需要租用云端的服务器。
所需服务器的配置:
CPU:Intel Xeon E5-2680 2.50GHz以上
内存:2GB以上
硬盘:至少40GB以上
软件开发环境配置:
操作系统为Windows 7,使用集成开发工具Visual Studio 2013,数据库采用SQL Server 2012;
其他开发工具包括:Dreamweaver, Microsoft Visio, Rational Rose
5.1.2 运行时需要的支持条件
一、服务器的要求
1.服务器的中央处理部件(CPU)建议使用Xeon E5-2680或配置更高的处理器芯片。
2.服务器内存必须使用服务器专用ECC内存。
3.为了保证数据存储的绝对可靠,硬盘应使用磁盘冗余阵列(RAID 01)。
4.为了防止服务器不可预测的故障,或者服务器的定期维护对公司整个业务造成的影响,建议使用两台服务器。两台服务器应构成双机热备份,中间使用Watchdog电路。这样的结构可以保证整个系统的长时间不间断工作,即使在服务器定期维护的时候也可以使用另一台服务器工作。
5.服务器应支持热插拔电源。
6.服务器必须配备UPS(不间断电源)。
7.服务器应放在学校内部或云端。不然无法进行程序调试。
8.服务器应该必须有固定IP地址。
9.其他性能在经济条件允许的情况下,应该尽量使用高速稳定的配件。
二、服务器上应该配备的软件
1.操作系统:Microsoft Windows 2012 server 或更高级别的操作系统。
2.数据库:Microsoft SQL Server 2012
3.服务器必须使用专业的防火墙和反病毒软件。
3.4.除了为了运行必须配备的程序以外,服务器上建议尽量不要安装其他无关程序,以减少程序的混乱或者程序的意外冲突。
5.2 用户支持(User Support)
本平台面向的用户是软件学院师生,其软件操作基础扎实,不需要专门培训才能掌握,并且我们的书籍共享平台力求在操作上简洁实用,而用户所需要的硬件设施仅仅为可以上网的计算机或平板电脑及智能手机等。
5.3 需要的外界支持(Outside support)
本系统为独立开发,不需要外单位提供条件。
6.基本预算(Basic budget)
6.1 人员成本(Personnel costs)
由于本项目并不是正式的进行商业运行的项目,而是既作为首次团队开发项目的实战,又是作为完成软件工程作业项目需要,所以人员的费用方面不需要考虑,本项目的团队设立项目经理一名,需求分析、设计编码、测试、美工人员四名。直接人力成本5人。
6.2 设备成本(Equipment costs)
在前期的网站设计过程中,设备成本主要来自组员的个人PC。数据库的设计与运行测试,代码的编写,文档的撰写,美化工作的完成,均在个人的PC机上完成。
后期在网站正式投入运营后,设备成本主要来自租用服务器的费用。
6.3 其他经费预算(Other costs)
在可能进行经费支出的方面,我们都节约成本,例如:在项目初期学习的过程中,学习资料和电子文献的获取,我们充分利用了学校图书馆的丰富资源,并得到了老师的许多节约成本的指点,使得项目的成本接近于无。
7.关键问题(Core issues)
7.1 用户体验(User Experience)
为了提高用户的体验性能及师生间的交流等功能需求,我们精心的设计了网站的各项功能,读书会书籍共享平台利用圈子将导师和学生之间的距离大大缩小,使导师无论在交流课上还是课下,都能够方便地和学生进行交流,学生也可以全天候的随时向老师和圈内同学询问问题,或征集看法。另外,我们定制了图书的热度排行榜及推荐排行榜,使同学们能够更加方便快捷地找到当下的热门书籍,其他导师推荐的书等等。
7.2 个性化定制(Customization)
读书会书籍共享平台在注重师生交流功能的基础上,还为每位同学定制了自己的个人空间,如个性化的读书笔记、学习日志等等,使同学们在读书之后能够真正地有所思,有所获,从书中获得知识。
另外,师生可以通过“我要读”的收藏功能,来建立自己的读书计划,通过圈内分享或个人上传电子书等功能,学生可以体会到与他人分享资源的乐趣。
8.专题计划要点(Thematic elements of the plan)
8.1 项目成员培训计划(Members’ training Plan)
鉴于团队相关成员对网站开发架设技术不熟悉,我们在3月20日至5月10日期间将定期集体技术培训贯穿于整个项目进程,以提高团队开发效率,降低开发风险;
8.2 项目测试计划(Project Test Plan)
2016年5月17日-2016年6月2日对网站项目的进行各项功能的测试工作;
8.3 质量保证计划(Quality Assurance Plan)
严格按照项目开发过程中的各项步骤,从项目立项,可行性研究报告、需求分析报告、项目开发计划等逐步具体实施;
8.4 安全保密计划(Security Plan)
在从项目开发阶段到最后软件的正式发布期间,做好项目的保密工作,小组成员对所有项目所有相关文档进行加密,做好备份工作。
[需求规格说明书]
二.需求分析(uml建模)
1.项目总体
1.1.用例图
用户
1.2.类图
1.3.业务流程图
2.模块拆分
2.1注册登录模块
2.2浏览收藏模块
2.4上传小说模块