Tightly coupled components tend to make maintenance and reuse much more difficult because a change in one component automatically means changes in others. See Coupling for a discussion on ways to create a loosely coupled architecture.