• Refine Query
  • Source
  • Publication year
  • to
  • Language
  • 92
  • 79
  • 47
  • 1
  • Tagged with
  • 235
  • 235
  • 164
  • 161
  • 159
  • 158
  • 149
  • 108
  • 42
  • 36
  • 35
  • 31
  • 31
  • 30
  • 29
  • About
  • The Global ETD Search service is a free service for researchers to find electronic theses and dissertations. This service is provided by the Networked Digital Library of Theses and Dissertations.
    Our metadata is collected from universities around the world. If you manage a university/consortium/country archive and want to be added, details can be found on the NDLTD website.
81

From examples to knowledge in model-driven engineering : a holistic and pragmatic approach

Batot, Edouard 11 1900 (has links)
No description available.
82

Une approche pour la maintenance et la ré-ingénierie globale des logiciels

Favre, Jean-Marie 26 October 1995 (has links) (PDF)
Alors que l'informatique est résolument tournée vers l'avenir, cette thèse se concentre sur le passé ; non pas par nostalgie mais plutôt parce que le futur des logiciels âgés est une question d'actualité. Plus particulièrement trois thèmes sont abordés : la maintenance, la ré-ingénierie et la programmation globale. L'objectif de cette étude est d'explorer l'intersection entre la ré-ingénierie et la programmation globale, domaine que nous avons baptisé ré-ingénierie globale. L'idée principale est de réutiliser des concepts et des techniques de programmation détaillée. En fait nous proposons de définir la programmation globale en distinguant 4 aspects du logiciel : l'architecture, la manufacture, la variation et l'évolution. Un modèle abstrait basé sur des concepts ensemblistes est proposé pour modéliser les différentes entités de programmation globale. La technologie relative à ce domaine est ensuite décrite en considérant aussi bien l'état de l'art que l'état de la pratique. La différence entre ces deux aspects souligne l'intérêt de la ré-ingénierie globale. A titre d'illustration, nous étudions le cas des préprocesseurs en tant qu'outils de programmation globale. Ces outils de bas niveau provenant des années 70 sont traditionnellement utilisés pour décrire des familles de programmes. Pour faciliter la compréhension de tels artefacts nous proposons d'utiliser des techniques comme l'évaluation partielle, l'analyse inter-procédurale de flot de données ou encore le découpage. Ces techniques, définies de manière rigoureuse, s'appuient sur la sémantique dénotationnelle du préprocesseur utilisé. Un prototype montrant leur utilité a été réalisé. Il prouve qu'une approche basée sur des fondements théoriques issus de la programmation détaillée est applicable pour résoudre des problèmes pratiques de programmation globale.
83

iPOJO : Un modèle à composant à service flexible pour les systèmes dynamiques

Escoffier, Clement 03 December 2008 (has links) (PDF)
La récente évolution de l'informatique a ouvert la voie à de nouveaux types d'applications. En effet, la convergence de l'Internet et de l'informatique ubiquitaire permet le développement d'applications intégrant le monde virtuel dans le monde physique. Cependant, cette convergence a vu émerger de nouveaux besoins tel que le dynamisme. Bien que de nombreux travaux aient étudié cette propriété, la création d'applications pouvant évoluer et réagir aux changements environnementaux et contextuels reste très complexe. <br />Cette thèse s'intéresse à la conception, au développement et à l'exécution d'applications dynamiques. L'approche proposée s'appuie sur les récents efforts réalisés autour des modèles à composant. En effet, iPOJO, le modèle réalisé, combine l'approche à service et la programmation par composant afin d'introduire des caractéristiques de dynamisme au sein d'un modèle à composant. iPOJO propose un langage de composition permettant la conception d'applications nativement dynamiques, tout en facilitant le développement des ces applications. Celles-ci sont décrites de manière à réduire le couplage avec des implémentations de composants spécifiques. Enfin, iPOJO fournit une machine d'exécution. Cette machine propose des mécanismes d'introspection, de reconfiguration et d'extensibilité permettant la supervision d'applications ainsi que l'adaptabilité de cette plate-forme iPOJO à différents domaines. <br />L'implémentation d'iPOJO est hébergée sur le projet Apache Felix. Elle est actuellement utilisée dans différents projets industriels tel que des plates-formes domestiques, le serveur d'applications JEE JOnAS ainsi que l'intergiciel pour téléphone mobile OW2 uGASP.
84

La réflexivité dans les architectures multi-niveaux : application aux systèmes tolérant les fautes

