ATM自動取款機系統(tǒng)詳細設(shè)計說明文書書_第1頁
ATM自動取款機系統(tǒng)詳細設(shè)計說明文書書_第2頁
ATM自動取款機系統(tǒng)詳細設(shè)計說明文書書_第3頁
已閱讀5頁,還剩14頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、ATM: Automatic Teller Machi ne,自動柜員機文檔名稱:詳細設(shè)計說明書項目名稱:ATM自動取款機系統(tǒng)編寫:張恒友審核:王旭日期:2016年6月5日院系:計算機學(xué)院專業(yè):計算機科學(xué)與技術(shù)引言1.1 編寫目的根據(jù)需求規(guī)格說明書,在仔細考慮討論之后,我們又進一步對 ATM自 動取款機系統(tǒng)軟件的功能劃分、數(shù)據(jù)結(jié)構(gòu)、軟件總體結(jié)構(gòu)進行設(shè)計,從而完成 概要設(shè)計,作為軟件詳細設(shè)計的基礎(chǔ)。1.2 項目背景項目委托單位:計算機學(xué)院軟件工程實驗。開發(fā)單位:班ATM自動取款機系統(tǒng)項目組。由于柜臺常常會擁擠,排隊的人很多,而且大多數(shù)的客戶都是取款,存款等, 而有些辦理業(yè)務(wù)的需要一定的時間,這會

2、使得一些只需要取款等的客戶會有較長 時間的等待。所以銀行希望設(shè)計一個系統(tǒng),能讓客戶在系統(tǒng)上進行簡單的操作, 比如存款、取款、查詢余額、轉(zhuǎn)賬等。1.3 定義1.4 參考資料計算機軟件需求說明編制指南 計算機軟件產(chǎn)品開發(fā)文件指南 ATM系統(tǒng)可行性分析報告。軟件設(shè)計與體系結(jié)構(gòu)軟件工程一一實踐者的研究方法任務(wù)概述2.1目標現(xiàn)如今,ATM在一定程度上存在很大的安全隱患,給用戶造成很大的經(jīng)濟損 失。為了解決這樣的問題,我們小組提出了改進ATM自動取款機系統(tǒng),使用戶在 操作過程中更加安全,放心,更便捷。2.2運行環(huán)境硬件環(huán)境:CPU 1GHZ及 以上內(nèi)存:1G以上硬盤:20G以上軟件環(huán)境:操作系統(tǒng):Micr

3、osoft Win dows XP 或更高版本數(shù)據(jù)庫:Microsoft SQL Server 2005Web服務(wù)器:Tomcat5.0以上支持瀏覽器:In ternet Explorer 7.0 及其以上版本開發(fā)環(huán)境:MyEclipse,jdk,Microsoft SQL Server 20052.3條件與限制隨著科技的發(fā)展,人們生活水平的不斷提高,高性能高效率高安全的產(chǎn)品越 來越受到人們的歡迎。ATM自動取款機是一種非常智能的機器,人們可以直接 和它交互,代替以前的手工操作,大大提高了銀行的工作效率。同時也給廣大用戶帶來了非常大的方便。由于ATM自動取款機是和服務(wù)器是連網(wǎng)的,這就涉及到 安

4、全的問題本系統(tǒng)能夠有效地解決這個問題。 但是本程序也使用戶操作時間增加, 在一定程度上增加了用戶的抱怨率。二.總體設(shè)計3.1處理流程主流程圖:用戶流程:存款流程:轉(zhuǎn)賬流程:改密:3.2具體模塊及代碼實現(xiàn)1.主菜單模塊(含:存款、取款、轉(zhuǎn)賬、密碼修改、查詢余額)存款:個人賬戶上的金額加上。取款:個人賬戶上的金額減去。轉(zhuǎn)賬:涉及到兩個賬戶其實就是下標的不同金額一個減去一個加上 密碼修改:輸入新密碼、再次輸入新密碼判斷兩次密碼是否相同在用strcpy ()函數(shù) 將新密碼 當前賬戶下標元素密碼成員 并且判斷是否修改成功。查詢余額:就是從結(jié)構(gòu)體數(shù)組里面調(diào)用存金額那個成員歡迎模塊:定義一個函數(shù)void h

