ATM系統(tǒng)需求分析設(shè)計(jì)與改進(jìn)(附程序)_第1頁(yè)
ATM系統(tǒng)需求分析設(shè)計(jì)與改進(jìn)(附程序)_第2頁(yè)
ATM系統(tǒng)需求分析設(shè)計(jì)與改進(jìn)(附程序)_第3頁(yè)
ATM系統(tǒng)需求分析設(shè)計(jì)與改進(jìn)(附程序)_第4頁(yè)
ATM系統(tǒng)需求分析設(shè)計(jì)與改進(jìn)(附程序)_第5頁(yè)
已閱讀5頁(yè),還剩69頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、atm系統(tǒng)需求分析設(shè)計(jì)與改進(jìn)目錄1引言11.1編寫(xiě)目的11.2定義12總體設(shè)計(jì)12.1需求概述12.2軟件結(jié)構(gòu)23.基于uml的atm自動(dòng)取款機(jī)系統(tǒng)分析設(shè)計(jì)23.1 cim-1定義業(yè)務(wù)流程23.2 cim-2 分析業(yè)務(wù)流程43.2.1 客戶(hù)取錢(qián)業(yè)務(wù)流程活動(dòng)圖.43.2.2 客戶(hù)轉(zhuǎn)賬業(yè)務(wù)流程活動(dòng)圖.43.2.3 客戶(hù)修改密碼業(yè)務(wù)用例活動(dòng)圖53.2.4 客戶(hù)查詢(xún)余額業(yè)務(wù)用例活動(dòng)圖63.3 cim-3定義系統(tǒng)范圍.83.3.1 客戶(hù)包下可啟動(dòng)的系統(tǒng)用例83.3.2 銀行管理員包下的系統(tǒng)用例圖83.2.3定時(shí)啟動(dòng)者包下的系統(tǒng)用例93.4 pim-1分析業(yè)務(wù)流程93.4.1 suc001-取款系統(tǒng)用例業(yè)

2、務(wù)93.4.2 suc002-轉(zhuǎn)賬業(yè)務(wù)系統(tǒng)用例103.4.3 suc003- 修改密碼業(yè)務(wù)系統(tǒng)用例113.4.4 suc004- 查詢(xún)余額業(yè)務(wù)系統(tǒng)用例123.5 pim-2 分析業(yè)務(wù)規(guī)則狀態(tài)圖(取款)134. atm數(shù)據(jù)庫(kù)的創(chuàng)建144.1 atm自動(dòng)取款機(jī)關(guān)聯(lián)系統(tǒng)數(shù)據(jù)表結(jié)構(gòu)144.1.1客戶(hù)信息存儲(chǔ)客戶(hù)基本信息表(customermessage_iq)144.1.2銀行卡信息存儲(chǔ)客戶(hù)銀行卡基本信息表(cardinfo_iq)144.1.3交易流水記錄交易流水表(tradelist_iq)144.1.4黑名單黑名單增刪改查表(blacklist_iq)154.2 數(shù)據(jù)庫(kù)建表語(yǔ)句154.2.1客戶(hù)

3、信息存儲(chǔ)客戶(hù)基本信息表(customermessage_iq)154.2.2銀行卡信息存儲(chǔ)客戶(hù)銀行卡基本信息表(cardinfo_iq)164.2.3交易流水記錄交易流水表(tradelist_iq)164.2.4黑名單黑名單增刪改查表(blacklist_iq)175.程序描述175.1 取款子系統(tǒng)215.1.1功能215.1.2性能215.1.3輸入項(xiàng)目215.1.4輸出項(xiàng)目225.1.5算法225.1.6程序邏輯235.1.7接口235.1.8存儲(chǔ)分配245.1.9限制條件245.1.10測(cè)試要點(diǎn)245.2存款子系統(tǒng)245.2.1功能245.2.2性能245.2.3輸入項(xiàng)目245.2.4

4、輸出項(xiàng)目245.2.5算法255.2.6程序邏輯265.2.7接口265.2.8存儲(chǔ)分配275.2.9限制條件275.2.10測(cè)試要點(diǎn)275.3 轉(zhuǎn)賬子系統(tǒng)275.3.1功能275.3.2性能275.3.3輸入項(xiàng)目275.3.4輸出項(xiàng)目275.3.5算法285.3.6程序邏輯295.3.7接口295.3.8存儲(chǔ)分配305.3.9限制條件305.3.10測(cè)試要點(diǎn)305.4 查詢(xún)余額子系統(tǒng)305.4.1功能305.4.2性能305.4.3輸入項(xiàng)目305.4.4輸出項(xiàng)目305.4.5算法315.4.6程序邏輯325.4.7接口325.4.8存儲(chǔ)分配335.4.9限制條件335.4.10測(cè)試要點(diǎn)335

5、.5 修改密碼子系統(tǒng)335.5.1功能335.5.2性能335.5.3輸入項(xiàng)目335.5.4輸出項(xiàng)目335.5.5算法345.5.6程序邏輯355.5.7接口355.5.8存儲(chǔ)分配365.5.9限制條件365.5.10測(cè)試要點(diǎn)365.6 打印憑條子系統(tǒng)365.6.1功能365.6.2性能365.6.3輸入項(xiàng)目365.6.4輸出項(xiàng)目375.6.5算法375.6.6程序邏輯385.6.7接口385.6.8存儲(chǔ)分配395.6.9限制條件395.6.10測(cè)試要點(diǎn)396.程序396.1 atm006.ec396.2 atm006.h69詳細(xì)設(shè)計(jì)說(shuō)明書(shū)1引言1.1編寫(xiě)目的 atm自動(dòng)取款機(jī)系統(tǒng)是銀行業(yè)務(wù)流

