当前位置: 首页 > news >正文

【系统分析师】高分论文:论快速应用开发方法及应用

【摘要】
我在某县卫生健康委员会公共卫生信息中心工作,是信息中心的负责人。2021年5月,我中心受县痪病预防控制中心委托,为某种痪病疫苗3期临床项日开发受试对象拦截系统。我负责系统架构设计、需求分析以及后期的部分编码工作。通过与庆病预防控制中心领导、二级医院和卫生院的信息科负责人沟通后,我们认为该系统存在开发时间紧,预算不高等特点,适合采用数据流批处理的架构,采用快速应用开发方法。

快速应用开发方法将该系统分为规划阶段、设计阶段、实现阶段、系统版本迭代阶段、运行阶段等,每个阶段完成了该阶段的重要任务。系统通过多次迭代,最终顺利完成。系统运行后效果很好,得到了痪病预防控制中心随访组负责人和工作人员的高度肯定和赞扬。

【正文】
本人在某县卫生健康委员会公共卫生信息中心(以下简称“卫健委信息中心”)工作,是信息中心的负责人,主要负责整个县区卫生信息化事业的发展。2021 年5月,我县疚病预防控制中心与某大型疫苗研发企业合作,开展某种痪病疫苗的3 期临床试验项目。我中心受县庆病预防控制中心委托,为某种痪病疫苗3期临床项目开发受试对象拦截系统(以下简称“系统”)。该系统的一个关键环节是及时追踪受试对象在当地2家医院和5家乡镇卫生院的就诊情况,从而及时安排对应随访工作人员去做相应的现场随访。项目初期,疾病预防控制中心采用医院人工上报的方式追踪,效率低下且容易漏报,疾病预防控制中心领导与我中心沟通,希望可以通过信息化的手段进一步提高受试对象追踪效率。

在与族病预防控制中心领导进行面对面的沟通之后,我们获取到了一些项目的宏观要求:
(1)受试对象拦截系统最好在2周内开发完成。
(2)由于时间比较紧迫,无法使用正常的信息化项目开发流程来申请预算,所以开发预算不是特别充裕。
(3)受试对象拦截系统需要部署到2家二级医院和5家乡镇卫生院,但拦截系统使用人员指派难度铰大,所以对系统运行自动化程度要求高。

按照上述情况,我与2家二级医院和5家乡镇卫生院的信息科相关负资人讨论之后认为时间紧、预算不高的前提下,受试对象栏截系统适合采用数据流批处理的架构。系统从各家医院数据库抽取数据,然后经过转换后,保存为文件,最后将文件发送给族控中心对应负贵人。并且认为系统开发采用快速应用开发方法比较合适。

快速应用开发(RAD)是基于构件的开发方法,强调用户参与、开发或复用构件、模块化要求高。一般不适用于新技术,快速应用开发方法的基本思想为:
(1)让用户更主动地参与到系统分析、设计、构造活动中。
(2)组织召开一系列重点突出的研讨会,并让项目投资方、用户、系统分析师、设计人员和开发人员一起参与。
(3)采取迭代方式加速需求分析和设计。
(4)尽快让用户看到一个可以工作的系统。

快速应用开发方法可以分为规划、设计、实现、系统版本迭代和运行五个阶段,而设计和实现一般需要多次迭代,下面我就受试对象拦截系统的开发过程介绍如下:

一、规划阶段
规划阶段初步确定系统架构和系统开发方法之后,我与庆控中心领导沟通,组织召开了一次多方碰头会。参会人员有县庆病预防控制中心领导、县公共卫生信息中心负责人、县疾病预防控制中心信息维护员、庆病预防控制中心疫苗项目随访工作负责人、二级医院信息科科长以及乡镇卫生院信息系统工程师等。在碰头会上,我们创建了受试对象拦截系统沟通交流工作群,方便以后沟通交流。

碰头会进一步明确了业务流程,即受试对象拦截系统每天都将昨天在各家医院就诊的受试对象的就诊信息反馈到县庆病预防控制中心,痪病预防控制中心的随访人员按照信息进行相应的随访。碰头会明确了受试对象拦截系统需求:拦截2家二级医院和5家乡镇卫生院的门诊患者和住院患者:门诊患者需要提供姓名、性别、身份证号码、家庭住址、就诊日期和患者诊断;住院患者需要提供姓名、性别、身份证号码、家庭住址、入院诊断、入院日期、床号;每天上报昨天的拦截信息到痪病预防控制中心;拦截对象数据库在项目初期就已经确定,项目期间发生变动的概率很小。

二、设计阶段
该阶段依据系统需求,通过认证分析和设计,我们得到受试对象拦截系统统一采用 Python 语言进行开发,并提供以下几个重要功能:
(1)拦截人员数据库管理:由于拦截人员数据库在项目期间几乎不会发生变动,可以采用导入医院信息系统数据库的方式导入人员数据。
(2)数据抓取:可以编写 SQL 脚本从数据库抽取数据。
(3)数据清洗:编写数据清洗模块,可以依赖 Python 统计框架 Pandas。
(4)报表生成:提供“门诊患者拦截信息〞和“住院患者拦截信息〞两个报表,报表格式为“.xlsx”。
(5)报表加密:报表“xlsx”文件使用 2ip压缩,在压缩过程中使用对称密码加密,各医院和疾病预防控制中心事先沟通好使用的加密密钥。
(6)报表发送:报表压缩包使用电子邮件发送。

