工行ATM轉帳——事務操做

今兒去工行ATM給已朋友轉帳,遇到這麼個狀況:

選擇對外轉帳後輸入轉入帳號(輸入兩次),接着提示輸入轉入金額(輸入一次金額),按肯定,系統提示交易中,3秒左右,
提示「輸入帳號無效」,系統自動中斷了操做,回到了初始界面,我勒個去,只好退卡,再試一次結果仍是同樣,最後只好打電話
和朋友肯定帳號,原來帳號顛倒了倆個數字,汗死;再次去ATM操做轉帳,轉帳成功,我梳理下這個轉帳流程(省略插卡,輸入密碼步驟):
1,選擇轉帳
2,選擇轉帳類型(對外,對內,幣中)
3,輸入兩次轉入帳號
4,輸入一次轉入金額,按「肯定」按鈕
5,系統開始交易(自動),約 3~5秒出現提示「轉入,xxx號xxx金額」
6,提示成功(自動)流程結束

這裏忽略異常處理,從這個流程中能夠看出有這麼2個問題,

1,輸入兩次帳號後並無真實驗證輸入帳號的有效性(這兩次1,2次僅是驗證了帳號是否一致)這個驗證可能放到了後面」肯定「按鈕後,個人理由是這裏操做很快體系也沒有等待現象,主要是最後的交易中提示了「轉入帳號無效」的提示

2,輸入金額後,點擊」肯定「後,開始交易,最後提示「轉入,xxx號xxx金額」,系統自動就完成了轉帳過程,並無再次提示
「轉入,xxx號xxx金額」讓用戶最終確認,若是這裏輸入錯誤且有效的卡號,那錢就轉到別人帳號中取了,豈不杯具鳥,這裏全部驗證都是在輸入金額按」確認「後進行(轉出,轉入驗證等),看似簡化了操做,其實前面作了一大堆的操做,最後流程(若是異常)整個操做就失敗了,系統作無用功
,客戶也作無用功,我猜想在按」肯定「後,操做應該進入了事務階段,這裏有任何異常,都會退出或者回滾。也就說,這個事務階段很「長」

我的認爲,
1,輸入兩次帳號後,系統應該驗證帳號(背後也要驗證轉出帳號是否合法)的合法性,這裏並不須要事務,合法則往下操做,不然中斷操做,引導用戶返回操做(不要系統自動返回並結束流程)
2,在輸入轉入金額後,提示」轉入xxx帳號xxx金額「,這裏應該讓用戶「確認」,這裏也不須要事務
3,最後在用戶按」肯定「按鈕後再開始轉帳,這裏開始事務
4,其餘步驟同樣

這裏有兩個驗證一個是系統驗證帳號的合法性另外一個是用戶看到」轉入xxx帳號xxx金額「肯定操做後,而不是輸入金額後「肯定」(這裏看不到」轉入xxx帳號xxx金額「,最後系統倒提示了「轉入xxx帳號xxx金額」這個時候用戶是沒有任何操做權的),系統開始正式轉帳到這裏全部條件都具有了(不要把準備工做放入事務,只把必要的操做放入事務),好處是,縮短事務範圍,讓用戶最終肯定轉帳(也能夠在輸入兩次帳號後讓用戶肯定轉入帳號,這樣用戶有兩次決定權,而不是一次決定權)ajax

相關文章
相關標籤/搜索