• Refine Query
  • Source
  • Publication year
  • to
  • Language
  • 124
  • 79
  • 18
  • Tagged with
  • 223
  • 120
  • 90
  • 74
  • 73
  • 71
  • 46
  • 36
  • 31
  • 31
  • 30
  • 26
  • 23
  • 23
  • 22
  • 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.
1

Canevas de développement agile pour l’évolution fiable de systèmes logiciels à composants et orientés services / Agile development framework for the safe evolution of component-based and service-oriented systems

Waignier, Guillaume 26 January 2010 (has links)
Les logiciels se caractérisent par un besoin d'évolutions perpétuelles et rapides. Pour faciliter l'évolution rapide de systèmes, des approches de génie logiciel ont été proposées, telles que les architectures logicielles et la méthode de conception agile. Néanmoins, les solutions actuelles offrent peu de support pour permettre l'évolution fiable d'un système, c'est-à-dire permettre sa modification tout en garantissant le respect de ses exigences de qualités de service (QdS) et de bon fonctionnement global. La contribution de cette thèse est CALICO, un canevas de développement agile et multi plates-formes pour la conception et l'évolution fiable de systèmes logiciels à composants/services. Le développement agile repose sur un cycle itératif et incrémental qui permet à l'architecte d'itérer entre les étapes de conception de l'architecture et de débogage du logiciel dans son environnement d'exécution. Ainsi, lors de la conception, l'architecte dispose de métamodèles pour spécifier la structure de l'architecture et ses diverses exigences de QdS. Lors du déploiement, CALICO utilise les modèles spécifiés pour instancier le système sur la plate-forme d'exécution et les garde synchronisés avec le logiciel lors de son exécution. L'architecte dispose toujours d'une vue conceptuelle qui lui permet de raisonner sur les propriétés de son logiciel lors d'une évolution. Pour fiabiliser ces évolutions, CALICO offre un cadre fédérateur qui autorise la réutilisation de nombreux outils d'analyse statique et de débogage dynamique qui étaient jusqu'alors dispersés dans différentes plates-formes. CALICO permet donc de fiabiliser les évolutions même si les plates-formes ne le proposent pas. / Software is characterized by a need for constant and rapid evolution. To facilitate the rapid evolution of systems, software engineering approaches have been proposed, such as software architecture and agile method. However, current solutions offer poor support to enable the development of a reliable system, i.e., allow its modification while ensuring compliance with the quality of service requirements (QoS) and its good overall safety. The contribution of this thesis is CALICO, an agile and multi platforms development framework for the design and evolution of reliable component-based and service-oriented software. The agile development relies on an iterative and incremental cycle that allows the architect to iterate between the design of architecture and the debug of software in its execution context. Thus, at design, the architect can use the CALICO's metamodels to specify the structure of the architecture and the various QoS properties. At deployment, CALICO instantiates the system on the runtime platform from the specified models and keeps them synchronized with the software during its execution. By this way, the architect has a conceptual view which allows him to reason on the software properties during its evolution. In order to check these evolutions, CALICO provides a unifying framework which allows reuse of many static analysis tools and dynamic debugging tools that were previously scattered in different platforms. Globally, CALICO enables reliable evolutions even if the platforms do not provide this support.
2

Visualizing, assessing and re-modularizing object-oriented architectural elements / Visualisation, évaluation et re-modularisation des éléments architecturaux oriéntés objet

