10

Click here to load reader

Lean (Agile Development Method)

Embed Size (px)

Citation preview

Page 1: Lean (Agile Development Method)
Page 2: Lean (Agile Development Method)

What is Lean ?

A method of Agile development.

The term ”lean thinking” was coined by James P. Womack and Daniel T. Jones.

Focusing concepts:

1. Value

2. Value streams

3. Flow

4. Pull

5. Perfection

Page 3: Lean (Agile Development Method)

Principles of Lean Thinking:

Eliminate Waste

Amplify Learning

Delay Commitment

Deliver Fast

Build Integrity In

Empower The Team

Page 4: Lean (Agile Development Method)

Eliminate waste

Lean philosophy regards everything not adding value to the customer as waste (muda). Such waste may include:

unnecessary code and functionality

delay in the software development process

unclear requirements

avoidable process repetition (often caused by insufficient testing)

Bureaucracy

Page 5: Lean (Agile Development Method)

Amplify Learning:

Page 6: Lean (Agile Development Method)

Delay Commitment:

The best decisions are made when you have the most information available.

If you don’t have to make a particular decision now, wait until later when you have more knowledge and information.

But don’t wait too long, either-lack of a decision should not hold up other aspects of the project.

Page 7: Lean (Agile Development Method)

Deliver Fast:

“Delivery fast” means developing features in small batches that are delivered to the customer quickly, in short iterations.

These feature can be implemented and delivered before the associated requirements can change.

Page 8: Lean (Agile Development Method)

Build Integrity In:

Does not mean big, upfront design, but don’t try to tack on integrity after the fact, build it in.

External (perceive) integrity means that the totality of the product achieves a balance of function, usability, reliability, and economy that delights customers.

Inter (conceptual) integrity means that the system’s central concepts work together as a smooth, cohesive whole.

The way to build a system with high perceived and conceptual integrity is to have excellent information flows both from customer to development team and between the upstream and downstream processes of the development team.

Page 9: Lean (Agile Development Method)

Empower the Team:

Does not mean to abandon leadership, but to let the people who add value use their full potential.

While software development cannot be successful without disciplined, motivated people, experimentation and feedback are more effective than trying to getting things right the first time.

The critical factor in motivation is not measurement, but empowerment: moving decisions to the lowest possible level in an organization while developing the capacity of those people to make decisions wisely.

Page 10: Lean (Agile Development Method)

Thank

You