• Refine Query
  • Source
  • Publication year
  • to
  • Language
  • 125
  • 80
  • 18
  • Tagged with
  • 225
  • 121
  • 92
  • 74
  • 74
  • 72
  • 46
  • 38
  • 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.
21

Architecture logicielle : une expérimentation industrielle avec Dassault Systèmes

Sanlaville, Rémy 03 May 2002 (has links) (PDF)
L'architecture logicielle est un domaine récent du génie logiciel qui a reçu une attention particulière ces dix dernières années. Les éditeurs de logiciels ont pris conscience qu'une architecture est un facteur critique dans la réussite du développement et facilite la maintenance et l'évolution du logiciel. Elle contribue à la maîtrise des grands logiciels. L'architecture logicielle permet d'améliorer ces aspects grâce à l'étude des structures de haut niveau du logiciel. De nombreuses avancées ont été proposées au niveau de la formalisation par des Langages de Description d'Architecture (ADLs: Architecture Description Languages), du raisonnement et de l'analyse au niveau architectural. Bien que la communauté scientifique ait réalisé des progrès significatifs, les résultats restent essentiellement académiques. Les retombées de ces recherches ont du mal à pénétrer le milieu industriel. Ce rapport de thèse relate notre expérience avec Dassault Systèmes : répondre aux besoins de Dassault Systèmes pour le développement de ses logiciels en utilisant une approche basée sur l'architecture logicielle. Dassault Systèmes est le leader mondial de la Conception Assistée par Ordinateur (CAO) avec son logiciel phare CATIA V5 (~5 MLoc). Pour atteindre cet objectif, nous avons parcouru les principales approches pour la description d'une architecture logicielle et tenté de les appliquer dans notre contexte industriel. Nous expliquerons les difficultés que nous avons rencontrées pour les utiliser et montrerons pourquoi ces approches ne sont pas adaptées pour la maintenance et l'évolution d'un logiciel tel que CATIA V5. Nous décrirons notre démarche basée sur l'analyse des besoins architecturaux des différents acteurs de Dassault Systèmes qui a permis de fournir des solutions concrètes et exploitables. Enfin, nous expliciterons ces besoins architecturaux et présenterons les divers prototypes que nous avons développés pour y répondre.
22

Supporting Reuse by Reverse Engineering Software Architecture and Component from Object-Oriented Product Variants and APIs / Support à la réutilisation par la rétro-ingénierie des architectures et des composants logiciels à partir du code source orienté objet des variantes de produits logiciels et d'APIs

