Topic Multiple theses about tools, frameworks, web applications, and methodologies for easing the development process of Internet of Things systems
Keywords Internet of Things, Software Engineering, Developers, IDE, Code Recipes, Novices
Degree Computer Engineering, Cinema and Media Engineering
Credits 30
Advisors Fulvio Corno, Luigi De Russis, Juan Pablo Saénz



A possible web application for managing code recipes

The co-existence of various kinds of devices, protocols, architectures, and programming languages make Internet of Things (IoT) systems complex to develop, even for experienced programmers. Concerning novice programmers, the integration of heterogeneous software components is one of the most painful issues. It commonly implies dealing with several protocols, formats, and authentication mechanisms that are usually unknown to them. Moreover, the lack of clear and complete documentation, or merely, the absence of documentation that can be understood by a novice developer, make this integration issue even more difficult to overcome.

Taking into account that code examples, when used effectively, can be a powerful learning resource, the goal of these theses is to develop software tools, frameworks, and methodologies through which novice IoT developers can manage and exploit the advantages brought by Code Recipes. They are documentation modules, independent from programming languages or run-time environments, and structured around the code fragments that are required to implement a given integration between the subsystems of an IoT system.

Examples of possible theses include a web platform through which novice IoT developers can manage Code Recipes (e.g., as drafted in the figure), a Linked Open Data version of the Code Recipes, integration with existing IDEs (e.g., Eclipse, PyCharm, WebStorm), etc.

The outcome of the theses, if satisfying and appropriate, will be made freely available as Open Source projects.