所以这是我们的问题:
我们有一小组开发人员,他们有自己的做事方式 - 我正在尝试将我们所需的流程正式化,以按以下顺序推广我们的代码:
本地沙箱> Dev> UAT>分期>活
开发人员在他们自己的沙盒上开发/测试时,Dev是我们用于持续集成的自己的盒子,UAT是开发盒中IIS的另一个站点,它使用我们的开发数据库。然后我们升级到staging,这是IIS中Live网站上的一个站点,并使用实时数据(就像现场一样,因此进行了分段)。然后,最后,我们促进生活。
以下是我的一些问题:
1。)这似乎是最佳做法吗?如果不是,需要做些什么?
2.。)如何对开发人员强制执行规则?开发人员通常会跳过步骤以节省时间......这不应该被容忍,如果可以实际执行则会很好。
3.。)如何对业务组强制执行这些规则?该业务组只想快速获取功能。我们只在某些日子推广吗?
答案 0 :(得分:3)
听起来对我来说是一个很好的设置...我们没有像我工作的那样。我们有DEV> QA>生产
1)我不确定“最佳做法”是什么,但你的设置对我来说似乎是一个很好的做法。我唯一关心的是沙盒环境。是否保证每天都会备份开发人员的代码?以防万一他们的机器崩溃了?我不想丢失好的开发代码。
2)我们在这里有一个“发布协调员”,他们可以强制访问Sourcesafe和TFS,还可以控制对QA环境的访问,因此只有特定时间可用。
3)商业测试人员也是如此,除了他们的权力来自项目经理。 PM的文档可以按项目填写,并指定测试团队。
我们只在某些日子(每隔一个星期四)宣传。但是,我们确实知道可能存在紧急情况,并且在需要时会在关闭的日子里完成生产发布,但是事后记录这些紧急情况并进行分析,看看哪里出了问题以及我们可以在哪些方面进行改进。
我会说,只要你的环境得到控制和记录,你应该没问题。最好确保一切都在沙箱区域备份,并且一小部分人控制对其他环境的访问。我还建议你保留关于“安全”环境的出现和记录的良好文档,以防万一出现问题,你可以回溯日志,看看可能发生了什么或者谁可能做过,不一定要点手指但是回过头来说“你上传/改变了什么?”所以我们可以看到可能导致这个问题的原因。
祝你好运,
答案 1 :(得分:2)
如何对业务组强制执行这些规则?
问题是,您无法对业务组强制执行任何操作。只有他们的经理可以。
您(作为IT)可以做的是与业务部门经理会面,并列出成本/收益分析。
理想情况下,错误将是过去实际发生的事情,而不是理论上的事情:)
然后将其与相对无关紧要的(只是做出一些估计,希望有商业用户的输入)与正确的流程和相关的减速成本进行比较。
基本上,你需要他们的买入来说服他们不要偷工减料。
答案 2 :(得分:0)
我们的商店有类似的设置。我们通过使用不同的物理机器以及通过密码访问等来强制执行此操作。我在我自己的VPC上本地开发,然后检查代码。就我而言,这就是它的结束。另一个人可以访问他根据需要运行构建的开发框,他无法访问“实时”框,而另一个人则可以。此人可以访问“开发”框和“实时”框 - 这样他就可以根据需要进行紧急部署等。一旦构建进入开发并经过测试,那么,只有这样,才能完成“实时”构建。