Shatnawi, Anas 29 June 2015 (has links)
La réutilisation est reconnue comme une démarche intéressante pour améliorer la qualité des produits et la productivité des projets logiciels. L'ingénierie des logiciels à base de composants (CBSE en anglais) et l'ingénierie des lignes de produits logiciels (SPLE en anglais) sont considérées parmi les plus importants paradigmes de réutilisation systématique. L'ingénierie à base de composants permet de développer de nouveaux systèmes logiciels par composition de briques préconstruites appelées composants. L'ingénierie des lignes de produits logiciels permet de dériver (construire) de nouveaux produits par simple sélection de leurs caractéristiques (feature en anglais). Cette dérivation est rendue possible grâce à la représentation et à la gestion de la variabilité et de la similarité des produits d'une même famille. Cependant, une des difficultés vers une large adoption de l'ingénierie des logiciels à base de composants et des lignes de produits est le coût à investir pour construire, à partir de rien, les composants et les artefacts de lignes de produits. Dans ce contexte, les travaux de cette thèse proposent de réduire ce coût par une démarche basée sur la rétro-ingénierie.La première contribution de cette thèse consiste à proposer une approche permettant d'identifier, par l'analyse d'un ensemble de variantes d'un produit logiciel orienté objet, les éléments du code source pouvant servir à l'implémentation de composants. Au contraire des approches existantes d'identification de composants basées sur l'analyse d'un seul produit, l'originalité de notre approche consiste en l'analyse de plusieurs variantes de produits en même temps. Notre objectif est l'amélioration de la réutilisabilité des composants extraits. L'évaluation expérimentale menée dans le cadre de cette thèse a montré la pertinence de cette démarche.La deuxième contribution consiste en la proposition d'une approche pour l'extraction d'une architecture à base de composants d'un ensemble de variantes d'un produit logiciel orienté objet. Il s'agit d'identifier la variabilité des composants architecturaux et la configuration architecturale. L'identification de la configuration architecturale est principalement basée sur l'utilisation de l'analyse formelle de concepts pour trouver les dépendances entre les éléments architecturaux. L'expérimentation conduite pour l'évaluation de l'approche proposée confirme la pertinence des éléments identifiés.La troisième contribution de cette thèse permet de restructurer les APIs orientées objet en composants. Nous exploitons la spécificité des classes des APIs d'être conçues pour être utilisées par des applications clientes pour identifier ces composants. Le code source de ces APIs et celui de leurs applications clientes sont analysés afin d'identifier des groupes de classes qui peuvent servir à l'implémentation de composants à extraire. L'identification de ces groupes de classes est basée sur l'analyse des liens structurels entre ces classes et sur la probabilité que ces classes soient utilisées ensemble par les applications clientes. Nous montrons à travers les résultats expérimentaux que la restructuration des API orientées objet en composants facilite la réutilisation et la compréhension des éléments de ces APIs. / It is widely recognized that software quality and productivity can be significantly improved by applying a systematic reuse approach. In this context, Component-Based Software Engineering (CBSE) and Software Product Line Engineering (SPLE) are considered as two important systematic reuse paradigms. CBSE aims at composing software systems based on pre-built software components and SPLE aims at building new products by managing commonalty and variability of a family of similar software. However, building components and SPL artifacts from scratch is a costly task. In this context, our dissertation proposes three contributions to reduce this cost.Firstly, we propose an approach that aims at mining reusable components from a set of similar object-oriented software product variants. The idea is to analyze the commonality and the variability of product variants, in order to identify pieces of code that may form reusable components. Our motivation behind the analysis of several existing product variants is that components mined from these variants are more reusable for the development of new software products than those mined from single ones. The experimental evaluation shows that the reusability of the components mined using our approach is better than those mined from single software.Secondly, we propose an approach that automatically recovers the component-based architecture of a set of object-oriented software product variants. Our contribution is twofold: the identification of the architectural component variability and the identification of the configuration variability. The configuration variability is based on the identification of dependencies between the architectural elements using formal concept analysis. The experimental evaluation shows that our approach is able to identify the architectural variability.Finally, we propose an approach that aims at restructuring object-oriented APIs as component-based ones. This approach exploits specificity of API entities by statically analyzing the source code of both APIs and their software clients to identify groups of API classes that are able to form components. Our assumption is based on the probability of classes to be reused together by API clients on the one hand, and on the structural dependencies between classes on the other hand. The experimental evaluation shows that structuring object-oriented APIs as component-based ones improves the reusability and the understandability of these APIs.
23

Qualité de la conception de tests logiciels : plate-forme de conception et processus de test / Quality of the design of test cases for automotive software : design platform and testing process

