Analysing Trade-offs in Frameworks for the Design of Smart Environments