创业公司封闭式开发问题总结
合作开发问题:
1. 心态情绪管理
由于担心不能按时完成任务,故每个人都很紧迫,压力很大,导致情绪失控,心态失衡,易怒易燥,既伤人,也伤己。还增加了沟通成本,以及降低了工作效率。所以对于大家情绪的安抚,压力的排解,还是很有必要的。
2. deadline划分不够明确,且执行力不够
虽然制定了deadline,但是划分依旧不是很明确,且没有明确说明完不成的惩罚措施。deadline的划分应该更细一些,像本次集中开发,为期一个月,deadline如果以两三天,乃至每天进行划分,让大家时刻知道总体进度如何,自己的进度如何,可能会减少部分由于担心完不成任务而带来的压力,大家也不会过于紧张和急躁。
3. 由上一点带来的额外问题/现象
测试会一直催着开发尽早尽快完成功能/解除bug,而开发完成功能/解除bug后,也会催着测试尽快验证无误,这样就带来了额外的沟通成本,且增加了大家的负面情绪,破坏了同事的和谐关系。最好是deadline制定明确,每个人都按照deadline进行开发测试,每个人都只需要关心如何做好自己的任务(当然,任务分配不是绝对的对等,任务少的童鞋可以帮助任务多的做一部分),开发在规定的时间内完成功能/解除bug,测试在规定的时间内,验证功能与bug,互相之间无需对方催促,沟通成本可能会更低,工作效率也会更高。
纯编程问题:
1. 完成代码质量不高
时间紧,任务重,导致开发人员没有足够的时间去深入的思考如何写出更高质量的代码,只能以完成功能为第一目标,草草的做完开发,至于是否造成了后续维护成本的增加,也是大家无法考虑的事情了。
2. 整体架构设计质量不高
开发没有足够的时间和产品深入讨论需求的边界,以及未来可能带来的变化,整体架构设计也仅限于本期功能开发,并且有时候为了赶时间做完功能,即使知道推倒重做,重新设计整体架构是最好的实践,也只能在以前的代码上继续缝缝补补,导致整体架构设计又腐化了一步,且功能上线以后,是否还有足够的时间和动力将不合理的架构/代码,推倒重做,也是一个未知数。
经验/不足
编程方面:
就个人而言,对于敏捷开发的认知和实践不足,如何快速的迭代代码,完成高质量的代码和架构设计,还是一个需要持续学习和不断实践的过程。
后续考虑实践方向:
1. 增加对测试代码的重视,在后续不紧张的需求中,尝试使用测试驱动开发的方式来验证是否可以起到敏捷开发的作用
2. 增加对工具的封装和使用,对于大量相同/相似的功能(如导出),考虑封装出一些更加通用的方法,可以减少重复代码的编写以及重复造轮子,在后续开发中,尝试使用一些优质的开源款框架来提高开发速度,优化代码质量和优化接口响应速度。
沟通方面:
沟通能力有待加强,应以最少的话解释清楚同事的疑问/疑惑,以及询问对方时,要多听对方的陈述,不要中途打断别人。另外对于一些无效的沟通,应该立即停止并思考为什么会出现这种情况,以及如何避免,要让自己言之有物。
身体方面:
平时不重视身体的锻炼和及时就医,导致这段时间突然生病,且前期拖延了一段时间,导致病情加重,不得不请假看病,即耽误了身体,也耽误的工作。身体是革命的本钱,要有强壮的身体,才能更好的迸发战斗力。
建议
1. 集中开发负责人要足够强势,当团队有不一样的声音(对需求功能的理解不一样),负责人要给出一个确定的方案,并且要求大家严格按照确定的方案执行,避免出现需求经常性变动。
2. 集中开发时要多多关注大家的情绪和压力,要让大家都开开心心,兴致昂扬的进行战斗,这样可以有更大的战斗力。
3. 最好找一个相对舒适的地方进行集中开发(本次集中的地方过于紧密,且不透气),舒适的工作环境可以让大家的精力更集中。