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

Trong bối cảnh nền kinh tế phát triển và hội nhập, chất lượng đời sống của người dân ngày càng được nâng cao, kéo theo nhu cầu chăm sóc sức khỏe và thẩm mỹ răng miệng gia tăng. Để đáp ứng nhu cầu này, hàng loạt cơ sở nha khoa tư nhân đã được thành lập, tạo nên sự cạnh tranh gay gắt trên thị trường dịch vụ y tế và thẩm mỹ. Để duy trì vị thế và nâng cao năng lực cạnh tranh, các cơ sở không chỉ cần chú trọng nâng cao chất lượng chuyên môn mà còn phải tối ưu hóa công tác quản trị và vận hành nghiệp vụ. Việc áp dụng công nghệ thông tin vào quản lý quy trình tiếp nhận, quản lý thuốc/vật tư y tế, theo dõi nhân sự và hạch toán doanh thu trở thành nhu cầu cấp thiết nhằm thay thế các phương thức thủ công rời rạc.

Đề tài "Xây dựng phần mềm quản lí nha khoa Thu Thủy" được nhóm sinh viên ngành Công nghệ Thông tin tại Trường Đại học Tôn Đức Thắng thực hiện trong khuôn khổ đồ án môn học Công nghệ phần mềm (năm 2023), dưới sự hướng dẫn của TS. Trần Thanh Phước.

Mục tiêu và nhiệm vụ nghiên cứu của đề tài bao gồm:

  1. Khảo sát thực tế quy trình nghiệp vụ tại cơ sở nha khoa Thu Thủy để thu thập yêu cầu người dùng.
  2. Phân tích và mô hình hóa các yêu cầu chức năng, phi chức năng thông qua các tác nhân và use case.
  3. Thiết kế kiến trúc phần mềm, sơ đồ tương tác tuần tự và cấu trúc cơ sở dữ liệu quan hệ phục vụ hệ thống.
  4. Xây dựng phần mềm hoàn chỉnh trên môi trường desktop đáp ứng các nghiệp vụ: quản lý nhân viên, quản lý khách hàng, quản lý kho vật tư - trang thiết bị, theo dõi dịch vụ điều trị và thống kê doanh thu.

Đối tượng và phạm vi nghiên cứu:

  • Đối tượng nghiên cứu: Quy trình quản lý và hệ thống phần mềm quản lý phòng khám nha khoa.
  • Phạm vi không gian: Khảo sát và triển khai áp dụng thực tế tại cơ sở Nha khoa Thu Thủy (Tây Ninh) — một đơn vị hoạt động gần 20 năm với trang thiết bị trị giá 30 tỷ đồng và mở cửa từ 9:00 đến 19:00 tất cả các ngày trong tuần.
  • Phạm vi thời gian: Dữ liệu khảo sát thu thập vào tháng 3/2023; đồ án hoàn thành ngày 26/04/2023.

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

Để xây dựng hệ thống phần mềm đáp ứng sát thực tế nghiệp vụ, đề tài áp dụng các nền tảng kỹ thuật và phương pháp luận công nghệ phần mềm sau:

1. Khung kiến trúc và công nghệ sử dụng

  • Mô hình kiến trúc phần mềm: Kiến trúc 3 lớp (3-tier Architecture) nhằm tách biệt rõ ràng giữa tầng hiển thị giao diện, tầng xử lý nghiệp vụ và tầng truy xuất dữ liệu.
  • Nền tảng phát triển ứng dụng: Nền tảng Windows Forms (WinForm) xây dựng bằng ngôn ngữ lập trình C#.
  • Định dạng kết xuất báo cáo: Tích hợp tính năng kết xuất dữ liệu và báo cáo thống kê ra tệp Microsoft Excel.

2. Phương pháp nghiên cứu và thu thập dữ liệu

  • Phương pháp khảo sát và phỏng vấn trực tiếp: Tác giả tiến hành phỏng vấn sâu trực tiếp với chủ cơ sở nha khoa Thu Thủy vào ngày 01/03/2023 theo bảng câu hỏi chi tiết để xác định các yêu cầu chức năng, phân quyền sử dụng và quy trình vận hành thu chi, xuất nhập kho.
  • Phương pháp phân tích - thiết kế hướng đối tượng (OOAD) và chuẩn UML: Sử dụng biểu đồ use case tổng quát, đặc tả chi tiết 23 use case, xây dựng hệ thống sơ đồ tuần tự (Sequence Diagram) để mô tả luồng tương tác giữa tác nhân và các đối tượng bên trong hệ thống.
  • Phương pháp mô hình hóa dữ liệu: Sử dụng mô hình thực thể kết hợp (ERD - Entity Relationship Diagram) và chuyển đổi thành mô hình quan hệ chuẩn hóa để quản lý thông tin bệnh nhân, nhân sự, hóa đơn, tồn kho và phiếu đề xuất.

