• 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.
101

Méthodologie de développement des services de communication temps-réel d'un intergiciel embarqué dans l'automobile

Santos Marques, Ricardo 14 September 2006 (has links) (PDF)
Notre objectif est de proposer une méthodologie pour le développement d'un intergiciel embarqué dans l'automobile offrant des services de communication aux applications. Le cadre d'utilisation de nos travaux est la conception de systèmes embarqués dans les véhicules. Ces applications requièrent un intergiciel capable de fournir des services standards de communication, qui cachent la localisation des participants aux échanges, qui masquent l'hétérogénéité des plates-formes de communication, et qui garantissent le respect des contraintes temporelles imposées sur les échanges et sur l'exécution des participants.<br />La méthodologie proposée vise la conception d'un intergiciel optimisé et pour cela aborde deux aspects : la spécification d'une architecture d'implémentation, et la construction d'une configuration faisable. L'architecture d'implémentation est optimisée dans le sens où l'intergiciel est adapté à l'environnement d'exécution (le système d'exploitation OSEK/VDX OS), et minimise son utilisation des ressources disponibles. Elle apporte une réponse, d'une part, au niveau de la spécification d'une architecture logicielle (construite à l'aide de design patterns), et, d'autre part, à la manière dont cette architecture est déployée sur une plate-forme concrète (sous la forme d'un ensemble de tâches). La procédure proposée pour la construction de la configuration de l'intergiciel calcule les caractéristiques temporelles faisables de l'intergiciel et des trames émises par les stations d'un réseau CAN. Elle prévoit aussi une étape pour le calcul d'une allocation de priorités faisable pour les tâches de l'application sur chaque station. L'optimalité de la configuration est atteinte en assurant le respect de toutes les contraintes temporelles imposées sur les échanges et sur l'exécution des tâches de l'application et de l'intergiciel.
102

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.
103

Gestion de la variabilité et automatisation des processus de développement logiciel

Rouillé, Emmanuelle 01 April 2014 (has links) (PDF)
De nombreux outils existent afin de faire face à la complexité des logiciels et des projets de développement logiciel. Leur utilisation est cependant à l'origine de tâches manuelles répétitives, sources d'erreurs et coûteuses en temps. L'automatisation de ces tâches permet de gagner en productivité. Mais la difficulté est de déterminer quand une automatisation de tâche manuelle répétitive doit être réutilisée, ainsi que de créer des automatisations réutilisables à travers leurs différents cas d'utilisation. Nous proposons donc une approche outillée pilotant la réutilisation des automatisations de tâches manuelles répétitives par les processus de développement logiciel, où un processus de développement logiciel décrit les étapes à réaliser pour mener à bien un projet de développement logiciel. Cette approche consiste à capitaliser sur un ensemble de processus et à réutiliser des processus de cet ensemble en fonction des exigences des projets, indépendamment du formalisme utilisé pour définir les processus. Des automatisations de tâches manuelles répétitives sont liées aux étapes des processus qu'elles automatisent. Ce lien permet de savoir quelles automatisations utiliser pour un projet donné et quand. Il permet également d'expliciter les différents cas d'utilisation de chaque automatisation. Cette information est utilisée afin de créer des automatisations réutilisables à travers leurs différents cas d'utilisation. L'approche ainsi que l'outillage associé ont été appliqués sur une famille de processus industriels de développement Java ainsi que sur une famille de processus consistant à définir et outiller un langage de modélisation.
104

Une approche agile, fiable et minimale pour le maintien de la qualité de service lors de l'évolution d'applications à base de processus métiers

