软件工业走过作坊时代
多年来,人们仅将软件局限在应用工具的狭小区域,这种片面的理解致使人们很难联想起大规模的软件工业。因而,软件开发往往与编写程序等同起来,而调研分析、建模、测试、部署和全局管理等工作却被忽略。
对任务认识的片面性也体现在对软件开发角色的划分上,程序编写者(开发人员)是主力军,代表了一切。如此以来,在开发工作中就呈现“独木难支”的局面。
时过境迁,今天的IT环境、业务对软件的要求、软件的应用规模等都发生了巨大变化。由此促使软件开发模式也发生了质的变化:软件开发不再崇尚“个人英雄主义”,无组织的、小规模的“作坊式”开发模式难以适应基于架构体系的软件开发需求。
控制软件开发中的风险,摆脱作坊式软件开发模式的束缚,人们需要思考这样一些问题:
1、如何将先进的管理理念用于软件开发,以有效地管理软件项目,降低开发风险?
2、如何在加强知识和经验共享的基础上,通过协同来提高软件的品质?
3、如何协调跨平台开发工作的有序进行?
可见,今天的软件开发已不单是一种技术或工具的应用,抑或一种灵感的迸发。资源的调配、协作的布局、流程的设置在软件开发中占据越来越重要的地位。技术、工具、人和管理方法以开发对象为核心,要达到水乳交融的境界。
在潜心经营软件开发工具多年后,IBMRational力求通过整合将软件开发的要素粘合在一起,提供一种功能强大的平台,促进软件工艺的发展。
整合铸造工艺平台
虽然在作坊式的软件开发中人们也应用一些零星的管理知识来管理开发工作,但其效果并不尽如人意,而且种种弊端在大软件工业的背景下频频暴露。除了管理体系不够健全外,没有将人员和管理方法融合到开发项目中来、致使开发流程支零破碎是致命伤。
IBM Rational所倡导的整合开发平台,是要将与软件开发相关的所有人员凝聚在一起,通过一套整合的流程和全面的质量控制机制,形成一个功能强大的开发平台。
高品质软件是多道工序锤炼的结果,创造高品质软件的开发平台必须整合完成所有这些工序的角色,以使其倾力协作。角色的整合建立在清晰的角色定位之上,从开发实践中IBM Rational定义了项目经理、系统分析人员、架构设计师、开发人员、测试人员、部署人员六大角色,他们的工作环环相扣,形成一个缺一不可的团体,每一个角色都能在开发平台上找到自己的位置,并能获取适合自己的工具。
开发流程无缝连接
如何让开发工作沿着清晰的思路有序地进行,而先前积累的经验、可复用的组件能被当作公共的财富加以利用?如何将科学的管理方法与工具整合起来,以规避软件开发中的风险?这些在IBM Rational所倡导的统一开发流程(RUP,IBM Rational Unified Process)中已有明确的答案。
RUP在将开发流程进行端到端对接的基础上,将开发过程中积累的资源整合到开发平台中来。RUP采用了迭代式开发方法,按照螺旋上升的方式来提升软件的质量(即软件的质量在反复迭代的过程中不断提升)。在每一次迭代过程中,开发工作都是沿着需求分析、建模、开发、测试和部署的方式顺连起来,每两个相邻的环节都紧密相关、无缝衔接。而在每一环节中积累的经验和知识,形成的模块都是公共财富,可以被所有的角色共享,用以简化开发工作、提高效率。
在流程整合的基础上,RUP将一系列管理的最佳实践方法整合到开发平台中来,将软件开发提升到工艺的高度。比如,RUP在软件的开发周期内进行需求管理,并以新的需求为导向来评估和改进软件;RUP也加强了对变更管理的力度,从而让开发工作能随需应变;RUP还形成了一个持续的质量验证体系,将开发工作各个阶段的质量控制整合成一个有机的整体,使软件的质量得到更充分的保障。通过方法与工具的融合,RUP能更有效地控制开发中的各种风险,确保开发工作平稳进行。
项目组合管理凝聚开发力量
走出作坊式开发方式的软件工艺,面临着更多层面的工作。比如,开发人员关注的不再是单一的软件,而是涉及多方面功能的一个软件群体。这时需要考虑的是:
1、如何调度有限的IT预算和资源?
2、如何保证不同层面开发工作的同步进行?
3、如何确保复式项目的成功率?
毫无疑问,软件项目的复杂化促使管理走向复式化,软件项目的管理需要整合各种管理方法以构成一种项目组合管理方法(PPM,Project Portfolio Management)。在整合了最先进的管理方法后,PPM带来的是IT与业务的真正融合、更好的IT管理、低成本和高收益、合理的决策,以及可控制的项目进度。IBM还提出业务驱动开发(Business-driven Development)的概念,用业务需求来驱动架构的实现。 IBM Rational 是目前唯一能提供业务驱动开发所需要的所有能力的工具提供商。
利架构之器,实现SOA治理
在SOA时代,Rational 担当起了SOA架构师的重要角色。今年3月,IBM在中国发布了Rational软件交付平台7.0版本桌面产品,这是一套全面基于Eclipse的软件产品和最佳实践,有助于客户进行软件治理和强化系统开发流程,密切IT与业务部门之间的联系。
全新版本的Rational 软件将强化SOA的架构功能,帮助客户更加高效的交付高质量的软件和服务,确保IT流程及IT政策与企业改革目标相吻合,从而能更好地实现 SOA 治理(SOA governance)。 “SOA 治理”,简言之监控 SOA 的整个生命周期。为了实施 SOA 治理,新的Rational软件交付平台7.0版本开发了多种全新工具与技术。这些新功能的完美融合,将有助于客户进行风险管理,更加充分的实现SOA的优势。
中国软件“理性”进入工业化
Rational在英文中本来就是“理性”的意思,这个词也足以概括IBM Rational与中国软件产业合作的历程。Rational一直是开发工具领域的领导品牌,有着悠久的历史,被IBM并购后的Rational业绩增长迅猛,现今,现在中创软件、爱立信、华为、中航网络等企业成功的应用案例已充分证实,IBM Rational 基于标准的跨平台解决方案,给其用户的开发工作带来了革命性的变化。
中创软件的总裁景新海认为与IBM合作以后,他们不仅获得的是高效、高质量、高成功的平台而且也同样获得了IBM的很好的方法论。华为是IBM很成功的用户,目前也是软件收入排名第一的中国软件企业,其软件业务具有今天的规模同样也与采用IBM平台而脱胎换骨有关。成功的案例让我们有理由相信,在中国软件工业化的时代,IBM Rational 开发平台,还将大有作为!