软件产品规格说明v文档格式.doc
《软件产品规格说明v文档格式.doc》由会员分享,可在线阅读,更多相关《软件产品规格说明v文档格式.doc(18页珍藏版)》请在冰点文库上搜索。
3需求 3
3.1可执行软件 3
3.2源文件 3
3.3打包需求 3
4合格性规定 3
5软件支持信息 4
5.1“已建成”软件设计 4
5.2编译/建立过程 5
5.3修改过程 7
5.4计算机硬件资源使用 8
6需求的可追踪性 9
7注解 14
1引言
1.1标识
本文档使用与校内易书系统。
系统标识号:
CDIO-校内易书系统-1.0。
标题:
校内易书系统。
缩略词语:
无。
版本号:
1.0。
标识号:
1.2系统概述
本文档适用于校内易书系统。
校内易书系统的用户为普通用户和管理员。
普通用户课利用该系统进行用户注册,个人资料管理,图书检索,发布书籍转让信息,发布书籍需求信息,图书交易等活动。
而管理员主要进行的是用户资料、书籍资料、求购信息、转让信息、订单的管理以及对使用该系统的某些恶意行为进行有效地制止,保证系统的安全和良好的环境。
校内易书系统的开发经过项目需求分析,分析开发可行性,软件、硬件需求,人员需求,组织人员,系统设计,系统编码,系统实现,系统测试等阶段。
软件运行于windows平台下,运用Eclipse、mysql等软件进行开发和维护。
关于系统的维护是由开发方担任。
项目投资方无;
需求方为云南大学;
用户暂为云南大学在校学生,以后可能进行扩展,为其他高校学生服务;
开发方为云南大学软件学院软件工程专业本科生小组;
支持机构是云南大学软件学院2010级软件工程。
有关文档:
《软件工程概论》李彤,王炜,郁湧科学出版社第一版(2012年2月28日)
《校内易书系统--软件需求规格说明书》
《校内易书系统--可行性分析报告》
1.3文档概述
《软件产品规格说明》(SPS)包含或引用可执行软件、源文件、合格性规定以及软件支持的信息。
包括一个计算机软件配置项(CSCI)“已建成”的软件设计、编辑/建立过程、修改过程、计算机硬件资源使用。
最后,还要制定需求的可行性跟踪。
在这个文档中包含了软件建立、编辑、编译、生成及修改的几个阶段,清晰的记录了整个软件开发中对开发的软件所进行的修改。
本文档可由投资方,需方,开发方和支持机构查看。
2引用文件
《软件产品规格说明(GB8567——88)》
《校内易书系统-可行性分析报告-v1.0》文档来源:
开发方编写
《校内易书系统-软件需求规格说明书-v1.0》文档来源:
《校内易书系统-数据库设计说明书-v1.0》文档来源:
3需求
本章应分为以下几条,规定必须满足的需求,以实现软件交付和建立另一软件实体,以使其被认为是该CSCI的一个有效拷贝。
注:
本章将软件自身作为被认为是CSCI的一个有效拷贝软件实体所必须匹配的准则。
被更新的软件设计不作为需求,而被放在第5章,仅作为用于修改、增强或其他支持该软件时所使用的信息。
如果此规格说明的任何部分被置于需方配置的控制之下,只应限于第3章。
建立产品基线的是软件自身,而不是软件的设计说明.
3.1可执行软件
该系统名称为校内易书系统。
校内易书系统是B/S类型的软件,要使用该软件,要求客户端操作系统为WindowsXP及以上版本,需安装IE、Chrome、FireFox等主流浏览器。
使用时,只需进行联网,打开浏览器,输入网址即可。
3.2源文件
本条应通过引用所附的或其他形式提供的电子媒体给出该CSCI的源文件,它应包括重新产生CSCI的可执行软件所需的批处理文件、命令文件、数据文件或其他文件。
为使一软件实体被认为是该CSCI源文件的有效拷贝,它必须精确匹配这些文件。
3.3打包需求
(若有)本条应陈述打包和标记CSCI拷贝的需求。
4合格性规定
校内易书系统中,普通用户的操作主要有用户注册,登录,个人信息管理,上传书籍,图书检索(包括按照书名直接检索,按类名检索,按学院专业年级检索),发布书籍转让信息、书籍求购信息,管理发布信息、求购信息等图书交易功能。
用户注册时,必须按照规定的格式填写用户信息,必填的项不可为空。
若信息填写不正确,会给出提示直到正确为止。
在用户登录界面登录时,如果使用不符规定的用户名及对应的密码时会报错。
如果正确才进入校内易书系统。
普通用户登陆后转到个人主页,在此界面上可以进行个人基本信息的修改,包括昵称、密码、学院、专业、联系方式、地址等等。
在此页面,用户还可查看、修改、删除自己的转让信息、求购信息、订单等。
用户只有登录后才能进行信息的发布、书籍的求购等操作。
若用户发布的转让信息或求购信息或留言中有不文明的词语,可对其进行屏蔽。
上传书籍:
若用户需要的书籍在系统中不存在,用户可自行上传书籍,但必须详细填写书籍的相关信息。
书籍检索:
采用模糊搜索的方式,可按照书名直接检索、按类名检索、按学院专业年级检索等。
在管理员登录界面登录时,如果使用不符规定的用户名及对应的密码时会报错。
管理员登录后可进入管理员主页,进行用户的删除以及管理员信息的修改;
还可以进行书籍的管理,包括书籍的增、删、改、查;
另外,还可进行管理员和用户的管理,包括管理员和用户的添加及密码重置。
管理员也可进行书籍的上传,但同样的,必须详细填写书籍的详细信息。
以上所有操作中,若存在信息格式不正确货内容有争议性,则可使用相应措施进行阻止。
5软件支持信息
5.1“已建成”软件设计
本系统实现校内易书的功能,具体包括用户注册,登录,个人信息管理,图书检索(包括按照书名直接检索,按类名检索,按学院专业年级检索),发布书籍转让信息、书籍求购信息,管理发布信息、求购信息等图书交易功能。
1)用户注册:
用户需要提供电子邮件、密码、学校、专业、手机、宿舍等信息进行注册成为会员,才可以在网站上进行交易。
2)个人资料管理:
用户能修改自己的个人资料,比如修改自己的昵称,手机等等。
3)图书检索:
用户能根据书名、作者、ISBN、出版社等关键字进行检索出相关书籍。
用户能根据学院专业年级进行检索出相关书籍。
用户能根据图书的类别检索出相关书籍。
4)发布书籍转让信息:
点击你要转让书籍下面的“我要转让”,然后登记相应信息,比如:
联系方式,书籍说明,使用时间,新旧程度,图书照片,交易模式等信息,然后自己的书籍转让信息就会出现在书籍详情页面下方。
同时,在未交易成功的前提下,可以对已经发布的信息进行修改。
5)发布书籍需求信息:
当没有搜索到所需要的书籍时,点击“我要购买”,登记自己的相关信息,如联系方式等,没有方便在有人转让该书籍的时候能够及时联系到你。
6)图书交易:
即线下交易,类似于货到付款,由于是同校交易,卖家和买家可以见面交易。
7)订单的管理:
可以管理生成的订单的修改、发货及删除。
校内易书系统后台主要提供的功能:
1)管理员登录及密码修改。
2)书籍的管理,包括书籍的增、删、改、查。
3)管理员和用户的管理,包括管理员和用户的添加及密码重置。
用户接口:
本系统采用广泛应用的WebGUI,即诸如窗口、菜单、对话框、滚动条等。
用户与系统的交互通过用户输入字符,选择菜单或者对话框,然后系统对用户输入的信息进行分析处理。
5.2编译/建立过程
本系统为B/S架构,采用Eclipse进行开发,服务器使用ApacheTomcat7.0,数据库采用MyMySQL5.5。
系统标识号:
专业实训-校内易书系统-1.0。
标题:
缩略词语:
版本号:
标识号:
编译该系统的主机上需要安装IE、Chrome、FireFox等主流浏览器、ApacheTomcat7.0,EclipseforJ2EE,jdk1.7,MyMySQL5.5,并正确配置运行环境。
本系统主要采用的MVC模型。
M指Model,即底层类及一些服务类;
V指View,即视图;
C指Control,即控制。
MVC模型的基本思想为控制器接受用户请求,通过调用底层的服务类处理请求,并将得到的结果返回。
编译的源文件为Book,Book中包含的文件如图1所示,主要有JAX-WSWebService、DeploymentDescription:
Book、JavaResources、JavaScriptResources、build、WebCotent。
其中,JavaResources主要包含的是该系统的后台源代码,即用于功能的实现,包括对象、服务以及控制器‘还包括系统的库;
WebCotent则包含该系统的后台代码,即用于界面的展现。
图1
JavaResources中有两个文件夹,src中为代码,Libraries中为该项目的库。
Src包含四个包,即com.book.controller(控制器)、com.book.model(底层模型)、com.book.test(测试)、com.book.util(公用方法)。
如图2所示。
图2
包com.book.controller中包含的文件有:
AdminBookController.java、AdminBuyInfoController.java、BookController.java、AdminInfoController.java、AdminLoginController.java、UserManageController.java、LoginController.java、AdminSaleInfoController.java、OrderController.java、AdminUploadBookController.java、BuyInfoController.java、UserController.java、RecommendationController.java、RegisterController.java、SaleInfoController.java、SearchController.java、UploadBookController.java、TradeController.java。
包com.book.model包含的文件有:
Admin.java、AdminService.java、Book.java、BookService.java、BuyInfo.java、DBService.java、InfoService.java、Order.java、OrderService.java、User.java、RecommendationService.java、SaleInfo.java、SearchService.java、UserService.java。
包com.book.test包含的文件有TestDB.java。
包com.book.util包含的文件有MD5.java。
WebCotent中主要包含BookPic、css、image以及jsp文件,如图3所示。
BookPic存放的为书籍的图片,image存放的为网页使用的图片。
图3
jsp文件有admin.jsp、adminBuyInfo.jsp、adminChangeBookInfo.jsp、adminInfo.jsp、adminLogin.jsp、adminSaleInfo.jsp、adminUploadBook.jsp、adminUserInfo.jsp、buyInfo.jsp、home.jsp、homeBuyInfo.jsp、homeBuyOrder.jsp、homeChangeBuyInfo.jsp、homeChangeBuyOrder.jsp、adminBookManage.jsp、homeChangeSaleInfo.jsp、homeChangeSaleOrder.jsp、homePassword.jsp、homeSaleChange.jsp、homeSaleInfo.jsp、homeSaleOrder.jsp、homeUserInfo.jsp、Index.jsp、login.jsp、ok.jsp、register.jsp、saleInfo.jsp、search.jsp、trade.jsp、uploadBook.jsp、book.jsp。
数据库名为book。
数据库中一共建立起了11个表,表名分别为、书籍表:
book、转让书籍表:
saleList、求购书籍表:
buyList、订单表:
orderList、管理员表:
admin、学院表:
school、专业表:
major、课程表:
course、书籍和课程的关系表:
courseBook、专业和课程的关系表:
majorCourse、用户表:
user。
建立起完整的数据库后,便可在Eclipse中运行该项目,在浏览器中进行操作。
5.3修改过程
a.修改该系统用到的软件为Eclipse、MySQL5.5以及版本管理工具SubVersion。
修改时,只需打开要修改的程序,然后进行代码的修改,修改完成后,需上传至服务器,以便系统的版本随时保持最新。
b.CSCI所使用的数据库数据库名为book。
要修改数据库表时,需用到MySQL5.5。
有两种方法可以对表进行修改:
一种是直接使用SQL语句进行修改;
另一种方法为右击要修改的表名,选择EditTable,然后进行相应的修改,包括表属性的修改以及表中数据的修改。
c.在对数据表进行修改时不可对其中的默认值进行修改,以免发生数据修改后系统某些功能无法使用;
此外对表属性也不可随意更改,以防牵一发而动全身,导致系统无法正常运行。
在对源代码进行修改时应遵循源代码结构,在不破坏源代码结构的情况下可在其中加入期望的功能;
此外,不可随意更改底层的服务类和构造类,以免影响大局。
d.集成时,若出现错误,则可使用集成测试的方法来缩小错误范围,得到错误原因,不能只凭个人经验修改,以免造成更大的错误;
系统测试时,若发现bug,不应急躁的马上修改,而是要先分析一下如果这个bug被修复,会不会曹成更大的缺陷,要懂得衡量得失。
5.4计算机硬件资源使用
a.本系统运行时所占用的最少可使用硬件资源能力百分比如下:
前台:
百分比
Admin.jsp管理员中心0.1%
adminBuyInfo.jsp管理员管理求购信息页面0.1%
adminChangeBookInfo.jsp管理员修改书籍信息页面0.1%
adminInfo.jsp管理员信息管理页面0.1%
adminLogin.jsp管理员登陆页面0.1%
adminSaleInfo.jsp管理员管理求购信息页面0.1%
adminUploadBook.jsp管理员上传书籍页面0.1%
adminUserInfo.jsp管理员管理用户信息页面0.1%
Book.jsp书籍详情页0.1%
buyInfo.jsp发布求购信息页面0.1%
Home.jsp个人中心0.1%
homeBuyInfo.jsp用户求购信息页面0.1%
homeBuyOrder.jsp用户购买订单页面0.1%
homeChangeBuyInfo.jsp用户修改求购信息页面0.1%
homeChangeBuyOrder.jsp用户修改购买订单页面0.1%
adminBookManage.jsp管理员管理书籍信息页面0.1%
homeChangeSaleInfo.jsp用户修改求购信息页面0.1%
homeChangeSaleOrder.jsp用户修改出售订单页面0.1%
homePassword.jsp用户修改密码页面0.1%
homeSaleChange.jsp用户修改转让信息页面0.1%
homeSaleInfo.jsp用户转让信息列表页面0.1%
homeSaleOrder.jsp用户出售订单页面0.1%
homeUserInfo.jsp用户信息页面0.1%
Index.jsp网站首页0.1%
Login.jsp用户登录页面0.1%
Ok.jsp提交成功页面0.1%
Register.jsp用户注册页面0.1%
saleInfo.jsp发布转让信息页面0.1%
Search.jsp书籍搜索页面0.1%
Trade.jsp交易页面0.1%
uploadBook.jsp用户上传书籍页面0.1%
后台:
Admin.java管理员类0.1%
AdminService.java管理员服务类0.1%
Book.java书籍类0.1%
BookService.java书籍服务类0.1%
BuyInfo.java求购信息类0.1%
DBService.java数据库服务类0.1%
InfoService.java信息服务类0.1%
Order.java订单类0.1%
OrderService.java订单服务类0.1%
User.java用户类0.1%
RecommendationService.java书籍推荐服务类0.1%
SaleInfo.java转让信息类0.1%
SearchService.java书籍搜索服务类0.1%
UserService.java用户服务类0.1%
MD5.java密码MD5加密类0.1%
AdminBookController.java书籍信息管理控制器0.2%
AdminBuyInfoController.java管理员管理求购信息控制0.2%
BookController.java书籍控制器0.2%
AdminInfoController.java管理员信息管理控制器0.2%
AdminLoginController.java管