Taïani, François 12 January 2004 (has links) (PDF)
Des logiciels complexes, assemblés à partir de nombreux composants préexistants, sont aujourd'hui utilisés pour des emplois de plus en plus critiques (télécommunication, ferroviaire, automobile...). Les risques encourus, aussi bien humains qu'économiques, exigent de pouvoir mettre en place dans ces systèmes des mécanismes de tolérance aux fautes flexibles et adaptables indépendamment des composants utilisés. Mais la complexification des logiciels pose problème, car les approches développées jadis pour assurer la sûreté de fonctionnement de petits systèmes ne leur sont plus applicables. Connues depuis longtemps, les architectures réflexives, en autorisant le découplage des aspects fonctionnels et non-fonctionnels d'un système, visent à résoudre ce problème. Jusqu'ici cependant, les approches proposées s'étaient limitées à des prototypes simples, souvent réalisés ex-nihilo pour expérimentation. Or la tolérance aux fautes est une propriété globale des systèmes considérés, qui requiert la prise en compte de tous les niveaux d'abstraction rencontrés. Dans cette thèse, nous étudions comment le paradigme réflexif peut être adapté pour permettre d'intégrer les considérations algorithmiques de la tolérance aux fautes (validité, observation, contrôle) aux contraintes architecturales rencontrées dans les systèmes complexes (abstraction, transparence, inter-opérabilité). Pour aborder cette problématique, nous développons un nouveau cadre conceptuel, la réflexivité multi-niveaux, et les concepts d'empreinte réflexive et de lien inter-niveaux qui lui sont associés. Nous validons ensuite la pertinence pratique de notre proposition en abordant la réplication de serveurs CORBA à brins d'exécution multiples (multithreaded) sur un exemple concret constitué de GNU/Linux et de l'ORB commercial ORBacus. Nous concluons finalement à la nécessité d'un nouveau paradigme de développement basé sur des composants rendus réflexifs dès leur réalisation.
85

Vers la sécurisation des systèmes d'informatique ubiquitaire par le design : une approche langage / Towards securing pervasive computing systems by design : a language approach

Jakob, Henner 27 June 2011 (has links)
Dans de multiples domaines, un nombre grandissant d'applications interagissant avec des entités communicantes apparaissent dans l'environnement pour faciliter les activités quotidiennes~(domotique et télémédecine). Leur impact sur la vie de tous les jours des utilisateurs rend ces applications critiques: leur défaillance peut mettre en danger des personnes et leurs biens. Bien que l'impact de ces défaillances puisse être majeur, la sécurité est souvent considérée comme un problème secondaire dans le processus de développement et est traitée par des approches ad hoc.Cette thèse propose d'intégrer des aspects de sécurité dans le cycle de développement des systèmes d'informatique ubiquitaire. La sécurité est spécifiée à la conception grâce à des déclarations dédiées et de haut niveau. Ces déclarations sont utilisées pour générer un support de programmation afin de faciliter l'implémentation des mécanismes de sécurité, tout en séparant ces aspects de sécurité de la logique applicative. Notre approche se concentre sur le contrôle d'accès aux entités et la protection de la vie privée. Notre travail a été implémenté et fait levier sur une suite outillée existante couvrant le cycle de développement logiciel. / A growing number of environments is being populated with a range of networked devices. Applications leverage these devices to support everyday activities in a variety of areas (e.g., home automation and patient monitoring). As these devices and applications get woven into our everyday activities, they become critical: their failure can put people and assets at risk. Failures can be caused by malicious attacks and misbehaving applications. Although the impact of such situations can be major, security concerns are often considered a secondary issue in the development process, and treated with ad hoc approaches. This thesis proposes to address security concerns throughout the development lifecycle of a pervasive computing system. Security is addressed at design time thanks to dedicated, high-level declarations. These declarations are processed to implement security mechanisms, and to generate programming support to ease the development of the security logic, while keeping it separate from the application logic. Our approach is studied in the context of access control and privacy concerns. Our work has been implemented and leverages an existing software-design language and a suite of tools that covers the software development lifecycle.
86

Identification d’une architecture à base de composants dans une application orientée objets à l’aide d’une analyse dynamique