6、程過(guò)程中十分重要且必備的環(huán)節(jié)之一,在銀行業(yè)務(wù)流程當(dāng)中起著承上啟下的作用,其重要性不言而喻。但是,目前許多銀行在具體的一些業(yè)務(wù)流程處理過(guò)程中仍然使用手工操作的方式來(lái)實(shí)施,不僅費(fèi)時(shí)、費(fèi)力,效率低下,而且無(wú)法達(dá)到理想的效果。為此,我們?cè)诿鞔_該軟件需求的基礎(chǔ)上,安排項(xiàng)目規(guī)劃與進(jìn)度、組織軟件開(kāi)發(fā)與測(cè)試,撰寫(xiě)本文檔。本文檔針對(duì)上述問(wèn)題,采用軟件工程的開(kāi)發(fā)原理,依據(jù)軟件流程過(guò)程規(guī)范,按照需求分析,概要設(shè)計(jì),程序編碼,軟件應(yīng)用等過(guò)程,開(kāi)發(fā)了這個(gè)系統(tǒng)。 1.2定義專(zhuān)業(yè)術(shù)語(yǔ)與縮略詞帳號(hào):在銀行中,事物應(yīng)用的單個(gè)帳號(hào)。每個(gè)顧客可以擁有多個(gè)帳號(hào)。用戶(hù):擁有銀行的一個(gè)或多個(gè)帳號(hào)的人??梢允且粋€(gè)人或多個(gè)人,或者是公司。相

7、同的人,擁有不同的銀行帳號(hào)被認(rèn)為是不同的落戶(hù)。atm:atm是automatic teller machine 的縮寫(xiě),意為自動(dòng)取款機(jī)。是一種高度精密的機(jī)電一體化設(shè)備,利用磁卡或智能ic卡儲(chǔ)存用戶(hù)信息并通過(guò)加密鍵盤(pán)輸入密碼然后通過(guò)銀行內(nèi)部網(wǎng)絡(luò)驗(yàn)證并進(jìn)行各種交易的金融自助設(shè)備。2總體設(shè)計(jì)2.1需求概述 隨著科技的發(fā)展,人們生活水平的不斷提高,高性能高效率的產(chǎn)品越來(lái)越受到人們的歡迎。 atm自動(dòng)取款機(jī)是一種非常智能的機(jī)器,人們可以直接與它交互,代替以前的手工操作,大大提高了銀行的工作效率。針對(duì)銀行業(yè)務(wù)種類(lèi)繁多、客戶(hù)需求量大等現(xiàn)象,為了減少銀行人員的工作任務(wù),方便客戶(hù),使用戶(hù)自己就可以在atm機(jī)上存

8、款、取款、查詢(xún)余額、轉(zhuǎn)賬、修改密碼、打印憑條、退卡等基礎(chǔ)功能。在這樣的需求下我們模擬開(kāi)發(fā)了atm自動(dòng)取款機(jī)系統(tǒng)。 2.2軟件結(jié)構(gòu)系統(tǒng)的層次結(jié)構(gòu)圖如圖2.1 圖2.1 系統(tǒng)的層次結(jié)構(gòu)3.基于uml的atm自動(dòng)取款機(jī)系統(tǒng)分析設(shè)計(jì)3.1 cim-1定義業(yè)務(wù)流程atm自動(dòng)取款機(jī)系統(tǒng)業(yè)務(wù)用例圖.該系統(tǒng)主要有兩個(gè)執(zhí)行者:銀行管理員和客戶(hù)。銀行管理員會(huì)啟動(dòng)或參與的業(yè)務(wù)主要有添加現(xiàn)金、維護(hù)atm硬件設(shè)備和協(xié)助客戶(hù)改密碼。客戶(hù)啟動(dòng)或參與的業(yè)務(wù)主要有修改密碼、取錢(qián)、轉(zhuǎn)賬和查詢(xún)余額。 圖3-1 客戶(hù)atm自動(dòng)取款機(jī)業(yè)務(wù)用例業(yè)務(wù)用例名稱(chēng)簡(jiǎn)述(1)修改密碼客戶(hù)于atm自動(dòng)取款機(jī)上可以進(jìn)行修改密碼業(yè)務(wù)操作(2)取錢(qián)客戶(hù)于

9、atm自動(dòng)取款機(jī)上可以進(jìn)行取錢(qián)操作(3)查詢(xún)余額客戶(hù)于atm自動(dòng)取款機(jī)上可以進(jìn)行查詢(xún)余額操作(4)轉(zhuǎn)賬客戶(hù)于atm自動(dòng)取款機(jī)上可以進(jìn)行轉(zhuǎn)賬操作 銀行管理員atm自動(dòng)取款機(jī)業(yè)務(wù)用例業(yè)務(wù)用例名稱(chēng)簡(jiǎn)述(1)修改密碼銀行管理員協(xié)助客戶(hù)修改密碼并做記錄(2)添加現(xiàn)金銀行管理員適時(shí)添加現(xiàn)金,方便客戶(hù)取款(3)維護(hù)atm硬件設(shè)備維護(hù)atm硬件設(shè)備,保證atm機(jī)正常工作3.2 cim-2 分析業(yè)務(wù)流程3.2.1 客戶(hù)取錢(qián)業(yè)務(wù)流程活動(dòng)圖.客戶(hù)首先將磁卡插入atm機(jī)中,初始化atm屏幕;根據(jù)屏幕提示輸入密碼,系統(tǒng)驗(yàn)證密碼正確性,若不正確,重新輸入密碼,若連續(xù)輸入密碼三次不正確,退出服務(wù).若輸入密碼正確,客戶(hù)根據(jù)提

