拆分开发团队
答
我们按照组织中特定产品对人员进行分组。每个团队都为特定产品编写代码。当产品的功能与其他产品相交时,有时他们会在该功能上进行协作。我们做了很多划分,所以它可能。
写出大量可重复使用的模块。这是关键。
我的组织也只为大客户做特定于客户的工作。
答
我对编程的坚定信仰者,我会组队,使得一对将管理和编写测试用例(TDD),而其他人会编写它。我会建立一个基于相同主题的团队。
答
- 如果你的产品涉及多个技术的话,你可以组球队电子乐明智
- 技能
答
它不那么重要了分裂的时候你怎么做你的分裂,但也有陷阱一个你需要知道的开发团队。
集成度决定了您拥有多少风险。碰巧分享一些图书馆的单独软件产品风险很小。高度集成的运行时组件带来了更大的风险。
最坏的可能发生的情况,你可以找到自己是那里是团队之间的依赖关系提供一个功能,但没有明确的所有权。例如,A队正在B队等待“后端服务”,但B队认为该服务已完成。 A队表示该服务不符合所有要求。但是B队已经开始转向新功能。等等....
我已经看到了这个我们与他们的态度从字面上磨发展陷入停滞。为了对抗这种行为,鼓励交叉团队配对和共享代码所有权。不时轮换团队成员。确保有一位负责人将使某个功能端到端地发生。
团队,致力于开发可重复使用的模块通常不起作用。它是因为一系列可疑价值和治理噩梦的模块。最好的可重用模块来自团队,他们提供类似的功能并自己识别重叠。
答
的关键是让每个团队遵循相同的标准,但可以作为独立(分离)地工作。
如果它在你的客户相同的代码库,你可能不希望分裂队以客户的具体需求,因为它可能会导致变化的多个重叠。
如果功能跨系统功能(AR,安全性,报告等)区域,您可能希望按功能区域进行拆分。
其它方式分裂队:
- 前端(设计实现)和业务逻辑和数据库/数据存储
- 新的开发和维护(更新/更JR人维护)
- 核心功能和附加模块(如果基于组件)
如果您能够简要介绍每个组的响应能力,以便其他人可以知道它们是否合理,可能会更好? – pierrotlefou 2009-10-07 06:07:30
这个问题似乎是无关紧要的,因为它涉及到工作环境。 – animuson 2013-07-21 06:07:05