Engineering Human-Centric Smart Systems