Thiết kế và triển khai

Hệ thống được thiết kế dựa trên sự phân định rõ ràng giữa các nhóm quyền và quy trình tương tác dữ liệu.

1. Phân quyền tác nhân (Actors)

Phần mềm phân bổ hệ thống chức năng cho 3 nhóm tác nhân chính:

  • Chủ phòng khám (Quản lý): Nắm quyền tối cao trong hệ thống, thực hiện quản trị nhân sự (tạo tài khoản, phân quyền, cập nhật hồ sơ, vô hiệu hóa tài khoản, đổi/khôi phục mật khẩu, chấm công tính lương), duyệt đề xuất nhập kho, tra cứu danh mục kho và kiểm soát toàn bộ số liệu thu chi, in báo cáo doanh thu ra Excel.
  • Bác sĩ: Đăng nhập để theo dõi danh sách bệnh nhân, thực hiện quy trình khám - điều trị và trực tiếp cập nhật mô tả tình trạng bệnh lý của khách hàng vào hệ thống.
  • Nhân viên (Lễ tân/Kho): Tiếp nhận thông tin bệnh nhân tại quầy, lập hóa đơn dịch vụ, kiểm kê số lượng trang thiết bị trong kho, tạo yêu cầu nhập hàng gửi quản lý xét duyệt, thực hiện nhập kho khi được duyệt và lập các phiếu xuất kho/nhập kho.
Tác nhân Quyền hạn và nghiệp vụ chính phụ trách
Chủ phòng khám (Quản lý) Quản lý nhân viên (chấm công, tính lương, cấp/khóa tài khoản); Quản lý kho (xem tồn kho, duyệt phiếu mua); Quản lý doanh thu (xem thu, xem chi, xuất Excel).
Bác sĩ Thăm khám chuyên môn; Cập nhật mô tả chẩn đoán và tình trạng điều trị của khách hàng.
Nhân viên Tiếp nhận hồ sơ khách hàng; Lập hóa đơn dịch vụ; Kiểm kê kho; Lập yêu cầu nhập kho; Lập phiếu xuất/nhập kho.

2. Thiết kế dữ liệu và quy tắc nghiệp vụ

  • Quy tắc tính công và lương: Hệ thống mặc định số ngày làm việc của nhân viên bằng tổng số ngày trong tháng hiện tại. Khi nhân viên nghỉ phép, quản lý cập nhật số ngày nghỉ; số ngày đi làm thực tế được tính bằng tổng số ngày trong tháng trừ đi số ngày nghỉ. Lương tháng được tính theo công thức: $\text{Lương tháng} = \text{Mức lương 1 ngày} \times \text{Số ngày đi làm thực tế}$.
  • Quy tắc quản lý trạng thái tài khoản: Khi nhân viên nghỉ việc hoặc tạm nghỉ, tài khoản không bị xóa khỏi cơ sở dữ liệu mà được chuyển sang trạng thái vô hiệu hóa nhằm đảm bảo tính toàn vẹn dữ liệu lịch sử và ngăn ngừa truy cập trái phép. Mật khẩu nhân viên không được tự ý đổi mà quản lý trực tiếp quản lý và thực hiện khôi phục/thay đổi.
  • Cấu trúc thực thể dữ liệu: Hệ thống thiết kế các bảng dữ liệu gồm Khách hàng, Phiếu nhập kho, Chi tiết phiếu nhập kho, Phiếu xuất kho, Chi tiết phiếu xuất kho, Yêu cầu nhập, Dịch vụ, Hóa đơn và Nhân sự.

3. Giao diện và yêu cầu phi chức năng

  • Giao diện: Thiết kế trên WinForm bằng tiếng Việt, bố cục tinh gọn, sử dụng màu xanh da trời làm tông màu chủ đạo theo nhận diện của phòng khám Thu Thủy.
  • Bảo mật & phi chức năng: Yêu cầu xác thực tài khoản trước khi truy cập; mật khẩu đăng nhập bắt buộc có độ dài tối thiểu 8 ký tự.

