scrum流程中讨论的编程架构在哪里?

时间:2010-01-05 22:41:07

标签: project-management agile scrum

让我说我有我的愿景,现在我的产品积压的项目。该部分是书面形式,随时可以使用。我即将创建我的冲刺。我好奇。编程团队什么时候坐下来说“让我们使用这个平台,这个框架和语言”,以及“我们需要一个类在这里”,或“我看到一种方法,我们可以使用一个接口”,等等。这种谈话什么时候开始?

在Sprint之前会有人为所有团队做出决定 - “我们将使用Linux,MySQL,PHP和CodeIgniter”,然后其中一个团队有一个sprint来实现该基础架构,而其他团队则等待完成启动其他冲刺(团队A2从产品积压中构建一个ui或安全模型及其功能)?

当sprint首次开始时,这也是在团队级别使用trac等工具的地方吗?

很抱歉,如果我到处都是这样的话。我从来没有见过它,只是当我认为我理解它时,我想到了一个新问题。

此外,它还不是重点,但你的团队名称是什么?鲍勃的团队,史密斯的团队,更丰富多彩的东西?

谢谢。

5 个答案:

答案 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让你太专注。