A good design means software is easy to change and software will always need changing to incorporate the latest business requirements.

Loose coupling between components allows components to be replaced as changing business requirements demand.

Using design patterns means components are built to well defined standards for common problems thus not reinventing the wheel.