Nội dung chính theo từng chương

Chương 1 – Mở đầu

Chương này trình bày lý do chọn đề tài xuất phát từ nhu cầu thực tiễn của cơ sở nha khoa Thu Thủy tại Tây Ninh. Tác giả xác định mục tiêu xây dựng phần mềm phục vụ các nghiệp vụ cơ bản, giới thiệu đối tượng, phạm vi nghiên cứu và định hướng công nghệ sử dụng nền tảng C# WinForm theo cấu trúc mô hình 3 lớp.

Chương 2: Tổng quan đề tài

Trình bày chi tiết thông tin khảo sát thực tế tại cơ sở nha khoa Thu Thủy (lịch sử hoạt động 20 năm, khung giờ phục vụ 9:00 - 19:00, đầu tư trang thiết bị 30 tỷ đồng). Nội dung chương ghi lại toàn bộ kế hoạch và biên bản phỏng vấn chuyên sâu ngày 01/03/2023 với chủ cơ sở gồm 20 câu hỏi - đáp, từ đó xác lập các yêu cầu chức năng, phi chức năng và quy trình nghiệp vụ cho 4 mảng chính: quản lý nhân sự, quản lý tiếp nhận khách hàng, quản lý kho vật tư và quản lý thống kê doanh thu.

Chương 3: Phân tích hệ thống

Tác giả phân tích và định danh 3 tác nhân hệ thống (Chủ phòng khám, Bác sĩ, Nhân viên) cùng danh mục 23 use case thành phần (ký hiệu từ UC1 đến UC23).

Mã Use Case Tên Use Case Tác nhân thực hiện Mục đích nghiệp vụ
UC1 Đăng nhập Quản lý, Nhân viên, Bác sĩ Xác thực người dùng vào hệ thống với mật khẩu $\ge 8$ ký tự
UC2 Đăng xuất Quản lý, Nhân viên, Bác sĩ Thoát phiên làm việc hiện tại
UC3 - UC9 Quản lý nhân sự Quản lý Thêm nhân sự, tạo tài khoản, chỉnh sửa thông tin, vô hiệu hóa tài khoản, khôi phục mật khẩu, đổi mật khẩu
UC10 - UC12 Quản lý kho (phía quản lý) Quản lý Xem danh sách trang thiết bị trong kho, xét duyệt các yêu cầu nhập hàng mới
UC13 - UC16 Quản lý doanh thu Quản lý Tra cứu danh sách thu, danh sách chi theo ngày/tháng/năm, in thống kê xuất ra file Excel
UC17 - UC20 Xuất nhập kho (phía nhân viên) Nhân viên Kiểm tra kho, tạo yêu cầu nhập hàng gửi quản lý, thực hiện nhập kho sau khi duyệt, lập phiếu xuất kho
UC21 - UC22 Tiếp nhận & Hóa đơn Nhân viên Ghi nhận hồ sơ khách hàng mới, lập hóa đơn thanh toán dịch vụ
UC23 Cập nhật mô tả Bác sĩ Ghi chép chẩn đoán, mô tả tình trạng răng miệng trong quá trình điều trị

Chương 4: Thiết kế yêu cầu

Đây là chương trọng tâm về kỹ thuật mô hình hóa, bao gồm:

  • Sơ đồ use case tổng quát: Trực quan hóa mối quan hệ giữa 3 tác nhân và 23 use case.
  • Đặc tả chi tiết từng use case: Xây dựng bảng đặc tả chi tiết cho từng use case gồm: Ngữ cảnh, Sự kiện kích hoạt, Mô tả, Tác nhân, Điều kiện tiên quyết, Điều kiện sau, Luồng sự kiện chính (Tác nhân - Hệ thống) và Xử lý ngoại lệ.
  • Sơ đồ tuần tự (Sequence Diagrams): Cung cấp 23 sơ đồ tuần tự (từ Hình 5 đến Hình 27) mô tả chi tiết dòng thông điệp giữa giao diện, đối tượng xử lý và cơ sở dữ liệu.
  • Thiết kế cơ sở dữ liệu: Thể hiện mô hình ERD, mô hình quan hệ và đặc tả chi tiết cấu trúc các bảng: Khách hàng, Phiếu nhập kho, Chi tiết phiếu nhập kho, Phiếu xuất kho, Chi tiết phiếu xuất kho, Yêu cầu nhập.

