医疗系统软件开发成功之基础——系统分析

阅读人数:0人 发表时间:2023-03-09 11:27:35

系统分析工作是软件系统项目成功的基础,对于医疗系统软件也是如此。华中科技大学同济医学院附属同济医院信息中心软件工程师吴坤就针对系统分析做了详细介绍。

1.什么是系统分析?为什么要进行系统分析?

应用软件开发过程中,系统分析是非常重要的环节。什么是系统分析,为什么要进行系统分析呢?一个企业系统中的应用软件为企业业务和管理发展提供支撑和服务,随着企业组织的快速发展,原有的应用软件系统会出现了新的问题。例如工作效率低下、流程繁琐、业务产出质量差等,企业用户对此感到难以忍受,会提出了一些新的预期。此时,就需要开展系统分析工作,找出问题原因和改进方案。系统分析是随着问题的产生以及用户对系统和业务的改造愿望而产生的,系统分析最终将产生系统问题分析说明文档等资料,这些文档资料是后续系统开发工作的设计依据和验收依据。

2.怎样进行系统分析?系统分析的方法有哪些?

系统分析最主要的目的是让软件开发人员理解软件要解决的业务问题是什么,从而确定针对这些问题的解决方案。系统分析有多种方法,比较常见的有结构化分析方法、信息工程法、面向对象分析方法和原型分析法等。

结构化分析方法是最早使用的系统分析方法之一。结构化分析方法是面向数据流进行需求分析的方法,采用自顶向下、逐层分解,建立系统的处理流程,以数据流图和数据字典为主要工具,建立系统内在的逻辑模型。

信息工程法关注系统中存储的数据结构,而不是过程,是一种以数据为中心的方法。实体关系图是信息工程法中进行数据建模的常用工具。

面向对象法不把信息系统看作数据和过程的集合,而是一组封装了数据和过程的对象。对象可以包含很多属性,创建、读取、修改和删除对象的数据的唯一方式是通过嵌入对象中的过程(或称方法)来实现,统一建模语言(UML)是面向对象系统分析方法常用的工具。

原型分析法是一种快速迭代的系统分析方法,当用户或者系统分析人员对系统缺少直观认知时,通过构建一个小规模、不完整但可以使用的实例作为原型。原型分析法的思想,主要是源于“当我看到它时,我才知道我想要什么”的思维方式。因而原先分析法更有利于用户表述自己的应用需求。

3.系统分析环节和步骤

根据系统分析的主要任务是对当前系统进行调查研究,得到当前系统的详细资料,对医疗机构内部整体业务管理状况和信息处理过程进行分析,为系统开发提供所需要的资料,并提交系统方案说明书。通常情况下,系统分析步骤包括范围定义、问题分析、需求分析、逻辑设计、决策分析等阶段。

(1)定义分析范围

系统的研发必须要有一个明确的任务目标,即明确系统应该解决哪些问题,提供哪些功能。在范围定义时,要重点关注系统所有者视图,也就是医院重要管理人员的需求和预期。

(2)理解用户要求阶段

问题分析阶段的主要任务是,充分研究和理解问题领域,了解用户的要求,并分析其中存在的问题、机会和约束条件。在医疗系统软件研发时,一般要达到两个要求:对系统范围和问题相关内容精确化;为系统定义一个工作术语表。主要包括三方面工作:研究问题领域、分析业务流程、制定系统改进目标和计划工作。

(3)需求分析阶段

用户需求分析是在分析存在的问题基础上,确定哪些是希望通过开发新的软件所要解决的问题,其目的是明确软件开发的目的和工作任务。

(4)软件逻辑设计

系统分析需要创建一个系统模型,也就是系统建模。逻辑设计阶段采用系统模型进一步记录业务需求,系统模型包含了数据结构、业务流程和用户接口等内容。逻辑设计从系统的角度,验证了需求和系统目标的正确性。关于逻辑设计,后续将撰文详细介绍。逻辑设计阶段,最终可生产一个系统业务需求陈述文档。

(5)方案选择决策阶段

关于系统问题和需求目标,可能有多个解决方案。决策分析的主要任务是,分析候选方案,并根据分析结果推荐最佳方案。在分析候选方案时,尽可能的要求系统关键确定人员(比如分管院长、业务科室主任)参与。系统分析人员向医院相关领导详细介绍和描述各方案优缺点,然后听取医院方人员建议。必要时,系统分析人员可发表指导性和建设性意见。

转载自中国医院协会信息专业委员会