一家软件公司提供软件并在自己的服务器上托管解决方案。有一次,硬件故障导致延迟、随机重启、服务停机和客户失望。备份服务器规模缩小,因此无法在回退期间处理负载。
该公司已经为测试、UAT、预生产和生产设置了不同的环境。这对于软件 QA 来说很好,但由于生产硬件出现故障,因此毫无用处。
我想建议利用软件 QA 团队开始对 IT 团队和基础设施进行质量控制。我应该从哪里开始?你能给我推荐一些实践、指南或起点吗?
非常感谢。
答案1
不确定为什么有人否决了这个问题。基础设施、运营、开发和 QA 团队之间的稳固集成可能是一个难题,特别是在大型组织中,每个团队都向不同的层级报告。
你可以从 DevOps 运动开始。快速搜索出现了一堆很好的资源,可以开始研究。
在组织内,你可以从一些基本的内联开始,邀请不同团队的成员聚在一起开会,或者(如果你能让经理出钱的话)吃披萨。一些非正式的团队建设活动可以大有裨益,也可以通过展示和讲述会议来分享知识。
根据我的经验,没有人喜欢自己的堆栈失败,即使失败可以归咎于另一个团队。在各个团队及其成员之间建立一定的力量和深度可以对整个堆栈的规划和发展大有帮助,并且在需要进行更改时可以大大说服管理层。
答案2
这听起来更像是应用程序开发和基础设施团队的协调问题,而不是严格的软件 QA 团队问题。了解硬件要求、政策、程序和时间表的高级应用程序开发团队成员和高级基础设施团队成员之间的会议可以防止很多这些问题。保持您的环境完全相同。让基础设施团队与开发团队合作,了解他们的应用程序,并为预期使用和未来增长设置适当的硬件大小。让基础设施团队开始思考新应用程序及其现有环境的潜在问题以及预防这些问题的方法。教育开发团队了解基础设施程序,让他们思考它们对基础设施的潜在影响以及可以采取哪些措施来防止此类问题。让开发和 QA 团队了解发生的基础设施流程,例如备份、批处理作业、高磁盘/网络利用率时期等,以便他们可以将其添加到他们的计划和测试中。通过对系统进行全面的质量和负载测试,QA 团队将自然地融入到流程中。您可能已经做了很多这样的工作,但让各个小组作为一个有凝聚力的团队工作是我们公司克服这些问题的关键。一旦我们能够让团队思考他们将如何影响彼此,问题就会在它们发生之前就开始自行解决,而当问题出现时,解决问题就变成了集体努力。