6

那里你好。我正在组建一个新的软件团队,我正在寻找不同的工具来克服我以前与其他团队的噩梦。

在过去的 5-6 年中,这些是我经历的一些转变:

源代码控制:
CVS => VSS => SVN

项目管理、Bug 和问题跟踪:
Paper => PostIt Notes => OneNote => BugNet => OnTime

Wiki 和文档:
Word + Network Share => ScrewTurn Wiki

生成器自动化:
Cruise Control + MSBuild

现在,特别是因为 SVN 和 Wiki 的情况,我正在考虑用一些新鲜的东西来组建这个团队。过去,我们曾在 SVN 中遇到过分支噩梦,我们越是尝试修复它,它就会变得越糟糕。我面临的另一个挑战是找到稳定且集成的东西。可以想象,BugNet+SVN+ScrewTurn+CruiseControl+MSBuild 是完全不同的动物,所以整合和协同非常重要;我不想在 10 个不同的应用程序之间跳转来报告错误或分配任务并查看已完成的工作并查看 repo 日志。
所以,我和新团队已经讨论了几天了,我认为我们已经将其缩小到 2 个可能性:

1. TFS 2010
Pros:
- 多合一解决方案。它确实拥有一切,包括一个新的 SCRUM 流程模板。
- 非常友好的用户界面和 SharePoint 集成。
- 所见即所得的 Wiki 和 Office 集成。
缺点:
- 硬件和管理时间的前期成本高。软件也一样,但它不会影响我们,因为我们有免费软件的 MSDN 订阅。
- 我对 TFS 的源代码控制犹豫不决。SC 是基于文件的,并且像 SVN 和 VSS 一样具有中央存储库。我真的不想因为我们过去遇到的同样问题而堕落。

2. FugBUgs + Kiln + CC
优点:
- Kiln 使用 Mercurial,具有分布式源代码控制的所有优点。
- 最小的前期成本和计划时间来启动和运行。每位用户每月 30.00 美元。
- 非常友好的网络用户界面。
- 所见即所得的 Wiki 编辑器。
- 非常简单的问题跟踪器和项目管理工具。集成 SCRUM 流程将很容易。
缺点:
- 缺乏用于更多集成流程(如 TFS)的构建器自动化工具。所以这意味着我们将不得不继续用命令行功能和社区任务来维护我们的构建器工作人员。

过去,我使用 Visual Studio Team System 2005,并没有带上关于该系统的最美好的回忆。但新的 TFS 2010 似乎是一个非常可靠的赌注。FogBugz 和 Mercurial 有点像街区里的新孩子,他们为新流程带来了新的思考,但与往常一样,这是一把双刃剑。
任何有这些方面经验丰富的人?我们错过了第三种选择吗?你有解决我问题的灵丹妙药吗?

  1. 工具集成
    1.1。源代码控制
    1.2。维基
    1.3。构建自动化
    1.4。项目管理
    1.5。问题跟踪器
  2. 最小化源代码控制分支和合并冲突(是的,我们必须分支和合并)
  3. 友好的用户界面(不是每个人都是 CMD 黑客)
  4. 所见即所得的维基。
  5. 开发人员的学习曲线。
  6. 是时候让它全部运行 VS。长期价值。

新团队有 4 名团队成员 + 1 名项目经理(Scrum Master)和 1 名产品经理(产品负责人)。所以我们谈论的是一个相对较小的新团队。我们将处理的范围和项目是大型企业应用程序,具有多个项目和分支变体

4

6 回答 6

3

你的团队有多大,每个人都会使用什么方法/角色?

我想说,如果这是一个庞大的团队,TFS 可能更适合您的需求。
特别是如果您需要发布到共享点,或者在您的团队中有更多定义的角色。

但是,如果您想要一个更适合较小团队的更小规模的解决方案,那么像 SVN/Trac/Cruise Control 这样的解决方案可能最适合您的需求。

于 2010-09-12T18:34:04.410 回答
2

你听起来像是在寻找类似Trac的东西。

