Bối cảnh và vấn đề nghiên cứu

Đại dịch COVID-19 bùng phát trên diện rộng đã đặt ra áp lực lớn đối với hệ thống y tế công cộng, đặc biệt là công tác kiểm soát dịch tễ và vận hành các cơ sở cách ly tập trung. Quá trình tiếp nhận, theo dõi sức khỏe, bố trí cơ sở vật chất và quản lý viện phí cho số lượng lớn bệnh nhân đòi hỏi một công cụ quản lý dữ liệu toàn diện, chính xác và kịp thời. Trong bối cảnh đó, đề tài đồ án môn học Phân tích thiết kế phần mềm với tên gọi "Phân Tích Thiết Kế Hệ Thống Quản Lý Khu Cách Ly" được thực hiện bởi nhóm sinh viên Khoa Công nghệ Thông tin - Trường Đại học Ngoại ngữ - Tin học Thành phố Hồ Chí Minh (HUFLIT), dưới sự hướng dẫn của TS. Nguyễn Đức Cường.

Mục tiêu nghiên cứu và thiết kế của đề tài bao gồm các nhiệm vụ trọng tâm:

  1. Phân tích chi tiết yêu cầu nghiệp vụ quản lý người bệnh, người cách ly trong cơ sở y tế tập trung nhằm đối phó hiệu quả với dịch bệnh truyền nhiễm.
  2. Xây dựng mô hình hóa hệ thống bằng các biểu đồ Use Case theo chuẩn UML, xác định rõ vai trò của từng tác nhân tham gia vào quy trình.
  3. Thiết kế đặc tả chi tiết cho 24 ca sử dụng (Use Cases) bao phủ toàn diện các phân hệ: quản lý tài khoản, quản lý hồ sơ y tế, điều phối tài nguyên - giường bệnh, quản lý tài chính viện phí và an toàn bảo mật thông tin.
  4. Đối chuẩn tính năng với các nền tảng công nghệ phòng chống dịch thực tế tại Việt Nam để định hình các chức năng cốt lõi và phương hướng phát triển hệ thống.

Đối tượng nghiên cứu của đồ án là quy trình vận hành, quản lý dữ liệu người bệnh, giường bệnh, vật tư y tế và dòng tiền viện phí trong khu cách ly. Phạm vi nghiên cứu tập trung vào giai đoạn phân tích yêu cầu và thiết kế phần mềm, hoàn thành vào ngày 30 tháng 03 năm 2024 tại TP. Hồ Chí Minh.


Cơ sở lý thuyết và phương pháp

Đồ án ứng dụng phương pháp luận phân tích và thiết kế hướng đối tượng (Object-Oriented Analysis and Design - OOAD) thông qua ngôn ngữ mô hình hóa thống nhất (UML - Unified Modeling Language).

Phương pháp thực hiện và các công cụ được nhóm tác giả sử dụng gồm:

  • Công cụ mô hình hóa phần mềm: Sử dụng công cụ StarUML để thiết kế toàn bộ hệ thống biểu đồ Use Case từ mức tổng quát (Diagram 001) đến các biểu đồ phân hệ chi tiết (Diagram 02 đến Diagram 06).
  • Phương pháp đối chuẩn ứng dụng thực tế (Benchmarking / Review real app): Tiến hành khảo sát, so sánh đối chiếu hệ thống được xây dựng (Group app) với ba hệ thống quản lý dịch tễ thực tế:
    • Cổng thông tin của Bộ Y tế (Hệ thống quản lý người cách ly và người bệnh COVID-19 - Ministry of Health portal).
    • Ứng dụng phòng chống dịch quốc gia PC-COVID.
    • Ứng dụng khai báo y tế NCOVI.
  • Phương pháp đặc tả hình thức: Xây dựng ma trận phân quyền (Actor vs. Function) và cấu trúc đặc tả ca sử dụng chuẩn hóa bao gồm: Tên ca sử dụng, mã định danh (Code), mô tả tóm tắt, tác nhân kích hoạt (Trigger), điều kiện tiên quyết (Pre-condition), điều kiện sau (Post-condition), luồng sự kiện chính (Main Flow), luồng thay thế (Alternative Flow), các trường hợp ngoại lệ (Exceptions), thông điệp hệ thống (System messages) và quy tắc nghiệp vụ (Business rules).
  • Nguồn tài liệu tham khảo: Dữ liệu học thuật môn học Phân tích thiết kế phần mềm, kênh bài giảng chuyên môn của giảng viên Bùi Thị Thanh Tú và các tài liệu tham khảo kỹ thuật liên quan.

