This document defines interfaces for common abstract data types (ADTs) like collections, lists, and queues. It also provides an implementation of an array-based queue and unit tests for that implementation. The interfaces define common methods for the ADTs, like adding/removing elements, checking for emptiness, and retrieving sizes. The array queue implementation and tests demonstrate how the queue ADT can be constructed using an array to store elements.