关于软件工程的思考02:软件工程师的成长

软件工程师的成长

软件系统绝大部分模块都是由个人开发或维护的,这些单个的成员被称为Individual Contributor(IC)。

初级软件工程师的成长主要包括以下几个方面:开发相关知识、软件设计思想、实际成果和相关行业经验。

工作量和质量的衡量因素

软件开发的工作量和质量如何保证?PSP认为由以下几种因素影响:

1、项目大小

2、项目花费时间

3、质量,也就是交付时的缺陷数,这里分为提交给测试人员时的缺陷数和最终发布时的缺陷数(也有人认为re-work返工次数也可以代表质量,但是一般来说返工次数和质量没有直接联系)

4、每个任务交付情况,包括完成任务的平均时间和标准方差,两者相比交付时间稳定也很重要

软件工程师的思维误区

1、分析麻痹:悲观导致无法修复复杂问题

2、不分主次:总想完美的达成目标,而不是先拿出一个比较好的方案

3、过早优化:无视全局的情况下对局部进行优化导致花费大量时间

4、过早泛化(Premature Generalization):过早的做了大量的抽象,总是想着处理所有类似的问题,导致花费大量时间

提高技能和三区域理论

提高技能的关键:通过不断的练习,把低层次的问题都解决了,变成不用经过大脑的自动操作(舒适区),然后再来解决需要脑力解决的问题(学习区),逐步达到更高层次(恐慌区),类似教育理论中三个区域的理论:

原文地址:https://www.cnblogs.com/yinyunmoyi/p/12578102.html