可以将敏捷对涉及多个供应商的开发过程的影响与公司进行JIT时的影响进行比较。
为了交付JIT,公司的每个供应商都必须交付JIT。
function deliversJIT( company ) {
return company.isJIT() && map( deliversJIT, company.suppliers() );
}
同样,如果您希望根据敏捷方法开发复杂的产品,则链中的每个子组都应该能够以这种方式工作。
就“增量式”开发而言(也就是15年前的Tracer Bullets),这意味着“核心”将很快发布给驱动程序人员,并且基本的驱动程序可供集成商使用,并且GUI将可以同时开发一个按钮和一个编辑框。
困难的部分是说服来自扎实的前瞻性工程学科的硬件设计师加入我们的修补匠社会。
第二个最困难的部分是找到一种方法,以在需要提前3周订购硬件打印的世界中实现增量开发。我在考虑模拟器,fpga在这里。我不是硬件专家。
如果您愿意放弃增量硬件开发,则可以像在JIT链的边界上那样,预见一种缓冲机制,该机制可以使敏捷团队前进。
我们不要盲目:敏捷也必须处理繁重的流程!不要要求敏捷团队现在在下一个Sprint中将其Java代码库“重构”为Python。仅因为某些部分确实非常稳定,我们才能在它们之上跳动敏捷动作。