Beware Temporal Coupling

When people first sit down to design and architecture or write a program, things tend to be linear. That's the way most people think--do this and then always do that. But thinking this way leads to temporal coupling: coupling in time. Method A must always be called before method B; only one report can be run at a time; you must wait for the screen to redraw before the button click is received. Tick must happen before tock.

Notes:

Coupling things in time is a natural result of the linear design of a system.

Taxonomies:
/art and entertainment/visual art and design/design (0.695105)
/business and industrial/advertising and marketing/marketing (0.499712)
/health and fitness/disease/epilepsy (0.444298)

Keywords:
temporal coupling (0.994412 (neutral:0.000000)), button click (0.833128 (neutral:0.000000)), natural result (0.808026 (positive:0.874367)), linear design (0.759766 (positive:0.874367)), time (0.658641 (positive:0.277876)), people (0.562181 (positive:0.026783)), things (0.546272 (positive:0.558587)), way (0.543969 (positive:0.286731)), method (0.499687 (neutral:0.000000)), tock (0.491450 (negative:-0.332274)), program (0.430876 (negative:-0.259948)), That\ (0.421280 (positive:0.286731)), report (0.408806 (negative:-0.269003))

Concepts:
Walk This Way (0.886784): dbpedia | freebase | yago
Sit-in (0.862208): dbpedia | freebase

 The Pragmatic Programmer: From Journeyman to Master
Books, Brochures, and Chapters>Book:  Thomas, David and Hunt, Andrew (Oct 1999), The Pragmatic Programmer: From Journeyman to Master, Addison-Wesley, Retrieved on 2007-11-30