- Tích hợp các mô-đun này vào một hệ ống tập trung, đáp ứng nhu cầu cụ ể của bệnh viện.th th - Đảm bảo bảo mật dữ ệu bệnh nhân và khả năng mở rộng cho các nâng cấp trong tương lai.li - H
Trang 1TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH
KHOA TOÁN - TIN HỌC
BÁO CÁO MÔN HỌC Phân tích và thiết kế hệ ống thông tin th
Đề tài Quản lý khám bệnh
Người thực hiện:
Trang 2Trường Đại học Khoa học tự nhiên Phân tích Thiết kế hệ ống thông tin th
Page of 2 28
Mục l c ụ
I Báo Cáo Định Nghĩa Yêu Cầu 4
1.1 Lý do đề xuất dự án (Yêu cầu doanh nghiệp) .4
1.2 Phạm vi của hệ thống 4
1.3 Chức năng của hệ thống 4
1.3.1 Yêu cầu người dùng: 4
1.3.2 Yêu cầu chức năng: 4
1.4 Yêu cầu phi chức năng 5
1.5 Một số ý phần Chức năng hệ thống 5
II Với các yêu cầu người dùng và yêu cầu chức năng đã được xác định, trình bày 6
2.1 Mô tả Use Case 6
2.1.1 Mô tả Use Case Đăng nhập 6
2.1.2 Mô tả Use Case Đăng xuất 7
2.1.3 Mô tả Use Case Đổi mật khẩu 8
2.1.4 Mô tả Use Case Đăng kí khám bệnh 9
2.1.5 Mô tả Use Case Tra cứu thông tin 10
2.1.6 Mô tả Use Case thêm thông tin bệnh nhân 11
2.1.7 Mô tả Use Case Sửa bệnh án 12
2.1.8 Mô tả Use Case Kê đơn thuốc 13
2.1.9 Mô tả Use Case Sắp xếp lịch hẹn 14
2.1.10 Mô tả Use Case Phân quyền 15
2.1.11 Mô tả Use Case Theo dõi tồn kho thuốc 16
2.2 Mô hình Use Case 17
2.2.1 Mô hình Use Case tổng quát 17
2.2.2 Mô hình Use Case cho bệnh nhân 18
2.2.3 Mô hình Use Case Quản lý lịch hẹn 19
Trang 3Trường Đại học Khoa học tự nhiên Phân tích Thiết kế hệ ống thông tin th
Page of 3 28
2.2.4 Mô hình Use Case Quản lý thông tin bệnh nhân 20
2.2.5 Mô hình Use Case Quản lý bệnh án 21
2.2.6 Mô hình Use Case Quản lý tài khoản người dùng 22
2.2.7 Mô hình Use Case Quản lý thuốc 23
III Mô hình sơ đồ ồng dữ lu liệu 24
3.1 Mô hình FDD 24
3.2 Mô hình DFD 25
3.2.1 Mô hình DFD level 0 25
3.2.2 Mô hình DFD level 1 26
3.2.2.1 DFD level 1 của tiến trình 1 Khám bệnh 26
3.2.2.2 DFD level 1 của tiến trình 2 Bán thuốc 27
3.2.3 Mô hình DFD level 2 28
Trang 4Trường Đại học Khoa học tự nhiên Phân tích Thiết kế hệ ống thông tin th
Page of 4 28
1.1 Lý do đề xuất dự án (Yêu cầu doanh nghiệp)
Hệ ống quản lý khám bệnh và điều trị bệnh (HMS) được đề xuất nhằm cải thiện hiệu quả quản lý các thkhía cạnh lâm sàng, tài chính và hành chính tại bệnh viện HMS giúp nâng cao chất lượng chăm sóc bệnh nhân, giảm thiểu sai sót trong quy trình, và đảm bảo tuân thủ các quy định y tế Hệ ống này tạo điều thkiện quản lý tập trung các cuộc hẹn, hồ sơ bệnh nhân, hóa đơn, và giao tiếp giữa các bên liên quan 1.2 Phạm vi của hệ thống
- Phát triển các mô-đun phần mềm cho quản lý bệnh nhân, lịch hẹn, hồ sơ y tế, quản lý thuốc, và báo cáo
- Tích hợp các mô-đun này vào một hệ ống tập trung, đáp ứng nhu cầu cụ ể của bệnh viện.th th
- Đảm bảo bảo mật dữ ệu bệnh nhân và khả năng mở rộng cho các nâng cấp trong tương lai.li
- Hỗ ợ di chuyển dữ ệu từ hệ ống hiện tại và cung cấp đào tạo người dùng.tr li th
o Quản lý tài khoản người dùng
o Theo dõi hiệu suất hệ thống
1.3.2 Yêu cầu chức năng:
o Theo dõi tồn kho
o Kiểm tra đơn thuốc
Trang 5Trường Đại học Khoa học tự nhiên Phân tích Thiết kế hệ ống thông tin th
Page of 5 28
o Xử lý bán thuốc
• Hệ ống báo cáo:th
o Cung cấp báo cáo chi tiết về bệnh nhân
o Hiệu suất làm việc và các chỉ số y tế
1.4 Yêu cầu phi chức năng
- Trí tuệ nhân tạo (AI)
o AI tạo sinh (Generative AI): Có thể sử dụng để phân tích dữ ệu bệnh nhân, dự đoán xu lihướng bệnh tật, và hỗ ợ bác sĩ trong việc chẩn đoán và điều trị.tr
o Máy học (Machine Learning): Giúp cải thiện độ chính xác của các dự đoán và phân tích
dữ ệu y tế.li
- Điện toán đám mây (Cloud Computing)
o Lưu trữ và xử lý dữ ệu: Giúp hệ ống có khả năng mở rộng linh hoạt, giảm chi phí cơ sở li th
hạ tầng và tăng cường bảo mật dữ liệu
o Dịch vụ SaaS (Software as a Service): Cung cấp các ứng dụng phần mềm qua internet, giúp dễ dàng cập nhật và bảo trì hệ thống
- Internet vạn vật (IoT)
o Thiết bị y tế thông minh: Kết nối các thiết bị y tế để theo dõi tình trạng bệnh nhân theo thời gian thực, giúp cải thiện chất lượng chăm sóc và phản ứng nhanh chóng với các tình huống khẩn cấp
Trang 6Trường Đại học Khoa học tự nhiên Phân tích Thiết kế hệ ống thông tin th
Page of 6 28
II Với các yêu cầu người dùng và yêu cầu chức năng đã được xác định, trình bày
2.1 Mô tả Use Case
2.1.1 Mô tả Use Case Đăng nhập
Use Case ID UC-0.1
Use Case Name Đăng nhập
Description Là người dùng, tôi muốn đăng nhập vào ứng dụng để sử dụng các dịch vụ từ ứng dụngActor(s) Bệnh nhân, Bác sĩ, Nhân viên y tế , Quản trị viên
Priority Phải có
Trigger Người dùng muốn đăng nhập vào ứng dụng
Pre-Condition(s) ➢ Người dùng đã có tài khoản trong hệ ống (sau khi đi khám bệnh 1 lần tại bệnh th
viện, bệnh viện sẽ tạo 1 tài khoản cho bệnh nhân trên ứng dụng để đăng nhập)
➢ Thiết bị của người dùng đã được kết nối internet khi thực hiện đăng nhập Post-Condition(s) Người dùng đăng nhập ứng dụng thành công
Basic Flow 1 Người dùng truy cập ứng dụng
2 Ứng dụng yêu cầu người dùng nhập tên và mật khẩu
3 Người dùng nhập đầy đủ thông tin tên và mật khẩu
4 Ngườ dùng nhấn nút “Đăng nhập”.i
5 Hệ ống kiểm tra thông tin tài khoản người dùng.th
6 Hệ ống xác thực thông tin đăng nhập thành công và cho phép người dùng truy cập vào thứng dụng
Alternative Flow Không có
Exception Flow 3a Sau khi xem qua thông tin người dùng nhập ra là mình chưa có tài khoản
4a Người dùng quyết định hủy bỏ đăng nhập
Use case dừng lại
5b Hệ ống kiểm tra được thông tin tài khoản người dùng không hợp lệ.th
6b Hệ ống thông báo thông tin đăng nhập không hợp lệth
Use case dừng lại
Business Rules BR-1: Người dùng đăng nhập sai thông tin đăng nhập ở lần 5 liên ếp sẽ bị khóa tài khoản ti
30min
Non-Functional
Requirement
NFR1.1-1: Time out cho màn hình đăng nhập dưới 60 giây
NFR1.1-2: Mật khẩu của người dùng phải được hash bằng MD5
Trang 7Trường Đại học Khoa học tự nhiên Phân tích Thiết kế hệ ống thông tin th
Page of 7 28
2.1.2 Mô tả Use Case Đăng xuất
Use Case ID UC-0.2
Use Case Name Đăng xuất
Description Là người dùng khi sử dụng xong, tôi muốn thoát ra khỏ ứng dụngi
Actor(s) Bệnh nhân, Bác sĩ, Nhân viên y tế, Quản trị viên
Priority Phải có
Trigger Người dùng sau khi sử dụng xong muốn thoát ra khỏi hệ thống
Pre-Condition(s) ➢ Người dùng có tài khoản và đang đăng nhập trong ứng dụng
➢ Thiết bị của người dùng đã được kết nối internet khi thực hiện đăng xuất Post-Condition(s) Người dùng đăng xuất ứng dụng thành công
Basic Flow 1 Người dùng truy cập ứng dụng
2 Ứng dụng hiện thị trang chính ủ người dùng chọn vào phần “Quản lý tài khoản”.ch
3 Người dùng nhấn vào nút “Đăng xuất”
4 Hệ ống hiển thị thông báo “Bạn có muốn đăng xuất khỏi hệ ống” và 2 nút chức năngth th : + “Không” & “Có”
5 Thông báo người dùng đã đăng xuất thành công
Alternative Flow 4b Người dùng chọn “Có” khi quyết định đăng xuất tài khoản khỏ ứng dụng.i
Use case tiếp tục bước 5 rồi kết thúc
Exception Flow 4a Người dùng chọn “Không” khi không muốn đăng xuất nữa
Use case sẽ ếp tụ ở các Use case khác.ti c
Business Rules Không có
Non-Functional
Requirement
Không có
Trang 8Trường Đại học Khoa học tự nhiên Phân tích Thiết kế hệ ống thông tin th
Page of 8 28
2.1.3 Mô tả Use Case Đổi mật khẩu
Use Case ID UC-0.3
Use Case Name Đổi mật khẩu
Description Là người dùng, tôi muốn đổi mật khẩu sao cho chỉ mình tôi biết
Actor(s) Bệnh nhân, Bác sĩ, Nhân viên y tế, Quản trị viên
Priority Phải có
Trigger Khi người dùng muốn đổi mật khẩu để bảo mật tài khoản
Pre-Condition(s) ➢ Người dùng có tài khoản và đang đăng nhập trong ứng dụng
➢ Thiết bị của người dùng đã được kết nối internet khi thực hiện đổi mật khẩu Post-Condition(s) Người dùng đổi mật khẩu tài khoản thành công
Basic Flow 1 Người dùng truy cập ứng dụng
2 Ứng dụng hiện thị trang chính chủ người dùng chọn vào phần “Quản lý tài khoản”
3 Người dùng ọn vào “Thông tin cá nhân”.ch
4 Ở phần “Bảo mật” người dùng chọn “Cập nhật mật khẩu”
5 Người dùng cần nhập lại mật khẩu hiện tại, sau đó là mật khẩu mới và xác nhận lại mật khẩu mới
6 Người dùng nhấn nút “Xác nhận”
7 Hệ ống kiểm tra thông tin người dùng thay đổi th
8 Thông báo mậ khẩu đã được đổit
Alternative Flow Không có
Exception Flow 7a Hệ ống thông báo mật khẩu mới không hợp lệ do không thỏa các yêu cầu sau:th
+ “Mật khẩu phải từ 8-15 ký tự”
+ “Gồm chữ hoa, chữ thường, số & ký tự @$!*?&#”
+ “Không chứa tên đăng nhập”
+ “Không được trùng với mật khẩu hiện tại”
Use case quay lạ bước 5.i
Business Rules Không có
Non-Functional
Requirement
Không có
Trang 9Trường Đại học Khoa học tự nhiên Phân tích Thiết kế hệ ống thông tin th
Page of 9 28
2.1.4 Mô tả Use Case Đăng kí khám bệnh
Use Case ID UC-1.1
Use Case Name Đăng kí khám bệnh
Description Khi người bệnh nhân đã đăng nhập vào ứng dụng và muốn đăng kí khám bệnh
Actor(s) Bệnh nhân
Priority Phải có
Trigger Người bệnh có nhu cầu khám bệnh
Pre-Condition(s) ➢ Người bệnh đã có tài khoản và đăng nhập vào ứng dụng
➢ Ứng dụng phải hoạt động bình thường
Post-Condition(s) Người bệnh nhận được thông báo chi tiết lịch hẹn Hệ ống ghi nhận thông tin đăng ký th
khám bệnh của người bệnh
Basic Flow 1 Người bệnh truy cập vào ứng dụng
2 Người bệnh nhấp vào “Mục đăng ký khám bệnh”
3 Người bệnh điền thông tin vào phiếu đăng ký khám bệnh và ngày muốn khám bệnh
4 Hệ ống kiểm tra có thể lên lịch hẹn bác sĩ cho bệnh nhân không.th
5 Hệ ống tạo phiếu chi tiết lịch hẹn.th
6 Hệ ống thông báo hẹn thành công và đưa chi tiết lịch hẹn cho bệnh nhân.th
Alternative Flow Không có
Exception Flow 4a Hệ ống xác định bác sĩ không có lịch trống để khám bệnh vào ngày chọn.th
5a Hệ ống hiện thị rằng bệnh nhân có thể “Chọn ngày khác” hoặc “Hủy lịch hẹn”.th6a Nếu bệnh nhân chọn “Chọn ngày khác”
Use case trở về bước 3
6a1 Nếu bệnh nhân chọn “Hủy lịch hẹn”
Trang 10Trường Đại học Khoa học tự nhiên Phân tích Thiết kế hệ ống thông tin th
Page of 10 28
2.1.5 Mô tả Use Case Tra cứu thông tin
Use Case ID UC-1.2.1
Use Case Name Tra cứu thông tin
Description Khi người bệnh nhân đã đăng nhập vào ứng dụng kiểm tra thông tin của bản thân Actor(s) Bệnh nhân
Priority Phải có
Trigger Người bệnh muốn coi thông tin của bản thân
Pre-Condition(s) ➢ Người bệnh đã có tài khoản và đăng nhập vào ứng dụng
➢ Ứng dụng phải hoạt động bình thường
Post-Condition(s) Hiển thị thông tin đã tra cứu
Basic Flow 1 Người bệnh truy cập vào ứng dụng
2 Người bệnh nhấp vào “Tra cứu thông tin bệnh nhân”
3 Người bệnh nhập thông tin cần tìm kiếm (tên, mã bệnh nhân, địa chỉ…)
4 Bệnh nhân nhấn nút tìm kiế để tra cứu thông tin.m
5 Hệ thống kiểm tra thông tin
6 Hệ ống hiển thị thông tin tìm được.th
Alternative Flow 2a Bệnh nhân nhấp vào “Thông tin cá nhân”
3a Hệ ống hiện thị toàn bộ thông tin của bệnh nhân (bao gồm bệnh án, tên, tuổi,…)thUse case kết thúc
Exception Flow 3a Sau khi xem qua thông tin, người dùng quyết định hủy bỏ việc tra cứu thông tin
Use case kết thúc
5a Hệ ống thông báo thông tin cần tìm không có trong cơ sở dữ th liệu
6a Hệ ống thông báo không tìm thấy thông tin.th
Trang 11Trường Đại học Khoa học tự nhiên Phân tích Thiết kế hệ ống thông tin th
Page of 11 28
2.1.6 Mô tả Use Case thêm thông tin bệnh nhân
Use Case ID UC-2.1.1
Use Case Name Thêm thông tin bệnh nhân
Description Là bác sĩ, tôi muốn kiểm soát các thông tin của bệnh nhân đã đăng kí khám bệnh Actor(s) Bác sĩ
Priority Phải có
Trigger Bác sĩ muốn kiểm soát thông tin của bệnh nhân
Pre-Condition(s) ➢ Bác sĩ đã có tài khoản và đăng nhập vào ứng dụng
➢ Ứng dụng phải hoạt động bình thường
Post-Condition(s) Thêm bệnh nhân vào hệ ống thành côngth
Basic Flow 1 Bác sĩ truy cập vào ứng dụng
2 Từ giao diện Quản lý bệnh nhân Bác sĩ ọn thêm thông tin bệnh nhân.ch
3 Bác sĩ điền đầy đủ thông tin về bệnh nhân vào hệ thống
4 Bác sĩ nhấn vào nút xác nhận
5 Hệ ống kiểm tra thông tin bệnh nhân.th
6 Thông báo đã thêm mới một bệnh nhân thành công
Alternative Flow 3a Bác sĩ chỉ cần nhập mã tài khoản của bệnh nhân
4a Bác sĩ nhấn vào nút xác nhận
Use case ếp tụ ở bước 6.ti c
Exception Flow 4a Sau khi xem qua thông tin, bác sĩ quyết định hủy bỏ việc thêm bệnh nhân
Use case kết thúc
5b Hệ ống kiểm tra thông tin của bệnh nhân không hợp lệ.th
6b Thông báo không thể thêm mới một bệnh nhân
Trang 12Trường Đại học Khoa học tự nhiên Phân tích Thiết kế hệ ống thông tin th
Page of 12 28
2.1.7 Mô tả Use Case Sửa bệnh án
Use Case ID UC-2.2.2
Use Case Name Sửa bệnh án
Description Là bác sĩ, tôi muốn kiểm soát các thông tin của bệnh nhân đã đăng kí khám bệnh Actor(s) Bác sĩ
Priority Phải có
Trigger Bác sĩ muốn cập nhậ bệnh án của bệnh nhânt
Pre-Condition(s) ➢ Bác sĩ đã có tài khoản và đăng nhập vào ứng dụng
➢ Ứng dụng phải hoạt động bình thường
Post-Condition(s) Cập nhật bệnh án của bệnh nhân trong hệ ống thành côngth
Basic Flow 1 Bác sĩ truy cập vào ứng dụng
2 Từ giao diện Quản lý bệnh nhân Bác sĩ chọn thông tin bệnh nhân mà mình muốn sửa bệnh án
3 Bác sĩ ọn biểu tượng “cây bút chì” ở ối dòng bệnh án để sửa bệnh án.ch cu
4 Sau khi sửa xong bệnh án, bác sĩ nhấn vào nút xác nhận
5 Hệ ống kiểm tra thông tin bệnh th án
6 Thông báo cập nhậ bệnh án thành công.t
Alternative Flow Không có
Exception Flow 4a Sau khi xem qua thông tin, bác sĩ quyết định hủy bỏ việ cập nhật bệnh án.c
Use case kết thúc
5b Hệ ống kiểm tra thông tin nhập không hợp lệ (sai kí tự…).th
6b Thông báo thông tin mới không hợp lệ
Use case kết thúc
Business Rules Không có
Non-Functional
Requirement Không có
Trang 13Trường Đại học Khoa học tự nhiên Phân tích Thiết kế hệ ống thông tin th
Page of 13 28
2.1.8 Mô tả Use Case Kê đơn thuốc
Use Case ID UC-2.3
Use Case Name Kê đơn thuốc
Description Là bác sĩ, tôi muốn kê đơn thuốc cho bệnh nhân để bệnh nhân có thể mua và uống theo
trình tự nhất định đã đề ra
Actor(s) Bác sĩ
Priority Phải có
Trigger Bác sĩ muốn kê đơn thuốc bệnh nhân
Pre-Condition(s) ➢ Bác sĩ đã có tài khoản và đăng nhập vào ứng dụng
➢ Ứng dụng phải hoạt động bình thường
Post-Condition(s) Kê đơn thuốc cho bệnh nhân trong hệ ống thành côngth
Basic Flow 1 Bác sĩ truy cập vào ứng dụng
2 Từ giao diện Quản lý bệnh nhân Bác sĩ chọn thông tin bệnh nhân, sau đó chọn bệnh án của bệnh nhân mà mình muốn kê đơn thuốc
3 Bác sĩ nhập các thành phần của đơn thuốc vào
4 Bác sĩ nhấn vào nút xác nhận
5 Hệ ống kiểm tra thông tin đơn thuốc.th
6 Thông báo cập nhậ đơn thuốc thành công.t
Alternative Flow Không có
Exception Flow 4a Sau khi xem qua thông tin, bác sĩ quyết định hủy bỏ việc cập nhậ đơn thuốc.t
Trang 14Trường Đại học Khoa học tự nhiên Phân tích Thiết kế hệ ống thông tin th
Page of 14 28
2.1.9 Mô tả Use Case Sắp xếp lịch hẹn
Use Case ID UC-2.4.2
Use Case Name Sắp xếp lịch hẹn
Description Là bác sĩ, tôi muốn sắp xếp lịch hẹn với người bệnh để khám
Actor(s) Bác sĩ
Priority Phải có
Trigger Bác sĩ muốn sắp xếp lịch hẹn
Pre-Condition(s) ➢ Bác sĩ đã có tài khoản và đăng nhập vào ứng dụng
➢ Ứng dụng phải hoạt động bình thường
Post-Condition(s) Sắp xếp lịch hẹn cho bác sĩ thành công
Basic Flow 1 Bác sĩ truy cập vào ứng dụng
2 Từ giao diện Quản lý lịch hẹn, bác sĩ chọn ra những ngày mà mình có thể hẹn gặp trong 1 tuần
3 Bác sĩ nhấn vào nút xác nhận
4 Hệ ống kiểm tra thông tin.th
5 Hệ ống thông báo xác nhận thời khóa biểu mà bác sĩ chọnth
Alternative Flow 2a Bác sĩ chọn tất cả(7 ngày trong 1 tuần)
Use case tiếp tục bước 3
Exception Flow 2a Sau khi xem qua thông tin, bác sĩ quyết định hủy bỏ việc cập nhật thời gian rảnh