Cross-domain Internet of Things application development: M3 framework and evaluation