10、示選擇取款服務(wù),然后輸入取款數(shù)額,系統(tǒng)判斷輸入的取款數(shù)額的合法性,若不合法(這里不考慮透支)退出服務(wù);若合法,吐款機(jī)吐款. 圖3-23.2.2 客戶(hù)轉(zhuǎn)賬業(yè)務(wù)流程活動(dòng)圖. 客戶(hù)首先將磁卡插入atm機(jī)中,初始化atm屏幕;根據(jù)屏幕及語(yǔ)音提示輸入密碼,系統(tǒng)驗(yàn)證密碼正確性,若不正確,重新輸入密碼,若連續(xù)輸入密碼三次不正確,退出服務(wù).若輸入密碼正確,客戶(hù)根據(jù)屏幕提示選擇轉(zhuǎn)賬服務(wù),進(jìn)入轉(zhuǎn)賬/匯款的操作界面,選擇要轉(zhuǎn)入卡的賬戶(hù)類(lèi)型(銀行卡或存折),然后輸入所要轉(zhuǎn)入卡的卡號(hào),輸入轉(zhuǎn)賬金額。退出 圖3-33.2.3 客戶(hù)修改密碼業(yè)務(wù)用例活動(dòng)圖客戶(hù)首先將磁卡插入atm機(jī)中,初始化atm屏幕;根據(jù)屏幕及語(yǔ)音提示輸入

11、密碼,系統(tǒng)驗(yàn)證密碼正確性,若不正確,重新輸入密碼,若連續(xù)輸入密碼三次不正確,退出服務(wù).若輸入密碼正確,客戶(hù)根據(jù)屏幕提示選擇修改密碼服務(wù),進(jìn)入修改密碼服務(wù)界面。根據(jù)語(yǔ)音及界面提示兩次輸入客戶(hù)欲設(shè)置的新密碼。系統(tǒng)驗(yàn)證新密碼的合法性,看是否是六位數(shù),兩次輸入是否一致等。如通過(guò)驗(yàn)證,系統(tǒng)通過(guò)aym屏幕提示客戶(hù)密碼修改成功。最后退出服務(wù)。 圖3-43.2.4 客戶(hù)查詢(xún)余額業(yè)務(wù)用例活動(dòng)圖客戶(hù)首先將磁卡插入atm機(jī)中,初始化atm屏幕;根據(jù)屏幕及語(yǔ)音提示輸入密碼,系統(tǒng)驗(yàn)證密碼正確性,若不正確,重新輸入密碼,若連續(xù)輸入密碼三次不正確,退出服務(wù).若輸入密碼正確,客戶(hù)根據(jù)屏幕提示選擇修改密碼服務(wù),進(jìn)入查詢(xún)余額服務(wù)

12、界面。按下確認(rèn)按鈕.系統(tǒng)連接綜存系統(tǒng),計(jì)算客戶(hù)賬戶(hù)余額,并通過(guò)atm機(jī)顯示屏幕顯示給客戶(hù). 圖3-53.3 cim-3定義系統(tǒng)范圍.3.3.1 客戶(hù)包下可啟動(dòng)的系統(tǒng)用例 圖3-6系統(tǒng)用例名稱(chēng)簡(jiǎn)述(1)轉(zhuǎn)賬客戶(hù)到atm機(jī)使用系統(tǒng)執(zhí)行轉(zhuǎn)賬業(yè)務(wù)(2)取款客戶(hù)到atm機(jī)使用系統(tǒng)執(zhí)行取款業(yè)務(wù)(3)修改密碼客戶(hù)到atm機(jī)使用系統(tǒng)執(zhí)行修改密碼操作(4)查詢(xún)余額客戶(hù)到atm機(jī)使用系統(tǒng)執(zhí)行查詢(xún)余額操作3.3.2 銀行管理員包下的系統(tǒng)用例圖 圖3-7系統(tǒng)用例名稱(chēng)簡(jiǎn)述(1)添加現(xiàn)金銀行管理員用atm系統(tǒng)添加現(xiàn)金(2)維護(hù)硬件設(shè)備銀行管理員維護(hù)硬件系統(tǒng)3.2.3定時(shí)啟動(dòng)者包下的系統(tǒng)用例 圖3-8 系統(tǒng)用例名稱(chēng)簡(jiǎn)述(1

13、)計(jì)算利息系統(tǒng)于約定時(shí)間自動(dòng)計(jì)算利息(2)扣除利息和手續(xù)費(fèi)系統(tǒng)于交易發(fā)生后扣除手續(xù)費(fèi),系統(tǒng)于約定時(shí)間扣除利息稅(3)業(yè)務(wù)短信系統(tǒng)于交易發(fā)生后自動(dòng)發(fā)送短信給客戶(hù)3.4 pim-1分析業(yè)務(wù)流程3.4.1 suc001-取款系統(tǒng)用例業(yè)務(wù)用例名稱(chēng)取款用例編號(hào)suc001用例簡(jiǎn)述客戶(hù)在atm機(jī)上取款用例圖主要流程(1) 客戶(hù)插入磁卡,初始化atm系統(tǒng)屏幕(2) 系統(tǒng)提示輸入密碼。(3) 客戶(hù)輸入密碼并通過(guò)系統(tǒng)驗(yàn)證(4) 系統(tǒng)列出服務(wù)項(xiàng)目(5) 客戶(hù)選擇取款,輸入取款金額,按下確定鍵。(6) 系統(tǒng)驗(yàn)證取款數(shù)額的合法性。并計(jì)算出手續(xù)費(fèi)(7) 系統(tǒng)連接到綜存系統(tǒng),查詢(xún)賬戶(hù)余額,確認(rèn)余額是否足夠。(8) 吐款機(jī)

