  With the growing number of Internet of Things (IoT) devices, the data
generated through these devices is also increasing. By 2030, it is been
predicted that the number of IoT devices will exceed the number of human beings
on earth. This gives rise to the requirement of middleware platform that can
manage IoT devices, intelligently store and process gigantic data generated for
building smart applications such as Smart Cities, Smart Healthcare, Smart
Industry, and others. At present, market is overwhelming with the number of IoT
middleware platforms with specific features. This raises one of the most
serious and least discussed challenge for application developer to choose
suitable platform for their application development. Across the literature,
very little attempt is done in classifying or comparing IoT middleware
platforms for the applications. This paper categorizes IoT platforms into four
categories namely-publicly traded, open source, developer friendly and
end-to-end connectivity. Some of the popular middleware platforms in each
category are investigated based on general IoT architecture. Comparison of IoT
middleware platforms in each category, based on basic, sensing, communication
and application development features is presented. This study can be useful for
IoT application developers to select the most appropriate platform according to
their application requirement.