Abdeen, Hani 24 November 2009 (has links)
Pour faire face à la complexité des grands systèmes logiciels orientés objets, les programmeurs organisent les classes en sous-systèmes en utilisant les concepts de module ou de package. Une telle structure modulaire permet aux systèmes logiciels d’évoluer face aux nouvelles exigences. L’organisation des classes dans des packages et / ou sous-systèmes, que nous appelons la modularisation du logiciel, suit habituellement les relations entre les classes. Il est d'usage de vouloir les packages faiblement couplés et assez cohésifs. Cependant, les études montrent que quand les systèmes logiciels s’adaptent aux exigences et aux modifications de l’environnement, leurs modularisations dérivent et perdent progressivement leur qualité. En conséquence, la modularisation des systèmes logiciels doit être maintenue. Il est donc important de comprendre, d’évaluer et d’optimiser l’organisation des packages et de leurs relations. Le point défendu dans la thèse est que le maintien des modularisations logiciels de grande taille et complexes requiert des approches qui contribuent à: (1) la compréhension des packages et de leurs relations; (2) l’évaluation de la qualité d’une modularisation, ainsi que la qualité d’un package dans le contexte d’une modularisation donnée; (3) l’optimisation de la qualité d’une modularisation existante. Dans cette thèse, nous nous concentrons sur trois domaines de recherche: visualisations de programmes, métriques et algorithmes. Dans un premier temps, nous définissons deux visualisations qui aident les mainteneurs à: (1) la compréhension de la structure des packages, et de leurs utilisations et leurs relations; (2) l’identification des modèles; et (3) l’identification des anomalies structurelles. En plus de visualisations, nous définissons un ensemble de métriques qui aident à évaluer la qualité d’un package (i.e., la cohésion et le couplage). Nous définissons également des métriques qui permettent d’évaluer la qualité d’une collection des packages inter-dépendants. Ceci en prenant en compte le degré de couplage et de cycles entre les packages. Enfin, nous définissons un algorithme de recherche qui réduit automatiquement le couplage et les cycles entre les packages, en déplaçant seulement les classes sur les packages existants. Notre approche d’optimisation prend explicitement en compte l’organisation des classes et la structure originale des packages. Il permet également aux mainteneurs de contrôler le processus d’optimisation en spécifiant: (1) le nombre maximal des classes qui peuvent changer leurs packages; (2) les classes qui sont candidates pour se déplacer et celles qui ne doivent pas changer leurs packages; (3) les packages qui sont candidates pour la restructuration et ceux qui ne doivent pas se changer; et (4) le nombre maximal des classes qu’un package donné peut contenir. Les approches présentées dans cette thèse ont été appliquées à des systèmes logiciels orienté objets, réels et de grand taille. Les résultats obtenus démontrent l’utilité de nos visualisations et métriques, et l’efficacité de notre algorithme d’optimisation. / To cope with the complexity of large object-oriented software systems, developers organize classes into subsystems using the concepts of module or package. Such modular structure helps software systems to evolve when facing new requirements.The organization of classes into packages and/or subsystems represents the software modularization. the software modularization usually follows interrelationships between classes. Ideally, packages should to be loosely coupled and cohesive to a certain extent. However, Studies show that as software evolves to meet requirements and environment changes, the software modularization gradually drifts and looses quality. As a consequence, the software modularization must be maintained. It is thus important to understand, to assess and to optimize the organization of packages and their relationships. Our claim is that the maintenance of large and complex software modularizations needs approaches that help in: (1) understanding package shapes and relationships; (2) assessing the quality of a modularization, as well as the quality of a single package within a given modularization; (3) optimizing the quality of an existing modularization. In this thesis, we concentrate on three research fields: software visualizations, metrics and algorithms. At first, we define two visualizations that help maintainers: (1) to understand packages structure, usage and relationships; (2) to spot patterns; and (3) to identify misplaced classes and structural anomalies. In addition to visualizations, we define a suite of metrics that help in assessing the package design quality (i.e., package cohesion and coupling). We also define metrics that assess the quality of a collection of inter-dependent packages from different view points, such as the degree of package coupling and cycles. Finally, we define a search-based algorithm that automatically reduces package coupling and cycles only by moving classes over existing packages. Our optimization approach takes explicitly into account the original class organization and package structure. It also allows maintainers to control the optimization process by specifying: (1) the maximal number of classes that may change their packages; (2) the classes that are candidate for moving and the classes that should not; (3) the packages that are candidate for restructuring and the packages that should not; and (4) the maximal number of classes that a given package can entail.The approaches presented in this thesis have been applied to real large object-oriented software systems. The results we obtained demonstrate the usefulness of our visualizations and metrics; and the effectiveness of our optimization algorithm.
3

Conversion N/A radiofréquence 1bit multivoies à filtrage programmable intégré en technologies CMOS 65nm et IPD / 65 nm CMOS and IPD single-bit multi-path RF DAC with embedded programmable FIR filter

Flament, Axel 10 June 2008 (has links)
Une nouvelle approche de la conversion numérique analogique des signaux RF est proposée au sein d'une chaîne d'émission basée sur le principe de la modulation delta-sigma qui fournit un signal sur 1 bit à haute cadence dans le cadre de la recherche sur la radio logicielle. Le standard choisi pour démontrer ce concept est l'UMTS. La conversion numérique analogique du signal radiofréquence a été réalisée en mode tension pour des raisons d'efficacité par l'intermédiaire d'un amplificateur de puissance commuté. Afin de générer suffisamment de puissance avec les technologies submicroniques fonctionnant à faibles tensions d'alimentation, un combineur de puissance différentiel cinq voies avec des lignes de transmission à éléments localisés a été réalisé dans des technologies CMOS 65nm et IPD (Integrated Passive Devices), toutes deux développées par ST Microelectronics. Cette architecture offre en plus la possibilité de réaliser un filtre semi numérique reconfigurable qui permet de créer des zéros de transmission dans les bandes voisines du standard considéré. Les mesures réalisées sur un système comprenant le générateur numérique delta-sigma ainsi que le combineur de puissance à lignes de transmission et le filtrage numérique reconfigurable permettent de valider les différents principes développés dans cette thèse. Le combineur de puissance permet d'obtenir une puissance de 18dBm pour un signal sinusoïdal dans la bande fondamentale grâce à un gain en puissance relatif pour cinq voies de 14dB à 1.2GHz. / Ln this work a novel approach to D/A conversion of RF signais is developed in the context of a transmission chain based on delta-sigma modulation, providing a very high speed 1 bit digital signal, suitable for software-defined radio (SDR). The standard chosen to demonstrate this con cep is UMTS. Digital to analogue conversion is realized here in a voltage-mode for efficiency reasons thanks to a switching Power Amplifier. ln order to provide enough power with low voltage deep-submicron technologies, a five channels differential power combiner using lumped element transmission lines has been realised in 65nm CMOS and Integrated Passive Devices (IPD) processes, both developed by ST Microelectronics. A reconfigurable semi-digital filter can be realized in the latter architecture ln order to create notches in the nearby frequency bands. Measurements are made on a full system, comprising a digital delta-sigma signal generator, a 5-path power combiner and a reconfigurable digital filtering. The 5-path power combiner allows a maximal output power for a single tone in fundamental band of 18dBm thanks to a 14dB relative power gain at 1.2GHz.
4

Usine logicielle pour la conception d'environnements pervasifs : application au e-Retail / Software factory for the design of pervasive environments : application to e-Retail

