The Simplest thing that could Possibly work

June 27, 2008 by mrdavidlaing
Filed under: Architecture 

Jay has a good discussion concerning the design dilemma we often face considering the “simplest thing that could possible work”. Is it appropriate to implement a simple half baked solution that we know we will throw away as requirements become more defined? Or should we start out with a more complex pattern that will give us more flexibility?

http://blog.jayfields.com/2008/06/simplest-thing-that-could-possibly-work.html

Jay concludes that you can’t decide which pattern will give you the right flexibility until you have more requirements. So, rather than potentially implement the wrong complex solution, just treat the temporary solution as part of the learning process.

I agree. Like optimising, you need to know the precise requirements before you can choose the right pattern.

Throw away code isn’t wasted; rather its used like scrap paper in the learning process.

Comments

Tell me what you're thinking...
and oh, if you want a pic to show with your comment, go get a gravatar!

You must be logged in to post a comment.

  • Tags

  • Recommended reads

    Applying Domain-Driven Design and Patterns: Using .Net
    Domain-driven Design: Tackling Complexity in the Heart of Software
    Clean Code: A Handbook of Agile Software Craftsmanship (Robert C. Martin)
    Agile Estimating and Planning (Robert C. Martin)
    Test Driven Development (The Addison-Wesley Signature Series)
  • Latest del.icio.us links