Feugas, Alexandre 08 October 2014 (has links) (PDF)
Les logiciels actuels adoptent une méthodologie de développement dite "agile" pour mieux prendre en compte la nécessité de s'adapter constamment aux nouveaux besoins des utilisateurs. Les concepteurs et développeurs se rapprochent alors des futurs utilisateurs du logiciel en proposant des cycles courts d'itération, où le futur utilisateur fait un retour rapide sur l'incrément apporté au logiciel, et fait part de nouveaux besoins à prendre en compte dans les incréments à venir. Ces itérations peuvent être vues comme des évolutions, faisant suite à la définition d'un nouveau besoin de l'utilisateur, à un changement de l'en- vironnement d'exécution, ou encore à une remise en question de l'architecture du logiciel. Dans l'écosystème des architectures orientées services, la conception d'applications passe par la chorégraphie ou l'orchestration de services par des processus métiers. Concevoir ces applications consiste alors à mettre en relation les flots de contrôle et de données de ces services. La phase d'évolution devient une phase complexe, où une simple modification lo- calisée à une sous-partie d'un processus métier peut avoir des conséquences sur l'ensemble du système logiciel, causant par exemple son ralentissement lors de l'exécution. Du point de vue de la qualité de service (QoS), la maîtrise de la fiabilité du processus d'évolution pour maintenir la qualité de service d'un logiciel est alors critique. Il est donc nécessaire de pouvoir proposer des mécanismes d'évolution agiles et fiables permettant le maintien de la QoS lors de l'évolution d'applications à base de processus métiers. En d'autres termes, il s'agit de s'assurer qu'une évolution ne viole pas les contrats de QoS définis initialement. Cette garantie doit être établie en fonction du contrat soit lors de la conception soit lors de l'exécution. Dans ce dernier cas, le processus de vérification doit être minimal et localisé, afin de ne pas dégrader les performances du système logiciel. Pour cela, nous proposons de mettre en œuvre un cycle de développement agile, centré sur le maintien de la QoS lors de l'évolution. Il s'agit de prendre l'aspect évolutif du système, ceci dès l'étape de conception initiale, en identifiant les informations requises pour déter- miner si la QoS est correcte et si elle est non violée par une évolution. Ces informations étant détenues par plusieurs intervenants, il est également nécessaire d'établir les points d'interaction au cours du cycle de développement, au cours desquels les informations seront partagées de façon à ce que le logiciel qui en est issu reste syntaxiquement et sémantique- ment cohérent et que les contrats de QoS soient (re)vérifiés a minima. Les contributions de cette thèse sont donc mises en œuvre dans Blink, un cycle de développement pour l'évolu- tion, et Smile, un canevas de développement pour le maintien de la qualité de service lors de l'évolution d'applications orientées service définies à base de processus métiers. Tandis que le cycle de développement Blink vise à identifier les différents rôles présents dans l'équipe de développement et à expliciter leurs interactions, le canevas Smile propose la réalisation d'une boucle d'évolution. Cette boucle permet de concevoir, d'analyser et d'appliquer une évolution, en détectant les potentielles violations de contrat de QoS. Pour cela, l'analyse de l'évolution détermine son effet sur la QoS du logiciel, en établissant des relations de causalité entre les différentes variables, opérations, services et autres parties du système. Ainsi, en identifiant les éléments causalement affectés par l'évolution et en écartant ceux qui ne le sont pas, notre approche permet de limiter le nombre d'éléments à (re)vérifier, garantissant ainsi une étape d'évolution fiable, avec une étape de (re)vérification minimale. Nous montrons sur un cas concret de système de gestion de crises, constitué de onze processus métiers et de dix scénarios, que l'utilisation conjointe de Blink et de Smile permet d'identifier, pour chaque évolution, quel sera son effet sur le reste du système, et si la qualité de service sera maintenue ou non.
105

A virtual reality-based approach for interactive and visual mining of association rules

