component has behaviour, but no state and no identity. It's
useful for modelling things that provide single independent
execution of an operation. For example a command object, wrapper
of legacy procedure or a TUXEDO service can be modelled as
session component has a behaviour, a transient state
and but no persistent identity. It's useful for modelling
a client session such as Login, Iterator or Shopping Cart.
component has behaviour (possibly transactional), persistent
state which is not visible to client and identity which is
visible to client via a primary key. It's useful in modelling
business entities such as Account, Customer etc.
component has behaviour, persistent state which is not visible
to client and persistent identity which is visible through
explicit user defined operations. It's useful to model a business
process rather than entities. For example order processing
and payment processing can be modelled as process components.