{'fraction_non_alphanumeric': 0.015100037750094376, 'fraction_numerical': 0.0007550018875047187, 'mean_word_length': 5.294536817102138, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 3, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
Accelerating Application Development in the Internet of Things using Model-driven Development

The application development for the Internet of Things poses a challenge as it deals with heterogeneity very commonly found in both the Physical world and the Cyber world. Further, application developers have to get a good grip on the varied life cycles that range from initial design and implementation to ultimate deployment. Keeping this in mind, this research talk showcases our work on two projects where we implemented an approach based on Model-driven development to realize our goals. The first project is on IoTSuite, which is a Model-driven Toolkit for Prototyping Internet of Things Applications. Development of applications in the field of the Internet of Things (IoT) is a huge challenge as it has to tackle various interconnected issues like non-existent separation of concerns as well as abstractions for addressing both the heterogeneity and the large scale involved. Besides, developers have to fix issues found in different phases of the application life cycle. It starts with the analysis of the application logic and goes on to its separation into a distributed task set for the inherent network. Afterwards, there comes the process of implementation of tasks for a particular hardware. On top of these, developers have to be prepared for unpredictable aspects of the life cycle like a change in the requirements of the application and the devices deployed. To address the above challenges, in general, multiple approaches have been suggested spanning the interlinked areas of pervasive computing, software engineering and wireless sensor network. Nonetheless, current approaches can take care of only a few subsets of the challenges mentioned above when deployed in the context of IoT. What this research work does is propose an integrated approach to address the challenges mentioned above. This works primary contributions are: (1) a development methodology which subdivides the overall application development for IoT into a variety of concerns and lends a framework based on concepts for developing the application, (2) a development framework which focusses on implementing the development methodology to endorse stakeholder actions. The development framework offers a group of modelling languages to address each and every development concern and excerpts the complexities of both scale and heterogeneity. It brings together task-mapping, linking techniques and code generation for ensuring automation. It is in the application development phase that code generation jumps in and shines through by ensuring a programming frame-