Features: Pragmatic, non-mathematical approach; Self-test questions within each chapter help the reader to fully understand the concepts; Numerous exercises are provided at the end of each chapter; Consistent use of the UML as a design notation; Case studies are used throughout;…