Structural Active-Object Systems Fundamentals

  • Toshimi Minoura
Part of the The Springer International Series in Engineering and Computer Science book series (SECS, volume 371)


The Structural Active-Object Systems (SAOS) approach provides an architecture suitable for various concurrent realtime applications. A SAOS program is constructed from its component structural active objects by structural and hierarchical composition. The behaviors of structural active objects, in turn, are determined by the transition statements provided in their class definitions. Prototype SAOS programs have been developed in such diverse application areas as process and manufacturing control, discrete, analog, and mixed-mode simulation, hardware logic simulation, graphical user interfaces, graphical editors, LAN/WAN protocol simulation, and algorithm animation, with significant reduction in source code sizes and program development time. In this paper we examine the fundamental ideas underlying the SAOS approach and emphasize the importance of structural and hierarchical object composition (SHOC) in software construction.


Transition Rule Active Object Concurrent System Executable Code Passive Object 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. [A86]
    G. A. Agha. Actors: A Model of Concurrent Computation in Distributed Systems. MIT Press, 1986.Google Scholar
  2. [A87]
    P. America. “POOL-T: A parallel object-oriented language,”. In A. Yonezawa and M. Tokoro, editors, In Object-Oriented Concurrent Programming, pages 199–220. MIT Press, 1987.Google Scholar
  3. [A91]
    G. R. Andrews. “Paradigms for process interaction in distributed programs,” ACM Computing Surveys 23(l):49–90 March 1991.CrossRefGoogle Scholar
  4. [BHG87]
    P.A. Bernstein, V. Hadzilacos, and N. Goodman. Concurrency Control and Recovery in Database Systems. Addison-Wesley, 1987.Google Scholar
  5. [BDMN73]
    G. M. Birtwistle, O-J. Dahl, B. Myhrhaug, and K. Nygaard. SIMULA BEGIN. Auerbach, 1973.Google Scholar
  6. [BB89]
    T. Bolognesi and E. Brinksma. “Introduction to the ISO specification language LOTOS,”. In P.H.J. van Eijk, C.A. Vissers, and M. Diaz, editors, The Formal Description Technique LOTOS, pages 23–73. North-Holland, 1989.Google Scholar
  7. [B91]
    G. Booch. Object Oriented Design. Benjamin/Cummings, 1991.Google Scholar
  8. [CC91]
    R.S. Chin and S.T. Chanson. “Distributed object-based programming systems,” ACM Computing Surveys 23(1):91–124 March 1991.CrossRefGoogle Scholar
  9. [CM91]
    S. Choi and T. Minoura. “Active object system for discrete system simulation,”. In Proc. Western Simulation Multiconference, pages 209–215, 1991.Google Scholar
  10. [C87]
    B.J. Cox. Object Oriented Programming: An Evolutionary Approach. Addison Wesly, 1987.Google Scholar
  11. [DK76]
    R. Davis and J. King. “An overview of production systems,” Machine Intelligence 8:300–332 1976.Google Scholar
  12. [D79]
    T. DeMarco. Structured Analysis and System Specification. Prentice Hall, 1979.Google Scholar
  13. [D68]
    E. W. Dijkstra. “The structure of the ‘THE’ multiprogramming system,” Communications of the ACM 11(5):341–346 May 1968.MATHCrossRefGoogle Scholar
  14. [D72]
    E. W. Dijkstra. “Hierarchical ordering of sequential processes,”. In Operating Systems Techniques, number 9 in A. P. I. C. Studies in Data Processing, pages 72–93. Academic Press, London, 1972.Google Scholar
  15. [D75]
    E.W. Dijkstra. “Guarded commands, nondeterminism, and formal derivation,” CACM 18(8):453–457 August 1975.MATHGoogle Scholar
  16. [EG89]
    C.A. Ellis and S.J. Gibbs. “Active objects: realities and possibilities,”. In W. Kim and F.H. Lochovsky, editors, Object-Oriented Concepts, Databases and Applications, pages 561–572. ACM Press, 1989.Google Scholar
  17. [EFRV86]
    G. Estrin, R. S. Fenchel, R. R. Razouk, and M. K. Vernon. “SARA (System ARchitects’ Apprentice): Modeling, analysis, and simulation support for design of concurrent systems,” IEEE Tr. on Software Engineering SE-12(2):293–311 February 1986.Google Scholar
  18. [GR83]
    A. Goldberg and D. Robson. Smalltalk-80: The Language and Its Implementation. Addison-Wesley, 1983.Google Scholar
  19. [H72]
    C. A. R. Hoare. “Notes on data structuring,”. In Dahl, Dijkstra, and Hoare, editors, Structured Programming. Academic Press, 1972.Google Scholar
  20. [H78]
    C. A. R. Hoare. “Communicating sequential processes,” Communications of the ACM 21(8):666–677 August 1978.MATHCrossRefGoogle Scholar
  21. [I87]
    IEEE. IEEE Standard VHDL Language Reference Manual. IEEE Std. 1076, 1987.Google Scholar
  22. [ITM90]
    Y. Ishikawa, H. Tokuda, and Mercer C. W. “Object-oriented real-time language design: Constructs for timing constraints,”. In Proc. Con, on Object-Oriented Programming Systems, Languages, and Applications, pages 289–298, 1990.Google Scholar
  23. [KL89]
    D. G. Kafüra and K. H. Lee. “Inheritance in Actor based concurrent object-oriented languages,”. In European Conf. on Object-Oriented Programming, pages 131–145, 1989.Google Scholar
  24. [KC84]
    T. P. Kehler and C.D. Clemenson. “An application development system for expert-systems,” Systems and Software 34:212–224 1984.Google Scholar
  25. [KMF78]
    Y. Kogure, T. Minoura, and T Fujiwara. “Method and system of controlling plants,”. U.S. Patent 4,115,848, 1978.Google Scholar
  26. [KKW84]
    J. C. Kunz, T. P. Kehler, and M. D. Williams. “Applications development using a hybrid AI development system,” The AI Magazine 5(3):41–54 1984.Google Scholar
  27. [L89]
    L. Lamport. “A simple approach to specifying concurrent systems,” CACM 32(1):32–45 January 1989.Google Scholar
  28. [LN79]
    H.C. Lauer and R.M. Needham. “On the duality of operating system structures,” ACM Operating Sys. Review 13(2):3–19 April 1979.CrossRefGoogle Scholar
  29. [L87]
    H. Lieberman. “Concurrent object-oriented programming in Act I,”. In A. Yonezawa and M. Tokoro, editors, In Object-Oriented Concurrent Programming, pages 9–36. MIT Press, 1987.Google Scholar
  30. [L86]
    R. J. Linn. “The features and facilities of Estelle: A formal description technique based upon an extended finite state machine model,”. In V. M. Diaz, editor, Protocol, Specification, Testing, and Verification, pages 271–296. North-Holland, 1986.Google Scholar
  31. [M91]
    V. Mak. “Dose: A modular and reusable object-oriented simulation environment,”. In Proc. Western Simulation Multiconference, pages 3–11, 1991.Google Scholar
  32. [M88]
    B. Meyer. Object-Oriented Software Construction. Prentice-Hall, 1988.Google Scholar
  33. [M89]
    R. Milner. Communication and Concurrency. Prentice-Hall, 1989.Google Scholar
  34. [MI89]
    T. Minoura and S.S. Iyengar. “Data and time abstraction techniques for analyzing multilevel concurrent systems,” IEEE Tr. on Software Engineering SE-15(1):47–59 January 1989.CrossRefGoogle Scholar
  35. [MCR93]
    T. Minoura, S. Choi, and R. Robinson. “Structural active-object systems for manufacturing control,” Integrated Computer-Aided Engineering 1(2):121–136 1993.Google Scholar
  36. [MPR93]
    T. Minoura, S. S. Pargaonkar, and K. Rehfuss. “Structural active-object systems for simulation,”. In Proc. Conf. on Object-Oriented Programming Systems, Languages, and Applications, pages 338–335, 1993.Google Scholar
  37. [MC93]
    T. Minoura and Sungoon Choi. “Active-object user interface mangement system,”. In Proc. Tools USA 93, pages 303–317. Prentice Hall, 1993.Google Scholar
  38. [N91]
    C. Neusius. “Synchronizing actions,”. In Proc. European Conf. on Object-Oriented Programming, volume 512 of Lecture Notes in CS, pages 118–132. Springer-Verlag, 1991.Google Scholar
  39. [N87]
    O. M. Nierstrasz. “Active objects in Hybrid,”. In Proc. Conf. on Object-Oriented Programming Systems, Languages, and Applications, pages 243–253, 1987.Google Scholar
  40. [PM93]
    S. S. Pargaonkar and T. Minoura. “Structural active-object systems for mixed-mode simulation,”. Technical Report 93-40-01, Dept. of CS, Oregon State University, 1993.Google Scholar
  41. [RBPEL91]
    J. Rumbaugh, M. Blaha, W. Premerlani, F. Eddy, and W. Lorensen. Object-Oriented Modeling and Design. Prentice Hall, 1991.Google Scholar
  42. [S92]
    B. Selic et al. “Room: An object-oriented methodology for developing real-time systems,”. In Proc. 5th Intl. Conf. on CASE, Montreal, 1992.Google Scholar
  43. [S89]
    E. Shibayama. “Reuse of concurrent object descriptions,”. In Proc. European Conf. on Object-Oriented Programming, volume 491 of Lecture Notes in CS, pages 110–135. Springer-Verlag, 1989.Google Scholar
  44. [S86]
    B. Stroustrup. The C++ Programming Language. Addison-Wesly, 1986.Google Scholar
  45. [TS89]
    C. Tomlinson and V. Sigh. “Inheritance and synchronization with enabled-sets,”. In Proc. Conf. on Object-Oriented Programming Systems, Languages, and Applications, pages 103–112, 1989.Google Scholar
  46. [TFGN87]
    D. Tsichritzis, E. Flume, S. Gibbs, and O. Nierstrasz. “Knos: Knowledge acquisition, dissemination, and manipulation objects,” ACM Trans, on Office Information Systems 5(1):96–112 1987.CrossRefGoogle Scholar
  47. [YT87]
    Y. Yokote and M. Tokoro. “Experience and evolution of ConcurrentS-malltalk,”. In Proc. Conf. on Object-Oriented Programming Systems, Languages, and Applications, pages 406–415, 1987.Google Scholar
  48. [YSTH87]
    A. Yonezawa, E. Shibayama, T. Takada, and Y. Honda. “Modelling and programming in an object oriented concurrent language ABCL/I,”. In A. Yonezawa and M. Tokoro, editors, Object-Oriented Concurrent Programming, pages 55–90. MIT Press, 1987.Google Scholar
  49. [YC78]
    E. Youdon and L. Constantine. Structured Design. Youdon Press, 1978.Google Scholar
  50. [Z78]
    M.D. Zisman. “Use of production systems for modelling asynchronous concurrent processes,” In D.A. Waterman and F. Hayes-Roth, editors, Pattern-Directed Inference Systems, pages 53–69. Academic Press, 1978.Google Scholar

Copyright information

© Kluwer Academic Publishers 1996

Authors and Affiliations

  • Toshimi Minoura
    • 1
  1. 1.Department of Computer ScienceOregon State UniversityCorvallis

Personalised recommendations