什么驱动器质量:编码

我的第二本书 什么推动质量 is available on 亚马逊, 在我的 网夫,在所有其他地方 主要书店.

这已经是第4次发布 “什么推动质量是什么”,专注于编码。以前的帖子涵盖了因素 推动要求质量 然后 驱动架构和设计质量。了解驱动器质量使您能够在实际发生问题之前采取行动,从而节省时间和金钱。

通过编码我的意思是实际创建软件产品的活动,使用编程环境或代码生成来编写代码。

推动编码质量的一些因素是:

  1. 编码环境 - 编码环境的质量(例如,支持的功能,稳定性,性能)。
  2. 根本原因分析 - 从开发期间发现的缺陷中学习的能力,(例如,分析缺陷,确定常见原因(与流程,工具和开发环境,能力,管理相关)&组织等),并定义措施以防止其重现)。
  3. 编码能力 - 设计团队WRT编码的技能和体验水平,如何增加工艺
  4. 建筑学&设计性能 - 从前一阶段导致,导致架构的可用性和质量和设计代码的开发团队的设计。
  5. 项目管理绩效 - 在开发项目和交付产品中的质量定义,规划,跟踪和控制。
  6. 过程管理性能 - 定义和基于用于管理和技术工作的过程。用于培训,说明,工具和模板以及网站和经验丰富的人员的可用性的过程的支持。
  7. 设计基础质量 - 作为开发新产品或产品版本的设计基地的遗留产品的质量。
  8. 编码过程成熟 - 所定义的和基线编码过程的质量,包括所有支持材料,如培训和模板。这包括在适当的情况下,使用敏捷或其他编程方法,例如用户故事,对编程或模式。

编码环境和工具

很多关于编码环境,以及它们对生产力和质量的影响。程序员希望有良好的工具能够完成他们的工作。工具应该支持协作,帮助(分发)团队一起创建和维护代码。他们应该轻松地访问代码,并以这样的方式显示程序员可以快速阅读和理解一段代码。

编程工具应自动化自动化有用,但不再是有用的。我有时会跨越定义设计和编码规则的组织,然后自动化这些规则,例如在其版本控制系统中进行自动代码检查。任何不遵守标准的代码都将在检查时被拒绝。虽然起初这可能是确保质量的好方法,但它往往不是。最好培训和教练程序员编写好的代码,然后使用抨击它们的工具。大多数编码规则也具有异常,一个好程序员知道何时应用规则,而不是。最后,程序员将寻找通过代码检查系统的方法;并会找到它们,或者将被允许在压力时绕过它。随着敏捷宣言清楚地说明,“个人和对流程和工具的互动”,专注于软件工艺将提供更好的质量。

软件工艺

有几种方法可以提高您的编码功能。最近的鲍勃马丁书, 干净的编码器, gives examples how programmers can exercise and sharpen their skills in coding dojo’s and doing kata’s. [vimeo http://vimeo.com/2499161]
加入开源项目可以基于收到的反馈来发展您的技能。有几个会议,敏捷程序员可以练习他们的技能。例如在大脑中有 XPDAYS.。还加入社区,就像在荷兰一样 吉他人 或者 agileoverheid. 可以成为发展自己的方式,并建立专业网络。

人们过度过程

关于列表中的项目6,过程管理性能,i’故意在这里使用这个词的过程虽然我知道这很多’人们对此过敏。为我, 一个过程是“我们在这里工作的方式”. It shouldn’T是一个大文件,最好的过程是人们的头部,而不是在他们的内阁中。我认为A.“Definition of Done”敏捷是一个过程,这是团队同意工作的方式。如果一个团队进行回顾,并决定将来不同地做事,对我来说’一个过程改变。如图所示,管理程序的管理方式会影响产品的质量。人们是否知道这个过程(知道他们如何合作!),他们是否被培训使用它们?是否存在实际使用率的反馈,是进程更新和最佳实践共享?我们知道我们流程的表现吗?有效支持流程对于能够按时提供质量至关重要!

设计基地的质量,遗留码,直接影响产品的质量,因为此代码是其中的一部分。知道如何管理其技术债务的组织,以及如何提高现有代码的质量,更能提供高质量的产品。 评论和检查 如果以合理的方式应用,例如以合理的方式应用,可以是一种非常有效的方法,以便以合理的方式应用,例如在重构中。尖峰是尽早处理项目中的风险的好方法。自动化测试可以帮助验证代码是否在更改后仍然可以。更多关于 测试如何推动质量 在这个系列的下一篇文章中 “什么推动质量是什么”.

结论

了解驱动器质量使您能够在实际发生问题之前采取行动,从而节省时间和金钱。像你的程序员的工作环境和工艺一样对软件产品的质量有很大影响。测试自动化和连续代码质量改进对于防止您的客户质量问题至关重要。

(本博客发布于2011年7月5日,2011年11月3日更新:延长和改进)。

分享这种经历
  • 30
    分享

本林德林

我帮助组织具有有效的软件开发和管理实践。有关敏捷,精益和质量的多个网络的活跃成员,以及常见的演讲者和作家。

这篇文章有3条评论

  1. Itoctopus.

    嗨本,

    我认为您省略了在编码中推动质量的一个重要因素,这是编码的标准化(例如,命名约定,评论等…)。您不知道这将增加代码的质量和所产生的产品。

    1. 本林德林

      完全同意,请参阅本博客上的设计和编码规则的段落;它可以减少技术债务,并少了解一个更少的人机。

      确保人们了解规则的方式和原因。在我与之合作的一家公司中,人们在发现未活的代码时,人们在审查会议时短暂澄清编码规则’遵守具体规则。

发表评论

本网站使用AkisMet减少垃圾邮件。 了解如何处理评论数据.