软件工程课程设计银行储蓄管理系统

上传人:鲁** 文档编号:564640840 上传时间:2023-12-20 格式:DOCX 页数:17 大小:676.94KB
返回 下载 相关 举报
软件工程课程设计银行储蓄管理系统_第1页
第1页 / 共17页
软件工程课程设计银行储蓄管理系统_第2页
第2页 / 共17页
软件工程课程设计银行储蓄管理系统_第3页
第3页 / 共17页
软件工程课程设计银行储蓄管理系统_第4页
第4页 / 共17页
软件工程课程设计银行储蓄管理系统_第5页
第5页 / 共17页
点击查看更多>>
资源描述

《软件工程课程设计银行储蓄管理系统》由会员分享,可在线阅读,更多相关《软件工程课程设计银行储蓄管理系统(17页珍藏版)》请在金锄头文库上搜索。

1、(芙蓉学院)软件工程 实验报告课题:银行储蓄管理系统姓名:谭斌学 号:同组姓名:专业班级:芙蓉计科0701指导教师:周学清2011/3/20评阅意见:评定成绩:指导老师签名:银行储蓄管理系统目录1 需求分析1 1 系统的功能性需求1 2 系统需求分析规格说明书1 . 3系统实体联系(ER)图1 4系统数据流( DFD )图1 5 系统数据字典1 6 面向数据流的设计方法1 需求分析系统中要求每个人银行管理者都有一个系统帐号,并每个帐号都有密码,系统的一切操作(如:增加存储用户,提高利率等)都由管理者执行,而不是由存诸用户执行,也主是说存储用户并不直接与系统交互,而是通过管理员与系统交互。该系统

2、主要有两部份业务功能,存款与取款。储户填写的存款单或取款单由业务员输入系统,如果是存款则系统记录存款人姓名,住址(或电话号码) ,身份证号码,存款类型,存款日期,到期日期,利率及密码(可选)等信息,并打印存单给储户;如果是取款而且存款时留有密码,则系统首先核对储户密码,若密码正确或存款时未留密码,则系统计算得利息并打印出利息清单给储户。1 1 系统的功能性需求系统为管理者提供主功能界面系统在启动时要求管理者输入登录帐号与密码系统要通过管理员执行一系操作(如:添加用户,修改,查询,删除等)管理员代用户实现存款,取款,查询等操作储户的一切信息,存储在数据库表中1 2 系统需求分析规格说明书实现储户

3、开户登记办理定期存款帐办理定期存款手续办理活期取款帐办理活期取款手续实现利息计算输出明细表数据备份和数据恢复功能查看帐户信息1.3系统ER图系统主要关系模式:1.储户(储户姓名,住址,身份证号码)2.管理员(员工号,姓名)3.存款(储户姓名,员工号,金额,存款类型,到期日期,存款日期)4.查询(储户姓名,员工号)5.取款(储户姓名,员工号,金额,取款日期)姓名储户住址身份证号码11系统打印存单打 印 清 单打印存单打印清单储户信息文件储户信息文件1. 10数据字典数据名字:利息清单数据来源:系统数据目的:储户数据组成:利息+姓名+取款时间+取款金额数据名字:存单数据来源:存款信息表数据目的:储

4、户数据组成:姓名+到期时间+存入类型+存入时间+利率+存入金额数据名字:取款单数据来源:储户数据目的:储户信息表数据组成:姓名+到期时间+存入类型+存入时间+利率+取款金额+身份证号数据名字:“单数据目的:存款信息表数据组成:姓名+到期时间+存入类型+存入时间+利率+存入金额+身份证号16 1确定输入流和输出流的边界,从而孤立出变换中心。如图:1.1图1.11.6.2 完成“第一级分解”基于书上第三章第三题实现在银行储蓄管理系统在一级分解中,可将系统分解成三个子功能模块:用户操作,业务员操作,系统输出。如下图所示:1.6.3 完成“第二级分解”用户操作的分解可将用户操作分解为:开户民,存款,取

5、款,查询。如下图所示:业务员操作的分解业务员的操作是将用户的操作传送给系统,代替用户与系统交互, 所以,业务员的操作与系统的操作基本类似,也可以近似地将业务员看作用户。所以操作员操作可分解为:开户,存款,取款,查询并且如用户在开户时设有密码,则进行密码验证。所以分解图如下:系统输出分解系统输出可分解为:计算利息-打印清单,保存新用户信息,更新用户信息,打印存单分解图如下:系统输出1.6. 4使用设计度量和启发式规则对第一次分割得到的软件结构进一步精化由于业务员的操作与用户的操作基本相似,可以简单化地认为系统只与业务员交互,基于这个思想,将有利与简化以后系统程序的设计与开发。精化图如下:密码验证

6、提 交 用 户 查 询 表计算利息打 印 清 单存用信 保新户息更新用户信息打印存单#include#includeclass Bankprivate:Account * account50;int maxID;int accNum;public:Bank();void Append();void Delete();void Query();class Accountprivate:int ID;char * Name;/int Year;double Balance;public:Account();Account(int,const char * ,double);void Saving(

7、);int Withdraw();void ShowMe();int getID()return ID;Account:Account()ID = 0;strcpy(Name, );Balance = 0;Account:Account(int id,const char * name,double balance) ID = id;Name = new char50;strcpy(Name,name);/Year=year;Balance = balance;void Account:Saving()double number;coutnumber;Balance = Balance + n

8、umber;coutNow the balance of your account is Balanceendl;return;int Account:Withdraw()double number;coutnumber;if(Balancenumber)coutSorry,now the balance of your accout is less than number.So you can not withdraw!endl;return 0;elseBalance = Balance - number;coutNow the balance of your account isBala

9、nceendl;return 1;void Account:ShowMe()coutAccount ID:IDendl;coutName:Nameendl;/ coutYear:Yearendl;coutBalance:Balanceendl;return;/int Accout:getID()/return ID;/Bank:Bank()for(int i=0;i50;i+)accounti = NULL;maxID = 0;accNum = 0;void Bank:Append()if(accNum = 50)coutSorry,the bank is full,so can not ad

10、d new account!endl; return;int id;char * name = new char50;double balance;coutname;id = maxID;balance = 0;Account * acc = new Account(id,name,balance);accountaccNum = acc;coutAppend successful!ShowMe();maxID+;accNum+;return;void Bank:Delete()int ID;coutID;int flag = 1;int i = 0;while(igetID()/flag =

11、 0 indicate had found the accountIDflag = 0;elsei+;if(flag)coutThe account does not exists!endl;return;for(int j=i;jaccNum;j+)accountj = accountj+1;delete accountaccNum-1;accNum-;coutDelete successful!endl;return;void Bank:Query()int ID;coutID;int flag = 1;int i=0;while(igetID()flag = 0;else i+; if(flag) coutThe account does not exist!endlShowMe();int choice=0 ;while(choice!=3)cout 1:Save moneyendl;cout 2:Withdraw moneyendl;cout 3:Returnendl;cout Please input t

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 商业/管理/HR > 营销创新

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号