Barbry, Benjamin 20 December 2012 (has links)
Dans cette thèse, nous explorons les concepts de l'intelligence ambiante et les mécanismes facilitant leurs usages pour la conception d'environnements de vente intelligents. Une partie du travail fût réalisée dans le cadre du projet ANR p-LearNet.Notre objectif est de démontrer la faisabilité d'une solution permettant la génération d'espaces de ventes intelligents.Nous avons alors réalisé une usine logicielle. Cette usine a pour objectif, à partir de modèles, de générer tout ou partie de code permettant l'exécution de l'espace de vente. Ce code peut être exécuté sur une plate-forme de communication intégrée à l'usine.Nous avons dans un premier temps défini une infrastructure de communication permettant de gérer un ensemble de dispositifs hétérogènes. Cette plate-forme est un ESB léger dédié aux espaces de ventes intelligents. Cette plate-forme a été testée au cours du projet p-LearNet. Dans un second temps, nous avons créé des modèles qui représentent notre domaine d'application, les espaces de vente intelligents. Ces modèles permettent de définir les principaux éléments qui vont constituer un espace intelligent : les acteurs, les meubles, les services proposés. A partir de ces modèles, nous avons implémenté un éditeur graphique. Cet éditeur est à destination d'un utilisateur non-informaticien pour qu'il puisse graphiquement construire un espace de vente intelligent. Cet outil génère ensuite du code qui peut être exécuté sur la plate-forme décrite précédemment. / In this thesis, we explore the concepts of ambient intelligence and mechanisms to facilitate their use for designing intelligent selling environments. Part of the work was carried out within the ANR p-LearNet project.Our goal is to demonstrate the feasibility of a solution to the generation of intelligent selling spaces.Then We performed a software factory. This software factory aims to generate all or part of code to run the selling space from models. This code can be run on a communication platform integrated within the factory.We initially defined a communication infrastructure to manage a set of heterogeneous devices. This platform, based on OSGi and UPnP, is considered as a lightweight ESB dedicated to intelligent selling spaces. This platform has been tested during p-LearNet project and deployed within supermarkets. In a second step, we have created models that represent our scope, intelligent selling apces. These models define the key elements that will form a smart space: actors, furniture, services offered,…From these models, we have implemented a graphical editor. This editor is intended for a user, which knowledge in computer Sciences is poor, to graphically build a intelligent selling space. Then the tool generates code that can be executed on the platform described above. The use of this tool has been demonstrated through the implementation of a improved display casewindow. This showcase, presented at the salon VAD Lille, is running on the communication platform defined in the software factory.
5

Pour une collaboration efficace dans les outils de modélisation logicielle / For an efficient collaboration in software modeling tools

Dirix, Michel 04 July 2016 (has links)
Depuis une vingtaine d’années, les logiciels ont atteint un stade très élevé de complexité. L’utilité de la modélisation logicielle s’est avérée de plus en plus importante, car elle s’abstrait de certaines préoccupations en ne fournissant que les informations relatives au point de vue souhaité, comme l’architecture ou les besoins utilisateurs. Toutefois l’activité de modélisation est une activité collaborative impliquant des développeurs, des architectes ou encore des clients. Avec la mondialisation, les équipes deviennent réparties à travers le monde impliquant des différences de culture, langage, fuseaux horaires. Si les environnements de modélisation ont par le passé été souvent mono-utilisateurs, supporter logiciellement la collaboration est devenue depuis peu un réel sujet d’étude. C’est dans ce contexte que s’inscrit ma thèse. Elle a tout d’abord pour but de définir un système de communication constituant la base de toutes collaborations entre utilisateurs d’outils de modélisation. La thèse vise ensuite à rendre efficace cette collaboration en plaçant la conscience de celle-ci au sein des précédents outils à l’aide de fonctionnalités collaboratives identifiées ou conçues dans mes travaux. Ces derniers ont été appliqués à l’outil GenMyModel, un outil de modélisation en ligne enregistrant plus de 200 000 utilisateurs, pour valider les différentes études et conceptions réalisées. / For twenty years, the softwares have reached a very high stage of complexity. The usefulness of the software modeling became increasingly important as models provide an abstraction of the software, and allows the software designer to describe information about important viewpoints such as the architecture or the user needs. With the globalization, teams are distributed over the world, implying culture, language and timezones differences. The modeling activity is collaborative since it implies many stackholders such as developers, architects or clients. The modeling environments were historically single-user but the trend is to provide collaborative tools to address the aforementioned problems. The topic of my thesis is to provide an efficient collaboration. The first part deals with the definition of a communication system building the basis of all collaborations between the users in modeling tools. Then, I proposed a new and efficient collaboration by placing awareness at the center of modeling tools. This work has been implemented in the GenMyModel tool. GenMyModel is an online modeling tool registering more than 200.000 users which gave a perfect platform for the validation of the various studies and designs proposed in this thesis.
6

