您好,欢迎访问三七文档
组长:杨凯乾组员:信昕王旭飞王帅•需求分析•概念设计•逻辑结构设计•物理结构设计•数据库实施需求分析•处理对象银行信息表(银行号,银行名称,电话,地址)储户资料表(储户号,姓名,身份证号,联系电话,账户)工作人员资料表(工作人员信息,工号,密码)存单(存款人姓名,存款银行,业务员编号,存款金额,存款日期,手续费,帐户余额)取单(取款人姓名,取款银行,受理业务员,取款金额,取款日期,手续费,帐户余额)余额表(帐户,交易种类,交易日期,剩余金额)利息表(利率,存款日期,取款日期,存款种类)•处理功能1.能够处理正常的存取款单和存取款活动,其中包括:(1)存款信息审核,反馈信息,计算账户余额,计算存款类型和利率(2)取款信息审核,重新计算账户余额,反馈利息2.能够对一定数量的储户、管理员进行相应的信息存储与管理,这其中包括:(1)储户信息的存入,查询,删除,修改(2)管理员信息的存入,修改,查询,删除3.能够提供一定的安全机制,提供数据信息授权访问,防止随意删改、查询。4.对查询、统计的结果能够列表显示。取款功能:(1)用户输入自己的密码(2)业务员输入相关信息(3)系统利息计算,在原账户信息中将取款额减去。(4)若为清户,记录注销该账户,将账户余额一并交与储户。(5)打印利息清单给储户。5.存款功能:(1)系统需要在原账户信息中增加一条记录,包括存款人姓名,存款类型,存款日期,利息等信息。(2)若为储户建立一个新的账户,须记录此次的记录。打印存款单给储户。•安全性和完整性(1)安全性要求系统安全性要求体现在数据库安全性、信息安全性和系统平台的安全性等方面。安全性先通过视图机制,不同的用户只能访问系统授权的视图,这样可提供系统数据一定程度上的安全性,再通过分配权限、设置权限级别来区别对待不同操作者对数据库的操作来提高数据库的安全性;系统平台的安全性体现在操作系统的安全性、计算机系统的安全性和网络体系的安全性等方面。(2)完整性要求系统完整性要求系统中数据的正确性以及相容性。可通过建立主、外键,使用check约束,或者通过使用触发器和级联更新。数据流图•顶层数据流图储户储户P1银行储蓄系统取款单/利息单存取款单•功能结构图银行储蓄系统储户帮助子系统存款子系统取款子系统管理子系统查询个人信息添加个人信息修改个人信息删除储户信息分类处理存款单计算账户余额计算存入利率计算账户余额计算利息生成取款记录生成存款记录记录操作日志管理员工信息•第二层数据流图(取款活动)•第二层数据流图(存款活动)P1.1更新库存余额P1.3生成利息单业务员储户利息单P1.2处理取款库存余额取款信息取款单利率单库存余额库存余额利率信息1.1更新库存余额1.3生成存款单业务员储户1.2处理存款存款信息存款信息存款单存款单库存余额库存余额利率定期活期存款•第三层数据流图(取款活动)•第三层数据流图(存款活动)业务员1.1.1接受取款信息1.1.2验证取款信息1.1.3更新库存1.2.1处理取款信息1.2.2利率计算取款单取款单取款信息正确的取款信息取款信息用户密码密码库存余额1.3.1输出取款单利率信息利率单利率信息库存余额利率信息表利率单储户库存余额业务员1.1.1接受存款信息1.1.2验证存款信息1.1.3更新库存1.2.1处理存款信息1.3.1输出存款单存款单存款单存款信息正确的存款信息存款信息存款单用户密码密码库存余额储户存款单存款余额存款信息数据字典•储户表主键:帐号;约束条件:各属性均非空,密码长度为6位;•活期存取款表主键:nID;外键:帐号;被参照表:储户表约束条件:各属性均非空;•定期存款表主键:nID;外键:帐号;被参照表:储户表约束条件:各属性均非空;•定期取款表主键:nID;外键:nID;被参照表:定期存款表约束条件:各属性非空•定期操作记录表主键:nID;外键:nID;被参照表:定期存款表,定期取款表约束条件:各属性非空流程图概念设计•各个属性关系储户姓名登录密码性别账户余额身份证号开户日期开户地址账号存款单存储金额存款人姓名存储日期存储利率序号账号取款单取款金额取款日期序号取款人姓名账号银行地址编号名称电话•合并各分E-R图业务员储户银行办理管理存取款N1NMNM存单取单11•个实体E-R图的各属性如下所示:业务员:Maneger(ManegerNo,ManegerNa)储户:C(CName,Cpassword,CID,CSex,Cdate,Cadress,Cno,Cbalance)银行:Bank(BankNo,BankName,address,BankPN)存单:Deposit(money,date,rate,name)取单:take(money,date)•E-R图中联系的属性如下所示:办理:transaction(MangerNo,MangerNa,C,bankbook)存取款:takeordeposit(money,date,rate)逻辑结构设计•E-R图转化为关系模型储户:C(Cname,Cno,CID,CDate,CAd)银行:BANK(bankID,bankDate,bankno,bankpwd)业务员:Maneger(MID,MName,Mpwd,MAuth,MTeleph,MAddre)存单类别:DepositTpye(DPID,DPName,DPnum,DPbqx,DPqx)•各E-R图中联系的属性如下所示:存款信息:Deposit(DepositID,DepositorID,DepositDate,Depositnum)取款历史:Draw(DepositID,Depositpwd,Drawnum,DrawDate)查询信息:Inquire(AccountID,Accountpwd,DepositorName,DepositorID,Accountnum)•系统功能模块•账户基本信息的查询和更新模块管理员发出查询和更新命令查询,更新查询账户信息表更新账户信息表查询的结果是否成功提示信息是否继续结束更新后的账户信息表NYY查询更新N•模型优化•实体的属性就是关系的属性,实体的码就是关系的码。关系模式Depositor,Account,Maneger,DepositTpye,存在非主属性对主属性的部分函数依赖,也不存在传递函数依赖,已经达到了3NF,但是存款信息关系模式,取款历史关系模式,查询信息关系模式(Deposit,Draw,Inquire)中存在着一些数据冗余,现将三个关系模型进行合并消除冗余优化为:存款信息(AccountID,DepositorID,DepositDate,Depositnum,Accountpwd,Drawnum,DrawDate,DepositorName,DepositorID,Accountnum)物理结构设计数据库实施•建立数据库creatdatabasebank●建立数据表usebankgocreatetableAccount(CNochar(20)primarykey,CNamechar(20)unique,CPasswordchar(20),CIDchar(20),CSexchar(2),CBalancechar(20),CDatedatetime,CAddresschar(20));usebankgocreatetableBank(BankNochar(20)primarykey,BankNamechar(20),Bankaddresschar(20),BankPNchar(20))usebankgocreatetableDeposit(nIDchar(4)primarykey,CNochar(20),Cmoneychar(8),Cstylechar(10),Cdatedatetime,CInterestchar(8),Cbalancechar(8));•建立索引usebankgocreateuniqueindexaccountIDonaccount(cid);usebankgocreateuniqueindexpdepositondeposit(nid);•存取款基本信息的执行和更新模块储户发出存取款命令存取分类存款分类定期存款活期存款查询利息表更新后的账户余额信息是否继续结束验证密码更新后的账户余额信息存款定期活期YY取款NN•建立触发器usebankgocreatetriggeracconaccountafterupdateasif(selectcbalancefrominserted)10000selectcbalancefromaccountbeginprint'该帐户余额少于'rollbackend•数据入库将exel里面的数据导入建立的表格中•创建各个功能的存储过程usebankgocreateproceduregetaccountasselect*fromaccountwherecbalance10000beginprint'钱大于的'endexecgetaccount•数据插入•查询结果系统调试和测试•对该道具管理管理系统进行测试,验证每个功能是否符合要求,具体的测试如下:(1)通过视图查看各个基本表和视图中的数据(2)检测各个存储过程的功能(3)对应用程序的测试(通过界面操作和数据库中各个表格检查,确认所有功能都能够正确的操作数据库,必须提供相应的检查步骤和结果,可以以附录的形式提供)谢谢观赏
本文标题:银行储蓄系统
链接地址:https://www.777doc.com/doc-252821 .html