Cyber-Physical Systems From Theory To Practice