查看原文
其他

如何设计可以运行20年的新一代HIS系统?

The following article is from CHIMA Author 冯火

编者按

3月28日,在HIT专家网主办的“新一代医院信息系统建设研讨会”上,与会嘉宾分享了各自对于新一代医院信息系统的理解与设想。近日,我们收到读者来稿,对“新一代医院信息系统应做到20年不做颠覆性改变”等观点提出了不同的见解。

真理越辩越明,认识越辩越清。通过不同观点的交锋、争论、融合,这种“业务大讨论”对行业发展将是非常有益的。HIT专家网愿意为此提供畅通的沟通渠道与平等的交流平台,特开辟“争鸣”栏目,广邀HIT从业人士针对业内的热点、焦点话题发表意见、展开讨论。我们声明:争鸣专栏将坚持开放原则,所有专栏文章均为作者观点,不代表本网立场。

首期话题:“20年不做颠覆性改变”的医院基础信息系统,到底能不能建成?如能,又该如何建成?

本期参与话题讨论的是广东省罗定市人民医院信息科软件工程师冯火。欢迎各位读者踊跃来稿、畅所欲言。我们期待您的精彩观点。


为了诱惑你来阅读我的文章,今天做回标题党,很高兴你能点进来。前段时间我听HIT专家网组织大佬们的网课,其中提到,设计一个20年不做颠覆性改变的系统,这个问题让我思考了良久:对啊,一个系统设计如何能扛过20年的风风雨雨?这是一个有意思的问题。
你可能和我一样,心底有一堆疑问:20年之后,为你服务的软件公司是否倒闭,你是否还在原来这家单位?20年的时间里会涌现多少新技术、发布多少医疗行业改革政策?20年之间充满了无数的变数,一个系统如何能扛过20年的时间?想到这里,是不是感觉有点天方夜谭?接下来谈谈我的想法。
未来20年什么是不变的?

亚马逊创始人兼首席执行官贝索斯在一次演讲中曾说过:“我经常被问到一个问题:未来10年,会有什么样的变化?我觉得这个问题很有意思,也很普通。但我很少被问到:未来10年,什么是不变的?”,“我认为第二个问题比第一个问题更重要,因为你需要将你的战略建立在不变的事物上”。
贝索斯的这个思路同样可以用在医疗行业上。未来20年,医疗行业有什么是不变的?为患者服务的本质不变。这个原则不管20年、30年都始终不变,我们的信息系统业务设计可以围绕这个原则展开。
顺着这个思路下来,经过这么多年的发展应用,医院信息系统的复杂程度已经非常高,我们也希望不要动不动就要推倒重来(俗称重复造轮子)。换系统的代价实在太大,我们希望保持一种长久的基本性稳定。一般HIS系统会干一件很重要的事情,就是对系统进行分层设计(俗称架构设计),将系统解耦,获得一个稳定的底层结构(20年不会颠覆改变),上层允许各种HIT应用可以做到“热插拔”。
回到医院信息系统架构上,单纯从技术角度来看,未来20年什么是不变的?要回答这个问题,首先回顾我们现有的软件架构。为了把问题简化,不考虑单机版的情况,我把现有的信息系统架构统一抽象成二层架构(C/S、B/S)和三层架构(SOA、微服务、中台),如下图所示。

二层架构

三层架构
不管是二层还是三层结构,在相当长一段时间内,“数据库”这个底层是不会变化的。所以要做到20年不做根本性改变,我个人认为:如何设计“数据库”是关键。
现实中的医院信息系统

回到现实当中,是否存在可以运行20年的系统,我只能说靠运气。有人说我们不是有HL7标准、国家标准吗,按照标准做不就可以了?HL7太复杂、落地困难,要医院完全遵循国家标准也存在困难,还有标准过多的问题,光是ICD(国际疾病分类)就有好几个版本。何况每个厂商都有一套自己的架构,互不相通,这个架构能不能跑20年是个问题,这个厂商能不能“活”20年也是个问题。既然有这样、那样的问题,你自然想到了一点解决方法:厂商将自己架构开放出来不就行了。
薛万国主任提到:封闭是当前医院信息系统发展的最大技术障碍,很多医院抱怨“被厂商绑架”的根源在于系统的封闭性;医院基础信息系统具有开放的责任与义务,有建立和遵循业务集成规范的义务,开放的内容包括:开放数据、开放事件、开放服务功能。
坦白说,要实现系统的开放,单凭厂商自觉性,比登天还难。毕竟商场如战场,换位思考,这种决策相当于“自我革命”,非常难做到,需要厂商有非凡的勇气。
“携号转网”,打破信息系统封闭