Allier, Simon 06 1900 (has links)
Un système, décrit avec un grand nombre d'éléments fortement interdépendants, est complexe, difficile à comprendre et à maintenir. Ainsi, une application orientée objet est souvent complexe, car elle contient des centaines de classes avec de nombreuses dépendances plus ou moins explicites. Une même application, utilisant le paradigme composant, contiendrait un plus petit nombre d'éléments, faiblement couplés entre eux et avec des interdépendances clairement définies. Ceci est dû au fait que le paradigme composant fournit une bonne représentation de haut niveau des systèmes complexes. Ainsi, ce paradigme peut être utilisé comme "espace de projection" des systèmes orientés objets. Une telle projection peut faciliter l'étape de compréhension d'un système, un pré-requis nécessaire avant toute activité de maintenance et/ou d'évolution. De plus, il est possible d'utiliser cette représentation, comme un modèle pour effectuer une restructuration complète d'une application orientée objets opérationnelle vers une application équivalente à base de composants tout aussi opérationnelle. Ainsi, La nouvelle application bénéficiant ainsi, de toutes les bonnes propriétés associées au paradigme composants. L'objectif de ma thèse est de proposer une méthode semi-automatique pour identifier une architecture à base de composants dans une application orientée objets. Cette architecture doit, non seulement aider à la compréhension de l'application originale, mais aussi simplifier la projection de cette dernière dans un modèle concret de composant. L'identification d'une architecture à base de composants est réalisée en trois grandes étapes: i) obtention des données nécessaires au processus d'identification. Elles correspondent aux dépendances entre les classes et sont obtenues avec une analyse dynamique de l'application cible. ii) identification des composants. Trois méthodes ont été explorées. La première utilise un treillis de Galois, la seconde deux méta-heuristiques et la dernière une méta-heuristique multi-objective. iii) identification de l'architecture à base de composants de l'application cible. Cela est fait en identifiant les interfaces requises et fournis pour chaque composant. Afin de valider ce processus d'identification, ainsi que les différents choix faits durant son développement, j'ai réalisé différentes études de cas. Enfin, je montre la faisabilité de la projection de l'architecture à base de composants identifiée vers un modèle concret de composants. / A system is complex and particularly difficult to understand and to maintain when it is described with a large number of highly interdependent parties. An object-oriented application is often complex because it uses hundreds or thousands of classes with many different dependencies more or less explicit. The same application, using the component paradigm, contains a smaller number of loosely coupled parties, highly cohesive with clear inter-dependencies. Indeed, because the component paradigm provides a high-level representation, synthetic and well-organized structure of complex systems, it can provide a space of projection for object-oriented applications. Such projection facilitates the step of understanding a system prior to any activity of maintenance and/or evolution. In addition, it is possible to use this representation as a model to perform a complete restructuring of an operational object-oriented application into its equivalent operational component-based application. Thus, the new form of the application benefits from all the good properties associated with the component-oriented paradigm. The goal of my thesis is to propose a semi-automatic approach to identify a component-based architecture in an object-oriented application. This architecture should help in understanding the original application, but also simplifies the projection of the object-oriented application on a concrete component model. The identification of a component-based architecture is achieved in three main steps: i) obtaining data for the identification process. These data, which correspond to dependencies between classes, are obtained with a dynamic analysis of the target application. ii) identification of the components. Three methods were explored. The first uses the formal concept analysis, the second two meta-heuristics and the last a multiobjective meta-heuristic. iii) identification of the component-based architecture representing the target application. This is done by identifying the provided and required interfaces for each component. To validate this identification process, and the different choices made during its development, I realized several case studies. Finally, I show the feasibility of the projection of the identified component-based architecture on a specific component model.
87

Langages dédiés au développement de services de communications / Domain-Speci?c Languages for Developing Communication Services

Palix, Nicolas 17 September 2008 (has links)
Les services de téléphonie IP automatisent le traitement des stimuli de communication en utilisant des ressources réseaux. Cependant, l'ajout de services rend vulnérable le système de téléphonie car certaines propriétés de fonctionnement des services déployés ne sont pas garanties. Aucune solution de développement de services ne permet de simultanément garantir des propriétés de fonctionnement et d'exploiter des ressources réseaux. Cette thèse propose une approche fondée sur le concept des langages dédiés pour développer des services de communications. Deux nouveaux langages dédiés au domaine des communications ont été développés : SPL et Pantaxou. Le premier sert à router des messages de signalisation tandis que le second, plus généraliste, permet la coordination d'entités communicantes. Dans cette thèse, nous démontrons, grâce à SPL et Pantaxou, que les services de communications peuvent être développés avec un langage de programmation expressif tout en préservant des propriétés critiques du domaine. / IP telephony services use network resources to automate communication stimuli processing. However, deploying services on a telephony system leads to safety issues and programmers need to ensure some safety properties on their services. Several approaches allowing service development have quickly emerged. However, none of them is both expressive and safe. This thesis proposes a new approach that relies on domain-specific languages (DSL) to develop communication services. Two new DSLs have been designed for communication services, namely SPL (Session Processing Language) and Pantaxou. The first one allows to route signaling messages while the second one, more generalist, enables to define coordination logics of communicating entities. In this thesis, we demonstrate thanks to SPL and Pantaxou that communication services could be developed with an expressive programming language that preserves some critical domain properties.
88

