n Information hiding principle:  A  module should
be able to obtain information from another
module only through a well-defined interface
between them.
n Continuity principle:  A small change in the
specifications should effect only a few modules in
the system, and not the entire structure of the
system.
u Structuring a system around data rather than
around functionality measurably enhances
continuity.
n Open-closed principle: The ability to modify or
extend a module without affecting other modules.
u A module that still can be modified is said to
be open.
u A module that is available for use by other
modules is said to be closed.