Many artifacts that are produced during software development are not independent, but are interrelated, i.e., they each show a view of the software to be developed from a different perspective. Thus changes to one artifact need to be reflected in other artifacts, even if they were constructed in different development phases. In this paper, we take Message Sequence Charts (MSCs) and UML Statecharts as example artifacts from the requirements analysis phase and the design phase, respectively, and propose an iterative development approach. Our approach is based on the automatic generation of Statecharts from MSCs and also the updating of MSCs to reflect modifications made to State-charts. Our approach also detects inconsistencies in MSCs and Statecharts, so that they can be constructed and modified correctly.