Boolean networks are a common modeling tool for studying the phenotypic changes that cells undergo in response stimuli. Examples include cell differentiation during embryogenesis, metastasis of cancer cells, and apoptosis. In these models, genes and proteins are represented by nodes in a network, and each node is assigned a Boolean activity variable that evolves in discrete time-steps such that the attractors of the resulting dynamics correspond to phenotypes of interest. In this talk, I will focus on the techniques we use to analyze these discrete dynamical systems. These techniques rely on the construction and iterative reduction of an auxiliary network that encodes dynamical information as graph structure (an example is diagrammed in the accompanying figure). Our goals include finding all attractors, identifying key feedback loops that govern attractor selection, and driving the system to a desired attractor from an arbitrary initial state. I will briefly cover several recent applications of these methods to empirical and statistical models. I will also discuss ways in which these discrete models -- and the techniques we use to analyze them -- are related to their ODE counterparts.