14、吐款,交易成立(9) 系統(tǒng)提供打印功能,供客戶(hù)選擇是否打印替代流程(3)a密碼錯(cuò)誤系統(tǒng)出現(xiàn)密碼錯(cuò)誤警告。并返回主要流程(2),供客戶(hù)重新輸入密碼(6)a金額不符系統(tǒng)出現(xiàn)取款金額必須為50元整數(shù)的信息,回到主要流程(5),供客戶(hù)重新輸入取款金額(6)b金額過(guò)低系統(tǒng)出現(xiàn)最低取款的信息,回到主要流程(5),供客戶(hù)重新輸入取款金額(6)c 金額過(guò)高系統(tǒng)出現(xiàn)最高取款的信息,回到主要流程(5),供客戶(hù)重新輸入取款金額(7)a余額不足系統(tǒng)出現(xiàn)余額不足的信息,回到主要流程(5),供客戶(hù)重新輸入取款金額業(yè)務(wù)規(guī)則(1) 交易款項(xiàng)=取款金額+手續(xù)費(fèi)(2) 手續(xù)費(fèi)=取款金額*銀行管理費(fèi)*銀行折扣(3) 取款金額最低為

15、50元,取款金額最高為5000(4) 取款金額為非作50元的整數(shù)倍(5) 系統(tǒng)按照銀行原有編碼方式生成交易編號(hào)其他打印了取款憑條3.4.2 suc002-轉(zhuǎn)賬業(yè)務(wù)系統(tǒng)用例用例名稱(chēng)轉(zhuǎn)賬用例編號(hào)suc002用例簡(jiǎn)述客戶(hù)atm機(jī)上轉(zhuǎn)賬用例圖主要流程(1) 客戶(hù)插入磁卡,初始化atm系統(tǒng)屏幕(2) 系統(tǒng)提示輸入密碼。(3) 客戶(hù)輸入密碼并通過(guò)系統(tǒng)驗(yàn)證(4) 系統(tǒng)列出服務(wù)項(xiàng)目(5) 客戶(hù)選擇取款,輸入轉(zhuǎn)賬金額,按下確定鍵。(6) 系統(tǒng)驗(yàn)證轉(zhuǎn)賬數(shù)額的合法性。并計(jì)算出手續(xù)費(fèi)(7) 系統(tǒng)連接到綜存系統(tǒng),查詢(xún)賬戶(hù)余額,確認(rèn)余額是否足夠。(8) 交易成立,系統(tǒng)提供打印功能,供客戶(hù)選擇是否打印替代流程3)a密碼錯(cuò)誤

16、系統(tǒng)出現(xiàn)密碼錯(cuò)誤警告。并返回主要流程(2),供客戶(hù)重新輸入密碼(6)a金額不符系統(tǒng)出現(xiàn)轉(zhuǎn)賬金額必須為50元整數(shù)的信息,回到主要流程(5),供客戶(hù)重新輸入取款金額(6)b金額過(guò)低系統(tǒng)出現(xiàn)最低取款的信息,回到主要流程(5),供客戶(hù)重新輸入取款金額(6c金額過(guò)高系統(tǒng)出現(xiàn)最高取款的信息,回到主要流程(5),供客戶(hù)重新輸入取款金額(7)a余額不足系統(tǒng)出現(xiàn)余額不足的信息,回到主要流程(5),供客戶(hù)重新輸入取款金額業(yè)務(wù)規(guī)則(1) 交易款項(xiàng)=轉(zhuǎn)賬金額+手續(xù)費(fèi)(2) 手續(xù)費(fèi)=轉(zhuǎn)賬金額*銀行管理費(fèi)*銀行折扣(3) 轉(zhuǎn)賬最低金額為50元,最高為5000元(4) 系統(tǒng)按照銀行原有編碼方式生成交易編號(hào)3.4.3 suc

17、003- 修改密碼業(yè)務(wù)系統(tǒng)用例用例名稱(chēng)修改密碼用例編號(hào)suc003用例簡(jiǎn)述客戶(hù)在atm機(jī)上修改客戶(hù)密碼用例圖主要流程(1) 客戶(hù)插入磁卡,初始化atm系統(tǒng)屏幕(2) 系統(tǒng)提示輸入密碼。(3) 客戶(hù)輸入密碼并通過(guò)系統(tǒng)驗(yàn)證(4) 系統(tǒng)列出服務(wù)項(xiàng)目(5) 客戶(hù)選擇修改密碼,按下確定鍵。(6) 客戶(hù)連續(xù)三次輸入新密碼,按下確定鍵。替代流程3)a密碼錯(cuò)誤系統(tǒng)出現(xiàn)密碼錯(cuò)誤警告。并返回主要流程(2),供客戶(hù)重新輸入密碼6)a密碼不符系統(tǒng)出現(xiàn)密碼格式必須為6位數(shù)字的信息,回到主要流程(5),供客戶(hù)重新輸入新密碼。6) b密碼不同系統(tǒng)出現(xiàn)三次輸入密碼不一致的信息,回到主要流程(5),供客戶(hù)重新輸入新密碼。3.4

