.net - 建模项目问题

标签 .net visual-studio-2010 modeling

在我们公司,我们已经开始使用 VS 2010 在所谓的建模项目中对我们的系统进行建模。这些都在 TFS2010 源代码控制之下。

对于单个用户来说这一切都很好,但是当我们将这个工具引入我们的整个架构团队时,我们遇到了一个主要问题:它对多个用户的处理非常糟糕!让我为您介绍一个简单的场景。

  • 架构师 1 检查现有图表并对其进行一段时间处理
  • Architect 2 添加了一个新图并对其进行了一段时间的处理
  • Architect 2 检查他的新图表
  • 建筑师 1 checkin 他对建模项目的更改
  • 建筑师 2 再次打开他的图表,却发现里面的所有元素都不见了!

  • 正如我所理解的,问题在于架构项目基于几个 xml 文件,特别是一个重要的 xml 大块,称为 ModelDefinition/Architecure.uml。它包含了很多关于建模项目中图表的知识。当多人同时对这个文件进行多次更改时,工具(TFS、VS)不会自动处理所需的合并,我们会面临巨大的并发问题。

    所以在我的场景中,因为架构师 1 checkin 的 Architecture.uml 对架构师 2 添加的元素一无所知,这些元素被覆盖或以其他方式破坏。

    我们希望避免将项目分成几个较小的项目,因为这意味着我们必须多次重新定义我们的建模组件(类、参与者、用例、组件等)。通过使用单一解决方案,我们可以在一个地方定义这些元素,并在其他图表中重复使用它们。

    因此,我们当前的“解决方案”是使用独占 checkout 工作。所以一次只有一位建筑师可以工作!

    我希望有人想出一个更好的解决方案,让我们能够更有效地工作。

    最佳答案

    尝试分而治之:是否有可能每个架构师都在她的个人分支上工作,然后将所有内容合并到一个“主干”中?
    在这些合并期间,冲突应该是可见的。

    编辑
    您可以使用特定于 XML 的工具,例如提供的工具 here .
    通过这样做,您应该保留每个架构师的分支方法,但您可以:

  • 在“branch”文件夹和“trunk”文件夹之间进行目录比较。每个找到的文件都是随后合并的主题。
  • 使用本文中提供的工具之一将找到的每个文件合并到您的“分支”文件夹中。我用过 Altova DiffDog ,它非常好 - 但奖金很高。
  • 检查一切是否正常,然后提交“分支”。
  • 现在与 TFS-merge 合并到“主干”中,现在应该是一个微不足道的合并。
  • 关于.net - 建模项目问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8051049/

    相关文章:

    c# - 代码契约(Contract)中的 "Does not contain whitespace"?

    c# - 数组中的文件,数组中的文件到树中?

    c# - 找不到类型 'Track_Attack.TAGeneric' 的构造函数。 C# 窗体

    modeling - 域模型 : should things like Logging, 审计,持久化在其中

    c# - 确定 C# 代码大小

    c# - TCP 连接到 Azure 失败

    c# - 我们需要锁定这个队列吗?

    visual-studio-2010 - Visual Studio - 多个项目与多个目录的区别/好处是什么

    r - auto.arima 使用 xreg 并一起预测多个 ts

    XML 属性与元素