你有没有遇到过这些言论——大多是抱怨,当涉及到应用敏捷的时候?
敏捷不注重正确的文档
敏捷无视流程和规定
敏捷无视公司计划和目的
敏捷不注重法律程序,并且对客户不承担责任。
等等,等等。
这些都是一些企业和人对于敏捷方法最常见的抱怨。然后你会惊讶地发现,关于敏捷被抱怨最多的实际上来自于敏捷宣言(Agile Manifesto)和四个价值观点?正是这些价值观导致了大多数人的误解。(关注文尾有惊喜)
那么,什么是敏捷宣言和四个价值观点,以及为什么会有这么多的困惑呢?让我们来看看这四个价值要点,并试着去理解所造成的混乱。
敏捷宣言和四个价值观
个体与交互重于过程和工具
软件产品重于全面的文档
客户合作重于合同谈判
响应变化重于遵循计划
很多人经常遗忘和忽略的是:虽然“重于”右边的事情至关重要,但左边的事情有更高的优先级。如果你必须从中选择一件事情,那么并非是排斥另外一个,而是优先级的设置。这些优先事项将最终确定更好的质量,更快的入市时间和更高的客户满意度。
让我们来看看这四个要点。
1.个体与交互重于过程和工具
这是关于人的方面。人提供软件,人交付产品。人们想出点子,人创造你和我喜欢并使用的东西。过程和工具是为人提供帮助而不是取代人的地位。
但是,我们不应该忘记,流程和工具的作用是使生活更轻松,让一切步入正轨。是的,这往往是处理阻碍进步的大型组织中的一个巨大的抱怨。但要记住的事情是,适量的进程和正确的工具可以用来帮助人们实现最好的结局。
不能忘记流程和工具,但要记住,人,才是更重要的。当人与其他人互动时,你会惊讶于这样实现的成就远远超过任何流程或工具。
2.软件产品重于全面的文档
这通常是一个重点。 “敏捷与文档是对立的”。不,只不过一个有效的软件片段比1000页的用户手册更有价值和更重要。
这并不意味着文档是坏的。我完全同意文档重要的观点。这里的关键是“重于全面的文档”,而非没有文档。你不能将文档卖给客户。工作于软件比文档能给客户带来更多的价值。
许多敏捷商店和团队避免文档。但是,这是缺乏了解和坏的规划所导致的。文档往往是要考虑的最后一件事。然而,实际上,它应该是首先要考虑的事情。但是,创建伟大软件的过程,不应该因为文档更重要这样的疯狂想法而使之变得黯然失色。
3.客户合作重于合同谈判
多少次我们更担心的是法律合同,流程和法律文件,而忘记了这些合同背后的人?我们忘了客户也是人。
是的,合同谈判是非常重要的,但合作更为重要。迭代的方法和与客户面对面的讨论,比起早就签署好的通常一成不变的合同,更有可能提供高品质的软件。
无力改变合同通常是导致他们对许多项目屈服的原因。改变合同通常需要花费大量的时间和金钱,而这会导致项目失败或超出预算和时间。
与人合作,头脑风暴,集思广益比签订文档化的合同或需求更有助于理解问题。文档化需求很重要。但不是最重要的。
签订合同往往会带来一种虚假的安全感,但在现实中,我们不知道我们哪些东西不懂。反复的讨论和与客户合作往往才是找出我们所不知道的内容的最好方式。
4.响应变化重于遵循计划
有多少次你能够完全按计划进行?不是经常对不对?事实上,总会有变通,有权衡。所以很多时候,我们必须执行B计划,或者C计划,或……Z计划.
遵循计划是非常重要的。我们不希望事情杂乱无章,不可控制。但灵活应对变化更有价值,并更快地产出软件。
那些能够屡屡成功的人往往更灵活,能更快和更频繁地应对变化。是的,未雨绸缪,针对意外情况制定计划。
但是,什么是意外呢?如果你能对此制定计划的话,那么这无疑就不是意外了。
我们不是算命先生,但人有着高度的灵活性,并能轻松应对改变。只要看看我们一般是如何应对生活的即可。
结论
敏捷并不意味着要牺牲其他事情。敏捷的目的是为了最好的软件/产品。这是为了产出最大的价值。敏捷意味着倾向于更重要的东西,而不是忽视不那么重要或优先等级不那么高的东西。
所以,不要因为不了解敏捷而讨厌它。拥抱它,你就会发现,它会让实际工作做得更好,带来更多的价值。
你有什么意见或想法吗?请让我知道。
如果有对Java感兴趣的Java程序员,可来我们的java技术学习群的哦4940,
56009里面免费送java的学习资料噢!
写在最后
小编总结了一份java学习资料
领取专属 10元无门槛券
私享最新 技术干货