Ứng dụng này sẽ cung cấp các bài kiểm tra đa dạng, hỗ trợ học sinh ôn tập và nâng cao kiến thức một cách chủ động, đồng thời giúp giảm tải khối lượng công việccho giáo viên trong việc tổ
Trang 1TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ
TRUYỀN THÔNG VIỆT – HÀN KHOA KỸ THUẬT MÁY TÍNH & ĐIỆN TỬ
Trang 2TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ
TRUYỀN THÔNG VIỆT – HÀN KHOA KỸ THUẬT MÁY TÍNH & ĐIỆN TỬ
Trang 3Đà Nẵng, tháng 11 năm 2024
MỞ ĐẦU
Hiện nay, cùng với sự phát triển mạnh mẽ của công nghệ thông tin, các ứng dụng phục
vụ giáo dục và kiểm tra đánh giá ngày càng được chú trọng, đặc biệt là các ứng dụng thitrắc nghiệm trực tuyến Những ứng dụng này không chỉ hỗ trợ giáo viên trong việc tổchức thi cử mà còn giúp học sinh, sinh viên tự luyện tập, nâng cao kiến thức một cáchtiện lợi Xuất phát từ nhu cầu đó, nhóm chúng em đã xây dựng ý tưởng phát triển mộtứng dụng thi trắc nghiệm trực tuyến nhằm tạo ra một môi trường thi cử an toàn, hiệu quả
và dễ sử dụng Ứng dụng này sẽ cung cấp các bài kiểm tra đa dạng, hỗ trợ học sinh ôn tập
và nâng cao kiến thức một cách chủ động, đồng thời giúp giảm tải khối lượng công việccho giáo viên trong việc tổ chức và chấm bài Với các tính năng chính như cung cấp ngânhàng câu hỏi phong phú, cho phép người dùng thi trực tuyến, tự động chấm điểm và cungcấp kết quả ngay sau khi hoàn thành bài thi, ứng dụng hứa hẹn sẽ là một công cụ học tậphữu ích Dưới sự hướng dẫn của cô Trần Thu Thủy, nhóm chúng em mong muốn pháttriển sản phẩm này thành một công cụ hỗ trợ giáo dục hiện đại, góp phần đổi mới phươngpháp giảng dạy và học tập
Chương 4 Phân tích và thiết kế hệ thống: Đặc tả các chức năng của ứng dụng
Chương 5 Thiết kế cơ sở dữ liệu
Chương 6 Giao diện Ứng dụng
Trang 4sự quan tâm, giúp đỡ của quý Thầy Cô và bạn bè.
Với lòng biết ơn sâu sắc nhất, nhóm em xin gửi đến quý Thầy Cô ở Khoa KỹThuật Máy Tính và Điện Tử đã truyền đạt vốn kiến thức quý báu cho chúng em trongsuốt thời gian học tập tại trường Nhờ có sự hướng dẫn, dạy bảo của các Thầy Cô nên
Đồ án cơ sở 2 của nhóm em mới có thể hoàn thành thuận lợi
Một lần nữa, nhóm em xin chân thành cảm ơn cô Ths Trần Thu Thủy – người
đã trực tiếp giúp đỡ, quan tâm, hướng dẫn chúng em hoàn thành tốt Đồ án cơ sở 2trong thời gian qua
Trong quá trình học tập, cũng như là trong quá trình làm bài báo cáo thực tập,khó tránh khỏi sai sót, rất mong các thầy, cô bỏ qua Đồng thời do trình độ lý luậncũng như kinh nghiệm thực tiễn còn hạn chế nên bài báo cáo không thể tránh khỏinhững thiếu sót, em rất mong nhận được ý kiến đóng góp thầy, cô để em có thêmđược nhiều kinh nghiệm và sẽ hoàn thành tốt hơn bài báo cáo lần sau
Sinh viên chịu trách nhiệm chính
(Ký và ghi rõ họ tên)
Nguyễn Đình Khánh Nguyễn Quang Huy
Trang 5
NHẬN XÉT CỦA GIẢNG VIÊN HƯỚNG DẪN
Trang 6
MỤC LỤC
Trang
Nội dung
MỞ ĐẦU 3
LỜI CẢM ƠN 4
NHẬN XÉT CỦA GIẢNG VIÊN HƯỚNG DẪN 5
MỤC LỤC 6
DANH MỤC HÌNH 8
DANH MỤC CỤM TỪ VIẾT TẮT 9
Chương 1 Giới thiệu 10
1.1 Đặt vấn đề 10
1.2 Lý do chọn đề tài 10
1.3 Thông tin về các công cụ thực hiện 11
1.4 Tổng kết chương 1 11
Chương 2 Tổng quan về ứng dụng 12
2.1 Giới thiệu về ứng dụng 12
2.2 Một số quy trinh hoạt động 12
2.2.1 Quy trình đăng ký tài khoản 12
2.2.2 Quy trình đăng nhập 13
2.2.3 Quy trình thêm câu hỏi 14
2.2.4 Quy trình làm bài thi 15
2.2.5 Quy trình chấm bài thi 16
2.2.6 Quy trình quản lý tài khoản khách hàng 17
2.3 Cơ chế tổ chức ứng dụng 17
Chương 3 Nghiên cứu tổng quan 18
3.1 Ngôn ngữ lập trình ứng dụng 18
3.1.1 Java swing 18
3.1.2 jdbc(orm-hibernate) 18
3.2 Ngôn ngữ thiết kế hệ thống ULM 19
Chương 4 Phân tích thiết kế hệ thống 21
4.1 Biểu đồ use case 21
4.1.1 Biểu đồ use case tổng thể 21
4.1.2 Biểu đồ phân rã use case khách hàng 21
4.1.2.1 Tiến trình sử dụng hệ thống 21
4.1.2.2 Tiến trình đăng nhập 22
4.1.3 Biểu đồ phân rã use case Admin 22
4.1.3.1 Tiến trình quản lý bài thi 22
4.1.4 Đặc tả một số Use case 23
4.1.4.1 Use case Đăng nhập 23
4.1.4.2 Use case Đăng ký 23
4.1.4.3 Use case làm bài 24
4.1.4.4 Use case Quản lý câu hỏi 25
4.1.4.5 Use case danh sách bài thi 25
4.2 Biểu đồ lớp 26
Trang 74.3.1 Đăng ký tài khoản 27
4.3.2 Đăng nhập 27
4.3.3 Làm bài thi 28
4.3.4 Quản lý câu hỏi 28
4.3.5 Danh sách bài thi 29
4.4 Kiểu đồ tuần tự 29
4.4.1 Đăng ký 29
4.4.2 Đăng nhập 30
4.4.3 Làm bài thi 30
4.4.4 Quản lý câu hỏi 31
4.4.5 Xem danh sách bài thi 31
Chương 5 Thiết kế cơ sở dữ liệu 32
5.1 Bảng categories 32
5.2 Bảng users 32
5.3 Bảng questions 32
5.4 Bảng answers 33
5.5 Bảng exams 33
5.6 Bảng exams_question 34
5.7 Bảng exam_results 34
5.8 Sơ đồ cơ sở dữ liệu 35
Chương 6 Thiết kế ứng dụng 36
6.1 Giao diện đăng nhập 36
6.2 Trang chủ sau khi người dùng đăng nhập 36
6.3 Trang chủ sau khi admin đăng nhập 37
6.4 Giao diện làm bài thi 37
6.5 Giao diện thêm câu hỏi 38
6.6 Giao diện quản lý người dùng 38
6.7 Giao diện quản lý câu hỏi 39
6.8 Giao diện quản lý điểm số của admin 39
6.9 Giao diện quản lý đề kiểm tra 40
Kết luận và hướng phát triển 41
Tài liệu tham khảo 42
Trang 8DANH MỤC HÌNH
Trang
Hình 2.1: Quy trình đăng ký tài khoản 12
Hình 2.2: Quy trình đăng nhập 13
Hình 2.3: Quy trình thêm câu hỏi 14
Hình 2.4: Quy trình làm bài 15
Hình 2.5: Quy trình chấm bài 16
Hình 3.1: Java swing 18
Hình 3.2: Jdbc and Hibernate 19
Hình 3.3: Ngôn ngữ thiết kế hệ thống ULM 20
Hình 4.1: Biểu đồ use case tổng thể 21
Hình 4.2: Biểu đồ tiến trình sử dụng hệ thống 21
Hình 4.3: Biểu đồ tiến trình đăng nhập 22
Hình 4.4: Biểu đồ quản lý bài thi 22
Hình 4.5: Biểu đồ lớp 26
Hình 4.6: Biểu đồ hoạt động đăng ký 27
Hình 4.7: Biểu đồ hoạt động đăng nhập 27
Hình 4.8: Biểu đồ hoạt động làm bài thi 28
Hình 4.9: Biểu đồ hoạt động quản lý câu hỏi 28
Hình 4.10: Biểu đồ hoạt động danh sách bài thi 29
Hình 4.11: Biểu đồ tuần tự đăng ký 29
Hình 4.12: Biểu đồ tuần tự đăng nhập 30
Hình 4.13: Biểu đồ tuần tự làm bài thì 30
Hình 4.14: Biểu đồ tuần tự quản lý câu hỏi 31
Hình 4.15: Biểu đồ tuần tự xem danh sách bài thi 31
Hình 5.1: Sơ đồ cơ sổ dữ liệu 32
Hình 6.1: Giao diện đăng nhập 33
Hình 6.2: Giao diện sau khi người dùng đăng nhập 33
Hình 6.3: Giao diện sau khi admin đăng nhập 34
Hình 6.4: Giao diện làm bài thi 34
Hình 6.5: Giao diện thêm câu hỏi 35
Hình 6.6: Giao diện quản lý người dùng 35
Hình 6.7: Giao diện quản lý câu hỏi 36
Hình 6.8: Giao diện quản lý điểm số của admin 36
HÌnh 6.9: Giao diện quản lý kiểm tra 37
Trang 9DANH MỤC CỤM TỪ VIẾT TẮT
STT Cụm từ Viết tắt
Trang 10Chương 1 Giới thiệu
1.1 Đặt vấn đề.
Sự phát triển vượt bậc của công nghệ thông tin không chỉ mang lại những thay đổi lớntrong lĩnh vực thương mại điện tử, mà còn thúc đẩy sự phổ biến của các ứng dụng phục vụhọc tập và giáo dục Trong đó, các ứng dụng thi trắc nghiệm đã trở thành một công cụ hữuích, giúp người dùng ôn tập và kiểm tra kiến thức một cách tiện lợi và hiệu quả
Với khả năng cung cấp môi trường làm bài kiểm tra đa dạng, chấm điểm nhanh chóng,cùng giao diện dễ sử dụng, các ứng dụng thi trắc nghiệm ngày càng được ưa chuộng trongnhà trường, doanh nghiệp và cả cá nhân Tuy nhiên, không phải ứng dụng nào cũng đápứng được yêu cầu về giao diện thân thiện, tính năng đầy đủ và hiệu quả hoạt động
Xuất phát từ nhu cầu trên, chúng em quyết định thực hiện đề tài "Ứng dụng thi trắcnghiệm sử dụng Java Swing và JDBC (ORM - Hibernate)" Mục tiêu là xây dựng mộtphần mềm thi trắc nghiệm hỗ trợ việc tạo đề, làm bài, chấm điểm và quản lý người dùnghiệu quả, đồng thời có giao diện thân thiện và dễ sử dụng
1.2 Lý do chọn đề tài.
Tính năng cấp thiết của ứng dụng thi trắc ngiệm: Trong bối cảnh hiện nay, các
hình thức kiểm tra trực tuyến đang dần thay thế kiểm tra truyền thống nhờ vào tính linh hoạt và tiện lợi Một ứng dụng thi trắc nghiệm không chỉ hỗ trợ giáo viên, nhà trường trong việc tổ chức kiểm tra, mà còn là công cụ hữu ích để người học tự đánh giá và củng
cố kiến thức
Sự phù hợp của Java Swing và JDBC (Hibernate):
- Java Swing: Công cụ mạnh mẽ để xây dựng giao diện người dùng (GUI) cho ứng
dụng máy tính Swing cung cấp nhiều thành phần giao diện hiện đại, dễ tùy chỉnh, giúp tạo
ra các ứng dụng thân thiện và chuyên nghiệp
- JDBC (Hibernate): Hibernate, một ORM (Object Relational Mapping) framework,
hỗ trợ kết nối cơ sở dữ liệu và thao tác với dữ liệu dễ dàng Hibernate giúp giảm thiểu mã nguồn cần thiết, tối ưu hóa hiệu suất, đồng thời đảm bảo sự an toàn và linh hoạt trong xử
lý cơ sở dữ liệu
Cơ hội học tập và ứng dụng thực tế: Đề tài này không chỉ giúp nhóm chúng em tiếp
cận sâu hơn với các công nghệ như Java Swing và Hibernate, mà còn là cơ hội để tạo ra một sản phẩm thực tế, hỗ trợ cho học tập và kiểm tra
Tiềm năng mở rộng và ứng dụng: Phần mềm thi trắc nghiệm có thể mở rộng tính
năng như hỗ trợ đa ngôn ngữ, tích hợp hệ thống báo cáo, hoặc kết nối với các nền tảng họctrực tuyến Điều này mang lại giá trị lâu dài cho dự án
Trang 111.3 Thông tin về các công cụ thực hiện.
MySQL Workbench: Công cụ thiết kế và quản lý cơ sở dữ liệu.
Maven/Gradle: Quản lý thư viện và xây dựng dự án.
Git: Hỗ trợ quản lý mã nguồn và làm việc nhóm.
3 Lý do chọn Hibernate
Hibernate hỗ trợ:
Mapping ORM: Dễ dàng ánh xạ giữa các bảng trong cơ sở dữ liệu và các đối
tượng trong Java
Tích hợp dễ dàng: Giảm thiểu mã nguồn xử lý dữ liệu.
Hiệu suất cao: Hibernate hỗ trợ caching, tối ưu hóa hiệu suất của ứng dụng.
1.4 Tổng kết chương 1.
Trong chương này, chúng em đã trình bày về bối cảnh, lý do chọn đề tài và các công cụ
sử dụng để phát triển ứng dụng Những nội dung này là cơ sở để thực hiện phân tích và thiết kế hệ thống, sẽ được trình bày chi tiết trong các chương tiếp theo
Trang 12Chương 2 Tổng quan về ứng dụng
2.1 Giới thiệu về ứng dụng
Ứng dụng thi trắc nghiệm là một nền tảng trực tuyến, giúp người dùng thực hiện các bàikiểm tra dưới dạng câu hỏi trắc nghiệm Ứng dụng có thể được sử dụng trong nhiều lĩnh vực, từ giáo dục, đào tạo đến các kỳ thi tuyển dụng Với giao diện thân thiện, người dùng
dễ dàng thực hiện các bài thi mọi lúc mọi nơi thông qua các thiết bị như máy tính hoặc điện thoại
2.2 Một số quy trinh hoạt động
2.2.1 Quy trình đăng ký tài khoản
Khi khách hàng muốn đăng kí tài khoản để sử dụng cho các việc làm bài thi thì khách hàng có thể truy cập vào trang login chọn mục đăng ký sau đó nhập đầy đủ các thông tin
mà form đăng ký yêu cầu và ấn vào đăng ký Sau khi thông tin khách hàng được gửi lên,
hệ thống sẽ kiểm và tiến hành đăng kí cho người xem nếu các thông tin hợp lệ và yêu cầu nhập lại nếu thông tin không hợp lệ
Hình 2.1: Quy trình đăng ký tài khoản
Trang 132.2.2 Quy trình đăng nhập
Giao diện đăng nhập chỉ gồm 2 trường thông tin là tên đăng nhập (email) và mật khẩu
Hệ thống quản lý tài khoản của thành viên sẽ kiểm tra thông tin được cung cấp Nếu thông tin không đúng thì sẽ quay lại màn hình đăng nhập đồng thời gửi thông báo hiện thị trên giao diện
Nếu thông tin được xác thực sẽ đưa về trang chủ của ứng dụng thi trắc nghiệm
Hình 2.2: Quy trình đăng nhập
Trang 142.2.3 Quy trình thêm câu hỏi
Admin sau khi ra câu hỏi xong, họ cảm thấy ưng với một câu hỏi nào đó thì họ có thể tiến hành thêm câu hỏi đó vào đề thi và sau đó luu chúng lại để sau này khi người dùng vào làm bài thi sẽ xuất hiện câu hỏi đó trong bộ đề thi và tính năng này có thể giúp admin
có thể sửa đổi bộ đề câu hỏi nhằm tăng tính đa dạng và sâu rộng cho bộ câu hỏi
Hình 2.3: Quy trình thêm câu hỏi
Trang 152.2.4 Quy trình làm bài thi
Người dùng sau khi đăng nhập thành công sẽ hiện thị giao diện gồm các đề thi, sau đó người dùng chọn đề mình muốn thực hiện thi để có thể làm bài Mỗi câu hỏi được hiển thị kèm theo các tùy chọn (A, B, C, D) Người dùng chọn đáp án phù hợp cho từng câu bằng cách nhấp vào các nút chọn, và mỗi câu hỏi chỉ được chọn duy nhất một đáp án Ở phần giao diện thi sẽ có nút để đổi trang câu hỏi gồm: 2 nút “câu trước “ và “ câu tiếp theo” Saukhi hoàn thành bài thi người dùng bấm vào nút nộp bài để xem mình được bao nhiều điểm
và thời gian làm bài trong bao lâu( ứng dụng sẽ hiện thị thời gian làm bài ngay lúc người dùng bấm vào ô Bắt đầu thi ở trang chủ)
Hình 2.4: Quy trình làm bài
Trang 162.2.5 Quy trình chấm bài thi
Hệ thống sẽ lấy dữ liệu từ các đáp án mà người dùng thực hiện chọn để đối chiếu với đáp án mà admin nhập vào và hiện thị đúng sai, số điểm mà người dùng đạt được sau khi nộp bài thi Sau khi chấm bài hệ thống sẽ trả về kết quả làm bài hiện thị cho người dùng thấy câu đúng, sai, thời gian làm bài, số điểm đạt được của bài thi đó
Hình 2.5: Quy trình chấm bài
Trang 172.2.6Quy trình quản lý tài khoản khách hàng
Quản lý tài khoản trong ứng dụng thi trắc nghiệm là một quy trình quan trọng nhằm đảm bảo hoạt động trơn tru và hiệu quả của hệ thống Admin cần quản lý danh sách tài khoản, bao gồm thông tin cơ bản như họ tên, email, vai trò và lịch sử tham gia thi cử Một tính năng thiết yếu là khả năng khóa tài khoản khi phát hiện vi phạm, đảm bảo tính minh bạch và công bằng Ngoài ra, hệ thống có thể hỗ trợ phân loại người dùng dựa trên tần suấthoạt động hoặc kết quả thi để gửi voucher tri ân, khuyến khích học viên tích cực hơn Quản lý phân quyền cũng rất cần thiết, đảm bảo chỉ admin mới có thể thực hiện các thao tác nhạy cảm như sửa hoặc xóa tài khoản Quy trình này không chỉ tăng tính bảo mật mà còn giúp admin dễ dàng theo dõi và hỗ trợ người dùng khi cần thiết, đặc biệt trong môi trường giáo dục trực tuyến
2.3 Cơ chế tổ chức ứng dụng
Cơ cấu tổ chức của ứng dụng như sau:
+ Admin quản lý các hoạt động chung của ứng dụng
+ Người dùng là người sử dụng ứng dụng và thao tác với các chức năng cơ bản như:Đăng nhập, đăng kí, làm bài thi
Trang 18Chương 3 Nghiên cứu tổng quan
3.1 Ngôn ngữ lập trình ứng dụng
3.1.1 Java swing
Java Swing là một thư viện trong Java được sử dụng để phát triển các ứng dụng với giaodiện đồ họa (GUI) Nó là một phần của Java Foundation Classes (JFC), cung cấp các thànhphần giao diện người dùng độc lập với nền tảng Swing hoạt động dựa trên AWT (AbstractWindow Toolkit) nhưng vượt trội hơn nhờ khả năng tùy chỉnh mạnh mẽ và linh hoạt Các thành phần trong Swing được thiết kế để hoạt động nhẹ, không phụ thuộc vào hệ điều hành, và được vẽ bằng mã Java thay vì sử dụng các thư viện GUI gốc
Swing hỗ trợ một số thành phần giao diện phổ biến như JFrame (cửa sổ chính), JPanel (khung chứa), JButton (nút bấm), JLabel (nhãn hiển thị), JTextField (hộp nhập liệu), và JPasswordField (hộp nhập mật khẩu) Với kiến trúc MVC (Model-View-Controller), Java Swing đảm bảo việc xử lý dữ liệu, giao diện, và logic sự kiện một cách tách biệt Ngoài ra,Swing cũng sử dụng cơ chế xử lý sự kiện đa luồng thông qua Event Dispatch Thread (EDT), giúp giao diện hoạt động mượt mà và ổn định trên nhiều nền tảng
Hình 3.1: Java swing
3.1.2 jdbc(orm-hibernate)
JDBC (Java Database Connectivity) là một API trong Java cho phép kết nối và làm việcvới cơ sở dữ liệu quan hệ (RDBMS) Nó cung cấp các phương thức tiêu chuẩn để thực hiện các truy vấn SQL, gọi các thủ tục lưu trữ, và xử lý kết quả trả về JDBC cho phép các ứng dụng Java tương tác với nhiều cơ sở dữ liệu khác nhau như MySQL, PostgreSQL, Oracle, hoặc SQL Server thông qua các driver riêng biệt Tuy nhiên, việc sử dụng JDBC truyền thống có thể dẫn đến mã lệnh phức tạp, khó bảo trì do cần quản lý kết nối, câu lệnh SQL, và xử lý lỗi thủ công
Trang 19Để giải quyết nhược điểm này, ORM (Object-Relational Mapping) ra đời, và Hibernate
là một trong những framework ORM phổ biến nhất cho Java Hibernate cung cấp một lớp trừu tượng cho phép các nhà phát triển làm việc với cơ sở dữ liệu mà không cần viết nhiều câu lệnh SQL Nó ánh xạ các lớp Java với bảng trong cơ sở dữ liệu, nhờ đó giúp chuyển đổi giữa các đối tượng Java và bản ghi trong cơ sở dữ liệu một cách tự động
Hibernate cũng hỗ trợ các tính năng như lazy loading (tải dữ liệu khi cần), caching (bộ nhớ đệm), transaction management (quản lý giao dịch), và query language (HQL –
Hibernate Query Language) Những tính năng này giúp giảm tải công việc thủ công và tăng hiệu suất Đồng thời, Hibernate còn mang tính độc lập với hệ quản trị cơ sở dữ liệu, cho phép chuyển đổi giữa các RDBMS dễ dàng mà không cần thay đổi mã nguồn chính
Sự kết hợp giữa JDBC và Hibernate mang lại giải pháp mạnh mẽ để xây dựng các ứng dụng Java với cơ sở dữ liệu, đơn giản hóa việc phát triển, và tăng hiệu quả trong quản lý
dữ liệu
Hình 3.2: Jdbc and Hibernate
3.2 Ngôn ngữ thiết kế hệ thống ULM
UML (Unified Modeling Language) là ngôn ngữ dành cho việc đặc tả, hình dung, xây dựng và làm tài liệu của các hệ thống phần mền
UML tạo cơ hội để viết thiết kế hệ thống, bao gồm những khái niệm như tiến trình nghiệp vụ và các chức năng của hệ thống
Cách xây dựng các mô hình trong UML phù hợp mô tả các hệ thống thông tin cả về cấu trúc cũng như hoạt động Cách tiếp cận theo mô hình của UML giúp ích rất nhiều cho những người thiết kế và thực hiện hệ thống thông tin cũng như những người sử dụng nó;
Trang 20- Sơ đồ tình huống sử dụng (Use Cases Diagram)
- Sơ đồ trình tự (Sequence Diagram)
- Sơ đồ cộng tác (Collaboration Diagram hay là Composite Structure Diagram)
- Sơ đồ trạng thái (State Machine Diagram)
- Sơ đồ thành phần (Component Diagram)
- Sơ đồ hoạt động (Activity Diagram)
- Sơ đồ triển khai (Deployment Diagram)
- Sơ đồ gói (Package Diagram)
- Sơ đồ liên lạc (Communication Diagram)
- Sơ đồ tương tác (Interaction Overview Diagram - UML 2.0)
- Sơ đồ phối hợp thời gian (Timing Diagram - UML 2.0)
Hình 3.3: Ngôn ngữ thiết kế hệ thống ULM
Trang 21Chương 4 Phân tích thiết kế hệ thống
4.1 Biểu đồ use case
4.1.1 Biểu đồ use case tổng thể
Hình 4.1: Biểu đồ use case tổng thể
4.1.2 Biểu đồ phân rã use case khách hàng
4.1.2.1 Tiến trình sử dụng hệ thống