Foundations of computer-aided process design