Phân tích và thiết kế hệ thống

Hệ thống quản lý khu cách ly được thiết kế phục vụ 6 nhóm tác nhân chính cùng hệ thống thông tin tương tác:

STT Tác nhân (Actor) Phạm vi vai trò và trách nhiệm trong hệ thống
1 Admin (Quản trị viên) Quản lý và kiểm tra danh sách toàn bộ tài khoản người dùng trong hệ thống.
2 Nhân viên y tế (NV y tế) Trực tiếp quản lý bệnh nhân, cập nhật tình trạng sức khỏe hàng ngày, đặt lịch khám và quản lý thuốc men.
3 Nhân viên quản lý cách ly Điều phối tiếp nhận/điều chuyển bệnh nhân, quản lý nhân sự, quản lý giường bệnh và kiểm soát trang thiết bị y tế.
4 Nhân viên kế toán Kiểm soát tài chính khu cách ly, quản lý ngân sách, ghi nhận thu chi, xuất hóa đơn viện phí và quản lý phương tiện thanh toán.
5 Nhân viên quản lý thông tin Thực hiện phân quyền truy cập, kiểm soát an toàn bảo mật và mã hóa dữ liệu y tế.
6 Bệnh nhân / Người cách ly Đăng ký tài khoản, đăng nhập, khai báo y tế điện tử, xem/cập nhật thông tin cá nhân và thanh toán viện phí.

Khảo sát và đối chuẩn ứng dụng thực tế

Nhóm tác giả tiến hành đánh giá so sánh 8 tiêu chí chức năng cốt lõi giữa hệ thống của nhóm (Group app) và các nền tảng y tế phòng chống dịch:

Tiêu chí chức năng Cổng Bộ Y tế PC-COVID NCOVI Group app
Vị trí khu cách ly Có Có Có Có
Tổng số người được cách ly Có Có Có Có
Số ca dương tính / Số ca tử vong Có Có Có Có
Số người dự kiến xuất viện Có Có Có Có
Tra cứu thông tin người cách ly / điều trị Có Có Có Có
Dashboard thống kê số người kiểm dịch & cách ly Có Có Không Có
Xem lịch sử điều chuyển người cách ly / bệnh nhân Có Có Không Có
Sức chứa của khu cách ly Có Có Có Có

Danh mục 24 Ca sử dụng (Use Cases) của hệ thống

Toàn bộ hệ thống được phân rã thành 24 ca sử dụng chính:

