Systems design