在这个章节开始之前,我先来谈一下去年工信部推出的一个政策:“携号转网”,也称为号码携带、移机不改号。也就是说一家电信运营商的用户,无需改变自己的手机号码,就能转而成为另一家电信运营商的用户,并享受其提供的各种服务。
我们生活中都有过这样的困惑,比如我是中国移动的客户,现在想换成中国电信,你会换吗?拿我个人举例,不会换。因为我的手机号码如果换了,微信要重新更换手机号码绑定,银行账号也是绑定这个手机号码,我的亲人、同事、朋友都保存了这个号码,难道挨个发短信通知,代价实在太大!移动服务再不好,也只能忍着。
现在不一样了,有了“携号转网”,我的手机号码可以不变,只是换一下运营商就行了。国家给我了“用脚投票”的权利,我上个周末去移动营业厅办理宽带续费,发现费用比去年便宜了一半,我想是不是受了“携号转网”政策的影响?作为消费者,当时心里就是一个“爽”字。
作为医院一方,我们特别害怕被厂商“绑架”。一旦采用某个厂商的产品以后,一般不轻易换系统,因为代价实在太大(这个代价好比换手机号码),尤其你的系统已经运行十年以上,除非是“忍无可忍”。为什么你那么害怕换系统?最重要的原因不在于新系统好不好用,而是怕后台数据库发生“断层”,A厂商的数据与B厂商的数据互不相通,B厂商的系统调用不到A系统的历史数据。你可能说“做接口啊”,话是没错,假如你又从B厂商换成C厂商,难道又做一次接口吗?工作量太大了。
如果允许医疗数据“携号转网”,也就是说某权威机构制定一套开源数据库表结构标准,如果厂商都遵循这套标准开发软件,医院可以无缝切换不同厂商的软件,那么用户就真正拥有了“用脚投票”的权利,也就保证了“做到20年不做颠覆性改变”可以成为大概率事件。
建立HIT新生态畅想

在这里或许你了解我要表达的意思了:只有HIT开放新生态才能做到设计20年不做颠覆性改变的信息系统。当然这只是我个人看法。
其实医院大部分的业务场景都是相近的,为避免重复造轮子,假设CHIMA成立了一个“数据库设计标准化委员会”,工作包括设计“患者主索引表结构”,如主键ID、姓名、性别、出生日期、户籍地址、现地址等;设计“挂号业务表结构”,如主键ID、患者ID、姓名、挂号医生ID、挂号医生姓名、挂号时段等;设计相关流程图、时序图等。假设A厂商、B厂商的软件都是基于这些标准来开发的,医院就可以实现“携号转网”,实现HIT应用的真正“热插拔”。
为什么要考虑表结构、流程图、时序图这么具体的问题?第一个原因是降低开发门槛,容易普及,容易到一个还未毕业的大学生就可以在学校把这些东西了解清楚了,还可以开发相应的软件。如果要实现HL7协议标准,坦白说,学习成本过高,开发难度大。第二个原因,每个人设计数据库的能力水平千差万别,表、字段的命名,范式设计都是有学问的。其实我们现在各种上报的数据接口,就是把一堆设计好表结构给到医院,为什么不给你HL7标准、让你自己看着办?原因就是以上两条。

某上报数据接口
我斗胆再从商业角度来分析这个问题。如果厂商基于“数据库设计标准化委员会”制定的标准来开发软件,相当于给用户一把刀子,随时拥有“捅你”的机会,用户离开你的时候都不会说声“再见”,因为他们是“用脚投票”的,这就会倒逼厂商必须重视售后服务,重视软件的易用性、稳定性。
还有人会说,开源的东西不安全。我觉得这完全是悖论,整个互联网的大厦都是建立在开源TCP/IP协议之上,80%的移动手机操作系统来自于开源安卓系统。为什么你敢用这些开源的东西呢?安全问题的本质是不能非法访问未授权的资源。现在已经有非常多的安全解决方案,比如在数据库设定不同的角色;进行隐私权限管理,比如手机App需要打开摄像头时,必须征询用户同意才能操作;防火墙的非法请求拦截等。这些方案的本质都是检测是否存在非法访问资源的问题。
以上来自一个普通医信工程师的思考,认知水平十分有限,不足之处,请大家指正批评!
作者简介

冯火,软件工程师,广东省罗定市人民医院信息科。

近期热文
HIT专家网∣致力推进中国卫生信息化想加入HIT专家网专业交流群吗?请添加“HIT专家网”小助手微信好友(请务必注明姓名、单位名称、职务、主管技术或产品领域等实名信息)微信订阅号:HIT180com微信服务号:chinaHIT投稿:gong_chen@hit180.com商务合作:(010)82373062

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存