Taken from EightSystemMetaphors ------ Eight ArchitecturalPattern''''''s were discussed in the book ShawOnSoftwareArchitecture. They can be seen as SystemMetaphor''''''s, 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 SystemMetaphor''''''s in common use in interactive systems: * SpreadsheetMetaphor * ScriptMetaphor * ManufacturingMetaphor (e.g. LinesStationsBinsParts or AssemblyLine) * AccountingMetaphor (double-entry archive notation) * ShoppingCartMetaphor (e-commerce) * AuctionMetaphor (e-commerce) * BlackboardMetaphor (ai) * DocumentProcessor (desktop systems that use ModelViewController where the "model" gets saved as a file) * VirtualSpaceMetaphor (eg. VR) * DesktopMetaphor * ToolsAndMaterialsMetaphor * ButtonsEverywhereMetaphor (WimpInterface only requires icons, not buttons -- rename please) ** ''EditHint: Most of the above topics don't have enough content to justify a separate topic in my opinion. Consider reworking this, please. (WikiIsNotaDictionary)'' 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.'' ---- SystemMetaphor''''''s 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'' * http://www.amazon.co.uk/Software-Architecture-Perspectives-Emerging-Discipline/dp/0131829572 ''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 SystemMetaphor''''''s? ''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