Chương 5: Xây dựng phần mềm

Chương này minh họa kết quả hiện thực hóa giao diện phần mềm qua 15 màn hình giao diện cụ thể (từ Hình 28 đến Hình 42):

  • Giao diện đăng nhập và phân quyền đăng xuất theo từng vai trò (Hình 28 - Hình 31).
  • Giao diện dành cho quản lý: Quản lý nhân sự, quản lý kho hàng, xét duyệt yêu cầu nhập hàng, quản lý doanh thu và màn hình xem danh sách thu chi (Hình 32 - Hình 36).
  • Giao diện dành cho nhân viên: Tiếp nhận hồ sơ khách hàng, tạo yêu cầu nhập hàng, lập phiếu nhập kho, lập phiếu xuất kho và lập hóa đơn dịch vụ (Hình 37 - Hình 41).
  • Giao diện dành cho bác sĩ: Cập nhật mô tả tình trạng và bệnh lý của bệnh nhân (Hình 42).

Chương 6: Đánh giá

Đánh giá tổng kết các kết quả đạt được của phần mềm dựa trên các yêu cầu đã khảo sát từ phòng khám Thu Thủy, xác nhận mức độ hoàn thành các tính năng quản lý theo đúng quy trình thực tế.


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

1. Kết quả chính

  • Hoàn thành đầy đủ việc phân tích, thiết kế và cài đặt hệ thống phần mềm quản lý phòng khám nha khoa đáp ứng đúng các quy trình kinh doanh tại cơ sở Thu Thủy.
  • Xây dựng thành công hệ thống phân quyền 3 cấp (Quản lý - Bác sĩ - Nhân viên) với cơ chế bảo mật tài khoản chặt chẽ.
  • Tin học hóa quy trình quản lý vật tư kho: Thiết lập cơ chế kiểm soát 2 bước đối với việc nhập hàng (nhân viên tạo đề xuất $\rightarrow$ quản lý xét duyệt $\rightarrow$ nhân viên nhập kho), ngăn chặn việc tự ý mua sắm vật tư.
  • Số hóa quy trình chấm công và tính lương tự động dựa trên mức lương ngày và số ngày nghỉ phép.
  • Hỗ trợ kết xuất báo cáo thu chi, thống kê tài chính trực tiếp ra định dạng bảng tính Excel.

2. Đóng góp thực tiễn

  • Đồ án đã giải quyết bài toán quản trị thực tế cho một phòng khám nha khoa có quy mô đầu tư lớn tại địa phương, giúp tinh gọn thời gian làm thủ tục cho khách hàng và giảm thiểu sai sót trong khâu tính toán hóa đơn, kiểm kê kho và theo dõi doanh thu.

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

Dựa trên nội dung và phạm vi nghiên cứu được trình bày trong văn bản:

  • Hạn chế: Hệ thống được phát triển dưới dạng ứng dụng đơn máy chạy trên môi trường Windows Forms cục bộ, chưa tích hợp cổng giao tiếp trực tuyến cho phép bệnh nhân tự đặt lịch hẹn hoặc tra cứu lịch sử điều trị qua Web hoặc ứng dụng di động; việc quản lý tài khoản nhân viên (đổi mật khẩu, khôi phục) phụ thuộc hoàn toàn vào tài khoản của chủ cơ sở.
  • Hướng mở rộng: Mở rộng hệ thống lên kiến trúc mạng client-server phân tán hoặc nền tảng web/cloud để quản lý chuỗi phòng khám từ xa; tích hợp thêm phân hệ tự động gửi tin nhắn nhắc lịch tái khám cho khách hàng; nâng cấp cơ chế tự phục vụ cho nhân sự trong việc quản lý thông tin cá nhân.

Giá trị tham khảo

Đồ án là tài liệu tham khảo phù hợp cho:

  • Sinh viên ngành Công nghệ thông tin và Kỹ thuật phần mềm: Cung cấp tài liệu mẫu hoàn chỉnh về phương pháp thực hiện một đồ án phân tích thiết kế hệ thống thông tin, từ khâu phỏng vấn thực tế, xây dựng use case, vẽ sơ đồ tuần tự đến đặc tả cơ sở dữ liệu và triển khai WinForm C#.
  • Người nghiên cứu xây dựng phần mềm quản lý phòng khám vừa và nhỏ: Cung cấp bảng câu hỏi khảo sát thực tế và mô hình nghiệp vụ chuẩn về quản lý vật tư, chấm công, tiếp nhận bệnh nhân và theo dõi doanh thu y tế.

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