18、.4 suc004- 查詢(xún)余額業(yè)務(wù)系統(tǒng)用例用例名稱(chēng)查詢(xún)余額用例編號(hào)suc004用例簡(jiǎn)述客戶(hù)在atm機(jī)上查詢(xún)余額用例圖主要流程(1) 客戶(hù)插入磁卡,初始化atm系統(tǒng)屏幕(2) 系統(tǒng)提示輸入密碼。(3) 客戶(hù)輸入密碼并通過(guò)系統(tǒng)驗(yàn)證(4) 系統(tǒng)列出服務(wù)項(xiàng)目(5) 客戶(hù)選擇查詢(xún)余額,按下確定鍵。(6) 系統(tǒng)連接到綜存系統(tǒng),查詢(xún)賬戶(hù)余額,并根據(jù)銀行的規(guī)定計(jì)算出賬戶(hù)余額。(7) atm系統(tǒng)屏幕顯示客戶(hù)賬戶(hù)余額與可用余額替代流程3)a密碼錯(cuò)誤系統(tǒng)出現(xiàn)密碼錯(cuò)誤警告。并返回主要流程(2),供客戶(hù)重新輸入密碼3.5 pim-2 分析業(yè)務(wù)規(guī)則狀態(tài)圖(取款)客戶(hù)取款業(yè)務(wù)的狀態(tài)分析:從客戶(hù)插入磁卡的起始狀態(tài)到結(jié)狀態(tài),中

19、間還有輸入密碼,選擇服務(wù),取款,吐款狀態(tài).(1)客戶(hù)插入磁卡初始化atm系統(tǒng)屏幕,進(jìn)入屏幕提示輸入密碼界面,客戶(hù)此時(shí)可有輸入密碼動(dòng)作(doaction)。(2)若密碼輸入不正確,返回輸入密碼,若三次輸入不正確,退卡。若密碼通過(guò)系統(tǒng)驗(yàn)證,進(jìn)入選擇服務(wù)類(lèi)型界面。此時(shí)客戶(hù)的動(dòng)作可以為選擇取款,選擇修改密碼,選擇轉(zhuǎn)賬,選擇查詢(xún)爺額。(3)若客戶(hù)選擇取款服務(wù)后進(jìn)入取款界面,此時(shí)客戶(hù)可以動(dòng)作為輸入取款數(shù)額。(40若輸入取款數(shù)額不合法,退卡。系統(tǒng)驗(yàn)證取款熟額合法后,進(jìn)入吐款機(jī)吐款狀態(tài)。4. atm數(shù)據(jù)庫(kù)的創(chuàng)建4.1 atm自動(dòng)取款機(jī)關(guān)聯(lián)系統(tǒng)數(shù)據(jù)表結(jié)構(gòu)4.1.1客戶(hù)信息存儲(chǔ)客戶(hù)基本信息表(customerme

20、ssage_iq)序號(hào)字段名標(biāo)識(shí)數(shù)據(jù)類(lèi)型主鍵默認(rèn)值是否null數(shù)據(jù)字典表來(lái)源備注1卡號(hào)cm_accountidchar(19)pk非空2客戶(hù)名稱(chēng)cm_cusnamechar(20)3身份證cm_idnochar(18)pk非空4住址cm_addresschar(60)5手機(jī)號(hào)cm_phonenuchar(11)6辦卡日期cm_recorddatechar(8)4.1.2銀行卡信息存儲(chǔ)客戶(hù)銀行卡基本信息表(cardinfo_iq)序號(hào)字段名標(biāo)識(shí)數(shù)據(jù)類(lèi)型主鍵默認(rèn)值是否null數(shù)據(jù)字典表來(lái)源備注1卡號(hào)ci_accountidchar(19)pk非空2密碼ci_passwordchar(6)3賬戶(hù)狀態(tài)

21、ci_accountstatechar(1)4剩余金額ci_balancedecimal(18,2)4.1.3交易流水記錄交易流水表(tradelist_iq)序號(hào)字段名標(biāo)識(shí)數(shù)據(jù)類(lèi)型主鍵默認(rèn)值是否null數(shù)據(jù)字典表來(lái)源備注1交易流水號(hào)tl_tradeidintpk非空2卡號(hào)tl_accountidchar(19)3自動(dòng)取款機(jī)編號(hào)tl_atmidchar(6)5取款tl_withdrawint5存款tl_depositint6余額tl_restmonydecimal(18,2)7交易時(shí)間tl_tradedatechar(8)4.1.4黑名單黑名單增刪改查表(blacklist_iq)序號(hào)字段名標(biāo)

22、識(shí)數(shù)據(jù)類(lèi)型主鍵默認(rèn)值是否null數(shù)據(jù)字典表來(lái)源備注1卡號(hào)bl_accountidchar(19)pk非空4.2 數(shù)據(jù)庫(kù)建表語(yǔ)句4.2.1客戶(hù)信息存儲(chǔ)客戶(hù)基本信息表(customermessage_iq)if exists (select 1 from sysobjects where id = object_id(customermessage_iq) and type = u) drop table customermessage_iqgocreate table customermessage_iq( cm_accountid char(19) not null, cm_cusname c

23、har(20) null, cm_idno char(18) not null, cm_address char(60) null, cm_phonenu char(11) null, cm_recorddate char(8) null)gocreate unique index customermessage_iq_index on customermessage_iq(cm_accountid,cm_idno)go4.2.2銀行卡信息存儲(chǔ)客戶(hù)銀行卡基本信息表(cardinfo_iq)if exists (select 1 from sysobjects where id = object

24、_id(cardinfo_iq) and type = u) drop table cardinfo_iqgocreate table cardinfo_iq( ci_accountid char(19) not null, ci_password char(6) null, ci_accountstate char(1) null, ci_balance decimal(18,2) null)gocreate unique index cardinfo_iq_index on cardinfo_iq (ci_accountid)go4.2.3交易流水記錄交易流水表(tradelist_iq)

25、if exists (select 1 from sysobjects where id = object_id(tradelist_iq) and type = u) drop table tradelist_iqgocreate table tradelist_iq( tl_tradeid int not null, tl_accountid char(19) null, tl_atmid char(6) null, tl_withdraw int null, tl_deposit int null, tl_restmony decimal(18,2) null, tl_tradedate

26、 char(8) null)gocreate unique index tradelist_iq_index on tradelist_iq(tl_tradeid)go4.2.4黑名單黑名單增刪改查表(blacklist_iq)if exists (select 1 from sysobjects where id = object_id(blacklist_iq) and type = u) drop table blacklist_iqgocreate table blacklist_iq( bl_accountid char(19) not null)gocreate unique in

27、dex blacklist_iq_index on blacklist_iq(bl_accountid)go5.程序描述atm自動(dòng)取款機(jī)系統(tǒng)包括六個(gè)子系統(tǒng)和七個(gè)相應(yīng)的模塊。六個(gè)子系統(tǒng)分別是:取款系統(tǒng)、存款系統(tǒng)、修改密碼系統(tǒng)、查詢(xún)余額系統(tǒng),打印憑條系統(tǒng)。七個(gè)模塊分別是:讀卡機(jī)模塊如圖3.1、鍵盤(pán)輸入模塊如圖3.2、ic卡認(rèn)證模塊如圖3.3、顯示模塊如圖3.4、吐錢(qián)機(jī)模塊如圖3.5、打印憑條模塊如圖3.6,數(shù)據(jù)存儲(chǔ)模塊如圖3.7。圖3.1讀卡機(jī)模塊的數(shù)據(jù)流程圖圖3.2 鍵盤(pán)輸入模塊的數(shù)據(jù)流程圖圖 3.3 ic卡認(rèn)證模塊的數(shù)據(jù)流程圖圖3.4 顯示模塊數(shù)據(jù)流程圖圖 3.5吐錢(qián)機(jī)模塊的數(shù)據(jù)流程圖圖3.6

28、 打印憑條模塊的數(shù)據(jù)流程圖圖 3.7 數(shù)據(jù)存儲(chǔ)模塊的數(shù)據(jù)流程圖5.1 取款子系統(tǒng)5.1.1功能 用戶(hù)可以在atm自動(dòng)取款機(jī)上完成取款的操作。5.1.2性能在取款的時(shí)候,atm自動(dòng)取款機(jī)的反應(yīng)時(shí)間不能超過(guò)2秒,在45秒內(nèi)完成所有的取款動(dòng)作,否則自動(dòng)退卡。5.1.3輸入項(xiàng)目表3-1 取款的輸入項(xiàng)目名稱(chēng)類(lèi)型銀行卡磁卡密碼int(6位整數(shù))取款金額int(100的整數(shù)倍,不能超過(guò)2500)5.1.4輸出項(xiàng)目表3-2 取款的輸出項(xiàng)目名稱(chēng)類(lèi)型紙幣憑條文本5.1.5算法圖3.8 取款的活動(dòng)圖5.1.6程序邏輯圖3.9 取款的時(shí)序圖5.1.7接口系統(tǒng)程序內(nèi)部在功能模塊下設(shè)置的程序接口見(jiàn)表3-3,圖3.10表3

29、-3 取款的軟件接口函數(shù)輸入輸出open()卡號(hào) 密碼提示信息withdrawfunds()金額紙幣deductfunds()無(wú)無(wú)verifyfunds()無(wú)無(wú)圖3.10 取款的類(lèi)圖5.1.8存儲(chǔ)分配賬戶(hù)表 儲(chǔ)蓄卡表 atm表 清單表5.1.9限制條件atm自動(dòng)取款機(jī)中紙幣沒(méi)有了。5.1.10測(cè)試要點(diǎn) 因?yàn)楹玫漠a(chǎn)品才能得到用戶(hù)的認(rèn)可和肯定,所以要對(duì)系統(tǒng)的反應(yīng)速度、準(zhǔn)確性(輸入的金額數(shù)和吐錢(qián)機(jī)吐出的錢(qián)數(shù)要一致)和安全性,以及系統(tǒng)的穩(wěn)定應(yīng)有非常高的要求。5.2存款子系統(tǒng)5.2.1功能用戶(hù)可以通過(guò)和atm自動(dòng)取款機(jī)交互,完成存款的操作。5.2.2性能系統(tǒng)的反應(yīng)時(shí)間是不能超過(guò)2秒,完成取款操作的時(shí)間不