Ben Said, Zohra 25 October 2012 (has links) (PDF)
Cette thèse se situe à l'intersection de deux domaines actifs de recherche: la fouille de règles d'association et la réalité virtuelle. Les limites majeures des algorithmes d'extraction de règles d'association sont (i) la grande quantité de règles produites et (ii) leur faible qualité. Dans la littérature, plusieurs solutions ont été proposées pour remédier à ce problème, comme le post-traitement de règles d'association qui permet la validation des règles et l'extraction de connaissances utiles. Cependant, alors que les règles sont extraites automatiquement par des algorithmes combinatoires, le post-traitement de règles est effectué par l'utilisateur. La visualisation peut aider l'utilisateur à faire face à une grande quantité de règles en les représentants sous forme visuelle. Afin de trouver les connaissances pertinentes dans les représentations visuelles, l'utilisateur doit interagir avec la représentation de règles d'association. Par conséquent, il est essentiel de fournir à l'utilisateur des techniques d'interaction efficaces. Ce travail aborde deux problèmes essentiels : la représentation de règles d'association afin de permettre à l'utilisateur de détecter très rapidement les règles les plus intéressantes et l'exploration interactive des règles. Le premier exige une métaphore intuitive de représentation de règles d'association. Le second nécessite un processus d'exploration très interactif permettant à l'utilisateur de fouiller l'espace de règles en se concentrant sur les règles intéressantes. Les principales contributions de ce travail peuvent être résumées comme suit : (i) Nous proposons une nouvelle classification pour les techniques de fouille visuelles de données, basée sur des représentations en 3D et des techniques d'interaction. Une telle classification aide l'utilisateur à choisir une configuration pertinente pour son application. (ii) Nous proposons une nouvelle métaphore de visualisation pour les règles d'association qui prend en compte les attributs de la règle, la contribution de chacun d'eux et leurs corrélations. (iii) Nous proposons une méthodologie pour l'exploration interactive de règles d'association. Elle est conçue pour faciliter la tâche de l'utilisateur face à des grands ensembles de règles en tenant en compte ses capacités cognitives. Dans cette méthodologie, des algorithmes locaux sont utilisés pour recommander les meilleures règles basées sur une règle de référence proposée par l'utilisateur. Ensuite, l'utilisateur peut à la fois diriger l'extraction et le post-traitement des règles en utilisant des opérateurs d'interaction appropriés. (iv) Nous avons développé un outil qui implémente toutes les fonctionnalités de la méthodologie. Notre outil est basé sur un affichage intuitif dans un environnement virtuel et prend en charge plusieurs méthodes d'interaction.
106

Approche multi-perspective centrée exigences de composition de services Web

Driss, Maha 08 December 2011 (has links) (PDF)
Le paradigme architecture orientée service AOS est devenu un standard pour la conception et le développement d'applications distribuées dans base de services Web. Malgré tous les avantages qu'elles apportent en termes d'interopérabilité et de réutilisation, les solutions de développement associées au paradigme AOS sont destinées aux programmeurs et restent difficiles à comprendre par le monde de l'entreprise. Pour être en phase avec le monde de l'entreprise, les applications à base de services Web doivent être décrites en termes d'exigences qu'elles permettent de satisfaire et non pas en termes de fonctionnalités qu'elles permettent de réaliser. Ceci permet de minimiser la discordance conceptuelle entre les services logiciels et l'énoncé des exigences des utilisateurs. Nous proposons dans le cadre de ce travail de thèse, une approche multi-perspective centrée exigences pour la composition de services Web. Notre approche positionne la composition des services dans une perspective centrée exigences dans laquelle les services métiers de haut niveau sont décrits en termes d'exigences qu'ils permettent de satisfaire. Un processus d'alignement est proposé pour assurer une mise en correspondance de ces services avec les services logiciels de bas niveau qui sont décrits en termes de déclarations techniques au niveau d'une perspective centrée fonctions. Ce processus intègre la variabilité de composition tout au long des étapes de construction de ces applications à base de services.
107

Conception et prototypage d'un outil web de médiation et d'aide au dialogue tchaté écrit en langue seconde

