Today I’d like to talk on the architectural pattern Simplicity. Original description says:
How simply can you structure things, to make it easier for users to do what you’d like them to do?
And example says:
EcoButton allows a user to put a computer into a low-power state with just one press, making it much easier for users to save energy.
When I look at this pattern from managerial point of view I see that this is the way we should use modern methodologies. E.g. Agile, RUP, ITIL in IT world or Six Sigma or Balanced Scorecard in general management.
Usually, people see the problem and can identify the methodology that should fix it. However, than they fight for pure implementation of it according to the book.
That is the place where problem begins. Any methodology is always too general and universal for your exact case. You solve your problem but bring unnecessary complexity. You are starting to obey new rules that are artificial to your process.
And that is the place where this must use pattern comes. Just make the methodology implementation as simple as possible. Remove every single procedure, document or rule that is not relevant to your case. Try to identify exact subset of the methodology that fixes your problem and throw away the stuff that is not needed.
It is absolutely clear that this sweeping looks like bad methodology implementation. But why should you care? Just take care of the initial problem to be solved. And while removing unnecessary complexity think of the reasons it was introduced in the original concept. There might be something that you are not aware of yet.
PS: God bless people who care about making agile more simple rather than fighting for its purity.
Inspired by: http://www.danlockton.com/dwi/Simplicity