30、能超過(guò)30秒。5.2.3輸入項(xiàng)目表3-4 存款子系統(tǒng)的輸入項(xiàng)目名稱(chēng)類(lèi)型銀行卡磁卡密碼int(6位整數(shù))金額int(100的整數(shù)倍)賬號(hào)19位整數(shù)5.2.4輸出項(xiàng)目表3-5 存款子系統(tǒng)的輸出項(xiàng)目名稱(chēng)類(lèi)型憑條文本5.2.5算法圖3.11 存款的活動(dòng)圖5.2.6程序邏輯圖3.12 存款的時(shí)序圖5.2.7接口系統(tǒng)程序內(nèi)部在功能模塊下設(shè)置的程序接口見(jiàn)表3-6 ,圖3.13表3-6 存款子系統(tǒng)的軟件接口函數(shù)輸入輸出open()卡號(hào) 密碼提示信息depositfunds()金額無(wú)addfunds()無(wú)無(wú)verifyfunds()無(wú)無(wú)圖3.13 存款的類(lèi)圖5.2.8存儲(chǔ)分配賬戶(hù)表 儲(chǔ)蓄卡表 atm表 清單表5

31、.2.9限制條件atm自動(dòng)取款機(jī)中的紙幣以滿(mǎn),不能再放入紙幣。5.2.10測(cè)試要點(diǎn)好的產(chǎn)品才能得到用戶(hù)的認(rèn)可和肯定,只有得到用戶(hù)的肯定才會(huì)有市場(chǎng),為此要對(duì)系統(tǒng)的反應(yīng)速度、準(zhǔn)確性(能準(zhǔn)確讀取放入的紙幣數(shù)目)和安全性,以及系統(tǒng)的穩(wěn)定應(yīng)有非常高的要求。5.3 轉(zhuǎn)賬子系統(tǒng)5.3.1功能用戶(hù)可以通過(guò)和atm自動(dòng)取款機(jī)交互,完成轉(zhuǎn)賬的操作。5.3.2性能系統(tǒng)的反應(yīng)時(shí)間是不能超過(guò)2秒,完成轉(zhuǎn)賬操作的時(shí)間不能超過(guò)30秒。5.3.3輸入項(xiàng)目表3-7 轉(zhuǎn)賬子系統(tǒng)的輸入項(xiàng)目名稱(chēng)類(lèi)型銀行卡磁卡密碼int(6位整數(shù))賬號(hào)19位整數(shù)金額int(100的整數(shù)倍) 5.3.4輸出項(xiàng)目表3-8 轉(zhuǎn)賬子系統(tǒng)的輸出項(xiàng)目名稱(chēng)類(lèi)型憑條