Mã UC Tên Ca sử dụng Tóm tắt chức năng
UC01 Đăng nhập Cho phép người dùng xác thực và đăng nhập vào hệ thống theo quyền hạn tương ứng.
UC02 Đăng ký Cho phép người dùng mới tạo tài khoản qua email xác nhận hoặc số CCCD.
UC03 Khai báo y tế Tiếp nhận thông tin triệu chứng, lịch sử dịch tễ, tiếp xúc gần từ người bệnh.
UC04 Xem thông tin cá nhân Hiển thị thông tin hồ sơ và dữ liệu y tế của tài khoản đang đăng nhập.
UC05 Cập nhật thông tin cá nhân Chỉnh sửa các trường thông tin cơ bản và thông tin y tế của người dùng.
UC06 Đăng xuất Kết thúc phiên làm việc, xóa thông tin phiên khỏi bộ nhớ và ghi nhận nhật ký hệ thống.
UC07 Xem danh sách tài khoản Cung cấp giao diện quản trị viên tra cứu toàn bộ danh sách người dùng.
UC08 Quản lý bệnh nhân Giao diện tập trung phục vụ ghi nhận, tra cứu, thêm, sửa, xóa thông tin bệnh nhân.
UC09 Cập nhật tình trạng sức khỏe Cho phép nhân viên y tế cập nhật chỉ số sinh hiệu, diễn biến bệnh theo thời gian thực.
UC10 Tra cứu thông tin bệnh nhân Tìm kiếm hồ sơ bệnh nhân theo tên gần đúng, ngày sinh hoặc số định danh.
UC11 Thêm bệnh nhân Tiếp nhận hồ sơ bệnh nhân mới vào cơ sở dữ liệu khu cách ly.
UC12 Xóa bệnh nhân Xóa hoặc loại bỏ hồ sơ bệnh nhân khỏi danh sách quản lý tích cực.
UC13 Đặt lịch khám Thiết lập lịch khám định kỳ hoặc chuyên khoa cho bệnh nhân trong khu cách ly.
UC14 Quản lý ngân sách Kiểm soát định mức và phân bổ nguồn kinh phí hoạt động của cơ sở cách ly.
UC15 Ghi nhận thu chi Ghi nhận các dòng tiền thu vào và các khoản chi phí phát sinh thực tế.
UC16 Xuất hóa đơn viện phí Lập hóa đơn viện phí dựa trên các dịch vụ y tế đã cung cấp cho người bệnh.
UC17 Thanh toán viện phí Xử lý giao dịch thanh toán viện phí từ phía bệnh nhân hoặc người bảo lãnh.
UC18 Xem lịch sử thanh toán Tra cứu các biên lai, chứng từ và giao dịch tài chính đã thực hiện.
UC19 Quản lý phương tiện thanh toán Cấu hình, tích hợp các kênh và phương thức chi trả trong hệ thống.
UC20 Mã hóa dữ liệu Chuyển đổi dữ liệu y tế nhạy cảm thành dạng không thể đọc để bảo vệ an toàn thông tin.
UC21 Quản lý giường bệnh Theo dõi tình trạng sử dụng, tỷ lệ trống/kín của giường bệnh tại các phân khu.
UC22 Theo dõi tiêu thụ tài nguyên Ghi nhận mức độ sử dụng vật tư y tế, thuốc men, hóa chất tiêu hao.
UC23 Cập nhật trang thiết bị Quản lý số lượng, tình trạng vận hành của thiết bị y tế sau khi nhập kho/sử dụng.
UC24 Thống kê báo cáo Tổng hợp số liệu và kết xuất biểu đồ thống kê phục vụ công tác điều hành.

Ma trận phân quyền chức năng (Actor vs. Use Case Matrix)

Mã UC Admin Bệnh nhân NV Quản lý cách ly NV Y tế NV Quản lý thông tin NV Kế toán
UC01 - UC06 X X X X X X
UC07 X
UC08 - UC09 X X
UC10 - UC12 X X
UC13 X X
UC14 - UC16 X
UC17 X X
UC18 - UC19 X
UC20 X
UC21 - UC22 X X
UC23 X
UC24 X X

Nội dung chính theo các phần của đồ án

Phần 1: Tổng quan và kiểm soát thay đổi tài liệu

Tài liệu được thiết lập với quy trình quản lý cấu hình rõ ràng, ghi nhận lịch sử nâng cấp phiên bản từ v1.0 (ngày 13/01/2024) bổ sung các yêu cầu phi chức năng lên phiên bản hoàn thiện v1.2. Đồ án đưa ra bảng chữ ký phê duyệt và bảng định nghĩa các thuật ngữ viết tắt trong hệ thống (như ký hiệu NV đại diện cho Nhân viên).

Phần 2: Phân tích yêu cầu và mô hình hóa chức năng

Nhóm tác giả phân tích chi tiết bài toán thực tế: khi người dân có kết quả xét nghiệm dương tính với SARS-CoV-2, họ được tiếp nhận vào khu cách ly tập trung. Hệ thống thiết lập chuỗi tương tác đa chiều giữa 6 nhóm tác nhân nhằm đảm bảo thông tin thông suốt từ khâu y tế lâm sàng, hậu cần cơ sở vật chất đến kế toán viện phí.

Các Use Case Diagram được nhóm xây dựng chi tiết trên StarUML:

  • Diagram 001: Biểu đồ ca sử dụng tổng quát toàn hệ thống.
  • Diagram 02: Phân hệ Đăng ký và Đăng nhập.
  • Diagram 03: Phân hệ Quản lý giao dịch tài chính.
  • Diagram 04: Phân hệ Quản lý bệnh nhân.
  • Diagram 05: Phân hệ Quản lý tài nguyên và trang thiết bị.
  • Diagram 06: Phân hệ Quản lý thông tin và bảo mật.