Falaise, Achille 25 September 2009 (has links) (PDF)
Notre thème de recherche général concerne les aides informatisées au dialogue en langue seconde, oral et/ou écrit. Cette thèse se concentre sur la dénition et l'étude, au moyen de corpus et d'un prototype, de procédés d'aide au dialogue écrit (tchat) en langue seconde, dans un contexte de médiation faible. Nous présentons dans un premier temps ce qu'est le tchat "ordinaire" en langue première, ses divergences de surface et ses convergences profondes vis à vis des autres formes d'écrit. Nous montrons ensuite les limites des aides actuelles, à médiation forte, dans laquelle l'outil d'aide est interposé entre des locuteurs supposés totalement incapables de communiquer par un autre biais, de sorte qu'on ne traite jamais le cas pourtant fréquent où ils peuvent utiliser une langue intermédiaire. Nous adaptons au tchat le scénario du projet VerbMobil (1992-2000) et proposons une approche à médiation faible pour locuteurs partiellement bilingues, capable de tenir compte de leurs compétences et de leurs problèmes spéciques. Le prototype développé dans ce cadre, Koinè, permet d'étudier les contraintes informatiques, ergonomiques et linguistiques d'un tel système, de proposer des solutions, et de les expérimenter. Des aides au dialogue oral ont été prévues, mais, comme la reconnaissance vocale du tout venant au téléphone ou sur IP n'est pas encore assez avancée pour ce type d'utilisation, la version actuelle est centrée sur l'écrit. Koinè est un service Web, construit à l'aide de la bibliothèque logicielle Krater, qui accélère et simplifie le développement d'applications Web. Koinè agrège des fonctionnalités utiles pour surmonter les obstacles de la communication en langue non native, telle que tableau blanc, livre de phrases interactif personnalisable, pré- traduction par traduction automatique, mesures d'intelligibilité et de prototypicalité des énoncés, et possibilité de désambiguïsation interactive et participative.
108

Contractualisation de l'évolution architecturale de logiciels à base de composants : Une approche pour la préservation de la qualité

Tibermacine, Chouki 20 October 2006 (has links) (PDF)
De toutes les étapes qui constituent le processus de maintenance, l'étape de compréhension d'une application avant son évolution, et l'étape de vérification de sa progression et de sa non régression aprés évolution sont de loin les plus coûteuses. Dans cette these, je présente une approche qui diminue les coûts associés a ces deux étapes, pour des applications conçues à l'aide de composants. Dans cette approche, les liens unissant les attributs qualité d'une application et les décisions architecturales sont documentés formellement. La définition de ces liens se fait a chaque étape du cycle de vie de l'application. J'ai développé un environnement d'assistance à l'évolution, qui exploite cette documentation, pour d'une part, garantir sa mise a jour et d'autre part, notifier au développeur les effets possibles sur les exigences qualité des changements architecturaux proposés. Cette documentation forme ainsi un contrat dit d'évolution. Il s'agit d'un accord entre l'architecte de l'application et le responsable de son évolution. Le premier doit expliciter ses décisions de conception, sous la forme d'un ensemble de contraintes, afin qu'elles puissent être respectées lors du développement et de l'évolution. Le second doit respecter ce contrat afin de bénéficier d'une garantie de préservation de la qualité initialement requise. Ceci permet, principalement, de réduire les coûts associés aux tests de non-régression sur l'aspect non-fonctionnel. Cette même documentation est utilisée pour tracer toutes les décisions architecturales tout au long du processus de développement d'un logiciel. Il est possible, ainsi, de vérifier, à une étape donnée du processus, la non-altération de toutes les décisions prises dans les étapes en amont. J'ai proposé un outil permettant de transformer vers une représentation unique, puis évaluer, les contraintes définies lors des différentes étapes. Cette traçabilité des décisions a pour objectif de rendre persistants les attributs qualité qui sont à l'origine de ces décisions, à travers toutes les étapes du cycle de vie d'un logiciel.
109

Ligne de produits dynamique pour les applications à services

