Good Design is design that leads to simplicity in implementation and maintenance, and makes it easy to understand the code.