32、文本5.3.5算法圖3.14 轉(zhuǎn)賬的活動(dòng)圖5.3.6程序邏輯圖3.15 轉(zhuǎn)賬的時(shí)序圖5.3.7接口系統(tǒng)程序內(nèi)部在功能模塊下設(shè)置的程序接口見(jiàn)表3-9,圖3.16表3-9 轉(zhuǎn)賬子系統(tǒng)的軟件接口函數(shù)輸入輸出open()卡號(hào) 密碼提示信息transferfunds()金額無(wú)deductfunds()無(wú)無(wú)verifyfunds()無(wú)無(wú)圖3.16 轉(zhuǎn)賬的類(lèi)圖5.3.8存儲(chǔ)分配賬戶(hù)表 儲(chǔ)蓄卡表 atm表 清單表5.3.9限制條件銀行卡里的余額不足或不是同一類(lèi)型的卡。5.3.10測(cè)試要點(diǎn)好的產(chǎn)品才能得到用戶(hù)的認(rèn)可和肯定,只有得到用戶(hù)的肯定才會(huì)有市場(chǎng),為此要對(duì)系統(tǒng)的反應(yīng)速度、準(zhǔn)確性(轉(zhuǎn)走的金額和轉(zhuǎn)入到某一賬戶(hù)的

33、金額數(shù)一致,數(shù)據(jù)庫(kù)里的信息要準(zhǔn)確的更新)和安全性,以及系統(tǒng)的穩(wěn)定應(yīng)有非常高的要求。5.4 查詢(xún)余額子系統(tǒng)5.4.1功能用戶(hù)可以通過(guò)和atm自動(dòng)取款機(jī)交互,完成查詢(xún)余額的操作。5.4.2性能系統(tǒng)的反應(yīng)時(shí)間是不能超過(guò)2秒,完成查詢(xún)余額操作的時(shí)間不能超過(guò)30秒。5.4.3輸入項(xiàng)目表3-10 余額查詢(xún)子系統(tǒng)的輸入項(xiàng)目名稱(chēng)類(lèi)型銀行卡磁卡密碼int(6為整數(shù))5.4.4輸出項(xiàng)目表3-11 余額查詢(xún)子系統(tǒng)的輸出項(xiàng)目名稱(chēng)類(lèi)型憑條文本5.4.5算法圖3.17 余額查詢(xún)的活動(dòng)圖5.4.6程序邏輯圖 3.18 余額查詢(xún)的時(shí)序圖5.4.7接口系統(tǒng)程序內(nèi)部在功能模塊下設(shè)置的程序接口見(jiàn)表3-12,圖3.19表3-12 查

34、詢(xún)余額子系統(tǒng)的軟件接口函數(shù)輸入輸出open()卡號(hào) 密碼無(wú)query()無(wú)無(wú)圖3.19 余額查詢(xún)的類(lèi)圖5.4.8存儲(chǔ)分配賬戶(hù)表 儲(chǔ)蓄卡表 清單表5.4.9限制條件硬件故障5.4.10測(cè)試要點(diǎn)好的產(chǎn)品才能得到用戶(hù)的認(rèn)可和肯定,只有得到用戶(hù)的肯定才會(huì)有市場(chǎng),為此要對(duì)系統(tǒng)的反應(yīng)速度有非常高的要求,這也是最基本的要求。5.5 修改密碼子系統(tǒng)5.5.1功能用戶(hù)可以通過(guò)和atm自動(dòng)取款機(jī)交互,完成修改密碼的操作。5.5.2性能系統(tǒng)的反應(yīng)時(shí)間是不能超過(guò)2秒,完成修改密碼操作的時(shí)間不能超過(guò)30秒。5.5.3輸入項(xiàng)目表3-13修改密碼子系統(tǒng)的輸入項(xiàng)目名稱(chēng)類(lèi)型銀行卡磁卡舊密碼int(6為整數(shù))新密碼int(6為整

35、數(shù))5.5.4輸出項(xiàng)目表3-14 修改密碼子系統(tǒng)的輸出項(xiàng)目名稱(chēng)類(lèi)型憑條文本5.5.5算法圖 3.20 修改密碼的活動(dòng)圖5.5.6程序邏輯圖3.21 修改密碼的時(shí)序圖5.5.7接口系統(tǒng)程序內(nèi)部在功能模塊下設(shè)置的程序接口見(jiàn)表3-15,圖3.22 表 3-15修改密碼子系統(tǒng)的軟件接口函數(shù)輸入輸出open()卡號(hào) 密碼無(wú)alterpassword()舊密碼 新密碼無(wú)圖3.22 修改密碼的類(lèi)圖5.5.8存儲(chǔ)分配賬戶(hù)表 儲(chǔ)蓄卡表 清單表5.5.9限制條件忘記了舊密碼5.5.10測(cè)試要點(diǎn)好的產(chǎn)品才能得到用戶(hù)的認(rèn)可和肯定,為此要對(duì)系統(tǒng)的反應(yīng)速度、 安全性,以及系統(tǒng)的穩(wěn)定有非常高的要求。5.6 打印憑條子系統(tǒng)5

