软件产品规格说明SPS.docx
《软件产品规格说明SPS.docx》由会员分享,可在线阅读,更多相关《软件产品规格说明SPS.docx(20页珍藏版)》请在冰点文库上搜索。
软件产品规格说明SPS
CDIO实践报告封面格式(不包括本行)
国家人才培养模式创新实验区、国家精品课程、云南省教学团队、云南大学软件学院教育创新基金(编号:
2010EI03)联合资助项目
报告名称
姓名:
李鸿明,王崇宇,金隆,宋晓曾,王显红,万贵兴,袁旭,晏祥锦
学号:
252,231,197,262,185,240,274,204
专业:
软件工程
*******************************
**********************************
编制时间:
2010-11-1
成绩:
云南大学软件学院
2010年6月制表
要求
按照软件工程的基本原理,实施相关项目。
提倡团队精神和团队合作,鼓励组成项目小组(每组5-10人)。
小组提交的报告中必须严格注明各人自己的工作。
评价给分按照个人的工作质量和数量确定。
报告中未标明具体是谁完成的部分,不予认定是谁的工作成果,也不在评分中发挥作用。
对于多人合作、共同讨论、相互提出意见和建议、项目负责人协调等较难具体确定是谁的工作成果的情况,也应附一段说明,实事求是地写明具体情况,以及个人所起的作用(如参与了什么讨论、提出了何种意见等)。
但不能笼统,否则不予认定工作成果。
对于相互测试,不可认为属于上述情况,而应该具体注明谁测试了哪个模块,即使该模块不是他/她开发的。
由于项目较大,不能按期完成的,应合理选择其中的部分子系统加以完成,不可以此为理由,拖延交稿时间。
报告需提交书面版本(源代码除外)和电子版本(全部装在软盘或光盘中),截稿时间为2011年1月8日,由学习委员收齐后交任课老师,请自留底稿。
报告的撰写应严格按照中华人民共和国国家标准《GB/T8567-2006计算机软件文档编制规范》规定的格式要求。
每个项目都必须经历CDIO四个阶段:
(1)构思性实践(C):
通过加深学生对软件工程生命周期、软件开发模型、软件过程模型等基本概念的理解,构思自己要研发的项目。
其主要形式是提供学生多个实际软件案例,每组挑选一个案例进行分析、思考并讨论案例中软件生命周期、开发模型、软件过程等概念如何体现,形成对软件开发的基本感性认识,加深对软件工程基本分析和设计方法的理解。
接着,学生要确定一个研发项目,并开始进行项目的构思和可行性研究。
构思性实践对应于CDIO教育思想的Conceive(构思)。
按照国标完成《可行性分析(研究)报告(FAR)》、《软件需求规格说明(SRS)》。
(2)设计性实践(D):
要求学生使用面向对象方法,完成软件系统的设计。
通过实践,使学生掌握面向对象软件工程的基本原理、方法、技术、工具,并能够实际应用。
设计性实践对应于CDIO教育思想的Design(设计)。
按照国标完成《软件(结构)设计说明(SDD)》。
(3)实现性实践(I):
将设计结果加以完全实现,着力培养学生的务实精神、工程能力和团队精神。
实现性实践对应于CDIO教育思想的Implement(实现)。
按照国标完成《软件测试报告(STR)》、《软件产品规格说明(SPS)》,以及全部源代码。
(4)运作性实践(O):
每一个小组对所开发出的系统进行实际应用,并建立相应的应用、营销和服务渠道。
实在难以实际应用的要求建立模拟应用环境,实施模拟应用。
运作性实践是四层实践中最难的部分,其主要目的是让学生了解市场,培养学生的务实精神和实际工作能力。
运作性实践对应于CDIO教育思想的Operate(运作)。
完成《软件产品运作总结》(国标无,格式自行设定)。
(5)项目验收、点评。
学生进行答辩,教师对结果进行点评、打分。
成绩评定方式
(1)作业(非实验性传统作业)与课堂表现占10%。
(2)期中闭卷考试占20%。
(3)CDIO实践成绩占70%(按100分计算):
•构思(即C,20%);
•设计(即D,20%);
•实现(即I,20%);
•运作(即O,20%);
•文字表达及文档制作水平(10%);
•报告质量及口头表达能力(10%)。
软件产品规格说明(SPS)
1引言
标示
本文档适用于SE银行系统,包括储蓄业务、系统管理两个子系统。
系统标识号:
标题:
SE系统。
缩略词语:
SE。
版本号:
。
发行号:
。
系统概述
本文档适用于SE银行系统,包括储蓄业务、系统管理两个子系统。
SE银行系统用于管
理银行储蓄业务和银行的系统管理。
1.储蓄业务:
银行开展人民币与外币的储蓄业务,各币种储蓄的本金和利息均以相应的币种来支付,可办理的外币有美元、港币、日元和欧元。
所有储蓄业务都通过一卡通进行操作,不再使用传统的存折和存单。
一卡通是一张多币种、多储种的银行借记卡,储蓄种类分为活期和整存整取定期储蓄两种。
利用一卡通,银行客户可以进行存款、取款和转帐等储蓄操作。
2.系统管理:
系统管理分为三部分:
普通用户的功能和系统管理员执行的用户管理、修改核心数据。
普通用户可以执行的功能是用户登录、修改密码和浏览本人信息。
用户管理部分包括创建、删除、修改和查询用户等功能。
银行系统的用户号一律用工号来表示,工号为5位数字,首位数字代表所属部门,其它4位是顺序号。
用户密码的长度最少8位,最多16位,密码必须同时包括字母、数字以及其他字符,不能含有工号。
密码三个月内至少修改一次,每次修改的密码不能与前三次密码相同。
修改核心数据部分包括添加、删除和查询修改计划,以及恢复修改等功能。
银行系统现有的核心数据主要有:
各类储蓄、贷款的利率;信用卡利息及预借现金手续费;各种外汇之间的市场汇率以及银行各档次交易价格。
所有核心数据都可以根据需要由系统管理员修改,系统管理员可以设定一个修改计划,并指定其执行时间(精确到分)。
在计划运行之前系统管理员可以随时取消该计划。
系统中不能同时有两个尚未执行的计划。
系统管理员可以查询所有修改计划,包括已经执行的和尚未执行的,并可以随时将系统数据恢复到某一个计划执行之前的状态。
SE银行系统开发经过项目需求分析,分析SE银行系统的开发可行性,软件、硬件需求,经费需求和人员需求,筹备资金设备,组织人员等。
软件运行于windows平台下,运用java、mysql等软件进行开发和维护。
SE银行系统项目投资方:
云南大学CDIO项目基金。
需求方:
银行系统。
用户:
广大储户。
开发方:
云南大学软件学院08级CDIO项目小组。
支持机构:
云南大学软件学院08级CDIO项目小组。
当前计划:
分析项目可行性,撰写软件规格需求,设计软件结构。
有关文档:
《数据结构(C语言版)》清华大学出版社;
《数据库》高等教育出版社;
《JAVA核心技术》机械工业出版社;
《软件工程》机械工业出版社;
文档概述
《软件产品规格说明》(SPS)包含或引用可执行软件、源文件、合格性规定以及软件支持的信息。
包括一个计算机软件配置项(CSCI)“已建成”的软件设计、编辑/建立过程、修改过程、计算机硬件资源使用。
最后,还要制定需求的可行性跟踪。
在这个文档中包含了软件建立、编辑、编译、生成及修改的几个阶段,清晰的记录了整个软件开发中对开发的软件所进行的修改。
本文档可由投资方,需方,开发方和支持机构查看。
2.引用文件
SE银行系统介绍文档;
软件需求规格说明(SRS);
软件(结构)设计说明)(SDD);
《数据结构(C语言版)》清华大学出版社;
《数据库》高等教育出版社;
《JAVA核心技术》机械工业出版社;
《软件工程》机械工业出版社;
3.需求
3.1可执行软件
本软件名称为SEBankSystem。
本软件是一个基于的一个项目包SEBankSystem,项目包名为要用来导入。
在导入后,需要用连接数据库MySQL,在MySQL中主要保存了一些主要的数据表。
并且需要在数据库中添加一个系统管理员才进入SEBankSystem,这样就可以使用来运行SEBankSystem。
3.2源文件
源文件为SEBankSystem包、数据库中的数据表及初始化语句,在下面会一一列出。
1.SEBankSystem包:
在SEBankSystem包中,需要确认的是在这个包中的源包文件夹下必须具备以下四个文件夹:
bank、bankManage、Database、se。
在bank文件夹下面必须确认以下Java源文件的存在:
,,,,,,,,,,,,,,。
在bankManage文件夹下面必须确认以下Java源文件的存在:
,,User,。
在Database文件夹下面必须确认以下Java源文件的存在:
。
在se文件夹下面有bankgui1和bankgui3两个文件夹。
在这两个文件夹中都含有Java源文件及form文件,我们必须一一确认。
在bankgui1文件夹下面必须确认如下文件:
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,;。
在bankgui3文件夹下面必须确认如下文件:
,,,系统管理.java,系统管理.form,修改核心数据.java,修改核心数据.form。
2.数据库中的表格
我们把数据表建立在test文件夹下面,数据表包括:
Bank,byktijl,createuserrecord,deleteuserrecord,gsjl,hqllb,khkhjl,khxx,khzhb,modifypassrecord,othersllb,password,rmbcbqx,rmbcxjyjl,rmbdhlb,rmbhqcx,rmblczq,rmbqkjyjl,rmbzclq,rmbzczq,user,userinfo,wbcxjyjl,webhqcx,wbqkjyjl,wbzczq,wbzzjl,xgmmjl,zczqllb,zxyktjl,zxzhjl,zzjl。
3.初始化语句
在数据库表中执行下面语句:
INSERTINTO(`调整时间`,`一年`,`三年`,`五年`)VALUES('2010-12-01',,,;
INSERTINTO(`调整时间`,`年利率`)VALUES('2010-12-01',;
INSERTINTO(`调整时间`,`三个月`,`六个月`,`一年`,`二年`,`三年`,`五年`)VALUES('2010-12-01',,,,,,;
INSERTINTO(`银行编号`,`银行名称`,`地址`,`联系电话`,`邮编`)VALUES('000001','SE银行','云南大学','','675000');
INSERTINTOtest.`user`(`用户工号`,`密码`,`身份证号`,`用户类型`)VALUES('00001','','532925','a');
INSERTINTO(`身份证号`,`姓名`,`性别`,`学历`,`民族`,`地址`,`联系电话`)VALUES('532925','李鸿明','男','本科','汉','云南省昆明市云南大学呈贡校区楸苑','');
即可运行SE银行系统。
4.合格性规定
在用户登录界面登录时,如果使用不符规定的帐号、对应的密码及对应的账户类型时会报错。
如果正确才进入SE银行系统。
当使用指定的系统管理员登录系统时,必须显示系统的子系统界面,这个界面中包括两个按钮“储蓄业务”及“银行系统管理”。
系统管理员可以进入“银行系统管理”进行添加、修改、删除系统中的用户(普通用户、系统管理员、数据库管理员、行长);这些基本信息包括:
帐号、用户类型、姓名、身份证号、性别、学历、民族、联系电话、地址、用户工号、密码等等。
在这个界面下必须显示员工列表:
这个银行里面所有普通用户、系统管理员、数据库管理员及行长的基本信息;基本信息包括:
帐号、用户类型、姓名、身份证号、性别、学历、民族、联系电话、地址。
普通用户可以进入“银行系统管理”查看用户的基本信息及修改密码。
用户基本信息包括:
帐号、用户类型、姓名、身份证号、性别、学历、民族、联系电话、地址。
修改密码:
普通用户可以在这个界面进行密码的修改。
在储蓄业务下面主要包括:
人民币储蓄、外币储蓄、查询余额、修改密码、取款、转账、销户、开户、挂失补办。
开户:
普通用户及管理员可以在这里创建账户。
所需填写的基本信息如下:
姓名、身份证号码、性别、地址、联系电话、卡号、密码(输入两次)、操作员号码(系统管理员号码或普通用户号码)。
当填写完信息之后就可以点击确定来表示新的账户已经添加成功。
销户:
撤销一卡通卡号。
首先要对帐号及密码的确认。
再次身份证号码的确认及操作员号码的确认。
最后点击确认进行销户
取款:
进行卡号及密码验证。
首先他会列出这张卡下面的存储帐号及这个帐号存储类型、账户余额、币种及开户时间。
下面就是取款所要填写的一些内容:
取款帐号(即存储帐号)、取款金额、操作员号码;点击确定就可以取款了。
当这个操作结束后会显示实际取款余额。
转账:
进行卡号及密码验证。
首先他会列出这张卡下面的存储帐号及这个帐号的存储类型、账户余额、币种及开户时间。
下面转账所需填写的一些内容:
转出账户、转账金额、目标账户类型选择(活期存储账户、信用卡账户)、币种(人民币、美元、欧元、英镑、日元、港币、法郎、澳大利亚元、加拿大元、新加坡元)选择、目标账户客户姓名、目标账户卡号、业务员编号。
点击确定就可以转账了。
查询余额:
首先进行卡号及密码验证。
他会列出这张卡下面的存储帐号及这个帐号的存储类型、账户余额、币种及开户时间。
修改密码:
进行卡号及密码验证。
接着他会提示你输入新的密码,还有重复输入你的新密码即可。
挂失补办:
输入身份证号码就可以进行挂失、补办及取消挂失。
人民币储蓄:
首先要验证客户的卡号及密码上面会出现现有账户的信息人民币储蓄包括:
活期储蓄存款、零存整取定期存款、整存零取定期储蓄存款、整存整取定期储蓄存款、存本取息定期储蓄存款、定活两便储蓄存款。
活期存储:
首先他会列出这张卡下面的存储帐号及这个帐号存储类型、账户余额、币种及开户时间。
下面就是一些需要客户所需要填写的一些信息:
存储金额、存储到的存储帐号、操作员的号码,点击确定即可存款。
零存整取定期储蓄存储:
首先他会列出这张卡下面的存储帐号及这个帐号存储类型、账户余额、币种及开户时间。
下面就是一些需要客户所需要填写的一些信息:
输入存储帐号、输入月存储金额、存储时间长度(一年、三年、五年)、到期转账类型选择、操作员号码。
点击确定即可存款。
整存零取定期储蓄存储:
首先他会列出这张卡下面的存储帐号及这个帐号存储类型、账户余额、币种及开户时间。
下面就是一些需要客户所需要填写的一些信息:
输入存储帐号、存储金额、存储时间长度选择(一年、三年、五年)、到期转存类型选择、取款间隔时间、操作员号码。
点击确定即可存款。
整存整取定期储蓄存储:
首先他会列出这张卡下面的存储帐号及这个帐号存储类型、账户余额、币种及开户时间。
下面就是一些需要客户所需要填写的一些信息:
输入存储帐号、储蓄金额(50元起)、存储时间选择(三个月、六个月、一年、两年、三年、五年)、到期转存类型选择、操作员号码。
点击确定即可存款。
存本取息定期储蓄存储:
首先他会列出这张卡下面的存储帐号及这个帐号存储类型、账户余额、币种及开户时间。
下面就是一些需要客户所需要填写的一些信息:
输入存储帐号、存储金额、存储时间长度选择(一年、三年、五年)、取息时间长度、到期转存类型选择、操作员号码。
点击确定即可存款。
定活两便储蓄存储:
首先他会列出这张卡下面的存储帐号及这个帐号存储类型、账户余额、币种及开户时间。
下面就是一些需要客户所需要填写的一些信息:
存储帐号、存储金额、操作员号码。
点击确定即可存款。
外币存储:
首先他会验证你的客户号。
再次他会列出这张卡下面的存储帐号及这个帐号存储类型、账户余额、币种及开户时间。
外币存储包括外币活期存储和外币整存整取定期存储。
外币活期存储:
首先他会列出这张卡下面的存储帐号及这个帐号存储类型、账户余额、币种及开户时间。
下面就是一些需要客户所需要填写的一些信息:
存储帐号、存储金额、存储币种(美元、欧元、英镑、日元、港币、法郎、澳大利亚元、加拿大元、新加坡元)、账户类型(现钞账户、现汇账户)、账户是否需要转换(是、否)、业务员编号。
外币整存整取定期存储:
首先他会列出这张卡下面的存储帐号及这个帐号存储类型、账户余额、币种及开户时间。
下面就是一些需要客户所需要填写的一些信息:
存储账户、存储金额、存期选择(三个月、六个月、一年、两年、三年、五年)、币种(美元、欧元、英镑、日元、港币、法郎、澳大利亚元、加拿大元、新加坡元)、账户类型(现钞账户、现汇账户)、账户是否需要转换(是、否)、到期转存类型(活期存储、整存整取定期存储)、业务员编号。
在以上这些操作中,如果有不符合规定来填写信息的、帐号及密码的长度要求的系统自动产生报错提示。
5软件支持信息
5.1“已建成”软件设计
储蓄业务可分为活期储蓄、整存整取定期储蓄、零存整取定期储蓄存款、存本取息定期储蓄存款、整存零取定期储蓄存款、定活两便储蓄存款。
活期储蓄:
无固定存期、可随时存取、存款金额不限的一种灵活的储蓄方式,人民币1元起存,外币起存为不低于1美元的等值外币。
整存整取定期储蓄:
整存整取是客户选择存期,整笔存入,到期支取本息的储蓄方式。
人民币、港币50元起存,日元1000元起存,其他币种为原币种10元。
人民币存期可选择三个月、六个月、一年、二年、三年和五年,外币存期可选一个月、三个月、六个月、一年、二年。
存款未到期可以部分提前支取一次,但提前支取部分按当日挂牌活期存款利率计息,未支取部分仍按原利率计息。
零存整取定期储蓄存款:
零存整取是事先约定金额,逐月按约定金额存入,到期支取本息的定期储蓄方式。
约定金额人民币5元起。
存期可选一年、三年和五年。
中途如有漏存,应在次月补存,未补存者视为违约,违约后将不在接受客户续存及补存。
到期支取是按实际存款金额和实际存期计算利息。
存本取息定期储蓄存款:
存本取息是一次性存入本金,分次支取利息,到期支取本金的定期储蓄方式。
人民币5000元起存。
存期可选一年、三年和五年。
利息可以一个月或几个月取一次,具体的由客户和银行协商决定。
如到期未取息,以后可以随时取息,但不计算复息。
如果客户要提前支取本金,则按当日挂牌活期存款利率计算存期内利息。
整存零取定期储蓄存款:
整存零取是实现约定存期,整笔金额一次存入,分期平均支取本金,到期支取利息的定期储蓄方式。
人民币1000元起存。
存期可选一年、三年和五年。
支取时间间隔可选一个月、三个月和半年。
定活两便储蓄存款:
定活两便是事先约定存期,一次性存入,一次性支取的储蓄存款。
人民币50元起存。
存期超过整存整取定期储蓄档次且在一年以内的,分别按同档次整存整取定期储蓄利率打六折计息;存期超过一年(含一年)的,一律按一年整存整取定期储蓄利率打六折计息;存期低于整存整取定期储蓄最低档次的,按活期利率计息。
转帐:
客户可以从本人的活期账户中向其他活期账户进行转帐,须提供对方姓名和帐号,不收取任何手续费。
转帐是将所转出金额的存期内利息发给客户,不转入转入帐号。
系统管理:
系统管理员可以创建、修改、删除用户。
客户只能查看余额和修改密码。
用户完成客户所需要的各项储蓄操作。
5.2编译/建立过程
本系统采用netBeans下带有的java编译器进行编译:
本系统标识号:
标题:
SE系统。
缩略词语:
SE。
版本号:
。
发行号:
。
在编译的主机上须安装文件或更高版本的jdk和msql数据库,并正确配置编译环境。
编译的源文件为SEBankSystem包,并具备以下四个文件夹:
bank、bankManage、Database、se。
Bank文件夹中需要如下文件:
,,,,,,,,,,,,,,
bankManage中需要如下文件:
,,User,;
Database文件夹需要如下文件:
文件夹需要如下文件:
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
文件夹需要如下文件:
,,
所需数据库如下:
Bank,byktijl,createuserrecord,deleteuserrecord,gsjl,hqllb,khkhjl,khxx,khzhb,modifypassrecord,othersllb,password,rmbcbqx,rmbcxjyjl,rmbdhlb,rmbhqcx,rmblczq,rmbqkjyjl,rmbzclq,rmbzczq,user,userinfo,wbcxjyjl,webhqcx,wbqkjyjl,wbzczq,wbzzjl,xgmmjl,zczqllb,zxyktjl,zxzhjl,zzjl
建立起完整的数据库后可netbeans的Java环境下编译本系统,并执行本系统所支持的功能。
5.3修改过程
a.修改用到的工具有netbeans、msql,可能用到的有可视化管理工具、navictatformasql数据库管理工具。
b.CSCI所使用的数据库为msql,对应的数据库表如下:
Bank,byktijl,createuserrecord,deleteuserrecord,gsjl,hqllb,khkhjl,khxx,khzhb,modifypassrecord,othersllb,password,rmbcbqx,rmbcxjyjl,rmbdhlb,rmbhqcx,rmblczq,rmbqkjyjl,rmbzclq,rmbzczq,user,userinfo,wbcxjyjl,webhqcx,wbqkjyjl,wbzczq,wbzzjl,xgmmjl,zczqllb,zxyktjl,zxzhjl,zzjl
在进行其中的表属性修改时可打开navicatformasql链接数据库test,然后找到对应的数据表右键选择designtable,打开表属性进行修改。
对其中数据进行修改是选择打开表,可对其中的数据进行修改。
c.在对数据表进行修改时不可对其中的默认值进行修改,以免发生应数据修改后系统某些功能无法使用,对表属性也不可随意更改,以防牵一发而动全身,导致系统无法正常运行。
d.在对源代码进行修改时应遵循源代码结构,在不破坏源代码结构的情况下可在其中加入期望的功能。
5.4计算机硬件资源使用
a.本系统运行时所占用的最少可使用硬件资源能力百分比如下:
CSCI硬件占有率
1.界面:
客户账户验证对话框类:
%
存储界面类:
%
外币储蓄界面类:
%
人民币储蓄界面类:
%
取款界面类:
%
转账界面类:
%
开户界面类:
%
销户界面类:
%
修改密码界面类:
%
挂失补办界面类:
%
主界面类:
%
用户登录界面类:
%
系统管理界面类:
%
2.核心操作
银行类:
%
开户类:
%
客户账户类:
%
外币出席类:
%
挂失补办类:
%
交易类:
%
取款类:
%
人民币储蓄类:
%
客户类:
%
销户类:
%
修改账户信息类:
%
转账类:
%
b.假设在内存可硬盘等比较小的情况下,运行本系统所需的最小硬件资源如下:
处理器:
20%
内存:
20%
硬盘:
5%
c.计算机内存至少为512M,硬盘大于40G,处理器为奔腾4以上,操作系统window2000、windowsxp、Vi