Awedikian, Roy 06 February 2009 (has links)
L’électronique dans les voitures devient de plus en plus complexe et représente plus de 30% du coût global d’une voiture. Par exemple, dans une BMW série 5 modèle 2008, on peut trouver jusqu’à 80 calculateurs électroniques communiquant ensemble et représentant aux alentours de 10 millions de lignes de code logiciel. Face à cette montée en complexité, les constructeurs et équipementiers électroniques de l’automobile s’intéressent de plus en plus à des méthodes efficaces de développement, vérification et validation de modules électroniques. Plus précisément, ils focalisent leurs efforts sur la partie logicielle de ces modules puisqu’elle est à l’origine de plus de 80% des problèmes détectés sur ces produits. Dans ce contexte, nous avons mené un travail de recherche dont l’objectif est de proposer une approche globale d’amélioration de la qualité des logiciels embarqués dans les véhicules. Notre recherche part d’un audit des processus et outils actuellement utilisés dans l’industrie électronique automobile. Cet audit a permis d’identifier des leviers potentiels d’amélioration de la qualité logicielle. En se basant sur les résultats de l’audit et en tenant compte de la littérature dans le domaine de la qualité logicielle, nous avons proposé une approche globale de conception de cas de test pour les produits logiciels. En effet, nous avons développé une plateforme de génération automatique de tests pour un produit logiciel. Cette plateforme consiste à modéliser les spécifications du produit logiciel pour le simuler lors de tests, à se focaliser sur les tests critiques (ayant une forte probabilité de détecter des défauts) et à piloter la génération automatique des tests par des critères de qualité ; telles que la couverture du code et de la spécification mais aussi le coût des tests. La génération de tests critiques est rendue possible par la définition de profils d’utilisation réelle par produit logiciel, ainsi que par la réutilisation des défauts et des tests capitalisés sur des anciens projets. En plus des aspects algorithmiques du test logiciel, notre approche prend en compte des aspects organisationnels tels que la gestion des connaissances et des compétences et la gestion de projet logiciel. Notre approche a été mise en œuvre sur deux cas d’étude réels d’un équipementier électronique automobile, disposant de données de tests historiques. Les résultats de nos expérimentations révèlent des gains de qualité significatifs : plus de défauts sont trouvés plus tôt et en moins de temps. / Nowadays, car electronics become more and more complex and represents more than 30% of the total cost of a car. For instance, in a 2008 BMW 5 series model, one can find up to 80 electronic modules communicating together and representing 10 million lines of software code. Facing this growing complexity, carmakers and automotive electronic suppliers are looking for efficient methods to develop, verify and validate electronic modules. In fact, they focus on the software part of these modules since it accounts for more than 80% of the total number of problems detected on these modules. In this context, we achieved our research project with the aim of proposing a global approach able to improve the quality of automotive embedded software. We started with an audit of the software practices currently used in automotive industry and we pinpointed potential levers to improve the global software quality. Based on the results of the audit and the literature review related to software quality, we developed a global approach to improve the design of test cases for software products. In fact, we developed a test generation platform to automatically generate test cases for a software product. It is mainly based on modeling the software functional requirements in order to be simulated when testing the software, focusing on critical tests to be done (because of their higher probability to detect a bug) and monitoring the automatic generation of tests by quality indicators such as the structural and functional coverage but also the tests cost. The generation of critical tests is based on the definition of real use profiles by software product and on the reuse of bugs and test cases capitalized on previous projects. Besides the computational aspects of software testing, our approach takes into account organizational matters such as knowledge management, competency management and project management. Our approach have been implemented in a computer platform and experimented on two typical case studies of an automotive electronic supplier, with historical test data. The results of our experiments reveal significant improvement in software quality: more bugs are detected earlier and in less time.
24

Gestion dynamique des architectures pour les systèmes communicants collaboratifs. / Dynamic software architecture management for collaborative communicating systems

