一个陷阱列表,不做这个列表会有所帮助.
任何有助于自动化步骤的工具.
>根据这些文件列表,对现有代码进行备份
>记录从开发到生产的这些文件的部署
>如果部署或应用程序以任何方式失败,则允许更轻松地回滚…
我从未在一家拥有部署过程的公司工作,除了从开发到生产的非常手动的ftp文件.
你在公司,部门等方面做了什么?
谢谢…
解决方法
规划
阐明并记录要交付的内容.通常门票或用户故事就足够了.有时你会做更多的事情,比如书面要求文件,客户签字,这被翻译成各种工件,如written use cases – 最终你想要的是在电子系统中记录的东西,你可以将变化与代码相关联.这导致我……
发展
还记得电子系统吗?好.现在,当你对代码进行更改时(你正在提交源代码控制权吗?),你将这些更改与此电子系统中的某些内容相关联 – 通常是门票.我喜欢Trac,但也听说过有关Atlassian’s suite的好东西.这为您提供了可追溯性.所以你可以断言已经做了什么以及如何做.然后你可以使用这个系统和源代码控制来创建一个构建 – 所有改变所需的位 – 以及在源代码控制中构建的标记 – 这是你所改变的列表.更好的是,让构建包含所有内容,以便它是可以轻松部署在其自身上的独立实体.然后交付构建…
验证
也许许多商店忽视了最重要的一步 – 冒着自己的危险.生产过程中发现的缺陷在修复过程中会成倍地增加,然后才会在过程中发现它们.验证通常是许多商店中发生这种情况的唯一步骤 – 因此请确保您的确实如此.
这不应该由程序员完成!那就像看着鸡舍的狐狸一样.无论谁做的都应该遵循某种计划.我们使用Test Link.这意味着每个构建都以相同的方式验证,因此您可以识别回归错误.并且,此构建应以与生产相同的方式部署.
如果一切顺利(我们通常需要至少3个版本),则验证构建.这就是……
部署
这应该是非事件,因为您按照与测试相同的步骤进行验证的构建.可能首先它会访问一个临时服务器,其中有一个自动复制过程,但重点是这不应该是一个问题,因为您使用相同的过程进行了验证.
结论
在了解什么在哪里,您真正想要的是将变更组合在一起的合理方式.这就是构建的概念所在.它实际上是应该在SDLC中的步骤之间进行区分的单元.如果你已经拥有它,那么理解给定系统状态的能力变得微不足道.