TY - JOUR
T1 - A visualization model for concurrent systems
AU - Astley, Mark
AU - Agha, Gul A.
N1 - Funding Information:
We thank past and present members of the Open Systems Laboratory who aided in this research. Extra gratitude is extended to Daniel Sturman and Brian Nielsen, whose comments were particularly useful in developing this work. Last, we thank the editors and referees for their insightful comments. The research described has been made possible in part by support from the Office of Naval Research (ONR Contract Numbers NOOO14-J-1899 and N00014-93-1-0273), by an Incentives for Excellence Award from the Digital Equipment Corporation, by Hitachi, and by the National Science Foundation (NSF CCR 93-12495).
PY - 1996/8
Y1 - 1996/8
N2 - Concurrent systems maintain a distributed state and thus require coordination and synchronization between components to ensure consistency. To provide a coherent design approach to concurrent systems, recent work has employed an object-based methodology which emphasizes interactions through well-defined interfaces. The Actor model has provided formal reasoning about distributed object systems. Nonetheless, due to the complex interactions among components and the high volume of observable information produced, understanding and reasoning about concurrent algorithms in terms of simple interactions is a difficult task. Coordination patterns, which abstract over simple interactions, are not biased by low-level event orderings and are the appropriate mechanism for reasoning about concurrent algorithms. We outline a methodology for visualizing coordination patterns in concurrent algorithms which emphasizes observable interactions and causal connections between objects. We introduce visualizers as a linguistic mechanism for mapping coordination patterns to visualization. Visualizers are specified separately from algorithm code and thus respect code integrity. Moreover, visualizers may be implemented strictly in terms of object interfaces and thus preserve object encapsulation.
AB - Concurrent systems maintain a distributed state and thus require coordination and synchronization between components to ensure consistency. To provide a coherent design approach to concurrent systems, recent work has employed an object-based methodology which emphasizes interactions through well-defined interfaces. The Actor model has provided formal reasoning about distributed object systems. Nonetheless, due to the complex interactions among components and the high volume of observable information produced, understanding and reasoning about concurrent algorithms in terms of simple interactions is a difficult task. Coordination patterns, which abstract over simple interactions, are not biased by low-level event orderings and are the appropriate mechanism for reasoning about concurrent algorithms. We outline a methodology for visualizing coordination patterns in concurrent algorithms which emphasizes observable interactions and causal connections between objects. We introduce visualizers as a linguistic mechanism for mapping coordination patterns to visualization. Visualizers are specified separately from algorithm code and thus respect code integrity. Moreover, visualizers may be implemented strictly in terms of object interfaces and thus preserve object encapsulation.
UR - http://www.scopus.com/inward/record.url?scp=0030212472&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=0030212472&partnerID=8YFLogxK
U2 - 10.1016/0020-0255(96)00063-1
DO - 10.1016/0020-0255(96)00063-1
M3 - Article
AN - SCOPUS:0030212472
SN - 0020-0255
VL - 93
SP - 107
EP - 131
JO - Information Sciences
JF - Information Sciences
IS - 1-2
ER -