您的位置:首页 > 其它

当今企业中最流行的四种开发模式

2013-01-12 14:25 113 查看
RUP、MSF和敏捷是当今企业中最流行的三种开发模式,分别由IBM、Microsoft和ThoughtWorks在90年代发布。正所谓大千世界没有十全十美的事物,所以也没有哪一种模式能适合所有的组织,关键在于自己需要不断实践和积累,对已定义的模式进行裁剪、补充和完善,才能建立最适合自己组织的开发模式。经过一年的敏捷实践后才发现自己更喜欢敏捷开发,下面结合自己的理论知识和实践经验谈谈这几种开发模式。

CMMI即能力成熟度集成模型,以系统的框架来指导组织进行过程改进,提高了企业的质量管理素质。近几年来,很多企业都纷纷通过了CMMI 3或4级评估,使整个软件行业朝着规范化发展,但同时也暴露出一些问题,如缺少有丰富实施经验的咨询团队、服务质量不高、盲目追求证书等。记得曾经的一个小型项目采用CMMI,由于客户需求不明确又经常改变,再加上和客户沟通太少,最后导致项目延期,可以说重视文档轻视沟通是CMMI让我印象最深的缺点。外包企业大多实施CMMI,否则就会失去很多商机。

RUP即统一软件过程,强调用例驱动,以架构为中心,划分多个模块并配对相应的用例模型,一般会在Rose、CC、CQ等集成工具的辅助下进行迭代和增量开发。基于RUP的项目有4个阶段:起始、细化、构造、交付,每个阶段都会有一次或多次的迭代。RUP属于重量级而且过于理论化,从本质上说还是在强调设计和规范,仅针对一次迭代来说与传统的瀑布模式类似,不太适合小型项目。现在很多大中型企业针对不同类型的项目把RUP进行适当的裁减后也取得了很好的效果,这确实是一种灵活适应的方法。

MSF即微软解决方案框架,强调瀑布螺旋式的迭代开发,对过程的每一个阶段有相应的定义,同时也定义了6个角色:产品管理、程序管理、开发、测试、用户体验、发布管理,通过这6个角色,项目可以迅速完善地实施。MSF的核心是沟通、信任、敏捷、重视商业价值,其方法以“边规划、边设计”为基础。MSF好比引擎,它是一种准则,以工业化模式制定出具体的解决方案,大大提高了软件开发效率,在微软的合作伙伴中运用比较广泛,现在在国内也越来越得到企业的认可。

敏捷即一种以人为核心,迭代、循序渐进的开发方法。在敏捷开发中,软件项目的构建被分成多个子项目,各个子项目的成果都经过测试,具备集成和可运行的特征。相比防守型的CMMI,敏捷是攻击型的,其3个特点是社会工程、轻量级、技术实践,换句话说就是以人为本、拥抱变化、持续改进。现在最流行的两种敏捷方法是Scrum和XP。实施Scrum相对简单一点,不像XP必须有深入地技术实践,Scrum的实践围绕一个迭代和增量的过程骨架展开,由3个角色、3种会议、3项工件组成。XP把软件开发变成自我管理的挑战,追求沟通、简单、反馈、勇气、尊重,其重要过程有测试驱动开发、持续集成、重构、现场客户、简单设计等。XP把软件开发过程重新定义为聆听、测试、编码、设计的迭代循环过程,确立了测试、编码、重构的软件开发管理思路。敏捷是个很不错的方法,相信在不久的将来会逐渐得到国内企业的广泛认可。

一个成功的项目应该在进度、成本、质量这三者之间有一个比较好的平衡,这三个方面都要做得比较好。针对目前国内的企业状况,将CMMI、RUP和敏捷三者进行有效融合、相互补充,即CMMI的体系+RUP的过程+敏捷的实践,这也是软件开发方法的平衡之道。

欢迎大家交流!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: