《软件管理沉思录》读书笔记

本书首先深入讲解了计划的类型和过程,接着分析了项目团队的建设和激励,再描写了如何与上司共事,并说服他们采用最佳实践,最后探讨了个人的职责、承诺和过程。本书的作者沃兹不仅描述了改进软件工程过程的方法,更注重指导“所有软件开发技术人员和项目管理者做好工作规划和记录,使用最佳技术工具,检测和管理工作质量”。

沃兹认为,不能管理知识工作者,必须让他们管理他们自己。管理者必须真正花时间与员工交谈,告诉他们什么是需要做的以及原因是什么,这正是启动过程要做的事,且十分有效。它的主旨就是给开发人员及其团队一个机会去分析怎样才能完成工作。完成计划后,他们会从中收获信心,进而提高团队的可信度,与管理者商谈,并取得胜利。

本书中,作者经常提到个人软件过程PSP、团队软件过程TSP和软件能力成熟度模型CMM三种过程方法。PSP重点在于工程师的计划,以及遵照计划工作、记录时间和缺陷的数据、测量程序规模,并交付完整的计划总结表。TSP则提供了一个明确的操作过程,包括创建工程团队、建立高效的团队环境以及指导团队合作所必需的操作过程。在此过程中,团队成员需要协同合作、有纪律地工作。由于TSP遵循可交互、可演变的发展策略,计划通常只在几个月内是精确的,因此它还需要定期的重新启动。CMM旨在为组织提升表现提供所需的高效过程,在实际应用中,为避免内容上的重叠和冲突建立的众多模型被统称为CMMI,它是一种过程改进成熟度模型,用于产品或服务开发,它由一些最佳实践做法组成,涵盖了产品从概念到发布及维护的整个生命周期。

软件工程师的工作就是在计划成本和计划进度内交付高质量的产品。软件的高质量主要在于其提供了对用户而言是最重要的功能。在软件开发过程中,为了保证质量始终如一,必须遵循以下8个步骤:

①确立质量控制的策略、目标和计划;

②正确训练、指导和支持开发人员及其团队;

③确立和维护软件需求的质量管理过程;

④确立和维护软件工程过程的统计控制;

⑤审查、 检查并评估所有的产品制品;

⑥评估所有缺陷,加以更正并用以识别、纠正和预防其他类似问题;

⑦确立和维护配置管理和变更控制系统;

⑧持续改进开发过程。

为了开发出高质量的项目,需要制定好计划。阶段计划基于时间段,产品计划基于行动;压力面前尤其需要做计划,每一项主要的工作都需要制定产品计划,且计划必须易于理解、清晰明白、详细具体、精细缜密、准确无误,需要动态变化、常作维护,和管理者共同审查。

一个高效的团队需要团结、富有挑战性的目标、反馈以及通用的工作架构。他们致力于共同的目标,成员合作会比个人独立工作更加出色。目标可量化为详细的计划、功能目标、质量要求和进度里程碑等等。常见的团队问题有领导、合作、参与、拖延、质量、功能蔓延和评估等方面。透明、倾听和协商是团队交流的三要素。合作和依赖会产生凝胶型团队所需的信任感和凝聚力。典型的团队按照组建、动荡、规范和执行四阶段的生命周期进行演化。在组建阶段,成员们明确自己的任务和目标,界定各自工作的步骤、过程、标准和计划,并从中确定团队领导者。自主指导性团队对于完成复杂、创新性的工作显得尤其重要,它的典型特征有:具有团队感和归属感;共同对团队目标作出承诺;对过程和计划有主人翁意识;具有制定计划的技巧和执行计划的纪律;追求卓越。当然,具备有效的领导是最最重要的一点。

好的领导力对项目的成败有着决定作用,领导也应该自愿作出并维护承诺,如下图所示,可信的团队承诺有自愿、可见、可信、得到承认四条要求。承诺可见意味着开发团队参与的协商过程必须是透明、有书面结果的。领导需要用短期目标制造紧迫感,用每周的状态追踪和定期的管理审查帮助团队实现中间目标。利用恐惧、贪婪和承诺激励团队成员的工作,遇到动荡阶段,领导者也应当帮助团队理解和处理挫折。而领导也应当帮助构建管理团队,把一群雄心勃勃、喜欢争论、富有进取精神的管理者们凝聚成一支配合默契、高效运转的团队。领导者应当尽量让所有的团队成员都参与,努力和耐心克服团队成员的缄默,擅于引导性地提问、装聋作哑、频繁地检查约定、感受没有说出口的疑虑或不同意见、不让个人完全控制讨论、管理专家、指导团队领导者、关注事实和数据,且不允许有旁观者。

缺乏有经验的领导、缺乏清晰的目标和明确的过程和计划都会导致项目的拖延和缺乏信心。项目团队失败的最常见的四条原因不外乎资源不足、领导问题、目标不可能实现和士气问题。要理性地管理团队,需要明确行动目标、为短期目标制定计划、评估和追踪计划完成情况,并持续监督业务执行情况,这四要素彼此相关,且都是高效管理风格所必需的。

团队工作中遇到危急时刻时,负责的领导者习惯独断专行地解决问题,并能从中得到情感的满足,但一定要注意,集体作出的决策通常要比个人决定好得多,即使他是一位专家。领导者应当学会授权委派他人来完成工作,告诉团队成员应当如何完成工作却不插手具体事务,此外,还应当按照日程进度利用已有的资源完成此项工作,要让产品满足明确的需求以及暗含的需求,让管理者随时了解团队的工作进展情况,让管理者了解出现的问题并采取正确的对策,与组织中其他部门协调一致地工作,遵守组织的所有规章、制度和标准。

而作为团队成员,要控制自己的工作,做自己的管理者。其间,要注意到明确一个工作过程、提高工作质量、不中断或被打断地工作、学会处理紧张和压力、学会时间管理、避免拖延、信守承诺、执著追求卓越。要通过确定质量目标、衡量产品质量、理解过程、调整过程、应用调整后的过程、衡量结果、把结果与目标进行比较、循环并不断改进等步骤来改进工作方式。安排时间和计划时,要注意不能连续长时间做劳心费神的工作,可以安排不同种类的任务,如在精力最充沛、效率最高的时候做一些创新性额工作,再去做处理邮件或行政工作等。此外,要保证自己的承诺是负责任的并很好地管理就需要分析工作、做计划、用书面形式记录下约定、特殊情况下把影响最小化。

要做一位高效的团队成员,需要主动做任何需要做的事情而不用要求和指示,主动参与团队合作,需要基于计划作出负责任的承诺并努力实现它,有责任与整个团队分享自己的新思想,有义务帮助维护团队的秩序。不仅要清楚地表明自己的看法,也要注意他人的意见并接受帮助。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值