Tải bản đầy đủ (.pdf) (78 trang)

Trao đổi hồ sơ bệnh án điện tử giữa các bệnh viện theo chuẩn quốc tế HL7

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (3.48 MB, 78 trang )

ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ

DƯƠNG ĐÌNH TOAN

TRAO ĐỔI HỒ SƠ BỆNH ÁN ĐIỆN TỬ GIỮA CÁC
BỆNH VIỆN THEO CHUẨN QUỐC TẾ HL7

LUẬN VĂN THẠC SĨ

HÀ NỘI - 2015


ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ

DƯƠNG ĐÌNH TOAN

TRAO ĐỔI HỒ SƠ BỆNH ÁN ĐIỆN TỬ GIỮA
CÁC BỆNH VIỆN THEO CHUẨN QUỐC TẾ HL7

Ngành

: CÔNG NGHỆ THÔNG TIN

Chuyên ngành: CÔNG NGHỆ PHẦN MỀM
Mã số

: 60 48 10

LUẬN VĂN THẠC SĨ



NGƯỜI HƯỚNG DẪN KHOA HỌC: TS. Nguyễn Thị Huyền Châu

HÀ NỘI - 2015


Dương Đình Toan

Công nghệ phần mềm

LỜI CẢM ƠN
Trước tiên, tôi xin gửi lời cảm ơn chân thành nhất tới cô giáo TS. Nguyễn Thị
Huyền Châu, giảng viên Bộ môn Công Nghệ Phần Mềm – Khoa Công Nghệ Thông Tin
– Trường Đại Học Công Nghệ -ĐHQGHN. Trong thời gian học và làm luận văn tốt
nghiệp, cô đã dành nhiều thời gian quý báu và tận tình chỉ bảo, hướng dẫn tôi trong việc
nghiên cứu, thực hiện luận văn.
Tôi xin bày tỏ lòng biết ơn tới các thầy cô và các bạn học viên cùng học tập, nghiên
cứu tại khoa Công Nghệ Thông Tin, trường Đại Học Công Nghệ, ĐHQGHN đã tạo mọi
điều kiện để tôi có kết quả học tập tốt nhất trong suốt quá trình học tập.
Luận văn này có được một số kết quả nhất định đang đi vào thực tế một số bệnh
viện (hiện đang ở mức kiểm thử phòng lap), tuy nhiên không thể tránh khỏi sai sót và hạn
chế. Kính mong được sự cảm thông và đóng góp ý kiến của các thầy giáo, cô giáo và các
bạn học viên.
Cuối cùng và cũng là quan trọng nhất, tôi xin gửi lời cảm ơn tới gia đình. Nếu không
có tình yêu, sự ủng hộ và động viên từ gia đình tôi sẽ không thể hoàn thành khoá luận và
có được những kết quả như ngày hôm này.
Hà Nội, Ngày 02 Tháng 12 Năm 2015

Dương Đình Toan


i


Dương Đình Toan

Công nghệ phần mềm

LỜI CAM ĐOAN
Tôi xin cam đoan rằng, đây là kết quả nghiên cứu của tôi trong đó có sự giúp đỡ
rất lớn của thầy hướng dẫn và các đồng nghiệp ở cơ quan. Các nội dung nghiên cứu và
kết quả trong đề tài này hoàn toàn trung thực.
Trong luận văn, tôi có tham khảo đến một số tài liệu của một số tác giả đã được
liệt kê tại phần tài liệu tham khảo ở cuối luận văn.

Hà nội, tháng 12 năm 2015
Học viên thực hiện

Dương Đình Toan

ii


Dương Đình Toan

Công nghệ phần mềm

DANH MỤC HÌNH VẼ
Hình 1.1: Lịch sử phát triển HL7 [3] ..................................................................................... 4
Hình 1.2: Kiến trúc HL7 message .......................................................................................... 6
Hình 1.3: Kiến trúc HL7 – CDA [7] ...................................................................................... 8

Hình 1.4: Các nơi trên thế giới sử dụng OpenMRS, dữ liệu năm 2011 .............................. 12
Hình 1.5: Chương trình Mirch connect ................................................................................ 14
Hình 1.6: Tiện ích phần mềm MDHT [9] ............................................................................ 16
Hình 2.1: Tổng quan kiến trúc hệ thống .............................................................................. 20
Hình 2.2: Dịch vụ hệ thống .................................................................................................. 23
Hình 2.3: Mô hình trao đổi tổng thể HL7 Core.................................................................... 25
Hình 2.4: Mô hình trao đổi HSBA giữa HIS – HL7 Core ................................................... 26
Hình 2.5: Mô hình trao đổi HSBA giữa HL7 Core – HL7 Gateway ................................... 28
Hình 3.1: Biểu đồ Use Case của HL7 Core ......................................................................... 34
Hình 3.2: Biểu đồ Use case của HL7 Gateway .................................................................... 35
Hình 3.3: Biểu đồ tuần tự tổng quan .................................................................................... 36
Hình 3.4: Biểu đồ tuần tự khi login...................................................................................... 37
Hình 3.5: Biểu đồ tuần tự xem danh mục ............................................................................ 37
Hình 3.6: Biểu đồ tuần tự thêm, sửa, xóa danh mục ............................................................ 38
Hình 3.7: Biểu đồ tuần tự xem HSBA ................................................................................. 38
Hình 3.8: Biểu đồ tuần tự thêm, sửa, xóa HSBA ................................................................. 39
Hình 3.9: Biểu đồ tuần tự thêm, sửa, xóa người dùng ......................................................... 39
Hình 3.10: Biểu đồ tuần tự gửi HSBA ................................................................................. 40
Hình 3.11: Biểu đồ tuần tự nhận HSBA .............................................................................. 41
Hình 3.12: Biểu đồ lớp chương trình ................................................................................... 41
Hình 4.1: Chức năng login ................................................................................................... 59
Hình 4.2: Màn hình chính .................................................................................................... 59

