在这样的环境中,软件是由一个团队内部构建的,然后该软件被其他内部团队使用,人们如何决定所生产的艺术品所需的质量?例如:
我想需要考虑的一个方面是,在考虑质量之前,项目的时间长短。确保质量从一开始就建立在产品中,而不是把它留在项目生命周期的后期,应该是更符合成本效益的。
发布于 2013-02-15 10:55:27
我为一个编程团队工作,这个团队是在另一个内部编程团队构建的框架基础上开发的,所以也许我可以分享一些我学到的见解。
虽然这两个团队都是内部的,但在我的经验中,如果目标是以高效的方式生成代码,这几乎不会给您额外的自由。编程团队中的一般指导方针仍然适用:不要提交中断的代码,分支重要的修改,以干扰其他程序员正在执行的工作,等等。
当涉及到提交另一个团队将使用的代码时,就像最终产品一样,它必须在测试和功能方面达到标准。区别在于,如果某个东西坏了,而不是让一个客户生气,那么你就在浪费公司的时间和金钱(而且你可能是在让程序员而不是客户感到不安)。经过一些尝试和错误之后,我们发现处理这些事情的最好方法是像生成一个发行版那样提交框架。
将有一个主干源代码存储库,而不是所有程序员将其日常完整的代码提交到的地方,这将是其他编程团队可以从中提取的确定的、经过测试的、稳定的版本。“本来是什么”主干变成了一个公共分支(我们称之为发布分支),在该分支中添加了新特性并修复了bug。在通常从主干分支的地方,只需从发布分支到发布分支,并在完成后合并回发布分支。一旦您达到了将重要的特性/bug添加到发布分支的地步,请说明程序员需要花费几天的时间彻底测试所有(而不仅仅是新添加的)功能。一旦完成,稳定的分支就可以成为新的主干,并为下一个版本创建一个新的发布分支。
即使有了这个系统,仍然存在许多问题,但我无法想象如果这个框架每隔一天运行一次,我们还会遇到多少问题。
最后一点建议,你和一个内部编程团队一起工作的最大优势是你有沟通能力。使用它。
发布于 2013-02-15 11:01:28
如何决定所生产的工艺品所需的质量?
我总是为最好的东西而努力,但是要注意,有很多非编码的“东西”可能会妨碍你。
这些可能包括范围蔓延,对其他团队/部门的依赖,预算被削减,人员被重新分配,公司内部的政治变化,无能的经理/开发人员/巴斯/PM。
*“最佳”一词本身具有任意性。
https://softwareengineering.stackexchange.com/questions/187177
复制相似问题