Spelling suggestions: "subject:"génie logiciel"" "subject:"génie progiciel""
11 |
Identification des concepts pour la ré-ingénierie des ontologiesBenaicha, Mohamed 04 1900 (has links) (PDF)
Des services élémentaires tels que la restructuration (Ang. refactoring), la fusion (Ang.merge), l’extraction de modules (Ang. modularization), etc., sont indispensables pour la mise en oeuvre d’une plateforme de génie ontologique dont l’un des objectifs essentiels est d’assurer la qualité d’une ontologie qui risque de se détériorer avec l’usage. INUKHUK est une plateforme de ré-ingénierie d’ontologies dont les services ci-haut sont basés sur un cadre formel, dit Analyse Relationnelle de Concepts (ARC). L’ARC a le pouvoir de créer de nouvelles abstractions sur n’importe quel type d’éléments ontologiques (concept, propriété, etc.). Ces abstractions factorisent des descriptions communes à plusieurs éléments et peuvent servir à corriger et/ou enrichir l’ontologie de façon à augmenter sa qualité. Toutefois, ces abstractions, qui sont le fruit d’un calcul mathématique, sont dépourvues de toute sémantique et par conséquent nécessitent un effort de conceptualisation afin d’être justifiées et intégrées à une ontologie. Le but de ce travail est de fouiller le bien fondé d’une abstraction et par la suite l’annoter avec un nom (En Anglais label) de concept. Les retombées sont multiples. D’abord, l’ontologie restructurée est beaucoup plus compréhensible par les experts et utilisateurs car l’enrichissement est autant structurel que sémantique. Ensuite, l’application des métriques de qualité basées sur l’analyse du vocabulaire ontologique pour l’estimation de la qualité de l’ontologie restructurée (Ang., refactored) est tout à fait justifiable. Pour ce faire, plusieurs méthodes de fouille ont été envisagées. La première méthode consiste à l’identification d’un nouveau concept ontologique à partir de la description de l’abstraction générée par l’ARC. La deuxième méthode consiste à confronter l’abstraction générée par l’ARC à des ressources linguistiques et/ou ontologiques existantes telles que WORDNET, structure catégorique de WIKIPEDIA, DBPEDIA, etc. Les deux approches ci-haut ont été implémentées au sein d’un outil, dit TOPICMINER, qui fait désormais partie de la plateforme INUKHUK. TOPICMINER a fait l’objet de plusieurs expérimentations et a retourné des résultats satisfaisants selon le protocole de validation mis en place.
|
12 |
Utilisation d'un modèle variationnel pour l'inspection des dimensions à l'aide de la vision par ordinateurFournier, Réjean January 1992 (has links) (PDF)
Le développement de la vision par ordinateur a amené son utilisation pour l'inspection dimensionnelle. Dans le domaine de la conception assistée par ordinateur (CAO), une nouvelle méthode de modélisation a été développée: la géométrie variationnelle.
Le présent mémoire fait le lien entre un modèle variationnel et l'inspection des dimensions à l'aide de la vision par ordinateur. Le modèle est enregistré dans une base de données paramétriques équivalente à celle que pourrait produire un logiciel de CAO.
La première partie porte sur l'élaboration d'un modèle variationnel simple en deux dimensions. La deuxième partie porte sur l'utilisation du processus de vision par ordinateur permettant d'extraire l'information voulue d'une image. L'image utilisée est celle produite par une caméra CCD. Un progiciel a été développé qui fait le lien entre le modèle et les données obtenues avec la vision par ordinateur. Le système développé est utilisable pour des objets de type polygone à n côtés.
Des résultats expérimentaux ont été obtenus avec différents exemples. Ils ont permis de démontrer que le système est très bien adapté pour la vérification des paramètres du modèle. L'utilisation du modèle lors du processus de vision permet le calcul des paramètres réels et de leur précision. Si le modèle contient les paramètres et leurs tolérances, la comparaison peut être faite avec les données obtenues par la vision.
Le modèle variationnel est utilisable pour la vérification dimensionnelle à l'aide de la vision par ordinateur. Un des avantages est d'utiliser le même modèle pour la vision que celui utilisé pour la conception. La vérification des dimensions se fait alors sur les paramètres du modèle.
|
13 |
RCR : un profil UML pour la rétroconception, la compréhension et la réingénierie de logicielsSt-Denis, Guy January 2001 (has links)
Mémoire numérisé par la Direction des bibliothèques de l'Université de Montréal.
|
14 |
Évaluation d’un jeu sérieux exploitant un joystick permettant des interations non-visuelles à l'aide d’une canne intelligenteMessaoudi, Mohamed Dhiaeddine 06 1900 (has links) (PDF)
Le pourcentage de la population présentant une déficience visuelle augmente rapidement. Chaque année, le nombre de personnes à déficience visuelle croît d'environ 2 millions dans le monde. L'Organisation Mondiale de la Santé (OMS) estime qu'il y a 39 millions d'aveugles et 246 millions personnes à déficience visuelle sur la planète. De plus, les déficiences visuelles sont fortement reliées au vieillissement. Environ 63% des personnes à déficience visuelle sont âgées de 50 ans ou plus, avec environ 20% de la population mondiale dans ce groupe d‟âge. Pour parvenir à certains niveaux d‟autonomie, la canne blanche est l‟outil qu‟utilise cette tranche de la population. Hors, plusieurs études ont montré que cet outil semble constituer un symbole de discrimination pour ces personnes. Notre recherche entend offrir un outil qui vise non seulement à donner de l‟autonomie aux aveugles mais aussi à amener les personnes voyantes à changer leur point de vue concernant cette population.
Sachant que la canne blanche reste l‟outil le plus utilisée par les personnes souffrant de déficience visuelle, nous avons intégré plusieurs senseurs (capteurs de position, accéléromètre etc) dans un bâton (canne blanche) afin de le transformer en ce que nous dénommons une manette pour aveugle. Cet outil permet essentiellement de détecter les gestes que l‟on fait avec l‟outil et aussi de communiquer avec un téléphone intelligent. En plus de cela, nous proposons un jeu qui utilise cette manette comme principal moyen d‟interaction. Ce jeu permet en autre à des personnes voyantes et non-voyantes de pouvoir jouer au même jeu en utilisant les mêmes moyens d‟interaction.
Cette problématique a été abordée sous deux volets : la création de la canne et le développement du jeu sérieux.
Phase 1 : C‟est la réalisation de la canne intelligente, la canne est composée d‟un accéléromètre, d‟un clavier et d‟un détecteur à ultra son. La fonction de base ce celle-ci est de permettre une détection des obstacles se trouvant sur le chemin de l‟utilisateur, et ce, à l‟aide d‟un détecteur ultra son. Celui-ci, relié à un téléphone intelligent, avertira l‟aveugle de la distance exacte entre lui et l‟obstacle. Cette option sera activable selon le bon vouloir de l‟utilisateur pour ne pas offrir un surplus d‟information inutilisable.
Phase 2 : La conception d‟un jeu spécialisé pertinent et sérieux, directement relié à la canne, représente le défi fondamental du projet. Le but est d‟élaborer un jeu intéressant, pouvant se jouer de n‟importe quelle place et directement à l‟aide de la canne. L‟utilisation du clavier comme interface est donc évidemment nécessaire. La connexion déjà établie avec le téléphone intelligent offre de nombreuses possibilités quant à la nature du jeu. L‟objectif est de créer un jeu stimulant pour rejoindre l‟intérêt de l‟utilisateur, mais tout de même assez simple dans son fonctionnement pour pouvoir être joué uniquement sur le clavier de 12 cases. L‟absence de possibilité de stimulation tactile, comme l‟offrent beaucoup de jeu pour aveugles et malvoyants, et la limitation dans les stimulations sonores compliquent grandement les tâches et ne laissent que très peu de possibilités de jeu.
En résumé, les travaux de ce mémoire présentent les bases pour l'utilisation d'une canne intelligente visant à développer un jeu sérieux qui utilise cet outil comme moyen d‟interaction dans le but d'améliorer le reflex de l‟aveugle. De plus, notre outil va lui faire oublier son handicap, vu qu‟il va avoir la même chance de gagner contre un concurrent voyant.
|
15 |
Mobile-based online data mining : outdoor activity recognitionBoukhechba, Mahdi 12 1900 (has links) (PDF)
One of the unique features of mobile applications is the context awareness. The mobility and power afforded by smartphones allow users to interact more directly and constantly with the external world more than ever before. The emerging capabilities of smartphones are fueling a rise in the use of mobile phones as input devices for a great range of application fields; one of these fields is the activity recognition. In pervasive computing, activity recognition has a significant weight because it can be applied to many real-life, human-centric problems. This important role allows providing services to various application domains ranging from real-time traffic monitoring to fitness monitoring, social networking, marketing and healthcare. However, one of the major problems that can shatter any mobile-based activity recognition model is the limited battery life. It represents a big hurdle for the quality and the continuity of the service. Indeed, excessive power consumption may become a major obstacle to broader acceptance context-aware mobile applications, no matter how useful the proposed service may be. We present during this thesis a novel unsupervised battery-aware approach to online recognize users’ outdoor activities without depleting the mobile resources. We succeed in associating the places visited by individuals during their movements to meaningful human activities. Our approach includes novel models that incrementally cluster users’ movements into different types of activities without any massive use of historical records. To optimize battery consumption, our approach behaves variably according to users’ behaviors and the remaining battery level. Moreover, we propose to learn users’ habits in order to reduce the activity recognition computation. Our innovative battery-friendly method combines activity recognition and prediction in order to recognize users’ activities accurately without draining the battery of their phones. We show that our approach reduces significantly the battery consumption while keeping the same high accuracy.
Une des caractéristiques uniques des applications mobiles est la sensibilité au contexte. La mobilité et la puissance de calcul offertes par les smartphones permettent aux utilisateurs d’interagir plus directement et en permanence avec le monde extérieur. Ces capacités émergentes ont pu alimenter plusieurs champs d’applications comme le domaine de la reconnaissance d’activités. Dans le domaine de l'informatique omniprésente, la reconnaissance des activités humaines reçoit une attention particulière grâce à son implication profonde dans plusieurs problématiques de vie quotidienne. Ainsi, ce domaine est devenu une pièce majeure qui fournit des services à un large éventail de domaines comme la surveillance du trafic en temps réel, les réseaux sociaux, le marketing et la santé. Cependant, l'un des principaux problèmes qui peuvent compromettre un modèle de reconnaissance d’activité sur les smartphones est la durée de vie limitée de la batterie. Ce handicap représente un grand obstacle pour la qualité et la continuité du service. En effet, la consommation d'énergie excessive peut devenir un obstacle majeur aux applications sensibles au contexte, peu importe à quel point ce service est utile. Nous présentons dans de cette thèse une nouvelle approche non supervisée qui permet la détection incrémentale des activités externes sans épuiser les ressources du téléphone. Nous parvenons à associer efficacement les lieux visités par des individus lors de leurs déplacements à des activités humaines significatives. Notre approche comprend de nouveaux modèles de classification en ligne des activités humaines sans une utilisation massive des données historiques. Pour optimiser la consommation de la batterie, notre approche se comporte de façon variable selon les comportements des utilisateurs et le niveau de la batterie restant. De plus, nous proposons d'apprendre les habitudes des utilisateurs afin de réduire la complexité de l’algorithme de reconnaissance d'activités. Pour se faire, notre méthode combine la reconnaissance d’activités et la prédiction des prochaines activités afin d’atteindre une consommation raisonnable des ressources du téléphone. Nous montrons que notre proposition réduit remarquablement la consommation de la batterie tout en gardant un taux de précision élevé.
|
16 |
Conception et implantation d'une bibliothèque pour la simulation de centres de contactsBuist, Éric January 2005 (has links)
Mémoire numérisé par la Direction des bibliothèques de l'Université de Montréal.
|
17 |
Assessing and improving code transformations to support software evolution / Évaluation et amélioration des transformations de code pour soutenir l'évolution logicielleDe Souza Santos, Gustavo Jansen 28 February 2017 (has links)
Dans le domaine du développement logiciel, le changement est la seule constante. Les logiciels évoluent parfois de façon substantielle et, pendant ce processus, des séquences de transformation de code (par exemple, créer une classe, puis surcharger une méthode) sont systématiquement appliquées dans le système (e.g. à certaines classes dans une même hiérarchie). De par la nature répétitive de ces transformations, il est nécessaire d’automatiser leur support afin d’assurer que ces séquences de transformations sont appliquées de façon consistante sur la globalité du système.Dans cette thèse, nous proposons d’améliorer les transformations de code pour mieux aider les développeurs dans l’application de transformation de code systématiques et complexes. Nous couvrons deux aspects:• Le support automatisé pour composer et appliquer des séquences de transformations de code. Nous réalisons une recherche de l’existence de telles séquences dans de vrais logiciels. Nous proposons un outil pour appliquer automatiquement ces séquences dans les systèmes que nous avons analysés. • La détection de violations de bons principes dans la conception lors d’efforts de transformation. Nous proposons un outil qui recommande des transformations additionnelles pour résoudre les violations de conception qui ont pu être détectées après avoir effectué les transformations de refactoring.Nous évaluons les approches proposées quantitativement et qualitativement sur des cas d’étude issus du monde réel, parfois avec l’aide des experts du système analysé. Les résultats obtenus montrent la pertinence de nos approches. / In software development, change is the only constant. Software systems sometimes evolve in a substantial way and, during this process, sequences of code transformations (e.g., create a class, then override a method) are systematically performed in the system (e.g., to some classes in the same hierarchy). Due to the repetitive nature of these transformations, some automated support is needed to ensure that these sequences of transformations are consistently applied to the entire system.In this thesis we propose to improve source code transformations to better sup- port developers performing more complex and systematic code transformations. We cover two aspects: • The automated support to compose and apply sequences of code transformations. We undergo an investigation on the existence of these sequences in real-world software systems. We propose a tool to automatically apply these sequences in the systems we analyzed. • The detection of design violations during a transformation effort. We undergo an investigation on cases of systematic application of refactoring transformations. We proposed a tool that recommends additional transformations to fix design violations that are detected after performing refactoring transformations.We evaluated the proposed approaches quantitatively and qualitatively in real-world case studies and, in some cases, with the help of experts on the systems under analysis. The results we obtained demonstrate the usefulness of our approaches.
|
18 |
Prédiction et reconnaissance d'activités dans un habitat intelligent basées sur les séries temporelles et la fouille de données temporellesMoutacalli, Mohamed Tarik 08 1900 (has links) (PDF)
L'assistance traditionnelle d'une personne atteinte de la maladie d'Alzheimer est une tâche difficile, coûteuse et complexe. La nécessité d’avoir une personne aidante presque tout le temps avec le patient épuise les ressources humaines et financières du système de santé. De plus, la relation est souvent compliquée entre l'aidant et le patient qui souhaite préserver son intimité. L'émergence du domaine de l'intelligence ambiante a permis la conception d’une assistance technologique où un agent artificiel, appelé aussi agent ambiant, vient aider et diminuer le temps passé par l’aidant dans l’habitat du patient.
Comme dans l’assistance traditionnelle, l’agent ambiant observe le patient ou son environnement en analysant les mesures envoyées par les différents senseurs installés dans la maison qui est nommée par ce fait un habitat intelligent. Préférablement d’une façon non supervisée, l’agent ambiant se doit d’apprendre le comportement normal du patient qui peut se traduire par la création d’une structure qui définit les différentes activités de la vie quotidienne (AVQ) que le patient est habitué à effectuer. Ensuite, grâce à l’heure courante et aux récentes actions détectées, l’agent ambiant va essayer de reconnaître l’activité entamée par le patient pour être en mesure de détecter des erreurs et proposer de l’aide en comparant les comportements normaux aux récentes actions détectées.
Plusieurs problèmes caractérisent cette nouvelle assistance, mais le plus grand défi de cette solution, qui réside dans l’étape de reconnaissance d’activités, est causé par le nombre très élevé des AVQs que nous appelons aussi le nombre d'hypothèses. En effet, comme chaque activité se compose de plusieurs actions, la reconnaissance d’activités se traduit donc par la recherche des récentes actions détectées parmi toutes les actions de toutes les AVQs, et ce, en temps réel.
Dans cette thèse, nous proposons des contributions dans les différentes étapes de l’assistance technologique. Nous répondons essentiellement à la problématique de la reconnaissance d’activités par la réduction maximale, à un instant précis, du nombre d'hypothèses. Tout d’abord, nous explorons la fouille de données temporelles et nous présentons notre propre algorithme de création de comportements normaux d’une façon non supervisée. L’algorithme analyse l'historique des senseurs activés afin de découvrir les motifs fréquents fermés qui représentent les modèles d’activités. Ensuite, nous explorons les séries temporelles pour choisir la technique de prédiction la plus adéquate à la prédiction des temps de débuts des différentes AVQs. Une méthode probabiliste est détaillée par la suite pour réduire le nombre d’hypothèses et reconnaître l’activité entamée. Nous terminons notre approche par l’utilisation des séries temporelles multivariées pour la prédiction du temps d’activation de chaque senseur de l’activité reconnue, ce qui aide l’agent ambiant à bien choisir le moment d’intervention pour proposer de l’aide, si nécessaire.
Notre approche se base essentiellement sur l'aspect temporel et n'offre pas juste une solution à la problématique de la reconnaissance d'activités, mais elle répond aussi à différentes erreurs, dont celles susceptibles d'être commises par les malades d’Alzheimer comme les erreurs d'initiations qui les empêchent d’amorcer des activités. La validation de notre approche et les tests de ses différentes étapes ont été effectués avec des données réelles enregistrées dans le Laboratoire d’Intelligence Ambiante pour la Reconnaissance d’Activités (LIARA) et les résultats sont satisfaisants.
|
19 |
Assessing and improving rules to support software evolution / Évaluation et amélioration des règles pour aider l'évolution des logicielsCavalcante Hora, André 04 November 2014 (has links)
Les systèmes logiciels évoluent pour ajouter de nouvelles fonctionnalités, corriger des bugs ou refactoriser du code source. Durant ce processus, certains problèmes peuvent survenir provoquant l'inconsistance ou l'échec des systèmes en évolution et avec leurs clients, ce qui aboutit finalement à une baisse de la qualité du code. Pour faire face à ces problèmes, il est possible d'utiliser des règles. Ces règles peuvent être créées par des experts ou extraites de précédentes versions du code source. Nous soutenons que les approches existantes : (i) n'analysent pas précisément les avantages des règles créées par des experts; (ii) gagneraient à mieux utiliser les dépôt de codes sources pour extraire des règles basées sur l'historique, et (iii) devraient analyser à grande échelle et sur des cas réels l'impact de l'évolution du code source sur les clients. Dans cette thèse, nous proposons d'analyser et d'améliorer les règles pour aider les développeurs à mieux suivre l'évolution du code source. Pour cela, nous étudions trois aspects différents :- Les avantages prévus par les règles créées par des experts : nous analysons précisément ces règles pour comprendre si elles valent la peine d'être adoptées malgré le coût pour les produire.- L'amélioration des règles basées sur l'historique : nous proposons deux solutions pour extraire de meilleures règles à partir du dépôt de codes sources.- L'impact de l'évolution du code source sur un écosystème logiciel : nous étudions les conséquences de l'évolution de code source sur des systèmes clients dans le contexte d'un écosystème de grande échelle.Les résultats que nous avons obtenus démontrent l'utilité de nos approches. / Software systems evolve by adding new features, fixing bugs or refactoring existing source code. During this process, some problems may occur causing evolving systems and their clients to be inconsistent or to fail, decreasing code quality. One solution to deal with such maintainability problems is the usage of rules to ensure consistency. These rules may be created by experts or extracted from source code repositories, which are commonly evaluated in small-scale case studies. We argue that existing approaches lack of: (i) a deep understanding of the benefits provided by expert-based rules, (ii) a better use of source code repositories to extract history-based rules, and (iii) a large-scale analysis of the impact of source code evolution on the actual clients.In this thesis we propose to analyze and improve rules to better support developers keeping track of source code evolution. We cover three aspects: - The benefits provided by expert-based rules: we report on an investigation of rules created based on expert opinion to understand whether they are worthwhile to be adopted given the cost to produce them.- The improvement of history-based rules: we propose two solutions to extract better rules from source code history.- The impact of source code evolution on a software ecosystem: we undergo an investigation, in a large-scale ecosystem, on the awareness of the client systems about source code evolution. We evaluated the proposed approaches qualitatively and quantitatively. The results we obtained demonstrate the usefulness of our approaches.
|
20 |
Validation de métriques de testabilité logicielle pour les programmes objetsShaheen, Muhammad Rabee 07 October 2009 (has links) (PDF)
Pour les systèmes logiciels, la méthode de validation la plus utilisée est le test. Tester consiste en l'exécution du logiciel en sélectionnant des données et en observant/jugeant les sorties. C'est un processus souvent coûteux. Il dépend de la complexité du logiciel, des objectifs en termes de validation, des outils et du processus de développement. La testabilité logicielle s'intéresse à caractériser et prédire l'effort de test. Cela est nécessaire pour estimer le travail de test, prévoir les coûts, planifier et organiser le travail. De nombreuses mesures ont été proposées dans la littérature comme indicateurs du coût du test. Ces mesures sont focalisées sur l'évaluation de certains attributs qui peuvent rendre le test difficile. D'autres approches proposent de repérer des constructions difficiles à tester à l'aide de patrons (testability antipatterns) par exemple. D'une façon générale, peu d'études ont été réalisées pour valider ces métriques ou patrons. Certaines de ces études donnent des résultats contradictoires. Or il est essentiel de fournir des informations non biaisées. Notre travail de thèse porte en premier lieu sur la validation de certaines métriques de testabilité proposées pour la prédiction du coût du test de programmes objet. Notre approche s'appuie sur une mise en relation des métriques et des stratégies de test et vise à l'établissement de corrélation entre coût prédictive et coût effective. Ceci nous a conduit à raffiner certaines métriques étudiées. Dans un second temps, nous nous sommes intéressés à des patrons (testability antipatterns) visant à détecter des faiblesses dans le code vis à vis du test. Le but de cette étude est de comprendre à quels moments ces constructions sont introduites dans le code, afin de les repérer le plus efficacement possible.
|
Page generated in 0.0739 seconds