iii


Dương Đình Toan

Công nghệ phần mềm


Hình 4.3: Demo chức năng chưa xử lý ................................................................................ 60
Hình 4.4: Demo chức năng đã xử lý .................................................................................... 60
Hình 4.5: Demo chức năng gửi HSBA ................................................................................ 61
Hình 4.6: Demo chức năng chờ nhận HSBA ....................................................................... 61
Hình 4.7: Demo chức năng đã nhận HSBA ......................................................................... 62
Hình 4.8: Demo chức năng xem vết trao đổi HSBA............................................................ 62
Hình 4.9: Demo chức năng xem chi tiết vết trao đổi HSBA................................................ 63

iv


Dương Đình Toan

Công nghệ phần mềm

BẢNG CHỮ CÁI VIẾT TẮT

Ký hiệu

Tiếng việt/Tiếng anh

HSBA

Hồ sơ bệnh án

KHTH

Phòng kế hoạch tổng hợp

HL7


Chuẩn HL7 - Health level seven

CDA

Chuẩn tài liệu cấu trúc - Clinical
Document Architecture

XML

Ngôn ngữ đánh dấu mở rộng - Extensible
Markup Language

UML

Ngôn ngữ mô hình hóa thống nhất Unified Modeling Language

OOAD

Mô hình phân tích nghiệp vụ hướng đối
tượng - Object Oriented Analysis and
Design

FK

Khóa chính - Primary key

PK

Khóa ngoài - Foreign key


ANSI

Viện tiêu chuẩn quốc gia Hoa Kỳ American National Standards Institute

v


Dương Đình Toan

Công nghệ phần mềm

MỤC LỤC
LỜI CẢM ƠN ............................................................................................................. i
LỜI CAM ĐOAN ...................................................................................................... ii
DANH MỤC HÌNH VẼ ........................................................................................... iii
BẢNG CHỮ CÁI VIẾT TẮT .................................................................................. iii
MỤC LỤC ................................................................................................................. vi
MỞ ĐẦU .................................................................................................................... 1
Đặt vấn đề ................................................................................................................. 1
Tóm tắt chương ......................................................................................................... 2
Chương 1: CƠ SỞ LÝ THUYẾT ............................................................................. 3
1.1. Giới thiệu chung ................................................................................................ 3
1.2. Chuẩn HL7......................................................................................................... 3
1.2.1. Lịch sử chuẩn HL7...................................................................................... 3
1.2.2. Kiến trúc chuẩn HL7 message .................................................................... 5
1.2.3. Kiến trúc chuẩn HL7 CDA ......................................................................... 8
1.3. Công nghệ hỗ trợ ............................................................................................. 11
1.3.1. Phần mềm OpenMRS. .............................................................................. 12
1.3.2. Phần mềm Mirth connect: ......................................................................... 13

1.3.3. Phần mềm Zip4j. ....................................................................................... 15
1.3.4. Phần mềm MDHT (Model driven health Tools) ...................................... 15
1.3.5. Phần mềm Hapi. ........................................................................................ 17
1.4. Tổng kết chương .............................................................................................. 17
Chương 2: PHÂN TÍCH HỆ THỐNG .................................................................. 19
2.1. Tổng quan bài toán .......................................................................................... 19
2.1.1. Yêu cầu chức năng .................................................................................... 19
2.1.2. Yêu cầu phi chức năng .............................................................................. 19
vi


Dương Đình Toan

Công nghệ phần mềm

2.1.3. Tổng quan kiến trúc .................................................................................. 20
2.2. Phân tích yêu cầu ............................................................................................. 21
2.2.1. Tầng người dùng hệ thống ........................................................................ 21
2.2.2. Tầng truy cập hệ thống ............................................................................. 22
2.2.3. Tầng ứng dụng hệ thống ........................................................................... 22
2.3. Yêu cầu hệ thống ............................................................................................. 23
2.3.1. Dịch vụ thệ thống ...................................................................................... 23
2.3.2. Yêu cầu chức năng và phi chức năng ....................................................... 24
2.4. Tổng kết chương 2 ........................................................................................... 30
Chương 3: THIẾT KẾ HỆ THỐNG ..................................................................... 31
3.1. Biểu đồ Use Case ............................................................................................. 31
3.1.1. Xác định các tác nhân ............................................................................... 31
3.1.2. Xác định các Use Case sử dụng nghiệp vụ ............................................... 32
3.1.3. Biểu đồ Use Case ...................................................................................... 33
3.2. Biểu đồ tuần tự (Sequence Diagram) ............................................................. 36

3.2.1. Biểu đồ tuần tự tổng quan ......................................................................... 36
3.2.2. Biểu đồ tuần tự các ca sử dụng ................................................................. 37
3.3. Biểu đồ lớp (Class Diagram) ........................................................................... 41
3.3.1. Giới thiệu .................................................................................................. 41
3.3.2. Xác định các lớp ....................................................................................... 41
3.3.3. Xác định các thuộc tính............................................................................. 44
3.3.4. Mô hình lớp ............................................................................................... 56
3.4. Tổng kết chương 3 ........................................................................................... 57
Chương 4: CÀI ĐẶT HỆ THỐNG ........................................................................ 58
4.1. Giới thiệu ......................................................................................................... 58
4.1. Môi trường cài đặt ........................................................................................... 58
vii


