Model driven development of railway systems using diversity