技术开发 频道

下一代开发模型:面向软件开发工作流

    面向工作流的开发方法 

    从软件开发方法的历史发展进程来看,随着软件产品需求和功能越来越复杂、软件程序源代码量越来越多,开发模式从一开始的过程性的开发到面向数据结构的开发,再到面向对象的软件开发,我们总是极力地去改善软件的可理解性和可维护性。仔细想想,面向对象就是最终的软件开发方法学吗?如果不是,那又是什么呢?我们说面向对象开发在一定程度上改善了软件的可理解性,但还是不能在很大程度上改善其复杂性。面向对象软件的可理解性还是基于开发人员的水平,目前的软件开发还是需要专业的程序员才能做。 

    那么,我们的开发工作流目前是一个什么样的状况呢?目前的软件开发工作流系统主要面向两个方面:一个是开发流程性业务时会用工作流,如办公自动化、财务报销流程、合同审核流程等;还有一个就是在把已经存在的各个业务系统中的业务集成中会用到。 

    其实,软件程序开发的主要部分也是一种工作流,在开发语法中有“if else、while”流程控制语言。那么,我们是否也可以把程序的开发过程作为一种流程的定制过程呢?笔者认为应该是可以的。 

    相对少的程序员开发一些公用的功能(甚至那些公用的功能也可以用图形化开发方式),然后我们在流程中设置业务过程。这时会发现我们不关心所用到的功能是哪个类的,我们只要把功能按类别分类,方便查找就可以了。我们的程序是图形化的,甚至我们的高端用户都可以加入到我们的开发流程中,我们的开发完全变成了画流程图。 

    其实这方面的工作国内已经有开发商在做尝试,BEA的开发思想中也包含了这种想法。有理由相信,在不久的将来我们的企业管理软件的开发将变得很简单,我们不需要把软件的开发分成概要设计、详细设计、编码、测试等阶段。我们在与用户沟通的过程中原型就出来了,这种原型就是软件产品。我们的软件开发人员将被解放出来跟用户沟通、分析用户的业务,变成行业或业务方面的专家。或许下一代的软件开发方法就是关于面向工作流的图形化软件开发。

0
相关文章