1. Cơ chế tính lương cho nhân sự được phần mềm thiết kế như thế nào?

Theo quy trình nghiệp vụ được khảo sát tại phòng khám Thu Thủy, mỗi nhân viên khi tuyển dụng có một mức lương cố định theo ngày. Hệ thống mặc định số ngày làm việc là tổng số ngày của tháng hiện tại. Khi nhân viên nghỉ phép, quản lý cập nhật số ngày nghỉ vào phần mềm. Số ngày đi làm được tính bằng số ngày trong tháng trừ số ngày nghỉ, và tiền lương tháng được tính bằng mức lương một ngày nhân với số ngày đi làm thực tế.

2. Quy trình nhập vật tư, trang thiết bị vào kho diễn ra như thế nào?

Nhân viên kho không có quyền tự ý nhập hàng. Khi kiểm tra thấy số lượng sản phẩm/thiết bị sắp hết hoặc cần mua bổ sung, nhân viên sử dụng use case "Tạo yêu cầu nhập hàng" (UC18) để gửi thông tin (tên sản phẩm, số lượng, giá) lên hệ thống. Chủ phòng khám sẽ xem xét danh sách yêu cầu qua use case UC12 để bấm "Xác nhận" duyệt hoặc "Hủy" từ chối. Chỉ khi yêu cầu được duyệt, nhân viên mới được phép tiến hành use case "Nhập kho" (UC19) để đưa hàng vào kho.

3. Khi nhân viên nghỉ việc, dữ liệu tài khoản được hệ thống xử lý như thế nào?

Dữ liệu của nhân viên nghỉ việc sẽ không bị xóa bỏ khỏi hệ thống nhằm bảo đảm tính toàn vẹn của dữ liệu lịch sử liên quan đến các giao dịch, hóa đơn hoặc phiếu xuất nhập kho trước đó. Thay vào đó, tài khoản quản lý sẽ thực hiện use case "Vô hiệu hóa tài khoản" (UC7) để khóa quyền truy cập của nhân viên đó vào phần mềm.

4. Hệ thống phân định chức năng chính giữa 3 nhóm tài khoản ra sao?

  • Tài khoản Quản lý: Quản lý nhân sự, xem tồn kho và duyệt yêu cầu nhập hàng, theo dõi các khoản thu - chi theo ngày/tháng/năm và in thống kê doanh thu ra Excel.
  • Tài khoản Bác sĩ: Thực hiện dịch vụ khám chữa và cập nhật mô tả tình trạng bệnh lý của khách hàng vào hệ thống.
  • Tài khoản Nhân viên: Tiếp nhận khách hàng tại quầy, lập hóa đơn thanh toán dịch vụ, kiểm tra kho, tạo yêu cầu nhập và lập các phiếu xuất/nhập kho.

5. Yêu cầu phi chức năng về mật khẩu và giao diện được quy định ra sao?

Hệ thống quy định mật khẩu đăng nhập của người dùng phải có độ dài tối thiểu 8 ký tự. Về giao diện, phần mềm sử dụng ngôn ngữ hiển thị hoàn toàn bằng tiếng Việt, bố cục đơn giản, màu sắc chủ đạo là màu xanh da trời kết hợp cùng logo do cơ sở nha khoa cung cấp.


Kết luận

Đồ án "Xây dựng phần mềm quản lí nha khoa Thu Thủy" của nhóm sinh viên Lê Thị Phi Du và Nguyễn Năng Hoàng Trúc đã hoàn thành việc mô hình hóa và xây dựng phần mềm desktop hoàn chỉnh bằng ngôn ngữ C# WinForm theo kiến trúc 3 lớp. Hệ thống giải quyết hiệu quả các bài toán thực tế của cơ sở nha khoa như quản lý hồ sơ khám bệnh, phân quyền nhân sự, kiểm soát nhập xuất kho 2 bước và theo dõi thu chi tự động kết xuất Excel. Đồ án là tài liệu tham khảo có giá trị cao về mặt phương pháp luận phân tích thiết kế hệ thống thông tin ứng dụng cho các phòng khám y tế tư nhân.