In programming, it is common to define variables.  These are often the things that are most likely to change from one use to the next.  They are often stated at the top, or passed in to the application.  The application works with them by referring to them by name. 

In legal text, “defined terms” do more of less the same thing.  We define “related person” with a half-page of text (ABA Model Stock Purchase Agreement), then can invoke the complete idea by using Related Person with initial caps.

The oddity is that in legal drafting we rarely use the definitions for the actual variables.  E.g., quantities, dates and other specifics.  We do use it for the party names, but otherwise mostly intersperse the deal terms into the document.  Of course, if we write a term sheet (before doing the drafting) the terms are called out and collected in one place.  But in drafting they will then often be marbled into the documents. 

There is a bit of trend to use defined terms for deal points.  See, e.g., the most recent Series Seed documents.   This seems healthy.  In CmA, it is possible to have it both ways — a term sheet of deal points that are interspersed into the document.  But the idea of putting the deal points first, as defined terms, still seems a better way of drafting.