Un gran bel articolo  di James Shore sulla qualita' del design del 
software, con molti spunti interessanti e alcuni suggerimenti di valore:
Specifically, if you're an "architect" or "designer" and you don't 
  produce code, remember that it's the programmers who are finishing your design 
  for you. They're going to fill in the inevitable gaps and they're going to 
  encounter and solve problems you didn't anticipate. If you slough this detail 
  work off onto junior staff, the final design could easily be lower quality 
  than you expected. Get your hands dirty. Follow your design down to the 
  code. 
powered by IMHO 1.3