Lean Software Development

6 Mar

Todays blog dealing with ‘Lean’ is running on from my previous blogs. Last time I discussed Scrum and gave an outline and explored its functionality.

Lean can be defined as

“A systematic approach to identifying and eliminating waste through
continuous improvement, flowing the product at the pull of the customer
in pursuit of perfection.”

  1. Eliminating 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
  • insufficient testing, leading to avoidable process repetition
  • bureucracy
  • slow internal communication

Some waste is obvious but it is key to be able to spot it as this minimal amount of waste may be saving from further waste building up in the long run.

  •  Amplifying learning

Creating Feedbacks important in the development process Running tests often to keep track of defects reported so as to avoid backlog. Important to reduce documentation and put more codin twith th realtime feedback.

  • Deciding as late as possible

With big projects it is important to realize sense of uncertainty that environment can change. The more complex a system is, the more capacity for change should be built into. An agile software development approach can move the building of options earlier for customers, thus delaying certain crucial decisions until customers have realized their needs better.

  • Delivering as fast as possible

It is vital that all processes are delivered as fast as possible feedback, programmes, coding etc as in the technology sector everything advances quickly so iterations need to be frequent. Delays can be costly to a project!

  • Empowering the team

Mangers need to be able to lead a team. Creating sense of motivation workers need a purpose to focus on to develop.

  • Building integrity

Perceived integrity is the customer’s experience with your software. Conceptual integrity is how well the architecture and system components flow together to bring about the perceived integrity. 

  • Seeing the whole

Most problems are solved by breaking up into parts don’t normally do this with Lean.

Toyota used lean manufacturing in its production process in the 80’s. Similar to Lean software development.

Resources: http://www.slideshare.net/jpvajda/lean-software-development-principles

2 Responses to “Lean Software Development”

  1. sad109566511 March 9, 2013 at 12:53 pm #

    Really well laid out,well written and very interesting read!! I didn’t realize it took so much work to get perfection in software development!

  2. sad111477238 March 9, 2013 at 11:52 pm #

    I agree.. it’s hard to believe there is that many phases!

Leave a Reply

Please log in using one of these methods to post your comment:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: