In 3D shape modeling, making sure that the modeled shapes are functional can largely facilitate the modeling process, since then the user is able to create more realistic shapes. In this thesis, we present an analysis method for evaluating the functionality of 3D shapes, especially hybrid shapes with multiple functionalities. Our method is based on functionality partial matching, which localizes the functionality analysis down to the partial shape level. We show that functionality partial matching enables functionality analysis for hybrid shapes. Moreover, we incorporate functionality partial matching into an evolutionary shape modeling framework, which evolves an initial set of shapes through crossover operations at the level of shape parts, making the evolutionary process functionality-aware. We show that our functionality-aware model evolution can produce a large and diverse population of functionally plausible hybrid shapes.