Phần 3: Yêu cầu chức năng chi tiết và quy tắc nghiệp vụ

Phần này cung cấp bản đặc tả chi tiết cho từng ca sử dụng. Một số quy tắc nghiệp vụ (Business Rules) và luồng xử lý nổi bật được quy định:

  • Xác thực và đăng nhập (UC01): Quy tắc an ninh quy định nếu người dùng nhập sai mật khẩu vượt quá 5 lần, hệ thống sẽ tự động khóa tài khoản để ngăn chặn tấn công dò quét mật khẩu.
  • Đăng ký tài khoản (UC02): Hỗ trợ đăng ký tài khoản qua số Căn cước công dân (CCCD) và email. Ràng buộc toàn vẹn quy định mỗi số CCCD chỉ được liên kết với một tài khoản duy nhất; hệ thống yêu cầu gửi email xác thực kích hoạt trước khi cho phép đăng nhập.
  • Khai báo y tế (UC03): Người bệnh đã đăng nhập có thể nhập thông tin triệu chứng, lịch sử tiếp xúc gần và lịch sử di chuyển; hệ thống cung cấp luồng thay thế cho phép bỏ qua nếu không có thông tin dịch tễ mới phát sinh.
  • Quản lý bệnh nhân (UC08): Tích hợp công cụ tìm kiếm nhanh theo tiêu chí gần đúng (tên, ngày sinh). Trong trường hợp thao tác dữ liệu xảy ra lỗi quá 5 lần, hệ thống kích hoạt cơ chế hiển thị các thông tin gợi ý xử lý cho nhân viên y tế.
  • Theo dõi sức khỏe và điều chuyển (UC09 - UC12): Gắn kết tình trạng bệnh nhân với hồ sơ bệnh án điện tử, hỗ trợ cập nhật kết quả xét nghiệm, lịch hẹn khám và điều chỉnh trạng thái giường bệnh.

Kết quả và đóng góp

  1. Chuẩn hóa quy trình phân tích thiết kế phần mềm y tế: Đồ án đã xây dựng thành công bộ hồ sơ phân tích thiết kế hoàn chỉnh cho hệ thống quản lý khu cách ly tập trung, bao gồm 24 ca sử dụng với các luồng sự kiện chính, luồng phụ và xử lý ngoại lệ rõ ràng.
  2. Xác lập ma trận phân quyền chi tiết: Phân định rõ ràng trách nhiệm giữa 6 nhóm người dùng (Admin, Bệnh nhân, Nhân viên y tế, Quản lý cách ly, Quản lý thông tin, Kế toán), giải quyết bài toán chồng chéo quyền hạn trong các cơ sở cách ly quy mô lớn.
  3. Mô hình hóa nghiệp vụ chuyên sâu: Đưa ra giải pháp quản lý đồng bộ từ lâm sàng (sức khỏe, bệnh nhân, lịch khám) đến phi lâm sàng (giường bệnh, tiêu hao vật tư, ngân sách thu chi và hóa đơn viện phí), có tích hợp ca sử dụng mã hóa dữ liệu (UC20) để bảo đảm an toàn dữ liệu y tế.
  4. Đối chuẩn thực tế: Nhóm đã so sánh và kế thừa các tính năng ưu việt từ các ứng dụng phòng chống dịch quốc gia (PC-COVID, NCOVI, Cổng thông tin Bộ Y tế), bổ sung tính năng quản lý lịch sử điều chuyển và dashboard kiểm soát sức chứa cơ sở.

