软件工业走过作坊时代
多年来,人们仅将软件局限在应用工具的狭小区域,这种片面的理解致使人们很难联想起大规模的软件工业。因而,软件开发往往与编写程序等同起来,而调研分析、建模、测试、部署和全局管理等工作却被忽略。
对任务认识的片面性也体现在对软件开发角色的划分上,程序编写者(开发人员)是主力军,代表了一切。如此以来,在开发工作中就呈现“独木难支”的局面。
时过境迁,今天的IT环境、业务对软件的要求、软件的应用规模等都发生了巨大变化。由此促使软件开发模式也发生了质的变化:软件开发不再崇尚“个人英雄主义”,无组织的、小规模的“作坊式”开发模式难以适应基于架构体系的软件开发需求。
控制软件开发中的风险,摆脱作坊式软件开发模式的束缚,人们需要思考这样一些问题:
1、如何将先进的管理理念用于软件开发,以有效地管理软件项目,降低开发风险?
2、如何在加强知识和经验共享的基础上,通过协同来提高软件的品质?
3、如何协调跨平台开发工作的有序进行?
可见,今天的软件开发已不单是一种技术或工具的应用,抑或一种灵感的迸发。资源的调配、协作的布局、流程的设置在软件开发中占据越来越重要的地位。技术、工具、人和管理方法以开发对象为核心,要达到水乳交融的境界。
在潜心经营软件开发工具多年后,IBM Rational力求通过整合将软件开发的要素粘合在一起,提供一种功能强大的平台,促进软件工艺的发展。
整合铸造工艺平台
虽然在作坊式的软件开发中人们也应用一些零星的管理知识来管理开发工作,但其效果并不尽如人意,而且种种弊端在大软件工业的背景下频频暴露。除了管理体系不够健全外,没有将人员和管理方法融合到开发项目中来、致使开发流程支零破碎是致命伤。
IBM Rational所倡导的整合开发平台,是要将与软件开发相关的所有人员凝聚在一起,通过一套整合的流程和全面的质量控制机制,形成一个功能强大的开发平台。
高品质软件是多道工序锤炼的结果,创造高品质软件的开发平台必须整合完成所有这些工序的角色,以使其倾力协作。角色的整合建立在清晰的角色定位之上,从开发实践中IBM Rational定义了项目经理、系统分析人员、架构设计师、开发人员、测试人员、部署人员六大角色,他们的工作环环相扣,形成一个缺一不可的团体,每一个角色都能在开发平台上找到自己的位置,并能获取适合自己的工具。
开发流程无缝连接
如何让开发工作沿着清晰的思路有序地进行,而先前积累的经验、可复用的组件能被当作公共的财富加以利用?如何将科学的管理方法与工具整合起来,以规避软件开发中的风险?这些在IBM Rational所倡导的统一开发流程(RUP,IBM Rational Unified Process)中已有明确的答案。
RUP在将开发流程进行端到端对接的基础上,将开发过程中积累的资源整合到开发平台中来。RUP采用了迭代式开发方法,按照螺旋上升的方式来提升软件的质量(即软件的质量在反复迭代的过程中不断提升)。在每一次迭代过程中,开发工作都是沿着需求分析、建模、开发、测试和部署的方式顺连起来,每两个相邻的环节都紧密相关、无缝衔接。而在每一环节中积累的经验和知识,形成的模块都是公共财富,可以被所有的角色共享,用以简化开发工作、提高效率。
在流程整合的基础上,RUP将一系列管理的最佳实践方法整合到开发平台中来,将软件开发提升到工艺的高度。比如,RUP在软件的开发周期内进行需求管理,并以新的需求为导向来评估和改进软件;RUP也加强了对变更管理的力度,从而让开发工作能随需应变;RUP还形成了一个持续的质量验证体系,将开发工作各个阶段的质量控制整合成一个有机的整体,使软件的质量得到更充分的保障。通过方法与工具的融合,RUP能更有效地控制开发中的各种风险,确保开发工作平稳进行。
文章来源于领测软件测试网 https://www.ltesting.net/