建模项目困境

hav*_*dhu 6 .net modeling visual-studio-2010 tfs2010

在我们公司,我们已经开始使用VS 2010来模拟我们的系统,即所谓的建模项目.这些都保存在TFS2010源代码管理下.

这对单个用户来说都很好,但是一旦我们将这个工具引入我们的整个架构团队,我们就遇到了一个主要问题:它非常严重地处理多个用户!让我带您了解一个简单的场景.

  1. 架构师1检查现有的图表并对其进行一段时间的处理
  2. Architect 2添加了一个新图表,并在其上工作了一段时间
  3. 建筑师2检查他的新图表
  4. 架构师1检查他对建模项目的更改
  5. Architect 2再次打开他的图表,却发现其中的所有元素都丢失了!

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

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

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

因此,我们目前的"解决方案"是使用独家结账工作.所以一次只能有一位建筑师工作!

我希望有人提出了更好的解决方案,这使我们能够更有效地工作.

pan*_*lif 2

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


编辑
您可以使用特定于 XML 的工具,如此处介绍的工具
通过这样做,您应该保留按架构师分支的方法,但您可以:而不是使用单步 TFS 合并:

  • 在“分支”文件夹和“主干”文件夹之间执行目录比较。每个找到的文件都是随后合并的对象。
  • 使用本文中提供的工具之一将找到的每个文件合并到“分支”文件夹中。我使用过Altova DiffDog,它非常好 - 但回报很高。
  • 检查一切是否正常,然后提交“分支”。
  • 现在与 TFS-merge 合并到“trunk”中,这现在应该是一个简单的合并。