Hạn chế và hướng nghiên cứu tiếp

  • Hạn chế:
    • Tài liệu đồ án tập trung chủ yếu vào pha phân tích yêu cầu nghiệp vụ, mô hình hóa Use Case và đặc tả chức năng; chưa đi sâu vào chi tiết thiết kế kiến trúc kỹ thuật ở mức mã nguồn (code-level architecture), đặc tả sơ đồ lớp (Class Diagram), sơ đồ tuần tự (Sequence Diagram) hay sơ đồ thực thể liên kết dữ liệu (ERD).
    • Chưa cung cấp số liệu thực nghiệm về hiệu năng hệ thống khi chịu tải lớn trong điều kiện số ca nhiễm tăng đột biến.
  • Hướng phát triển tiếp:
    • Hoàn thiện thiết kế dữ liệu chi tiết và xây dựng các chức năng phần mềm trên môi trường thực tế (theo cấu trúc các mục mở rộng đã định hướng trong mục lục).
    • Tích hợp cổng thanh toán trực tuyến tự động cho ca sử dụng thanh toán viện phí (UC17).
    • Mở rộng giao diện lập trình ứng dụng (API) để kết nối đồng bộ dữ liệu với Cổng thông tin của Bộ Y tế và cơ sở dữ liệu dân cư quốc gia.

Giá trị tham khảo

Tài liệu đồ án mang lại giá trị tham khảo thiết thực cho:

  • Sinh viên ngành Công nghệ thông tin, Kỹ thuật phần mềm: Là tài liệu tham khảo chuẩn mực về phương pháp phân tích thiết kế phần mềm hướng đối tượng, cách thức xây dựng Use Case Diagram trên StarUML và kỹ thuật viết Use Case Specification chi tiết.
  • Nhà phát triển hệ thống y tế công cộng: Cung cấp bộ khung phân tích nghiệp vụ sẵn có về quản lý khu cách ly, theo dõi bệnh nhân truyền nhiễm, quản lý giường bệnh và kiểm soát viện phí.

Câu hỏi thường gặp

1. Hệ thống quản lý khu cách ly trong đồ án được thiết kế cho những nhóm đối tượng người dùng nào?
Hệ thống phân quyền cho 6 nhóm tác nhân (Actors): Quản trị viên (Admin), Bệnh nhân, Nhân viên y tế, Nhân viên quản lý cách ly, Nhân viên quản lý thông tin và Nhân viên kế toán.

2. Quy tắc nghiệp vụ về bảo mật đăng nhập và đăng ký tài khoản được quy định như thế nào?
Tại ca sử dụng UC01 (Đăng nhập), nếu người dùng đăng nhập sai quá 5 lần, hệ thống sẽ thực hiện khóa tài khoản. Tại ca sử dụng UC02 (Đăng ký), mỗi số CCCD chỉ được đăng ký duy nhất một tài khoản và bắt buộc phải xác nhận qua email kích hoạt.

3. Sự khác biệt về vai trò giữa Nhân viên y tế và Nhân viên quản lý cách ly trong hệ thống là gì?
Nhân viên y tế chịu trách nhiệm trực tiếp về mặt chuyên môn y khoa (cập nhật tình trạng sức khỏe bệnh nhân, đặt lịch khám, quản lý thuốc), trong khi Nhân viên quản lý cách ly đảm nhận công tác điều phối chung về khu cách ly (quản lý phân bổ giường bệnh, cập nhật số lượng trang thiết bị y tế và điều chuyển bệnh nhân).

4. Hệ thống Group app trong đồ án có những tính năng thống kê nào vượt trội hơn so với ứng dụng NCOVI trong bảng so sánh?
Theo bảng đối chuẩn ứng dụng thực tế của đồ án, Group app hỗ trợ hai tính năng mà NCOVI không có: tính năng hiển thị Dashboard thống kê số người kiểm dịch/cách ly điều trị và tính năng xem lịch sử quá trình điều chuyển người cách ly/người bệnh.


Kết luận

Báo cáo đồ án môn học "Phân Tích Thiết Kế Hệ Thống Quản Lý Khu Cách Ly" của nhóm sinh viên Trường Đại học Ngoại ngữ - Tin học TP.HCM đã hoàn thành xuất sắc việc xây dựng mô hình phân tích yêu cầu và thiết kế phần mềm cho bài toán quản lý dịch bệnh tập trung. Bằng việc ứng dụng công cụ StarUML, nhóm đã chuẩn hóa 24 ca sử dụng và thiết lập ma trận phân quyền rõ ràng giữa 6 nhóm tác nhân nghiệp vụ. Đồ án là tài liệu tham khảo có giá trị cao trong học tập môn Phân tích thiết kế phần mềm cũng như định hình các giải pháp số hóa quản lý y tế cộng đồng.