A method for modelling and simulating a system comprising first (X) and second (Y) interrelated components. The method comprises modelling the behaviour of said first (X) and second (Y) components using first and second specifications. Each of said first and second specifications includes a functional specification and an associated simulation element (82). The method further comprises simulating the behaviour of said first and second components using said first and second specifications. The simulation elements (82) communicate with one another to provide a simulation system.