Sample use of interface:
The home team sends an object ii satisfying interface
InputInitialI to the outsourcing team. The outsourcing
team does not know the internal representation of the object (it
could use DemeterJ datastructures) but they know that
getPairs returns a set of objects satisfying interface
PairI.
The outsourcing team sends back an object satisfying interface
OutputI. Again the home team does not know the internal
representation the outsourcing team uses but they know that there is
a method getMaxBias() to get back the maximum bias. Etc.
For the update case, we use interface InputUpdateI for
input to the outsourcing team and again OutputI for
output from the outsourcing team.
For a more complete specification, refer to: CSU 670 Fall 2006 Project Description.