A Design-Driven Methodology for the Development of Large-Scale Orchestrating Applications

Milan Kabac 1
1 Phoenix - Programming Language Technology For Communication Services
LaBRI - Laboratoire Bordelais de Recherche en Informatique, Inria Bordeaux - Sud-Ouest, EA4136 - Handicap et système nerveux :Action, communication, interaction: rétablissement de la fonction et de la participation [Bordeaux]
Abstract : Our environment is increasingly populated with large amounts of smart objects. Some monitor free parking spaces, others analyze material conditions in buildings or detect unsafe pollution levels in cities. The massive amounts of sensing and actuation devices constitute large-scale infrastructures that span over entire parking lots, campuses of buildings or agricultural fields. Despite being successfully deployed in a number of domains, the development of applications for such infrastructures remains challenging. Considerable knowledge about the hardware/network specificities of the sensor infrastructure is required on the part of the developer. To address this problem, software development methodologies and tools raising the level of abstraction need to be introduced to allow non-expert developers program applications. This dissertation presents a design-driven methodology for the development of applications orchestrating massive amounts of networked objects. The methodology is based on a domain-specific design language, named DiaSwarm that provides high-level, declarative constructs allowing developers to deal with masses of objects at design time, prior to programming the application. Generative programming is used to produce design-specific programming frameworks to guide and support the development of applications in this domain. The methodology integrates the parallel processing of large-amounts of data collected from masses of sensors. We introduce specific language declarations resulting in the generation of programming frameworks based on the MapReduce programming model. We furthermore investigate how design can be used to make explicit the resources required by applications as well as their usage. To match the application requirements to a target sensor infrastructure, we consider design declarations at different stages of the application lifecycle. The scalability of this approach is evaluated in an experiment, which shows how the generated programming frameworks relying on the MapReduce programming model are used for the efficient processing of large datasets of sensor readings. We examine the effectiveness of the proposed approach in dealing with key software engineering challenges in this domain by implementing application scenarios provided to us by industrial partners. We solicited professional programmers to evaluate the usability of our approach and present quantitative and qualitative data from the experiment.
Document type :
Theses
Liste complète des métadonnées

Cited literature [141 references]  Display  Hide  Download

https://hal.inria.fr/tel-01412705
Contributor : Abes Star <>
Submitted on : Wednesday, December 14, 2016 - 10:25:09 AM
Last modification on : Tuesday, February 5, 2019 - 3:26:04 PM
Document(s) archivé(s) le : Monday, March 27, 2017 - 10:01:09 PM

File

KABAC_MILAN_2016.pdf
Version validated by the jury (STAR)

Identifiers

  • HAL Id : tel-01412705, version 2

Citation

Milan Kabac. A Design-Driven Methodology for the Development of Large-Scale Orchestrating Applications. Other [cs.OH]. Université de Bordeaux, 2016. English. ⟨NNT : 2016BORD0133⟩. ⟨tel-01412705v2⟩

Share

Metrics

Record views

1288

Files downloads

772