三、实现阶段
2家医院和 5家乡镇卫生院信息系统工程师负责编写数据抓取的 SQL脚本,卫健委信息中心负责实现数据清洗、报表生成、报表打包加密以及报表发送等模块。系统开发期间,痪病预防控制中心领导负责完成受试对象拦截系统建设的相关申请,申请书需要县卫生健康委员会领导批准并加盖县卫生健康委员会公章。

四、系统版本迭代阶段
(1)第一次系统迭代。
三天之后,乡镇卫生院受试对象拦截系统完成编码工作,我们将一周拦截数据反馈给痪病预防控制中心随访负责人,安排随访人员试用,得到如下反馈:乡镇卫生院获取到的患者数据质量不高,许多患者没有身份证号码:许多患者的住址和手机号码也缺失严重。

经过进一步研究讨论,我们按照是否有身份证号码等信息分类别处理,进一步生成“门诊患者通过身份证号码拦截信息”“门诊患者通过姓名拦截(需人工核实)”“无身份证号码门诊患者人工排查辅助工具”“住院患者通过身份证号码拦截”“住院患者通过姓名拦截(需人工核实)”无身份证号码住院患者人工排查辅助表”共6张核心报表。

(2)第二次系统迭代。
第二次系统迭代主要是提高受试对象拦截系统运行的可靠性,优化运行错误处理,便于系统在后台运行。

五、运行阶段
经过两次用户反馈和开发迭代,我们完成了乡镇卫生院受试对象拦截系统开发。通过测试后、系统进入试运行阶段,在试运行阶段,我每天人工执行一次脚本,观察是否有测试阶段未发现的异常发生,连续运行1周之后,我设置了 Linux服务,让系统任务自动运行。与此同时,我将拦截系统的相关代码通过 GitHub 共享给2家二级医院的信息科,医院信息系统工程师将代码中的 SQL 脚本替换为适合自家医院信息系统的 SQL 脚本后开始测试和手工试运行,1周之后,也采用 Linux cron 的方式自动运行。

受试对象拦截系统经过约 10天的开发,顺利完成并开始运行。由于采用快速应用开发的方式,用户参与早,反馈非常及时,整个系统比较简单,花费也非常小。系统可以较好地满足客户的实际业务需求,极大地提高了族病预防控制中心,随访效率,庆病预防控制中心随访组的工作人员对这个系统非常满意。

这次受试患者拦截系统的开发过程,让我颇有感触,并不是投资巨大的大型系统才是好系统。这次系统采用批处理的方式,无 Web 界面、无用户授权,按照与常规信息化系统比较,这个系统顶多算一个初期模型,但在系统实际使用过程中发现,很贴合业务实际需求,虽然系统本身非常简单,但发挥了极大的价值:另外一个感受就是,信息系统的价值只有在有能力的业务人员手里才能体现出来,没有人使用,系统就是一个摆设。

http://www.dtcms.com/a/354374.html

相关文章:

  • Linux初始——基础指令篇
  • Libvio 访问异常排查指南​
  • List | 常见的List实现类(ArrayList、LinkedList、Vector)以及ArrayList源码解读
  • 【Redis】数据分片机制和集群机制
  • 8.28 模拟|双指针
  • 零基础-力扣100题从易到难详解(持续更新1-10题)
  • Windows 命令行:rmdir 命令
  • Qt 6 与 Qt 5 存在的兼容性差异
  • C# 数组C# 多维数组
  • QML(2) - Qt 中如何注册一个 C++ 类到 QML
  • MySQL的类split方法实现
  • Java表格处理详解以及结合实际项目使用
  • WebStrom-如何设置前端项目快捷启动
  • 29. String, StringBuffer,StringBuilder 的区别是什么
  • 统一虚拟试穿框架OmniTry:突破服装局限,实现多品类可穿戴物品虚拟试穿无蒙版新跨越。
  • 【小白笔记】网速
  • TypeScript:完整的函数类型书写方式
  • 【开题答辩全过程】以超市管理系统为例,包含答辩的问题和答案
  • Linux 系统核心调优:CPU、磁盘 I/O、网络与内核参数实战
  • 流行蝴蝶剑高清重制版Windows10可玩!
  • 小程子找Bug之for循环的初始化表达类型
  • 【美团】放它一马
  • 今日行情明日机会——20250827
  • 即时配送运营平台系统功能分析
  • 寄存器, 堆栈, 汇编指令详解
  • 入门概念|Thymeleaf与Vue
  • 企业微信对接 代理 WXJava Ngnix映射 weixin-java-cp
  • Vue 登录页高低分辨率背景图优化实现
  • mathtype公式存在乱码
  • SqlHelper类的方法详细解读和使用示例