Testing Distributed Component Based Systems Using UML/OCL

By Achim D. Brucker and Burkhart Wolff.

We present a pragmatic approach using formal methods to increase the quality of distributed component based systems: Based on UML class diagrams annotated with OCL constraints, code for runtime checking of components in J2EE/EJB is automatically generated. Thus, a UML–model for a component can be used in a black–box test for the component. Further we introduce different design patterns for EJBs, which are motivated by different levels of abstraction, and show that these patterns work smoothly together with our OCL constraint checking. A prototypic implementation of the code generator, supporting our patterns with OCL support, has been integrated into a commercial software development tool.

Keywords:
Keywords: OCL, Constraint checking, EJB, J2EE, Design by Contract, Design pattern

Supplementary material:
Slides  ]

Extended by:
An extended version is available as:
A. D. Brucker and B. Wolff, “Checking OCL constraints in distributed systems using J2EE/EJB,” Albert-Ludwigs-Universität Freiburg, 157, Jul. 2001. Author copy: https://logicalhacking.com/publications/brucker.ea-checking-2001/

Please cite this work as follows:
A. D. Brucker and B. Wolff, “Testing distributed component based systems using UML/OCL,” in Informatik 2001, Nov. 2001, vol. 1, pp. 608–614. Author copy: https://logicalhacking.com/publications/brucker.ea-testing-2001/

BibTeX
@InProceedings{ brucker.ea:testing:2001,
  author       = {Achim D. Brucker and Burkhart Wolff},
  title        = {Testing Distributed Component Based Systems Using {UML/OCL}},
  language     = {USenglish},
  booktitle    = {Informatik 2001},
  pages        = {608--614},
  year         = {2001},
  editor       = {K. Bauknecht and W. Brauer and Th. M{\"u}ck},
  volume       = {1},
  number       = {157},
  series       = {Tagungsband der GI/{\"O}CG Jahrestagung},
  address      = {Wien},
  month        = {nov},
  organization = {{\"O}sterreichische Computer Gesellschaft},
  abstract     = {We present a pragmatic approach using formal methods to
                  increase the quality of distributed component based systems:
                  Based on UML class diagrams annotated with OCL constraints,
                  code for runtime checking of components in J2EE/EJB is
                  automatically generated. Thus, a UML--model for a component
                  can be used in a black--box test for the component. Further we
                  introduce different design patterns for EJBs, which are
                  motivated by different levels of abstraction, and show that
                  these patterns work smoothly together with our OCL constraint
                  checking. A prototypic implementation of the code generator,
                  supporting our patterns with OCL support, has been integrated
                  into a commercial software development tool.},
  isbn         = {3-85403-157-2},
  areas        = {software},
  keywords     = {Keywords: OCL, Constraint checking, EJB, J2EE, Design by
                  Contract, Design pattern},
  extendedby   = {brucker.ea:checking:2001},
  note         = {Author copy: \url{https://logicalhacking.com/publications/brucker.ea-testing-2001/}},
  pdf          = {https://logicalhacking.com/publications/brucker.ea-testing-2001/brucker.ea-testing-2001.pdf},
}