SuperAbstract

Last edit July 6, 2004
A slightly HumptyDumpty term for a description of software that may or may not actually have been implemented, in a way that should be true of any implementation.

Of an object type, an informal but precise description (verbal or otherwise) of that type's contracts; thus the SuperAbstract description of the Collection interface would be "represents a group of objects".

Of a framework, the set of such descriptions for the types providing the essential functionality.

A SuperAbstract description should
  • make minimal assumptions about possible implementation languages or platforms
  • be complete enough nonetheless to be the basis of a concrete implementation
  • not trespass on PatternLanguage by prescribing detailed mechanisms or algorithms

-- DavidWright