Dương Đình Toan

Công nghệ phần mềm

4.2. Demo chương trình .......................................................................................... 58
4.2.1. Gửi HSBA ................................................................................................. 58
4.2.1. Nhận HSBA .............................................................................................. 61
4.2.3. Kiểm tra vết trao đổi của HSBA ............................................................... 62
4.3. Tổng kết chương 4 ........................................................................................... 63
TỔNG KẾT .............................................................................................................. 63
TÀI LIỆU THAM KHẢO ...................................................................................... 65

viii


Dương Đình Toan


Công nghệ phần mềm

MỞ ĐẦU
Đặt vấn đề
Trong nhưng năm gần đây, với sự quan tâm đầu tư của Đảng và Chính Phủ, sự cố
gắng của các cấp, các ngành và sự nỗ lực, cố gắng không mệt mỏi của các cán bộ ngành y
tế cùng với sự quan tâm giúp đỡ của quốc tế. Ngành y tế Việt Nam đã đạt được nhiều
thành tựu trong sự nghiệp chăm sóc sức khỏe nhân dân, đóng góp thành tích không nhỏ
vào công cuộc đổi mới phát triển đất nước.
Mạng lưới y tế từ Trung ương đến tận xã ngày càng được củng cố và hoàn thiện
với 1.062 bệnh viện công lập, với 165.000 giường bệnh (theo kế hoạch) nhằm đáp ứng
nhu cầu cơ bản về khám, chữa bệnh của nhân dân. Mỗi năm hàng trăm triệu lượt bệnh
nhân điều trị ngoại trú và hàng chục triệu lượt bệnh nhân điều trị nội trú, và số lượng
bệnh nhân có xu hướng tăng theo từng năm. Các trung tâm y tế chuyên sâu ở Hà Nội,
Huế - Đà Nẵng, Tp. Hồ Chí Minh được tập trung đầu tư phát triển về cơ sở hạ tầng,
trang thiết bị, từng bước xây dựng và bồi dưỡng đội ngũ cán bộ y tế có trình độ chuyên
môn tay nghề giỏi có thể triển khai thực hiện được nhiều kỹ thuật cao ngang tầm các
nước trong khu vực như ghép tạng, phẫu thuật hở tim, can thiệp tim mạch, tách dính, hỗ
trợ sinh sản, chẩn đoán hình ảnh, vv. Các bệnh viện tỉnh cũng được đầu tư hiện đại hóa
giúp người dân được hưởng dịch vụ chất lượng cao ngay tại địa phương. Khuyến khích
phát triển mạng lưới bệnh viện tư nhân hiện đại cung cấp nhiều loại hình dịch vụ chất
lượng, đối tượng và quyền lợi của người bệnh có thẻ BHYT cũng được mở rộng. Công
tác khám chữa bệnh cho trẻ em dưới 6 tuổi, người bệnh nghèo, đối tượng chính sách
ngày càng được quan tâm, cải thiện, tạo được sự công bằng trong chăm sóc sức khỏe
nhân dân.
Tuy nhiên, bên cạnh những thành tích đã đạt được, ngành y tế nói chung và mạng
lưới khám chữa bệnh nói riêng đang phải đối mặt với nhiều khó khăn thách thức và một
số hạn chế. Đầu tư cho y tế có tăng, nhưng chưa xứng đáng với nhu cầu khám chữa
bệnh của người dân, năng lực y tế tuyến cơ sở còn hạn chế, cơ sở hạ tầng và trang thiết

bị của nhiều bệnh viện đã xuống cấp. Hiện tượng quá tải, người bệnh nằm ghép, ghép
ba tại các tuyến Trung ương như Bạch Mai, Bệnh viện Chợ Rẫy, Bệnh viện Nhi Trung
ương, …, là khá phổ biến, và kéo dài nhiều năm gây ảnh hưởng tới chất lượng điều trị
và chăm sóc người bệnh.
Hầu hết các cơ sở y tế đã đưa vào sử dụng các phần ứng dụng như: quản lý nhân
sự, vật tư – tài chính, quản lý công văn… Do tính cấp bách của ứng dụng CNTT y tế
1


Dương Đình Toan

Công nghệ phần mềm

nên ngành đã chủ động tổ chức, hỗ trợ để các nhà cung cấp dịch vụ tin học xây dựng
các phần mềm chuyên biệt trong một số lĩnh vực như quản lý bệnh viện, quản lý trang
thiết bị… Bộ y tế đã cho sử dụng một số chuẩn quốc tế làm cơ sở xây dựng phần mềm
ứng dụng…
Tuy nhiên, việc đầu tư cho CNTT y tế còn manh mún, dàn trải, thiếu các dự án
độc lập; Thiết kế tổng thể ứng dụng CNTT của các cơ sở y tế còn thiếu và hoặc chất
lượng không cao; Nhân lực chuyên môn về CNTT tại các cơ sở y tế và các đơn vị y tế
còn thiếu, mất cân đối, tự phát. Đây được coi là điểm yếu rất cơ bản, cần sớm khắc
phục…
Thực trạng hiện nay sự phát triển và ứng dụng tin học trong y tế nước ta vẫn còn
thấp so với mặt bằng chung của thế giới và trong khu vực. Việc ứng dụng tin học tại các
bệnh viện vẫn mang tính tự phát, manh mún, chưa có hệ thống, tính đồng bộ. Số lượng
các đơn vị bệnh viện ứng dụng tin học thành công trong công tác quản lý và khám chữa
bệnh vẫn còn rất ít. Thường tập trung ở các bệnh viện lớn hoặc bệnh viện tư nhân. Bên
cạnh đó, do sự phát triển thiếu đồng bộ và thiếu sự quan tâm đến các tiêu chuẩn, nên hệ
thống phần mềm của các bệnh viện vẫn chưa kết nối, và chia sẻ dữ liệu/thông tin được
với nhau.