5、uanying(),利用for循環(huán)進行字符的輸出。void hua nyin g() in ti;for(i=0;i<10;i+)/定義函數(shù)/for循環(huán)prin tf("nnnnnnnn");prin tf("tttn");prin tf("ttt歡迎使用n");prin tf("tttn");printf("nntt希望此ATM系統(tǒng)可以給您帶來方便!");printf("nnnntttt正在進入");shaohou();/等待系統(tǒng)響應(yīng)system("cls&

6、quot;);prin tf("nnnnnnnn");用戶模塊:利用在此模塊,從A,B,C中選擇出執(zhí)行的操作服務(wù),然后進入下一個模塊 while語句,定義的選擇函數(shù)char xuanze,實現(xiàn)輸出。偽代碼:void mai n()/主函數(shù)hua nyin g();system("cls");while(1)char xua nze;/定義函數(shù)system("cls");printf("nnt歡迎使用 n");printf("nnt請選擇:n");printf("nntA.開戶服務(wù) n&

7、quot;);printf("nntB.登錄服務(wù) n");printf("nntC. 退出。n");prin tf("nnt請選擇:");sca nf("%c", &xua nze);switch(xua nze)case'a':case'A':kaihu();break;case'b':case'B':de nglu();break;case'c':case'C':exit(O);default:printf(

8、"nt您的選擇錯誤!");break;開戶服務(wù): structkaihuchar n ame10; char mima10; double zong; in tzha nghao;guke20;intren shu=0; in txia nzai;*/ #in clude <stdio.h>#i nclude <stri ng.h>#i nclude <stdlib.h>#in elude vconi o.h>structintjin _e,z ong;in tzha nghao;char n ame20;char mima20;g

9、uke20;intren shu=0;in txia nzai;void shaohou()in ti,j;for(i=0;i<3;i+)prin tf(".");for(j=0;j<40000000;j+) Jvoid dedaomima(char mima) in ti=0;while(1) char ch;ch=getch();if(ch='r')mimai='0'prin tf("n"); break;elseif(ch='b')if(i>0)prin tf("b b&q

10、uot;);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【開戶服務(wù)】");printf("nnt請輸入您的姓名:");char xingmin g16;char yan zhe ng20;sca nf("%s",x ingmi

11、n g);printf("nnt請輸入密碼:");dedaomima(gukere nshu.mima);printf("nnt請再次確認您的密碼:");dedaomima(ya nzhe ng);if(strcmp(gukere nshu.mima,ya nzhe ng)=0)printf("nnt密碼驗證通過:");break;elseprintf("兩次密碼不相同。請重新輸入。");system("cls");while(1)printf("nnt請輸入開戶金額:");

12、sea nf("%d",&gukere nshu.jin_e);if(gukere nshu.ji n_e>0) printf("nnt開戶成功,您的可用余額為:d",gukerenshu.jin_e);break;elseprintf("nnt開戶金額不能低于壹圓!nn");system("cls");gukere nshu.zha nghao=518518+re nshu;prin tf("nnt prin tf("nnt ren shu+; getch();您的賬號是:%d

13、請牛記!n",gukerenshu.zhanghao); 開戶成功,是否繼續(xù)?繼續(xù)請按任意鍵。n");登錄服務(wù):void den glu()int q;for(q=0;q<8;q+)printf("nnt正在進入,請稍后");shaohou();system("cls");/*whileprin tf("nntt【登錄服務(wù)】");prin tf("nntt請輸入賬號:");in tzh;sca nf("%d", &zh);inti;for(i=0;i<re

14、 nshu;i+)if(zh!=gukei.zha nghao)prin tf("nnt賬號錯誤,請重新輸入。");con ti nue;elsexia nzai=i;printf("nnt賬號正確:");break;*/prin tf("nntt【登錄服務(wù)】");prin tf("nntt請輸入賬號:");in tzh;sca nf("%d", &zh);for(i nti=0;i<re nshu;i+)if(zh!=gukei.zha nghao)i+;if(i=re nshu

15、)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(password,gukexia nzai.mima)=0)printf("nt密碼正確!");break;elseprintf("密碼輸入錯誤,請重新輸入。");return

