design and optimisation