36、.6.1功能用戶(hù)可以通過(guò)和atm自動(dòng)取款機(jī)交互,完成一些基本的操作。如取款、存款、查詢(xún)余額、修改密碼,轉(zhuǎn)賬等。為了確保用戶(hù)安全性和系統(tǒng)的穩(wěn)定性,打印憑條子系統(tǒng)可以記錄這些相關(guān)的操作,相當(dāng)于文本形式的日志。如果出現(xiàn)錯(cuò)誤可以憑借憑條到銀行進(jìn)行核實(shí)。5.6.2性能系統(tǒng)的反應(yīng)時(shí)間是不能超過(guò)2秒,完成相應(yīng)操作后打印憑條的時(shí)間不能超過(guò)30秒。5.6.3輸入項(xiàng)目表3-16 打印憑條子系統(tǒng)的輸入項(xiàng)目名稱(chēng)類(lèi)型銀行磁卡密碼int(6為整數(shù))取款、轉(zhuǎn)賬等相關(guān)動(dòng)作5.6.4輸出項(xiàng)目表3-17 打印憑條子系統(tǒng)的輸出項(xiàng)目名稱(chēng)類(lèi)型憑條文本5.6.5算法圖 3.23 打印憑條的活動(dòng)圖5.6.6程序邏輯圖3.24 打印憑條的時(shí)

37、序圖5.6.7接口系統(tǒng)程序內(nèi)部在功能模塊下設(shè)置的程序接口見(jiàn)表3-18,圖3.25表 3-18 打印憑條子系統(tǒng)的軟件接口函數(shù)輸入輸出open()卡號(hào) 密碼無(wú)printslip()無(wú)憑條(清單)圖3.25 打印憑條的類(lèi)圖5.6.8存儲(chǔ)分配賬戶(hù)表 儲(chǔ)蓄卡表 清單表 atm表5.6.9限制條件 atm自動(dòng)取款機(jī)里的憑條紙用完了、紙幣沒(méi)有了或是硬件出項(xiàng)了故障。5.6.10測(cè)試要點(diǎn)對(duì)系統(tǒng)的反應(yīng)速度,穩(wěn)定性有非常高的要求,以達(dá)到用戶(hù)的滿(mǎn)意度。6.程序6.1 atm006.ec/* 文件名 :atm006.ec 提交日期:2013.04.18 版本號(hào) :1.0 功能說(shuō)明:atm自動(dòng)取款機(jī)的基本功能(取款、存款

38、、查詢(xún)、轉(zhuǎn)賬、更改密碼) 所有者 :閆海鑫 維護(hù)記錄: */#include atm006.hexec sql include sqlca;exec sql whenever sqlerror call sqlerrorhandler();exec sql whenever sqlwarning call sqlwarninghandler();exec sql whenever not found call sqlnotfoundhandler(); int main(int argc, char *argv) atexit(batatexit); int ichoice; int icho

39、ice1; char cflag; int iflag = 1; int iflag1 = 1; int iflag2 = 1; int iloop = 0; char sztemp128; float fchange; /*轉(zhuǎn)賬金額*/ char szcusname20 + 1; /*戶(hù)主姓名*/ float fbalance; /*剩余金額*/ char szaccountid19 + 1; /*銀行卡號(hào)*/ char sztoaccountid19 + 1; /*轉(zhuǎn)入銀行卡卡號(hào)*/ char szpassword6 + 1; /*銀行密碼*/ char sznewpassword6 +

40、1; /*新密碼*/ /*清空數(shù)組*/ clrstu(stdbobj); clrbuf(szaccountid); /*設(shè)置日志文件名*/ bel_setdiagfile(log_path); bel_printdiaglog( nn=procedure %s begin=n, program_name); /*調(diào)用getdbini函數(shù),讀取db.ini,獲得數(shù)據(jù)庫(kù)連接信息*/ if (fail = getdbini(&stdbobj) bel_printdiaglog(配置文件讀取失敗!); return fail; /*調(diào)用數(shù)據(jù)庫(kù)連接函數(shù)*/ if (success != bel_dbco

41、nnect(&stdbobj) bel_printdiaglog(數(shù)據(jù)庫(kù)連接失敗!); return fail; /*獲取卡號(hào)*/ printf(請(qǐng)輸入卡號(hào):); scanf(%s,sztemp); memcpy(szaccountid,sztemp,19); strcat(szaccountid,0); bel_trimstring(szaccountid); bel_printdiaglog(szaccountid = %s,szaccountid); /*校驗(yàn)卡號(hào)*/ if (fail = checkaccountid(szaccountid) return fail; /*獲取并校驗(yàn)校驗(yàn)密碼*/ while(1) clrbuf(szpassword); clrbuf(sztemp); printf(請(qǐng)輸入密碼:); scanf(%s,sztemp); memcpy(szpassword,sztemp,6); s

溫馨提示

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

評(píng)論

0/150

提交評(píng)論