公务员期刊网 论文中心 正文

医疗应用软件技术敏捷开发方法研究

医疗应用软件技术敏捷开发方法研究

【摘要】随着软件工程学科的逐渐发展,随即涌现出诸多软件开发模型与开发方法,包括现在普遍应用的敏捷软件开发方法。本文基于敏捷开发方法的优点,重点阐述了在医疗应用软件中敏捷开发方法的技术策略。

【关键词】敏捷开发方法;医疗应用软件;技术策略

1敏捷软件开发的优点

1.1高生产率及低成本

敏捷软件开发的本质就是在不增加成本的前提下开发出高质量可工作的软件。因此敏捷的价值,原则和实践定义为:通过高效完成必要的工作,按时交付高质量的软件产品,积极响应客户需求,提高软件开发的生产率。基于生产率的提高可以降低成本,因此软件开发专业技术的精髓是提高生产率和质量。

1.2更快进入市场

敏捷团队努力快速软件产品,并投入市场。敏捷团队能更快产品的原因有二:①更高的生产率能更快的开发出软件。②敏捷团队能进行增量式软件。当企业的相关权益人意识到团队可以在每个稳定版本中生产出有价值的功能时,通常会不断的已开发功能的软件版本,而不是等待所有软件功能就绪后再最终的版本。

1.3高质量

对软件工程师而言,敏捷软件开发能提高生产率的关键在于软件质量的不断提高。长期以来,软件开发的后期,软件工程师一直都在解决而且很难全面解决,通常是解决一个问题后催生出一个、甚至一堆的问题。因此,软件的质量往往成为生产率的最主要的障碍。敏捷软件开发在初始开发时,就重视软件的质量,并且控制软件的质量,并在开发的过程中,不断改进,提高软件质量。质量的提升在软件开发的整个过程持续进行。敏捷软件开发通过各种实践提高软件质量,比如测试驱动开发,重构,尽早的自动化测试。

2具体的软件技术策略

增量设计和简单设计贯穿于医疗应用软件的开发过程。开发团队的软件开发工程师都将此两种设计原则应用于日常的软件设计工作。在初始设计后,我们通过对需求的理解和研究后,选择了Jboss的JBPM作为流程引擎。随着系统开发的进行,渐渐的我们发现JBPM虽然可以自定义流程流转功能,但是需要复杂的配置,眼看这种复杂的配置越来越成为团队的沉重负担,开发团队并在后来实现流程流转功能的同时对JBPM引擎进行持续改进,使JBPM成为管理系统自有的流程引擎,极大的提高了流程跳转的业务代码编写效率。通过这个例子可知,我们在初始设计中,选择可行的JBPM引擎作为开始。开发过程中在测试驱动开发和重构的技术支持下,使用增量设计改进JBPM引擎,改进的同时保持JBPM引擎的简单性。

2.1增量设计策略

将软件设计注入于医疗应用软件的开发工作中。软件工程师致力于持续改进设计,使设计符合当前医疗发展的需求。随着对软件系统的深入理解,逐步改进软件设计,使软件设计回归到合适正确的位置,适应当前软件系统要求。软件工程师在书本上学到的总是:在编写业务代码前,将所有的设计做好,设计一旦完成,永不修改。当然,在一定程度上,这种思想是对的。因为在医疗应用软件设计中,改动成本是巨大的,而且有非常大的风险。因此,传统的软件设计过程,对软件设计的时机要求是很高的。而敏捷团队在进行医疗应用软件的设计中,致力于降低软件设计改进的成本。降低成本的手段包括:自动化测试,持续的软件设计改进,重构等。这些措施的有效实施为医疗软件的有效运行提供了坚实的保障。

2.2简单设计策略

敏捷软件开发中,“以最简单的方式实现功能”和“你并不需要它”两大口号都提倡医疗应用软件的简单设计。“你并不需要它”的口号表明,任何时候都只做仅满足现有需求的软件设计,软件设计不应该为将来有可能注意:是有可能,而不是确定的需求买单。这一点听起来简单,但是在具体的实际开发中,却很难。软件开发工程师经常都会跌入一个陷讲:将来系统可能需要这个设计(框架,主件),因此要在这边预留,也为这个将来可能用上的设计(框架,主件)进行多余代码的编写,甚至使设计变得更加复杂也在所不惜。比如,当前我们只需要Money类的add方法,我们只编写add方法,我们并不会因为考虑将来有可能会用到而编写此方法的代码。“你并不需要它”也将敏捷软件开发团队的价值最大化。敏捷团队不编写将来有可能的需求的代码,而是始终致力于完成当前迭代周期内最具价值的软件功能的代码编写,因此可以提高敏捷开发团队的经济效益。

3结语

敏捷软件开发为软件工程师增强了信心,因为它能带来高效率的软件开发,高质量的可交付软件。敏捷软件开发能确保软件工程师始终致力于最有价值的软件功能,同时能适应动荡的需求变更,它也为企业带来了很高的投资回报率。

参考文献

[1]齐书国,齐芳.基于复用的敏捷开发方法研究与应用[J].甘肃科技,2007,03:62~64.

[2]殷朝庆,胡军智,安卫东.医疗设备的管理及应用软件系统的开发[J].医疗卫生装备,2010,07:68~69+72.

作者:陈婷 单位:北京信息职业技术学院