Do vậy, vấn đề đặt ra hang đầu hiện nay với ngành y tế tại Việt Nam là vấn đề chuẩn
hóa hệ thống thông tin y tế, đặc biệt trong công tác quản lý và khám chữa bệnh. Với hiện
trạng phân tích như trên, luận văn thấy từ thực tiễn bản thân, trực tiếp làm tin học trong
ngành y tế, Tôi đưa ra đề tài luận văn: “Trao đổi Hồ Sơ Bệnh Án giữa các bệnh viện theo
chuẩn quốc tế HL7”.
Tóm tắt chương
 Chương 1: Các cơ sở lý thuyết để xây dựng lên các chương trình cho hệ thống
trong luận văn này như chuẩn HL7, các công nghệ xây dựng chương trình.
 Chương 2: Phân tích kiến trúc để xây dựng lên hệ thông gồm các thành phần,
các tầng liên kết nhau để làm lên một hệ thống.
 Chương 3: Thiết kế để xây dựng lên chương trình phần mềm cho hệ thống
luận văn.
 Chương 4: Chương trình demo mà tôi đã xây dựng xong.

2


Dương Đình Toan

Công nghệ phần mềm

Chương 1: CƠ SỞ LÝ THUYẾT
1.1. Giới thiệu chung
Hệ thống là một hệ thống lớn kết hợp giữa các bệnh viện với nhau, liết kết với nhau
theo thông qua HSBA định dạng theo chuẩn HL7. Vì vậy, hệ thống là sự liên kết giữa các
chương trình với nhau đặt cài đặt tại mỗi bệnh viện. Do đó, để xây dựng nên chương trình
này tôi đã áp dụng các vấn đề đề sau:
 Cơ sở lý thuyết: đó là chuẩn quốc tế HL7, chuẩn quốc tế về y tế cho các Hồ
Sơ Bệnh Án.
 Công nghệ xây dựng chương trình: công nghệ áp dụng ở đây là OpenMRS,

