基于功能的开发的部署规划
产品是作为功能而不是发布来开发和交付的,这意味着功能完成后,它会被推向暂存阶段,然后进入生产阶段。可能有多个功能正在开发中并且交付时间线重叠。因此,在任何时候,开发数据库和源代码控制在开发中都具有多个功能。当某个功能完成后,我只想将功能特定的代码和数据库更改推送到暂存。事实证明,此过程容易出错且耗时,原因是:
- 特定功能的数据库实体不是独立的,而是与其他功能相关且交织在一起。因此,分离出特定于该功能的实体非常耗时,有时甚至难以实现。有没有更好的办法呢?
- 在服务器端代码中,类似地分离出特定于功能的代码与数据库同样麻烦。通过将 .NET 实体框架置于数据库之上并进行其他性能优化(例如预生成视图),是否有更好的方法来部署基于功能的开发?
开发环境包括 SQL Server 2008、.NET、带有用于源代码控制的 SVN 的实体框架。
这里的术语“特性”与FDD敏捷模型无关。
有人经历过类似的经历吗?
非常感谢!
A product is being developed and delivered as features rather than releases, meaning on completion of a feature, it's pushed to staging and then to production. There can be multiple features in development and overlapping the delivery timeline. So, at any point of time the dev database and source control has more than one feature in development. When a feature is completed, i would like to push only the feature specific code and db changes to staging. This process is proving to be error prone and time consuming for the reasons:
- DB entities of a specific feature are not independant, but dependant and intertwined with other features. So, separating out the entities specific to the feature is time consuming and sometimes difficult to achieve. Is there any better way to do it?
- On the server side code, similarly separating out the feature specific code is equally cumbersome as the db. With .NET Entity Framework layered on top of DB and other performance optimizations such as Pre-generated views in place, is there a better way to deploy feature based development?
The dev environment comprises of SQL Server 2008, .NET, Entity Framework with SVN for source control.
The term feature here is not related to FDD Agile Model.
Has anyone been through a similar experience?
Many thanks!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
我管理的项目与您刚才描述的非常相似。
显然没有足够的空间来解释完整的细节,但我从花一整天的时间管理/合并代码到现在只检查自动构建以确保安全介意并有时间为该项目做出贡献。
I manage a project that works very similar to what you've just described.
obviously there isn't enough space to explain the full details but I went from spending my entire days managing/merging code to now just checking in on the automated builds for peace of mind and have time to contribute to the project.