【问题标题】:Modeling project woes建模项目困境
【发布时间】:2011-11-08 13:21:58
【问题描述】:

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

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

  1. 架构师 1 签出现有图表并在其上工作了一段时间
  2. 架构师 2 添加了一个新图表并在上面工作了一段时间
  3. 架构师 2 签入他的新图表
  4. 架构师 1 签入他对建模项目所做的更改
  5. 建筑师 2 再次打开他的图表,却发现其中的所有元素都不见了!

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

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

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

因此,我们当前的“解决方案”是使用独家签出。因此,一次只能由一名建筑师工作!

我希望有人对此提出了更好的解决方案,从而使我们能够更有效地工作。

【问题讨论】:

    标签: .net visual-studio-2010 modeling


    【解决方案1】:

    尝试分而治之:是否有可能每个架构师都在自己的分支上工作,然后将所有内容合并到“主干”中?
    在这些合并过程中应该可以看到冲突。


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

    • 在“分支”文件夹和“主干”文件夹之间进行目录比较。每个找到的文件都是随后合并的主题。
    • 使用文章中介绍的工具之一将找到的每个文件合并到您的“分支”文件夹中。我用过Altova DiffDog,非常好 - 但奖金很高。
    • 检查一切是否正常,然后在“分支”上提交。
    • 现在与 TFS-merge 合并到“主干”中,这应该是一个微不足道的合并。

    【讨论】:

    • 感谢您的回复。它将确保在没有任何人注意的情况下不会丢失任何元素。但是,我希望避免手动合并文件,因为它是一个 xml 文件。根据我的经验,TFS 2010 附带的默认合并工具无法处理 xml 文件,例如移动的元素可能会被识别为冲突,但实际上并非如此;它只是在无序列表中交换位置。不过,我确实很欣赏这些意见,我会将其提交给我的团队以供考虑。我现在等待接受它,看看是否有其他人遇到并解决了这个噩梦:)
    • 我完全同意您的“希望避免手动合并 XML”。请等待更好的方法:)
    • 感谢您的编辑,我相信这可能会改善流程。使用适当的 XML 合并工具向前集成主干应该是朝着正确方向迈出的一步 :)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-09-03
    • 2013-01-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-03-07
    相关资源
    最近更新 更多