《看板方法:科技企业渐进变革成功之道》-读书笔记10-第3章 一种成功秘诀-2
以下文章选自《无以名之》
《看板方法:科技企业渐进变革成功之道》
「20201023」今日音频
010-看板方法:科技企业渐进变革成功之道-第3章 一种成功秘诀-2
来自无以名之
00:00
05:21
音频内容:3.1 使用秘诀:专注于质量。
3.1 使用秘诀
专注于质量
“敏捷宣言的原则”谈及了技艺(craftsmanship),其中隐含表明了对质量的关注。但敏捷宣言本身并没有提及质量。那为何作者将其作为第一条成功秘诀呢?简单来说,缺陷过多是软件开发中最大的浪费。有数据表明:团队花费超过百分之九十的精力在修复缺陷上是一种普遍现象。
鼓励提高初始质量(initial quality)会对高缺陷率团队的生产力和交付速率产生巨大影响。可能获得2~4倍甚至10倍的交付速率提升。
软件质量有待提高是一个众所周知的问题。
无论是敏捷开发方法还是传统开发方法,对提高质量都有可取之处。应该综合使用它们。要求测试人员做好测试,防止缺陷遗留在代码中;要求开发人员编写单元测试代码,使单元测试代码自动化,以提供自动化的回归测试。测试驱动开发(TDD)能带来使测试覆盖更为完整的好处。
代码检查能提高质量。代码检查能够帮助改善内部和外部的代码质量。采用结对编程、同行评审、代码走查和完整的费根式检查(Fagan inspections)进行代码检查都很有效。最好经常做代码检查,并且以小批量进行为好。建议团队成员每天至少花 30 分钟进行代码检查。
协作式的分析和设计,能够提高质量。团队一起分析问题和设计解决方案,产出的质量会更高。建议团队成员召开协作式的分析与设计建模会议。设计建模应该以小批量的方式每天进行。斯科特・安布勒(Scott Ambler)将此称为敏捷建模(Agile modeling)。
使用设计模式(design patterns)能够提高质量。设计模式总结了对已知问题的已知解决方案。使用设计模式能够确保更早地获取更多的信息,使设计缺陷在软件生命周期的早期就得以消除。
使用现代开发工具能够提高质量。许多现代开发工具都包括静态代码分析和动态代码分析的能力。对每个项目,应该把代码分析的开关打开,不断进行代码优化。这些分析工作,可以防止开发人员犯低级错误,如安全漏洞这类众所周知的问题。另外,软件产品线(software product lines)(或软件工厂)和领域专用语言(domain specific languages)也能减少缺陷。软件工厂可将设计模式封装为代码片段,从而降低在录入代码时引入缺陷的概率;还可用于自动化编码,取代重复性的编码任务,这样,可以降低代码录入时引入缺陷的概率;可减少对代码检查的依赖(自动产生的代码质量是已知的,不需要对之重新检查)。
减少进行中的设计(design-in-progress)的数量,能够提升软件质量。
这些建议中有些属于“降低变异性”的部分:使用软件工厂,甚至仅使用设计模式,都是在要求开发者改变行为。使用专业测试人员、测试先行、自动化回归测试以及进行代码检查,可以获得更多的回报。
版权声明
本人所读图书的版权属于原著者和译者。这里仅为个人学习使用。但由本人学习整理所形成的音频、图片、文字和视频等的版权为本公众号拥有,任何人不得未经授权转载。
如果你觉得本文有用,欢迎分享给其他人。谢谢。
《看板方法:科技企业渐进变革成功之道》
「20201023」今日音频
010-看板方法:科技企业渐进变革成功之道-第3章 一种成功秘诀-2
来自无以名之
00:00
05:21
音频内容:3.1 使用秘诀:专注于质量。
3.1 使用秘诀
专注于质量
“敏捷宣言的原则”谈及了技艺(craftsmanship),其中隐含表明了对质量的关注。但敏捷宣言本身并没有提及质量。那为何作者将其作为第一条成功秘诀呢?简单来说,缺陷过多是软件开发中最大的浪费。有数据表明:团队花费超过百分之九十的精力在修复缺陷上是一种普遍现象。
鼓励提高初始质量(initial quality)会对高缺陷率团队的生产力和交付速率产生巨大影响。可能获得2~4倍甚至10倍的交付速率提升。
软件质量有待提高是一个众所周知的问题。
无论是敏捷开发方法还是传统开发方法,对提高质量都有可取之处。应该综合使用它们。要求测试人员做好测试,防止缺陷遗留在代码中;要求开发人员编写单元测试代码,使单元测试代码自动化,以提供自动化的回归测试。测试驱动开发(TDD)能带来使测试覆盖更为完整的好处。
代码检查能提高质量。代码检查能够帮助改善内部和外部的代码质量。采用结对编程、同行评审、代码走查和完整的费根式检查(Fagan inspections)进行代码检查都很有效。最好经常做代码检查,并且以小批量进行为好。建议团队成员每天至少花 30 分钟进行代码检查。
协作式的分析和设计,能够提高质量。团队一起分析问题和设计解决方案,产出的质量会更高。建议团队成员召开协作式的分析与设计建模会议。设计建模应该以小批量的方式每天进行。斯科特・安布勒(Scott Ambler)将此称为敏捷建模(Agile modeling)。
使用设计模式(design patterns)能够提高质量。设计模式总结了对已知问题的已知解决方案。使用设计模式能够确保更早地获取更多的信息,使设计缺陷在软件生命周期的早期就得以消除。
使用现代开发工具能够提高质量。许多现代开发工具都包括静态代码分析和动态代码分析的能力。对每个项目,应该把代码分析的开关打开,不断进行代码优化。这些分析工作,可以防止开发人员犯低级错误,如安全漏洞这类众所周知的问题。另外,软件产品线(software product lines)(或软件工厂)和领域专用语言(domain specific languages)也能减少缺陷。软件工厂可将设计模式封装为代码片段,从而降低在录入代码时引入缺陷的概率;还可用于自动化编码,取代重复性的编码任务,这样,可以降低代码录入时引入缺陷的概率;可减少对代码检查的依赖(自动产生的代码质量是已知的,不需要对之重新检查)。
减少进行中的设计(design-in-progress)的数量,能够提升软件质量。
这些建议中有些属于“降低变异性”的部分:使用软件工厂,甚至仅使用设计模式,都是在要求开发者改变行为。使用专业测试人员、测试先行、自动化回归测试以及进行代码检查,可以获得更多的回报。
版权声明
本人所读图书的版权属于原著者和译者。这里仅为个人学习使用。但由本人学习整理所形成的音频、图片、文字和视频等的版权为本公众号拥有,任何人不得未经授权转载。
如果你觉得本文有用,欢迎分享给其他人。谢谢。