写点什么

速览:软件开发中的 7 大浪费

  • 2009-08-13
  • 本文字数:920 字

    阅读完需:约 3 分钟

精益软件开发的基本原则是追求浪费最小化。TPS 总结了制造业的 7 种主要浪费,而 Poppendiecks 已经把它们引入到我们软件开发的领域中。Jack Mulinsky 最近在 agilesoftwaredevelopment.com 上发表了系列文章对这些浪费进行一一介绍。

该系列文章的第一篇讨论了 **部分完成工作 ** 这一浪费。软件中的这种情况相当于精益制造业中的“进行中的清单”,Mulinksy 认为这是所有浪费中最极品的部分。他对“进行中的工作”这种浪费归纳如下:

  • 已完成但尚未签入的代码
  • 没有相关说明文档的代码
  • 未测试的代码
  • 没人使用的代码
  • 被注释掉的代码

第二篇文章中,参考那个众所周知的统计数据:在现有的软件应用程序中,多达三分之二的功能几乎或从未被使用过,Mulinsky 提出 **额外的功能 **(制造业中的“生产过剩”)这一浪费。除此之外,他还指出什么是直接浪费(开发的花费而不是人员)以及什么是间接浪费(更多的功能意味着更多的代码以及更高的维护复杂度)。

Mulinsky 的第三篇文章关注的是软件 **再学习/ 返工 ** 的浪费,这对应于精益制造业理论中的“额外处理”这一浪费。他用了这样一些浪费的例子来描述了他的想法,包括:

  • 糟糕的计划
  • 低劣的质量
  • 在不同的任务间切换
  • 不足的沟通和知识积累
  • 没有相关说明文档的代码

这一系列中的第四篇(写此文时最新的部分)讨论的是 **交接 ** 带来的浪费,软件中的交接相当于制造业中的“运输”。他提到了以下一些可能产生浪费的技术方面的例子:

  • 开发人员之间的代码交接
  • 开发人员和测试人员间软件的交接
  • 软件从开发到部署的交接

Mulinsky 应该很快会继续其余 3 个软件浪费的话题:在不同的任务间切换延期缺陷。软件浪费这一概念,是由 Mary Poppendieck 和 Tom Poppendieck 在他们两本非常出色的精益软件方面的书《Lean Software Development: An Agile Toolkit for Software Development Managers》和《Implementing Lean Software Development: From Concept to Cash》中提出的。如果这是你和这一概念的第一次亲密接触,敬请期待 Mulinsky 的后续大作。

同样,对那些很熟悉这些观点的朋友们,不妨分享一下你们觉得浪费是怎么在软件开发中产生的,你们又是如何消除它们的?这会对大家都有很帮助。

查看英文原文: A Quick Look At The 7 Wastes of Software Development

2009-08-13 09:335057
用户头像

发布了 114 篇内容, 共 38.7 次阅读, 收获喜欢 2 次。

关注

评论

发布
暂无评论
发现更多内容

C语言编程—语法练习

芯动大师

C语言 语法 6 月 优质更文活动

在 Go 中使用 sqlx 替代 database/sql 操作数据库

江湖十年

数据库 后端 sql Go 语言

Backdata.net 搜索引擎

Yongqiang

搜索引擎 导航网站

在人工智能冲击下,IT部门的生存价值在哪里?

FN0

AIGC

万字详解常用设计模式

越长大越悲伤

设计模式

CSS小技巧之悬停3D发光效果

南城FE

CSS 前端 动画 3D 交互

漫谈 SAP 产品里页面上的 Checkbox 设计与实现

汪子熙

SAP 前端设计 思爱普 6 月 优质更文活动

海外交友源码平台搭建:基础功能的实现(一)

山东布谷科技

软件开发、 源码搭建 海外市场 语音交友源码

手牵手带你实现mini-vue | 京东云技术团队

京东科技开发者

Vue 数据绑定 vue2 企业号 6 月 PK 榜 双向数据绑定

Airtest图像识别测试工具原理解读&最佳实践 | 京东云技术团队

京东科技开发者

图像识别 移动开发 UI自动化测试 企业号 6 月 PK 榜 Airtest

Vue3中常用的Composition(组合)API-ref(引用)函数

不觉心动

6 月 优质更文活动

前端如何处理「并发」问题?

不叫猫先生

并发 axios 6 月 优质更文活动

数字化扶乩的最佳语言是英语?

FN0

AIGC

AI关于AI民主化的高见

FN0

AIGC

一文读懂ChatGPT的工作原理:大语言模型是个啥?它到底咋工作的?

禅道项目管理

#人工智能 ChatGPT AI 2022

基于STM32的铁路自动围栏系统设计

DS小龙哥

6 月 优质更文活动

随机2D形状周围层流预测!基于飞桨实现图形神经网络

飞桨PaddlePaddle

人工智能 百度 飞桨

Java 内存与缓存管理:应对大数据场景的优雅高效策略

xfgg

Java 6 月 优质更文活动

如何在 Linux 上列出磁盘?

wljslmz

6 月 优质更文活动

Vue3中常用的Composition(组合)API-初识setup

不觉心动

6 月 优质更文活动

华为云CodeArts Build快速上手编译构建-进阶玩家体验

云计算 编译 开发 华为云

xenomai内核解析--实时linux概述

沐多

RTOS 实时linux xenomai

Vue3中常用的Composition(组合)API-watch(监视)函数

不觉心动

6 月 优质更文活动

300行代码模拟cdn访问过程

蓝胖子的编程梦

CDN DNS CDN加速 CDN技术 #DNS

Vue3中常用的Composition(组合)API-ref(引用)函数

不觉心动

6 月 优质更文活动

微服务中「组件」集成

Java 架构

如何评估大型语言模型(LLM)?

Baihai IDP

人工智能 深度学习 大模型 白海科技 大模型评估

使用华为云AstroZero,不用一行代码,制作端午节加班申请模板

云计算 零代码 华为云

做好演讲表达的道法术器(《如何激活你的表达思维》-- 培训收获)(68/100)

hackstoic

领导力 演讲 沟通

培育开源人才,助力开源生态发展|2023开放原子全球开源峰会校源行分论坛圆满落幕

开放原子开源基金会

开源 开放原子全球开源峰会 开放原子 校源行

基础设施SIG月度动态:ABS新增ISO、VHD镜像构建,自动热补丁制作流程正式上线

OpenAnolis小助手

镜像 基础设施 龙蜥社区 sig abs

速览:软件开发中的7大浪费_研发效能_Mike Bria_InfoQ精选文章