Améliorer la compréhension d’un programme à l’aide de diagrammes dynamiques et interactifs / Enhance software comprehension with dynamic and interactive diagrams

Duruisseau, Mickaël 16 July 2019 (has links)
Les développeurs occupent une place prépondérante dans le développement logiciel. Dans ce cadre, ils doivent réaliser une succession de tâches élémentaires (analyse, codage, liaison avec le code existant...), mais pour effectuer ces tâches, un développeur doit régulièrement changer de contexte de travail (recherche d’information, lecture de code…) et analyser du code qui n’est pas le sien. Ces actions nécessitent un temps d’adaptation élevé et réduisent l’efficacité du développeur. La modélisation logicielle est une solution à ce type de problème. Elle propose une vue abstraite d’un logiciel, des liens entre ses entités ainsi que des algorithmes utilisés. Cependant, l’Ingénierie Dirigée par les Modèles (IDM) est encore trop peu utilisée en entreprise. Dans cette thèse, nous proposons un outil pour améliorer la compréhension d’un programme à l’aide de diagrammes dynamiques et interactifs. Cet outil se nomme VisUML et est centré sur l’activité principale de codage du développeur. VisUML fournit des vues (sur des pages web ou sur des outils de modélisation) synchronisées avec le code. Les diagrammes UML générés sont interactifs et permettent une navigation rapide avec et dans le code. Cette navigation réduit les pertes de temps et de contextes dues aux changements d’activités en fournissant à tout moment une vue abstraite sous forme de diagramme des éléments actuellement ouverts dans l’outil de codage du développeur. Au final, VisUML a été évalué par vingt développeurs dans le cadre d’une expérimentation qualitative de l’outil afin d’estimer l’utilité d’un tel outil. / Developers dominate in software development. In this context, they must perform a succession of elementary tasks (analysis, coding, linking with existing code ...), but in order to perform these tasks, a developer must regularly change his context of work (search information, read code ...) and analyze code that is not his. These actions require a high adaptation time and reduce the efficiency of the developer. Software modeling is a solution to this type of problem. It offers an abstract view of a software, links between its entities as well as algorithms used. However, Model-Driven Engineering (MDE) is still underutilized in business. In this thesis, we propose a tool to improve the understanding of a program using dynamic and interactive diagrams. This tool is called VisUML and focuses on the main coding activity of the developer. VisUML provides views (on web pages or modeling tools) synchronized with the code.The generated UML diagrams are interactive and allow fast navigation with and in the code. This navigation reduces the loss of time and context due to activity changes by providing at any time an abstract diagram view of the elements currently open in the developer’s coding tool. In the end, VisUML was evaluated by twenty developers as part of a qualitative experimentation of the tool to estimate the usefulness of such a tool.
7

Contribution à une démarche de vérification formelle d'architectures logicielles

Graiet, Mohamed Giraudin, Jean-Pierre. January 2007 (has links)
Reproduction de : Thèse de doctorat : informatique : Grenoble 1 : 2007. / Titre provenant de l'écran-titre. Bibliogr. p. 159-167.
8

Visualisation des métriques de cohésion et de couplage

