构建之法阅读笔记02

2.3 个人开发流程

个人开发流程PSP(Personal Software Process)

特点:(1)不局限于某一种软件技术,而是着眼于软件开发的流程,这样,开发不同应用的软件工程师可以互相比较。

(2)不依赖于考试,而主要靠工程师自己收集数据,然后分析、提高。

(3)在小型、初创的团队中,很难找到高质量的项目需求,这意味着给程序员的输入质量不高。在这种情况下,程序员的输出(程序/软件)往往质量也不高,然而这并不能全部由程序员负责。

(4)PSP依赖于数据(工程师输入数据的时间代价、数据可能遗失或者不准确的风险、可能会出现一些数据不利于工程师本人的情况)

(5)PSP目的是记录工程师如何实现需求的效率,而不是记录顾客对产品的满意度,工程师有可能很高效地开发出一个顾客不喜欢的软件。

3.1 个人能力的衡量与发展

①软件工程包括了开发、运用、维护软件的过程中的很多技术、做法、习惯和思想。软件工程把这些相关的技术和过程统一到一个体系中,叫“软件开发流程”,软件开发流程的目的是为了提高软件开发、运营和维护的效率,以及提升用户满意度、软件的可靠性和可维护性。

②初级软件工程师的成长包括以下几种:

(1)积累软件开发相关的知识,提升技术技能(如对具体技术的掌握,动手能力)。例如:对JAVA、C/C++、C#的掌握,诊断/提高效能的技术,对设备驱动程序、内核调试器的掌握,对于某一开发平台的掌握

(2)积累问题领域的知识和经验(例如对医疗或金融行业的了解)

(3)对通用的软件设计思想和软件工程思想的理解

(4)提升职业技能(区别于技术技能),包括:自我管理的能力、表达交流的能力、与人合作的能力、按质按量完成任务的执行力

(5)实际成果——最重要的评价标准

3.2 软件工程师的职业发展自我评估,自我评价清单:软件工程师能力自我评价表

个人感受部分:

在我过去我写程序还是web还是软件等的思想是,无论做啥,都是用一门语言,用一个语言完成所有。

并且在做的过程中也没有进度要求和评价,在做完后交完作业后就完事了,没有返回来看的习惯,最

多了是回来写一些注释。

根据书中所说到的,我发现只靠一门语言局限性太大了,很多事情无法完成,儿不定期的定时的进行

限时训练和自我评估,会导致自己的动力下降,没有动力去做此事。会慢慢变得怠慢,懒惰。

对此我再在做web的时候采用多种语言的结合,并且训练的时候都限时,以最快的速度尽可能完美的

完成,最后在做完后进行自我评估,了解此次自己的综合得分,优胜之处与不足之处,以便提升自我。

 

posted @ 2023-03-25 15:42  风·华正茂  阅读(11)  评论(0编辑  收藏  举报