来源:HIT专家网 作者: 南京都昌信息科技有限公司 袁永福
近些年来,我们都昌团队协助数百家友商完成了数千次电子病历系统交付上线,这使得我们在病历文档编辑技术领域积累了很多经验,也获悉了大量的一线业务需求,由此促进我们在病历编辑器产品开发中能够持续开展技术创新。
在此,分享一些编辑器产品近期的技术进展,以及笔者对于电子病历系统未来发展的趋势分析。
1.架构选型:B/S编辑器出货量已经超过C/S版本
我将2020年称之为“新冠元年”,世界发生重大变化,我们也一样。
新冠元年之前,在我们的编辑器正版授权出货中,C/S(PC桌面版)版本占大头。
新冠元年之后,B/S编辑器的出货量迅速攀升,现在略高于C/S版本的出货量。这说明很多医疗信息化软件公司在新项目中力推B/S系统。
电子病历编辑器是医院核心业务软件系统中的不可或缺的重要组件之一。基于我们对最终医院用户选型的统计结果,可以在一定程度上体现出全国医疗信息化行业在B/S和C/S架构选型中的变化趋势。
我们很早就预见到B/S系统的兴起,并于2018年开始研发编辑器的B/S版本。由于有了足够的提前量,因此我们遇到B/S的新潮流也没有措手不及,能够承前启后地稳定发展,并持续扩大在全国范围的影响力。
尽管有盗版泛滥、疫情封控等不利因素,我们还是在新冠元年后得到了很大的发展。
2.向前兼容性:B/S与C/S编辑器之间的稳定兼容
历史积累用得好是一个财富,用得不好是一个包袱。我们的C/S编辑器已经有着巨大的用户数量,如何让积累的历史用户能发挥正向价值,让新的B/S编辑器能很好地兼容C/S编辑器,这是一个巨大的挑战。
幸好我们在10年前开始开发编辑器底层时,就采用了文档对象模型(DOM)的软件设计架构,使用了C#开发语言。实践证明,我们选择的技术路线在10年后依然表现得很不错,特别是我们基于DOM架构实现了大量的代码重用,使得B/S编辑器和C/S编辑器之间保持了很好的兼容性。
这方面主要体现在:
(1)文件格式兼容性。B/S编辑器和C/S编辑器采用同样的文件格式,让医院大量既有病历文档能立刻应用于B/S系统中。
(2)文档样式兼容性。同一份文档在B/S和C/S中保持同样的内容排版样式,打印结果高度相似,数值表达式等动态效果也高度相似,帮助用户平滑地在C/S和B/S系统之间切换。
(3)API兼容性。B/S编辑器和C/S编辑器同享一套DOM风格的API,对于开发人员来说可以降低学习成本,方便平滑过渡到新的开发模式。
3.浏览器兼容性:不能通过指定版本来回避
B/S系统中,浏览器的兼容性是一个很大的技术难题。大多数公司通过强制用户安装指定版本的浏览器来回避这个问题,这是治标不治本的手段。
我们花费很多时间,通过前端和后端相结合的方式,在以下几个方面解决了浏览器兼容性问题:
(1)文档展示。同一份文档在不同浏览器中具有高度相同的内容展示结果和动态特性。
(2)文档打印。采用服务器端计算文档排版、客户端浏览器打印的方式,这样同一份文档在不同浏览器打印中具有完全一样的结果,而且和C/S编辑器的打印结果保持一致。客户端无需安装任何插件。
(3)前端特殊打印。提供前端特殊打印功能,可实现前端不弹窗打印、指定打印机和纸盒打印等功能。比如在门诊系统中,对于门诊病历和处方签可使用同一台打印机的不同纸盒进行打印。
(4)前端框架兼容性。友商会在开发中采用VUE、EasyUI、Angular等主流前端框架的各种历史版本,因此我们的内核采用最小化设计,使得编辑器能正常嵌入各方友商的系统而不发生冲突,并能发挥完整功能。
4.运行性能:编辑器不再成为系统的性能瓶颈
多年发展证明,我们的C/S编辑器内核性能良好、运行速度快、占用内存少。在开发B/S编辑器时,我们依然继承这个优良传统,主要表现在:
(1)服务器端运行性能。我们对软件的运行流程反复进行精细分析和改进,使用高速缓存等技术手段来避免重复计算并节省内存。通过几年持续努力,目前B/S编辑器的服务器端能在3秒钟内使用不多的内存处理完100页护理记录单文档。编辑器不再成为系统的性能瓶颈。
(2)网络传输数据量。我们采用服务器端生成HTML代码传输到客户端浏览器进行展示的方式,为此可在保证功能完备的情况下,持续进行HTML代码的精简工作,减少网络数据传输量,提高客户端操作文档的速度。
(3)浏览器内容呈现速度。HTML5技术提供了一种Canvus绘画技术,类似于Windows GDI技术,可用于绘制文档内容。我们经过实验发现,这种技术对于几页文档速度还能跟得上,但对于几十页上百页的病历文档,运行速度无法满足最低要求。因此我们还是采用HTML的形式来呈现病历文档内容。使用我们精心设计的HTML格式,即使面对上百页的大型文档,比如长期住院的护理记录单和病程记录,浏览器仍然可以轻松应对。
5.文档对比留痕:要么不做,要么就必须非常可靠
在电子病历系统中,多用户的病历文档内容留痕是刚需。我们在C/S编辑器中已经很好地实现了该功能。但根据目前掌握的前端技术,我们认为纯前端技术难以实现可靠留痕。由于病历文档可能会作为法律证据呈堂供证,因此留痕功能要么不做,要么就要做得非常可靠。丢三落四的不可靠的留痕功能会给医院管理带来隐患。
为此,我们采用服务器端进行新旧文档内容对比的方式来实现留痕功能,这比纯前端留痕可靠得多,速度也很快。留痕展示效果和C/S的保持一样。这样编辑器也为B/S电子病历系统通过高水平评级提供了一个必要非充分条件。
6.敏感数据透明加密:为病历大数据加上安全锁
在医疗信息化领域中,地面上是数百万的医护人员使用编辑器在病历文档中录入一个个字符;而在空中,是大数据中心利用编辑器产生的海量病历数据来计算着无法计算的价值。此时,数据格式开放的结构化电子病历编辑器起着“沟通天地”的作用。没有编辑器的“草蛇灰线”,就没有病历大数据的“绵延千里”。
病历大数据的一个必要配套措施就是敏感数据保护。病历含有大量诸如姓名、手机号码、住址之类的敏感字段。我们的编辑器能对这些敏感字段进行局部加密,实现零信任的安全保护。敏感信息可永久加密存储,并只有在高度可信运行环境中才能动态解密展示,将泄密的机会降到最少。这样,编辑器就为病历大数据提供了一个必要非充分条件。
7.标准模板库和标准数据元标:为结构化病历模板打下基础
我们在配合数百家医疗信息化公司交付的大量医院电子病历系统中,逐渐积累了比较全面的电子病历模板库,并集成了国家卫生健康委定义的标准数据元,包含了大量专科知识点。
作为立场中立的软件中间件供应商,我们已经使用这个模板库帮助许多合作伙伴节省工作量,加速软件系统的验收,而且能让很多基层医疗机构用上结构化病历模板。
一些观点认为,大量使用病历模板不利于低年资医生的独立思考,而且造成病历内容雷同,降低品质。但是我国医疗行业的主流观点还是推崇医疗行为同质化,而病历模板就是帮助实现同质化的必要技术手段。
8.大范围统一电子病历系统:编辑器或将成为核心抓手
近期,部分医院主管部门开始考虑通过在多家医院普及统一电子病历系统的方式来实现书同文、车同轨,从而解决诸多问题。而在实践中,强制医院使用统一电子病历系统困难重重、进展缓慢。
我们可以在这方面有所作为:经过多年努力,我们将编辑器普及到数万家医疗机构。虽然这些医院的门、急、住、护、医技等核心系统来自不同厂商,但其文本编辑器却是同一种。这样就自然而然地让不同医院、不同系统的病历文书做到“书同文”。虽然不是全面统一电子病历系统,但可以以较低的成本达到部分目标,为实现终极目标提供了宝贵的初速度,让艰难复杂的工作找到了一个核心抓手。
9.国产替代:认清趋势并积极动作
近几年,我国面临着日益强烈的科技封锁,这种封锁大概率是不可逆的。中长期来看,医院运行的诸多国外商用软件将成为风险隐患,全面国产替代将不可避免。
我们已认识到这个趋势并积极动作。首先,我们的产品没有使用任何第三方组件,完全自主研发;其次,利用开源的.NET Core技术,可将产品移植到Linux、麒麟操作系统和统信操作系统;第三,我们内部正在努力构建新的安全可信技术和服务能力,这样将能更好地配合医院在未来完成全面国产替代的工作。
任何团队的生命是有限的,而为医院服务是无限的。我们都昌团队要将有限的生命投入到无限的为医院服务中。我们将以电子病历编辑器为具体抓手,使用各种创新的软件技术手段,持续为医院信息化行业的价值最大化而努力。
【责任编辑:秦勉】
评论前必须登录!
注册