ObjChart: Tangible Specification of Reactive Object Behavior

  • Dipayan Gangopadhyay
  • Subrata Mitra
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 707)


ObjChart is a new visual formalism to specify objects and their reactive behavior. A system is specified as a collection of asynchronously communicating objects arranged in a part-of hierarchy, where the reactive behavior of each object is described by a finite state machine. Value propagation is effected using functional invariants over attributes of objects. A compositional semantics for concurrent object behavior is sketched using the equational framework of Misra.

In contrast to other Object Oriented modeling notations, ObjChart uses object decomposition as the single refinement paradigm, maintains orthogonality between control flow and value propagation, introduces Sequence object which embodies structural induction, and allows tracing causality chains in time linear in the size of the system. ObjChart’s minimality of notations and precise semantics make ObjChart models of systems coherent and executable.


State Machine Finite State Machine Causality Chain Reactive Behavior Representative Element 
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. [BCHA90]
    S. Beax, D. Coleman, F. Hayes and P. Allen. Graphical specification of object-oriented systems. In Proc. OOPSLA/ECOOP’ 90 Vol. 25, No. 10, pages 28–37, 1990.Google Scholar
  2. [Boo91]
    G. Booch. Object-oriented design with applications. The Benjamin Cummings Publishing Company Inc., 1991.Google Scholar
  3. [BA81]
    J. D. Brock and W. B. Ackerman. Scenarios: a model of nondeterminate computation. In Formalization of programming concepts, LNCS 107, pages 252–259, 1981.Google Scholar
  4. [BBJS92]
    B. Bruegge, J. Blythe, J. Jackson and J. Shufelt. Object-oriented system modeling with OMT. In Proc. OOPSLA’ 92 Vol. 27, No. 10, pages 359–376, 1992.CrossRefGoogle Scholar
  5. [CM89]
    K. M. Chandy and J. Misra. Parallel program design. Addison-Wesley, 1989.Google Scholar
  6. [CHB92]
    D. Coleman, F. Hayes and S. Bear. Introducing ObjectCharts or how to use Statecharts in object-oriented design. IEEE Transactions on Software Engineering, Vol. 18, No. 1, 1992.Google Scholar
  7. [Dav89]
    N. Davis. Problem Set for the Fourth Int. Workshop on Software Specification and Design. In Proc. of the Fourth IEEE Int. Workshop on Software Specification and Design, Monterey, USA, 1989.Google Scholar
  8. [GMD93]
    D. Gangopadhyay, S. Mitra and S. S. Dhaliwal. ObjChart-Builder: An environment for executing visual object models. IBM Technical Report. Submitted for publication. 1993.Google Scholar
  9. [Har87]
    D. Harel. Statecharts: A visual formalism for complex systems. Science of Computer Programming, Vol. 8, pages 231–274, 1987.zbMATHCrossRefMathSciNetGoogle Scholar
  10. [HPSS87]
    D. Harel, A. Pnueli, J. P. Schmidt and R. Sherman. On the formal semantics of Statecharts. In Proc. of the Second IEEE Symp. on Logic in Computer Science, pages 54–64, 1987.Google Scholar
  11. [Har88a]
    D. Harel. On visual formalisms. Communications of the ACM, Vol. 31(5).Google Scholar
  12. [Har88b]
    D. Harel et al. Statemate: A working environment for the development of complex reactive systems. In Proc. of the Tenth Int. Conf. on Software Engg., pages 396–406, 1988.Google Scholar
  13. [HC91]
    F. Hayes and D. Coleman. Coherent models for object-oriented analysis. In Proc. OOPSLA’ 91, Vol. 26, No. 11, pages 171–183, 1991.CrossRefGoogle Scholar
  14. [HHG90]
    R. Helm, I. M. Holland and D. Gangopadhyay. Contracts: specifying behavioral compositions in object-oriented systems. In Proc. OOPSLA/ECOOP’ 90, Vol. 25, No. 10, pages 169–180, 1990.CrossRefGoogle Scholar
  15. [Jon89]
    B. Jonsson. A Fully Abstract Trace Model for Dataflow Networks. In Proceedings of the sixteenth annual Symposium on Principles of Programming Languages, pages 155–165, 1989.Google Scholar
  16. [MP92]
    Z. Manna and A. Pnueli. The temporal logic of reactive and concurrent Systems. Springer-Verlag, 1992.Google Scholar
  17. [Mis90]
    J. Misra. Equational reasoning about nondeterministic processes. Formal Aspects of Computing, Vol. 2, pages 167–195, 1990.CrossRefGoogle Scholar
  18. [Pnu86]
    A. Pnueli. Application of temporal logic to the specification and verification of reactive systems: A survey of current trends. In Current Trends in Concurrency, LNCS 224, pages 510–584, 1986.CrossRefGoogle Scholar
  19. [RBPEL91]
    J. Rumbaugh, M. Blaha, W. Premerlani, F. Eddy and W. Lorensen. Object-oriented modeling and design. Prentice-Hall, 1991.Google Scholar
  20. [SM88]
    S. Shlaer and S. Mellor. Object-oriented systems analysis. Yourdon Press, 1988.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1993

Authors and Affiliations

  • Dipayan Gangopadhyay
    • 1
  • Subrata Mitra
    • 2
  1. 1.I.B.M. Thomas J. Watson Research CenterYorktown Heights
  2. 2.Department of Computer ScienceUniversity of Illinois at Urbana-ChampaignUrbanaUSA

Personalised recommendations