## Design

This chapter discusses the architecture of the Cayenne runtime framework. The information below is not strictly required to start using Cayenne, and new users can skip it initially and come back later to gain better understanding of how Cayenne operates under the hood.

### Sections

1. Contract between persistent objects and Cayenne
2. Persistent object lifecycle
3. Runtime Components
4. Transactions
5. Primary Key generation strategies