Instead of surveying the entire unified modeling language (UML), Martin focuses on the diagrams he has found to be most useful for drawing pictures of software--class, object, sequence, and state diagrams--and examines the peculiarities of using UML to design Java programs. The final chapter describes a SMC remote service program in text, UML, and code.