  Internet of Things based systems (IoT systems for short) are becoming
increasingly popular across different industrial domains and their development
is rapidly increasing to provide value-added services to end-users and
citizens. Little research to date uncovers the core development process
lifecycle needed for IoT systems, and thus software engineers find themselves
unprepared and unfamiliar with this new genre of system development. To
ameliorate this gap, we conducted a mixed quantitative and qualitative research
study where we derived a conceptual process framework from the extant
literature on IoT, that identifies 27 key tasks for incorporating into
development processes for IoT systems. The framework was then validated by
means of a survey of 127 IoT systems practitioners developers from 35 countries
across 6 continents with 15 different industry backgrounds. Our research
provides an understanding of the most important development process tasks and
informs both software engineering practitioners and researchers of the
challenges and recommendations related to the development of next generation of
IoT systems.
