Tìm kiếm người có nhóm máu mình cần một cách dễ dàng. Giao diện đơn giản, dễ sử dụng.
2.4. Phân tích thiết kế hệ thống 2.4.1. Sơ đồ ca sử dụng 2.4.1. Sơ đồ ca sử dụng
2.4.1.1. Ca sử dụng tổng quát
2.4.1.2. Ca sử dụng tổng quát của thành viên
2.4.1.3. Ca sử dụng tổng quát của quản trị viên
Hình 2.3: Ca sử dụng tổng quát của quản trị viên câu lạc bộ
2.4.1.4. Ca sử dụng đăng nhập
Hình 2.4: Ca sử dụng đăng nhập
2.4.1.5. Ca sử dụng đăng ký
Hình 2.5: Ca sử dụng đăng ký
2.4.1.6. Ca sử dụng quản lý thông tin cá nhân
Hình 2.6: Ca sử dụng quản lý thông tin cá nhân
2.4.1.7. Ca sử dụng xem bài đăng của các câu lạc bộ
Hình 2.7: Ca sử dụng xem bài đăng câu lạc bộ
2.4.1.8. Ca sử dụng xem thông tin câu lạc bộ
Hình 2.8: Ca sử dụng xem thông tin câu lạc bộ
2.4.1.9. Ca sử dụng tìm kiếm
Hình 2.9: Ca sử dụng tìm kiếm
2.4.1.10. Ca sử dụng tạo câu lạc bộ
2.4.1.11. Ca sử dụng xem lịch sử hiến máu
Hình 2.11: Ca sử dụng xem lịch sử hiến máu
2.4.1.12. Ca sử dụng của câu lạc bộ đã tham gia
Hình 2.12: Ca sử dụng câu lạc bộ đã tham gia
2.4.1.13. Ca sử dụng quản lý câu lạc bộ
2.4.2. Đặc tả ca sử dụng chung cho tất cả loại tài khoản 2.4.2.1. Ca sử dụng đăng ký 2.4.2.1. Ca sử dụng đăng ký
- Mục đích: tạo một tài khoản trên hệ thống để đăng nhập sử dụng.
- Mô tả: sau khi điền thông tin đăng ký, hệ thống bắt đầu kiểm tra thông tin nhập vào sau đó thực hiện và trả về kết quả đăng ký.
- Luồng sự kiện chính:
Hành động tác nhân Phản ứng hệ thống Dữ liệu liên quan Chọn chức năng đăng
ký
Hiển thị giao diện để nhập thông tin về tài khoản.
Tài khoản
Nhập thông tin tài khoản sau đó nhấn nút đăng ký
Kiểm tra thông tin tài khoản đã nhập sau đó tạo tài khoản hoặc hủy yêu cầu kèm theo thông báo
Tài khoản
Bảng 2.1: Bảng mô tả luồng sự kiện chính của ca sử dụng đăng ký
- Luồng sự kiện phụ: không
- Ngoại lệ: nếu thông tin đăng ký không chính xác thì yêu cầu nhập lại hoặc dừng ca sử dụng.
2.4.2.2. Ca sử dụng đăng nhập
- Mục đích: truy cập vào hệ thống theo đúng loại phân quyền.
- Mô tả: sau khi điền thông tin đăng nhập, hệ thống bắt đầu xác thực người dùng để chấp nhận hoặc từ chối truy cập.
Hành động tác nhân Phản ứng hệ thống Dữ liệu liên quan Chọn chức năng đăng
nhập
Hiển thị giao diện để nhập thông tin về tài khoản.
Tài khoản
Nhập thông tin tài khoản sau đó nhấn nút đăng nhập
Kiểm tra thông tin tài khoản đã nhập với thông tin trong cơ sở dữ liệu
Tài khoản
Bảng 2.2: Bảng mô tả luồng sự kiện chính của ca sử dụng đăng nhập
- Luồng sự kiện phụ: không
- Ngoại lệ: nếu thông tin đăng nhập không chính xác thì yêu cầu nhập lại
2.4.2.3. Ca sử dụng quản lý thông tin cá nhân
- Mục đích: cập nhật thông tin cá nhân trong tài khoản.
- Mô tả: sau khi đăng nhập vào hệ thống, người dùng cập nhật thông tin cá nhân vào biểu mẫu.
- Luồng sự kiện chính:
Hành động tác nhân Phản ứng hệ thống Dữ liệu liên quan Chọn chức năng tài
khoản
Hiển thị giao diện để cập nhật thông tin.
Tài khoản
Nhập thông tin tài khoản sau đó nhấn nút lưu
Cập nhật thông tin cá nhân vào tài khoản
Tài khoản
Bảng 2.3: Bảng mô tả luồng sự kiện chính của ca sử dụng cập nhật thông tin cá nhân
- Luồng sự kiện phụ: không
- Ngoại lệ: nếu thông tin nhập không chính xác thì yêu cầu nhập lại hoặc dừng ca sử dụng.
2.4.2.4. Ca sử dụng xem bài đăng của các câu lạc bộ
- Mục đích: xem thông tin chi tiết các bài đăng hiến máu của các câu lạc bộ.
- Mô tả: sau khi đăng nhập vào hệ thống, tài khoản vào trang chủ để xem thông tin các bài đăng
- Luồng sự kiện chính:
Hành động tác nhân Phản ứng hệ thống Dữ liệu liên quan Chọn chức năng trang
chủ
Hiển thị giao diện để mô tả các bài đăng
Bài đăng
Bảng 2.4: Bảng mô tả luồng sự kiện chính của ca sử dụng xem bài đăng của các câu lạc bộ.
- Luồng sự kiện phụ: không. - Ngoại lệ: không.
2.4.2.5. Ca sử dụng tìm kiếm
- Mục đích: tìm kiếm dữ liệu về nhóm máu và câu lạc bộ có trong cơ sở dữ liệu của hệ thống.
- Mô tả: sau khi điền biểu mẫu tìm kiếm và nhấn nút tìm kiếm, hệ thống sẽ lọc theo từng yêu cầu tìm kiếm về nhóm máu, câu lạc bộ rồi trả về kết quả cho người dùng.
- Luồng sự kiện chính:
Hành động tác nhân Phản ứng hệ thống Dữ liệu liên quan Nhập thông tin biểu
mẫu sau đó nhấn nút tìm kiếm
Tìm kiếm từ khóa trong cơ sở dữ liệu
Tài khoản, câu lạc bộ
Bảng 2.5: Bảng mô tả luồng sự kiện chính của ca sử dụng tìm kiếm
- Luồng sự kiện phụ: không.
- Ngoại lệ: nếu từ khóa không có trong cơ sở dữ liệu của hệ thống thì trả về kết quả là không tìm thấy.
2.4.2.6. Ca sử dụng xem lịch sử hiến máu
- Mục đích: xem chi tiết thông tin lịch sử hiến máu của bản thân.
- Mô tả: sau khi đăng nhập, thành viên có thể xem thông tin chi tiết lịch sử hiến máu của bản thân.
- Luồng sự kiện chính:
Hành động tác nhân Phản ứng hệ thống Dữ liệu liên quan Chọn chức năng xem
lịch sử hiến máu
Hiển thị giao diện mô tả số liệu chi tiết lịch sử hiến máu
Lịch sử
Bảng 2.6: Bảng mô tả luồng sự kiện chính của ca sử dụng xem lịch sử hiến máu
- Luồng sự kiện phụ: không. - Ngoại lệ: không.
2.4.2.7. Ca sử dụng câu lạc bộ tham gia
- Mục đích: thành viên có thể sử dụng chức năng trong các câu lạc bộ mình đã tham gia.
- Mô tả: sau khi đăng nhập, người dùng sử dụng giao diện tạo câu lạc bộ tham gia để vào câu lạc bộ mình đã tham gia vào, từ đó có thể xem danh sách thành viên, giới thiệu của câu lạc bộ, cũng như đăng ký hiến máu.
Hành động tác nhân Phản ứng hệ thống Dữ liệu liên quan Chọn chức năng câu
lạc bộ đã tham gia
Hiển thị thông tin danh sách các câu lạc bộ đã tham gia
Câu lạc bộ
Vào câu lạc bộ chọn chức năng xem thông tin danh sách thành viên
Hệ thống trả về mô tả chi tiết danh sách thành viên của câu lạc bộ
Tài khoản, câu lạc bộ
Vào câu lạc bộ chọn chức năng xem chi tiết câu lạc bộ
Hệ thống trả về mô tả chi tiết thông tin của câu lạc bộ Câu lạc bộ Vào câu lạc bộ chọn chức năng đăng ký hiến máu Hệ thống sẽ kiểm tra nếu bạn đủ điều kiện hiến máu sẽ cho bạn đăng ký hiến máu
Bài đăng, câu lạc bộ, tài khoản
Bảng 2.7: Bảng mô tả luồng sự kiện chính của ca sử dụng câu lạc bộ đã tham gia
- Luồng sự kiện phụ: không.
- Ngoại lệ: Đối với chức năng đăng ký hiến máu nếu bạn chưa đủ điều kiện tham gia hiến máu thì hiển thị thông báo từ chối đăng ký.
2.4.3. Đặc tả ca sử dụng riêng cho thành viên 2.4.3.1. Ca sử dụng tạo câu lạc bộ 2.4.3.1. Ca sử dụng tạo câu lạc bộ
- Mục đích: thành viên có thể tạo một câu lạc bộ theo ý mình và trở thành quản trị viên của câu lạc bộ đó.
- Mô tả: sau khi đăng nhập, thành viên sử dụng giao diện tạo câu lạc bộ điền thông tin và nhấn nút tạo câu lạc bộ, hệ thống sẽ kiểm tra dữ liệu tên câu
lạc bộ, nếu không có sẽ trả lại thông báo tạo câu lạc bộ thành công và chuyển quyền sử dụng cho thành viên thành quản trị viên.
- Luồng sự kiện chính:
Hành động tác nhân Phản ứng hệ thống Dữ liệu liên quan Chọn chức năng tạo
câu lạc bộ
Hiển thị giao diện để nhập thông tin về tạo câu lạc bộ
Tài khoản, câu lạc bộ
Nhập thông tin sau đó nhấn nút tạo câu lạc bộ
Hệ thống kiểm tra và trả về kết quả.
Tài khoản, câu lạc bộ
Bảng 2.8: Bảng mô tả luồng sự kiện chính của ca sử dụng tạo câu lạc bộ
- Luồng sự kiện phụ: không
- Ngoại lệ: nếu thông tin tạo câu lạc bộ không chính xác hoặc tên câu lạc bộ bị trùng thì yêu cầu nhập lại hoặc dừng ca sử dụng.
2.4.4. Đặc tả ca sử dụng riêng cho quản trị viên
2.4.4.1. Ca sử dụng quản lý câu lạc bộ - chỉnh sửa thông tin
- Mục đích: quản trị viên có thể chỉnh sửa cập nhập thông tin của câu lạc bộ.
- Mô tả: sau khi đăng nhập, quản trị viên có thể chỉnh sửa cập nhập các thông tin của câu lạc bộ như: mật khẩu, giới thiệu câu lạc bộ.
- Luồng sự kiện chính:
Hành động tác nhân Phản ứng hệ thống Dữ liệu liên quan Chọn chức năng chỉnh
sửa thông tin
Hiển thị giao diện để cập nhập thông tin câu lạc bộ
Câu lạc bộ
sửa sau đó nhấn nút hoàn thành.
câu lạc bộ vào cơ sở dữ liệu.
Bảng 2.9: Bảng mô tả luồng sự kiện chính của ca sử dụng quản lý câu lạc bộ - chỉnh sửa thông tin
- Luồng sự kiện phụ: không.
- Ngoại lệ: Nếu nhập thông tin không chính xác thì yêu cầu nhập lại hoặc dừng ca sử dụng.
2.4.4.2. Ca sử dụng quản lý câu lạc bộ - đăng bài hiến máu
- Mục đích: quản trị viên có thể tạo các bài đăng hiến máu yêu cầu thành viên đăng ký hiến máu.
- Mô tả: sau khi đăng nhập, quản trị viên có thể đăng thông tin bài đăng hiến máu để các thành viên có xem bài đăng và đăng ký hiến máu.
- Luồng sự kiện chính:
Hành động tác nhân Phản ứng hệ thống Dữ liệu liên quan Chọn chức năng đăng
bài hiến máu
Hiển thị giao diện để nhập thông tin
Bài đăng
Nhập đầy đủ thông tin sau đó nhấn nút tạo bài đăng.
Hệ thống cập nhập thông tin vào cơ sở dữ liệu
Bài đăng
Bảng 2.10: Bảng mô tả luồng sự kiện chính của ca sử dụng quản lý câu lạc bộ - đăng bài hiến máu
- Luồng sự kiện phụ: không.
- Ngoại lệ: Nếu nhập thông tin không chính xác thì yêu cầu nhập lại hoặc dừng ca sử dụng.
2.4.4.3. Ca sử dụng quản lý câu lạc bộ - đóng bài đăng
- Mục đích: quản trị viên có thể đóng bài đăng khi thành viên đã hoàn thành đăng ký hiến máu tại các bệnh viện và cập nhập lịch sử cho thành viên.
- Mô tả: sau khi đăng nhập, quản trị viên có thể đóng bài đăng khi khi sau khi xác nhận tất cả thành viên đã hoàn thành đăng ký hiến máu.
- Luồng sự kiện chính:
Hành động tác nhân Phản ứng hệ thống Dữ liệu liên quan Chọn chức năng đóng
bài đăng.
Hiển thị giao diện đóng bài đăng
Bài đăng
Thực hiện hành động đóng bài đăng.
Hệ thống xử lý và cập nhập lại cơ sở dữ liệu
Bài đăng
Bảng 2.11: Bảng mô tả luồng sự kiện chính của ca sử dụng quản lý câu lạc bộ - đóng hiến máu
- Luồng sự kiện phụ: không.
Ngoại lệ: Nếu chưa có thành viên đăng ký hiến máu thì yêu cầu dừng ca sử dụng và hiển thị thông báo.
2.4.4.4. Ca sử dụng quản lý câu lạc bộ - xóa thành viên
- Mục đích: quản trị viên có thể xóa thành viên khỏi câu lạc bộ.
- Mô tả: sau khi đăng nhập, quản trị viên vào mục quản lý câu lạc bộ sau đó thực hiện chức năng xóa thành viên.
Luồng sự kiện chính:
Hành động tác nhân Phản ứng hệ thống Dữ liệu liên quan Chọn chức năng xóa
thành viên khỏi câu lạc bộ
Hiển thị giao diện mô tả danh sách thành viên
Câu lạc bộ, thành viên
xóa đồng thời cập nhập lại cơ sở dữ liệu
Bảng 2.12: Bảng mô tả luồng sự kiện chính của ca sử dụng quản lý câu lạc bộ - xóa thành viên
- Luồng sự kiện phụ: không. - Ngoại lệ: không.
2.4.4.5. Ca sử dụng quản lý câu lạc bộ - thống kê hiến máu
- Mục đích: xem lịch sử thống kê hiến máu của thành viên.
- Mô tả: sau khi đăng nhập, quản trị viên có thể sử dụng chức năng xem thống kê hiến máu của các thành viên trong câu lạc bộ của mình.
- Luồng sự kiện chính:
Hành động tác nhân Phản ứng hệ thống Dữ liệu liên quan Chọn chức năng xem
thống kê
Hiển thị giao diện mô tả số liệu thống kê hiếu máu của thành viên theo tháng
Lịch sử, Tài khoản
Bảng 2.13: Bảng mô tả luồng sự kiện chính của ca sử dụng
quản lý câu lạc bộ - thống kê hiến máu
- Luồng sự kiện phụ: không. - Ngoại lệ: không.
2.4.5. Thiết kế cơ sở dữ liệu 2.4.5.1. Sơ đồ cơ sở dữ liệu 2.4.5.1. Sơ đồ cơ sở dữ liệu
Hình 2.14: Sơ đồ cơ sở dữ liệu
2.4.5.2. Cấu trúc bảng và ràng buộc Bảng district
TÊN TRƢỜNG KIỂU DỮ LIỆU MÔ TẢ
idDistrict VARCHAR(50) Mã quận, khóa chính idCity VARCHAR(50) Mã thành phố, khóa ngoại
tham chiếu từ bảng city
nameDistrict VARCHAR(50) Tên quận
Bảng city
TÊN TRƢỜNG KIỂU DỮ LIỆU MÔ TẢ
idCity VARCHAR(50) Mã quận, khóa chính
nameCity VARCHAR(50) Tên thành phố
Bảng 2.15: Bảng dữ liệu city
Bảng club
TÊN TRƢỜNG KIỂU DỮ LIỆU MÔ TẢ
idClub VARCHAR(50) Mã quận, khóa chính idCity VARCHAR(50) Tên thành phố, khóa ngoại
tham chiều từ bảng city nameClub VARCHAR(50) Tên câu lạc bộ
passwordClub VARCHAR(20) Mật khẩu tham gia câu lạc bộ quantityMember INTEGER Số lượng thành viên câu lạc bộ
facebook VARCHAR(50) Địa chỉ facebook của câu lạc bộ
introduction VARCHAR(255) Giới thiệu về câu lạc bộ adminClub BOOLEAN Kiếm tra có phải là quản trị
viên của câu lạc bộ.
Bảng 2.16: Bảng dữ liệu club
Bảng discuss
TÊN TRƢỜNG KIỂU DỮ LIỆU MÔ TẢ
idDiscuss VARCHAR(50) Mã bài đăng thảo luận, khóa chính
idClub VARCHAR(50) Mã câu lạc bộ, khóa ngoại tham chiếu từ bảng club timePost TIMESTAMP Thời gian đăng bài thảo luận.
timeNeed VARCHAR(20) Thời gian yêu cầu cần máu gấp bao gồm: (Sáng nay, chiều nay,
tối nay, ngay bây giờ). nameHospital VARCHAR(50) Tên bệnh viện
typeBlood VARCHAR(5) Nhóm máu bao gồm
(A, B, O, AB) unitDonation VARCHAR(20) Tên đơn vị nhóm máu bao
gồm: (máu toàn phần và tiểu cầu máu)
quantityUnitDonation INTEGER Số lượng đơn vị máu mà bài đăng cần.
gender VARCHAR(5) Giới tính
quantityPeopleRegiste r
INTEGER Số lượng người đăng ký hiến máu
infomationOther VARCHAR(255) Thông tin khác: (Nếu có) confirmRegister BOOLEAN Xác nhận bài đăng đã đủ người
đăng ký và không cho đăng ký thêm nữa.
Bảng 2.17: Bảng dữ liệu discuss
Bảng comment
TÊN TRƢỜNG KIỂU DỮ LIỆU MÔ TẢ
idComment VARCHAR(50) Mã bình luận, khóa chính idDiscuss VARCHAR(50) Mã quận, khóa ngoại tham
chiếu từ bảng district idUser VARCHAR(50) Mã tài khoản, khóa ngoại tham
description VARCHAR(255) Mô tả thông tin bình luận
Bảng 2.18: Bảng dữ liệu comment
Bảng clubjoin
TÊN TRƢỜNG KIỂU DỮ LIỆU MÔ TẢ
idClub VARCHAR(50) Mã câu lạc bộ, khóa ngoại tham chiếu từ bảng câu lạc bộ. idUser VARCHAR(50) Mã tài khoản, khóa ngoại tham
chiếu từ bảng user
Bảng 2.19: Bảng dữ liệu clubjoin