Coupling
The amount of interdependence among 2 or more classes, modules, or mechanism.
Cohesion
The amount to which every elements of a module, class, or part work jointly as a functional unit.
In a good software design, why modules should have low coupling and high cohesion?
Cohesiondepend on amount the elements of a module that go together, and the related code should be relative to each other, for that you should struggle for high cohesion and attach all related code jointly as close as possible. It has to do with the elements within the module. While Coupling depend on degree to the different classes depend on each other, all modules should be independent as distant as possible.