Chương 1: Giới thiệu 1.1 Mục đích - Tài li ệu phân tích thiết kế này mô tả thiết kế cho hệ thống mượn trả sách trực tuyến, bao gồm các tính năng kiến trúc của hệ thống thông qua các chi ti ết về hoạt động của mỗi mô-đun sẽ thực hiện và bố trí cơ sở dữ liệu.2 Tổng quan tài liệu + Tài li ệu gồm hai phần: Giới thiệu, Thiết kế hệ thống: ● Phần Giới thiệu nhằm mục đích cung cấp cho người dùng cái nhìn khái quát về hệ thống, cũng như tài liệu phân tích thiết kế về hệ thống hỗ trợ duyệt CV cho tuyển dụng trực tuyến. ● Phần Thiết kế hệ thống gồm 6 mục nhỏ: ○ Mô hình hóa cấu trúc hệ thống ○ Mô hình hóa sự tương tác ○ Kiến trúc tổng thể của hệ thống ○ Thiết kế lớp chi tiết ○ Thiết kế cơ sở dữ liệu ○ Thiết kế nguyên mẫu giao diện 2. Phân tích cấu trúc 2.1 Mô hình hóa cấu trúc hệ thống 2.1 Nhóm ca sử dụng của “Khách” 1. Nhóm UC “Đăng ký” 2.
Nhóm UC ” Đăng Nhập” 1 3. Duyệt sách Tương tự như “Duyệt sách” của người dùng , tuy vậy usecase lớp quản lý ”xem chi tiết lớp” không có phương thức thêm vào danh sách mượn và thêm vào danh sách yêu thích 2.2 Nhóm ca sử dụng của “Người dùng” 1.Nhóm UC “Quản lý thông tin tài khoản” 2. Nhóm UC “Duyệt Sách” a, ”Xem Danh Sách Các Sách”&&”Tìm Kiếm Sách” && “ Sắp Xếp Sách” 2 b, Xem Chi Tiết Sách 3 Nhóm ca sử dụng ‘’Diễn Đàn’’ 3 4 Nhóm ca sử dụng “Mượn Sách” a, Xem danh sách mượn b, Xem danh sách yêu thích 5 Nhóm ca sử dụng ‘’Xem lịch sử mượn” 4 2.3 Nhóm ca sử dụng của “Admin quản lý sách” 1. Nhóm UC “Quản lý Sách” 5 2.
Nhóm UC “Quản lý Mượn trả” 2.4 Nhóm ca sử dụng của “Admin quả n lý tài khoản” 1. Nhóm UC “Quản lý tài khoản” 6 2. Nhóm UC “Quản lý diễn đàn” 2.2 Mô hình hóa sự tương tác 2.1 Nhóm ca sử dụng của “Khách” 1. nhóm UC ” Đăng Ký” 7 2.
Nhóm UC” Đăng Nhập” 2.2 Nhóm ca sử dụng của “Người dùng” 1.Nhóm UC “Quản lý thông tin tài khoản” 8 2.Nhóm UC “Duyệt Sách” a, ”Xem Danh Sách Các Sách”&&”Tìm Kiếm Sách” && “ Sắp Xếp Sách” b, Xem Chi Tiết Sách 9 3. Nhóm ca sử dụng ‘’Diễn Đàn’’ 10 4. Nhóm ca sử dụng “Mượn Sách” a, Xem danh sách mượn 11 b, Xem danh sách yêu thích 5. Nhóm ca sử dụng ‘’Xem lịch sử mượn” 12 2.3 Nhóm ca sử dụng của “Admin quản lý sách” 1.
Nhóm UC “Quản lý Sách” 2. Nhóm UC “Quản lý mượn trả” 13 14 2.4 Nhóm ca sử dụng của “Admin quả n lý tài khoản” 1. Nhóm UC “Quản lý tài khoản” 2. Nhóm UC “Quản lý diễn đàn” 15 2.3 Kiến trúc tổng thể của hệ thống Kiến trúc phân tầng của hệ thống được thể hiện trong hình vẽ sau đây: 16 2.4 Thiết kế chi tiết lớp 2.2 Sơ đồ lớp tổng quan của gói Model 1.
TaiKhoan Tên lớp TaiKhoan 17 Mục Thông tin chi tiết tài khoản đích sử dụng của lớp Thuộc Tên thuộc tính Phạm vi Kiểu dữ Mục đích tính liệu tenTK Private String Tên dùng để đăng nhập matKhau Private String Mật khẩu dùng để đăng nhập maSoTK Private int Mã số tài khoản capTK Private int Cấp tài khoản ho Private String Tên của người dùng ten Private String Họ của người dùng ngaySinh Private Datetime Ngày sinh của người dung gioiTinh Private String Giới tính của người dung soDienThoai Private String Số điện thoại của người dùng soLanViPham Private int Số lần vi phạm quy định diễn đàn của tài khoản Phương Tên phương thức Phạm vi Danh sách Kiểu dữ Mục đích thức tham số liệu trả về TaiKhoan Public tenTK, TaiKhoan Phương thức khởi matKhau, ho, tạo cho lớp ten, ngaySinh, TaiKhoan gioiTinh getMasoTK Public None String Phương thức trả về mã số tài khoản getCapTK Public None int Phương thức trả về cấp tài khoản 18 nangCapTK Public None Void Phương thức cài đặt cấp tài khoản lên 2 setMatKhau Public matKhauMoi String Phương thức thay đổi mật khẩu Cùng các phương thức Getter, Setter tương ứng cho các thuộc tính còn lại 2. BaiDang Tên lớp BaiDang Mục Thông tin chi tiết Bài đăng đích sử dụng của lớp Thuộc Tên thuộc Phạm vi Kiểu dữ liệu Mục đích tính tính BaiDangID Private int Mã bài đăng TieuDe Private String Tiêu đề bài đăng Anh Private string link ảnh kèm nếu có NoiDung Private string Nội dung bài đăng UserID Private int Mã người dùng đăng bài LuotLike Private int Số lượt like NgayDang Private Datetime Ngày đăng BinhLuan Private list<BinhLuan> Danh sách bình luận Phương Tên phương Phạm vi Danh sách tham số Kiểu dữ liệu Mục đích thức thức trả về BaiDang Public TieuDe,UserID, BaiDang Phương thức khởi 19 BaiDangID,NoiDung, tạo cho lớp Anh BaiDang getBaiDang Public BaiDangID BaiDang Lấy ra bài đăng theo ID addBinhLuan Public BinhLuan void Thêm bình luận cho bài đăng anBaiDang Public BaiDangID Void ẩn bài đăng theo ID Cùng các phương thức Getter, Setter tương ứng cho các thuộc tính còn lại 3. Baocao Tên lớp BaoCao Mục Thông tin về báo cáo trong diễn đàn đích sử dụng của lớp Thuộc Tên thuộc tính Phạm vi Kiểu dữ Mục đích tính liệu thoiGian Private Datetime Thời gian báo cáo taiKhoanBaoCao Private int Mã số tài khoản của người báo cáo taiKhoanViPham Private int Mã số tài khoản của người bị báo cáo noiDung Private String Nội dung báo cáo dieuLuat Private String Nội quy mà người bị báo cáo vi phạm tinhTrang Private String Tình trạng của báo cáo (đã duyệt hoặc đang chưa duyệt) 20 Phương Tên phương thức Phạm vi Danh sách Kiểu dữ Mục đích thức tham số liệu trả về setTinhTrang Public None Void Phương thức chuyển tình trạng của báo cáo thành đã duyệt Các phương thức Getter, Setter tương ứng cho các thuộc tính còn lại 4. Binh Luan Tên lớp BinhLuan Mục Thông tin về bình luận của bài đăng đích sử dụng của lớp Thuộc Tên thuộc tính Phạm vi Kiểu dữ Mục đích tính liệu NoiDung Private string Nội dung bình luận UserID Private int Mã người dùng bình luận BaiDangID Private int Mã bài đăng Phương Tên phương Phạm vi Danh sách tham Kiểu dữ Mục đích thức thức số liệu trả về BinhLuan Public NoiDung,UserID, void Phương thức khởi tạo bình luận BaiDangID 5.
QuyDinh Tên lớp QuyDinh Mục Thông tin về quy định của diễn đàn đích sử dụng của lớp 21 Thuộc Tên thuộc tính Phạm vi Kiểu dữ Mục đích tính liệu danhSachQuyDinh Private ArrayList Danh sách quy định <quyDinh> của diễn đàn Phương Tên phương thức Phạm vi Danh sách Kiểu dữ Mục đích thức tham số liệu trả về capNhatQuyDInh Public quyDinh Void Thêm quy định trong danh sách quy định 6. ThongKeDienDan Tên lớp ThongKeDienDan Mục Thông tin về s ố lượng báo cáo, người dùng trong diễn đàn đích sử dụng của lớp Thuộc Tên thuộc tính Phạm vi Kiểu dữ Mục đích tính liệu tongSoBC Private int Tổng số báo cáo soTKThamGia Private int Số tài khoản tham gia diễn đàn soTKThamGiaTB Private int Số tài khoản tham gia diễn đàn trung bình 1 ngày Phương Tên phương thức Phạm vi Danh sách Kiểu dữ Mục đích thức tham số liệu trả về Các phương thức Getter, Setter tương ứng cho các thuộc tính 7. Sach Tên lớp Sach Mục Thông tin chi tiết Sách đích sử 22 dụng của lớp Thuộc Tên thuộc tính Phạm vi Kiểu dữ Mục đích tính liệu bookID Private String Mã sách tenSach Private String Tên sách tacGia Private String Tác giả theLoai Private String Thể loại soLuong Private int Số lượng giaTien Private int Giá tiền của quyển sách tinhTrang Private String Tình trạng của sách Phương Tên phương thức Phạm vi Danh sách Kiểu dữ Mục đích thức tham số liệu trả về Sach Public bookID, None Phương thức khởi tenSach, tạo cho lớp Sach tacGia, theLoai, soLuong, giaTien, tinhTrang getBookID Public None String Phương thức trả về mã số sách getSoLuong Public None int Phương thức trả về số lượng sách capNhatSoLuong Public soLuongMoi void Phương thức thay đổi số lượng sách thayDoiTinhTrang Public tinhTrangMoi void Phương thức thay đổi tình trạng của sách Cùng các phương thức Getter, Setter tương ứng cho các thuộc tính còn lại 23 8. DanhGia Tên lớp DanhGia Mục Thông tin về đánh giá sách đích sử dụng của lớp Thuộc Tên thuộc tính Phạm vi Kiểu dữ liệu Mục đích tính BookID Private int Mã sách chưa đánh giá BinhLuan Private String Nội dung bình luận kèm theo UserID Private Int Mã người dùng thực hiện đánh giá MucDoDanhGia Private Int Số nguyê ứng với mức độ đánh giá định bao gồm từ 1 sao đến 5 sao Phương Tên phương thức Phạm vi Danh Kiểu dữ liệu Mục đích thức sách trả về tham số Phương thức khởi tạo và getter, setter tương ứng với thuộc tính 9.
DSSach Tên lớp DSSach Mục Thông tin danh sách sách c ủa một User đích sử dụng của lớp Thuộc Tên thuộc tính Phạm vi Kiểu dữ Mục đích tính liệu userID Private String Mã tài khoản 24 bookID Private String Mã sách Phương Tên phương thức Phạm vi Danh sách Kiểu dữ Mục đích thức tham số liệu trả về DSSach Public bookID, userID None Phương thức khởi tạo cho lớp DanhSachSach getBookID Public None String Phương thức trả về mã số sách getUserID Public None String Phương thức trả về mã số tài khoản setBookID Public bookIDMoi void Phương thức thay đổi mã số tài khoản setUserID Public userIDMoi void Phương thức thay đổi mã số sách delete Public bookID, userID void Xóa đối tượng có bookID và userID được ghi trong phần tham số 10. Phieu Muon Tên lớp PhieuMuon Mục Thông tin phiếu mượ n của một User đích sử dụng của lớp Thuộc Tên thuộc tính Phạm vi Kiểu dữ liệu Mục đích tính userID Private String Mã tài khoản phieuMuonID Private String Mã phiếu mượn dsMuon Private ArrayList<DSSach> Danh sách sách của user ngayMuon Private Date Ngày mượn 25 ngayTra Private Date Ngày trả tinhTrang Private String Tình trạng của phiếu mượn Phương Tên phương Phạm Danh sách Kiểu dữ liệu trả Mục đích thức thức vi tham số về PhieuMuon Public userID, None Phương thức phieuMuonID, khởi tạo cho ngayMuon, lớp PhieuMuon ngayTra, tinhTrang addDSMuon Public DSSach None Phương thức thêm danh sách sách thayDoiTinhTrang Public tinhTrang void Phương thức thay đổi tình trạng của phiếu mượn Cùng các phương thức Getter, Setter tương ứng cho các thuộc tính còn lại 11. LichSuMuon Tên lớp LichSuMuon Mục Thông tin về danh sách L ịch sử mượn cuả người dùng đích sử dụng của lớp Thuộc Tên thuộc Phạm vi Kiểu dữ liệu Mục đích tính tính DsPhieuMuon Private List<PhieuMuonID> Danh sách phiếu mượn(bao gồm chưa mượn và đã mượn dựa trên tình trạng phiếu) 26 QR Private List<PhieuMuonID,String> Link tới ảnh QR của phiếu mượn tương ứng UserID Private Int Mã người dùng Phương Tên phương Phạm Danh sách Kiểu dữ liệu trả về Mục đích thức thức vi tham số Phương thức khởi tạo và getter, setter tương ứng với thuộc tính 2.