不论是传统开发模式(瀑布,原型,迭代,螺旋等),还是敏捷开发模式(XP,SCRUM)等,都有自己的使用场景。
开发模式之争,有点像开发语言之争。
那些争论XP好还是SCRUM好的人,就像争论美国大选是特朗普好还是希拉里好。
不论特朗普还是希拉里,和你有关系吗?
难道你关心的不应该是: 我什么时候可以涨工资?我如何才能工作更轻松,生活更幸福?
再“升华”一点,那也应该是:我如何提高项目交付质量?如何提高软件质量?
SCRUM 之所以被很多人认可和接纳,主要一个原因是SCRUMB有比较温和的理论指导,也有比较容易操作的实践指导。
虽然XP的作者本意没有要求XP要严格按照XP的“规范”来执行,但是客观事实就是:人们一聊到XP就想到极限编程,就想到结对编程...
另外一个要谈的是,使用什么样的开发模式(完全严格采用且只采用一种模式的比较少见)和团队的现状(技术水平,技术素养,技术理念)也有关系。
就像推进代码规范,有一个很重要的规范就是:不要和团队所有成员都认可的“规范”去作对。
说了这么多,再回到开题的问题:不要过分迷信“开发模式”,那还要不要“开发模式”?(问题里的“开发模式”换成“敏捷”和“SCRUM”也同样适用)
答案是: 要。
在众多“开发模式”中,选择一种比较认可,适合团队,容易操作的去推广。在使用的过程中结合团队的实际情况,参考借鉴别的“模式”或者“别的经验”。
所谓模式,就是好的经验的总结。即使没听过“SCRUM”, 大量实践和反思之后也会得到很多和“SCRUM”类似的经验。
简单来说,有据可依总比无据可依好。如果没有人把一些经验总结归纳,明确升华为“模式”,全靠虚无玄妙到“无为而治”注定是很难的。
结语
码字真心不容易。每次看别人博客或公众号,看着内容很丰富,觉得很好,看到人很开心。但是写的人一点一点组织文字(即使真的“文思如泉涌”,那也得防止它一闪而过,快速把他固化吧)
网友评论