Bouassida, Ismael 19 February 2011 (has links)
Nous proposons de concevoir et de mettre en oeuvre un environnement logiciel pour une "gestion guidée par les modèles" des changements dans les architectures des applications distribuées coopératives. Les aspects adaptabilité des applications, les aspects transformations de graphe et les aspects particuliers des applications distribuées coopératives sont étudiés. Une approche d'adaptation s'appuyant sur une modélisation par les graphes et un style architectural de type Poducteur/Consommateur est présentée pour des applications communicantes collaboratives sensibles au contexte. Une démarche de raffinement est proposée permettant de garantir un certain degré d'adaptabilité en faisant un compromis entre les différents paramètres du contexte. Ces travaux de recherche ont aussi permis de définir un cadre algorithmique générique de reconfiguration architecturale multi-niveaux pour la sélection des architectures de déploiement les plus adaptées à un contexte et aux situations associées. Ce cadre a été appliqué au cas de la communication et de la coopération de groupe. Elle a aussi permis de modéliser le style architectural Producteur/Consommateur pour une communication orientée événement. Des règles d'adaptation ont été définies. Elles comportent une partie basée sur SWRL pour la description du contexte et des règles d'adaptation, et une partie basée sur les grammaires de graphes pour la transformation des configurations de déploiement / In this work, we study dynamic reconfiguration of collaborative communicating applications. Providing generic and scalable solutions for automated self-reconfiguration in group collaboration support systems can be driven by rule-based reconfiguration policies. To achieve this goal, we elaborate a dynamic graph-based modeling approach and we develop structural models that can represent the different interaction dependencies from different configuration-related point of views: communication flows between the distributed machines, the networked deployment nodes, and the service composition. Our solution is based on graph grammars rewriting. We provide graph transformation to specify rules for changing deployment architecture while being in conformance to an architectural style. In order to handle the complex design of communicating collaborative system architectures and the related adaptation issues, we propose a multi-layer modelling approach. This approach assures generic solutions for automatic context aware adaptation. Our approach is based on the observation that semantic data analysis that can be exploited to manage priorities and more generally to manage communications. This allows us to represent, in a richer way, the semantics of the managed systems
25

Une approche autonome pour la gestion logicielle des espaces intelligents

Gouin-Vallerand, Charles January 2011 (has links)
Depuis une vingtaine d'années, les développements dans les technologies de l'information ont fait évoluer les paradigmes de l'informatique. L'arrivée d'approches telles que l'informatique diffuse et l'intelligence ambiante ont fait émerger de nouvelles technologies permettant d'améliorer la qualité des interactions avec les systèmes informatisés. Entre autres, l'application de l'informatique diffuse et de l'intelligence ambiante à des environnements tels que des habitats, les espaces intelligents, offre des milieux où une assistance contextualisée est offerte aux utilisateurs dans la réalisation de leurs activités quotidiennes. Toutefois, la démocratisation de l'informatique diffuse et la mise en place des espaces intelligents rencontrent un bon nombre de problèmes. Le nombre important de composantes matérielles et logicielles, les dépendances entre celles-ci et leurs natures hétérogènes contribuent à la complexité de déploiement et de gestion de ces milieux, entraînant des coûts élevés. Cette thèse vise à contribuer à la gestion logicielle des espaces intelligents par la réduction de la complexité des tâches de gestion. Notre proposition consiste en une approche autonome de la gestion logicielle, fondée sur l'approche de l'informatique diffuse autonome. L'objectif est de fournir un ensemble de fonctionnalités et de mécanismes permettant de rendre autonome la majeure partie des tâches de gestion des logiciels déployés dans des espaces intelligents. Dans le cadre de ce travail, nous proposons une solution permettant l'organisation autonome des logiciels des espaces intelligents. Ainsi, cette solution utilise les informations contextuelles des milieux afin de déterminer quelle répartition des logiciels parmi les appareils des milieux correspond le mieux aux besoins des applications, aux caractéristiques propres des environnements et, non le moindre, aux modalités et préférences d'interaction des utilisateurs de ces milieux. La solution proposée a été implémentée et évaluée à l'aide d'une série de tests et de mises en situation d'organisation logicielle. Les contributions de ce travail à l'état de l'art de la gestion des espaces intelligents sont multiples avec comme principales innovations la présentation d'une vision de l'informatique diffuse autonome, l'implémentation d'un intergiciel d'organisation logicielle autonome basé sur une sensibilité au contexte macroscopique et microscopique et l'intégration des modalités d'interaction des utilisateurs dans le raisonnement portant sur l'organisation des logiciels. Enfin, ce travail de thèse se déroule dans le contexte des recherches du laboratoire DO-MUS de l'Université de Sherbrooke, Canada, et du laboratoire Handicom de Telecom SudParis, France. Ces deux laboratoires travaillent à la conception de solutions permettant d' améliorer la qualité de vie et l' autonomie de personnes dépendantes, atteinte par exemple de troubles cognitifs ou de handicaps physiques.
26

Architecture générique pour la découverte de la signification d'un message

Morin, Simon-Pierre January 2008 (has links)
Ce mémoire présente la conception, la réalisation et les tests effectués pour une architecture générique permettant à une machine de reconnaitre le sens d'un message en utilisant le modèle de la cognition linguistique de l'humain et un environnement commun à celui des humains. À ce jour, les machines reconnaissent des mots clés et répondent en suivant un modèle préfabriqué, tous deux préprogrammés par des humains. Donc, chaque agent informatique muni d'une forme d'interaction avec le public se voit attribuer un certain nombre de questions potentielles avec les réponses associées, parfois préconstruite. C'est-à-dire que la machine possède une base de mots avec un ordre prédéfini de ceux-ci qu'elle peut utiliser, parfois une phrase déjà entièrement construite, que la machine utilise telle qu'elle. L'objectif principal de ce projet est de démontrer qu'il est possible pour la machine de s'approcher du modèle proposé par les linguistes, principalement un modèle proposé par Kleiber, adjoint à un modèle de cognition, celui du STI, et d'extraire le sens d'un message dans le but de l'interpréter Ainsi, il est possible d'établir une forme de dialogue entre un être humain et une machine. Cet objectif est atteint en proposant une nouvelle architecture générique pour le traitement du langage naturel. Contrairement à ce qui est fait habituellement dans ce genre de problématique, les réponses obtenues ne doivent pas être des réponses préconçues, mais bien des phrases générées par la machine à partir de la grammaire de la langue. Les résultats obtenus montrent qu'il est possible de donner un sens aux mots composant un message de manière à ce qu'une machine soit en mesure de l'interpréter dans un langage qui lui est propre. Cela est fait de manière à ce que cette même machine puisse répondre à son interlocuteur, voire éventuellement prendre une décision en rapport avec la conversation.
27

Infrastructure orientée service pour le développement d’applications ubiquitaires

Lancia, Julien 18 December 2008 (has links)
Un grand nombre de périphériques actuels sont dotés de connexions réseaux qui permettent d’accéder à leurs fonctionnalités au travers d’un réseau informatique. Les applications ubiquitaires visent à structurer ces fonctionnalités pour les mettre au service des utilisateurs. Les environnements ubiquitaires sont caractérisés par une disponibilité dynamique des fonctionnalités et une hétérogénéité matérielle et logicielle des périphériques. De plus, les applications ubiquitaires doivent s’adapter en fonction du contexte des utilisateurs. Cette thèse propose une approche pour la programmation d’applications ubiquitaires. Notre approche est basée sur une infrastructure logicielle, appelée PERSEWS, qui permet la programmation d’applications sensibles au contexte à un haut niveau d’abstraction, exploitant des fonctionnalités offertes par des périphériques hétérogènes et mobiles. Les contributions de cette thèse sont les suivantes : – Nous proposons une approche langage pour la programmation d’applications ubiquitaires. Cette approche est basée sur un couplage entre un modèle de contexte et un langage de règles logiques. – Nous avons développé une infrastructure logicielle qui constitue un environnement de développement et un environnement d’exécution pour les applications ubiquitaires. L’architecture orientée service de l’infrastructure PERSEWS permet d’intégrer des fonctionnalités offertes par des périphériques hétérogènes. / Increasingly current devices are network enabled allowing their functionalities to be accessed through a computer network. Ubiquitous applications aim at structuring these functionalities to make them available to the users. Ubiquitous environments are characterized by the dynamic nature of functionalities and heterogeneity of hardware and software devices. In addition, ubiquitous applications must adapt depending on the user’s context. This thesis proposes an approach to ubiquitous application programming. Our approach is based on a software infrastructure called PERSEWS, which enables programming context-sensitive applications at a high level of abstraction, using functionalities provided by heterogeneous and mobile devices . The contributions of this thesis are as follows : – We propose a language approach to programming ubiquitous applications. This approach is based on a coupling between a model of context and a logic rule language. – We have developed a software infrastructure that provides a development environment and a runtime environment for ubiquitous applications. The service oriented architecture of the PERSEWS infrastructure allows to integrate functionalities provided by heterogeneous devices. VII
28

