Bối cảnh và vấn đề nghiên cứu
Trong bối cảnh công nghệ thông tin và tự động hóa được ứng dụng sâu rộng vào công tác quản lý y tế, việc xây dựng mô hình bệnh viện thông minh đòi hỏi các đơn vị y tế phải hiện đại hóa quy trình tiếp nhận và điều trị. Bệnh viện Trung ương Quân đội 108 (TƯQĐ 108) là bệnh viện đa khoa, chuyên khoa sâu, tuyến cuối của ngành Quân y và là bệnh viện hạng đặc biệt quốc gia. Tại đơn vị, hệ thống phần mềm quản lý tổng thể đã được vận hành với 18 phân hệ chính dựa trên cơ sở hạ tầng mạng đồng bộ. Tuy nhiên, phân hệ quản lý bệnh nhân nội trú là một trong những phân hệ phức tạp nhất và hoàn thiện cuối cùng.
Thực tiễn quản lý tại nhiều bệnh viện cho thấy công tác sắp xếp phòng và giường bệnh thường do từng khoa điều trị nội trú thực hiện một cách độc lập, dẫn đến tình trạng phân tán thông tin và khó khăn trong việc điều phối chung. Để giảm tải cho phân hệ quản lý nội trú tổng thể, đề tài "Xây dựng hệ thống quản lý giường bệnh cho bệnh nhân nội trú" được tác giả Trần Vũ Dương Dương thực hiện nhằm thiết lập quy trình quản lý phòng, giường tập trung thông qua Bộ phận đăng ký nội trú.
Nhiệm vụ và mục tiêu cụ thể của đề tài bao gồm:
- Xây dựng phần mềm chuyên môn hóa hỗ trợ quản lý tập trung danh mục phòng, giường bệnh và thông tin tiếp nhận điều trị nội trú trong toàn viện.
- Cung cấp công cụ giúp ban quản lý theo dõi tổng quát hiện trạng sử dụng giường bệnh (trống hay có người) và thống kê bệnh nhân theo từng thời điểm.
- Thiết kế giao diện làm việc đơn giản, thân thiện, giúp nhân viên y tế thao tác nhanh chóng và chính xác.
Đối tượng nghiên cứu của đề tài là quy trình quản lý đối tượng bệnh nhân điều trị nội trú và phân hệ quản lý bệnh nhân nội trú tại Bệnh viện Trung ương Quân đội 108. Phạm vi không gian nghiên cứu đặt tại Bộ phận Công nghệ thông tin thuộc Phòng Khoa học Quân sự, Bệnh viện TƯQĐ 108, với dữ liệu và mốc thời gian thực hiện vào năm 2020.
Cơ sở lý thuyết và phương pháp
Đề tài vận dụng lý thuyết phát triển phần mềm hướng đối tượng và phương pháp phân tích thiết kế hệ thống thông tin theo cấu trúc dữ liệu dòng (Data Flow Diagram - DFD) kết hợp mô hình thực thể liên kết (Entity-Relationship Diagram - ERD).
Các công nghệ và nền tảng kỹ thuật được lựa chọn triển khai bao gồm:
- Nền tảng Microsoft .NET Framework: Sử dụng môi trường thực thi mã nguồn CLR (Common Language Runtime) và thư viện lớp đối tượng .NET Framework Class Library nhằm hỗ trợ xử lý giao diện, giao tiếp dữ liệu và điều khiển sự kiện.
- Giao diện Windows Forms: Ứng dụng công nghệ lập trình giao diện đồ họa người dùng (GUI) chạy trên hệ điều hành Windows, tương tác thông qua các dịch vụ của Windows API.
- Ngôn ngữ lập trình C#: Ngôn ngữ lập trình hướng đối tượng mạnh mẽ, an toàn và hỗ trợ tương tác cơ sở dữ liệu tối ưu trên môi trường phát triển Visual Studio 2017.
- Hệ quản trị cơ sở dữ liệu Microsoft SQL Server Management Studio 2008: Sử dụng để thiết kế lược đồ quan hệ, lưu trữ bảng dữ liệu và ràng buộc toàn vẹn.
- Công cụ hỗ trợ khác: Nền tảng trực tuyến Draw.io dùng để trực quan hóa sơ đồ phân rã chức năng và sơ đồ luồng dữ liệu; công cụ Crystal Reports for Visual Studio 2017 định hướng tích hợp xuất phiếu và báo cáo.
Phương pháp nghiên cứu thực tế bao gồm việc khảo sát trực tiếp cơ sở hạ tầng CNTT tại Bệnh viện TƯQĐ 108 (trung tâm dữ liệu chuẩn hóa, hệ thống máy chủ Oracle dự phòng 1-1, mạng LAN cáp quang kép, tường lửa và kết nối mạng Vinaren/Internet), phỏng vấn chuyên gia quản trị và tổng hợp yêu cầu nghiệp vụ từ thực tế tiếp nhận bệnh nhân nội trú.
Thiết kế và triển khai
Hệ thống được thiết kế theo mô hình kiến trúc 3 lớp (Three-Layer Architecture) nhằm đảm bảo tính độc lập và khả năng bảo trì:
- Lớp hiển thị (GUI Layer): Cung cấp các biểu mẫu Windows Forms để tiếp nhận tương tác từ nhân viên y tế và quản trị viên.
- Lớp xử lý nghiệp vụ (Business Logic / Process Layer): Tiếp nhận các yêu cầu xử lý từ lớp GUI, kiểm tra quy tắc nghiệp vụ (tình trạng giường, ghép giường, điều chuyển khoa) và giao tiếp với tầng dữ liệu.
- Lớp cơ sở dữ liệu (Database Layer): Chịu trách nhiệm lưu trữ, cập nhật và truy xuất dữ liệu vật lý trên hệ quản trị SQL Server.
Bảng tổng hợp cấu trúc cơ sở dữ liệu hệ thống
| Tên bảng (Thực thể) |
Khóa chính (PK) |
Các trường thuộc tính chính |
Ý nghĩa và mô tả chức năng |
BENHNHAN |
MABN |
TENBN, NAMSINH, GIOITINH, SDT, NGUOITHAN, SDTNT, DOITUONG, SOTHEBHYT, MAKHOA, MAPHONG, MAGIUONG, DIEUTRINOITRU |
Lưu trữ toàn bộ thông tin hành chính, bảo hiểm y tế và vị trí giường điều trị của bệnh nhân. |
KHOANOITRU |
MAKHOA |
TENKHOA, CHUNHIEMKHOA, TONGSOGIUONG, TONGSOPHONG, SDT |
Danh mục các khoa tiếp nhận điều trị nội trú, thông tin lãnh đạo khoa và quy mô giường/phòng. |
PHONG |
MAPHONG |
MALOAIPHONG, TONGSOGIUONG, MAKHOA |
Quản lý thông tin phòng bệnh thuộc từng khoa, loại phòng và số lượng giường tương ứng. |
GIUONG |
MAGIUONG |
SOGIUONG, MALOAIGIUONG, SONGUOINAM, GIA, MAPHONG, TINHTRANG |
Quản lý chi tiết từng giường bệnh, đơn giá, số người nằm ghép và trạng thái (TRONG hoặc CO NGUOI). |
LOAI_PHONG |
MALOAIPHONG |
TENLOAIPHONG, BHYT_HOTRO, GHICHU |
Phân loại phòng nội trú (ví dụ: Phòng VIP, phòng tiêu chuẩn) và quy định mức hỗ trợ của BHYT. |
LOAI_GIUONG |
MALOAIGIUONG |
TENLOAIGIUONG, DONGIA |
Danh mục phân loại giường điều trị và mức giá tương ứng theo ngày. |
PHIEUNHAN |
SOPHIEU_NHAN |
NGAYNHAN, MABN, MAKHOA, MAPHONG, MAGIUONG |
Ghi nhận thông tin xếp phòng, giường khi bệnh nhân bắt đầu vào khoa nội trú điều trị. |
PHIEUTRA |
SOPHIEU_TRA |
NGAYTRA, MABN, MAKHOA, MAPHONG, MAGIUONG |
Ghi nhận thời điểm bệnh nhân kết thúc điều trị, giải phóng giường và xuất viện. |
DANGNHAP |
TENDN |
TENDAYDU, MATKHAU, QUYEN |
Quản lý tài khoản người dùng và phân quyền truy cập hệ thống (admin hoặc user). |
Hệ thống thiết lập các ràng buộc quan hệ thực thể chặt chẽ: quan hệ 1-n giữa Khoa với Bệnh nhân, Phòng với Bệnh nhân, Khoa với Phòng, Loại phòng với Phòng, Loại giường với Giường; quan hệ 1-1 giữa Bệnh nhân với Phiếu nhận và Phiếu trả tại mỗi đợt điều trị.
Nội dung chính theo từng chương
Chương 1: Giới thiệu đề tài
Chương 1 trình bày tổng quan về đơn vị thực tập là Bệnh viện Trung ương Quân đội 108, đơn vị trực thuộc Bộ Quốc phòng, giữ vai trò bệnh viện đa khoa chuyên sâu tuyến cuối. Báo cáo mô tả cơ cấu tổ chức của Phòng Khoa học Quân sự và Bộ phận Công nghệ thông tin – đơn vị trực tiếp chịu trách nhiệm quản lý, vận hành và phát triển phần mềm cho bệnh viện. Tác giả khái quát hiện trạng CNTT thông qua dự án năm 2013 với hạ tầng máy chủ Oracle, hệ thống mạng LAN cáp quang kép và 18 phân hệ phần mềm quản lý tổng thể theo mô hình Client - Server.
Từ việc phân tích tính phức tạp của phân hệ quản lý bệnh nhân nội trú, tác giả xác định bài toán chuyên biệt hóa việc tiếp nhận, xếp phòng/giường cho bệnh nhân qua Bộ phận đăng ký nội trú. Chương này cũng nêu rõ các mục tiêu, phạm vi nghiên cứu cùng các công cụ phát triển phần mềm gồm Visual Studio 2017, SQL Server Management Studio 2008, Draw.io, .NET Framework, Windows Forms và ngôn ngữ lập trình C#.
Chương 2: Phân tích hệ thống
Chương 2 tập trung phân tích chức năng và thiết kế luồng dữ liệu cho hệ thống. Tác giả xác định hai nhóm tác nhân chính tương tác với phần mềm:
- Nhân viên bệnh viện (
user): Tiếp nhận chỉ định nội trú từ bác sĩ khám bệnh, nhập thông tin hành chính của bệnh nhân, tra cứu sơ đồ phòng/giường, thực hiện xếp phòng/giường, lập phiếu nhận, xác nhận kết thúc điều trị và lập phiếu trả giường.
- Quản trị viên (
admin): Nắm toàn quyền hệ thống, quản lý tài khoản người dùng, phân quyền truy cập và quản trị danh mục dùng chung (thêm, sửa, xóa thông tin khoa, phòng, loại phòng, loại giường, xóa phiếu nhận/trả).
Quy trình nghiệp vụ và phân rã chức năng được chi tiết hóa qua các sơ đồ:
- Biểu đồ phân cấp chức năng: Bao gồm 4 nhánh chính là Đăng ký phòng/giường, Kết thúc phòng/giường, Quản lý phòng/giường và Quản lý người dùng.
- Biểu đồ luồng dữ liệu (DFD): Trình bày chi tiết ở mức khung cảnh, mức đỉnh và mức dưới đỉnh cho các phân hệ chức năng Xếp phòng/giường, Kết thúc phòng/giường và Quản lý phòng/giường.
- Sơ đồ thực thể liên kết (ERD) và thiết kế chi tiết 9 bảng cơ sở dữ liệu với kiểu dữ liệu, khóa chính, khóa ngoại và các ràng buộc dữ liệu cụ thể.
Chương 3: Thiết kế hệ thống
Chương 3 trình bày kiến trúc liên kết giữa các màn hình và thiết kế giao diện đồ họa chi tiết của phần mềm. Sơ đồ điều hướng xuất phát từ giao diện Đăng nhập (FrmDN) dẫn tới giao diện Trang chủ với thanh trình đơn (MenuStrip) gồm các mục: Danh sách bệnh nhân, Danh mục, Sơ đồ phòng giường, Báo cáo và Hệ thống.
Các giao diện chức năng cụ thể được thiết kế bao gồm:
- Giao diện Đăng nhập: Tiếp nhận tên đăng nhập và mật khẩu để xác thực người dùng.
- Giao diện Trang chủ: Điều hướng tới các phân hệ nghiệp vụ theo quyền hạn.
- Giao diện Danh sách bệnh nhân: Hỗ trợ tìm kiếm bệnh nhân theo mã, tên, năm sinh và hiển thị chi tiết thẻ BHYT, khoa chỉ định.
- Giao diện Quản lý Khoa điều trị nội trú, Loại phòng, Loại giường: Hiển thị danh sách, cho phép xem chi tiết (đối với quyền
user) và cấp quyền chỉnh sửa/thêm/xóa (đối với quyền admin).
- Giao diện Phiếu nhận và Phiếu trả phòng/giường: Tiếp nhận tạo mới phiếu điều trị, cập nhật thông tin phòng/giường và hỗ trợ thao tác in ấn.
- Giao diện Sơ đồ phòng giường: Hiển thị trực quan trạng thái giường theo từng khoa và từng phòng điều trị (giúp nhận diện giường còn trống để bố trí).
- Giao diện Quản lý tài khoản người dùng và Đổi mật khẩu: Dành riêng cho quản trị viên tạo mới/phân quyền tài khoản và cho phép người dùng tự thay đổi mật khẩu cá nhân.
Kết quả và đóng góp
Báo cáo thực tập chuyên đề đã đạt được các kết quả kỹ thuật cụ thể:
- Xây dựng hoàn chỉnh cơ sở dữ liệu quan hệ: Thiết lập 9 bảng dữ liệu bảo đảm lưu trữ đầy đủ các thông tin nghiệp vụ từ bệnh nhân, khoa điều trị, phòng, giường, đơn giá đến phiếu nhận và phiếu trả phòng.
- Hiện thực hóa các chức năng nghiệp vụ cốt lõi: Hoàn thành các thao tác thêm, sửa, xóa, tìm kiếm thông tin bệnh nhân và xếp/trả giường bệnh theo quy trình hoạt động một cửa tại Bộ phận đăng ký nội trú.
- Trực quan hóa trạng thái giường bệnh: Xây dựng màn hình sơ đồ phòng/giường giúp nhân viên y tế tra cứu nhanh hiện trạng phòng bệnh theo từng khoa nội trú (nhận biết tình trạng giường trống và giường có người nằm).
- Phân tách vai trò người dùng: Định hình rõ hai nhóm tác nhân vận hành (Admin và Nhân viên bệnh viện) trong luồng phân tích dữ liệu DFD và thiết kế giao diện.
Về mặt đóng góp ứng dụng, đề tài đề xuất giải pháp chuyên môn hóa công tác quản lý phòng giường độc lập với từng khoa phòng, giúp giảm tải sự cồng kềnh cho phân hệ quản lý bệnh nhân nội trú tổng thể tại các bệnh viện có quy mô lớn.
Hạn chế và hướng nghiên cứu tiếp
Bên cạnh những kết quả đạt được, tác giả tự đánh giá hệ thống còn một số tồn tại kỹ thuật cần tiếp tục hoàn thiện:
- Giao diện người dùng: Thiết kế giao diện Windows Forms còn đơn giản, chưa tối ưu về mặt thẩm mỹ và trải nghiệm thị giác.
- Liên kết dữ liệu: Mức độ liên kết tham chiếu và ràng buộc dữ liệu tự động giữa một số bảng quan hệ còn chưa thật sự tối ưu.
- Tính năng in ấn và báo cáo: Các biểu mẫu xem trước khi in (Print Preview) đối với phiếu nhận và phiếu trả phòng/giường chưa được hoàn thiện đầy đủ trên phần mềm.
- Hiện thực hóa phân quyền: Mặc dù đã phân tích logic phân quyền trên DFD và thiết kế bảng
DANGNHAP, nhưng chức năng kiểm soát phân quyền động trực tiếp trên mã nguồn giao diện chưa được lập trình hoàn chỉnh ở giai đoạn báo cáo.
Hướng phát triển tiếp theo của đề tài tập trung vào việc hoàn thiện mô-đun phân quyền chi tiết cho từng nhóm người dùng, tích hợp công cụ Crystal Reports để in phiếu tự động và cải tiến giao diện đồ họa thân thiện hơn.
Giá trị tham khảo
Báo cáo là tài liệu tham khảo hữu ích cho sinh viên ngành Khoa học máy tính, Công nghệ thông tin, Hệ thống thông tin quản lý khi thực hiện đồ án tốt nghiệp hoặc chuyên đề thực tập về xây dựng ứng dụng quản lý y tế/bệnh viện trên nền tảng .NET/C#.
Các nội dung có giá trị tham khảo chuyên môn cao bao gồm:
- Quy trình phân tích luồng dữ liệu DFD 3 mức (khung cảnh, đỉnh, dưới đỉnh) cho nghiệp vụ tiếp nhận và kết thúc giường bệnh nội trú.
- Thiết kế mô hình cơ sở dữ liệu quan hệ (ERD và Schema chi tiết 9 bảng) phản ánh sát thực tế nghiệp vụ quản lý phòng/giường bệnh tại cơ sở y tế tuyến trung ương.
- Cách thức bố trí giao diện nghiệp vụ dạng sơ đồ trực quan kết hợp quản lý danh mục dữ liệu trên nền Windows Forms.
Câu hỏi thường gặp
1. Đề tài được khảo sát và xây dựng dựa trên nhu cầu thực tế tại đơn vị nào?
Hệ thống được khảo sát tại Bộ phận Công nghệ thông tin thuộc Phòng Khoa học Quân sự, Bệnh viện Trung ương Quân đội 108 trong năm 2020.
2. Vì sao tác giả lại tách riêng hệ thống quản lý giường bệnh thành phần mềm độc lập?
Do phân hệ quản lý bệnh nhân nội trú trong hệ thống phần mềm quản lý tổng thể 108 rất phức tạp và quy trình sắp xếp phòng giường thường bị phân tán ở từng khoa. Việc xây dựng phần mềm riêng giúp chuyên môn hóa quy trình quản lý tập trung tại Bộ phận đăng ký nội trú, giảm tải vận hành cho hệ thống chính.
3. Cơ sở dữ liệu của phần mềm bao gồm những bảng chính nào?
Cơ sở dữ liệu gồm 9 bảng: BENHNHAN (thông tin bệnh nhân), KHOANOITRU (khoa điều trị), DANGNHAP (tài khoản), PHONG (phòng bệnh), GIUONG (giường bệnh), LOAI_PHONG (loại phòng), LOAI_GIUONG (loại giường), PHIEUNHAN (phiếu nhận phòng/giường) và PHIEUTRA (phiếu trả phòng/giường).
4. Phần mềm được phát triển dựa trên những công cụ và công nghệ nào?
Phần mềm sử dụng ngôn ngữ C# trên nền tảng .NET Framework và Windows Forms (IDE Visual Studio 2017), hệ quản trị cơ sở dữ liệu Microsoft SQL Server Management Studio 2008, công cụ thiết kế sơ đồ Draw.io và Crystal Reports for Visual Studio 2017.
5. Những hạn chế kỹ thuật chính mà tác giả đã chỉ ra ở phần kết luận là gì?
Các hạn chế gồm có: giao diện còn đơn giản chưa bắt mắt, liên kết tham chiếu giữa các bảng dữ liệu chưa thật sự tốt, các form xem trước khi in phiếu chưa hoàn thiện và tính năng phân quyền người dùng thực tế trên hệ thống chưa được lập trình xong.
Kết luận
Báo cáo thực tập chuyên đề "Xây dựng hệ thống quản lý giường bệnh cho bệnh nhân nội trú" của sinh viên Trần Vũ Dương Dương đã hoàn thành đầy đủ quy trình khảo sát, phân tích và thiết kế một ứng dụng quản lý y tế bám sát thực tế tại Bệnh viện TƯQĐ 108. Hệ thống ứng dụng kiến trúc 3 lớp trên nền tảng .NET và C#, giải quyết tốt các nghiệp vụ cơ bản về lưu trữ thông tin bệnh nhân, quản trị danh mục và lập phiếu nhận/trả giường. Các hạn chế về phân quyền và in ấn được tác giả chỉ rõ là cơ sở thực tế để tiếp tục phát triển và hoàn thiện phần mềm trong tương lai.