Ứng dụng sự phát triển của công nghệ thông tin vào trong việc quản lý Tài khoản giao dịch của khách hàng, Nhóm sinh viên chúng em quyết định xây dựng “Phần mềm giao dịch trên máy ATM” với mục đích giúp mọi người hiểu rõ được những ưu điểm của thẻ ATM và cách dùng thẻ để giao dịch trên máy ATM. Hệ thống có các chức năng: “Rút tiền, Chuyển khoản, Vấn tin, Đổi mã pin, WFOA”.
Trang 1ĐỒ ÁN MÔN HỌC
ĐỀ TÀI PHẦN MỀM GIAO DỊCH
TRÊN MÁY ATM
GVHD: Trương Thị Ngọc Phượng
Lớp 121101 Sinh viên thực hiện:
Nguyễn Vũ Trường Giang - 12110039Nguyễn Đình Hoàng Khánh 12110081Lâm Khánh Tài – 12110168
Trang 2Mục lục
Mục lục 2
CHƯƠNG 1: TỔNG QUAN ĐỀ TÀI 3
CHƯƠNG 2: XÁC ĐỊNH YÊU CẦU 5
CHƯƠNG 3: MÔ HÌNH HÓA YÊU CẦU 7
CHƯƠNG 4: THIẾT KẾ DỮ LIỆU 11
CHƯƠNG 5: THIẾT KẾ GIAO DIỆN 14
CHƯƠNG 6: KIỂM THỬ 26
Tài liệu tham khảo: 29
Trang 3CHƯƠNG 1: TỔNG QUAN ĐỀ TÀI
Trong những năm gần đây, ngành công nghệ thông tin đã phát triển một cáchnhanh chóng và có nhiều bước tiến nhảy vọt Ở Việt Nam ngành công nghệ thông tintuy còn non trẻ nhưng tốc độ phát triển khá nhanh và được ứng dụng rộng vào trongcác lĩnh vực của đời sống kinh tế xã hội
Cùng với sự phát triển của ngành công nghệ thông tin ngành kinh tế Việt Namcũng phát triển khá nhanh Như chúng ta thấy kinh tế càng phát triển thì nhu cầu và sốlượng giao dịch và lượng tiền trao đổi càng nhiều Và thật là bất tiện khi bạn luônphải mang theo bên mình một số lượng tiền lớn khi muốn mua hàng hóa hoặc giaodịch Đừng vội lo lắng bạn chỉ cần có một chiếc thẻ nạp tiền vào đó và mang theo nóbạn có thể mua bán thực hiện bất kỳ một loại giao dịch nào bạn muốn Hệ thống máyATM sẽ giúp bạn giữ tiền và thực hiện các giao dịch một cách nhanh chóng chínhxác
Ứng dụng sự phát triển của công nghệ thông tin vào trong việc quản lý Tàikhoản giao dịch của khách hàng, Nhóm sinh viên chúng em quyết định xây dựng
“Phần mềm giao dịch trên máy ATM” với mục đích giúp mọi người hiểu rõ đượcnhững ưu điểm của thẻ ATM và cách dùng thẻ để giao dịch trên máy ATM Hệ thống
có các chức năng: “Rút tiền, Chuyển khoản, Vấn tin, Đổi mã pin, WFOA”
Trong quá trình nghiên cứu tìm hiểu kỹ lưỡng và sáng tạo cùng với sự hướngdẫn và giúp đỡ của cô Trương Thị Ngọc Phượng và các bạn sinh viên nhóm em đãxây dựng thành công “Phần mềm giao dịch trên máy ATM” Với các chức năng trên.Tuy nhiên do kinh nghiệm còn hạn chế nên phần mềm của Nhóm em không tránhkhỏi những thiếu xót Rất mong được sự góp ý của cô cùng các bạn để phần mềm củachúng em được hoàn thiện hơn Xin chân thành cảm ơn cô cùng các bạn!
Trang 4Bố cục đồ án của chúng em gồm có 6 Chương:
Chương 1: Tổng quan đề tài
Chương 2: Xác định yêu cầu
Chương 3: Mô hình hóa yêu cầu
Chương 4: Thiết kế dữ liệu
Chương 5: Thiết kế giao diện
Chương 6: Kiểm thử
Tài liệu tham khảo
PHÂN CÔNG CÔNG VIỆC:
Nguyễn Vũ Trường Giang
2.1 Danh sách các yêu cầu chức năng
3.1 Mô hình DFD tổng quát
3.2 Mô hình DFD cấp 1
4.3 Bảng thuộc tính
Thiết kế giao diện và Code: MH ScreenSaver, MH Đăng nhập, MH WFOA
TestCase Design Đăng nhập
Nguyễn Đình Hoàng Khánh
2.3 Bảng quy định và các công thức liên quan
3.4 Mô hình DFD cấp 3
4.4 Bảng miền giá trị
Thiết kế giao diện và Code: MH Menu, MH Chuyển khoản
TestCase Design WFOA, TestCase Design Vấn tin tài khoản
Thiết kế giao diện và Code: MH Ngôn ngữ, MH Vấn tin tài khoản, MH rút tiền
TestCase Design Chuyển khoản, TestCase Design Rút tiền
Trang 5CHƯƠNG 2: XÁC ĐỊNH YÊU CẦU
2.1 Danh sách các yêu cầu chức năng.
STT Công việc Loại công việc Công thức Quy định/ Biểu mẫu Ghi chú
1 Chọn ngôn ngữ Tra cứu
2 Đăng nhập Tra cứu
3 Rút tiền Tính toán, kết xuất TTRT
4 Vấn tin tài khoản Tra cứu
5 Đổi mật khẩu Tra cứu, lưu trữ
6 Chuyển khoản Tra cứu, tính toán TTCK
7 Quản lý tiền trong trụ ATM Tra cứu
8 Gmail Banking Kết xuất
2.2 Danh sách các yêu cầu phi chức năng.
- Khách hàng sẽ sử dụng phần mềm để cài đặt nhằm thực hiện giao dịch ở trụATM
- Khách hàng mong muốn phần mềm ta xây dựng phải đáp ứng được những yêucầu về giao diện: đơn giản, tiện dụng, tương thích…
- Khách hàng mong muốn phần mềm ta xây dựng phải đáp ứng được những yêucầu về đặc tính: tốc độ nhanh, hiệu quả…
- Môi trường làm việc: PC chạy trên hệ điều hành Windows
- Trang thiết bị: máy ATM của ngân hàng
- Máy móc sẵn có của khách hàng: máy móc đầy đủ, đáp ứng được yêu cầu củaphần mềm
- Khách hàng yêu cầu phần mềm phải có một số tính năng đặc biệt: nuốt thẻ nếusai PIN 3 lần,…
- Có nhiệm vụ bảo trì cho phần mềm trong thời gian sử dụng
- Đảm bảo tuyệt đối về vấn đề bảo mật
- Lưu lại lịch sử giao dịch mới nhất
- Đạt được tính chính xác cao: không để tình trạng bị nuốt thẻ không lý do…
- Phần mềm phải có Screensaver chạy khi ATM không có người sử dụng, khi cóngười sử dụng thì chuyển sang phần mềm giao dịch chính để tốn ít bộ nhớ,
Trang 6nhằm đảm bảo tuổi thọ cho phần cứng, giảm chi phí cho phía khách hàng Saukhi người sử dụng thoát thì bật lại Screensaver.
2.3 Bảng qui định và các công thức liên quan.
1 TTRT Tính toán rút tiền
Số tiền rút ≤ Số tiền hiện có;
Số tiền còn lại = Số tiền hiện có – Số tiền rút;
Số tiền rút ≤ 5.000.000 VND.
2 TTCK Tính toán chuyển
khoản
Số tiền chuyển ≤ Số tiền hiện có;
Số tiền còn lại = Số tiền hiện có – Số tiền chuyển
3 WFOA Withdrawal From
Other Account
Bạn có thể truy cập từ ATM 1 để rút tiền từ tài khoản ATM 2 với mã OTP được gửi về email của chủ tài khoản ATM 2 phòng khi trường hợp:
- Chủ tài khoản ATM 2 ở vùng không có ATM, chi nhánh ngân hàng để có thể chuyển khoản.
- ATM 2 bị mất thẻ vào ngày ngân hàng không làm việc để khóa thẻ.
Danh sách các quy định:
- Mỗi lần rút tối đa 5.000.000 VND
- Số tiền rút tối thiểu 50.000 VND
- Số tiền rút là bội số của 50.000 VND
- Một ngày chỉ được rút tối đa 25.000.000 VND
- Không hạn chế số lần rút tiền
- Số tiền chuyển tối thiểu 50.000 VND
- Số tiền chuyển là bội số của 50.000 VND
- Một ngày chỉ chuyển khoản tối đa 50.000.000 VND
- Không hạn chế số lần chuyển khoản
- Chỉ được rút tiền khi số dư trong thẻ >50.000 VND
Trang 7CHƯƠNG 3: MÔ HÌNH HÓA YÊU CẦU
3.1 Mô hình DFD tổng quát.
1 Chọn ngôn ngữ Anh hoặc Việt 8 Kết quả giao dịch
2 Nhập mã PIN 9 Kết quả giao dịch
3 Các chức năng 10 Kết quả giao dịch
4 Thông tin tài khoản 11 Kết quả giao dịch
5 Thông tin rút tiền 12 Kết quả giao dịch
6 Thông tin chuyển khoản 13 Trả thông tin về tài khoản
7 Thông tin tài khoản thứ 2
3.2 Mô hình DFD cấp 1
Người dùng
Quản lý giao dịch ATM Yêu cầu giao dịch
Kết quả giao dịch
Trang 83.3 Mô hình DFD cấp 2
Trang 93.4 Mô hình DFD cấp 3
Chức năng rút tiền
Trang 10Chức năng WFOA
Trang 11CHƯƠNG 4: THIẾT KẾ DỮ LIỆU
4.1 Tổng quan.
Lưu trữ cơ sở dữ liệu trên SQL Server 2012
4.2 Sơ đồ Logic.
4.3 Bảng thuộc tính.
1 MaThe nvarchar(50) Từ 1 đến 50 kí tự Mã số ghi trên thẻ ATM
2 MaTK nvarchar(50) Từ 1 đến 50 kí tự Mã số tài khoản của khách hàng Khóa chính
3 NgayLap nvarchar(50) Từ 1 đến 50 kí tự Ngày lập thẻ
4 TenKH nvarchar(50) Từ 1 đến 50 kí tự Tên khách hàng sở hữu thẻ
5 Email nvarchar(50) Từ 1 đến 50 kí tự Địa chỉ email khách hàng
6 SoDu money
Từ -263 đến 263 (từ -922,337,203,685,477
5808 đến 922,337,203,685,477,5807)
Số dư trong tài khoản kháchhàng
7 PIN nvarchar(50) Từ 1 đến 50 kí tự Mã pin của thẻ ATM
8 TrangThai nvarchar(50) Từ 1 đến 50 kí tự Trạng thái của tài khoản (hoạt động, khóa,…)
TEN_GIAO_DICH LUU
Trang 129 MaATM nvarchar(50) Từ 1 đến 50 kí tự Mã số máy ATM Khóa chính
10 DiaDiem nvarchar(50) Từ 1 đến 50 kí tự Địa điểm đặt máy ATM
11 To500 money
Từ -263 đến 263 (từ -922,337,203,685,477
5808 đến 922,337,203,685,477,5807)
Số tờ 500 nghìn còn trong máy ATM
12 To200 money
Từ -263 đến 263 (từ -922,337,203,685,477
5808 đến 922,337,203,685,477,5807)
Số tờ 200 nghìn còn trong máy ATM
13 To100 money
Từ -263 đến 263 (từ -922,337,203,685,477
5808 đến 922,337,203,685,477,5807)
Số tờ 100 nghìn còn trong máy ATM
14 To50 money
Từ -263 đến 263 (từ -922,337,203,685,477
5808 đến 922,337,203,685,477,5807)
Số tờ 50 nghìn còn trong máy ATM
15 NgayGD nvarchar(50) Từ 1 đến 50 kí tự Ngày thực hiện giao dịch tại
máy ATM
16 LoaiGD nvarchar(50) Từ 1 đến 50 kí tự Mã loại giao dịch được thựchiện Khóa chính
17 SoTien money
Từ -263 đến 263 (từ -922,337,203,685,477
5808 đến 922,337,203,685,477,5807)
Số tiền được thực hiện (rút, chuyển khoản,…) trong phiên giao dịch
18 TenGD nvarchar(50) Từ 1 đến 50 kí tự Tên của loại giao dịch
19 SoLanRut int
Từ -231 đến 231-1 (từ -2147483648 đến 2147483647)
Số lần rút tiền của một Tài khoản trong 1 ngày
(Thuộc tính phichức năng)
20 SoTienRut money
Từ -263 đến 263 (từ -922,337,203,685,477
5808 đến 922,337,203,685,477,5807)
Số tiền đã rút của một Tài khoản trong 1 ngày
(Thuộc tính phichức năng)
Trang 1321 SoTienCK money
Từ -2 đến 2 (từ -922,337,203,685,477
5808 đến 922,337,203,685,477,5807)
Số tiền đã chuyển khoản củamột Tài khoản trong 1 ngày
(Thuộc tính phichức năng)
4.5 Lược đồ quan hệ.
Trang 14CHƯƠNG 5: THIẾT KẾ GIAO DIỆN
5.1 Sơ đồ luân chuyển màn hình
Màn hình Chuyển khoản MànWFOA hình
Màn hình WFOA
Màn hình rút tiền
Màn hình rút tiền
MH Đổi mật khẩu ta
MH Nhập mật khẩu hiện tại ta
MH Nhập mật khẩu hiện tại ta
ta
MH Nhập tên tài khoản cần chuyển
ta
MH Nhập số tiền cần chuyển ta
MH Nhập số tiền cần chuyển ta
MH Xác nhận tài khoản ta
MH Xác nhận tài khoản ta
MH Nhập số tiền cần rút ta
MH Nhập số tiền cần rút ta
MH Nhập số tài khoản cần rút ta
MH Nhập số tài khoản cần rút ta
MH Nhập số tiền cần rút ta
MH Nhập số tiền cần rút ta
MH Xác nhận tài khoản ta
MH Xác nhận tài khoản ta
Trang 155.2 Màn hình chính
Màn hình chính (Fr_Menu) có sự xuất hiện của các Button như Vấn tin
tài khoản, Chuyển khoản, Rút tiền, WFOA, Thoát Từ đó cho phép
người sử dụng chọn công việc mà họ muốn thực hiện một cách dễ dàng
Trang 165.3 Màn hình nhập liệu
Màn hình (Fr_DangNhap) có các Textbox như Tên đăng nhập và Mật
khẩu dùng để nhập Số tài khoản và mật khẩu của người sử dụng để có
thể truy cập vào hệ thống Các Button như Xóa được dùng để xóa dữ liệu mà người sử dụng vừa nhập khi họ vô tình nhập sai, Hủy dùng để
thoát ra khỏi phần mềm nếu người sử dụng không muốn thực hiện giao
dịch nữa, Đồng ý dùng để xác nhận truy cập
Màn hình (Fr_DoiMatKhau1) có Textbox Nhập mật khẩu hiện tại dùng
để tăng tính bảo mật khi người sử dụng muốn đổi mật khẩu Các Button
như Xóa được dùng để xóa dữ liệu mà người sử dụng vừa nhập khi họ vô
Trang 17tình nhập sai, Hủy dùng để thoát ra khỏi phần Đổi mật khẩu nếu người sử
dụng không muốn thực hiện giao dịch này nữa, phần mềm sẽ được trở về
màn hình chính (Fr_Menu), Đồng ý dùng để xác nhận truy cập
Màn hình (Fr_DoiMatKhau2) có các Textbox Nhập mật khẩu mới và
Xác nhận mật khẩu mới dùng để nhập mật khẩu mà người sử dụng
muốn đổi và nhằm tránh khỏi những sơ suất khi nhập nên sẽ nhập 2
lần Các Button như Xóa được dùng để xóa dữ liệu mà người sử dụng vừa nhập khi họ vô tình nhập sai, Hủy dùng để thoát ra khỏi phần Đổi
mật khẩu nếu người sử dụng không muốn thực hiện giao dịch này nữa,
phần mềm sẽ được trở về màn hình chính(Fr_Menu), Hoàn tất dùng
để xác nhận và kết thúc công việc, phần mềm sẽ được trở về màn hìnhchính(Fr_Menu)
Trang 18Màn hình (Fr_ChuyenKhoan1) có Textbox Tên tài khoản cần chuyển
dùng để nhập số tài khoản mà người sử dụng muốn chuyển tiền đến
Các Button như Xóa được dùng để xóa dữ liệu mà người sử dụng vừa nhập khi họ vô tình nhập sai, Hủy dùng để thoát ra khỏi phần Chuyển
khoản nếu người sử dụng không muốn thực hiện giao dịch này nữa,
phần mềm sẽ được trở về màn hình chính (Fr_Menu), Đồng ý dùng để
xác nhận truy cập
Màn hình (Fr_ChuyenKhoan2) có Textbox Nhập số tiền cần chuyển
dùng để nhập số tiền mà người sử dụng muốn chuyển Các Button như
Xóa được dùng để xóa dữ liệu mà người sử dụng vừa nhập khi họ vô tình
Trang 19nhập sai, Hủy dùng để thoát ra khỏi phần Chuyển khoản nếu người sử
dụng không muốn thực hiện giao dịch này nữa, phần mềm sẽ được trở về
màn hình chính (Fr_Menu), Đồng ý dùng để xác nhận truy cập.
Màn hình (Fr_RutTien) có Textbox Nhập số tiền cần rút dùng để nhập
số tiền mà người sử dụng muốn rút Các Button như Xóa được dùng để xóa dữ liệu mà người sử dụng vừa nhập khi họ vô tình nhập sai, Hủy
dùng để thoát ra khỏi phần Rút tiền nếu người sử dụng không muốn thựchiện giao dịch này nữa, phần mềm sẽ được trở về màn hình chính
(Fr_Menu), Đồng ý dùng để xác nhận truy cập.
Trang 20Màn hình (Fr_WFOA1) có Textbox Nhập số tài khoản cần rút dùng để
nhập số tài khoản mà người sử dụng muốn rút qua dịch vụ WFOA Các
Button như Xóa được dùng để xóa dữ liệu mà người sử dụng vừa nhập khi họ vô tình nhập sai, Hủy dùng để thoát ra khỏi phần WFOA nếu
người sử dụng không muốn thực hiện giao dịch này nữa, phần mềm sẽ
được trở về màn hình chính (Fr_Menu), Đồng ý dùng để xác nhận truy
cập
Màn hình (Fr_WFOA2) có Textbox Nhập số tiền cần rút dùng để nhập
số tiền mà người sử dụng muốn rút từ dịch vụ WFOA Các Button như
Xóa được dùng để xóa dữ liệu mà người sử dụng vừa nhập khi họ vô
Trang 21tình nhập sai, Hủy dùng để thoát ra khỏi phần WFOA nếu người sử dụng
không muốn thực hiện giao dịch này nữa, phần mềm sẽ được trở về màn
hình chính (Fr_Menu), Đồng ý dùng để xác nhận truy cập.
Màn hình (Fr_WFOA4) có Textbox Nhập mã OTP dùng để nhập mã xác
nhận được gửi về địa chỉ mail của chủ thẻ, để xác nhận được sự cho phépcủa chủ thẻ khi cho người khác rút tiền từ tài khoản của mình Các Button
như Xóa được dùng để xóa dữ liệu mà người sử dụng vừa nhập khi họ vô tình nhập sai, Hủy dùng để thoát ra khỏi phần WFOA nếu người sử dụng
không muốn thực hiện giao dịch này nữa, phần mềm sẽ được trở về màn
hình chính (Fr_Menu), Hoàn tất dùng để xác nhận và kết thúc công việc,
phần mềm sẽ được trở về màn hình chính(Fr_Menu)
Trang 225.4 Màn hình kết quả
Màn hình (Fr_VanTinTaiKhoan2) có các Label Tên chủ tài khoản theo sau đó sẽ là tên người sở hữu thẻ, Số tài khoản theo sau đó là số tài khoản của thẻ, Số dư hiện có theo sau đó sẽ là số tiền còn lại trong thẻ Các Button như Tiếp tục được dùng để đưa phần mềm về màn hình chính(Fr_Menu), Thoát để thoát khỏi phần mềm.
Trang 23Màn hình (Fr_ChuyenKhoan3) có các Label Tên chủ tài khoản theo sau
đó sẽ là tên người chủ tài khoản được nhận số tiền chuyển, Số tài khoản
theo sau đó là số tài khoản của thẻ được nhận số tiền chuyển Các Button
như Hủy dùng để thoát ra khỏi phần Chuyển khoản nếu người sử dụng không muốn thực hiện giao dịch này nữa, Hoàn tất dùng để xác nhận và
kết thúc công việc, phần mềm sẽ được trở về màn hình chính (Fr_Menu)
Màn hình (Fr_WFOA3) có các Label Tên chủ tài khoản theo sau đó sẽ là tên người chủ tài khoản được rút qua dịch vụ WFOA, Số tài khoản theo sau
đó là số tài khoản của thẻ được rút qua dịch vụ WFOA Các Button như Hủy
dùng để thoát ra khỏi phần WFOA nếu người sử dụng không muốn thực hiện
giao dịch này nữa, Đồng ý dùng để xác nhận thông tin kia đã đúng và dịch vụ
chuyển qua bước tiếp theo
Trang 245.5 Các màn hình khác
Màn hình (Fr_SaveScreen) là màn hình luôn hoạt động dưới dạngScreenSaver (chuyển đổi hình ảnh liên tục) để chạy khi ATM không cóngười sử dụng, khi có người sử dụng thì chuyển sang phần mềm giaodịch chính để tốn ít bộ nhớ, nhằm đảm bảo tuổi thọ cho phần cứng, giảmchi phí cho phía khách hàng Sau khi người sử dụng thoát thì sẽ kíchhoạt lại Screensaver Bên phải có phần Pull Card Area – khi ta lướtChuột vào thì nó sẽ kích hoạt vào phần mềm, Màn hình (Fr_NgonNgu)
sẽ hoạt động
Trang 25Màn hình (Fr_ChonNgonNgu) có các Button như ENG, VIE được dùng
để cho người sử dụng chọn ngôn ngữ phù hợp với mình nhằm tạo sựthoải mái và dễ sử dụng hơn
Màn hình (Fr_VanTinTaiKhoan1) có các Button như Đổi mật khẩu
dùng để người sử dụng đổi mật khẩu nhằm tăng tính an toàn cho việc sử
dụng thẻ, Vấn tin tài khoản được dùng để cho người sử dụng kiểm tra
số tiền còn lại trong thẻ