Overlapping of development stages and interaction between different functions are regarded as important strategies for reducing development lead time. However, overlapping typically requires additional costs for rework and functional interaction increases communication time. This paper presents an analytical model to improve project performance by balancing the positive and negative effects of overlapping and functional interaction. We first investigate the progress of downstream development, which is essential to derive the optimal overlapping policies. We find that the downstream progress increases over time when the upstream evolution is fast or linear, but it is indefinite when the upstream evolution is slow. Then, we present optimal overlapping policies taking into account the complexity of downstream progress. The impact of different project properties, such as the dependency between development stages and the opportunity cost of time, on overlapping policies is discussed. Finally, we derive the optimal functional interaction strategy when the optimal overlapping is followed. The methodology is illustrated with a case study at a handset design company.