依然是一样的话题,依然是我自己的点滴心得,我希望能通过这种方式不断的去认识以及总结。
上次Flow VS Agile中我们谈到了过程和敏捷的初体验,主要针对一开始如何做需求的研发。
转眼3个月过去,我的项目经历立项、市场分析、总计划、需求研发、需求澄清、工作量评估、架构设计这几个阶段。如果按照Process过程来讲,可以说我们到了概要设计这一步。(标准瀑布过程:问题定义、可行性研究、需求分析、总体设计、详细设计、编码、测试、运行维护)
从目前来看那我们岂不是没有敏捷吗?可是上次不是谈到我们是用的敏捷来管理项目吗?对了,到目前为止,我们确实还没有用到敏捷,这都是标准的瀑布模型,标准的开发流程。但对于前面的步骤的原则不太一样,我们不是让每件事情100%完成才启动下一个步骤,这才是关键。比如说我们的需求开发可能只是定一个大的框架,如feature有了,可能就到下一个步骤进行设计了,进行GUI了。这样看来我们有点像是快速开发的模式。
那么真正的Iteration迭代是什么时候开始呢?就是在所有开发环境基本准备完毕的时候,如,架构设计完成了,概要设计也有点眉目了,基本开发IDE统一了,code rule有了,一个简单的实作有了,那么我们就可以开始Iteration了。或者说可以开始做release plan meeting了。那么前面所有我姑且称之为Iteration之前的准备吧。
用一句话总结上面所说,就是,我们用快速开发的模式来做Iteration迭代之前的准备工作。可能这个时候很多“观众”会问了,为什么不用纯快速开发或者纯Agile呢?呵呵,我觉得这或许就是我们常说的凡事都有利有弊,关键是我们要找到适合我们自己的平衡点。这或许就是我们的平衡点吧。
这里引入一个我也不知道是谁说的思想,过去的这么多年来,我们的软件开发方法可以分为三大类:第一大类,也就是最初的时候,我们开发基本上只有Coding,没有太多的设计,甚至没有任何市场分析及需求开发,测试和后期维护也很少。因为那个时期编程才刚刚起步,可能编程完全就是为了体现计算机的计算能力,或者使用计算机作为辅助工具。我们姑且叫他Coding类吧。第二大类,软件的兴起,软件给我们带来了全新的生活方式,我们越来越注重用软件来解决问题,软件设计也越来越复杂,编程不再可能是个人英雄了。我们需要团队的力量,这个开发人员越来越看中设计,完美的设计带来的好处不用我说,提高效率,减少返工,扩展方便。我们可以把这个阶段叫做Architecture&Design类;可能很多公司目前都属于这一类。还有一类,也是我们公司现在所推行的,Full类,是什么意思呢,就是我们会适当减少对设计的投入比例,而增加需求、以及后期推广维护的投入比例。让这个研发生命周期是一个比较平均的一个投入比例,既不完全倒向Coding,也不完全倒向Architecture&Design。
回到我们上上一段所说的,这就是我们的平衡点,也正是我们Process & Scrum的艺术之处。
分享到:
相关推荐
IEEE 的关于scrum开发的英文文档
Essential Scrum: A Practical Guide to the Most Popular Agile Process (Addison-Wesley Signature Series (Cohn)) Kenneth S. Rubin (Author) 5.0 out of 5 stars (20 customer reviews) <<Book Details>> ...
《Scrum Devlopment Process》,全英文版本,作者:Ken Schwaber(Scrum 由 Ken Schwaber 和 Jeff Sutherland 提出),pdf 格式,大小 168KB。 Scrum由Ken Schwaber和 Jeff Sutherland 提出,旨在寻求充分发挥面向...
Understand Scrum's rituals: sprint planning meetings, daily standups, work process, demos, and sprint retrospectives Gain a thorough understanding of the tools used in Scrum: burndown charts, story ...
Whether you’re not sure what scrum is, or you think your scrum process isn’t all that it should be, this book can help. Scrum isn’t magic, but the results it can produce are well worth taking the ...
Agility is the word of the new millennium. As the world around us grows more complex, we strive to build more complex products....process, Scrum. A complexity faced by almost all large organizations is
From a leader in the agile process movement, learn best practices for moving agile development with Scrum from the skunk works (small team) to the shop floor (the enterprise). Managers get case ...
敏捷开发精髓,英文版
Understand Scrum's rituals: sprint planning meetings, daily standups, work process, demos, and sprint retrospectives Gain a thorough understanding of the tools used in Scrum: burndown charts, story ...
to-earth account of how one Swedish company implemented Scrum and XP with a team of approximately 40 people and how they continuously improved their process over a year's time. Under the leadership of...
Foreword: Why Scrum Works Suppose I’m traveling from Chicago to Boston by airplane. Before and during the flight, the pilot gets instructions from air traffic control. We take off on command and ...
In Agile Information Security, James Fitzer provides sound guidance and examples on working agility into your information security process, using Scrum as a framework, and lessons learned from the ...
Essential Scrum: A Practical Guide to the Most Popular Agile Process / Kenneth S. Rubin
scrum,rally process
process. In fact, there are some similarities between the methods, although scrum approach throughput is quicker and keeps people focused on what is deemed important by the project managers. Basically...
Foreword: Why Scrum Works Suppose I’m traveling from Chicago to Boston by airplane. Before and during the flight, the pilot gets instructions from air traffic control. We take off on command and ...
Getting Agile with Scrum Mike Cohn ... Especially useful on projects with lots of technology or requirements uncertainty, Scrum is a proven, scalable agile process for managing software projects.
underlying mechanisms by which a process operates are reasonably well understood. When the process is too complicated for the defined approach, the empirical approach is the appropriate choice. ...
Security vulnerabilities, environments patching, deployment code freeze, development and operations silos - the game helps simulate an end-to-end product delivery process and visualize the ...