Reproducible research, software quality, online interfaces and publishing for image processing / Recherche reproductible, qualité logicielle, publication et interfaces en ligne pour le traitement d'image

Limare, Nicolas 21 June 2012 (has links)
Cette thèse est basée sur une étude des problèmes de reproductibilité rencontrés dans la recherche en traitement d'image. Nous avons conçu, créé et développé un journal scientifique, Image Processing On Line (IPOL), dans lequel les articles sont publiés avec une implémentation complète des algorithmes décrits, validée par les rapporteurs. Un service web de démonstration des algorithmes est joint aux articles, permettant de les tester sur données libres et de consulter l'historique des expériences précédentes. Nous proposons également une politique de droits d'auteur et licences, adaptée aux manuscrits et aux logiciels issus de la recherche, et des règles visant à guider les rapporteurs dans leur évaluation du logiciel. Le projet scientifique que constitue IPOL nous apparaît très bénéfique à la recherche en traitement d'image. L'examen détaillé des implémentations et les tests intensifs via le service web de démonstration ont permis de publier des articles de meilleure qualité. La fréquentation d'IPOL montre que ce journal est utile au-delà de la communauté de ses auteurs, qui sont globalement satisfaits de leur expérience et apprécient les avantages en terme de compréhension des algorithmes, de qualité des logiciels produits, de diffusion des travaux et d'opportunités de collaboration. Disposant de définitions claires des objets et méthodes, et d'implémentations validées, il devient possible de construire des chaînes complexes et fiables de traitement des images. / This thesis is based on a study of reproducibility issues in image processing research. We designed, created and developed a scientific journal, Image Processing On Line (IPOL), in which articles are published with a complete implementation of the algorithms described, validated by the rapporteurs. A demonstration web service is attached, allowing testing of the algorithms with freely submitted data and an archive of previous experiments. We also propose copyrights and license policy, suitable for manuscripts and research software software, and guidelines for the evaluation of software. The IPOL scientific project seems very beneficial to research in image processing. With the detailed examination of the implementations and extensive testing via the demonstration web service, we publish articles of better quality. IPOL usage shows that this journal is useful beyond the community of its authors, who are generally satisfied with their experience and appreciate the benefits in terms of understanding of the algorithms, quality of the software produced, and exposure of their works and opportunities for collaboration. With clear definitions of objects and methods, and validated implementations, complex image processing chains become possible.
29

Adaptation logicielle pour et par les i DSML / Software Adaptation for and by the i DSML

