The Internet of Things (IoT) combines Wireless Sensor and Actuator Network (WSAN) (the challenge of large scale of systems), pervasive computing (the challenge of heterogeneity of nodes and the user’s own interaction with these nodes), and the elements of the ‘traditional’ Internet such as web and database servers. An important challenge in such a diverse and multidisciplinary field is the ease of application development for the stakeholders, who are involved in the IoT application development process. Several application development approaches have been proposed to address this challenge in the related field of WSANs and pervasive computing. However, very few approaches for IoT applications have evaluated their programming framework on factors such as expressiveness and development effort. The former guides the stakeholders to identify a suitable approach for given application requirements at hand. The latter helps the stakeholders the lines of code that need to be written to develop the IoT application, which involves large number of heterogeneous devices. In this paper, we evaluate our previously proposed model-driven approach, which supports the development of IoT applications, on two factors: expressiveness and development effort. The results of the expressiveness clearly indicate the subset of IoT application characteristics that can be suitably developed in our framework. Our evaluation results of the development effort show that (1) our approach drastically reduce development effort for developing IoT applications compared to node-level programming. (2) the reusability of specification and implementation across the same application domain, thus reducing development effort.