Bensmaia, Réda January 2015 (has links)
De nos jours, les logiciels sont de plus en plus complexes. La complexité des logiciels augmente avec leur taille et de ce fait, parfois la bonne structure originale est perdue. En conséquence, la vérification continue de la qualité du développement de ces logiciels est devenue indispensable. Elle nécessite un contrôle continu de la qualité du code tout au long du processus de développement. Plusieurs métriques ont été proposées afin de quantifier cette qualité, dans beaucoup de cas, ces métriques interviennent une fois le logiciel fini, or le contrôle de qualité serait plus efficace s'il intervenait tout au long de la phase de codage. Les métriques logicielles renseignent sur la qualité du code. Elles sont généralement présentées sous forme de tableau de données et sont donc difficilement exploitables. L'objectif général en développement de logiciels est de maintenir un produit de bonne qualité, qui soit extensible, d'une maintenance facile et réutilisable. Un grand problème en logiciel est constitué par les dépendances entre classes et paquets: c'est le couplage. On parlera d'architecture à couplage faible, lorsqu'elle est flexible, les changements sont simples et leurs coûts ne sont pas très élevés. Par contre, l'architecture devient rigide lorsque le ``couplage fort'' rend l'ajout de nouvelles fonctionnalités et la maintenance d'un logiciel très difficile. Les coûts de cette maintenance deviennent donc très élevés. Un autre problème connu est le manque de cohésion d'une classe, une classe est dite de bonne cohésion, si tous ses attributs sont utilisés par toutes ses méthodes. Dans le cas contraire, les méthodes et attributs ne communiquent pas suffisamment pour se retrouver dans une seule classe, et devrait être subdivisés en plusieurs classes. L'objectif de notre projet est de visualiser des indicateurs capables de distinguer une architecture flexible d'une architecture rigide. Pour mener à bien notre projet, une étude des différentes métriques déjà proposées est nécessaire, en considérant les métriques ayant un impact sur l'architecture, telle que les métriques de couplage entre classes et paquets. Pour ensuite proposer une visualisation, afin de faciliter l'interprétation des résultats obtenus par les métriques facilitant ainsi le travail du développeur. Au final, cette visualisation devrait permettre d'identifier les problèmes d'architecture. Ces zones critiques seront donc affichées à l'écran. Ainsi cette visualisation permettra de mieux guider le développeur dans sa maintenance.
9

Vers une approche automatique pour l'extraction des règles d'affaires d'une application

Chénard, Gino January 2007 (has links) (PDF)
Les compagnies font face à d'énormes coûts pour maintenir leurs applications informatiques. Au fil des ans, le code de ces applications a accumulé des connaissances corporatives importantes (règles d'affaires et décisions de conception). Mais, après plusieurs années d'opération et d'évolution de ce code, ces connaissances deviennent difficiles à récupérer. Les développeurs doivent donc consacrer beaucoup de leur temps à l'analyser: une activité connue sous le nom de « compréhension du logiciel ». Comme il a été estimé que cette activité accapare entre 50 % et 90 % du travail d'un développeur, simplifier le processus de compréhension du logiciel peut avoir un impact significatif dans la réduction des coûts de développement et de maintenance. L'une des solutions au problème de compréhension du logiciel est la rétro-ingénierie. Celle-ci est le processus d'analyse du code source d'une application pour (1) identifier les composantes de l'application et les relations entre ces composantes et (2) créer une représentation de haut niveau de l'application. Plusieurs approches ont été proposées pour la rétro-ingénierie ; cependant, la représentation abstraite du code source extraite par la plupart de ces approches combine la logique d'affaires de l'application et son architecture (ou son infrastructure). Dans ce mémoire, nous présentons une nouvelle approche qui permet d'analyser le code source d'une application orientée objet afin d'en extraire un modèle abstrait ne décrivant que les règles d'affaires de cette application. Ce modèle prend la forme d'un diagramme de classes UML, présentant les classes d'affaires de cette application ainsi que les relations entre ces classes. Cette approche a été validée sur plusieurs systèmes (écrits en Java) de différentes tailles. L'approche donne de bons résultats pour les systèmes possédant une bonne architecture et un bon style de programmation. Dans le cas contraire, les résultats sont moins convaincants.
10

Élaboration du modèle conceptuel flexible et extensible d'une architecture logicielle orientée-objet permettant la parallélisation et la distribution d'une architecture de simulation séquentielle /

Shields, Jean-Philippe. January 2007 (has links) (PDF)
Thèse (M.Sc.)--Université Laval, 2007. / Bibliogr.: f. [125]-128. Publié aussi en version électronique dans la Collection Mémoires et thèses électroniques.

Page generated in 0.0635 seconds