让我说我有我的愿景,现在我的产品积压的项目。该部分是书面形式,随时可以使用。我即将创建我的冲刺。我好奇。编程团队什么时候坐下来说“让我们使用这个平台,这个框架和语言”,以及“我们需要一个类在这里”,或“我看到一种方法,我们可以使用一个接口”,等等。这种谈话什么时候开始?
在Sprint之前会有人为所有团队做出决定 - “我们将使用Linux,MySQL,PHP和CodeIgniter”,然后其中一个团队有一个sprint来实现该基础架构,而其他团队则等待完成启动其他冲刺(团队A2从产品积压中构建一个ui或安全模型及其功能)?
当sprint首次开始时,这也是在团队级别使用trac等工具的地方吗?
很抱歉,如果我到处都是这样的话。我从来没有见过它,只是当我认为我理解它时,我想到了一个新问题。
此外,它还不是重点,但你的团队名称是什么?鲍勃的团队,史密斯的团队,更丰富多彩的东西?
谢谢。
答案 0 :(得分:1)
简短回答是“这取决于”第一部分可能会有其他团队在某种程度上决定这些术语。例如,在我目前的项目中,有些东西几乎是给定的,例如。 IDE = Visual Studio,错误跟踪= HP Quality Center,版本控制= Subversion,开发人员XP Professional的O / S等。
可以有一个Sprint 0,其中一些基础结构元素被处理,如CI服务器,团队的wiki,确保每个人都有SVN中的帐户,以及其他需要处理的管理事项。
代码名称之类的团队名称可以随时出现,但它们可以具有不同的含义,因为某人可以在一个地方使用团队名称可能在其他地方不太好,例如。对于那些完全不熟悉这个词的人来说,Voltron团队可能不会很好。
答案 1 :(得分:1)
一些团队用Sprint Zero开始他们的项目,他们在那里完善愿景,定义全局架构(平台,语言,不是类或接口的选择),“ done ” ...
这个Sprint非常特别,它与准备有关,与其他冲刺不同,可能不会带领团队提供任何正常运行的软件。
答案 2 :(得分:1)
如果您是敏捷Scrum团队的一员,那么您的公司可能就有了 已经定义了模式和 架构。强>
在我看来,Scrum团队不负责设计,有独立的设计团队负责任何正在进行的项目的整体设计和集成计划。
设计团队负责项目开发阶段的战略部分,即架构,设计和集成计划。这些团队可能有自己的scrum sprint。
Scrum-master和团队负责人负责根据设计实施项目的策略。
程序员,测试人员和QA工程师具有编写和测试代码的操作责任。
答案 3 :(得分:1)
我会把它分成几个部分。
选择工具/平台(Linux,MySQL,PHP等)之类的事情我甚至在开始sprint 0之前已经达成一致。我认为sprint 0更像是设置视觉和高级架构,在某种程度上,它依赖于您选择的工具/平台。对于ASP.NET项目,您希望在团队中拥有的人员与PHP项目不同。
另一件事是转向讨论,例如“我需要一个班级,并在那里接口”。在sprint 0期间,这个级别的细节无法真正决定。我们只是一直在做这些决定。这意味着我们经常改变我们的架构,但是当变化很深时,这是一种罕见的情况。而且几乎总是当我们改变某些事情时,它是有根据的决定。
总结:开始之前的关键技术决策,sprint 0期间的高级架构,需要时的低级设计决策(在冲刺期间)。
答案 4 :(得分:0)
“Sprint 0”是启动的标准方法。对于正在进行的主要架构决策(切换工具包,语言,平台),如果它们尽可能小且集中,那么一系列调查峰值故事就能很好地运行。故事是为了解决一个具体问题或证明一个概念。基础设施问题可以 - 而且我认为必须 - 被分解成小故事,或者你可能会离开地图。
较小的基础设施变更有时对其他故事的“税收”有效,有时则不然。 (例如,研究和添加依赖注入工具,切换到通用休眠工具)课税问题需要产品和开发之间的良好沟通。它假设一些渴望的开发者已经在基础设施上做了一些深夜的功课。
如果没有成功,我们已经尝试过希望在正常工作过程中发生重大架构决策。这失败了,因为scrum让你太专注。