Appendix A. UML for Concurrent Design

This appendix provides a quick reference to the UML diagrams used throughout this book. The Unified Modeling Language (UML) is a graphical notation used to design, visualize, model, and document the artifacts of a software system. It is the de facto standard for communicating and modeling object-oriented systems. The modeling language uses symbols and notations to represent the artifacts of a software system from different views and with different focuses. Although there are other graphical notations and artifacts used in this book, this appendix provides a quick way the reader can become familiar with the basic UML notations and symbols they may require in documenting their software systems.

The following web sites are online resources and quick reference PDFs for UML documentation:

  • www.uml.org

  • www.acmesoffware.com/acme/default.asp

  • www.oio.de/uml-1-4-reference.htm

  • www.quantum-leaps.com/resources/UML_Reference.pdf

Class and Object Diagrams

Class and object diagrams are the most common diagrams used in modeling an object-oriented system. Class diagrams can be use to represent each type of class in your system including:

  • Template classes

  • Interface classes

Class diagrams can include the details of the class (for example, attributes and services). Class and object diagrams can show the data type, value of variables, and return types of functions. Object diagrams can show the object name. Both types of diagrams can depict the number of classes or objects used ...

Get Professional Multicore Programming: Design and Implementation for C++ Developers now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.