Hardware Verification with SystemVerilog: An Object-Oriented Framework

Coding is a human endeavor. Forget that and all is lost.
Bjarne Stroustrup, father of C++
There are several books about hardware verification, so what makes this book different? Put simply, this book is meant to be useful in your day-to-day work which is why we refer to it throughout as a handbook. The authors are like you, cube dwellers, with battle scars from developing chips. We must cope with impossible schedules, a shortage of people to do the work, and constantly mutating hardware specifications.
We subtitled this book An Object-Oriented Framework because a major theme of the book is how to use object-oriented programming (OOP) to do verification well. We focus on real-world examples, bloopers, and code snippets. Sure, we talk about programming theory, but the theme of this book is how to write simpler, adaptable, reusable code. We focus mainly on OOP techniques because we feel that this is the best way to manage the ever-increasing complexity of verification. We back this up with open-source Verification Intellectual Property (VIP), several complete test systems, and scripts to run them.
We cover the following topics:
SystemVerilog as a verification language
A tour of the features and real-world facts about SystemVerilog
How to use OOP to build a flexible and adaptable verification system
How to use specific OOP techniques to make verification code both simpler and more adaptable, with reference to actual situations (both good and bad) that the authors have encountered
Useful SystemVerilog code, both as snippets, complete examples,...