16、;getch();fuwu();getch();主菜單模塊:此模塊主要用于用戶進行各種操作服務(wù)的選擇,實現(xiàn)相關(guān)功能,如存款,取款,轉(zhuǎn)賬,密碼修改,余額查詢等等。void fuwu()in ti=0;for(i;i<8;i+)prin tf("nnnnnnn");printf("nnnnttt正在進入服務(wù),請稍后");shaohou();system("cls");while(1)char shuru;system("cls");printf("nnt【服務(wù)】n");printf("

17、;nnt%d 歡迎使用! n",);printf("nt(請選擇:)n");prin tf("nta.存款服務(wù)n");prin tf("ntb.取款服務(wù)n");prin tf("ntc.轉(zhuǎn)賬服務(wù)n");printf("ntd.余額查詢n");printf("nte.密碼修改n");prin tf("ntf.退出 n");prin tf("nt請選擇服務(wù):");sca nf("%c",&a

18、mp;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':case 'D':chax un( );break;/ case 'e':/ case 'E':xiougai();break;case 'f:case

19、'F':printf("返回上級菜單,請按任意鍵");return;default:printf("nt您的選擇錯誤!");break;存款服務(wù):void cun kua n()for(i nti=0;i<5;i+)printf("nnt正在進入,請稍等");shaohou();system("cls");prin tf("nnnnnnn");prin tf("nnt【存款服務(wù)】");printf("nnt請輸入您的存款金額:");i

20、ntxincun;sca nf("%d", &xi ncun);gukere nshu.z on g=gukere nshu.ji n_e+x incun;printf("nnt您現(xiàn)在的可用余額為:d",gukerenshu.zong);prin tf("nnt是否繼續(xù)?繼續(xù)請按任意鍵。");getch();取款服務(wù):void qukua n()for(i nti=0;i<5;i+)printf("nnt正在進入,請稍等");shaohou();system("cls");prin

21、 tf("nnt【取款服務(wù)】");printf("nnt請輸入取款金額:");intxinqu;sea nf("%d",& xi nqu);gukexia nzai.z on g=gukere nshu.z on g-x inqu;if(xinqu <gukere nshu.z ong)printf("nnt取款成功:%d,您現(xiàn)在的可用余額為:%d",x inq u,gukexia nzai.z on g);printf("nnt是否繼續(xù)?繼續(xù)請按任意鍵:");getch();查詢

22、服務(wù):void chax un()for(i nti=0;i<5;i+)printf("nnt正在進入,請稍等");shaohou();system("cls");prin tf("nt【查詢服務(wù)】");printf("nt您的可用余額為:%d",gukerenshu.jin_e);printf("nt是否繼續(xù)?繼續(xù)請按任意鍵.");getch();四接口設(shè)計4.1外部接口硬件接口:包括和打印機的接口(控制打印機打發(fā)票及存款憑證等),和銀行數(shù)據(jù)庫主 機的接口,和出鈔機的接口。對硬件的處理主

23、要由操作系統(tǒng)完成, 本軟件只調(diào)用 操作系統(tǒng)提供的打印,出鈔等指令。軟件接口:按照銀行指定的格式與銀行數(shù)據(jù)庫通信,并需要預(yù)留可能在ATMLh安裝的其 他軟件的接口以便于擴充功能。4.2內(nèi)部接口1. 前后臺程序通信接口,包括配款提醒和維護提醒。2. 系統(tǒng)與數(shù)據(jù)庫接口。五.測試計劃測試日期、測試人員安排請參考測試計劃; 測試用例的具體內(nèi)容,詳見測試用例 說明?,F(xiàn)在本小組僅以會話用例與取款用例進行對 ATM嘰管理系統(tǒng)的單體測試計 劃;用例被測試的功能初始系統(tǒng)狀態(tài)測試輸入期望的結(jié)果會話用例系統(tǒng)讀取顧客 的銀行卡系統(tǒng)處于ONI犬 態(tài),并沒有為顧 客提供服務(wù)插入可讀的銀 行卡銀仃卡被接收, 系統(tǒng)請求輸入 密碼會話用例系統(tǒng)彈出不可 讀取的銀行卡系統(tǒng)處于ON狀 態(tài),當前沒有為 顧客提供服務(wù)插入不可讀取 的銀行卡銀行卡被彈出, 系統(tǒng)顯示錯誤 信息,準備啟動 一個新的會話會話用例系統(tǒng)接收顧客 的密碼系統(tǒng)請求顧客 輸入密碼輸入密碼系統(tǒng)顯示一個 事務(wù)類型菜單會話用例系統(tǒng)允許顧客 執(zhí)行事務(wù)系統(tǒng)顯示事務(wù) 類型菜單執(zhí)行事務(wù)系統(tǒng)詢問顧客 是否希望執(zhí)行 其它事務(wù)會話用例系統(tǒng)允許在一 個會話中執(zhí)行 多個事務(wù)系統(tǒng)詢問是否 執(zhí)行其它事務(wù)回答“是”系統(tǒng)顯示事務(wù) 類型菜

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論