Management of scenarized user-centric service compositions for collaborative pervasive environments / Mise en oeuvre de la composition de services scénarisée et centrée utilisateur pour les environnements pervasifs collaboratifs

Faure, Matthieu 07 December 2012 (has links)
L'informatique pervasive (ou ubiquitaire) est un support pour des environnements contenant denombreux objets (ou dispositifs) disséminés, équipés d'électronique et interconnectés. Ces dispositifsfournissent un accès distant à une multitude de fonctionnalités qui nous aident dans notre vie quotidienne.Les Architectures Orientées Services sont adaptées à la conception de logiciels pervasifs. En effet,chaque dispositif fournit son propre ensemble de fonctionnalités sous la forme de services. Ainsi, enl'absence de mécanisme complémentaire, les utilisateurs se trouvent limités à utiliser les servicesisolément alors que leurs besoins correspondent à des scénarios qui impliquent une composition demultiples services offerts par plusieurs appareils.Dans cette thèse, nous défendons qu'un système pervasif doit : d'une part, permettre aux utilisateursd'exprimer facilement leurs besoins en créant des scénarios et d'autre part, proposer à ses utilisateursune représentation et des moyens de gestion de leur contexte afin qu'ils puissent tirer le meilleur parti deleur environnement et de ses changements. De plus, la présence de plusieurs utilisateurs implique lanécessité de collaborer. Par ailleurs, l'exécution de scénarios doit être résiliente aux changementsenvironnementaux et aux actions des utilisateurs. Elle doit ainsi s'adapter dynamiquement et, si possible,tirer profit du contexte et des changements de l'environnement.Notre contribution, nommée SaS (Scenarios as Services), répond à ces objectifs. Elle propose uneapproche interopérable capable de s'adapter à l'environnement. Elle fournit une représentation persistanteet personnalisable du contexte et inclut un langage de description de scénarios destiné aux utilisateurs.Ces scénarios sont facilement contrôlables, personnalisables et réutilisables. Elle planifie l'exécution pasà pas des scénarios, afin de s'adapter aux changements de l'environnement et de bénéficier desavantages de la mobilité des utilisateurs (exécution d'un scénario, dans la durée, sur plusieurs lieux).Enfin, elle inclut le partage de scénarios qui permet aux utilisateurs de collaborer. Un prototype de SaS,basé sur des normes industrielles (telle qu'OSGi), prouve la faisabilité de notre contribution et nouspermet de l'évaluer sur un cas d'étude simple. / Pervasive (or ubiquitous) computing is a paradigm for environments containing distributedinterconnected devices that embed electronics. These devices provide a remote access to numerousfunctionalities that assist us in our daily life. Service-Oriented Architectures are suitable to design softwarefor pervasive environments. Indeed, each device provides its own set of functionalities as services.Without any extra mechanism, users can only use a single service at a time. Nevertheless, their needsusually correspond to scenarios which involve a composition of multiple services, provided by multipledevices.In this thesis, we advocate that a pervasive system must, on the one hand, enable users to easily expresstheir needs through scenario creation and, on the other hand, propose to users a representation of theircontext so that they can benefit from both their environment and its changes. In addition, the presence ofseveral users implies that users must be able to collaborate.Our contribution, named SaS (Scenarios as Services), fulfils these requirements. It proposes aninteroperable approach that adapts to its environment. It provides users with a customizable andpersistent representation of their context and includes a scenario description language targeted to users.Scenarios are easy to control, customize and reuse. SaS schedules the step-by-step execution ofscenarios to adapt to environmental changes and benefit from user mobility (scenario execution split over time on successive distinct sites). Finally, SaS includes scenario sharing mechanisms which are abasis for collaboration. A prototype of SaS, based on industrial standards (e.g., OSGi), proves thefeasibility of our contribution and serves for its evaluation on a simple use case.
89

Approche langage au développement du support protocolaire d'applications réseaux

