Software Architecture Principles by Bruce Lee – 4

The techniques, though they play an important role in the early stage, should not be too restrictive, complex or mechanical. If we cling to them, we will become bound by their limitation. –Bruce Lee

This lesson highlights the limitations of any approach, architecture, or methodology.  All methodologies and architectures have limitations; this is natural.  We learn techniques and patterns in order to provide the framework in which we as practitioners (developers) operate, but we must always be aware that all of them have limitations.  The mental framework that our experience gives us prepares us to know which technique to use when the appropriate situation arises.  We should never begin any endeavor favoring a specific technique, solution, or tool.  We should use the best tool at the appropriate time for that unique situation.

Walking into a sparring match (or combat) expecting to win with a right hook is similar to walking into a solution expecting to use a specific pattern and implementation.  In both pain is sure to follow.


About danrosanova
I am a Principal Program Manager for Messaging at Microsoft and product owner for Azure Messaging: Service Bus, Relay, and Event Hubs. I have a long history in distributed computing on a variety of platforms and have focused on large scale messaging and middleware implementations from inception to implementation. I was a five time Microsoft MVP before joining Microsoft and author of the book Microsoft BizTalk Server 2010 Patterns.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

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

Google+ photo

You are commenting using your Google+ 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 )


Connecting to %s

%d bloggers like this: