n The fundamental abstractions from
which we build software systems.
n Designed to support the
functionality of the system.
n Responsible for performing specific
tasks.