我公司中的某人最近提出了对核心产品的更改,经理们认为这些更改应触发我认为我公司认为完整的质量检查周期(即,从头开始测试整个产品套件)。显然,我们的质量检查需要12周才能完成产品的完整质量检查周期。我的问题是我们正在尝试进行敏捷开发(尽管在我看来,这大多是半估的)。我们将完成一整套冲刺,然后发布,我想质量检查将永远花费那一次。问题是,如果我们的质量检查要花12周才能完成工作,我们是否就应该放弃尝试敏捷开发?在这种情况下尝试敏捷的意义何在?
我公司中的某人最近提出了对核心产品的更改,经理们认为这些更改应触发我认为我公司认为完整的质量检查周期(即,从头开始测试整个产品套件)。显然,我们的质量检查需要12周才能完成产品的完整质量检查周期。我的问题是我们正在尝试进行敏捷开发(尽管在我看来,这大多是半估的)。我们将完成一整套冲刺,然后发布,我想质量检查将永远花费那一次。问题是,如果我们的质量检查要花12周才能完成工作,我们是否就应该放弃尝试敏捷开发?在这种情况下尝试敏捷的意义何在?
Answers:
好吧,恐怕您的问题的直接答案将是Mu-只是没有足够的细节来做出明智的猜测,您是否应该放弃尝试。
我唯一能肯定的一点是,敏捷性水平应该由客户/市场需求(您没有提供任何信息)决定。
要考虑的另一件事是满足您的客户/市场需求需要什么级别的质量?
现在,让我们仔细看看您提到的这12周。
您考虑过哪些选择来缩短质量检查周期?从上面的示例中可以看到,简单地跳过它可能无法满足您的期望,因此您最好保持敏捷,并考虑采用其他方法来解决它。
例如,您是否考虑过改善产品可测试性的方法?
或者,您是否考虑过采用蛮力解决方案来雇用更多质量检查人员?无论看起来多么简单,在某些情况下这确实是必经之路。我已经看到经验不足的管理人员试图盲目地雇用越来越多的高级开发人员来解决产品质量问题,而这些人员中只有一对普通的专业测试人员就足够了。真可悲。
最后但并非最不重要-我认为一个人应该是敏捷关于敏捷原则非常适用。我的意思是,如果项目需求不够灵活(稳定或变化缓慢),那又何必呢?我曾经观察到高层管理人员在没有进行得很好的项目中强迫Scrum。真是浪费。不仅交付没有任何改善,更糟糕的是,开发人员和测试人员都感到不满意。
对我来说,敏捷最重要的部分之一是在每个sprint的末尾都有可发布的版本。这意味着几件事。首先,如果您认为可以将构建版本发布给客户,则必须进行一定程度的测试,以确保没有显示一流的错误...
我看到了可发布的版本。嗯 嗯 考虑在您的敏捷鸡尾酒中添加一两针精益。我的意思是,如果这不是客户/市场的需求,那么这仅意味着浪费(测试)资源。
我一个人认为将Sprint-end-release视为满足团队要求的检查点没有任何犯罪。
...您提出的最重要的观点是在响应的最后,即如果需求不是敏捷的,则不应用敏捷。我认为这是正确的。当我们开始进行敏捷时,我们就拨入了敏捷,这种情况是合理的。但是自那时以来,情况发生了巨大变化,我们一直坚持这一过程可能不再有意义。
您完全正确。同样从您的描述看来,您已经了解了状态(团队/管理的成熟度和客户关系),从而可以使用常规的迭代模型开发来代替Scrum。如果是这样,那么您可能也想知道,根据我的经验,在这种常规迭代中,比Scrum更有生产力。更富有成效-根本就这么少得多的开销,它只是这么容易把重点放在发展(QA为分别着重测试)。
我们完整的产品实际上是由许多较小的部件组成,这些部件都可以独立升级。我认为我们的客户非常愿意更频繁地升级这些较小的组件。在我看来,我们也许应该专注于在冲刺结束时发布和质量检查那些较小的组件……
以上听起来是个好计划。我曾经在这样的项目中工作过。我们发布了每月发行的版本,这些更新包含本地化的小型低风险组件,并且针对这些组件的质量检查签字非常容易。
哦,我确实感觉到你的痛苦。您需要对质量检查小组进行一些认真的更改才能使其生效。
我的建议是将团队分为三个团队:
功能测试 -快速测试新开发的产品。
回归测试 -在产品出厂之前进行全面测试。即使减少了团队规模,这也不需要花费3个月的时间,因为大多数错误都将由第一团队发现。
自动化测试 -编写全套回归测试以加快回归测试团队的工作。
第三支球队是一笔奖金,但是如果您不能拥有前两支球队,那么您也很可能是瀑布。
请注意,您的质量检查小组可能正在(ATDD)圈子之外工作,而您正在内部工作。
我认为可以这样工作。如果您可以在自动化测试中证明您在每个冲刺中都满足客户的要求,则可以允许质量检查人员在闲暇时进行他们的测试,并提出缺陷,然后您可以进行下一个冲刺。
您描述的过程不是敏捷过程。具有高度敏捷性的团队能够在每个Sprint中交付可靠且可能发布的版本。在大多数敏捷实施中,QA功能是在敏捷团队内部构建的,有助于实现这一目标。
如果您,您的项目负责人,您的产品所有者和开发人员没有一起工作,并且您没有改进计划(回顾性的),请为流程命名,然后继续。您的团队问题似乎不是经理或质量检查人员的错。他们似乎正在对开发组织中出现的一些系统性问题做出反应。如果团队愿意承担责任并开始与利益相关者合作,那么一切都不会丢失。
您可以尝试三件事。第一,确保每个利益相关者具有明确定义的角色,并且每个人都了解自己的责任。第二,稳定构建,然后在不引入更多更改的情况下获得质量检查的批准。三,研究所测试自动化。质量检查团队会为此而爱您。
遗憾的是反馈花费了这么长时间,但是我不认为敏捷就值得停止。在冲刺(或一对冲刺)结束时,您发布一种产品,并确信它可以投放市场。敏捷为您的团队带来了专注于要完成的工作并保持产品可发布的能力。当质量检查人员发现问题时,我建议为这些问题创建错误报告,并在下一个冲刺中解决(如果它们具有足够高的优先级)。
我们的产品现场测试需要整整8周的时间,而且我们依赖外部种植者。通过敏捷,我们仍然可以专注于手头的工作,并在需要时快速地制作新版本。
问题在于(您认为)质量检查部门可以在那里解决问题?你讨论过了吗?