【问题标题】:Deployment planning for feature based development基于功能的开发的部署规划
【发布时间】:2010-02-18 04:29:58
【问题描述】:

产品正在作为功能而不是发布来开发和交付,这意味着在完成功能后,它会被推送到登台,然后再投入生产。开发中可能有多个功能,并且交付时间线重叠。因此,在任何时候,开发数据库和源代码控制都具有多个开发功能。功能完成后,我只想将功能特定的代码和数据库更改推送到登台。事实证明,此过程容易出错且耗时,原因如下:

  • 特定功能的数据库实体不是独立的,而是与其他功能相关且相互交织的。因此,分离出特定于功能的实体非常耗时,有时难以实现。有没有更好的办法?
  • 在服务器端代码上,类似地分离出特定功能的代码与 db.xml 一样麻烦。将 .NET Entity Framework 置于 DB 之上并进行其他性能优化(例如预先生成的视图),是否有更好的方法来部署基于特性的开发?

开发环境包括 SQL Server 2008、.NET、带有 SVN 源代码控制的实体框架。

这里的术语特性与 FDD 敏捷模型无关。

有没有人有过类似的经历?

非常感谢!

【问题讨论】:

    标签: .net sdlc agile-processes


    【解决方案1】:

    我管理的项目与您刚才描述的非常相似。

    尽快安装 SVN 和 CruiseControl.NET。这是一种生活/时间品味

    我目前让我的团队在 SVN 的分支中工作并合并到主干中,然后在准备生产时进行标记。

    将您的数据库置于版本控制之下,并将版本号与标签(发布)相关联

    我基于此great article 推导出了我自己的数据库版本控制方法,该方法建议创建一些表/约束/触发器来帮助对您的数据库进行版本控制。

    对数据库进行版本控制是最难的部分。在我们为修改数据库制定严格的例程之前,一切都是一场噩梦

    显然没有足够的空间来解释全部细节,但我从整天都在管理/合并代码到现在只是检查自动构建以便高枕无忧并有时间为项目做出贡献。

    【讨论】:

      猜你喜欢
      • 2018-06-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-07-07
      • 1970-01-01
      • 2012-07-03
      • 2014-01-01
      相关资源
      最近更新 更多