Samson, Pierre 20 November 2015 (has links)
L’un des buts de l’Ingénierie Dirigée par les Modèles (IDM) est de considérer les modèles comme des éléments productifs pour le développement d’applications. Dans cette optique, une nouvelle tendance concerne les modèles exécutables où un modèle produit en phase de conception est réutilisé en tant que tel en phase d’exécution grâce aux interpreted Domain-Specific Modeling Language (i DSML) qui sont interprétés par un moteur d’exécution. Cette façon de procéder permet de gagner du temps lors du développement d’un logiciel et est par conséquent moins coûteux. D’autre part, les logiciels peuvent être dotés de capacités adaptatives. Ces applications adaptatives sont généralement confrontées à un contexte qui est plus ou moins connu et susceptible de changer au cours de l’exécution et auquel elles vont devoir faire face en modifiant leur comportement dynamiquement, c’est-à-dire sans interruption de service. De telles adaptations dynamiques et automatiques sont censées éviter une phase de maintenance onéreuse pour le logiciel. Nous avons donc d’un côté les i DSML qui permettent de réduire les coûts de développement d’une application et de l’autre côté l’adaptation logicielle qui permet de réduire les coûts de maintenance d’un programme. Dans cette thèse nous souhaitons prendre le meilleur des deux mondes en fusionnant les deux idées. Le résultat revient in fine à directement adapter l’exécution d’un modèle via des i DSML adaptables. Pour cela, nous proposons une caractérisation des i DSML adaptables, la définition du concept de famille pour gérer l’adaptation des i DSML, puis la création d’un langage exécutable d’orchestration dédié à l’adaptation, aboutissant ainsi au fait particulier d’adapter un i DSML par un autre i DSML. Enfin, un prototype à base de deux moteurs d’exécution est proposé avec son implémentation en Java/EMF. / One of the goals of Model-Driven Engineering (MDE) is to treat models as productive elements for software development. From this point of view, a new trend is about executable models where a model that is produced at design time is reused as such at runtime through interpreted Domain-Specific Modeling Languages (i DSMLs) that are interpreted by an execution engine. This way to proceed allows to save time during the software development and consequently is more cost-effective. On the other hand, software can provide adaptive capabilities. These adaptive applications are often facing a context which is more or less known and which may change during the execution and they will address these various situations by modifying dynamically their own behavior, i.e. without any service disruption. Such dynamic and automatic adaptations ought to avoid a too expensive maintenance stage for the program. We have on one hand the i DSMLs that allow to decrease the development costs of a program and on the other hand the software adaptation that allows to decrease the maintenance costs of an application. In this thesis, we must succeed in having the best of both worlds by merging these two ideas. The result is ultimately to directly adapt the model execution through adaptable i DSMLs. To this end, we propose a characterization of adaptable i DSMLs, the definition of the family concept to manage adaptation of i DSMLs, then the creation of an executable orchestration language for adaptation, thereby leading to the fact that an i DSML is adapted through an other i DSML. Finally, a prototype based on two execution engines is proposed with its implementation in Java/EMF.
30

Organisation des développeurs open-source et fiabilité logicielle / Open-source developers organization and software reliability

Foucault, Matthieu 30 November 2015 (has links)
La fiabilité du logiciel, c’est-à-dire sa capacité à produire les fonctionnalités attendues, est essentielle au succès des projets de développement logiciel. Afin de garantir cette fiabilité, les développeurs ont pour objectif de réduire le nombre de bogues présents dans le code source du logiciel.Une des techniques ayant pour but d’aider les développeurs dans cette tâche est l’utilisation de métriques logicielles, et notamment de métriques liées au procédé de développement.L’objectif général de cette thèse est de contribuer à la validation de métriques de procédé en étudiant leur relation avec la fiabilité. Ces métriques, une fois validées, pourront être utilisées dans des modèles de prédiction de bogues ayant pour but de mieux orienter les efforts de maintenance des développeurs ou pourront permettre de mettre en place des lignes de conduite relatives au procédé de développement. Devant l’étendue de ce domaine, nous avons centré nos contributions sur un aspect du procédé de développement qui est l’organisation des développeurs et avons observé cette organisation dans des projets open-source.En parallèle de la validation de ces métriques, nous avons contribué à l’amélioration de la méthodologie permettant l’extraction et l’analyse de métriques, grâce aux informations contenues dans les dépôts logiciels. / Reliability of a software, i.e. its capacity to produce the expected behaviour, is essential to the success of software projects. To ensure such reliability, developers need to reduce the amount of bugs in the source code of the software. One of the techniques available to help developers in this task is the use of software metrics, and especially metrics related to the development process.The general objective of this thesis is to contribute to the validation of process metrics, by studying their relationship with software reliability. These metrics, once validated, can be used in bug predictionmodels with the goal to guide maintenance efforts or can be used to create development guidelines. Given the extent of this domain, we chose to focus on one particular aspect of the development process, which is developers organisation, and we studied this organisation in open-source software projects.In parallel to the validation of process metrics, we contributed to the improvement of the methodology used to extract and analyse metrics, thanks to information available in software repositories.

Page generated in 0.0577 seconds