我与一个非常小的创业公司,我们开始使用Scrum /敏捷开发周期的forms。 在很多方面,我喜欢Scrum。 我们有比较短的冲刺(2周),我喜欢烧毁图表跟踪球队的进展。 我也喜欢function板,所以我总是知道我应该接下来做什么。 感觉很好,从电路板上取下一张function卡,将其完成,然后放入烧毁的堆中。 但是,我们现在正在进入我们的第十八个Sprint发布周期,我开始感觉有点被烧毁了。 不是我不喜欢工作或者我的同事,只是这些冲刺是…好吧, 冲刺 。 从开始到结束,我实际上感觉就像是在与时间赛跑,以保持我们的发展速度。 当我们完成冲刺时,我们花了一天的时间来计划下一个冲刺的function集和估计,然后我们再去。 对于在成熟的敏捷/ Scrum开发过程中工作的人来说,这是正常的吗? 或者我们错过了什么? 在Scrum环境中,通常有时间是未分配/未跟踪的,以便完成一些小的事情并清理你的头脑?
我正在观看Rob Connerys在MVCStoreFront应用程序上的networking广播,我注意到他是unit testing,甚至是最平凡的事情,例如: public Decimal DiscountPrice { get { return this.Price – this.Discount; } } 会有一个像这样的testing: [TestMethod] public void Test_DiscountPrice { Product p = new Product(); p.Price = 100; p.Discount = 20; Assert.IsEqual(p.DiscountPrice,80); } 虽然我都是unit testing,但我有时会怀疑这种testing方式是否真正有益,例如,在真实的过程中,您的代码上面有3-4层(业务请求,需求文档,架构文档) ,实际定义的业务规则(折扣价格是价格 – 折扣)可能会被错误定义。 如果是这种情况,你的unit testing对你来说没有任何意义。 另外,你的unit testing是另一个失败点: [TestMethod] public void Test_DiscountPrice { Product p = new Product(); p.Price = […]
我没有为非常大的组织工作过,也从来没有为拥有“构build服务器”的公司工作过。 他们的目的是什么? 为什么不是开发人员在本地机器上构build项目,还是他们? 有些项目是如此之大,需要更强大的机器来在合理的时间内构build它? 我看到构build服务器的唯一有用的地方是与构build服务器的持续集成,不断构build致力于存储库的内容。 难道我只是没有足够的项目工作? 有人请赐教:构build服务器的目的是什么?
大多数人可以互换地说Scrum和Agile,但是Scrum Practice和Agile Practice相比有什么区别呢?
在今年夏天,我有幸能够进入Google夏季守则。 我学到了很多东西(可能比我学完大学课程的总和还要多)。 我真的好奇,为什么他们没有教我在学校早些时候学的东西。 仅举几例: unit testing 版本控制 敏捷开发 在我看来,他们花了大量的时间在数据结构和algorithm等其他方面进行教学。 虽然我仍然认为早期学习非常重要,但他们为什么不把更多的这三个教给他们呢? 还是只是我的学校没有教这个东西呢? 不要误解我的意思,我认为大学总是教最stream行的编程时尚是不可取的,但是我的教授们不应该教我一些其他的东西,“在开始编码之前画一个图表”。
Scrum和敏捷开发有什么区别? Sprint和迭代是一样的吗?