Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
article
Free access

The universe model: an approach for improving the modularity and reliability of concurrent programs

Published: 01 November 2000 Publication History

Abstract

We present the universe model, a new approach to concurrency management that isolates concurrency concerns and represents them in the modular interface of a component. This approach improves program comprehension, module composition, and reliability for concurrent systems. The model is founded on designer-specified invariant properties, which declare a component's dependencies on other concurrent components. Process scheduling is then automatically derived from these invariants. We illustrate the advantages of this approach by applying it to a real-world example.

References

[1]
E Arbab and G. A. Papadopoulos. Coordination Models and Languages. In The Engineering of Large Systems. Advances in Computers. Academic Press, 1998.
[2]
R. Behrends and R. E. K. Stirewalt. A High-Level Approach to Concurrency. Tech. Rep. MSU-CSE-00-6 (March 2000), Department of Computer Science and Engineering, Michigan State University.
[3]
M. Ben-Aft. Principles of Concurrent and Distributed Programming. Prentice Hall, New York, 1990.
[4]
T. Bolognesi and E. Brinksma. Introduction to the ISO Specification Language Lotos. Comp. Netw. ISDN Sys. 14 (1) (1987).
[5]
E Brinch Hansen. Java's Insecure Parallelism. ACM SIGPLAN Notices 34 (4), 38-45 (1999).
[6]
N. Carriero and D. Gelernter. Coordination languages and their significance. Communications of the ACM 35 (2), 97-107 (1992).
[7]
C. M. Fleiner and M. Philippsen. Fair Multi-Branch Locking of Several Locks. In International Conference on Parallel and Distributed Computing and Systems, pages 537-545, Washington D.C., October 1997.
[8]
G. Agha and S. Fr~lund. A Language Framework for Multi-Object Coordination. In O. Nierstrasz, Proceedings of the ECOOP '93 European Conference on Object-oriented Programming, pages 346-360. LNCS 707. Springer-Verlag, 1993.
[9]
C.A.R. Hoare. Hints on Programming Language Design. In C. J. Bunyan (Ed.), State of the Art Report 20: Computer Systems Reliability, pages 505-534. Pergamon/infotech Publishing, 1974.
[10]
C. A. R. Hoare. Communicating Sequential Processes. Prentice Hall, 1985.
[11]
R. Jones and R. Lins. Garbage Collection: Algorithms for Automatic Dynamic Memory Management. Wiley, 1996.
[12]
S. Letovsky and E. Soloway. Delocalized Plans and Program Comprehension. IEEE Softw. 3 (3) (1986).
[13]
S. Matsuoka and A. Yonezawa. Analysis of Inheritance Anomaly in Object-Oriented Concurrent Programming Languages. In G. Agha and E Wegner and A. Yonezawa, Research Directions in Concurrent Object-Oriented Programming, pages 107-150. MIT Press, Cambridge, MA, 1993.
[14]
B. Meyer. Object-Oriented Software Construction. Prentice- Hall, 1997.
[15]
S. M. Omohundro. The Sather Language. Tech. Rep. (1991), International Computer Science Institute, 1947 Center Street, Suite 600, Berkely, California 94704.
[16]
C. Rich and R. C. Waters. The Programmer's Apprentice. Addison Wesley, 1990.
[17]
S. Rugaber and R. E. K. Stirewalt and L. Wills. Understanding Interleaved Code. Journal of Automated Software Engineering 3 (1) (1996).
[18]
S. Rugaber and R. E. K. Stirewalt and L. Wills. The Interleaving Problem in Program Understanding. In Proceedings of the IEEE Second Working Conference on Reverse Engineering, 1995.
[19]
A. Shah. State of the Art: JavaSpace, Java Report: The Source for Java Development 2 (5), 16 (1997).
[20]
A. S. Tanenbaum. Modern Operating Systems. Prentice Hall, New Jersey, 1993.
[21]
E Zave. A Compositional Approach to Multiparadigm Programming. IEEE Software 6 (5) (1989).
[22]
P. Zave and M. Jackson. Conjunction as Composition. ACM STrans. Softw. Eng. Meth. 2 (4), 371-411 (1993).

Recommendations

Comments

Information & Contributors

Information

Published In

Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 01 November 2000
Published in SIGSOFT Volume 25, Issue 6

Check for updates

Author Tags

  1. component-based software engineering
  2. distributed and parallel systems
  3. reliability
  4. software architecture

Qualifiers

  • Article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)32
  • Downloads (Last 6 weeks)3
Reflects downloads up to 04 Oct 2024

Other Metrics

Citations

View Options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Get Access

Login options

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media