Skip to main content
Presentation
Concurrency by modularity: design patterns, a case in point
OOPSLA '10 Proceedings of the ACM international conference on Object oriented programming systems languages and applications
  • Hridesh Rajan
  • Steven M. Kautz, Iowa State University
  • Wayne Rowcliffe, Iowa State University
Document Type
Conference Proceeding
Conference
SPLASH Systems, Programming, and Applications
Publication Version
Accepted Manuscript
Link to Published Version
http://dx.doi.org/10.1145/1932682.1869523
Publication Date
10-10-2010
DOI
10.1145/1932682.1869523
Conference Title
OOPSLA '10 The ACM international conference on Object oriented programming systems languages and applications
Conference Date
Oct. 17-21, 2010
Geolocation
(39.5296329, -119.8138027)
Abstract

General purpose object-oriented programs typically aren't embarrassingly parallel. For these applications, finding enough concurrency remains a challenge in program design. To address this challenge, in the Panini project we are looking at reconciling concurrent program design goals with modular program design goals. The main idea is that if programmers improve the modularity of their programs they should get concurrency for free. In this work we describe one of our directions to reconcile these two goals by enhancing Gang-of-Four (GOF) object-oriented design patterns. GOF patterns are commonly used to improve the modularity of object-oriented software. These patterns describe strategies to decouple components in design space and specify how these components should interact. Our hypothesis is that if these patterns are enhanced to also decouple components in execution space applying them will concomitantly improve the design and potentially available concurrency in software systems. To evaluate our hypothesis we have studied all 23 GOF patterns. For 18 patterns out of 23, our hypothesis has held true. Another interesting preliminary result reported here is that for 17 out of these 18 studied patterns, concurrency and synchronization concerns were completely encapsulated in our concurrent design pattern framework.

Comments

This article is published as Rajan, Hridesh, Steven M. Kautz, and Wayne Rowcliffe. "Concurrency by modularity: Design patterns, a case in point." In ACM Sigplan Notices, vol. 45, no. 10, pp. 790-805. ACM, 2010. doi: 10.1145/1932682.1869523. Posted with permission.

Rights
© ACM, 2010. This is the author's version of the work. It is posted here by permission of ACM for your personal use. Not for redistribution. The definitive version was published in ACM Sigplan Notices, vol. 45, no. 10, pp. 790-805. ACM, 2010. https://doi.org/10.1145/1932682.1869523
Copyright Owner
Association for Computing Machinery
Language
en
File Format
application/pdf
Citation Information
Hridesh Rajan, Steven M. Kautz and Wayne Rowcliffe. "Concurrency by modularity: design patterns, a case in point" Reno, NVOOPSLA '10 Proceedings of the ACM international conference on Object oriented programming systems languages and applications (2010) p. 790 - 805
Available at: http://works.bepress.com/hridesh-rajan/83/