【IT168 技术文章】
方法论对软件开发而言意味着什么?我们如何看待软件开发中的方法论?方法论能够成为软件开发的救命稻草吗?在读过此文后,这些疑惑就会得到解答。
在第一篇文章中,我们来了解标题中的一些词的含义。
方法学是什么?
敏捷是什么?
为什么讨论架构?
方法论
方法论的英文为Methodology,词典中的解释为"A series of related methods or techniques"我们可以把它定义为软件开发(针对软件开发)的一整套方法、过程、规则、实践、技术。关于方法论的出现的问题,我很赞同Alistair Cockburn的一句话,"方法论源于恐惧。"出于对项目的超期、成本失控等等因素的恐惧,项目经理们从以前的经验出发,制定出了一些控制、监测项目的方法、技巧。这就是方法论产生的原因。
在Agile Software Development一书中,作者提到了方法论的十三个要素,基本能够函盖方法论的各个方面:
角色(Roles)
个性(Personality)
技能(Skills)
团队(Teams)
技术(Techniques)
活动(Activities)
过程(Process)
工件(Work products)
里程碑(Milestones)
标准(Standards)
质量(Quality)
工具(Tools)
团队价值(Team Values)
它们之间的关系可以用一幅图来表示:
图 1. 方法论的十三个要素