In Discovering Complexity, William Bechtel and Robert Richardson examine two heuristics that guided the development of mechanistic models in the life sciences: decomposition and localization. Drawing on historical cases from disciplines including cell biology, cognitive neuroscience, and genetics, they identify a number of "choice points" that life scientists confront in developing mechanistic explanations and show how different choices result in divergent explanatory models. Describing decomposition as the attempt to differentiate functional and structural components of a system and localization as the assignment of responsibility for specific functions to specific structures, Bechtel and Richardson examine the usefulness of these heuristics as well as their fallibility -- the sometimes false assumption underlying them that nature is significantly decomposable and hierarchically organized. When Discovering Complexity was originally published in 1993, few philosophers of science perceived the centrality of seeking mechanisms to explain phenomena in biology, relying instead on the model of nomological explanation advanced by the logical positivists (a model Bechtel and Richardson found to be utterly inapplicable to the examples from the life sciences in their study). Since then, mechanism and mechanistic explanation have become widely discussed. In a substantive new introduction to this MIT Press edition of their book, Bechtel and Richardson examine both philosophical and scientific developments in research on mechanistic models since 1993.