You can define which states each piece of content can live in, for example "published", "waiting for review", "draft".  Each state comes with different permissions for various kinds of users (for instance, "draft" means anonymous visitors will not see it).  You can change the state of a particular content item, thereby giving or taking away permissions for other users to act on it in certain ways.
Metaphor: "routing a docket from desk to desk". Whose desk should this go to next? Based on what conditions? Who gets to view the docket when it has to be approved? Who gets to view what part of the docket? Who gets to add to or change information in the docket? Who gets notified when the docket is moved to someone's desk?