Programming is the act of making and encoding decisions about future behavior. Encoding requires the careful consideration of the basis and consequence of every decision. Often decisions are found incomplete and new questions raised.

In this section we consider decision making in the presence of incomplete, obscure or questionable facts. We include patterns for the assembling of knowledge in artifacts and individuals, and for limiting decision making when knowledge requirements exceed that immediately available.


Requirement Walkthrough refreshes the teams understanding once work begins.

Technical Memo summarizes factual details of work to be done including citations of related references.

Reference Data inform development with worked examples where expected results can be or have been checked against actuals.

Programming Episode concentrate the decision making related specific work among a small number of highly focused people.