< Terug naar vorige pagina

Project

Applicatiegerichte ontwikkeling in het internet der dingen

Het Internet of Things (IoT) landschap groeit gestaag. In 2018 waren een derde van de met het internet verbonden computersystemen precies IoT-apparaten. Op dat moment waren ze reeds met meer dan 6 miljard. Cisco schat dat dit aantal in 2023 verder zal groeien naar ongeveer 15 miljard, goed voor maar liefst de helft van de apparaten die met het internet zijn gekoppeld op dat moment.

Er duiken wel een aantal uitdagingen op. Bijna elk apparaat wordt geleverd met een specifieke applicatie. Communicatie tussen apparaten van verschillende leveranciers, die vaak terugvallen op verschillende technologieën, is geen sinecure. Standaardisatie-inspanningen kunnen slechts deels de vendor lock-in val verzachten. Dit komt omdat IoT-standaarden erg gefragmenteerd zijn en continu evolueren. Focus op een welbepaalde norm kan de technologieën waarop in de praktijk kan worden teruggevallen ernstig beperken. 

Anderen hanteren devicegerichte ontwikkeling om diverse apparaten in eenzelfde toepassing te integreren. Het integreren van apparaten van alternatieve leveranciers is in dat geval vaak duur omdat een substantiële  inspanning op vlak van softwareontwikkeling typisch vereist is. Bovendien evolueren IoT-apparaten razendsnel, waardoor heel wat IoT-toepassingen op korte termijn minder aantrekkelijk worden. Daarenboven groeit het aantal sensoren en actuatoren dat wordt uitgerold binnen een enkele IoT-omgeving vaak exponentieel. 

Duurzame IoT-toepassingen moeten precies kunnen omgaan met snel evoluerende hardware. Dit vermogen om aan te passen doorheen de tijd wordt steeds belangrijker vanuit het standpunt van software integratoren.

Ten slotte missen veel IoT-applicaties intelligentie hoewel ze in de volksmond slim worden genoemd. In het beste geval omarmen ze een beperkte mate van automatisering. Voor applicatieontwikkelaars zijn automatische apparaatconfiguratie en intuïtieve ondersteuning voor het oplossen van verbindingsproblemen een complexe uitdaging. Ook het handhaven van beleidsregels in een IoT-toepassing is vaak erg complex. De dynamische aard van IoT-systemen bemoeilijkt dan weer de ontwikkeling van applicaties die gepast omgaan met veranderingen in de omgeving.

Dit doctoraat presenteert applicatiegerichte ontwikkeling als een alternatieve benadering om duuzame IoT-ecosystemen te realiseren. 

Het eerste deel stelt een gelaagde architectuur voor die het ontwerp van geavanceerde IoT-ecosystemen ondersteunt. Het toepassen van doordachte architecturale principes resulteert in IoT-toepassingen die flexibel kunnen inspelen op nieuwe technologieën die op de markt komen. Het aanbieden van verschillende infrastructurele alternatieven aan integratoren en eindgebruikers verlengt de levensduur van toepassingen. Zowel een Android- als een JavaScript-raamwerk zijn geïmplementeerd om de aanpak te valideren. De ontwikkeling van een Ambient Assisted Living (AAL) omgeving demonstreert de werking van het raamwerk.

Het tweede deel vereenvoudigt de ontwikkeling en het beheer van IoT toepassingen door een ontologische inspanning tijdens de vroege ontwerpfase. De modellering van het toepassingsdomein, en infrastructurele conceptualiseringen en relaties staan hierbij centraal. Ontwikkelaars kunnen functionaliteit definiëren in termen van concepten in het applicatiedomein, waarna infrastructurele feedback automatisch wordt geëxtraheerd. 

Een laatste deel presenteert een platformonafhankelijke middleware die de ontwikkeling van slimme applicaties vereenvoudigt. De middleware steunt op een modulaire, op events gebaseerde logica-redenering, ontwikkeld in Prolog, die communiceert met het onderliggende IoT-raamwerk. Het ondersteunt niet alleen basisautomatisering, maar bevat ook functionaliteit voor automatisch apparaat- en verbindingsbeheer, toegangscontrole en een abstractiemodule die de applicaties loskoppelt van de onderliggende infrastructuur. Bovendien maakt de middleware gebruik van de  voordelen van Prolog, door middel van complexe query- en inferentiemogelijkheden. Dit derde deel gaat ook dieper in op een structurele benadering die toegangscontrole tot logische programmering brengt, genaamd ACoP. De aanpak ondersteunt het gebruik van onzuivere predikaten om te voorkomen dat ongeautoriseerde neveneffecten plaatsvinden.

Tenslotte worden validatiemogelijkheden ter ondersteuning van software integratoren voorgesteld. Zowel richtlijnen als softwareontwikkelingstools maken hier deel van uit.

Datum:21 nov 2017 →  23 sep 2022
Trefwoorden:Internet Of things
Disciplines:Toegepaste wiskunde
Project type:PhD project