Why would your Customer entity NOT be a 3NF?
- A customer might have multiple addresses
- A customer might have multiple contact details ... and they are again probably independent from an address
In such cases ...
- Customer (CustID*, ShortName)
- CustAddress ((CustID, AddrID)* Address, ZIP, State, *CountryID)
- CustContact ((CustID, ContID)*, *ContactType, ContactValue)
... may help better normalizing your model.