Presentation-abstraction-control

Presentation-abstraction-control

__NOTOC__Presentation-abstraction-control (PAC) is a software architectural pattern, somewhat similar to model-view-controller (MVC). PAC is used as a hierarchical structure of agents, each consisting of a triad of presentation, abstraction and control parts. The agents (or triads) communicate with each other only through the control part of each triad. It also differs from MVC in that within each triad, it completely insulates the presentation (view in MVC) and the abstraction (model in MVC), this provides the option to separately multithread the model and view which can give the user experience of very short program start times, as the user interface (presentation) can be shown before the abstraction has fully initialized.

Hierarchical-Model-View-Controller (HMVC)

A subset or variation of PAC under the name Hierarchical-Model-View-Controller (HMVC) was published in an article [cite journal
journal = JavaWorld Magazine
url = http://www.javaworld.com/javaworld/jw-07-2000/jw-0721-hmvc.html
title = HMVC: The layered pattern for developing strong client tiers
author = Jason Cai, Ranjit Kapila, and Gaurav Pal
month = July | year = 2000
accessdate = 2006-05-25
] in JavaWorld Magazine, the authors apparently unaware [cite journal
journal = JavaWorld Magazine
url = http://web.archive.org/web/20050205080537/http://www.javaworld.com/javaworld/jw-09-2000/jw-0908-letters.html
title = Is HMVC PAC? (letter to the editor)
author = "TP"
year = 2000
accessdate = 2006-05-25
] of PAC which was published 13 years earlier. The main difference between HMVC and PAC is that HMVC is less strict in that it allows the view and model of each agent to communicate directly, thus bypassing the controller.

ee also

*Model-view-controller
*Model_View_Presenter
*Presenter_First
*PAC-Amodeus [cite conference
author=Laurence Nigay
coauthor=Joëlle Coutaz
year=1991
title=Building User Interfaces: Organizing Software Agents.
booktitle=ESPRIT '91 Conference. Brussels, Belgium: November 1991
url=http://citeseer.ist.psu.edu/nigay91building.html
] , [cite book
author=Laurence Nigay
month=January | year=1994
title=Conception et modélisation logicielles des systèmes interactifs : application aux interfaces multimodales
publisher=PhD dissertation, 315 pages, University of Grenoble, France
url=http://iihm.imag.fr/publs/1994/THESE1994_Nigay.pdf
language=French, with abstract in English
pages=pp. 131-268
format=PDF
] , [cite book
first=Laurence
last=Nigay
coauthors=Joëlle Coutaz
year=1997
title=Formal Methods in Human-Computer Interaction
chapter=Software Architecture Modelling: Bridging Two Worlds Using Ergonomics and Software Properties.
pages=chapter 3, pp. 49-73
chapterurl=http://iihm.imag.fr/publs/1997/FormalMethodChapNigay97.pdf
publisher=Springer-Verlag
id=ISBN 3-540-76158-6
]
*PAC*

References

*cite conference
last=Coutaz
first=Joëlle
year=1987
title=PAC: an Implementation Model for Dialog Design
booktitle=Proceedings of the Interact'87 conference, September 1-4, 1987, Stuttgart, Germany
editor=H-J. Bullinger, B. Shackel (ed.)
publisher=North-Holland
pages=pp. 431-436
url=http://www.interaction-design.org/references/conferences/interact_87_-_2nd_ifip_international_conference_on_human-computer_interaction.html

*cite book | author=Frank Buschmann, Regine Meunier, Hans Rohnert, Peter Sommerlad, Michael Stal | title=Pattern-Oriented Software Architecture Vol 1: A System of Patterns | publisher=John Wiley and Sons | year=1996 | id=ISBN 0-471-95869-7 | pages=pp. 145-168
*cite conference
author=Gaëlle Calvary
coauthors=Joëlle Coutaz, Laurence Nigay
year=1997
title=From Single-User Architectural Design to PAC*: a Generic Software Architecture Model for CSCW
booktitle=Proceedings of the ACM CHI 97 Human Factors in Computing Systems Conference. March 22-27, 1997, Atlanta, Georgia.
editor=Pemberton, Steven (ed.)
pages=pp. 242-249
url=http://www1.acm.org/sigs/sigchi/chi97/proceedings/paper/jcc.htm

*cite conference
author=Joëlle Coutaz
year=1997
title=PAC-ing the Architecture of Your User Interface
booktitle=DSV-IS’97, 4th Eurographics Workshop on Design, Specification and Verification of Interactive Systems
publisher=Springer Verlag
pages=pp. 15-32
url=http://iihm.imag.fr/publs/1997/DSVIS97_PACing.pdf