Burgy, Laurent 28 April 2008 (has links) (PDF)
Une application réseau communique avec d'autres applications par le biais d'un ensemble consen- <br />suel de règles régissant la communication, appelé protocole. Cette communication est gérée par la <br />partie de l'application connue comme la couche de support protocolaire qui gère la manipulation de <br />messages protocolaires. Elle s'avère être un composant critique d'une application réseau puisqu'elle <br />représente l'interface entre celle-ci et le monde extérieur. Elle est donc soumise à deux contraintes <br />fortes : une contrainte d'efficacité pour pouvoir traiter un grand nombre de messages et une contrainte <br />de robustesse pour faire face à des attaques visant à déstabiliser l'application ou la plate-forme maté- <br />rielle sous-jacente. Malgré ces contraintes, le processus de développement de cette couche demeure <br />rudimentaire et requiert un haut niveau d'expertise. Il consiste à traduire manuellement une spécifi- <br />cation du protocole écrite dans un formalisme haut niveau comme ABNF vers du code bas niveau tel <br />que du C. Le fossé entre ces niveaux d'abstraction favorise l'apparition d'erreurs. <br />Cette thèse propose une approche langage au développement de la couche de support protocolaire <br />d'applications réseaux, pour améliorer leur robustesse sans compromettre leur performance. Notre ap- <br />proche est fondée sur l'utilisation d'un langage dédié, Zebu, pour décrire la spécification des couches <br />de support protocolaire d'applications réseaux qui utilisent des protocoles applicatifs textuels à la <br />HTTP. La syntaxe de Zebu est très proche de celles du formalisme ABNF, favorisant ainsi l'adoption <br />de Zebu par des experts du domaine. En annotant la spécification ABNF d'un protocole, l'utilisateur <br />de Zebu peut adapter une couche de support protocolaire à une application donnée. Dans un premier <br />temps, le compilateur Zebu vérifie la spécification annotée pour déceler d'éventuelles incohérences. <br />Ensuite, une couche de support protocolaire définie par les annotations fournies est générée automati- <br />quement. Cette couche consiste en un ensemble de structures de données pour représenter un message, <br />un analyseur syntaxique qui remplit ces structures de données et des fonctions utilitaires pour l'ac- <br />cès à ces données ou piloter l'analyse syntaxique des messages. Par défaut, l'analyseur syntaxique de <br />messages généré n'accepte que les messages respectant scrupuleusement la spécification. Ce critère <br />de validation peut être modifié pour plus de flexibilité ou de meilleures performances.
90

Contribution à la conception logicielle de systèmes d'applications : la méthode MOSAIC dans le projet Aristote

Brissaud, Frédéric 12 May 1993 (has links) (PDF)
Les sgbd orientes objets integrent les concepts des langages a objets et les mécanismes des sgbd. Ces propriétés les rendent bien adaptes au développement de systèmes d'applications regroupant plusieurs applications interactives opérant sur des données persistantes partagées (si, agl...). L'état de l'art développe porte sur la programmation, les bases de données et les interfaces homme-machine et montre qu'il existe différentes techniques spécifiques adaptées au développement de certaines parties de ces applications. Cependant, aucune methode de conception actuelle ne prend en compte la conception complète et détaillée d'un système d'applications et le concepteur est insuffisamment guide pour programmer une application a l'aide d'un sgbdoo. Notre methode mosaic permet de développer un système d'applications programme a l'aide d'un sgbdoo. Notre approche consiste a privilégier une décomposition dirigée par les objets au détriment de l'habituelle séparation entre la base de données et les programmes d'application. Ainsi une application comporte deux composants principaux. Le corps de l'application est constitue d'objets applicatifs, modèles du domaine d'application, et le gestionnaire de dialogue de l'application est compose d'objets interactifs, modèles du dialogue. Les objets applicatifs, persistants ou temporaires, sont a la fois des modules logiciels et des conteneurs de données potentiellement persistantes ou temporaires. Les objets interactifs regroupent les informations et les actions présentées a l'utilisateur et assurent leur cohérence. Un système d'applications est compose d'une base d'objets applicatifs persistants et d'applications. Le modelé mosaic permet d'étudier les dimensions structurelles, fonctionnelles et dynamiques des objets et du système d'applications dans sa globalité. Des langages textuels et graphiques, un outil, une démarche et des regles de traduction de mosaic vers le langage peplom et vers le sgbdoo o2 complètent ce modèle. Nos propositions sont illustrées par un exemple d'application programme a l'aide d'o2

Page generated in 0.052 seconds