Proven System Metaphors

Taken from EightSystemMetaphors


Eight ArchitecturalPatterns were discussed in the book ShawOnSoftwareArchitecture. They can be seen as SystemMetaphors, although the distinction between a FrameWork and a SystemMetaphor would be useful to explore. Is a FrameWork is a design template, while a SystemMetaphor is a way of thinking about systems that is more generative?

Some of the SystemMetaphors in common use in interactive systems: I was thinking about archetypal domain-specific metaphors and I guess that's what this page is supposed to be about... now if we can just get someone to add the other three and describe them...

What about the metaphor behind games like Doom, Quake, Half-life...?

That would probably be VirtualSpaceMetaphor? - the idea that the system represents a space which shares properties with the real world.

They're called FirstPersonShooters?. It's descriptive if nothing else.
SystemMetaphors are very similar to the AttributeBasedArchitecturalStyles [1][2] project hosted by the SoftwareEngineeringInstitute at CarnegieMellonUniversity. However, ABAS operates at a different level of abstraction. For example, one of their metaphors is PipesAndFilters [Shaw96] (aka ConcurrentPipes?). (Special case of ManufacturingMetaphor)

[1] http://interactive.sei.cmu.edu/Recent_Publications/1999/December/99tr022.htm BrokenLink

[2] http://www.sei.cmu.edu/architecture/abas.html
Does BlackboardMetaphor belong here? The original author apparently had 8 specific metaphors in mind and I can't tell if this is one of them.

Yes, Shaw and Garlan mention it I think the author was thinking metaphors for user interactive systems.

Note that those are also only (some of?) the metaphors in common use.
Where did the idea come from, that there actually is this small limited number of SystemMetaphors?

It might be fairer to say there are a small number of "well-known" system metaphors on the analogy of well-known TCP/IP ports. But maybe all the items on the list above should really be thought of as very high-level design patterns, and the term SystemMetaphor reserved for domain-specific models. -- TomRossen
Also see ProblemFrame, ProblemSpace, LudditeOfficeAutomation.
CategoryMetaphor

EditText of this page (last edited March 14, 2008) or FindPage with title or text search