We present a multi-phase programming project, in Java, for an upper-division database course. The project par- allels a modest reordering of the traditional classroom presentation of database management. In addition to il- luminating theoretical concepts, the lab provides a cap- stone experience for