Giới thiệu
Nghiên cứu trường hợp này tập trung vào mô hình hóa trường hợp sử dụng cho hệ thống ATM của một ngân hàng. Hệ thống ATM được thiết kế nhằm cung cấp cho khách hàng một cách thuận tiện để truy cập tài khoản và thực hiện các giao dịch ngân hàng khác nhau, chẳng hạn như rút tiền mặt, gửi tiền mặt, chuyển tiền, kiểm tra số dư tài khoản và thay đổi mã PIN. Nghiên cứu trường hợp thảo luận về mô tả vấn đề và yêu cầu của hệ thống, cũng như các sơ đồ trường hợp sử dụng, các tác nhân và các kịch bản đã được tạo ra để mô hình hóa chức năng của hệ thống. Nghiên cứu trường hợp cũng khám phá cách các loại sơ đồ UML khác, chẳng hạn như sơ đồ hoạt động và sơ đồ tuần tự, có thể được sử dụng kết hợp vớisơ đồ trường hợp sử dụngđể cung cấp cái nhìn chi tiết hơn về hành vi và tương tác của hệ thống. Đến cuối nghiên cứu trường hợp, người đọc sẽ có cái nhìn rõ ràng về quy trình mô hình hóa trường hợp sử dụng và cách áp dụng nó vào các hệ thống thực tế như hệ thống ATM.