Yu, Jianqi 16 June 2010 (has links) (PDF)
Le développement d'applications par composition de services dynamiques et hétérogènes, c'est-à-dire implantés suivant des technologies différentes, est le sujet principal de cette thèse. Nous pensons, en effet, que l'approche orientée service apporte des changements considérables dans le domaine du logiciel et peut amener des gains significatifs en termes de réduction des coûts, d'amélioration de la qualité et de compression des temps de mise sur le marché. Les technologies à services ont dors et déjà pénétré de nombreux secteurs d'activité et répondent à certaines des attentes qu'ils suscitaient. Le développement d'applications par composition de services hétérogènes demeure néanmoins très complexe pour plusieurs raisons. Tout d'abord, les diverses technologies existantes utilisent des mécanismes de déclaration, de recherche et de liaison très différents. Les services, eux-mêmes, sont décrits suivant des structures souvent éloignées. Des développements et des connaissances techniques très pointus sont ainsi nécessaires pour correctement associer des services utilisant des bases technologiques différentes. D'autre part, la gestion du dynamisme est complexe. Le principe de l'approche à service est de permettre la liaison retardée de service et, dans certains cas, le changement des liaisons en fonction de l'évolution du contexte. Cela demande des algorithmes de synchronisation très précis, difficiles à mettre au point et à tester. Nous nous sommes ainsi rendu compte que, dans de nombreux cas, les bénéfices de l'approche à service ne sont pas complètement obtenus, faute d'une gestion appropriée du dynamisme. Enfin, les services sont essentiellement décrits suivant une logique syntaxique. On ne peut donc pas garantir, dans un cas général, la compatibilité de plusieurs services ou, plus simplement, la correction de leur comportement global. Cela est d'autant plus difficile lorsque des services ont des interactions complexes, non limitées à un unique appel pour obtenir une information. Nous apportons, dans cette thèse, une dimension " domaine " à la composition de service. La définition d'un domaine permet de restreindre les compositions possibles, aussi bien au niveau technologique qu'au niveau sémantique. C'est ainsi que nous avons trouvé une grande complémentarité entre les approches à service et les approches à base de lignes de produits. Les technologies à service apportent de façon naturelle le dynamisme, c'est-à-dire la capacité à créer des liaisons entre services de façon retardée à l'exécution. Les lignes de produits, quant à elles, définissent un cadre de réutilisation anticipée et planifiée. De façon plus précise, cette thèse défend une démarche outillée de composition de services structurée en trois phases, à savoir : la définition d'un domaine sous forme de services et d'architectures de référence à services, la définition d'applications sous forme d'architectures à service, et l'exécution autonomique des applications en fonction de l'architecture applicative du contexte. Cette thèse est validée au sein d'un projet collaboratif dans le domaine de la santé dans l'habitat.
110

Modèles et environnement pour configurer et déployer des systèmes logiciels

Lestideau, Vincent 19 December 2003 (has links) (PDF)
Le cycle de vie du logiciel regroupe plusieurs activités comme l'analyse, la conception, la production, le test et le déploiement. Cette dernière activité est un procédé complexe composé de sous activités comme la configuration, l'installation ou la mise à jour. La complexité et l'importance du déploiement a augmenté récemment avec l'évolution des réseaux et la construction d'applications à base de composants. Il est maintenant envisageable d'imaginer des solutions permettant le déploiement automatisé de logiciels en assurant que chaque utilisateur recevra la version du logiciel la plus cohérente et la mieux adaptée à ses besoins et à son environnement tout en respectant les stratégies de déploiement de l'entreprise. Il existe de nombreuses approches et outils de déploiement, mais très peu permettent de couvrir entièrement le cycle de vie du déploiement ou alors en imposant des contraintes fortes. <br /><br />Cette thèse propose un environnement de déploiement nommé ORYA, c'est à dire une plate-forme offrant un support automatisé aux activités du cycle de vie du déploiement. ORYA est basé sur la réutilisation et l'intégration des outils de déploiement existants. Pour cela, nous proposons une abstraction des différents acteurs et entités du déploiement, ainsi qu'une infrastructure permettant de faire interopérer des outils hétérogènes et ne se connaissant pas. Ce travail traite plus particulièrement de l'activité de sélection avec l'utilisation d'un modèle de composant générique et la mise en place d'un framework basé sur un système d'annotations et de règles. La deuxième activité étudiée en détail est celle de l'installation qui est basée sur un langage de procédés permettant la description et la réalisation des procédés dans le monde réel.<br /><br />Une implémentation d'ORYA a été réalisée afin de valider notre approche dans le cadre d'une expérimentation industrielle en vraie grandeur..

Page generated in 0.0441 seconds