*cite book
last = Markopoulos
first = Panagiotis
year = 1997
title = A compositional model for the formal specification of user interface software
publisher = PhD thesis, Queen Mary and Westfield College, University of London
url = http://www.idemployee.id.tue.nl/p.markopoulos/downloadablePapers/PhDThesisPanosMarkopoulos.pdf
accessdate = 2006-05-25
format = pdf
pages = p. 26

*cite conference
author=Paris Avgeriou
coauthor=Uwe Zdun
year=2005
title=Architectural patterns revisited - a pattern language
booktitle=Proceedings of 10th European Conference on Pattern Languages of Programs (EuroPlop 2005), Irsee, Germany, July 2005
pages=pp. 1-39
url=http://wi.wu-wien.ac.at/home/uzdun/publications/ArchPatterns.pdf

External links

* Architectural outline for the game Warcraft as it might be implemented using the PAC Architectural Pattern: [http://iihm.imag.fr/nigay/ENSEIG/RICM3/siteWebRICM/TPS/TP2/TP2_architecture.html Programming of the application PACcraft:Architecture] (in french)
* [http://www.vico.org/pages/PatronsDisseny/Pattern%20Presentation%20Abstra/ Pattern:Presentation-Abstraction-Control] (pattern description)
* [http://c2.com/cgi/wiki?PresentationAbstractionControl PAC description in the Portland Pattern Repository]
*WengoPhone is a free software VoIP application that is written using the PAC design pattern.
** [http://dev.openwengo.com/trac/openwengo/trac.cgi/wiki/PAC description of PAC] and motivation for use in WengoPhone.
** [http://dev.openwengo.com/trac/openwengo/trac.cgi/browser/playground/demopac demonstration code] , courtesy of the OpenWengo community.

Notes


Wikimedia Foundation. 2010.

Игры ⚽ Поможем решить контрольную работу

Look at other dictionaries:

  • Presentation–abstraction–control — (PAC) is a software architectural pattern. It is an interaction oriented software architecture, and is somewhat similar to model–view–controller (MVC) in that it separates an interactive system into three types of components responsible for… …   Wikipedia

  • Presentation Abstraction Control — Saltar a navegación, búsqueda La estructura de una aplicación con PAC. PAC (Presentation Abstraction Control, o en español, Presentación Abstracción Control) es un patrón de arquitectura de software para sistemas interactivos basada en una… …   Wikipedia Español

  • Presentation-Abstraction-Control — Darstellung Abstraktion Steuerung bzw. englisch Presentation Abstraction Control (PAC) bezeichnet ein Architekturmuster zur Strukturierung von interaktiven Softwaresystemen. Will man diese Systeme so entwickeln, dass sie aus einzelnen Teilen… …   Deutsch Wikipedia

  • Presentation, abstraction, controle — Présentation, abstraction, contrôle Pour les articles homonymes, voir PAC. Le patron de conception PAC a été introduit par la chercheuse en informatique grenobloise Joëlle Coutaz dans les années 1980 en tant que modèle abstrait d architecture… …   Wikipédia en Français

  • Présentation, Abstraction, Contrôle — Pour les articles homonymes, voir PAC. Le patron de conception PAC a été introduit par la chercheuse en informatique grenobloise Joëlle Coutaz dans les années 1980 en tant que modèle abstrait d architecture logicielle pour les interfaces homme… …   Wikipédia en Français

  • Présentation, abstraction, contrôle — Pour les articles homonymes, voir PAC. Le patron de conception PAC a été introduit par la chercheuse en informatique grenobloise Joëlle Coutaz dans les années 1980 en tant que modèle abstrait d architecture logicielle pour les interfaces homme… …   Wikipédia en Français

  • Présentation, Asbtraction, Contrôle — Présentation, abstraction, contrôle Pour les articles homonymes, voir PAC. Le patron de conception PAC a été introduit par la chercheuse en informatique grenobloise Joëlle Coutaz dans les années 1980 en tant que modèle abstrait d architecture… …   Wikipédia en Français

  • Model–view–controller — A general representation of the MVC design pattern. Model view controller concept. The solid line represents a direct as …   Wikipedia

  • Model-view-controller — (MVC) is an architectural pattern used in software engineering. Successful use of the pattern isolates business logic from user interface considerations, resulting in an application where it is easier to modify either the visual appearance of the …   Wikipedia

  • Component-based usability testing — (CBUT) is a testing approach which aims at empirically testing the usability of an interaction component. The latter is defined as an elementary unit of an interactive system, on which behaviour based evaluation is possible. For this, a component …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”