




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、文檔名稱:詳細設計說明書ATM: Automatic Teller Machi ne,自動柜員機項目名稱:ATM自動取款機系統編寫:張恒友審核:王旭日期:2016年6月5日院系:計算機學院專業:計算機科學與技術引言1.1編寫目的根據需求規格說明書,在仔細考慮討論之后,我們又進一步對 ATM自 動取款機系統軟件的功能劃分、數據結構、軟件總體結構進行設計,從而完成 概要設計,作為軟件詳細設計的基礎。1.2 項目背景項目委托單位:計算機學院軟件工程實驗。開發單位:班ATM自動取款機系統項目組。由于柜臺常常會擁擠,排隊的人很多,而且大多數的客戶都是取款,存款等, 而有些辦理業務的需要一定的時間,這會使
2、得一些只需要取款等的客戶會有較長 時間的等待。所以銀行希望設計一個系統,能讓客戶在系統上進行簡單的操作, 比如存款、取款、查詢余額、轉賬等。1.3 定義1.4 參考資料計算機軟件需求說明編制指南計算機軟件產品開發文件指南ATM系統可行性分析報告。軟件設計與體系結構軟件工程實踐者的研究方法二 任務概述2.1 目標現如今,ATM在一定程度上存在很大的安全隱患,給用戶造成很大的經濟損 失。為了解決這樣的問題,我們小組提出了改進ATM自動取款機系統,使用戶在 操作過程中更加安全,放心,更便捷。2.2 運行環境硬件環境:CPU: 1GHZ 及以上內存:1G以上硬盤: 20G 以上軟件環境:操作系統: M
3、icrosoft Windows XP 或更高版本數 據 庫: Microsoft SQL Server 2005Web服務器:Tomcat5.0以上支持瀏覽器: Internet Explorer 7.0及其以上版本 開發環境: MyEclipse, jdk, Microsoft SQL Server 20052.3 條件與限制隨著科技的發展, 人們生活水平的不斷提高, 高性能高效率高安全的產品越 來越受到人們的歡迎。 ATM 自動取款機是一種非常智能的機器,人們可以直接 和它交互,代替以前的手工操作, 大大提高了銀行的工作效率。 同時也給廣大用 戶帶來了非常大的方便。由于ATM自動取款機是
4、和服務器是連網的,這就涉及到 安全的問題本系統能夠有效地解決這個問題。 但是本程序也使用戶操作時間增加, 在一定程度上增加了用戶的抱怨率。三.總體設計3.1處理流程主流程圖:用戶流程:存款流程:取款流程:查詢流程進入歡迎界面改密:進入歡迎界面選擇更改密碼業務輸入舊密碼正諭錯誤廠 輸入新密碼I輸入錯誤返再輸入一次新密碼返回歡迎界面修改成功修改失敗,返 回更改頁面3.2具體模塊及代碼實現1. 主菜單模塊(含:存款、取款、轉賬、密碼修改、查詢余額)存款:個人賬戶上的金額加上。取款:個人賬戶上的金額減去。轉賬:涉及到兩個賬戶其實就是下標的不同金額一個減去一個加上密碼修改:輸入新密碼、再次輸入新密碼判斷
5、兩次密碼是否相同在用strcpy ()函數 將新密碼 當前賬戶下標元素密碼成員 并且判斷是否修改成功。查詢余額:就是從結構體數組里面調用存金額那個成員歡迎模塊:定義一個函數void huanying(),利用for循環進行字符的輸出void hua nyin g() int i;/for定義函數循環for(i=0;i<10;i+)prin tf("nnnnnnnn");prin tf("tttn");prin tf("ttt歡迎使用n");prin tf("tttn");printf("nntt希望
6、此ATM系統可以給您帶來方便!");printf("nnnntttt正在進入");shaohou();/等待系統響應system("cls");prin tf("nnnnnnnn");用戶模塊:利用在此模塊,從A,B,C中選擇出執行的操作服務,然后進入下一個模塊 while語句,定義的選擇函數char xuanze,實現輸出。偽代碼:void mai n()/主函數hua nyin g();system("cls");while(1)char xua nze;/定義函數system("cls&q
7、uot;);printf("nnt歡迎使用 n");printf("nnt請選擇:n");printf("nntA.開戶服務 n");printf("nntB.登錄服務 n");printf("nntC. 退出。n");prin tf("nnt請選擇:");sca nf("%c", &xua nze);switch(xua nze)case'a':case'A':kaihu();break;case'b
8、9;:case'B':de nglu();break;case'c':case'C':exit(O);default:printf("nt您的選擇錯誤!");break;開戶服務: struct kaihu char n ame10; char mima10; double zong; int zha nghao; guke20;int ren shu=0;int xia nzai;*/#in elude <stdio.h> #i nclude <stri ng.h> #i nclude <std
9、lib.h> #in clude vconi o.h> structint jin _e,z ong; int zha nghao; char n ame20; char mima20; guke20; int ren shu=0; int xia nzai; void shaohou() int i,j; for(i=0;i<3;i+) prin tf(".");for(j=0;j<40000000;j+)Jvoid dedaomima(char mima) int i=0;while(1) char ch; ch=getch(); if(ch=&
10、#39;r')mimai='O'prin tf("n");break;elseif(ch='b')if(i>0)prin tf("b b");i-;elseif(i<16)mimai=ch;prin tf("*");i+;void kaihu()int k;for(k=0;k<5;k+)printf("nnt正在進入注冊頁面,請稍后");shaohou();system("cls");while(1)prin tf("nnt【開
11、戶服務】");printf("nnt請輸入您的姓名:");char xingmin g16;char yan zhe ng20;sca nf("%s",x ingmin g);printf("nnt請輸入密碼:");dedaomima(gukere nshu.mima);printf("nnt 請再次確認您的密碼:");dedaomima(ya nzhe ng);if(strcmp(gukere nshu.mima,ya nzhe ng)=O)printf("nnt 密碼驗證通過:")
12、;break;elseprintf(" 兩次密碼不相同。請重新輸入。");system("cls");while(1)printf("nnt請輸入開戶金額:");scan f("%d",&gukere nshu.jin_e);if(gukere nshu.ji n_e>0) printf("nnt開戶成功,您的可用余額為:d",gukerenshu.jin_e);break;elseprintf("nnt開戶金額不能低于壹圓!nn");system("
13、cls");gukere nshu.zha nghao=518518+re nshu;printf("nnt您的賬號是:%d 請牢記!n",gukerenshu.zhanghao);printf("nnt開戶成功,是否繼續?繼續請按任意鍵。n");ren shu+;getch();登錄服務:void den glu()int q;for(q=0;q<8;q+)printf("nnt 正在進入,請稍后"); shaohou();system("cls");/*whileprin tf("nn
14、tt【登錄服務】");prin tf("nntt請輸入賬號:");int zh;sca nf("%d", &zh);int i;for(i=0;i<re nshu;i+)if(zh!=gukei.zha nghao)prin tf("nnt賬號錯誤,請重新輸入。");con ti nue;elsexia nzai=i;printf("nnt賬號正確:");break;*/prin tf("nntt【登錄服務】");prin tf("nntt請輸入賬號:"
15、;);int zh;sca nf("%d", &zh);for(int i=0;i<renshu;i+)if(zh!=gukei.zha nghao)i+;if(i=re nshu)prin tf("nnt賬號錯誤,請重新輸入。");con ti nue;elsexia nzai=i;printf("nnt賬號正確:");break;for(i=0;i<3;i+)printf("nt請輸入密碼:");char password10;dedaomima(password);if(strcmp(pa
16、ssword,gukexia nzai.mima)=0)printf("nt密碼正確!");break;elseprintf("密碼輸入錯誤,請重新輸入。");return;getch();fuwu();getch();主菜單模塊:此模塊主要用于用戶進行各種操作服務的選擇,實現相關功能,如存款,取款,轉賬,密碼修改,余額查詢等等。void fuwu()int i=0;for(i;i<8;i+)prin tf("nnnnnnn");printf("nnnnttt正在進入服務,請稍后");shaohou();sy
17、stem("cls");while(1)char shuru;system("cls");printf("nnt 【服務】n");printf("nnt%d 歡迎使用! n",);printf("nt( 請選擇:)n");prin tf("nta.存款服務 n");prin tf("ntb.取款服務 n");prin tf("ntc.轉賬服務n");printf("ntd.余額查詢n");prin
18、tf("nte.密碼修改n");prin tf("ntf.退出 n");prin tf("nt請選擇服務:");sca nf("%c",&shuru);switch(shuru)case 'a':case 'A':c un kua n() ;break;case 'b':case 'B':qukua n( );break;/ case 'c':/ case C:zhua nzha ng();break;case 'd
19、39;:case 'D':chax un( );break;/ case 'e':/ case 'E':xiougai();break;case 'f:case 'F':printf("返回上級菜單,請按任意鍵");return;default:printf("nt您的選擇錯誤!");break;存款服務:void cun kua n()for(i nt i=0;i<5;i+)printf("nnt正在進入,請稍等");shaohou();system(&q
20、uot;cls");prin tf("nnnnnnn");prin tf("nnt【存款服務】");printf("nnt請輸入您的存款金額:");int xincun;sca nf("%d", &xi ncun);gukere nshu.z on g=gukere nshu.ji n_e+x incun;printf("nnt您現在的可用余額為:d",gukerenshu.zong);prin tf("nnt是否繼續?繼續請按任意鍵。");getch();
21、取款服務:void qukua n()for(i nt i=0;i<5;i+)printf("nnt正在進入,請稍等");shaohou();system("cls");prin tf("nnt【取款服務】");printf("nnt請輸入取款金額:");int xinqu;sca nf("%d",& xi nqu);gukexia nzai.z on g=gukere nshu.z on g-x inqu;if(xinqu <gukere nshu.z ong)printf
22、("nnt 取款成功:%d,您現在的可用余額為:%d",x inq u,gukexia nzai.z on g);printf("nnt是否繼續?繼續請按任意鍵:");getch();查詢服務:void chax un()for(i nt i=0;i<5;i+)printf("nnt正在進入,請稍等");shaohou();system("cls");prin tf("nt【查詢服務】");printf("nt您的可用余額為:%d",gukerenshu.jin_e);
23、printf("nt是否繼續?繼續請按任意鍵.");getch();四接口設計4.1外部接口硬件接口:和銀行數據庫主本軟件只調用包括和打印機的接口(控制打印機打發票及存款憑證等), 機的接口,和出鈔機的接口。對硬件的處理主要由操作系統完成, 操作系統提供的打印,出鈔等指令。軟件接口:按照銀行指定的格式與銀行數據庫通信,并需要預留可能在ATM上安裝的其他軟件的接口以便于擴充功能。4.2內部接口1. 前后臺程序通信接口,包括配款提醒和維護提醒。2. 系統與數據庫接口。五.測試計劃測試日期、測試人員安排請參考測試計劃; 測試用例的具體內容,詳見測試用例 說明。現在本小組僅以會話用
24、例與取款用例進行對 ATM機管理系統的單體測試計 劃;用例被測試的功能初始系統狀態測試輸入期望的結果會話用例系統讀取顧客 的銀行卡系統處于ONI犬 態,并沒有為顧 客提供服務插入可讀的銀 行卡銀仃卡被接收, 系統請求輸入 密碼會話用例系統彈出不可 讀取的銀行卡系統處于ON狀 態,當前沒有為 顧客提供服務插入不可讀取的銀行卡銀行卡被彈出, 系統顯示錯誤 信息,準備啟動 一個新的會話會話用例系統接收顧客 的密碼系統請求顧客 輸入密碼輸入密碼系統顯示一個 事務類型菜單會話用例系統允許顧客 執行事務系統顯示事務 類型菜單執行事務系統詢問顧客 是否希望執行 其它事務會話用例系統允許在一 個會話中執行 多個事務系統詢問是否回答“是”系
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 新解讀《CB-T 532 - 1999船用通風管路放水塞》新解讀
- Brand KPIs for health insurance:ICICI Lombard in India-英文培訓課件2025.4
- 基于注意力機制跨階段并行殘差融合模型的非侵入式負荷辨識
- 汽車傳感器與檢測技術電子教案:雷達傳感器
- 介紹大學活動方案
- 介紹校園文化活動方案
- 介紹美食活動方案
- 從化老人慰問活動方案
- 倉庫冬季活動策劃方案
- 仙人吹氣活動方案
- 23G409先張法預應力混凝土管樁
- 【MOOC】中國稅法:案例·原理·方法-暨南大學 中國大學慕課MOOC答案
- 鐵工電〔2023〕54號國鐵集團關于印發《普速鐵路工務安全規則》的通知
- 環境有害物質管理標準
- 動火許可證(模板)
- DBJ53/T-39-2020 云南省民用建筑節能設計標準
- 妊娠合并糖尿病的護理23張課件
- 我的家鄉-濟南
- 磁粉探傷儀操作使用標準
- T-CSCS 016-2021 鋼結構制造技術標準
- 數據中心機房工程施工組織方案
評論
0/150
提交評論