Only Deliver Value

Lean Software Development Values

The Lean software development culture repeats many of the principles that have been described above. At the heart of all of these principles is the need to use your time to only deliver value. You should be aware at every moment of your day, how your current activity delivers value to the Company and its customers.

Eliminate Waste

Everything not adding value to the customer is considered to be waste:

  • unnecessary code and functionality
  • delay in the software development process
  • unclear requirements
  • bureaucracy
  • slow internal communication

We call this “friction”. Time spent eliminating sources of friction multiplies the amount of value you can deliver with the rest of your time.

Amplify Learning

By following Refactor Continuously and other agile practices you ensure that the results of your learning are made obvious and accessible to the rest of the team. When you radiate your learning, the whole team benefits. This increases the value of your learning.

Decide as Late as Possible

See also Decide at the Last Responsible Moment

Deliver as Fast as Possible

See also Release Early, Release Often

Empower the team

“Find good people and let them do their own job.”

See also Make Realistic Plans.

Build integrity in

The customer needs to have an overall experience of the System — this is the so called perceived integrity: how it is being advertised, delivered, deployed, accessed, how intuitive its use is, price and how well it solves problems.

See the whole

Software systems nowadays are not simply the sum of their parts, but also the product of their interactions. Defects in software tend to accumulate during the development process — by decomposing the big tasks into smaller tasks, and by standardizing different stages of development, the root causes of defects should be found and eliminated.