考虑人的因素:
1. 人的情感、利益、心态(对于提高技能的心态)
2. 项目的稳定性
最终的目的:
1. 当前的项目组 不可能是全明星,拥有人去做 dirty work
(1)降低 对特定人员的依赖性
(2)让 star player 专心去做 creative 的东西
2. 降低测试的成本 ( 将问题扼杀在程序员手里,因为和QA测试,打包都需要 )
好的测试
1. 易于测试:
保证等效性的情况下,
(1)简化测试时间,即使是手工:
a. 你给程序员这么高的工资,难道是让他 等着广告(保证等效性)结束? 如果一次测试不成功,难道还要重新启动,并且再等一次?
b. 程序员急于完成所完成需求,需要快速完成测试
2. 让任何一个新手都可以迅速加入,修改测试,快速
(1)任何一个team,在稳定的状态下,都是 1~2 个 star player,2 个 middle,再到 2 个 。
all star 这种模式,非常不可能。
(2)项目组人员流动性很强。
3. 降低对“有经验”的软件工程师的需求。
(1) dirty work 总得有人来做。
(2) dirty work 对 SE 的需求不是很高。
好的项目工程
1.