Towards a domain-specific methodology for the orchestration of networked entities.
Vers une méthodologie dédiée à l'orchestration d'entités communicantes
Résumé
Networked technologies, omnipresent in our surroundings, have increasingly more computing power, offering interfaces to easily access their functionalities. These technologies offer a wide testing ground for research, especially in applied computer science. They form an evident assistive support to help people in their daily activities. Applications that address people needs are found in various application areas, each related to specific goals : comfort, security, information management, or assisted-living. The goal of this thesis is to propose an approach that bridges the gap between a user requirements and the applications that satisfy them. To do so, we define Pantagruel, an expressive and accessible visual language that is parameterized by an application area. To further reconcile accessibility with expressiveness, we provide the user with a domain-specific methodology to guide the development of applications. This methodology draws a bridge between the user needs and the applications, and is strongly coupled with the language concepts. In doing so, satisfying the requirements and evolving the applications according to new requirements is facilitated. To increase the user confidence in using Pantagruel language, and because the applications aim at being seamlessly integrated in his everyday life, Pantagruel programs need to be reliable. To this end, we extend our methodology with a programming approach driven by properties. These properties can be verified using the language semantics, which is formally defined.
Les technologies omniprésentes dans notre environnement intègrent des éléments logiciels facilitant leur utilisation. Ces technologies offrent un vaste laboratoire d'expérimentation pour la recherche et en particulier pour l'informatique appliquée. Ces technologies sont un support évident pour rendre des services aux personnes dans leur vie quotidienne. Ces services concernent divers champs d'applications, chacun servant des objectifs spécifiques : confort, sécurité, accès à l'information ou encore assistance à la personne. Puisque les applications offrant ces services sont intimement liées aux besoins des utilisateurs, il est indispensable qu'elles s'adaptent facilement à leurs besoins. Une manière de répondre à ce défi est de proposer à l'utilisateur des outils pour programmer lui-même ses applications. Notre contribution consiste non seulement à définir un tel outil, sous la forme d'un langage visuel paramétré par un champ d'applications, mais aussi à proposer une méthodologie dont l'objectif est de guider un utilisateur dans la programmation d'applications à l'aide de ce langage. Cette méthodologie est dédiée à l'orchestration d'entités communicantes : elles représentent les technologies déployées dans nos environnements. Notre approche, associant une méthodologie à un langage, est accessible à un programmeur novice et suffisamment expressive pour traiter divers champs d'applications. Afin d'augmenter la confiance de l'utilisateur dans le développement de ses applications, nous étendons la méthodologie en proposant une approche de développement dirigée par la vérification de quelques propriétés. Cette vérification est permise par la sémantique du langage, formellement définie.
Loading...