在分布式架构中,为什么管理版本很困难?

Fer*_*een 6 versioning

我一次又一次地看到.UAT测试经理希望新版本能够在星期五之前进行测试.在预测试会议上提出的第一个问题之一是"我将测试什么版本,反对?" (这是一个公平的问题).房间变得沉默,然后有人会回来,"所有的装配都有自己的版本,只需右键单击并查看属性......".

从测试经理的角度来看,这是没有用的.他们希望跨版/标贴/标签的一切,告诉他们什么,他们正在努力.他们希望这些信息易于获取.

我已经看到了一个解决方案,系统的不同区域的版本存储在数据存储区中,然后显示在主应用程序的框中.问题是,这需要保持.

您看到哪些解决方案可以解决这个问题?

编辑.分布式系统包括VB6,Classic ASP,VB.Net,C#,Web Services(跨部门,我们使用哪个版本?),SQL Server 2005.

Ran*_*pho 3

我认为问题在于您和您的测试经理正在谈论两件不同的事情。程序集版本对于程序集来说非常有用,但是如果您愿意的话,您的测试经理正在谈论更高级别的版本,即“系统版本”。至少这是我读到的你的帖子。

在这种情况下,您必须做的是将所有不同的组件程序集映射到系统版本中。你说的是“系统版本1.5由Foo.Bar.dll v1.4.6和Baz.Qux.dll v2.6.7等组成”。天啊,在分布式系统中,您可能希望每个服务都有不同的版本,而这些服务本身可能由不同版本的 .dll 组成。你可能会说,例如:“系统的1.5版本是由Foo服务v1.3组成的,Foo服务v1.3由Foo.dll v1.9.3和Bar.dll v1.6.9组成,Bar服务v1.9由Foo.dll v1.9.3和Bar.dll v1.6.9组成,Bar服务v1.9由由 Baz.dll v1.8.2 和 Qux.dll v1.5.2 等组成”。

执行此类操作通常是组织中软件架构师和/或构建经理的工作。

您可以使用许多工具来处理此问题,这些工具与您选择的语言无关。目前我个人最喜欢的是Jira,它除了错误跟踪之外,还具有出色的产品版本控制和路线图支持。