The Internet of Things (IoT) is a growing field of Information Technology. It comes into domains, such as medicine, agriculture, transportation and manufacturing. IoT promises these domains a seamless delivery of relevant data sent by a plethora of different sensors. As every application changes over time to enhance functionality or remove errors, the software used to manage the sensors must enable the update of relevant components in a seamless manner, as well. As IoT applications potentially use many sensors a wired communication is not sufficient in terms of cost and resources, therefore, the communication between IoT nodes is established using various Wireless Technologies. However, a wireless connections is often not as reliable as wired ones, conditions such as bad weather or leaving a cell in a network may cause disconnections. Additionally, sensors in the IoT paradigm are often managed by devices that are constrained in processing, storage and network capabilities. Disruptions during the update of software adapters that read the data from the sensors, may cause the devices hosting the adapters to break, or interrupt the data delivery for application components to consume. In this Master thesis we surveyed and analyzed existing approaches and technologies enabling the seamless update process of software components and the data delivery in IoT applications. Then, we present an approach based on Dynamic Software Updating techniques and IoT Patterns, and supporting architecture for the update package delivery to IoT nodes and the updating of software components on IoT devices. As a result of this thesis, a prototypical implementation of the system to support the delivery of update package to devices and the execution of component update on devices is provided.