Mirth connect, Zip4j, Hapy, MDHT.
1.2. Chuẩn HL7
Hiện nay, trên thế giới để đặc tả Hồ Sơ Bệnh Án thì đã có chuẩn HL7 đã đặc tả rất
chi tiết, hoàn thiện. Trong chuẩn HL7 thì có 2 chuẩn cơ bản là chuẩn HL7 message và
Chuẩn HL7- CDA.
1.2.1. Lịch sử chuẩn HL7
1.2.1.1. Lịch sử chuẩn HL7 message
Với mục đích cung cấp một quy định chuẩn chung cho việc trao đổi, quản lý
và tổng hợp dữ liệu y tế, quản lý các dịch vụ chăm sóc sức khỏe, bằng cách định nghĩa
ra một giao thức giữa các hệ thống thông tin y tế khác nhau, tháng 10 năm 1987,
tổ chức Health Level 7 đã xây dựng nên một chuẩn riêng cho hệ thống thông tin
bệnh viện và trở thành phiên bản đầu tiên. Tới năm 1994, chuẩn này đã được ANSI
chính thức công nhận [ Cũng từ đó, các phiên bản
HL7 v.2 và v.3 lần lượt ra đời, được cập nhật và phát triển rộng khắp.

3


Dương Đình Toan

Công nghệ phần mềm

Hình 1.1: Lịch sử phát triển HL7 [3]
Các phiên bản
Phiên bản 1.0:
Chuẩn dự thảo phiên bản 1.0 được đưa ra vào tháng 10 năm 1987. Chuẩn
được dùng để trao đổi, hỗ trợ chăm sóc bệnh nhân, quản lý, chuyển giao và đánh giá
các dịch vụ chăn sóc sức khỏe khác. Đặc biệt chuẩn đã cho phép hỗ trợ các dịch vụ
đòi hỏi có sự trao đổi giữa các hệ thống.
Phiên bản 2.x:

Nguyên mẫu của phiên bản 2 được chuẩn bị từ sau phiên bản 1.0 và được
giới thiệu lần đầu tiên năm 1988, gồm các phiên bản 2.0 (năm 1988), 2.1
(năm1990), 2.2 (năm 1994), 2.3 (năm 1997), 2.3.1 (năm 1999), 2.4 (năm 2001) và
2.5 (năm 2003).
Phiên bản HL7 v2.x khá đơn giản và thuần túy là chuẩn trao đổi bản tin: bản
tin ADT; văn bản quản trị bệnh nhân; báo cáo y tế; tài chính, dịch vụ chăm sóc
bệnh nhân,… HL7 v2.5 có thêm những nâng cấp để hỗ trợ tính pháp lý, các cải
tiến cho phép liên kết quốc tế để tận dụng hết thế mạnh của chuẩn giao tiếp.
4


Dương Đình Toan

Công nghệ phần mềm

1.2.1.2. Lịch sử chuẩn HL7 CDA
Chuẩn tài liệu lâm sàng - HL7 CDA là chuẩn tài liệu có cấu trúc. Thông qua chuẩn
tài liệu này, sẽ chỉ rõ cho cơ quan quản lý, các cơ sở y tế, các nhà thiết kế phần mềm, phần
cứng về tính cấu trúc "Structure" và tính ngữ nghĩa "Semantic" của một tài liệu lâm sàng.
Với mục đích hỗ trợ việc trao đổi thông tin giữa các cơ sở y tế, các tổ chức cơ quan liên
quan được thuận tiện và chính xác trên môi trường truyền thông rất đa dạng và phong phú
hiện nay. Phiên bản CDA Release 1 hay còn gọi (ANSI/HL7 CDA R1.0), được thông qua
và công nhận là chuẩn Quốc tế vào tháng 11 năm 2000. Phiên bản CDA Release 2 (CDA
R2) được thông qua tháng 05 năm 2005 bởi American National Standards Institute/ Health
Level Seven International (ANSI/HL7). Với sự tân tiến về thiết kế của phiên bản CDA R2,
cùng với việc cập nhật các kiểu dữ liệu (Data type), loại bỏ, bổ sung một số thuộc tính
(Header Attribute và Section Attribute), sự gắn kết chặt chẽ với mô hình HL7 Reference
Information Model (RIM) trong quá trình phát sinh và hình thành tài liệu, sự cho phép
tham chiếu và sử dụng các bộ mã tương thích với chuẩn của HL7 (như: chuẩn LOINC,
chuẩn SMOMED-CT và ICD 10), sự thay đổi các từ vựng trong nhóm CNE (Code No

Extended) và việc bổ sung nhóm từ vựng trong CNE từ nhóm CWE (Code With
Extended) đã làm cho CDA R2 có những tính năng mạnh hơn rất nhiều so với phiên bản
trước và đồng thời tính ngữ nghĩa trong tài liệu lâm sàng đã được thể hiện một cách rõ nét
hơn. Trong khuôn khổ cuốn sách này chúng tôi sẽ tập trung giới thiệu về chuẩn tài liệu
lâm sàng CDA R2 và trong phần trình bày chúng tôi sử dụng thuật ngữ CDA để chỉ tài liệu
CDA R2 thay cho việc ghi đầy đủ tên tài liệu. Bên cạnh đó các kiến thức được đề cập có
sẽ liên quan tới: tài liệu XML, thiết kế Style Sheet, chuẩn LOINC, chuẩn mã định danh
OIDs, chuẩn SNOMED CT, chuẩn ICD 10, chuẩn giao thức truyền tin LLP (Lower Layer
Protocol) và các kỹ thuật lập trình JAVA hỗ trợ xử lý tài liệu XML nói chung và kỹ thuật
xử lý cho tài liệu CDA nói riêng.

1.2.2. Kiến trúc chuẩn HL7 message
Từ giới thiệu về chuẩn HL7 trên, thì tổ chức HL7 đã định nghĩa ra 92 loại bản tin
và khoảng hơn 300 loại sự kiện, mỗi bản tin gồm các đoạn bản tin hoặc nhóm đoạn bản
tin tạo thành, đoạn bản tin lại được cấu thành từ các trường. Có thể tóm lược như
trên hình dưới:

5


Dương Đình Toan

Công nghệ phần mềm

BẢN TIN(Ví dụ: ADT,CRM,OML…)

CÁC NHÓM ĐOẠN TIN

ĐOẠN TIN(Ví dụ: MSH, PID. EVN…)


LOẠI DỮ LIỆU ( Ví dụ:ST,EI, CQ…)

CÁC THÀNH PHẦN CON

Hình 1.2: Kiến trúc HL7 message
1.2.2.1 Đặc tả chi tiết
Từ hình vẽ trên, ta đặc tả như sau:
Bản tin: Mỗi bản tin bao gồm một nhóm các đoạn bản tin được xắp xếp
theo thứ tự đã định nghĩa bởi tổ chức HL7. Ví dụ, ADT – là bản tin về thông tin
bệnh nhân; PRE – là bản tin liên quan đến thuốc và mã hóa thuốc; BRA – là bản tin
liên quan đến tài chính.
Đoạn bản tin: Mỗi segment trong bản tin là một nhóm logic các trường
dữ liệu. Trong bản tin HL7 có những đoạn bắt buộc và có những đoạn tùy
chọn. Mỗi segment sẽ được đặt tên và xác định bằng ID của segment đó. Ví
dụ, bản tin ADT chứa các đoạn: MSH – đoạn header (xác định địa chỉ nguồn, địa chỉ
đích và những thông tin liên quan tới bản tin); EVN – đoạn loại sự kiện (xác định
loại sự kiện là nhập viện, chuyển viện hay xuất viện, thanh toán tài chính,…); PID –
đoạn mã bệnh nhân...
Các trường: Mỗi trường là một chuỗi các ký tự và nó được xác định bằng
đoạn mà nó nằm trong đó và vị trí của nó trong đoạn. Ví dụ, PID-5 là trường thứ 5 trong
đoạn mã bệnh nhân; mỗi trường lại chứa các thành phần con.

6


Dương Đình Toan

Công nghệ phần mềm

Loại dữ liệu: Loại dữ liệu giới hạn nội dung và định dạng của trường

dữ liệu, một số loại dữ liệu là mã hoặc là kết hợp của các loại dữ liệu khác.
1.2.2.2. Nguyên tắc mã hóa trong HL7
Khuôn dạng bản tin quy định theo nguyên tắc mã hóa của HL7 gồm các
trường dữ liệu, các trường này có độ dài thay đổi và được ngăn cách bởi một ký tự ngăn
cách trường. Các nguyên tắc mô tả cách mã hóa của các kiểu dữ liệu trong một trường
được quy định riêng. Các trường dữ liệu được kết hợp lại thành các nhóm logic
được gọi là các đoạn. Các đoạn được ngăn cách bởi các ký tự phân đoạn. Mỗi đoạn
bắt đầu với một giá trị chữ 3 ký tự, giá trị này được nhận dạng trong một bản tin.
Các đoạn có thể là bắt buộc phải có, hoặc tùy chọn, hoặc lặp lại tùy thuộc vào cấu
trúc bản tin.
Bộ ký tự hiển thị mã ASCII (gồm các giá trị hexa trong khoảng 20 đến 7E) là bộ
ký tự mặc định để biểu diễn các bản tin HL7.
Sự kiện A01 được dùng trong trường hợp bệnh nhân nhập viện. Sự kiện này
được nhập từ hệ thống nhập viện và được gửi tới các khoa/phòngliên quan như:
khoa dược, phòng y tá, phòng tài chính, khoa xét nghiệm, khoa chẩn đoán…
Với bản tin này, cấu trúc của nó cơ bản như sau (chú ý là không bắt buộc tất cả
các thành phần của trường đều phải có.
Ví dụ: bản tin mã hóa theo chuẩn HL7 v2.5 (sự kiện ADT^A01 – bệnh nhân
nhập viện) như sau:
MSH||STORE|MISSION|MINE|LAUREL|199801181007|security|ADT|MSG00201|||R>
EVN|01|199801181005||<CR>
PID|||PATID1234567||Doe^John^B^II||19470701|M||C|371 MAIN AVE^SAN
FRANCISCO^CA^94122-0619||45-681-2888||||||||<CR>
NK1||Doe^Linda^E|wife|<CR>
PV1||I|100^345^01||||00135^SMITH^WILLIAM^K|||SUR|ADM|<CR>
Bản tin được dịch là: Bệnh nhân John B. Doe, II, mã bệnh nhân là
1234567, nam giới, da trắng, sinh ngày 1 tháng 7 năm 1947, sống tại 371
Avenue- Sanfrancisco, nhập viện ngày 18 tháng 1 năm 1998 lúc 10 giờ 05 phút sáng,
được bác sỹ William K.Smith xét nghiệm và điều trị. Bệnh nhân được chỉ định

7


Dương Đình Toan

Công nghệ phần mềm

nằm viện tại giường số 01, phòng 345, tổ chăm sóc 100. Phần thân nhân có vợ là
Linda E.Doe. Ứng dụng gửi là Store, bản tin được gửi từ Mission tới ứng dụng nhận
là Mine sau khi bệnh nhân nhập viện 2 phút.

1.2.3. Kiến trúc chuẩn HL7 CDA
1.2.3.1 Tổng quan về kiến trúc HL7 CDA
Trong hệ thống HL7, sử dụng CDA (Clinical Document Architecture) là cấu trúc để
trao đổi HSBA. Sau đây là cấu trúc chung của CDA:

Hình 1.3: Kiến trúc HL7 – CDA [7]
CDA được tổ chức dưới dạng file XML. Được trích xuất từ mô hình HL7's
central Reference Information Model (RIM), do vậy có khả năng sử dụng lại dữ liệu
đối với các labo, nhà thuốc … Đặc tả CDA rất trực quan và có khả năng linh hoạt cao
giúp dễ dàng hiện thực hóa đối với các hệ thống phần mềm.
Về cơ bản, các thành phần chính của một tài liệu CDA bao gồm:phần Header và
Body. Trong đó phần Body chứa các Sections thông tin riêng biệt. Một section chứa
một khối diễn giải và từ 0 đến nhiều các Entry. (Entry: chứa nội dung hồ sơ y tế).
8


Dương Đình Toan

Công nghệ phần mềm


1.2.3.2 Cấu trúc Header
Phần header của tài liệu được dùng để lưu trữ các thông tin phục vụ việc trao đổi tài
liệu lâm sàng giữa các cơ quan tổ chức, ngoài ra thông tin trong phần này còn được dùng
phục vụ trong công tác quản lý hồ sơ tài liệu CDA và được dùng để làm căn cứ cập nhật
thông tin cho hồ sơ bệnh án điện tử suốt đời cho một bệnh nhân. Một tài liệu CDA được
đặt trong tag gốc <ClinicalDocument> và </ClinicalDocument>, khi đó phần Header
được định làm phần nằm giữa từ tag <ClinicalDocument> và tag <structuredBody>,
phần thể hiện cấu trúc body của tài liệu được xác định làm phần còn lại của tài liệu (từ tag
<structuredBody> đến </ClinicalDocument>).
Các thuộc tính trong Header:
S

Chức năng

Tên thuộc tính

TT
1ClinicalDocument.id

Lưu mã (ID) tài liệu

2ClinicalDocument.code

Lưu mã loại tài liệu cần trao đổi – mã
này được xác định qua chuẩn LOINC

3ClinicalDocument.title

Tiêu đề của tài liệu


4ClinicalDocument.effectiveTime

Thời gian tạo tài liệu

5ClinicalDocument.ConfidentialityCode

Xác định tính bảo mật tài liệu, tính chất
này được thể hiện qua 3 mức:
- N (normal) (codeSystem
2.16.840.1.113883.5.25);
- R (restricted) (codeSystem
2.16.840.1.113883.5.25);
- V (very restricted) (codeSystem
2.16.840.1.113883.5.25)

6ClinicalDocument.languageCode

Mã ngôn ngữ được thể hiện trên Web
browser, mã này được quy định qua
chuẩn: IETF (Internet Engineering Task
Force) RFC 3066.

7ClinicalDocument.setId

Lưu mã tài liệu trong quá trình trao đổi,
nếu cùng một tài liệu nếu nội dung có
thay đổi như: cập nhật, sử đổi thì mã
này sẽ được sinh mới.
9



Dương Đình Toan

Công nghệ phần mềm

8ClinicalDocument.versionNumber

Lưu phiên bản của tài liệu – là số
nguyên

9ClinicalDocument.copyTime
(Deprecated)

Lưu thời gian copy tài liệu hoặc thời
gian tài liệu được gửi từ người gửi sang
người nhận.

1.2.3.3. Cấu trúc Body
Với CDA body, ta có thể tùy chọn 1 trong 2 cách để triển khai biểu diễn thông tin:
thông tin không cấu trúc (NonXMLBody) và thông tin có cấu trúc (StructuredBody) . Mỗi
tài liệu CDA sẽ có duy nhất một Body, liên kết với ClinicalDocument class thông qua liên
kết component, chức năng của 2 class được diễn giải như sau:
S

Tên lớp

Chức năng

Ghi chú


TT
1NonXMLBody

Mô tả các dạng thông tin trong body,
được trình bày bởi các định dạng ngoài
định dạng XML

2StructuredBody Mô tả thông tin trong phần body, bao gồm
những thông tin được trình bày bởi 1 hay
nhiều section, có cấu trúc. Các thông tin
này được mô tả thông qua ngôn ngữ
XML.
Các thuộc tính thành phần section:
STên thuộc tính

Chức năng

Ghi chú

TT
1Section.id

Thông tin dùng để phân biệt giữa các
phần trong tài liệu

2Section.code

Mã dùng để phân biệt giữa các nội dung Dùng mà LOINC
trong từng section trong tài liệu


3Section.title

Lưu phần thông chung cho section

4Section.text

Lưu trữ thông tin sẽ được chuyển tải tới Trường này có thể
người nhận dưới dạng văn bản text
dùng để lưu thông
tin khi hỏi và thăm
khám người bệnh
10


Dương Đình Toan

Công nghệ phần mềm
hàng ngày hoặc kết
quả hội chẩn.

5Section.confiden Mã dùng trong bảo mật thông tin trong
tialityCode
cung cấp thông tin
6Section.languag
eCode

Mã ngôn ngữ thể hiện thông tin trên trình Sử dụng mã IETF
duyệt Web


1.3. Công nghệ hỗ trợ
Để xây dựng lên hệ thống, thì việc đầu tiên ta phải quan tâm các phần mềm mã
nguồn mở hỗ trợ chuẩn HL7. Vì vậy, tôi đã tìm ra các phần mềm để đáp ứng với hệ thống
này như sau:
 Phần mềm OpenMRS: nền tảng xây dựng chương trình trao đổi HSBA điện tử
theo chuẩn HL7.
 Phần mềm Mirth connect: Dùng để vận chuyển HSBA giữa các bệnh viện với
nhau.
 Phần mềm Zip4j: Dùng để nén HSBA và các file đính kèm như file ảnh xét
nghiệm.thành một file nén.
 Phần mềm MDHT: Chứa thư viện hỗ trợ HSBA tạo ra định dạng HL7 – CDA.
 Phần mền Hapy: Chứa thư viện hỗ trợ HSBA tạo ra định dạng HL7 –
Message.

11


Dương Đình Toan

Công nghệ phần mềm

1.3.1. Phần mềm OpenMRS

Hình 1.4: Các nơi trên thế giới sử dụng OpenMRS, dữ liệu năm 2011
OpenMRS là một hệ thống hồ sơ y tế điện tử, được thiết kế sử dụng trên thế giới và
được thiết lập lần đầu năm 2004. Ngày ngay, hệ thống được phát triển thành một nền tảng
tin học y tế sử dụng mọi lục địa hỗ trợ chăm sóc sức khỏe và nghiên cứu trong rất nhiều
hoàn cảnh khác nhau.
Ban đầu, OpenMRS có nền tảng là các nguyên tắc mở và chia sẻ ý tưởng, phần
mềm, chiến lược cho việc triển khai và sử dụng. Hệ thống được thiết kế và sử dụng

trong các môi trường thiếu tài nguyên và có thể được điều chỉnh bằng việc thêm các
mục dữ liệu mới, biểu mẫu, báo cáo mà không cần viết mã ứng dụng phức tạp. Nó
phát triển như một nền tảng cho các tổ chức sử dụng và điều chỉnh, tránh việc phải xây
dựng hệ thống từ đầu.
OpenMRS ngày nay đang được dùng tại nhiều nước trên thế giới như Argentina, Ấn
Độ, Indonesia, Hoa Kỳ, Zanzibar…
Nhận xét về OpenMRS:
Với hệ thống này, tôi sử dụng phần mềm OpenMRS với lý do sau:

12


Dương Đình Toan

Công nghệ phần mềm

 OpenMRS là chương trình mã nguồn mở, được sử dụng rất nhiều nơi trên thế
giới đã giúp cho hệ thống trong vấn đề chi phí xây dựng hệ thống, dễ tích hợp
với các hệ thống trên thế giới đã sử dụng OpenMRS.
 OpenMRS là một chương trình y tế vê Web đã tích hợp rất nhiều nghiệp vụ về
y tế, chuẩn HL7, các vấn đề công nghệ khác.

1.3.2. Phần mềm Mirth connect
Mirth Connect là bộ công cụ tích hợp trong các hệ thống thông tin y tế, được
đặc biệt thiết kế cho việc tích hợp tin nhắn HL7. Nó cung cấp các bộ công cụ cần thiết
cho việc thiết lập, kiểm tra, triển khai và giám sát các giao diện. Và vì là nguồn mở, người
sử dụng có thể có tất cả các những lợi thế về việc hỗ trợ từ cộng đồng người dùng rộng
lớn với chất lượng như một sản phẩm thương mại.
1.3.2.1 Tiện ích phần mềm Mirth Connect
Phần mềm Mirth Connect có khả năng sau:

 Kết nối tới bất kỳ hệ thống nào qua các giao thức bất kỳ
Mirth connect hỗ trợ nhiều giao thức chuyển gói tin sử dụng trong lĩnh vực y tế
như: TCP/IP, HTTP, dịch vụ web (SOAP), cơ sở dữ liệu, hệ thống tập tin, email,
FTP, DICOM, PDF, RTF.
 Dễ chuyển đổi, lọc và chuyển dữ liệu
Mirth connect hỗ trợ nhiều định dạng dữ liệu và các tiêu chuẩn quốc tế HL7 như
HL7 version 2.x, HL7 version 3, CDA, CCD, XML, CCR, NCPDP, DICOM.
 Tạo nhanh các giao diện bằng chức năng kéo – thả kịch bản
Mẫu của Mirth Connect hướng theo phương pháp tiếp cận tạo giao diện, nó cho
phép xác định loại thông điệp người sử dụng sẽ nhận hay gửi và sau đó tạo các ánh xạ
và chuyển đổi dùng phương pháp kéo thả qua ứng dụng.

13


Dương Đình Toan

Công nghệ phần mềm

Hình 1.5: Chương trình Mirch connect
Mirth Connect bao gồm các cơ sở dữ liệu đã nhúng và cho phép người sử dụng tải
lên và chạy nhanh hơn. Khi đã sẵn sàng sản xuất, người sử dụng có thể lưu các cấu
hình và dữ liệu thông điệp trong PostgreSQL, Microsoft SQL Server, Oracle hay
MySQL

1.3.2.2. Nhận xét
Để chuyển HSBA giữa các bệnh viện trong hệ thống này, thì Mirth connect có rất
nhiều ưu điểm hơn so với các phần mềm khác đó là:
 Mirth connect là phần mềm mã nguồn mở, giúp ta phát triển hệ thống giảm kinh phí
khi xây dựng.

 Mirch connect cũng đã hỗ trợ tất nhiều các đặc tính nghiệp vụ y tế như hỗ trợ các
chuẩn HL7, HL7 CDA, DICOM.. giúp ta không phải đắn đo trong việc xây dựng
trong hệ thống y tế này.
 Mirth connect là phần mềm đơn giản cho người phát triển, giúp người phát triển
không mất nhiều thời gian tìm hiểu nghiên cứu, dễ cài đặt.

14


Dương Đình Toan

Công nghệ phần mềm

1.3.3. Phần mềm Zip4j
Zip4j là một thư viện phần mềm mã nguồn mở cung cấp các tính năng quản lý và
nén các tệp tin cho nền tảng công nghệ Java.
1.3.3.1. Tiện ích phần mềm
Zip4j có các tính năng sau:
-

Tạo, thêm, Trích xuất, cập nhật, loại bỏ các tập tin từ một tập tin Zip.

-

Đọc, tạo các tệp tin nén được bảo vệ bằng mật khẩu.

-

Hỗ trợ chuẩn mã hoá AES 128/256.


-

Hỗ trợ chuẩn mã hoá Zip.

-

Hỗ trợ định dạng Zip64.

-

Hỗ trợ Store (không nén) và phương pháp nén Deflate.

-

Tạo hoặc trích xuất các tập tin từ các tập tin ZipSplit (Ví dụ: Z01,zip).

-

Hộ trợ các tên tệp Unicode.

1.3.3.2. Nhận xét về phần mềm
Zip4j là bộ gói thư viện mã nguồn mở trong nền tảng java, giúp ta nén lại dữ liệu
file của HSBA trước khi được chuyển đi. Cụ thể trong hệ thống này, zip4j giúp hệ thống
nến gói file trong việc trao đổi HSBA như HSBA, file ảnh xét nghiệm, file DICOM.

1.3.4. Phần mềm MDHT (Model driven health Tools)
Công cụ Y tế Mở MDHT là kết quả của việc sử dụng rộng rãi phần mềm nguồn
mở để thúc đẩy khả năng tương tác trong hạ tầng y tế. Dự án khuyến khích chia sẻ các
tài liệu thuyết minh giữa các tổ chức phát triển tiêu chuẩn và các tiêu chuẩn y tế liên
quan, xây dựng các thông số kỹ thuật nội bộ. MDHT cũng cung cấp một khung mô

hình phổ biến và các công cụ hỗ trợ việc tích hợp liên tục các thiết kế, xuất bản và tạo
thời gian chạy tài liệu thuyết minh.

15


×