目录
1问题定义及可行性分析 3
1.1问题定义 3
1.2可行性分析 4
1.2.1技术上可行性 4
1.2.2经济上可行性 5
1.2.3管理上可行性 6
1.2.4分析结果 6
2需求分析 7
2.1业务需求 7
2.2功能需求 7
2.3数据字典 9
2.4性能需求 10
2.5数据流图 11
2.6状态转化图 14
3概要设计与详细设计 15
3.1系统数据结构设计 15
3.2系统功能模块图 17
3.3核心模块流程图 18
4测试报告 21
5项目管理 26
6体会 28
1问题定义及可行性分析
1.1问题定义
最早的银行业发源于西欧古代社会的货币兑换业。最初货币兑换商只是为商人兑换货币,后来发展到为商人保管货币,收付现金、办理结算和汇款,但不支付利息,而且收取保管费和手续费。随着工商业的发展,货币兑换商的业务进一步发展,他们手中聚集了大量资金。货币兑换商为了谋取更多的利润,利用手中聚集的货币发放贷款以取得利息时,货币兑换业就发展成为银行了。
我国银行业资产规模、税后利润逐年大幅增长,2011年中国银行业所实现利润占全球银行业总利润的近三分之一。我国银行业规模发展迅速,但是利率市场化加快、内外竞争加剧、盈利增速下滑背景下,银行金融机构必须在业务结构、资源配置以及区域布局上均做出相应战略性调整。而随着银行业竞争的不断加剧,银行业金融机构愈来愈重视对行业发展环境与市场需求的跟踪研究,特别是对银行业务发展环境和客户需求趋势变化的深入研究。正因为如此,我们急需设计一套基于发展实情和民众意愿的银行信息管理系统,来吸引更多的用户。
银行信息管理系统,是利用银行原有存储信息,经过安全检查,通过管理员操作权限和用户意愿进行信息操作和存储的计算机软件系统,它具备高效性,安全性,易操作性。一个银行用户在系统操作界面通过个人意愿进行个人财产存取,转账,贷款,换算外汇等操作,某些涉及银行本身利益的操作需要加入高级权限。
2.2功能需求
功能需求(functional requirement)规定开发人员必须在产品中实现的软件功能,用户利用这些功能来完成任务,满足业务需求。在该银行信息管理系统中,针对用户可能的需要,我们在基础的银行功能上设计实现了更多的银行功能。其中基础银行功能包括开户,销户,存款,取款,转账,密改,挂失,解挂失,查询等功能;除此之外,本系统添加了外汇兑换,信用贷款等高级功能。
1.开户:根据用户输入信息生成新卡号并建立新用户档案,根据身份证及用户姓名更新信息库数据。
2.销户:用户登陆成功后,根据客户意愿销掉该银行卡。
3.存款:用户登陆成功后,更新用户该卡余额信息。
4.取款:用户登陆成功后,根据余额情况更新用户该卡余额信息。
5.转账:只接受本行转账,用户登录成功后,寻找对方卡号,若存在,根据实际情况更新两卡余额信息
6.密改:修改用户一张银行卡的密码
7.挂失:将银行卡状态设为挂失状态,此状态下,无法进行任何操作,默认丢失
8.解挂失:将银行卡状态设置为使用状态,此状态下,可以更新卡内信息。
9.查询:查询一张银行卡内余额,若有贷款,提示偿还贷款,可优先用卡内余额抵消部分或全部。
10.外汇:提供当前外汇汇率,提供存取外汇选择,并更新卡内余额
11.贷款:为未贷过款的行卡提供贷款服务。
12.个人:由管理员操作,输出一张身份证对应的所有行内卡信息。
13.资料:输出所有卡片信息。
本文转载自:http://www.biyezuopin.vip/onews.asp?id=16546
from admin import Admin
import pickle
from operation import Bank_Acount
def main():
#初始化对象
ad_owner=Admin("666","999")
if ad_owner.login()==-1:
return -1
ad_owner.welcome()
#加载用户信息文件
with open("user.txt","rb") as file_object:
users=pickle.load(file_object)
atm=Bank_Acount(users)
atm.ok()
while True:
ad_owner.admin_interface()
atm.get_time()
choice=input("请选择操作项:")
if choice=='0':
#开户
atm.creat_user()
elif choice=='1':
#销户
atm.delete_user()
elif choice=='2':
#存钱
atm.deposit_money()
elif choice=='3':
#取钱
atm.withdraw_money()
elif choice=='4':
#转账
atm.transfer_money()
elif choice=='5':
#改密码
atm.change_pwd()
elif choice=='6':
#挂失
atm.report_card()
elif choice=='7':
#解挂失
atm.hang_out()
elif choice=='8':
#查询
atm.show_card()
elif choice=='9':
#外汇
atm.foreign_currency()
elif choice=='s':
#贷款
atm.credit_money()
elif choice=='c':
#个人资料
atm.look_card()
elif choice=='r':
#管理员浏览全部资料
atm.traversal()
elif choice=='q':
#退出
atm.exit()
return
if __name__ == "__main__":
main()