Hướng dẫn và mẹo nhặt cho việc phát triển các trường hợp sử dụng hiệu quả và viết các kịch bản trường hợp sử dụng phù hợp
Dưới đây là một số hướng dẫn, mẹo và thủ thuật để phát triển các trường hợp sử dụng và viết các kịch bản trường hợp sử dụng phù hợp:
- Xác định các tác nhân:Bắt đầu bằng cách xác định các tác nhân sẽ tương tác với hệ thống. Điều này có thể bao gồm người dùng, quản trị viên và bất kỳ bên liên quan nào khác sẽ sử dụng hệ thống.
- Xác định phạm vi của hệ thống:Xác định rõ phạm vi của hệ thống và những gì hệ thống nhằm đạt được. Điều này sẽ giúp đảm bảo rằng các kịch bản trường hợp sử dụng ghi nhận đầy đủ tất cả các yêu cầu cần thiết.
- Sử dụng phương pháp có cấu trúc:Sử dụng phương pháp có cấu trúc để phát triển các kịch bản trường hợp sử dụng. Điều này có thể bao gồm việc sử dụng mẫu hoặc hướng dẫn để đảm bảo mỗi kịch bản tuân theo một cấu trúc nhất quán.
- Viết các kịch bản rõ ràng và súc tích:Viết các kịch bản trường hợp sử dụng rõ ràng, súc tích và dễ hiểu. Sử dụng ngôn ngữ đơn giản và tránh các thuật ngữ chuyên môn hoặc viết tắt có thể không quen thuộc với tất cả các bên liên quan.
- Sử dụng ngôn ngữ hướng hành động:Viết các kịch bản trường hợp sử dụng bằng ngôn ngữ hướng hành động mô tả điều mà người dùng hoặc hệ thống đang làm. Điều này có thể giúp đảm bảo các kịch bản dễ hiểu và dễ theo dõi.
- Tập trung vào mục tiêu và nhu cầu của người dùng:Tập trung vào mục tiêu và nhu cầu của người dùng khi phát triển các kịch bản trường hợp sử dụng. Điều này sẽ giúp đảm bảo các kịch bản phản ánh quan điểm của người dùng và phù hợp với nhu cầu của họ.
- Xác định các điều kiện tiền và hậu điều kiện:Xác định rõ ràng bất kỳ điều kiện tiền và hậu điều kiện nào cần được đáp ứng để kịch bản thành công. Điều này sẽ giúp đảm bảo kịch bản đầy đủ và chính xác.
- Bao gồm các kịch bản ngoại lệ:Xác định bất kỳ kịch bản ngoại lệ nào có thể xảy ra và bao gồm chúng vào các kịch bản trường hợp sử dụng. Điều này sẽ giúp đảm bảo hệ thống có thể xử lý các tình huống bất ngờ và lỗi.
- Nhận phản hồi và xem xét lại:Nhận phản hồi từ các bên liên quan và xem xét lại các kịch bản trường hợp sử dụng thường xuyên để đảm bảo chúng vẫn chính xác và cập nhật với các thông số và yêu cầu hệ thống mới nhất.
Bằng cách tuân theo các hướng dẫn, mẹo và thủ thuật này, các nhà phát triển có thể phát triển các kịch bản trường hợp sử dụng chính xác phản ánh chức năng của hệ thống và đáp ứng nhu cầu của tất cả các bên liên quan.
Mô tả vấn đề của nghiên cứu trường hợp – ATM
Một ngân hàng cần cung cấp cho khách hàng một cách thuận tiện để truy cập tài khoản và thực hiện các giao dịch ngân hàng khác nhau, chẳng hạn như rút tiền mặt, gửi tiền mặt, chuyển tiền, kiểm tra số dư tài khoản và thay đổi mã PIN. Để giải quyết vấn đề này, ngân hàng dự định triển khai một hệ thống ATM cho phép khách hàng thực hiện các giao dịch này bằng thẻ ATM và mã PIN của họ.
Yêu cầu:
- Bảo mật: Hệ thống ATM phải đảm bảo an toàn cho các giao dịch của khách hàng bằng cách xác minh danh tính khách hàng thông qua thẻ ATM và mã PIN. Hệ thống phải ngăn chặn truy cập trái phép vào tài khoản khách hàng và phải được bảo vệ trước nhiều hình thức gian lận và tấn công, chẳng hạn như quẹt dữ liệu và tấn công mạng.
- Khả năng sẵn sàng: Hệ thống ATM phải luôn sẵn sàng cho khách hàng, trừ khi có bảo trì định kỳ và thời gian ngừng hoạt động. Hệ thống phải đáng tin cậy và bền bỉ trước các sự cố phần cứng và phần mềm để giảm thiểu gián đoạn dịch vụ và đảm bảo mức độ hài lòng cao của khách hàng.
- Khả năng sử dụng: Hệ thống ATM phải dễ sử dụng và điều hướng cho khách hàng ở mọi độ tuổi và nền tảng khác nhau. Hệ thống phải cung cấp hướng dẫn rõ ràng và phản hồi để dẫn dắt khách hàng qua quá trình giao dịch và giảm thiểu sai sót và nhầm lẫn.
- Xử lý giao dịch: Hệ thống ATM phải xử lý các giao dịch của khách hàng một cách chính xác và hiệu quả, bao gồm rút và nộp tiền mặt, chuyển tiền, kiểm tra số dư tài khoản và thay đổi mã PIN. Hệ thống phải duy trì hồ sơ chính xác cho tất cả các giao dịch và cung cấp hóa đơn và các tài liệu khác khi cần thiết cho khách hàng.
- Tích hợp: Hệ thống ATM phải tích hợp với hạ tầng công nghệ thông tin hiện có của ngân hàng, bao gồm hệ thống ngân hàng cốt lõi, mạng lưới và cơ sở dữ liệu. Hệ thống phải giao tiếp an toàn và đáng tin cậy với các hệ thống và thành phần khác để đảm bảo xử lý chính xác và kịp thời các giao dịch và thông tin tài khoản.
Mô hình hóa trường hợp sử dụng và phát triển kịch bản trường hợp sử dụng
Bắt đầu từ mô tả vấn đề của hệ thống ATM, bước tiếp theo là xác định các trường hợp sử dụng khác nhau cần thiết để đáp ứng nhu cầu của người dùng hệ thống. Điều này bao gồm việc phân tích các yêu cầu của hệ thống và xác định các hành động cụ thể mà người dùng có thể thực hiện khi tương tác với hệ thống. Mỗi trường hợp sử dụng sẽ có một tập hợp các kịch bản mô tả cách hệ thống và người dùng sẽ tương tác trong các tình huống cụ thể. Các kịch bản này nên được phát triển theo cách có cấu trúc, sử dụng ngôn ngữ rõ ràng và súc tích để đảm bảo dễ hiểu đối với tất cả các bên liên quan trong dự án.
Quá trình xác định các trường hợp sử dụng và phát triển các kịch bản trường hợp sử dụng là một bước quan trọng trong vòng đời phát triển phần mềm. Nó giúp đội ngũ phát triển hiểu rõ toàn diện các yêu cầu của hệ thống và thiết kế một giải pháp đáp ứng nhu cầu của người dùng. Trong quá trình phát triển, có thể cần phải tinh chỉnh các trường hợp sử dụng và kịch bản để phản ánh sự thay đổi trong yêu cầu hoặc tích hợp phản hồi từ các bên liên quan. Quá trình lặp lại này giúp đảm bảo hệ thống cuối cùng đáp ứng nhu cầu của tất cả các bên liên quan và có khả năng xử lý nhiều tình huống và trường hợp sử dụng khác nhau.
- Sơ đồ trường hợp sử dụng:
Sơ đồ trường hợp sử dụng cho hệ thống ATM có thể bao gồm các nhân vật sau:
- Khách hàng
- Ngân hàng
Và các trường hợp sử dụng sau:
- Rút tiền mặt
- Nạp tiền mặt
- Kiểm tra số dư
- Chuyển tiền
- Thay đổi mã PIN
Sơ đồ sẽ thể hiện mối quan hệ giữa các nhân vật và các trường hợp sử dụng, cho thấy trường hợp sử dụng nào có thể truy cập được bởi nhân vật nào.
- Kịch bản trường hợp sử dụng:
a)Rút tiền mặt:
- Khách hàng đưa thẻ ATM của họ vào máy.
- Hệ thống yêu cầu khách hàng nhập mã PIN.
- Khách hàng nhập mã PIN của mình.
- Hệ thống xác minh mã PIN.
- Khách hàng chọn tùy chọn “Rút tiền mặt”.
- Hệ thống nhắc khách hàng nhập số tiền họ muốn rút.
- Khách hàng nhập số tiền mặt.
- Hệ thống phát tiền mặt.
- Khách hàng rút thẻ ATM của họ và lấy tiền mặt.
b) Nạp tiền mặt:
- Khách hàng đưa thẻ ATM của họ vào máy.
- Hệ thống nhắc khách hàng nhập mã PIN của họ.
- Khách hàng nhập mã PIN của họ.
- Hệ thống xác minh mã PIN.
- Khách hàng chọn tùy chọn “Nạp tiền mặt”.
- Hệ thống nhắc khách hàng nhập số tiền họ muốn nạp.
- Khách hàng nhập số tiền mặt.
- Hệ thống xác minh số tiền và hiển thị cho khách hàng.
- Khách hàng xác nhận số tiền.
- Hệ thống chấp nhận tiền mặt và ghi có vào tài khoản của khách hàng.
c) Kiểm tra số dư:
- Khách hàng đưa thẻ ATM của họ vào máy.
- Hệ thống nhắc khách hàng nhập mã PIN của họ.
- Khách hàng nhập mã PIN của họ.
- Hệ thống xác minh mã PIN.
- Hệ thống hiển thị số dư tài khoản của khách hàng.
d) Chuyển tiền:
- Khách hàng đưa thẻ ATM của họ vào máy.
- Hệ thống nhắc khách hàng nhập mã PIN của họ.
- Khách hàng nhập mã PIN của họ.
- Hệ thống xác minh mã PIN.
- Khách hàng chọn tùy chọn “Chuyển tiền”.
- Hệ thống nhắc khách hàng nhập số tài khoản mà họ muốn chuyển tiền.
- Khách hàng nhập số tài khoản.
- Hệ thống nhắc khách hàng nhập số tiền họ muốn chuyển.
- Khách hàng nhập số tiền.
- Hệ thống xác minh số tiền và hiển thị nó cho khách hàng.
- Khách hàng xác nhận số tiền.
- Hệ thống chuyển tiền và hiển thị thông báo xác nhận cho khách hàng.
e) Đổi PIN:
- Khách hàng đưa thẻ ATM của họ vào máy.
- Hệ thống nhắc khách hàng nhập mã PIN hiện tại của họ.
- Khách hàng nhập mã PIN hiện tại của họ.
- Hệ thống xác minh mã PIN hiện tại.
- Hệ thống nhắc khách hàng nhập mã PIN mới của họ.
- Khách hàng nhập mã PIN mới của họ.
- Hệ thống nhắc khách hàng xác nhận mã PIN mới của họ.
- Khách hàng xác nhận mã PIN mới của họ.
- Hệ thống cập nhật mã PIN của khách hàng và hiển thị thông báo xác nhận.
Tinh chỉnh kịch bản sử dụng – Rút tiền
Việc tinh chỉnh một kịch bản sử dụng khi quá trình phát triển tiến triển là điều quan trọng vì một số lý do:
- Để đảm bảo kịch bản chính xác và phản ánh trạng thái hiện tại của hệ thống:Khi quá trình phát triển tiến triển, hệ thống có thể thay đổi và các yêu cầu mới có thể xuất hiện. Việc tinh chỉnh kịch bản sử dụng giúp đảm bảo rằng nó vẫn chính xác và cập nhật với các thông số hệ thống mới nhất.
- Để phát hiện các yêu cầu còn thiếu hoặc chưa hoàn chỉnh:Khi hệ thống phát triển, có thể rõ ràng rằng cần thêm các yêu cầu để mô tả đầy đủ chức năng của hệ thống. Việc tinh chỉnh kịch bản sử dụng giúp phát hiện các yêu cầu còn thiếu hoặc chưa hoàn chỉnh.
- Để cải thiện tính dễ sử dụng và trải nghiệm người dùng:Việc tinh chỉnh kịch bản sử dụng có thể giúp cải thiện tính dễ sử dụng và trải nghiệm người dùng của hệ thống. Bằng cách tinh chỉnh kịch bản, các nhà phát triển có thể hiểu rõ hơn nhu cầu của người dùng và đưa ra các quyết định thiết kế phù hợp hơn với những nhu cầu đó.
Quy trình tinh chỉnh một kịch bản sử dụng có thể bao gồm một số bước, bao gồm:
- Xem xét lại kịch bản để đảm bảo tính chính xác và đầy đủ: Các nhà phát triển nên xem xét lại kịch bản để đảm bảo rằng nó phản ánh chính xác trạng thái hiện tại của hệ thống và tất cả các yêu cầu đều được thu thập.
- Xác định bất kỳ yêu cầu nào bị thiếu hoặc chưa hoàn chỉnh:Các nhà phát triển nên xác định các yêu cầu bị thiếu hoặc chưa hoàn chỉnh và nỗ lực tích hợp chúng vào kịch bản.
- Tinh chỉnh giao diện người dùng:Các nhà phát triển nên tinh chỉnh giao diện người dùng để cải thiện tính dễ sử dụng và trải nghiệm người dùng, đồng thời cân nhắc phản hồi từ người dùng và các nguyên tắc thiết kế tốt nhất.
- Tích hợp phản hồi:Các nhà phát triển nên tích hợp phản hồi từ các bên liên quan và người dùng để tinh chỉnh kịch bản và đảm bảo rằng nó đáp ứng nhu cầu của tất cả người dùng.
Các bước để tinh chỉnh một kịch bản sử dụng
Bằng cách liên tục tinh chỉnh kịch bản sử dụng trong suốt quá trình phát triển, các nhà phát triển có thể đảm bảo rằng hệ thống đáp ứng nhu cầu và yêu cầu của người dùng, đồng thời dễ sử dụng và thân thiện với người dùng nhất có thể.
Dưới đây là phần mở rộng của kịch bản “Rút tiền” cho hệ thống ATM, bao gồm các luồng bình thường và ngoại lệ, cùng các điểm chèn để phản ánh một tình huống thực tế:
Kịch bản:Rút tiền
Nhân vật chính:Khách hàng
Điều kiện tiên quyết:
- Khách hàng đã đưa thẻ ATM của họ vào máy.
- Khách hàng đã nhập mã PIN đúng của mình.
Luồng cơ bản:
- Khách hàng chọn tùy chọn “Rút tiền” từ menu chính.
- Máy ATM yêu cầu khách hàng nhập số tiền mà họ muốn rút.
- Khách hàng nhập số tiền mà họ muốn rút.
- Máy ATM xác minh rằng khách hàng có đủ số dư trong tài khoản để chi trả cho số tiền rút.
- Máy ATM phát hành số tiền được yêu cầu cho khách hàng.
- Máy ATM hiển thị thông báo xác nhận việc rút tiền thành công và yêu cầu khách hàng chọn giao dịch khác hoặc kết thúc phiên.
- Khách hàng chọn một giao dịch khác hoặc kết thúc phiên.
- Máy ATM nhả thẻ ATM của khách hàng ra.
Luồng ngoại lệ:
1a. Số dư không đủ
- Máy ATM xác minh rằng khách hàng có số dư không đủ trong tài khoản để chi trả cho số tiền rút.
- Máy ATM hiển thị thông báo lỗi thông báo cho khách hàng rằng họ không có đủ số dư để hoàn tất giao dịch.
- Máy ATM yêu cầu khách hàng nhập số tiền rút nhỏ hơn hoặc hủy giao dịch.
- Khách hàng nhập số tiền rút nhỏ hơn hoặc hủy giao dịch.
2a. Số tiền không hợp lệ
- Khách hàng nhập số tiền rút không hợp lệ, chẳng hạn như một số âm hoặc một giá trị vượt quá giới hạn rút tiền hàng ngày của họ.
- Máy ATM hiển thị thông báo lỗi thông báo cho khách hàng rằng số tiền đã nhập là không hợp lệ.
- Máy ATM yêu cầu khách hàng nhập số tiền rút hợp lệ.
- Khách hàng nhập số tiền rút hợp lệ.
3a. Thẻ bị giữ
- Máy ATM không thể phát tiền do lỗi phần cứng hoặc phần mềm.
- Máy ATM hiển thị thông báo lỗi thông báo cho khách hàng rằng thẻ của họ đã bị giữ.
- Máy ATM yêu cầu khách hàng liên hệ với ngân hàng hoặc dịch vụ khách hàng để được hỗ trợ.
- Khách hàng liên hệ với ngân hàng hoặc dịch vụ khách hàng để lấy lại thẻ của mình.
Điểm chèn:
- Sau bước 1:Khách hàng đưa thẻ ATM vào máy và nhập mã PIN của mình.
- Sau bước 2:Khách hàng nhập số tiền mặt họ muốn rút.
- Sau bước 3:Máy ATM xác minh rằng khách hàng có đủ số dư để thanh toán số tiền rút.
- Sau bước 5:Máy ATM phát tiền mặt theo yêu cầu cho khách hàng.
Tóm tắt
Phụ lục – Các tình huống mô hình hóa trường hợp được tinh chỉnh – ATM
Tên trường hợp sử dụng: Rút tiền
Tác nhân: Khách hàng, ATM
Điều kiện tiên quyết:Khách hàng phải có thẻ ATM hợp lệ và số PIN. ATM phải hoạt động bình thường và kết nối với mạng ngân hàng.
Luồng cơ bản:
- Khách hàng đưa thẻ ATM của họ vào khe đọc thẻ trên ATM.
- ATM yêu cầu khách hàng nhập số PIN bằng bàn phím.
- Khách hàng nhập số PIN của mình.
- ATM xác thực số PIN và hiển thị các tùy chọn menu chính.
- Khách hàng chọn tùy chọn “Rút tiền” từ menu.
- ATM yêu cầu khách hàng nhập số tiền họ muốn rút bằng bàn phím.
- Khách hàng nhập số tiền họ muốn rút.
- ATM xác minh rằng khách hàng có đủ số dư trong tài khoản để thực hiện giao dịch.
- ATM phát hành số tiền đã yêu cầu cho khách hàng.
- ATM hiển thị thông báo cho biết giao dịch đã hoàn tất.
- Khách hàng rút thẻ ATM của họ khỏi khe đọc thẻ.
Luồng thay thế:
- 1a. Nếu ATM không thể đọc thẻ ATM của khách hàng, ATM sẽ hiển thị thông báo lỗi và yêu cầu khách hàng thử lại hoặc liên hệ với ngân hàng của mình.
- 4a. Nếu khách hàng nhập sai số PIN ba lần, ATM sẽ giữ lại thẻ và hiển thị thông báo cho biết thẻ đã bị giữ.
- 8a. Nếu khách hàng không có đủ số dư trong tài khoản để hoàn tất giao dịch, ATM sẽ hiển thị thông báo lỗi và yêu cầu khách hàng nhập số tiền nhỏ hơn hoặc hủy giao dịch.
Tên trường hợp sử dụng: Kiểm tra số dư tài khoản
Người tham gia: Khách hàng, ATM
Điều kiện tiên quyết:Khách hàng phải có thẻ ATM hợp lệ và số PIN. ATM phải hoạt động bình thường và kết nối với mạng ngân hàng.
Luồng cơ bản:
- Khách hàng đưa thẻ ATM của họ vào khe đọc thẻ trên ATM.
- ATM yêu cầu khách hàng nhập số PIN bằng bàn phím.
- Khách hàng nhập số PIN của mình.
- ATM xác thực số PIN và hiển thị các tùy chọn menu chính.
- Khách hàng chọn tùy chọn “Kiểm tra số dư tài khoản” từ menu.
- Máy ATM hiển thị số dư tài khoản hiện tại của khách hàng trên màn hình.
- Khách hàng rút thẻ ATM của họ khỏi khe đọc thẻ.
Các luồng thay thế:
- 1a. Nếu máy ATM không thể đọc thẻ ATM của khách hàng, máy sẽ hiển thị thông báo lỗi và yêu cầu khách hàng thử lại hoặc liên hệ với ngân hàng của họ.
- 4a. Nếu khách hàng nhập sai mã PIN ba lần, máy ATM sẽ giữ lại thẻ và hiển thị thông báo cho biết thẻ đã bị giữ lại.
Tên trường hợp sử dụng:Nạp tiền mặt
Người tham gia:Khách hàng, Máy ATM
Điều kiện tiên quyết:Khách hàng phải có thẻ ATM hợp lệ và mã PIN. Máy ATM phải hoạt động bình thường và kết nối với mạng lưới ngân hàng.
Luồng cơ bản:
- Khách hàng đưa thẻ ATM của họ vào khe đọc thẻ trên máy ATM.
- Máy ATM yêu cầu khách hàng nhập mã PIN bằng bàn phím.
- Khách hàng nhập mã PIN của mình.
- Máy ATM xác thực mã PIN và hiển thị các tùy chọn menu chính.
- Khách hàng chọn tùy chọn “Nạp tiền mặt” từ menu.
- Máy ATM yêu cầu khách hàng đưa tiền mặt họ muốn nạp vào khe nạp tiền trên máy ATM.
- Khách hàng đưa tiền vào khe nạp tiền.
- Máy ATM xác thực tiền và hiển thị thông báo cho biết số tiền đã được nạp.
- Khách hàng rút thẻ ATM của họ khỏi khe đọc thẻ.
Tham khảo: Các kỹ thuật mô hình hóa trường hợp sử dụng
- Use Case Specification là gì?
- Một hướng dẫn thực tế về phân tích độ bền
- Xác định yêu cầu người dùng bằng sơ đồ trường hợp sử dụng
- User Story so với Trường hợp sử dụng trong phát triển phần mềm Agile
- Phương pháp dựa trên trường hợp sử dụng cho phát triển Agile
- Các loại người tham gia trong mô hình trường hợp sử dụng
- Sơ đồ trường hợp sử dụng là gì?
- UML là gì?
- Tại sao lại sử dụng mô hình hóa UML?
This post is also available in Deutsch, English, Español, فارسی, Bahasa Indonesia, 日本語, Polski, Portuguese, Ру́сский, 简体中文 and 繁體中文.











