健康和医疗信息项目GNU Health

LibrePlanet是自由软件社区中活跃成员发起的开发者会议,旨在促进自由软件的开发、推广和使用。近期在美国波士顿举办的LibrePlanet 2012大会上,Richard Stallman代表自由软件基金会颁发了FSF组织评选的2011年度自由软件奖项,奖项包括自由软件促进奖和社会公益项奖两个项目。

自由软件促进奖颁发给一直为促进自由软件发展而做出贡献的业界领袖,开发者所熟悉的Python之父Guido van Rossum、Perl之父Larry Wall等传奇程序员都曾是这个奖项的得主。而今年的奖项由Ruby语言作者松本行弘(Matz)获得,这是对Matz在GNU、Ruby及其他自由软件组织近20年工作的肯定。

同期颁发的年度社会公益项目奖的候选对象是为自由软件做出贡献、且能够有效服务社会的项目或团队,历届奖项得主包括Creative Commons、Wikipedia等广为人知的自由软件项目。今年该奖项的得主是GNU Health。提供健康信息和教育服务领域自由软件的NGO组织GNU Solidario的负责人,同时也是GNU Health项目的开发者Luis Falcon在会议现场接受了颁奖。

GNU Health是免费的健康和医疗信息系统,包含电子医疗病历系统(EMR)和医院信息化管理系统(HIS)、健康信息管理系统三个模块。电子医疗病历系统记录患者个人健康状况的各项数据和信息,病历数据常在健康信息中用于诊断辅助,并在不同系统间实现数据互操作;医院信息化管理系统用于提高医院各项工作的效率和质量,减轻医务人员需要处理的各类事务性工作,使其集中精力为患者提供医疗服务。在GNU Health中,具体包含的功能有患者预约管理、医疗器械管理、医疗费用计算、数据分析统计、医疗产品和服务管理、支付管理、医疗采购管理等不同的功能模块。

在技术实现方面,GNU Health使用Python语言开发,借助Tryton项目实现用户服务层、业务服务层和数据服务层(3-tiers)的整合,同时保证应用在模块化、可拓展性和安全性等方面具备良好的基础。此外,GNU Health整合了Python包索引(PyPI:Python Package Index)以便于安装和部署,使用者只需在下载应用压缩包后执行pip install命令,即可在线装载所需的运行依赖项并执行程序。在实用功能方面,GNU Health支持CalDAV 日历同步,可以将就医预约和住院治疗日历与Google 日历或Apple 设备进行同步;GNU Health提供了轻量级的远程过程调用协议JSON RPC支持;GNU Health具备增强型的处方单据和遵从最新体系的药剂分类,包含世界卫生组织WHO提供的最新药品列表,以及增强的医疗实验室模型。作为面向全球化的健康和医疗信息系统,GNU Health还提供了最新的翻译引擎,以便于实现本地化的应用。

致力于加强全世界医疗专业人士合作,改善欠发达地区的医疗信息化现状的GNU Health项目,已被联合国大学和国际健康研究所采用作为教学和研究系统。同时项目在GNU Solidario组织的推动下,已经与尼日利亚、加纳、印度尼西亚、秘鲁以及阿根廷等国的医疗组织、医生、患者建立了有效的沟通渠道,帮助其使用GNU Health项目来管理各类健康信息。

尽管获得了今年FSF颁发的社会公益项目奖,GNU Health依旧还有很多功能需要不断完善和改进。项目发起人Luis Falcon曾在邮件组中发出邀请,希望有更多的志愿者参与进来,参加文档编写、本地化翻译、Bug测试、质量保证、编码开发、新功能测试等方面的工作,帮助GNU Health项目为那些难以负担软件费用的用户,提供更好的健康和医疗信息化系统。

本文曾发表于《程序员》杂志-2012年05期“程序天下事”栏目。