1、 软件需求规格说明书项目名称 院 系 专 业 班 级 学 号 姓 名 指导老师 目录1引言31.1目标31.2文档约定31.3预期读者和阅读提议31.4产品范围41.5参考文件42综合描述52.1产品前景52.2产品功效52.3用户类和特征62.4运行环境72.5设计和实现限制72.6假设和依靠73.外部接口需求83.1用户界面83.2硬件接口93.3软件接口93.4通信接口94.系统特征104.1说明和优先级104.2激励/响应序列104.3功效需求105其它非功效需求125.1性能需求125.2安全设施需求135.3安全性需求135.4软件质量属性145.5业务规则145.6用户文档146
2、.其它需求14附录A:词汇表15附录B:分析模型15附录C:待确定问题列表181引言1.1目标本说明书用于明确要开发软件具体需求,规范描述出软件需要实现多种功效和所要达成性能,使用户和软件开发者双方对该软件初始要求有一个共同了解,并使之成为整个开发工作基础。1.2文档约定本软件需求规格说明书讲遵照IEEE 830标准改写并扩充模板编写,实际改写和扩充将依据项目标需求,模板中某一特定部分可能不适适用于此项目,约定做法是在原处保留标题,并注明该项不适用分一、二、三级标题和正文。正文字体小四宋体,一、二、三级标题分别为黑体三号,四号,小四号。1.3预期读者和阅读提议用户:假如用户为用户,提议只需要阅
3、读文档第二部分,即游客用户只需了解或知道产品情况,产品功效,产品运行需要手持设备环境和操作方法即可。假如用户是管理员,提议除上述片段尚需阅读用户类和特征这一章节而且需要阅读相关产品在服务器端系统使用步骤。开发人员:开发人员需要严格认真阅读文档全部内容,尤其是在用户界面,硬件接口,软件接口,通讯接口和系统功效需求模块及性能需求,安全方法需求,安全性需求,软件质量属性模块。项目经理:通篇阅读此文档,并对文档模糊不清或有歧义地方进行固定修正或批注营销人员:阅读产品功效模块,产品范围和本文档所包含待开发软件和市场上同类产品优点,和产品运行所需要手持设备坏境。测试人员:通篇阅读此文档尤其是在系统需求,用
4、户界面,硬件接口,软件接口,通讯接口,并和开发人员保持一定沟通,并对文档部分内容进行讨论。文档编写入员:通篇阅读此文档,检验文档用词用语是否符合规范,并对文档中可能出现歧义部分进行注释,即使这个可能性很小。1.4产品范围本ATM系统并不是针对某一个具体银行设计而开发,她适适用于现在市面上大多数银行,现在,信用卡用户越来越多,假如还是全部全部经过柜台去办理业务,一旦某个时间段用户过多,那么银行工作人员工作量将会大量增加,而且,用户会很浪费时间,柜台办理业务缺点是,一旦用户多了时候,极难确保工作人员质量,难免会为银行和用户带来一定损失。另外工作效率也太低。此系统投入使用,将改变银行部分管理和操作模
5、式 ,加紧用户办理效率,减轻工作人员工作强度,极大程度上提升了工作人员工作效率,缩短了用户等候时间。1.5参考文件软件需求工程 毋国庆 机械工业出版社软件工程导论 张海藩 清华大学出版社UML实用基础教程 赵春刚 北京大学出版社2综合描述2.1产品前景伴随社会日新月异,计算机已成为大家生活中必不可少一部分,经过计算机编程能够实现很多便利,为大家提供方便。当今社会货币交易日趋频繁,不管何种活动全部或多或少和货币相关,小到大家购物、出行,大到国际贸易等,如此货币存取灵活度成了迫在眉睫要处理问题。 基于此本课程设计小组首次提出ATM存取款一体机概念,ATM是Automatic Teller Mach
6、ine缩写,意思是自动柜员机,因大部分用于取款,又称自动取款机。它是一个高度精密机电一体化装置,利用磁性代码卡或智能卡实现金融交易自助服务,替换银行柜面人员工作。持卡人能够使用储蓄卡,依据密码办理自动取款、查询余额、转账、现金存款,更改密码,打印凭条等业务。(1) 所提议开发软件系统名称:ATM存取款一体机(2) 项目标任务提出者: (3) 开发者: (4) 用户:持有对应银行卡群众(5) 实现该软件计算中心:对应银行网络系统(6)该软件系统同其它系统或其它机构基础相互来往关系:独立于其它系统2.2产品功效因为将在需求分析汇报第4部分中具体描述软件产品功效,所以在此只需要概略地总结。这个项目标
7、开发是为银行提供一套高效稳定可靠终端服务平台,为储户登录,存款,取款,查询,打印凭条等操作提供便利,尤其是在ATM机出现故障情况下,提供了故障恢复功效。图1 ATM工作步骤2.3用户类和特征本软件用户关键是银行广大持卡人,大多全部含有使用ATM经验。另外,我们系统要实现一个关键目标就是当储户取钱出现故障时能在下笔业务进行之前自动恢复。以此来方便用户和保障用户利益。本系统还为用户提供了足够界面友好性和易操作性。即使是一个对ATM系统完全陌生用户,也能够在交易界面提醒下顺利完成交易。另外一部分用户是银行工作人员,本系统不予考虑。2.4运行环境(1)适适用于Windows系列中多个操作系统,如Win
8、dows XP、 Windows 7、Windows 8等;(2)为以后增加支持数据库留下接口,方便以后系统扩展。(3)编译程序:Sun JDK1.5或更高版本操作系统(4)开发语言:Java 编译程序:Sun JDK1.5 开发工具:Dreamweaver 8.0 数据库:SQL Server (5)系统基于B/S架构进行开发,全部管理和维护工作均集中在服务器端,用户机只需安装有IE浏览器即可,要求IE浏览器版本不低于5.5。(6)CPU:1GHz以上。 RAM:256M以上。 存放容量:剩下存放容量大于100M2.5设计和实现限制(1)提议开发软件运行最短寿命:十年。(2)经费起源和使用限
9、制:中国建设银行投资。(3)法律和政策方面限制:包含法律法规应向律师进行具体咨询以免侵害用户和其它人利益。(4)硬件、软件、运行环境和开发环境条件和限制:ATM柜员机终端设备,地域服务器、中央服务器、数据库服务器(多个分散)。(5)可利用信息和资源:现有简易ATM机实现原理、银行工作人员手工操作业务步骤。(6)提议开发软件投入使用最迟时间:测试30天后。软件设计时条件和限制:软件设计应该表现层次结构,巧妙地利用各个软件之间控制关系,设计应该是模块化。小组组员应对软件开发步骤基础了解而且充足调研后开始编辑文档,同时要掌握JAVA语言及数据库相关知识以备后续实现。项目进行中注意时间控制和资金合理分
10、配。2.6假设和依靠不足之处:因为本小组知识范围所限,软件开发经验严重不足,对可视化开化工具和数据库管理工具还处于学习阶段,所以对系统开发进度和系统功效实现程度较难控制。已含有条件:1、小组组员交流比较方便,而且共同写作,主动进取。2、实现系统所需资料准备得较齐全。尚需补充条件:1、提升开发人员编程能力和对软件工程思想认识;2、立即掌握JAVA和SQL使用方法和相互连接。3.外部接口需求经过本节描述能够确定,确保软件产品能和外部组件正确连接需求。关联图仅能表示高层抽象外部接口,必需对接口数据和外部组件进行具体描述,而且写入数据定义中。假如产品不一样部分有不一样外部接口,那么应该把这些外部接口全
11、部具体需求并入到这一部分实例中。3.1用户界面本软件用户界面要求简练、友好,采取用户熟悉Windows窗口菜单操作,且菜单操作简单易懂,菜单命令可用快捷键激活,输入输出时间应使用户不感到显著时间延迟。ATM自动取款机登录界面,系统提醒输入密码,假如输入密码正确,按确定键进入系统主界面,假如输入密码有误,按更正键,重新输入密码。ATM主界面,按对应功效键能够完成对应操作。ATM自动取款机取款界面,假如所要取金额数界面上有,则按对应金额选项,假如没有,则手动输入所取金额数。 转账界面,首先系统提醒输入转账账户,按确定键进入下一界面。假如显示户名是你所要转账用户,按确定键,则转账成功。 修改密码界面
12、,系统提醒先输入旧密码,然后输入要修改新密码,再次确定新密码,两次输入新密码一样,按确定键,则修改密码成功。假如两次输入密码不一样,则系统提醒密码输入有错误,请重新输入。存款界面,系统提醒输入用户账号,为了安全再次输入用户账号,假如两次输入账号一样,按确定键进入下一界面。该界面提醒用户往取款机里放入存款,放入存款数是100整数倍。3.2硬件接口ATM机:自动取款系统需要经过经过加密保护专线和ATM机相连接。点钞机:自动取款系统需要经过经过加密保护专线和点钞机进行连接。后台服务器:自动取款系统需要经过经过加密保护专线和后台服务器进行连接。3.3软件接口这个自动取款系统需要和银行主系统进行交互,来
13、完成多种用户做出指令,我们在ATM取款系统中任何一个命令全部要在主系统中对我们账户信息进行修改,所以银行主系统就是我们这个系统所要连接软件接口。3.4通信接口CI-1“ATM自动取款系统”能够提醒主系统将向用户预留电话号码发送消息,以通知此卡消费情况。4.系统特征4.1说明和优先级4.2激励/响应序列4.3功效需求(1)描述:ATM终端无人操作时,显示待机动画输入:无处理:ATM显示待机界面输出:显示待机界面 (2)描述:校验密码是否格式正确输入:储户输入密码处理:校验密码是否符合格式输出:不正确则提醒储户重新输入(3)描述:校验密码是否正确输入:储户输入正确格式密码处理:校验目前密码和存放账
14、户密码是否一致输出:不一致则提醒密码错误,请重新输入或退出程序(4)描述:储户密码连续三次输入错误,退出程序输入:储户连续第三次输入密码处理:校验密码输出:错误则退出程序,提醒“您连续三次密码错误,程序退出。”(5)描述:密码认证完成,进入主交易界面输入:储户输入正确密码处理:校验密码输出:显示主交易界面(6)描述:ATM现金不足,系统应对取款储户进行提醒,可退出交易输入:无处理:检验ATM现金数输出:返回至ATM主交易界面(7)描述:ATM凭条打印机故障,系统应对存款和转账储户进行提醒,可退出交易输入:无处理:检验ATM凭条打印机输出:故障则提醒用户是否继续,可返回至主交易界面(8)描述:A
15、TM检验存款钞币数量输入:认证成功完成,输入需要存放金额处理:硬件检验钞币数量,提醒用户确定,储户输入“否”输出:退出钞币,返回主界面(9)描述:ATM存款输入:ATM认定存款金额,储户“确定”处理:在账号上统计存入金额输出:打印存款凭条,显示“交易成功”,返回主交易界面(10)描述:取款金额大于账户余额输入:输入取款金额处理:判定输入金额和账户余额输出:取款余额大,则提醒储户“余额不足”,返回主界面(11)描述:取款数额超出当日取款最大额度输入:储户输入取款金额处理:判定输入金额和当日该账户ATM取款额之和是否大于当日取款最大额度输出:如超出则提醒储户“超出当日取款最大额度”,重新输入或返回
16、(12)描述:取款输入:取款正当金额处理:从账户统计取走金额输出:返回主页面(13)描述:取款交易成功,打印取款凭条输入:储户输入“打印”或“不打印”处理:若是“打印”则打印机打印凭条,不然什么也不做输出:无(14)描述:修改密码输入:储户输入新密码处理:两次新密码判定是否一致输出:一致则重置密码,显示“修改成功”;不然退出修改密码(15)描述:转账输入:转账账号,转账金额处理:判定金额是否超出本账户现有金额,是则本账号下账,她账号上账输出:显示“转账成功”,或退出转账5其它非功效需求5.1性能需求数据正确度输入数据精度:储户密码:六位整数; 取款额,转账额:100元倍数;转账卡号:19位整数
17、输出数据精度:余额:一元为单位正确到0.01;在取款过程中,该系统只支持交易金额为100倍数。在存款过程中,该系统只支持交易金额为100倍数。密码:由用户设置一个6位整数。取款金额:不能输入5000以上数字时间特征说明对于该软件时间特征要求,如对:响应时间;2秒更新处理时间;3秒数据转换和传送时间;4秒出钞时间;2秒取钞时间:30秒选择时间:30秒适应性在软件方面,响应时间,更新处理时间,数据传送和转换时间,处理和处理问题时全部比较快且快速,完全满足用户要求。当用户需求,如操作方法,运行环境,结果精度,数据结构和其它软件接口等发生改变时,设计软件要做合适调整,灵活性很大。ATM自动取款机是24
18、小事不停服务,操作简单,并确有语音提醒,方便了用户操作,同时含有转账、修改密码、查询账户信息等功效为用户提供了很多方便。用户只需持有银行卡就能够进行交易,不用携带多种证件,省去了很多麻烦。5.2安全设施需求(1)ATM自动取款机必需确保在干燥和通风环境,为此将这种设施保留在室内环境中,避免接触雨水。(2)大型服务器因为是全天候开机运行,必需确保在适宜温度,湿度,空气质量等环境条件下,为此中心机房必需满足国际机房标准,用空调来调整温度、湿度。(3)全部数据应同时含有硬拷贝(备份到外部介质)和软拷贝(备份到当地)两种备份方法,含有快速灾难恢复能力。同时应充足考虑多种突发情况处理方法,如系统后台数据
19、库因断电、死锁等原因无法访问时,系统应能够自动切换到备份服务器以确保用户能够继续访问。5.3安全性需求(1)全部包含功效信息或个人身份信息网络事物,全部要采取128位加密。(2)每次进行操作必需输入密码进行确定 。(3)采取ISO8583(97)协议和银行进行数据交换。(4)系统中心数据库安全等级要抵达C2级。5.4软件质量属性有效性本系统应该能一次运行最少30天,同时在运行期间其有效性要达成98%。效率本系统不管是在高峰使用时期还是在低峰使用时期全部要保持高效率。完整性全部用户必需在验证账户信息正当后才能进入系统实施下一步操作,只有银行系统维护员才有权限查看系统历史统计,操作日志,只有制订人
20、员才能对系统硬件和软件进行维护。健壮性当输入密码位数不对或格式不对时,系统应该出对应操作,并给出简单实例,当用户输入错误信息时,系统立即报错,并发出修改踢死信息,当用户一天之内有三次输入错误,本系统通知后台管理系统锁定该账户。可用性新用户在进行简单试验后,就能够正确实施全部操作。可维护性在整个系统开发中,必需有完整正确文档资料,正常情况下,各个柜员机维护人员应该能够再极端时间内完成对系统维护工作,在系统编码时,函数调用不能超出三层深度,而且每个模块中代码和注释百分比不得低于1:3,注释中应该包含编写人,编写时间,软件功效模块描述,函数作用。可重用性 本系统包含基础数据处理模块可考虑作为新组件库
21、,为后续项目做准备。可测试性模块之间不要出现相互调用情况,同时每个模块设计或源代码中逻辑分支最好在(7+-2)之间。5.5业务规则5.6用户文档6.其它需求易用性:系统设计应含有良好易用性、操作简便,符合常规Windows操作环境下用户使用习惯。同时,尽可能降低用户记忆工作量。系统设计应含有良好健壮性,如对多种用户多种错误输入应能立即识别并给出对应提醒。安全性:系统中全部包含敏感信息如登录口令等,服务器端应设置严格安全访问控制策略,从而确保系统安全性和操作责任可追溯性。附录A:词汇表银行:一个金融机构,负责保留用户账号信息。能够经授权访问账号。用户 :本软件系统开发提出方。卡:储蓄卡。银行发行能够在ATM终端交易一个储蓄凭证介质。储户 :在ATM系统上交易银行账户拥有者。认为一个持卡人就是一个储户。ATM :Auto Teller Machine,分为两部分组成。一部分是ATM服务器,另一部分是ATM终端。终端负责和银行卡持有者进行交互,ATM服务器负责处理交易。一个ATM服务器能够同时连接多个ATM终端。账号:一张银行卡对应一个一个账户,卡号和账号之间是一对一关系。附录B:分析模型 ATM用户操作系统用例图 ATM机用例图系统类图 系统时序图附录C:待确定问题列表