Trac 是用于软件开发项目的增强型 wiki 和问题跟踪系统。Trac 使用简约的方法进行基于 Web 的软件项目管理。我们的使命是帮助开发人员编写出色的软件,同时不碍事。Trac 应尽可能少地强加于团队已建立的开发流程和政策。

它提供了一个到 Subversion(或其他版本控制系统)的接口、一个集成的 Wiki 和方便的报告工具。

Trac 可以使用插件进行扩展。Trac-Hack wiki 是插件的去处。

这是另一个 stackoverflow 问题,询问推荐的 Trac 插件

于 2010-09-12T18:24:27.603 回答
2

Redmine进行救援。

于 2010-09-12T18:29:24.030 回答
1

我建议您使用 TFS 2010 和 Visual Studio 2010(如果您正在开发 .Net 应用程序)

您无需担心 TFS 的 SC。TFS 将所有内容存储在 SQL Server DB 中。TFS 在 Web 服务器上运行,因此您可以将源代码控制连接到您想要的位置。

WI跟踪是一个加号。TFS 有一个惊人的 WI 跟踪机制。如果需要,您可以自定义您的 WI。TFS 支持额外的软件进程,例如 MSF、CMMI 或 Agile。

TFS 2010 的测试能力是完美的。如果您使用 Visual Studio 2010,您可以使用 TFS 2010 最大限度地提高您的效率。

当需要合并时,分支总是很烦人;但 TFS 2010 总能帮助您。您可以在分支和合并之前跟踪源中的更改。

TFS 2010 Build 机制支持 WorkFlow。因此,您可以轻松地高度自定义构建过程;如果这不适合您,您可以使用其他批处理文件 (MsBuild)。

TFS 2010 的管理操作比 TFS 2008 和 2005 更简单。您可以轻松创建构建代理、机器、项目集合等...

TFS 2010 支持几乎所有的 MS 产品;比如微软办公软件。Excel 与 TFS 或 MS Project 有很好的集成。不要忘记 Sharepoint。

TFS 不仅是一个源代码管理系统,TFS 还是一个项目管理系统、应用程序生命周期管理系统、工作项跟踪系统等等。

但我知道您不能将 MSDN Subs 中的 TFS 用于商业目的。因为这仅用于测试并且只有 5 个用户可以连接(我不太确定)

至少,如果您愿意,您不必在专用服务器上设置 TFS(不推荐这样做)。如果需要,您可以在 Win7 上进行设置,TFS 可以在 SQL Server Express 上运行

所以我建议你使用 TFS 2010。如果你正在开发 .Net 应用程序,没有什么比 TFS 更好了。

于 2010-09-13T08:09:58.320 回答
0

到目前为止,我对atlassian产品非常满意。JIRA 与 subversion 集成得非常好。如果您在提交消息中提供文本标记,JIRA 也会显示与问题相关的代码更改。websvn不是使用 FishEye,而是选择作为 svn web 前端的工具。如果您只是在寻找“wiki”,那么 foswiki会做得很好。但我更多的是从 linux 的角度来看工具链。

于 2010-09-12T18:02:09.970 回答
0

绝对没有冒犯的意思,但是……你一直在改变——你考虑过为什么吗?你有多么自信,你不会发现自己再次改变。这次要花额外的时间和精力来把它弄紧。

在不建议具体工具的情况下,我会建议你做两件事。

1) 寻找工具——不仅仅是工具的集合。例如,参见寻求一个真正的“工具链” ,其中讨论了可以很好地协同工作的工具。更顺畅的工作流程应该可以节省时间,并可能增加项目成功的机会。

我注意到你说“你可以想象 BugNet+SVN+ScrewTurn+CruiseControl+MSBuild 是完全不同的动物,所以整合和协同非常重要”,所以我认为我们在这一点上是一致的

2) 你需要得到使用这些工具的人的认可。不要向他们展示既成事实,提前询问他们的想法。事实上,向他们征求建议。鉴于前一点,这一点可能会很棘手。

于 2010-09-13T13:12:56.273 回答