TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI VIỆN CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG
Phân tích và thiết kế hệ thống
Nhóm sinh viên thực hiện: Nhóm 11 – Nighty H
4380
Nguyễn Văn Thương 2019Nguyễn Quốc Phương 20194355Nguyễn Minh Dương 20194259Lương Văn Tuấn 20194400
20190149 Ly Ponleu
- 2021
Hà Nội
MỤC LỤC
Trang 2VI Biểu đồ máy trạng thái 6
VII Biểu đồ đối tượng 7
VIII Biểu đồ tuần t m c nghi p vự ứ ệ ụ 8
3 Biểu đồ triển khai 12
X Hợp đồng thông điệp và đặc tả phương thức 12
1 Hợp đồng thông điệp và đặc tả phương thức yêu cầu đăng ký thẻ đọc 12
2 Hợp đồng thông điệp và đặc tả phương thức xem thông tin sách 13
3 Hợp đồng thông điệp và đặc tả phương thức mượn sách 14
4 Hợp đồng thông điệp và đặc tả phương thức tr sách ả 14
5 Hợp đồng thông điệp và đặc tả phương thức qu n lý sách ả 15
XI Thiết kế lưu trữ cố định 16
XII Thiết kế giao diện 20
Trang 3TỔNG QUAN VỀ ĐỀ TÀI
Đề tài dựa trên Thư viện quốc gia, cho phép đọc giả mư n sách online và ợđăng ký thẻ đọc thư viện theo phí thuê theo tháng hoặc theo năm Khi truy cập web khách ghé thăm, độc giả đã có thẻ thành viên có thể truy cập các thông tin về các đầu sách theo nhu cầu Hệ th ng còn quố ản lý và lưu trữ các thông tin cơ bản của độc giả thành viên (tên, tu i, ngh nghi p, mã s ổ ề ệ ố căn cước công dân ), các thông tin cơ bản của các đầu sách (tên, nhà xu t b n, tác gi , th ấ ả ả ể loại, s ố lượng ) Người thủ thư có quyền truy cập và thay đổi, thêm, bớt, xóa các thông tin trên Mục tiêu chung của h ệ thống là quản lý sách, độc giả, cho phép độc giả có thể tiếp c n sách ậtrên n n t ng web hình th c online Vi c tri n khai thành công hề ả ứ ệ ể ệ thống s giẽ ảm bớt sức người và tăng sự chính xác trong các công tác quản lý thư viện
Trang 53 Quy trình mượn sách online
Trang 64 Quy trình quản lý sách
5 Quy trình trả sách
Trang 7II MÔ TẢ Ổ T NG QUAN 1 Các tác nhân
Phần mềm có 3 tác nhân là Khách, Người dùng, và Qu n tr viên Khách là vai trò cả ị ủa ngườ ửi s dụng khi chưa đăng nhập vào hệ thống Sau khi đăng nhập hệ thống thành công, người sử dụng được chia thành 2 tác nhân là Người dùng và Qu n tr viên ả ị
Trang 82 Biểu đồ use case t ng quan ổ
Mô tả ngắn g n: Ca s d ng mô tọ ử ụ ả cách đăng ký thẻ thư viện tr c tuy n ự ếKích hoạt: Người dùng muốn đăng ký thẻ thư viện để mượn sách Loại: Ngo i ạ
Các m i liên h : ố ệ Tương tác: Người dùng Bao gồm:
Mở rộng: Khái quát hóa: Luồng sự kiện thông thường:
1 Người dùng yêu cầu đăng ký thẻ đọc 2 Hệ thống hi n thể ị form đăng ký3 Người dùng nhập thông tin và đăng kýCác lu ng con: ồ
Trang 9Kích hoạt: Người dùng mu n xem chi ti t sách ố ế Loại: Ngo i ạ
Các m i liên h : ố ệ Tương tác: Người dùng Bao gồm:
Mở rộng: Khái quát hóa: Luồng sự kiện thông thường:
1 Người dùng chọn 1 quyển sách muốn xem thông tin 2 Hệ thống hi n th thông tin chi ti t v sách ể ị ế ềCác luồng con:
S-1: L c sách ọ
1 Người dùng tìm kiếm sách hoặc lọc theo danh m c ụ2 Hệ thống hi n thể ị danh sách sách tương ứ ngCác lu ng ngo i lồ ạ ệ/tương đương:
1.3 Đặc t ả usecase Mượn sách online
Tên ca s dử ụng: Mượn sách online ID: 3 Mức quan tr ng: Cao ọTác nhân chính: Người dùng Loại ca s d ng: Chi ti t, thi t y u ử ụ ế ế ếCác bên liên quan và mối quan tâm: Người dùng muốn mượn sách Hệ thống hi n thể ị danh sách các đầu sách theo danh m c/tìm ki m ụ ế
Mô tả ngắn g n: Ca s d ng mô tọ ử ụ ả cách mượn sách tr c tuy n ự ếKích hoạt: Người dùng xem chi ti t sách ế
Loại: Ngo i ạCác m i liên h : ố ệ Tương tác: Người dùng Bao gồm:
Mở rộng: Khái quát hóa: Luồng sự kiện thông thường:
a Đặc tả usecase tr sách ả
Tên ca s d ng: Tr sách ử ụ ả ID: 4 Mức quan tr ng: Cao ọTác nhân chính: Người dùng Loại ca s d ng: Chi ti t, thi t y u ử ụ ế ế ếCác bên liên quan và mối quan tâm: Người dùng mu n trố ả sách đã mượn
Mô tả ngắn g n: Ca s d ng mô tọ ử ụ ả cách đăng ký trả sách Kích hoạt: Người dùng xem l ch sị ử mượn sách Loại: Ngo i ạ
Các m i liên h : ố ệ Tương tác: Người dùng Bao gồm:
Mở rộng:
Trang 101 Người dùng chọn trả sách trong l ch sử mượn sách ị2 Hệ thống hi n thể ị form điền thông tin (địa chỉ, số điện tho ại)3 Người dùng nhập thông tin và đăng ký trả sách Các lu ng con ồ
Các lu ng ngo i lồ ạ ệ/tương đương:
2 Quản tr viên ị
2.1 Đặc tả use case UC005 “Quản lý sách”
Tên ca s d ng: Qu n lý sách ử ụ ả ID: 5 Mức quan tr ng: Cao ọTác nhân chính: Qu n lý ả Loại ca s d ng: Chi ti t, thi t y u ử ụ ế ế ếCác bên liên quan và m i quan tâm: Qu n lý sách b ng các hoố ả ằ ạt động thêm/s a/xóa ửMô tả ngắn g n: Ca s d ng mô t cách qu n lý sách ọ ử ụ ả ả
Kích ho t: Quạ ản lý xem danh sách các đầu sách Loại: Ngo i ạ
Các m i liên h : ố ệ Tương tác: Quản lý Bao gồm: Mở rộng: Khái quát hóa: Luồng sự kiện thông thường:
1 Quản lý xem danh sách sách
2 Hệ thống hi n th danh sách sách d a trên danh m c/tìm ki m ể ị ự ụ ế3 Quản lý chọn thêm sách
4 Hệ thống hi n thể ị form điền thông tin sách 5 Quản lý nhập thông tin và xác nh n thêm sách ậCác lu ng con: ồ
S-3: Xem/sửa/xóa sách
1 Quản lý ch n xem thông tin 1 sách ọ2 Hệ thống hi n th trang chi ti t sách ể ị ế3 Quản lý ch n s a/xóa sách và xác nh n ọ ử ậ4 Hệ thống cập nhật thông tin Các lu ng ngo i lồ ạ ệ/tương đương:
Trang 11IV Ước lượng chi phí và th i gian th c hiờựện d ựán
Đối với các tác nhân, H ệ thống quản lý thư viện có:
API để tương tác: tác nhân đơn giản
Tương tác với cơ sở dữ liệu người dùng và sách: tác nhân trung bình
Quản tr ịviên và người dùng: tác nhân ph c tứ ạp
1 Đánh giá trọng số tác nhân
Bảng đánh giá trọng số tác nhân chưa hiệu chỉnh
Loại tác nhân Mô tả Điểm Số lượng Tổng điểm
Đơn giản Hệ thống ngoại với API được định nghĩa rõ ràng
Trung bình Hệ thống ngoại sử dụng một giao diện dựa trên giao thức, ví dụ, HTTP, TCP/IP, hoặc một cơ sở dữ liệu
Tổng trọng số tác nhân chưa hiệu chỉnh (UAW) 9
Đối với ứng dụng hỗ trợ mượn sách thư viện có một ca sử đơn giản (đăng ký thẻ đọc), bốn ca sử dụng trung bình (mượn sách online trả sách, xem chi tiết sách và quản lý sách, ), không có ca sử dụng phức tạp Dựa trên kết quả phân loại, tổng trọng số cá sử dụng chưa hiệu chỉnh đã được tính bằng 45
2 Đánh giá trọng số ca sử dụng
Bảng đánh giá trọng số ca sử dụng chưa hiệu chỉnh
Loại CSD Mô tả Điểm Số lượng Tổng điểm
Trung bình 4-7 giao dịch 10 4 40 Phức tạp >7 giao dịch 15 0 0
Tổng trọng số ca sử dụng chưa hiệu chỉnh (UUCW) 45 Số lượng đơn vị ca sử dụng chưa hiệu chỉnh: UUCP = UAW + UUCW = 9 + 45 = 54
Trang 12T9 Dễ bảo trì và cập nhật 1 3 3 T10 Xử lý tính toán song song/đồng thời 1 0 0
Trang 13Các hệ số môi trường
Mã số Mô tả Trọng số Giá trị Giá trị thực Ghi chú
E1 Có kinh nghiệm với quy trình phát triển hệ thống
trình
Tổng giá trị hệ số môi trường (EFactor) 19 Hệ số môi trường EF = 1.4 +(-0.03 * Efactor) 0.83 Số lượng đơn vị ca sử dụng sau hiệu chỉnh:
UCP = UUCP * TCF * EF
38.097 Hệ s gi nhân l c cho mố ờ ự ột đơn vị ca s dử ụng 20 Chi phí tính theo gi nhân l c ờ ự 762
Trang 18VI Biểu đồ máy trạng thái
Trang 19VII Biểu đồ đối tượng
Trang 20VIII Biểu đồ tuần tự mức nghiệp v ụ
1 Đăng ký thẻ đọc
Trang 213 Mượn sách
Trang 225 Quản lý sách
Trang 23IX Thiết kế kiến trúc h ệ thống
Nhóm đã hoàn thành thiết kế kiến trúc h th ng v i 3 biệ ố ớ ểu đồ: biểu đồ gói, biểu đồ thành phần và biểu đồ triển khai
1 Biểu đồ gói
2 Biểu đồ thành ph n ầ
Trang 243 Biểu đồ triển khai
X Hợp đồng thông điệp và đặc tả phương thức
1 Hợp đồng thông điệp và đặc tả phương thức yêu cầu đăng ký thẻ đọc
a Hợp đồng phương thứ Đăng ký thẻc đọc
Tên phương thức: Yêu cầu đăng ký thẻ đọc Tên l p: ớ Người dùng Mã số: 1 Đối tượng khách: Tác nhân người dùng
Ca s dử ụng liên quan: Đăng ký thẻ đọc
Mô t các trách nhi m: ả ệ Người dùng yêu cầu được đăng ký thẻ đọc để đọc sách thư viện Các tham số nhận được: Không có
Kiểu dữ liệu tr v : 1 ả ề đối tượng thẻ đọc
Tiền điều kiện: Người dùng đã phải có tài khoản trong hệ thống thư viện Hậu điều kiện: Không có
Trang 25Kích ho t/ s ạ ự kiện: Người dùng yêu cầu đăng ký thẻ đọc
Các tham số nhận được: Kiểu d ữ liệu: Ghi chú: Thông điệp đã gửi và tham số đã truyền Tên
lớp, tên phương thức Kiểu d ữ liệu Ghi chú: NguoiDung.dangKytheDoc() Đăng ký thẻ đọc NguoiDung.thanhToan() Thanh toán ti n cho ề
thẻ
Kiểu tham s ố trả ề v Ghi chú
Mathe/Mã th ẻ Trả về mã số th ẻđọc được cấp
2 Hợp đồng thông điệp và đặc tả phương thức xem thông tin sách
a Hợp đồng phương thức xem thông tin sách
Tên phương thức: Xem thông tin sách Tên l p: ớ Người dùng Mã số: 2 Đối tượng khách: Tác nhân người dùng
Ca s d ng liên quan: Xem chi tiử ụ ết sách
Mô t các trách nhi m: ả ệ Người dùng yêu cầu xem chi ti t thông tin sách hế ọ muốn xem Các tham số nhận được: Không có
Kiểu dữ liệu tr vả ề: Một đối tượng gồm các trường dữ liệu c a cu n sách ủ ốTiền điều kiện: Không có
Hậu điều kiện: Không có
b Đặc t ả phương thức xem thông tin sách
Tên phương thức: Xem thông tin sách Tên lớp: Người dùng ID: 2 Mã hợp đồng: 2 Lập trình vi n: Nguy n ề ễ
Quốc Phương
Thời hạn: 21-08-2022 Ngôn ngữ lập trình:
☐ Javascript C/ C++ Java ☐ ☐ ☐ C# Kích ho t/ s ạ ự kiện: Người dùng yêu c u xem thông tin sách ầ
Các tham số nhận được: Kiểu d ữ liệu: Ghi chú: Thông điệp đã gửi và tham số đã truyền
Tên lớp, tên phương thức
Kiểu d ữ liệu Ghi chú: NguoiDung.xemThongtinSach() Xem thông tin sách Sach.hienThiThongTin() Hiển th thông tin ị
Trang 26Kiểu tham s ố trả ề v Ghi chú
Chuỗi Trả về m t chu i các thông tin cu n sách ộ ỗ ố
3 Hợp đồng thông điệp và đặc tả phương thức mượn sách
a Hợp đồng phương thức mượn sách
Tên phương thức: Mượn sách Tên l p: Muon_TraSach ớ Mã số: 3 Đối tượng khách: Tác nhân người dùng
Ca s d ng liên quan: ử ụ Mượn sách online
Mô t các trách nhi m: ả ệ Người dùng yêu cầu mượn cu n sách hố ọ muốn xem Các tham số nhận được: Không có
Kiểu dữ liệu tr vả ề: Thongbao
Tiền điều kiện: Người dùng phải có trong hệ thống thư viện và phải có thẻ đọc Hậu điều kiện: Người dùng phải điền đầy đủ thông tin form mượn sách
☐ Javascript C/ C++ Java ☐ ☐ ☐ C# Kích ho t/ s ạ ự kiện: Người dùng yêu cầu mượn sách
Các tham số nhận được: Kiểu d ữ liệu: Ghi chú: Thông điệp đã gửi và tham số đã truyền
Tên lớp, tên phương thức Kiểu d ữ liệu Ghi chú: NguoiDung.xemThongtinSach() Xem thông tin sách Sach.hienThiThongTin() Hiển th thông tin ị
Kiểu tham s ố trả ề v Ghi chú
Thongbao/ Thông báo Trả về thông báo mượn thành công hay th t b i ấ ạ
4 Hợp đồng thông điệp và đặc tả phương thức trả sách
Trang 27Tiền điều kiện: Người dùng phải có trong h thệ ống thư viện và phải có thẻ đọc Hậu điều kiện: Người dùng phải điền đầy đủ thông tin form trả sách
☐ Javascript C/ C++ Java ☐ ☐ ☐ C# Kích ho t/ s ạ ự kiện: Người dùng yêu c u tr sách ầ ả
Các tham số nhận được: Kiểu d ữ liệu: Ghi chú: Thông điệp đã gửi và tham số đã truyền
Tên lớp, tên phương thức Kiểu d ữ liệu Ghi chú: NguoiDung.xemLichSu() Xem thông tin sách
Kiểu tham s ố trả ề v Ghi chú
Thongbao/ Thông báo Trả về thông báo trả thành công hay th t b i ấ ạ
5 Hợp đồng thông điệp và đặc tả phương thức quản lý sách
a Hợp đồng phương thức quản lý sách
Tên phương thức: quản lý sách Tên l p: QuanLy ớ Mã số: 5 Đối tượng khách: Tác nhân quản lý
Ca s d ng liên quan: ử ụ Quản lý sách
Mô t các trách nhi m: ả ệ Quản lý yêu cầu thêm/sửa/xóa sách Các tham số nhận được: Không có
Kiểu dữ liệu tr vả ề: Thongbao
Tiền điều kiện: Người dùng có tài khoản là quản lý trong thư viện Hậu điều kiện: Không có
☐ Javascript C/ C++ Java ☐ ☐ ☐ C# Kích ho t/ s ạ ự kiện:Quản lý yêu c u thêm/ s a/ xóa sách ầ ử
Các tham số nhận được: Kiểu d ữ liệu: Ghi chú:
Trang 28Thông điệp đã gửi và tham số đã truyền Tên lớp, tên phương thức
Kiểu d ữ liệu Ghi chú: Nguoidung.xemThongTinSach() Xem thông tin sách
Kiểu tham s ố trả ề v Ghi chú
Thongbao/ Thông báo Trả về thông báo thêm/s a/xóa thành công hay ửthất b i ạ
XI Thiết kế lưu trữ ố cđịnh
Trang 29Đặc tả bảng
Bảng DanhMuc
STT Tên c t ộ Kiểu d li u ữ ệ Ràng bu c ộ Ghi chú
1 Id INT AUTO_INCREMENT Mã danh m c ụ2 tenDanhMuc TEXT NOT NULL Tên danh m c ụKhóa chính id
Bảng Sach
STT Tên c t ộ Kiểu d ữ
liệu Ràng bu c ộ Ghi chú
1 Id INT AUTO_INCREMENT Mã sách 2 danhMuc_id INT NOT NULL Mã danh m c ụ3 tenSach TEXT NOT NULL Tên sách 4 anhBia TEXT NOT NULL Link nh bìa ả5 tacGia TEXT NOT NULL Tên tác gi ả
7 soLuong INT NOT NULL Số lượng có trong thư viện 8 namXuatBan INT NOT NULL Năm xuất bản Khóa chính id
Khóa ngo i ạ Sach.danhMuc_id = danhMuc.id
Bảng SachCopy
STT Tên c t ộ Kiểu d li u ữ ệ Ràng bu c ộ Ghi chú
Trang 302 sachId INT NOT NULL Mã Sách
7 soDienThoai TEXT NOT NULL Số điện tho i ạ
Khóa chính id
Bảng Muon_TraSach
STT Tên c t ộ Kiểu d li u ữ ệ Ràng bu c ộ Ghi chú
1 Id INT AUTO_INCREMENT Mã Mượn trả sách 2 sachCopy_id INT NOT NULL Mã Sách copy 3 theDoc_id INT NOT NULL Mã th ẻ đọc 4 trangThai INT NOT NULL Trạng thái Sách
copy 5 ngay DATE_TIME NOT NULL Sách m i ớ6 loaiHinh INT NOT NULL Ngày xu t b n ấ ảKhóa chính id
Khóa ngoài Muon_TraSach.sachCopy_id = SachCopy.id Muon_TraSach.theDoc_id = TheDoc.id
Mẫu DAO
Trang 32XII Thiết kế giao diện
1 Trang ch ủ
2 Đăng ký thẻ đọc
Kịch bản sử dụng: Khách đăng ký thẻ mượn sách online
1 Khách hàng yêu cầu đăng ký thẻ đọc 2 Hệ thống hiển th ị form đăng ký3 Người dùng nhập thông tin và đăng ký
Trang 333 Xem chi tiết sách
Kịch bản sử d ng: Xem chi tiụ ết sách
1 Khách hàng chọn 1 quy n sách muể ốn xem thông tin(có thể tìm kiếm sách theo danh m c, theo tên) ụ
2 Hệ thống hiển th thông tin chi tiị ết sách
- Tìm kiếm sách theo danh mục
Trang 354 Mượn sách
5 Quản lý sách
Kịch bản sử dụng Admin quản lý sách bằng cách chọn chức năng quản lý sự kiện
1 Admin chọn chức năng quản lý sách
2 Hệ thống hiển th giao diị ện quản lý sách v i danh sách sách và các nút b m thêm, ớ ấsửa, xóa
3 Admin chọn chức năng quản lý cụ thể 4 Nếu chọn xem sách
5 Hệ thống hiển th giao diị ện chi tiết sách 6 Nếu xóa sách
7 Hệ thống xóa sách khỏi thông tin lưu trữ và điều hướng về trang danh sách sách 8 Nếu chọn s a sách ử
ệ thống hiển th giao diị ện thêm sách, với các field đã được điề ẵn
Trang 3610 Admin s a thông tin và bử ấm Lưu thông tin
11 Hệ thống cập nhật thông tin vào thông tin lưu trữ và điều hướng về trang danh sách 12 Nếu chọn thêm sách
13 Hệ thống hiển th giao diị ện thêm với các trường thông tin 14 Admin điền thông tin và bấm Thêm mới
15 Hệ thống thêm mới sách vào thông tin lưu trữ và điều hướng vào trang danh sách
- Trang home admin
- Xem toàn b sách ộ
Trang 37- Xem thông tin chi tiết sách
Trang 38- Chỉnh sửa thông tin chi tiết sách
Trang 39- Thêm đầu sách mới, copy sách b ng excel ằ
6 Trả sách (xem l ch sị ử mượn sách rồi điền form trả sách)
Kịch bản sử dụng: Khác hàng đăng ký trả sách
1 Người dùng chọn sách trong l ch sị ử mượn
2 Hệ thống hiển th ị form điền thông tin (địa ch , sỉ ố điện thoại)
3 Người dừng nhập thông tin và đăng ký trả sách
ị ử mượ