Goal: Incorporate the Observer, Persistent (Snapshot), Remote Patterns
Ultimate Object: Many Observers can be notified upon updates, the object lives forever
on the disk, and the object can be distributed somewhere else on the network.
First, consider Observable and Persistent Objects
Persistence achieved with SQL database or Java's Serializable interface
Second, consider Persistent and Remote Objects
Remote Objects achieved with Java's Remote Method Invocation (RMI)