653 results on '"génie logiciel"'
Search Results
2. Extraction of UML class diagrams from natural language specifications
- Author
-
Yang, Song and Sahraoui, Houari
- Subjects
Software engineering ,Information extraction ,Natural language processing ,Machine learning ,Génie logiciel ,Model-driven engineering ,Ingénierie dirigée par modèle ,Extraction d'information ,UML - Abstract
Dans l’ingénierie dirigée par modèle, les diagrammes de classes UML servent à la planification et à la communication entre les différents acteurs d’un projet logiciel. Dans ce mémoire, nous proposons une méthode automatique pour l’extraction des diagrammes de classes UML à partir de spécifications en langues naturelles. Pour développer notre méthode, nous créons un dépôt de diagrammes de classes UML et de leurs spécifications en anglais fournies par des bénévoles. Notre processus d’extraction se fait en plusieurs étapes: la segmentation des spécifications en phrases, la classification de ces phrases, la génération des fragments de diagrammes de classes UML à partir de chaque phrase, et la composition de ces fragments en un diagramme de classes UML. Nous avons validé notre approche d’extraction en utilisant le dépôt de paires diagramme-spécification. Même si les résultats obtenus montrent une précision et un rappel bas, notre travail a permis d’identifier les éléments qui peuvent être améliorés pour une meilleure extraction., In model-driven engineering, UML class diagrams serve as a way to plan and communicate between developers. In this thesis, we propose an automated approach for the extraction of UML class diagrams from natural language software specifications. To develop our approach, we create a dataset of UML class diagrams and their English specifications with the help of volunteers. Our approach is a pipeline of steps consisting of the segmentation of the input into sentences, the classification of the sentences, the generation of UML class diagram fragments from sentences, and the composition of these fragments into one UML class diagram. We develop a quantitative testing framework specific to UML class diagram extraction. Our approach yields low precision and recall but serves as a benchmark for future research.
- Published
- 2023
3. Une méthode d’évaluation de tableaux de bord pour le génie logiciel
- Author
-
Fernandes Barbosa, Raphael and Fernandes Barbosa, Raphael
- Abstract
Au cours de la dernière décennie, le volume de données et de technologies ne cesse d’augmenter de manière accrue et accélérée. Les dirigeants d’entreprise cherchent à visualiser les informations de façon détaillée et efficace, afin de prendre des décisions basées sur des faits. Ils ont besoin des données correctes, livrées par un moyen fiable et accessible. L’évolution des technologies de l’analyse de données a permis la création d’outils qui analysent les logiciels des entreprises, offrant une visualisation de plusieurs aspects liés au développement et l’utilisation de logiciels. Ayant pour objectif la remise de données comme information utile destinée au décideur, le tableau de bord constitue l’un des moyens les plus indiqués. Toutefois, comment peut-on évaluer quel tableau de bord est le meilleur pour exécuter une telle tâche ? Cette étude vise à comprendre les concepts et les caractéristiques du développement de tableaux de bord à la lumière de la littérature, dans le but d’évaluer et d’offrir du soutien nécessaire à la prise de décision sur quel tableau de bord est adéquat pour chaque scénario d’application en génie logiciel. Pour ce faire, nous exécutons un mappage systématique à la recherche d’études sur l’évaluation de tableaux de bord en génie logiciel. Grâce à ce premier pas, nous avons pu visualiser comme l’analyse de données a avancé au cours des dernières années et comment l’utilisation d’outils de visualisation est en cours d’application. L’application et l’utilisation des tableaux de bord dans les divers sous-domaines de génie logiciel, comme des critères, qualité et test de logiciel sont de plus en plus communs. L’analyse de la recherche menée a rendu possible l’identification des principales caractéristiques pour qu’un tableau de bord soit en accord avec les bonnes pratiques de développement, selon la littérature. Dans le cadre de cette étude, nous avons été capables de construire une méthode d’évaluation de tableaux de bord en utilisant l’analyse h
- Published
- 2022
4. Derivation of Heard-of Predicates from Elementary Behavioral Patterns
- Author
-
Aurélie Hurault, Philippe Quéinnec, Adam Shimi, Assistance à la Certification d’Applications DIstribuées et Embarquées (IRIT-ACADIE), Institut de recherche en informatique de Toulouse (IRIT), Université Toulouse 1 Capitole (UT1), Université Fédérale Toulouse Midi-Pyrénées-Université Fédérale Toulouse Midi-Pyrénées-Université Toulouse - Jean Jaurès (UT2J)-Université Toulouse III - Paul Sabatier (UT3), Université Fédérale Toulouse Midi-Pyrénées-Centre National de la Recherche Scientifique (CNRS)-Institut National Polytechnique (Toulouse) (Toulouse INP), Université Fédérale Toulouse Midi-Pyrénées-Université Toulouse 1 Capitole (UT1), Université Fédérale Toulouse Midi-Pyrénées, Institut National Polytechnique (Toulouse) (Toulouse INP), ANR-16-CE25-0006,PARDI,Vérification de systèmes distribués paramétrés(2016), Institut National Polytechnique de Toulouse - Toulouse INP (FRANCE), Centre National de la Recherche Scientifique - CNRS (FRANCE), Université Toulouse III - Paul Sabatier - UT3 (FRANCE), Université Toulouse - Jean Jaurès - UT2J (FRANCE), and Université Toulouse 1 Capitole - UT1 (FRANCE)
- Subjects
FOS: Computer and information sciences ,[INFO.INFO-AR]Computer Science [cs]/Hardware Architecture [cs.AR] ,Theoretical computer science ,Computer science ,Failures ,0102 computer and information sciences ,02 engineering and technology ,[INFO.INFO-SE]Computer Science [cs]/Software Engineering [cs.SE] ,Fault (power engineering) ,Interface homme-machine ,01 natural sciences ,Field (computer science) ,Article ,Message-passing ,[INFO.INFO-CR]Computer Science [cs]/Cryptography and Security [cs.CR] ,Architectures Matérielles ,Simple (abstract algebra) ,0202 electrical engineering, electronic engineering, information engineering ,Asynchronous rounds ,Génie logiciel ,[INFO.INFO-HC]Computer Science [cs]/Human-Computer Interaction [cs.HC] ,Repetition (rhetorical device) ,Message passing ,Behavioral pattern ,Modélisation et simulation ,16. Peace & justice ,Systèmes embarqués ,[INFO.INFO-MO]Computer Science [cs]/Modeling and Simulation ,Heard-of model ,Computer Science - Distributed, Parallel, and Cluster Computing ,010201 computation theory & mathematics ,Cryptographie et sécurité ,020201 artificial intelligence & image processing ,[INFO.INFO-ES]Computer Science [cs]/Embedded Systems ,Distributed, Parallel, and Cluster Computing (cs.DC) - Abstract
There are many models of distributed computing, and no unifying mathematical framework for considering them all. One way to sidestep this issue is to start with simple communication and fault models, and use them as building blocks to derive the complex models studied in the field. We thus define operations like union, succession or repetition, which makes it easier to build complex models from simple ones while retaining expressivity. To formalize this approach, we abstract away the complex models and operations in the Heard-Of model. This model relies on (possibly asynchronous) rounds; sequence of digraphs, one for each round, capture which messages sent at a given round are received before the receiver goes to the next round. A set of sequences, called a heard-of predicate,defines the legal communication behaviors -- that is to say, a model of communication. Because the proposed operations behave well with this transformation of operational models into heard-of predicates, we can derive bounds, characterizations, and implementations of the heard-of predicates for the constructions., Full version of a paper accepted to FORTE 2020
- Published
- 2020
- Full Text
- View/download PDF
5. Multiple software product lines to configure applications of internet of things
- Author
-
Alberto-Alfonso Aguilar-Lasserre, Ulises Juárez-Martínez, Catherine Azzaro-Pantel, Guadalupe-Isaura Trujillo-Tzanahua, María-Karen Cortés-Verdín, Centre National de la Recherche Scientifique - CNRS (FRANCE), Institut National Polytechnique de Toulouse - Toulouse INP (FRANCE), Université Toulouse III - Paul Sabatier - UT3 (FRANCE), Tecnológico Nacional de México - TecNM (MEXICO), Universidad Veracruzana - UV (MEXICO), Laboratoire de Génie Chimique - LGC (Toulouse, France), Tecnológico Nacional de México (TecNM), Universidad Veracruzana, Laboratoire de génie chimique [ancien site de Basso-Cambo] (LGC), Université Toulouse III - Paul Sabatier (UT3), Université Fédérale Toulouse Midi-Pyrénées-Université Fédérale Toulouse Midi-Pyrénées-Centre National de la Recherche Scientifique (CNRS)-Institut National Polytechnique (Toulouse) (Toulouse INP), and Université Fédérale Toulouse Midi-Pyrénées
- Subjects
Universal feature model ,Reuse schemes ,Computer science ,Industrial production ,[INFO.INFO-DS]Computer Science [cs]/Data Structures and Algorithms [cs.DS] ,Algorithme et structure de données ,Internet of Things ,Industrial production lines ,[INFO.INFO-SE]Computer Science [cs]/Software Engineering [cs.SE] ,02 engineering and technology ,Multiobjective optimisation model ,Reuse ,Notation ,Software ,0202 electrical engineering, electronic engineering, information engineering ,Génie logiciel ,Multiple software product lines ,Reusability ,Search-based software engineering technique ,business.industry ,Development cost minimisation ,Mass production ,020207 software engineering ,Genetic algorithms ,Computer Graphics and Computer-Aided Design ,Feature model ,Cost reduction ,Portfolio ,020201 artificial intelligence & image processing ,Software engineering ,business - Abstract
International audience; Software product lines (SPL) emulate the industrial production lines that are capable of generating large volumes of products through reuse schemes and mass production. A multi product line (MPL) aims to reuse of several SPL. Feature models are often used to manage the existing resources of SPLs and define valid products through notations and relationships such as mandatory, optional, and alternative features. The main contribution of this study is a method to manage the variability of multiple SPL and generate a new portfolio of products for Internet of Things (IoT). For this, the problem of developing a universal feature model (FM) for an MPL from merging the FMs of the individual SPLs with a Search-Based Software Engineering (SBSE) technique is addressed. In addition, the authors propose a multi-objective optimisation model to maximise the reusability and compatibility between features and minimise the development cost. The model facilitates the design of an MPL-feature model. Authors' empirical results show that the proposed model solved by genetic algorithms allows to configure a variety of software products and to determine the scope of the MPL.
- Published
- 2020
- Full Text
- View/download PDF
6. Environnements de développement programmables : réification des protocoles de langage en objets de première classe
- Author
-
Jeanjean, Pierre, Institut de Recherche en Informatique et Systèmes Aléatoires (IRISA), Université de Rennes (UR)-Institut National des Sciences Appliquées - Rennes (INSA Rennes), Institut National des Sciences Appliquées (INSA)-Institut National des Sciences Appliquées (INSA)-Université de Bretagne Sud (UBS)-École normale supérieure - Rennes (ENS Rennes)-Institut National de Recherche en Informatique et en Automatique (Inria)-CentraleSupélec-Centre National de la Recherche Scientifique (CNRS)-IMT Atlantique (IMT Atlantique), Institut Mines-Télécom [Paris] (IMT)-Institut Mines-Télécom [Paris] (IMT), Diversity-centric Software Engineering (DiverSe), Inria Rennes – Bretagne Atlantique, Institut National de Recherche en Informatique et en Automatique (Inria)-Institut National de Recherche en Informatique et en Automatique (Inria)-LANGAGE ET GÉNIE LOGICIEL (IRISA-D4), Institut Mines-Télécom [Paris] (IMT)-Institut Mines-Télécom [Paris] (IMT)-Université de Rennes (UR)-Institut National des Sciences Appliquées - Rennes (INSA Rennes), Institut Mines-Télécom [Paris] (IMT)-Institut Mines-Télécom [Paris] (IMT)-Institut de Recherche en Informatique et Systèmes Aléatoires (IRISA), Institut National des Sciences Appliquées (INSA)-Institut National des Sciences Appliquées (INSA)-Université de Bretagne Sud (UBS)-École normale supérieure - Rennes (ENS Rennes)-CentraleSupélec-Centre National de la Recherche Scientifique (CNRS)-IMT Atlantique (IMT Atlantique), Université Rennes 1, Benoît Combemale, and Olivier Barais
- Subjects
Software engineering ,Langages dédiés ,Interpréteurs (logiciels) ,Domain-Specific programming languages ,Génie logiciel ,Interpreters (Computer programs) ,[INFO.INFO-SE]Computer Science [cs]/Software Engineering [cs.SE] ,Générateurs (logiciels) ,Generators (Computer programs) - Abstract
The use of modern and complex programming languages requires dedicated development environments to support programmers. Integrated Development Environments (IDEs) are the most used environments today, providing all the necessary tools to use efficiently the languages they target. Providing a complete IDE for a specific language is however very costly, which lead to their maintainers to only focus on a few languages for each IDE, splitting their users. In order to stay relevant, small languages such as domain-specific languages (DSLs) need to be properly integrated in the environment of their users, which requires vast resources and cannot scale to the fragmentation of IDEs. In this thesis, we explore the idea of deploying development environments customized to the needs of their users, and leveraging language tools completely separated from any specific IDE. We start by considering language protocols, such as LSP, and designing a modular and extensible alternative that is more in line with the specificities of DSLs. Then, we focus on REPL interpreters, interactive language interpreters which offer great value for education and exploration but are not easily derived from existing language engineering techniques. We provide a formal approach to define REPLs, as well as a generative approach, and discuss their integration in development environments. Finally, we unify the semantics of several execution tools (execution engines, REPLs and debuggers) through the specification of the common interface between them.; L'utilisation de langages de programmation modernes et complexes nécessite des environnements de développement dédiés, capables d'assister les programmeurs. Les environnements de développement intégrés (IDE) sont les environnements les plus utilisés aujourd'hui, fournissant tous les outils nécessaires pour utiliser efficacement les langages qu'ils ciblent. Fournir un IDE complet pour un langage spécifique est cependant très coûteux, ce qui conduit leurs mainteneurs à ne se concentrer que sur quelques langages pour chaque IDE, divisant ainsi leurs utilisateurs. Afin de rester pertinents, les petits langages tels que les langages dédiés (DSL) doivent être correctement intégrés dans l'environnement de leurs utilisateurs, ce qui nécessite de vastes ressources et ne peut pas prendre en compte la fragmentation entre les IDEs. Dans cette thèse, nous explorons l'idée de déployer des environnements de développement adaptés aux besoins de leurs utilisateurs, et de tirer parti d'outils de langages complètement séparés de tout IDE spécifique. Nous commençons par considérer les protocoles de langage, tels que LSP, et concevons une alternative modulaire et extensible qui correspond mieux aux spécificités des DSLs. Ensuite, nous nous concentrons sur les interprèteurs REPL, des interprèteurs de langage interactifs qui ont une grande valeur pour l'éducation et l'exploration, mais qui ne sont pas facilement dérivés à partir des techniques d'ingénierie des langages existantes. Nous proposons une approche formelle pour définir les REPLs, ainsi qu'une approche générative, et discutons de leur intégration dans les environnements de développement. Enfin, nous unifions la sémantique de plusieurs outils d'exécution (moteurs d'exécution, REPLs et débogueurs) par la spécification de l'interface commune entre eux.
- Published
- 2022
7. Agir sur la fiabilité et la flexibilité des logiciels scientifiques en sciences de l’environnement : vers une approche systématique d’aide à la prise de décision
- Author
-
Sallou, June, Institut de Recherche en Informatique et Systèmes Aléatoires (IRISA), Université de Rennes (UR)-Institut National des Sciences Appliquées - Rennes (INSA Rennes), Institut National des Sciences Appliquées (INSA)-Institut National des Sciences Appliquées (INSA)-Université de Bretagne Sud (UBS)-École normale supérieure - Rennes (ENS Rennes)-Institut National de Recherche en Informatique et en Automatique (Inria)-CentraleSupélec-Centre National de la Recherche Scientifique (CNRS)-IMT Atlantique (IMT Atlantique), Institut Mines-Télécom [Paris] (IMT)-Institut Mines-Télécom [Paris] (IMT), Diversity-centric Software Engineering (DiverSe), Inria Rennes – Bretagne Atlantique, Institut National de Recherche en Informatique et en Automatique (Inria)-Institut National de Recherche en Informatique et en Automatique (Inria)-LANGAGE ET GÉNIE LOGICIEL (IRISA-D4), Institut Mines-Télécom [Paris] (IMT)-Institut Mines-Télécom [Paris] (IMT)-Université de Rennes (UR)-Institut National des Sciences Appliquées - Rennes (INSA Rennes), Institut Mines-Télécom [Paris] (IMT)-Institut Mines-Télécom [Paris] (IMT)-Institut de Recherche en Informatique et Systèmes Aléatoires (IRISA), Institut National des Sciences Appliquées (INSA)-Institut National des Sciences Appliquées (INSA)-Université de Bretagne Sud (UBS)-École normale supérieure - Rennes (ENS Rennes)-CentraleSupélec-Centre National de la Recherche Scientifique (CNRS)-IMT Atlantique (IMT Atlantique), Université Rennes 1, Johann Bourcier, and Jean-Raynald de Dreuzy
- Subjects
Sciences de l'environnement ,Decision-Making ,Prise de décision ,Génie Logiciel ,Environmental Science ,Software Engineering ,Approximate Computing ,[INFO.INFO-SE]Computer Science [cs]/Software Engineering [cs.SE] ,Approximation - Abstract
Scientific software are the centre stage to support decision-making related to tackling environmental issues thanks to simulation. However, their complexity makes their execution time-consuming or resource-demanding, which is not compatible to the context of interactive decision-making. The main goal of the thesis is to tailor the scientific models, and thus, scientific software, to make them relevant and efficient to be used in such context. We first demystify the scientific models and their complementarity to engineering models to understand how they interact together. We present the MODA framework that defines the integration of the different types and roles that models can take in a sociotechnical system. Furthermore, we highlight the need to tailor the descriptive scientific models to make them take a predictive role and improve the prescriptive model of the decision-making process. We then investigate the specificity of the scientific models in terms of development cycle and validation process. We describe a reasoned approach for the development of reliable scientific software that allows to clearly characterize the validity envelope of this type of software. Finally, we propose a systematic approach of tailoring the scientific models to support decision-making by trading-off accuracy for flexibility. We adapt an approximate computing technique for scientific models. We evaluate it on a hydro-geological model used to assess the risk of flooding in coastal areas. Our results show a significant speed-up with a minimal set-up. We also propose a trade-off optimisation approach to generalise the tailoring of scientific models for decision-making.; Les logiciels scientifiques sont au cœur de l'aide à la prise de décision liée à la résolution des problèmes environnementaux grâce à la simulation. Cependant, leur complexité rend leur exécution coûteuse en temps ou en ressources, ce qui n'est pas compatible avec le contexte de la prise de décision en interactivité. L'objectif principal de la thèse est d'adapter les modèles scientifiques, et donc les logiciels scientifiques, afin de les rendre pertinents et efficaces pour être utilisés dans un tel contexte. Nous démystifions d'abord les modèles scientifiques et leur complémentarité avec les modèles d'ingénierie pour comprendre comment ils interagissent ensemble. Nous présentons le cadriciel MODA qui définit l'intégration des différents types et rôles que peuvent prendre les modèles dans un système sociotechnique. En outre, nous soulignons la nécessité d'adapter les modèles scientifiques descriptifs pour leur faire jouer un rôle prédictif et améliorer le modèle prescriptif du processus décisionnel. Nous étudions ensuite la spécificité des modèles scientifiques en termes de cycle de développement et de processus de validation. Nous décrivons une approche pour le développement de logiciels scientifiques fiables qui permet de caractériser clairement l'enveloppe de validité de ce type de logiciel. Enfin, nous proposons une approche systématique de l'adaptation des modèles scientifiques pour aider à la prise de décision en conciliant précision et flexibilité. Nous adaptons une technique de calcul approximatif aux modèles scientifiques. Nous l'évaluons sur un modèle hydrogéologique destiné à évaluer le risque d'inondation dans les zones côtières. Nos résultats montrent une accélération significative du temps de calcul avec une configuration minimale. Nous présentons également une approche d'optimisation de l'approximation pour généraliser l'adaptation des modèles scientifiques à la prise de décision.
- Published
- 2022
8. Pattern-based refactoring in model-driven engineering
- Author
-
Mokaddem, Chihab eddine Mohamed Omar, Sahraoui, Houari, and Syriani, Eugene
- Subjects
Learning by Example ,Refactorisation ,Software engineering ,Refactoring ,Design Pattern ,Model Transformation ,Ingénierie guidée par les modèles ,Génie logiciel ,apprentissage par l'exemple ,Patron de conception ,Transformation de modèle ,Model-driven Engineering - Abstract
L’ingénierie dirigée par les modèles (IDM) est un paradigme du génie logiciel qui utilise les modèles comme concepts de premier ordre à partir desquels la validation, le code, les tests et la documentation sont dérivés. Ce paradigme met en jeu divers artefacts tels que les modèles, les méta-modèles ou les programmes de transformation des modèles. Dans un contexte industriel, ces artefacts sont de plus en plus complexes. En particulier, leur maintenance demande beaucoup de temps et de ressources. Afin de réduire la complexité des artefacts et le coût de leur maintenance, de nombreux chercheurs se sont intéressés au refactoring de ces artefacts pour améliorer leur qualité. Dans cette thèse, nous proposons d’étudier le refactoring dans l’IDM dans sa globalité, par son application à ces différents artefacts. Dans un premier temps, nous utilisons des patrons de conception spécifiques, comme une connaissance a priori, appliqués aux transformations de modèles comme un véhicule pour le refactoring. Nous procédons d’abord par une phase de détection des patrons de conception avec différentes formes et différents niveaux de complétude. Les occurrences détectées forment ainsi des opportunités de refactoring qui seront exploitées pour aboutir à des formes plus souhaitables et/ou plus complètes de ces patrons de conceptions. Dans le cas d’absence de connaissance a priori, comme les patrons de conception, nous proposons une approche basée sur la programmation génétique, pour apprendre des règles de transformations, capables de détecter des opportunités de refactoring et de les corriger. Comme alternative à la connaissance disponible a priori, l’approche utilise des exemples de paires d’artefacts d’avant et d’après le refactoring, pour ainsi apprendre les règles de refactoring. Nous illustrons cette approche sur le refactoring de modèles., Model-Driven Engineering (MDE) is a software engineering paradigm that uses models as first-class concepts from which validation, code, testing, and documentation are derived. This paradigm involves various artifacts such as models, meta-models, or model transformation programs. In an industrial context, these artifacts are increasingly complex. In particular, their maintenance is time and resources consuming. In order to reduce the complexity of artifacts and the cost of their maintenance, many researchers have been interested in refactoring these artifacts to improve their quality. In this thesis, we propose to study refactoring in MDE holistically, by its application to these different artifacts. First, we use specific design patterns, as an example of prior knowledge, applied to model transformations to enable refactoring. We first proceed with a detecting phase of design patterns, with different forms and levels of completeness. The detected occurrences thus form refactoring opportunities that will be exploited to implement more desirable and/or more complete forms of these design patterns. In the absence of prior knowledge, such as design patterns, we propose an approach based on genetic programming, to learn transformation rules, capable of detecting refactoring opportunities and correcting them. As an alternative to prior knowledge, our approach uses examples of pairs of artifacts before and after refactoring, in order to learn refactoring rules. We illustrate this approach on model refactoring.
- Published
- 2021
9. Optimization by design patterns and static analysis of web applications for a sharp adaptation of e-business start-ups in the city of Lubumbashi in DR Congo (Nesher)
- Author
-
FYAMA, Blaise, KADIATA, Freddy, and Fyama, Blaise
- Subjects
Optimization ,analyse statique ,[INFO.INFO-WB] Computer Science [cs]/Web ,qualité ,[INFO.INFO-SE] Computer Science [cs]/Software Engineering [cs.SE] ,Software Engineering ,Chindamber ,Kemerer ,Ingénierie dirigée par les modèles ,COCOMO 2 ,complexité ,Design Patterns ,uml ,metrics ,Model Driven Engineering ,Software optimization ,quality metrics ,Chidamber and Kemerer ,Model-driven engineering ,static analysis ,quality ,métriques ,Génie logiciel ,Optimisation ,[INFO.INFO-CC] Computer Science [cs]/Computational Complexity [cs.CC] ,complexity ,COCOMO 2 2 - Abstract
In recent years, many companies have introduced object-oriented technology into their software development. The paradigm component, which advocates the assembly of autonomous and reusable software bricks, is indeed an interesting proposition to reduce development and maintenance costs while increasing the quality of applications. Whatever development paradigm we find ourselves in, it is essential for both architects and developers to evaluate what they produce in order to produce software that can meet the needs of users, which is why we offer in this article an approach based on the static analysis of the software and the use of some software engineering model to optimize the software and to guarantee its quality., Ces dernières années, de nombreuses entreprises ont introduit la technologie orientée objet dans leurs développements logiciels. Le paradigme composant, qui prône l’assemblage de briques logiciels autonomes et réutilisables, est en effet une proposition intéressante pour diminuer les coûts de développement et de maintenance tout en augmentant la qualité des applications.Quel que soit le paradigme de développement dans lequel on se retrouve, il est essentiel pour les architectes comme pour les développeurs d’évaluer ce qu’ils produisent afin de produire des logiciels capable de répondre aux besoins des utilisateurs, voilà pourquoi nous proposons dans cet article une approche basé sur l’analyse statique du logiciel et l’usage de quelque modèle d’ingénierie logiciel pour optimiser le logiciel et en garantir la qualité.
- Published
- 2021
- Full Text
- View/download PDF
10. Design and evaluation of braced touch for touchscreen input stabilisation
- Author
-
Catherine Trask, Christine Gris, Damien Masson, Marcus Yung, Alix Goguey, Carl Gutwin, Philippe Palanque, Andy Cockburn, Airbus (FRANCE), Centre National de la Recherche Scientifique - CNRS (FRANCE), Institut National Polytechnique de Toulouse - Toulouse INP (FRANCE), University of Canterbury - UC (NEW ZEALAND), Université Toulouse III - Paul Sabatier - UT3 (FRANCE), Université Toulouse - Jean Jaurès - UT2J (FRANCE), Université Toulouse 1 Capitole - UT1 (FRANCE), University of Saskatchewan (CANADA), and Institut de Recherche en Informatique de Toulouse - IRIT (Toulouse, France)
- Subjects
Computer science ,Target selection ,Human Factors and Ergonomics ,Interface homme-machine ,Vibration ,Education ,law.invention ,Touchscreen ,Architectures Matérielles ,law ,Génie logiciel ,Selection (genetic algorithm) ,Simulation ,General Engineering ,Vehicles ,Modélisation et simulation ,Systèmes embarqués ,Bracing ,Cockpit ,Turbulence ,Human-Computer Interaction ,Hardware and Architecture ,Cryptographie et sécurité ,Touch interaction ,Aviation ,Software - Abstract
Incorporating touchscreen interaction into cockpit flight systems offers several potential advantages to aircraft manufacturers, airlines, and pilots. However, vibration and turbulence are challenges to reliable interaction. We examine the design space for braced touch interaction, which allows users to mechanically stabilise selections by bracing multiple fingers on the touchscreen before completing selection. Our goal is to enable fast and accurate target selection during high levels of vibration, without impeding interaction performance when vibration is absent. Three variant methods of braced touch are evaluated, using doubletap, dwell, or a force threshold in combination with heuristic selection criteria to discriminate intentional selection from concurrent braced contacts. We carried out an experiment to test the performance of these methods in both abstract selection tasks and more realistic flight tasks. The study results confirm that bracing improves performance during vibration, and show that doubletap was the best of the tested methods.
- Published
- 2019
- Full Text
- View/download PDF
11. Une approche d’automatisation du déploiement des systèmes de Machine Learning
- Author
-
Andreetta Fontana, Eduardo and Andreetta Fontana, Eduardo
- Abstract
Au cours des dernières années, le Machine Learning (ML) a gagné en audience dans l’industrie et au milieu académique. Plusieurs études désignent le ML comme une technologie appliquée à une grande variété des besoins d’affaires ainsi qu’aux problèmes inhérents au développement de logiciels. En complément, les outils Automated Machine Learning (AutoML) sont développés pour automatiser le pipeline d’entraînement de modelés de ML. Cependant, ces outils AutoML ne résolvent pas tous les problèmes retrouvés lors de la phase de déploiement du pipeline de ML. Parmi ces défis, nous pouvons citer : les problèmes de compatibilité avec la plate-forme de déploiement, la nécessité d’un redéploiement périodique en raison des mises à jour des modèles et le déploiement qui dépend des efforts manuels. Ils font tous partie du quotidien des développeurs et des scientifiques des données [3, 4]. Par ailleurs, on ne trouve pas encore d’études académiques qui proposent des solutions à ces défis en validant des études de cas dans des entreprises. Cette étude vise à proposer une approche d’automatisation du déploiement de systèmes de ML qui minimise les défis liés au déploiement de modèles de ML. Cette approche comprend des principes de MLOps et ceux de développement Low-code. Pour la mettre en oeuvre, nous avons développé un outil validé à partir de son application dans une étude de cas basée sur un besoin réel d’une entreprise de développement de logiciels. Tout d’abord, nous avons cartographié les principaux défis du déploiement de modèles de ML présents dans la littérature. Ensuite, nous avons analysé les fonctionnalités de déploiement de principaux outils AutoML open-source présents dans l’industrie. En guise de contribution, notre étude présente : (a) : catalogue des défis de déploiement de modèles de ML; (b) : liste des outils AutoML open-source. Les résultats montrent que notre approche de l’automatisation du déploiement de systèmes de ML minimise 72,2 % des défis de déploiement et co
- Published
- 2021
12. A model-driven methodology to unify software engineering in the Internet of Things
- Author
-
Berrouyne, Imad and Berrouyne, Imad
- Abstract
The Internet of Things (IoT) aims for connecting Anything, Anywhere, Anytime (AAA). This assumption brings about a good deal of software engineering challenges. These challenges constitute a serious obstacle to its wider adoption. The main feature of the Internet of Things (IoT) is genericity, i.e., enabling things to connect seamlessly regardless of their technologies. Model-Driven Engineering (MDE) is a paradigm that advocates using models to address software engineering problems. MDE could help to meet the genericity of the IoT from a software engineering perspective. In that sense, the IoT could be a requirement provider on the one hand and MDE its solution provider on the other. Existing MDE approaches focus on modeling the behavior of things. But, little attention has been paid to network-related modeling. The present thesis presents a methodology to create smart networks of things based on MDE. It aims to cover and leverage the network-related aspects of an IoT application compared to the existing work. The principle we use consists of avoiding the intrinsic heterogeneity of the IoT by separating the specification of the network, i.e., the things, the communication scheme, and the constraints, from their concrete implementation, i.e., the low-level artifacts (e.g., source code). Technically, the methodology relies on a model-based Domain-Specific Language (DSL) and a code generator. The former enables the specification of the network, and the latter provides a procedure to generate the low-level artifacts from this specification. The adoption of this methodology permits making software engineering of IoT applications more deterministic and saving a significant amount of lines of code compared to the state of practice. L’Internet des objets (IdO) vise à connecter tout objet, partout, en tout temps (TTT). Cette hypothèse entraîne de nombreux défis en matière de génie logiciel. Ces défis constituent un sérieux obstacle à son adoption à grande échelle. L’une des
- Published
- 2021
13. Vers des Logiciels Éco-responsables
- Author
-
Le Goaer, Olivier, Noureddine, Adel, Barbier, Franck, Rouvoy, Romain, Maraninchi, Florence, Laboratoire Informatique de l'Université de Pau et des Pays de l'Adour (LIUPPA), Université de Pau et des Pays de l'Adour (UPPA), Self-adaptation for distributed services and large software systems (SPIRALS), Inria Lille - Nord Europe, Institut National de Recherche en Informatique et en Automatique (Inria)-Institut National de Recherche en Informatique et en Automatique (Inria)-Centre de Recherche en Informatique, Signal et Automatique de Lille - UMR 9189 (CRIStAL), Ecole Centrale de Lille-Université de Lille-Centre National de la Recherche Scientifique (CNRS)-Ecole Centrale de Lille-Université de Lille-Centre National de la Recherche Scientifique (CNRS), VERIMAG (VERIMAG - IMAG), Centre National de la Recherche Scientifique (CNRS)-Université Grenoble Alpes (UGA)-Institut polytechnique de Grenoble - Grenoble Institute of Technology (Grenoble INP ), Université Grenoble Alpes (UGA), Centrale Lille-Université de Lille-Centre National de la Recherche Scientifique (CNRS)-Centrale Lille-Université de Lille-Centre National de la Recherche Scientifique (CNRS), and Université de Lille-Centrale Lille-Centre National de la Recherche Scientifique (CNRS)-Université de Lille-Centrale Lille-Centre National de la Recherche Scientifique (CNRS)
- Subjects
génie logiciel ,éco-conception ,[INFO.INFO-SE]Computer Science [cs]/Software Engineering [cs.SE] ,éco-responsable ,environnement ,énergie - Abstract
Depuis son origine, le génie logiciel s’est attaché à élaborer des méthodes, concepts et outils pour réduire significativement les coûts liés au développement (maintenance, réutilisation...) des logiciels, garantir leur intégrité, fiabilité... Cependant, pour relever le défi de la transition écologique, une nouvelle préoccupation doit être intégrée dans tous ces artefacts : le coût environnemental. Ainsi, le génie logiciel « éco-responsable » est la branche qui s’intéresse à l’efficience énergétique et à la durabilité des logiciels. Nous dégageons notamment 6 grandes pistes de recherche qui, combinées, peuvent apporter des réponses à la hauteur des enjeux.
- Published
- 2021
14. Location graphs : a formal approach to encapsulation and its implementation
- Author
-
Vassor, Martin, Inria Grenoble - Rhône-Alpes, Institut National de Recherche en Informatique et en Automatique (Inria), Université Grenoble Alpes [2020-....], and Jean-Bernard Stefani
- Subjects
Software engineering ,[INFO.INFO-PL]Computer Science [cs]/Programming Languages [cs.PL] ,Génie Logiciel ,Méthodes Formelles ,[INFO.INFO-SE]Computer Science [cs]/Software Engineering [cs.SE] ,Langage de programmation ,Formal Methods ,Programming language - Abstract
Component based systems ease programming, thanks to the ability tocompose multiples small and independent atoms into bigger aggregates,reducing the individual complexity of each atom. The counterpart of thisprogramming paradigm is the emergence of new kinds of errors related tothe very composition of those elements. Multiple approaches have beenproposed in order to certify the correctness of the composition withrespect to a chosen policy.The location graphs framework make the choice to authorise or forbideach component transition, according the topology of the component graphat the time of the transition. This model offers a wide range ofpolicies that can be implemented.This thesis is formed of two parts: first, we study the notion ofencapsulation, inherited from object oriented programming, in thecontext of component based programming, taking the location graphframework as a substrate; second, we propose an implementation, given asa Rust library, of the location graph framework.The study of the notion of encapsulation leads us to three maincontributions: (i) a new notion of strong bisimulation for locationgraphs, allowing the comparison of heterogeneous location graphinstances; (ii) the exhibition of a strong notion of encapsulation forthat model; and (iii) the instanciation, for illustration purposes, ofmultiple encapsulation policies, highlighting both the precision and thediversity of policies available in the location graph framework. Asidethe contribution of the implementation itself, we implemented multiplenon-trivial examples showing, in practice, how the original frameworkcan be used.; Les systèmes informatiques fondés sur des composants facilitent la programmation grâce à la possibilité de composer différents petits atomes indépendants en aggrégats plus gros, réduisant la complexité individuelle de chaque atome. La contrepartie à ce modèle de programmation est l'apparition de nouvelles erreurs liés à la composition de ces éléments. Plusieurs approches ont été proposées afin de garantir la correction de la composition par rapport à une politique choisie. L'approche du modèle des graphes de localités consiste à autoriser ou d'interdire chaque transition de composant, en fonction de la topologie du graphe de composants au moment de la transition. Ce modèle s'illustre par la diversité des politiques qui peuvent être implémentées.Cette thèse est composée de deux parties : dans un premier temps, nous étudions la notion de d'encapsulation, héritée de la programmation orientée objet, dans le contexte de la programmation par composant, en prenant pour support le modèle des graphes de localités; dans un second temps, nous proposons une implémentation, sous la forme d'une bibliothèque logicielle pour le langage Rust, du modèle de graphes de localités. L'étude de la notion d'encapsulation nous a conduit à trois contributions majeures :(i) une nouvelle notion de bi simulation forte pour les graphes de localités, permettant la mise en relation d'instances de graphes de localités hétérogènes; (ii) la mise en évidence d'une notion forte d'encapsulation dans ce modèle; (iii) l'instanciation, à titre d'exemple, de plusieurs politiques d'encapsulation, illustrant à la fois la finesse et la diversitédes politiques disponibles avec les graphes de localités. Au-delà de la contribution que constitue en elle-même l'implémentation, nous avons implémenté plusieurs exemples non triviaux, illustrant, en pratique, une utilisation possible du modèle original.
- Published
- 2021
15. Identification de clés pour le succès de projets de gestion informatisée de données environnementales à partir du logiciel Collec-Science
- Author
-
Eric Quinton, Christine Plumejeaud-Perreau, Sylvie Damy, Ecosystèmes aquatiques et changements globaux (UR EABX), Institut National de Recherche pour l’Agriculture, l’Alimentation et l’Environnement (INRAE), LIttoral ENvironnement et Sociétés - UMRi 7266 (LIENSs), Université de La Rochelle (ULR)-Centre National de la Recherche Scientifique (CNRS), Laboratoire Chrono-environnement - CNRS - UBFC (UMR 6249) (LCE), Centre National de la Recherche Scientifique (CNRS)-Université de Franche-Comté (UFC), and Université Bourgogne Franche-Comté [COMUE] (UBFC)-Université Bourgogne Franche-Comté [COMUE] (UBFC)
- Subjects
[INFO.INFO-DB]Computer Science [cs]/Databases [cs.DB] ,[SDE.IE]Environmental Sciences/Environmental Engineering ,Génie Logiciel ,Software Engineering ,Cycle de vie de la donnée du logiciel ,Database administrator ,Administrateur des données ,Data Life Cycle -Software - Abstract
International audience; In the context of research that is opening up to open-data practices for the dissemination of quality data, it becomes more necessary than ever to equip the academic world with the right tools for this ambitious objective. We are talking about software dedicated to management that can either be created in the laboratory where it is used, or distributed to a community of researchers, or taken off the shelf in the open-source software catalogue. Through this contribution , which is based on the Business Model Canvas analysis grid, we try to identify the key points for the success of such projects. In particular, we underline the need for a realistic estimation of the means required for the dissemination and appropriation of such software and the different profiles of personnel needed to carry out these projects, with a particular focus on the role of curator / administrator / data manager in the laboratories, the need to propose a hosting offer and the structuring of support.; Dans le cadre d'une recherche qui s'ouvre aux pratiques de l'open-data pour la diffusion de données de qualité, il devient plus que jamais nécessaire de doter le monde académique des « bons » outils pour cet objectif ambitieux. Nous parlons de logiciels dédiés à la gestion qui peuvent être soit créés dans le laboratoire où ils sont utilisés, soit diffusés vers une com-munauté de chercheurs, ou encore pris « sur étagère » dans le catalogue des logiciels libres. A travers cette contribution qui s'appuie sur la grille d'analyse Business Model Canvas, nous tentons d'identifier les points clés de la réussite de tels projets. Nous soulignons notamment la nécessité d'une estimation réaliste des moyens requis pour la diffusion et l'appropriation de tels logiciels et des différents profils de personnels nécessaires à la réalisation de ces projets, avec un focus particulier sur le rôle de curateur / administrateur / animateur des données dans les laboratoires, la nécessité de proposer une offre d'hébergement et la structuration de l'appui.
- Published
- 2021
16. Méthodes de recherche empirique en ingénierie des SI.
- Author
-
Assar, Saïd
- Abstract
Copyright of Ingénierie des Systèmes d'Information is the property of International Information & Engineering Technology Association (IIETA) and its content may not be copied or emailed to multiple sites or posted to a listserv without the copyright holder's express written permission. However, users may print, download, or email articles for individual use. This abstract may be abridged. No warranty is given about the accuracy of the copy. Users should refer to the original published version of the material for the full abstract. (Copyright applies to all Abstracts.)
- Published
- 2015
- Full Text
- View/download PDF
17. Un modelo de procesamiento de lenguaje natural para la detección de errores en requisitos de software.
- Author
-
Alberto Guzmán-Luna, Jaime, Gómez Arias, Sebastián Alonso, and Andrés Vélez-Carvajal, Carlos
- Abstract
Copyright of Revista Virtual Universidad Católica del Norte is the property of Revista Virtual Universidad Catolica del Norte and its content may not be copied or emailed to multiple sites or posted to a listserv without the copyright holder's express written permission. However, users may print, download, or email articles for individual use. This abstract may be abridged. No warranty is given about the accuracy of the copy. Users should refer to the original published version of the material for the full abstract. (Copyright applies to all Abstracts.)
- Published
- 2015
18. Modelamiento spin-off interinstitucional para la oferta de servicios en ingeniería del software.
- Author
-
Charry, Wilder Perdomo, Castro Castro, Carlos Arturo, Marín, Germán, Giraldo Mejía, Juan Camilo, Tabares, Ricardo Botero, and Jaramillo, Sebastián Gómez
- Abstract
Copyright of Revista Virtual Universidad Católica del Norte is the property of Revista Virtual Universidad Catolica del Norte and its content may not be copied or emailed to multiple sites or posted to a listserv without the copyright holder's express written permission. However, users may print, download, or email articles for individual use. This abstract may be abridged. No warranty is given about the accuracy of the copy. Users should refer to the original published version of the material for the full abstract. (Copyright applies to all Abstracts.)
- Published
- 2015
19. Towards using intelligent techniques to assist software specialists in their tasks
- Author
-
Ben Sghaier, Oussama and Sahraoui, Houari
- Subjects
Machine Learning ,Artificial Intelligence ,Multi-Objective Optimization ,Software Engineering ,Génie logiciel ,Optimisation multi-objectif ,Model-Driven Engineering ,Ingénierie dirigée par les modèles ,Apprentissage automatique ,Intelligence artificielle - Abstract
L’automatisation et l’intelligence constituent des préoccupations majeures dans le domaine de l’Informatique. Avec l’évolution accrue de l’Intelligence Artificielle, les chercheurs et l’industrie se sont orientés vers l’utilisation des modèles d’apprentissage automatique et d’apprentissage profond pour optimiser les tâches, automatiser les pipelines et construire des systèmes intelligents. Les grandes capacités de l’Intelligence Artificielle ont rendu possible d’imiter et même surpasser l’intelligence humaine dans certains cas aussi bien que d’automatiser les tâches manuelles tout en augmentant la précision, la qualité et l’efficacité. En fait, l’accomplissement de tâches informatiques nécessite des connaissances, une expertise et des compétences bien spécifiques au domaine. Grâce aux puissantes capacités de l’intelligence artificielle, nous pouvons déduire ces connaissances en utilisant des techniques d’apprentissage automatique et profond appliquées à des données historiques représentant des expériences antérieures. Ceci permettra, éventuellement, d’alléger le fardeau des spécialistes logiciel et de débrider toute la puissance de l’intelligence humaine. Par conséquent, libérer les spécialistes de la corvée et des tâches ordinaires leurs permettra, certainement, de consacrer plus du temps à des activités plus précieuses. En particulier, l’Ingénierie dirigée par les modèles est un sous-domaine de l’informatique qui vise à élever le niveau d’abstraction des langages, d’automatiser la production des applications et de se concentrer davantage sur les spécificités du domaine. Ceci permet de déplacer l’effort mis sur l’implémentation vers un niveau plus élevé axé sur la conception, la prise de décision. Ainsi, ceci permet d’augmenter la qualité, l’efficacité et productivité de la création des applications. La conception des métamodèles est une tâche primordiale dans l’ingénierie dirigée par les modèles. Par conséquent, il est important de maintenir une bonne qualité des métamodèles étant donné qu’ils constituent un artéfact primaire et fondamental. Les mauvais choix de conception, ainsi que les changements conceptuels répétitifs dus à l’évolution permanente des exigences, pourraient dégrader la qualité du métamodèle. En effet, l’accumulation de mauvais choix de conception et la dégradation de la qualité pourraient entraîner des résultats négatifs sur le long terme. Ainsi, la restructuration des métamodèles est une tâche importante qui vise à améliorer et à maintenir une bonne qualité des métamodèles en termes de maintenabilité, réutilisabilité et extensibilité, etc. De plus, la tâche de restructuration des métamodèles est délicate et compliquée, notamment, lorsqu’il s’agit de grands modèles. De là, automatiser ou encore assister les architectes dans cette tâche est très bénéfique et avantageux. Par conséquent, les architectes de métamodèles pourraient se concentrer sur des tâches plus précieuses qui nécessitent de la créativité, de l’intuition et de l’intelligence humaine. Dans ce mémoire, nous proposons une cartographie des tâches qui pourraient être automatisées ou bien améliorées moyennant des techniques d’intelligence artificielle. Ensuite, nous sélectionnons la tâche de métamodélisation et nous essayons d’automatiser le processus de refactoring des métamodèles. A cet égard, nous proposons deux approches différentes: une première approche qui consiste à utiliser un algorithme génétique pour optimiser des critères de qualité et recommander des solutions de refactoring, et une seconde approche qui consiste à définir une spécification d’un métamodèle en entrée, encoder les attributs de qualité et l’absence des design smells comme un ensemble de contraintes et les satisfaire en utilisant Alloy., Automation and intelligence constitute a major preoccupation in the field of software engineering. With the great evolution of Artificial Intelligence, researchers and industry were steered to the use of Machine Learning and Deep Learning models to optimize tasks, automate pipelines, and build intelligent systems. The big capabilities of Artificial Intelligence make it possible to imitate and even outperform human intelligence in some cases as well as to automate manual tasks while rising accuracy, quality, and efficiency. In fact, accomplishing software-related tasks requires specific knowledge and skills. Thanks to the powerful capabilities of Artificial Intelligence, we could infer that expertise from historical experience using machine learning techniques. This would alleviate the burden on software specialists and allow them to focus on valuable tasks. In particular, Model-Driven Engineering is an evolving field that aims to raise the abstraction level of languages and to focus more on domain specificities. This allows shifting the effort put on the implementation and low-level programming to a higher point of view focused on design, architecture, and decision making. Thereby, this will increase the efficiency and productivity of creating applications. For its part, the design of metamodels is a substantial task in Model-Driven Engineering. Accordingly, it is important to maintain a high-level quality of metamodels because they constitute a primary and fundamental artifact. However, the bad design choices as well as the repetitive design modifications, due to the evolution of requirements, could deteriorate the quality of the metamodel. The accumulation of bad design choices and quality degradation could imply negative outcomes in the long term. Thus, refactoring metamodels is a very important task. It aims to improve and maintain good quality characteristics of metamodels such as maintainability, reusability, extendibility, etc. Moreover, the refactoring task of metamodels is complex, especially, when dealing with large designs. Therefore, automating and assisting architects in this task is advantageous since they could focus on more valuable tasks that require human intuition. In this thesis, we propose a cartography of the potential tasks that we could either automate or improve using Artificial Intelligence techniques. Then, we select the metamodeling task and we tackle the problem of metamodel refactoring. We suggest two different approaches: A first approach that consists of using a genetic algorithm to optimize set quality attributes and recommend candidate metamodel refactoring solutions. A second approach based on mathematical logic that consists of defining the specification of an input metamodel, encoding the quality attributes and the absence of smells as a set of constraints and finally satisfying these constraints using Alloy.
- Published
- 2021
20. Approche Agile du Model-Based Testing pour les tests fonctionnels des SI d’entreprise
- Author
-
Bernard, Elodie, Franche-Comté Électronique Mécanique, Thermique et Optique - Sciences et Technologies (UMR 6174) (FEMTO-ST), Université de Technologie de Belfort-Montbeliard (UTBM)-Ecole Nationale Supérieure de Mécanique et des Microtechniques (ENSMM)-Université de Franche-Comté (UFC), Université Bourgogne Franche-Comté [COMUE] (UBFC)-Université Bourgogne Franche-Comté [COMUE] (UBFC)-Centre National de la Recherche Scientifique (CNRS), Université Bourgogne Franche-Comté, Bruno Legeard, and Fabrice Ambert
- Subjects
Software testing process ,Automation ,[INFO.INFO-PF]Computer Science [cs]/Performance [cs.PF] ,Automatisation ,Refactorisation de test ,Model-Based Testing ,Génie Logiciel ,Test refactoring ,Software Engineering ,Processus de test logiciel ,Agile Methods ,Méthodes Agiles - Abstract
The digital and Agile transformation of large organizations is leading to a need to transform software testing practices in depth. Putting IT system developments into production with increasingly short delays, on increasingly complex systems, challenges the traditional practices of functional testing based on a strong manual component (analysis, design and execution).New approaches and new test tools must therefore adapt to the short iterations of Agile, as well as to the expansion of the systems developed, composed of a set of products in Agile at scale contexts, while ensuring the quality of the systems in production.Adapting to Agile means that approaches and tools will need to be effective in the conception and implementation of tests for different functional coverage objectives. They will have to allow testing a small set of new user stories while keeping the end-to-end test repository of the main application use cases operational. This is in order to manage the evolution of the system as a whole and to extend the repository of automated regression tests.In terms of execution, the approaches and tools will have to support both manual and automated test execution with seamless adaptation from the first to the second. Systematic execution of all manual tests is not possible, hence the strong need to automate tests. The implementation of automation processes is a key point in the success of projects, but this activity currently remains complex and expensive. It allows to guarantee the quality of the application through the different iterations, especially in Agile contexts, where the deliveries are regular and/or the time to test manually increases with the sprints. Automating a set of test cases reduces the burden of manual testing and facilitates the detection of regressions.Another challenge for software testing in the Agile transformation will be to manage to maintain the growing manual test suites over iterations. These test suites are usually described in natural language and, over time, become disorganized and more difficult to use and maintain. There is therefore a real challenge in proposing approaches and tools to maintain these test suites in order to make them more usable and easier to maintain, in contexts where it is necessary to be able to act quickly and efficiently.To meet these needs, this thesis proposes an approach called ALME (ALME - Agile Lightweight Model-Based Testing for Enterprise IT) which is based on the fundamental concepts of Model-Based-Testing, redesigned to meet the challenges of testing large information systems in the context of an iterative and incremental software development lifecycle. In particular, this overhaul focuses on the articulation between business process modeling and business rule management for the generation of functional tests.The contributions of these researches cover the phases of analysis, conception and implementation of functional tests and are the following:-Extending the scientific state of the art in Model-Based-Testing, on test automation, refactoring, testing in Agile and Agile at scale.-Extend the state of the art on Agile testing practices at scale through a qualitative and quantitative analysis of current practices and solutions to problems encountered by software development teams.-Define and implement the ALME approach.-Define and implement an automation management approach.-Define and implement a manual test suite refactoring approach.These researches were conducted within the FEMTO-ST Institute - UMR 6174 and the Sogeti company within the context of a CIFRE thesis started in November 2017.; La transformation digitale et Agile des grandes organisations induit un besoin de transformer en profondeur les pratiques du test logiciel. La mise en production des évolutions des systèmes informatiques avec des délais de plus en plus courts, sur des systèmes de plus en plus complexes, remet en cause les pratiques traditionnelles du test fonctionnel fondées sur une forte composante manuelle (analyse, conception et exécution).Les nouvelles approches et les nouveaux outils de test doivent s'adapter aux courtes itérations de l'Agile, ainsi qu’à l'expansion des systèmes développés, composés d’un ensemble de produits dans des contextes d’Agilité à l'échelle, tout en garantissant la qualité des systèmes en production.L'adaptation à l'Agilité signifie que les approches et outils devront être efficaces dans la conception et l’implémentation des tests pour différents objectifs de couverture fonctionnelles. Ils devront permettre de tester un petit ensemble de nouveaux récits utilisateurs tout en maintenant opérationnel le référentiel des tests de bout en bout reprenant les principaux cas d'utilisation des applications. Ceci de manière à gérer les évolutions du système et à étendre le référentiel des tests de régression automatisés.Du point de vue de l’exécution, les approches et outils devront supporter l'exécution de tests manuels et automatisés avec une adaptation transparente des premiers aux seconds. L’exécution systématique de l’ensemble des tests manuels n’est pas possible d’où la forte nécessité à automatiser les tests. La mise en place de processus d’automatisation est un point clé dans la réussite des projets, mais cette activité reste complexe et coûteuse. Elle permet de garantir la qualité de l’application à travers les différentes itérations, notamment dans les contextes Agile, ou les livraisons sont régulières et/ou le temps pour tester manuellement croît au fil des sprints. Automatiser un ensemble de cas de test permet d’alléger la charge de test manuel et facilite la détection de régressions.Un autre enjeu des tests logiciel dans la transformation Agile sera de parvenir à maintenir les suites de tests manuels grandissantes au fil des itérations. Ces suites de tests sont généralement décrites en langage naturel et, avec le temps, deviennent désorganisées et plus difficiles à utiliser et à maintenir. Il existe donc un réel défi à proposer des approches et des outils permettant de maintenir ces suites de tests afin de les rendre plus utilisables et plus faciles à maintenir.Pour répondre à ces besoins cette thèse propose une approche nommée ALME (ALME - Agile Lightweight Model-Based Testing for Enterprise IT) qui s'appuie sur les concepts fondamentaux du Model-Based-Testing (MBT, test à partir de modèles) refondés pour répondre aux enjeux du test des grands systèmes d'information dans le contexte d’un cycle de vie de développement logiciel itératif et incrémental. Cette refondation porte en particulier sur l'articulation entre la modélisation de processus métier et la gestion de règles métier pour le test pour la génération des tests fonctionnels.Les contributions de ces travaux de recherche couvrent les phases d'analyse, de conception et d’implémentation des tests fonctionnels et sont les suivantes :-Étendre l’état de l’art scientifique en MBT, sur l'automatisation des tests, le refactoring, le test dans l'Agilité et l'Agilité à l'échelle.-Étendre l'état de l'art sur les pratiques en test dans l'Agilité à l'échelle par une analyse qualitative et quantitative des pratiques actuelles et des solutions aux problèmes rencontrés par les équipes de développement du logiciel.Définir et mettre en application :-l'approche ALME.-une approche de gestion de l'automatisation.-une approche de refactoring des suites de tests manuels.Ces travaux de recherches ont été conduits au sein de l’institut FEMTO-ST,UMR 6174 et de la société Sogeti dans le cadre d’une thèse CIFRE démarrée en novembre 2017.
- Published
- 2021
21. Une méthodologie fondée sur les modèles pour unifier l'ingénierie logicielle dans l'internet des objets
- Author
-
Berrouyne, Imad, NaoMod - Nantes Software Modeling Group (NaoMod), Laboratoire des Sciences du Numérique de Nantes (LS2N), IMT Atlantique Bretagne-Pays de la Loire (IMT Atlantique), Institut Mines-Télécom [Paris] (IMT)-Institut Mines-Télécom [Paris] (IMT)-Université de Nantes - UFR des Sciences et des Techniques (UN UFR ST), Université de Nantes (UN)-Université de Nantes (UN)-École Centrale de Nantes (ECN)-Centre National de la Recherche Scientifique (CNRS)-IMT Atlantique Bretagne-Pays de la Loire (IMT Atlantique), Université de Nantes (UN)-Université de Nantes (UN)-École Centrale de Nantes (ECN)-Centre National de la Recherche Scientifique (CNRS), Département Automatique, Productique et Informatique (IMT Atlantique - DAPI), Institut Mines-Télécom [Paris] (IMT)-Institut Mines-Télécom [Paris] (IMT), Ecole nationale supérieure Mines-Télécom Atlantique, Université du Québec à Chicoutimi, and Jean-Claude Royer
- Subjects
Internet of things ,Transformation des modèles ,Software engineering ,Internet des objets ,Politiques de contrôle ,Ingénierie dirigée par les modèles ,Policy enforcement ,[INFO.INFO-MO]Computer Science [cs]/Modeling and Simulation ,Model transformation ,[INFO.INFO-NI]Computer Science [cs]/Networking and Internet Architecture [cs.NI] ,Génération de code ,Génie logiciel ,Code generation ,Model-driven engineering - Abstract
The Internet of Things (IoT) aims for connecting Anything, Anywhere, Anytime (AAA).This assumption brings about a good deal of software engineering challenges. These challenges constitute a serious obstacle to its wider adoption. The main feature of the IoT is genericity, i.e.,enabling things to connect seamlessly regardless of their technologies. Model-Driven Engineering (MDE) is a paradigm that advocates using models to address software engineering problems.MDE could help to meet the genericity of the IoT from a software engineering perspective. In that sense, the IoT could be a requirement provider on the one hand and MDE its solution provider on the other. Existing MDE approaches focus on modeling the behavior of things. But, little attention has been paid to network-related modeling. The present thesis presents a methodology to create smart networks of things based on MDE. It aims to cover and leverage the network-related aspects of an IoT application compared to the existing work. The principle we use consists of avoiding the intrinsic heterogeneity of the IoT by separating the specification of the network, i.e., the things, the communication scheme, and the constraints, from their concrete implementation, i.e., the low-level artifacts (e.g., source code). Technically, the methodology relies on a model based Domain-Specific Language and a code generator. The former enables the specification of the network, and the latter provides a procedure to generate the low-level artifacts from this specification. The adoption of this methodology permits making software engineering of IoT applications more deterministic and saving a significant amount of lines of code compared to the state of practice.; L'Internet des objets (IdO) vise à connecter tout objet, partout, en tout temps (AAA). Cette hypothèse entraîne de nombreux défis en matière de génie logiciel. Ces défis constituent un sérieux obstacle à son adoption à grande échelle. L'une des principales caractéristiques de l'IdO est la généricité, c'est-à-dire permettre aux objets de se connecter de manière transparente, quelles que soient leurs technologies. L'Ingénierie Dirigée par les Modèles (IDM) est un paradigme qui préconise l'utilisation de modèles pour résoudre les problèmes de génie logiciel. L'IDM pourrait aider à répondre au besoin de généricité de l'IdO du point de vue du génie logiciel. Les approches d'IDM existantes se focalisent essentiellement sur la modélisation du comportement des objets. Peu d'attention a été accordée à la modélisation liée au réseau. La présente thèse présente une méthodologie pour l'IdO basée sur l'IDM. Fondamentalement, elle fournit une solution pour créer des réseaux intelligents d'objets. Le principe que nous utilisons consiste à contourner l'hétérogénéité intrinsèque de l'IdO en séparant la spécification du réseau, c'est-à-dire les objets, le schéma de communication et les contraintes, de son implémentation concrète, c'est-à-dire les artefacts logiciels de bas niveau (par exemple, le code source). Techniquement, la méthodologie repose sur un langage dédié basé sur les modèles pour la spécification du réseau et une procédure pour la génération du code des artefacts de bas niveau à partir de cette spécification. L'adoption de cette méthodologie rend l'ingénierie logicielle des applications IdO plus rigoureuse, permet de prévenir les bogues plus tôt et de gagner du temps.
- Published
- 2021
22. Describing Scrum through experimentation with two start-ups
- Author
-
Memmi, Gérard, Laboratoire Traitement et Communication de l'Information (LTCI), Institut Mines-Télécom [Paris] (IMT)-Télécom Paris, and LTCI - Laboratoire Traitement et Communication de l'Information [Paris]
- Subjects
Scrum method ,backlog ,jeune pousse ,méthode scrum ,génie logiciel ,sprint ,Start-up ,Software Engineering ,Agile Manifesto ,[INFO.INFO-SE]Computer Science [cs]/Software Engineering [cs.SE] ,Manifeste Agile - Abstract
Two experiments conducted in two American seedlings serve as a basis for describing and discussing the scrum method. The context of a start-up makes the importance of issues related to the allocation of limited resources and strict adherence to deadlines even more critical. After introducing the Agile Manifesto, the scrum process is described. The now classic concepts of backlogs along with the other artifacts of the Scrum method are integrated with more traditional product development artifacts in order to scale up. The concept of sprint is slightly modified to better adapt to an environment where resources are scarce. The management of product deliveries is then discussed, in particular those corresponding to major and critical product versions. The latter involve organizing and coordinating several scrum teams. This aspect of the method, at least for the two experiments considered, is essential. A set of fundamental issues must be resolved for the scrum method to be adopted by the development teams and succeed to scale up. This report concludes with several recommendations to improve the productivity of product development in a context similar to our two start-ups.; Deux expériences conduites dans deux jeunes pousses américaines servent de base pour décrire et discuter sur la méthode scrum. Le contexte de jeune pousse rend encore plus critique l’importance des questions relatives à l’affectation de ressources limitées et au respect rigoureux des délais. Après avoir introduit le manifeste Agile, le processus scrum est décrit. Les concepts désormais classiques de backlogs accompagnés des autres artefacts de la méthode Scrum sont intégrés à des artefacts de développement produit plus traditionnels afin de passer à l'échelle. Le concept de sprint est légèrement modifié pour mieux s’adapter à un environnement où les ressources sont rares. La gestion des livraisons produit est ensuite discutée en particulier celles correspondant à des versions majeures et critiques du produit. Ces dernières impliquent d’organiser et de coordonner plusieurs équipes scrum. Cet aspect de la méthode, tout du moins pour les deux expériences considérées, est essentiel. Un ensemble de questions fondamentales doivent être résolues pour que la méthode scrum soit adoptées par les équipes de développement et réussisse à passer à l’échelle. Ce rapport se termine par plusieurs recommandations pour améliorer la productivité du développement produit dans un contexte similaire à nos deux jeunes pousses.
- Published
- 2020
23. Description de la méthode SCRUM à travers deux expériences en entreprise
- Author
-
Memmi, Gérard, Laboratoire Traitement et Communication de l'Information (LTCI), Institut Mines-Télécom [Paris] (IMT)-Télécom Paris, and LTCI - Laboratoire Traitement et Communication de l'Information [Paris]
- Subjects
Scrum method ,backlog ,jeune pousse ,méthode scrum ,génie logiciel ,sprint ,Start-up ,Software Engineering ,Agile Manifesto ,[INFO.INFO-SE]Computer Science [cs]/Software Engineering [cs.SE] ,Manifeste Agile - Abstract
Two experiments conducted in two American seedlings serve as a basis for describing and discussing the scrum method. The context of a start-up makes the importance of issues related to the allocation of limited resources and strict adherence to deadlines even more critical. After introducing the Agile Manifesto, the scrum process is described. The now classic concepts of backlogs along with the other artifacts of the Scrum method are integrated with more traditional product development artifacts in order to scale up. The concept of sprint is slightly modified to better adapt to an environment where resources are scarce. The management of product deliveries is then discussed, in particular those corresponding to major and critical product versions. The latter involve organizing and coordinating several scrum teams. This aspect of the method, at least for the two experiments considered, is essential. A set of fundamental issues must be resolved for the scrum method to be adopted by the development teams and succeed to scale up. This report concludes with several recommendations to improve the productivity of product development in a context similar to our two start-ups.; Deux expériences conduites dans deux jeunes pousses américaines servent de base pour décrire et discuter sur la méthode scrum. Le contexte de jeune pousse rend encore plus critique l’importance des questions relatives à l’affectation de ressources limitées et au respect rigoureux des délais. Après avoir introduit le manifeste Agile, le processus scrum est décrit. Les concepts désormais classiques de backlogs accompagnés des autres artefacts de la méthode Scrum sont intégrés à des artefacts de développement produit plus traditionnels afin de passer à l'échelle. Le concept de sprint est légèrement modifié pour mieux s’adapter à un environnement où les ressources sont rares. La gestion des livraisons produit est ensuite discutée en particulier celles correspondant à des versions majeures et critiques du produit. Ces dernières impliquent d’organiser et de coordonner plusieurs équipes scrum. Cet aspect de la méthode, tout du moins pour les deux expériences considérées, est essentiel. Un ensemble de questions fondamentales doivent être résolues pour que la méthode scrum soit adoptées par les équipes de développement et réussisse à passer à l’échelle. Ce rapport se termine par plusieurs recommandations pour améliorer la productivité du développement produit dans un contexte similaire à nos deux jeunes pousses.
- Published
- 2020
24. Automotive embedded software design using formal methods
- Author
-
Todorov, Vassil, Laboratoire de Recherche en Informatique (LRI), CentraleSupélec-Université Paris-Saclay-Centre National de la Recherche Scientifique (CNRS), Université Paris-Saclay, Frédéric Boulanger, and STAR, ABES
- Subjects
[INFO.INFO-SY] Computer Science [cs]/Systems and Control [cs.SY] ,Model checking ,Preuve déductive ,Software engineering ,[INFO.INFO-PL]Computer Science [cs]/Programming Languages [cs.PL] ,Formal methods ,Abstract interpretation ,Deductive proof ,[INFO.INFO-MO]Computer Science [cs]/Modeling and Simulation ,[INFO.INFO-PL] Computer Science [cs]/Programming Languages [cs.PL] ,Vérification de logiciel ,Méthodes formelles ,Software verification ,Interprétation abstraite ,[INFO.INFO-SY]Computer Science [cs]/Systems and Control [cs.SY] ,Génie logiciel ,[INFO.INFO-MO] Computer Science [cs]/Modeling and Simulation - Abstract
The growing share of driver assistance functions, their criticality, as well as the prospect of certification of these functions, make their verification and validation necessary with a level of requirement that testing alone cannot ensure. For several years now, other industries such as aeronautics and railways have been subject to equivalent contexts. To respond to certain constraints, they have locally implemented formal methods. We are interested in the motivations and criteria that led to the use of formal methods in these industries in order to transpose them to automotive scenarios and identify the potential scope of application.In this thesis, we present our case studies and propose methodologies for the use of formal methods by non-expert engineers. Inductive model checking for a model-driven development process, abstract interpretation to demonstrate the absence of run-time errors in the code and deductive proof for critical library functions.Finally, we propose new algorithms to solve the problems identified during our experiments. These are, firstly, an invariant generator and a method using the semantics of data to process properties involving long-running timers in an efficient way, and secondly, an efficient algorithm to measure the coverage of the model by the properties using mutation techniques., La part croissante des fonctions d'assistance à la conduite, leur criticité, ainsi que la perspective d'une certification de ces fonctions, rendent nécessaire leur vérification et leur validation avec un niveau d'exigence que le test seul ne peut assurer.Depuis quelques années déjà d’autres domaines comme l’aéronautique ou le ferroviaire sont soumis à des contextes équivalents. Pour répondre à certaines contraintes ils ont localement mis en place des méthodes formelles. Nous nous intéressons aux motivations et aux critères qui ont conduit à l’utilisation des méthodes formelles dans ces domaines afin de les transposer sur des scénarios automobiles et identifier le périmètre potentiel d'application.Dans cette thèse, nous présentons nos études de cas et proposons des méthodologies pour l'usage de méthodes formelles par des ingénieurs non-experts. Le model checking inductif pour un processus de développement utilisant des modèles, l'interprétation abstraite pour démontrer l'absence d'erreurs d'exécution du code et la preuve déductive pour des cas de fonctions critiques de librairie.Enfin, nous proposons de nouveaux algorithmes pour résoudre les problèmes identifiés lors de nos expérimentations. Il s'agit d'une part d'un générateur d'invariants et d'une méthode utilisant la sémantique des données pour traiter efficacement des propriétés comportant du temps long, et d'autre part d'un algorithme efficace pour mesurer la couverture du modèle par les propriétés en utilisant des techniques de mutation.
- Published
- 2020
25. Intégration de méthodes formelles dans la conception des fonctions logicielles automobiles
- Author
-
Vassil Todorov, Laboratoire de Recherche en Informatique (LRI), CentraleSupélec-Université Paris-Saclay-Centre National de la Recherche Scientifique (CNRS), Université Paris-Saclay, and Frédéric Boulanger
- Subjects
Model checking ,Preuve déductive ,Software engineering ,[INFO.INFO-PL]Computer Science [cs]/Programming Languages [cs.PL] ,Formal methods ,Abstract interpretation ,Deductive proof ,[INFO.INFO-MO]Computer Science [cs]/Modeling and Simulation ,Vérification de logiciel ,Méthodes formelles ,Software verification ,Interprétation abstraite ,[INFO.INFO-SY]Computer Science [cs]/Systems and Control [cs.SY] ,Génie logiciel - Abstract
The growing share of driver assistance functions, their criticality, as well as the prospect of certification of these functions, make their verification and validation necessary with a level of requirement that testing alone cannot ensure. For several years now, other industries such as aeronautics and railways have been subject to equivalent contexts. To respond to certain constraints, they have locally implemented formal methods. We are interested in the motivations and criteria that led to the use of formal methods in these industries in order to transpose them to automotive scenarios and identify the potential scope of application.In this thesis, we present our case studies and propose methodologies for the use of formal methods by non-expert engineers. Inductive model checking for a model-driven development process, abstract interpretation to demonstrate the absence of run-time errors in the code and deductive proof for critical library functions.Finally, we propose new algorithms to solve the problems identified during our experiments. These are, firstly, an invariant generator and a method using the semantics of data to process properties involving long-running timers in an efficient way, and secondly, an efficient algorithm to measure the coverage of the model by the properties using mutation techniques.; La part croissante des fonctions d'assistance à la conduite, leur criticité, ainsi que la perspective d'une certification de ces fonctions, rendent nécessaire leur vérification et leur validation avec un niveau d'exigence que le test seul ne peut assurer.Depuis quelques années déjà d’autres domaines comme l’aéronautique ou le ferroviaire sont soumis à des contextes équivalents. Pour répondre à certaines contraintes ils ont localement mis en place des méthodes formelles. Nous nous intéressons aux motivations et aux critères qui ont conduit à l’utilisation des méthodes formelles dans ces domaines afin de les transposer sur des scénarios automobiles et identifier le périmètre potentiel d'application.Dans cette thèse, nous présentons nos études de cas et proposons des méthodologies pour l'usage de méthodes formelles par des ingénieurs non-experts. Le model checking inductif pour un processus de développement utilisant des modèles, l'interprétation abstraite pour démontrer l'absence d'erreurs d'exécution du code et la preuve déductive pour des cas de fonctions critiques de librairie.Enfin, nous proposons de nouveaux algorithmes pour résoudre les problèmes identifiés lors de nos expérimentations. Il s'agit d'une part d'un générateur d'invariants et d'une méthode utilisant la sémantique des données pour traiter efficacement des propriétés comportant du temps long, et d'autre part d'un algorithme efficace pour mesurer la couverture du modèle par les propriétés en utilisant des techniques de mutation.
- Published
- 2020
26. From SSA to Synchronous Concurrency and Back
- Author
-
Pompougnac, Hugo, Beaugnon, Ulysse, Cohen, Albert, Potop-Butucaru, Dumitru, Logical Time for Formal Embedded System Design (KAIROS), Inria Sophia Antipolis - Méditerranée (CRISAM), Institut National de Recherche en Informatique et en Automatique (Inria)-Institut National de Recherche en Informatique et en Automatique (Inria)-COMmunications, Réseaux, systèmes Embarqués et Distribués (Laboratoire I3S - COMRED), Laboratoire d'Informatique, Signaux, et Systèmes de Sophia Antipolis (I3S), Université Nice Sophia Antipolis (1965 - 2019) (UNS), COMUE Université Côte d'Azur (2015-2019) (COMUE UCA)-COMUE Université Côte d'Azur (2015-2019) (COMUE UCA)-Centre National de la Recherche Scientifique (CNRS)-Université Côte d'Azur (UCA)-Université Nice Sophia Antipolis (1965 - 2019) (UNS), COMUE Université Côte d'Azur (2015-2019) (COMUE UCA)-COMUE Université Côte d'Azur (2015-2019) (COMUE UCA)-Centre National de la Recherche Scientifique (CNRS)-Université Côte d'Azur (UCA)-Laboratoire d'Informatique, Signaux, et Systèmes de Sophia Antipolis (I3S), COMUE Université Côte d'Azur (2015-2019) (COMUE UCA)-COMUE Université Côte d'Azur (2015-2019) (COMUE UCA)-Centre National de la Recherche Scientifique (CNRS)-Université Côte d'Azur (UCA), Google Inc, Research at Google, INRIA Sophia Antipolis - Méditerranée (France), Université Nice Sophia Antipolis (... - 2019) (UNS), and COMUE Université Côte d'Azur (2015-2019) (COMUE UCA)-COMUE Université Côte d'Azur (2015-2019) (COMUE UCA)-Centre National de la Recherche Scientifique (CNRS)-Université Côte d'Azur (UCA)-Université Nice Sophia Antipolis (... - 2019) (UNS)
- Subjects
Software engineering ,[INFO.INFO-PL]Computer Science [cs]/Programming Languages [cs.PL] ,Conception de langage ,Embedded systems ,Sémantique ,Optimisation de compilateur ,Concurrence ,Systèmes embarqués ,Semantics ,Declarative languages ,Language design ,Systèmes temps réel ,Génération de code ,Implémentation de langage ,Concurrency ,Synchronous languages ,Langages synchrones ,Génie logiciel ,Code generation ,Compiler optimization ,Real-time systems ,Langages déclaratifs ,Language implementation - Abstract
We are interested in the programming and compilation of reactive, real-time systems. More specifically, we would like to understand the fundamental principles common to generalpurpose and synchronous languages—used to model reactive control systems—and from this to derive a compilation flow suitable for both high-performance and reactive aspects of a modern control application. To this end, we first identify the key operational mechanisms of synchronous languages that SSA does not cover: synchronization of computations with an external time base, cyclic I/O, and the semantic notion of absent value which allows the natural representation of variables whose initialization does not follow simple structural rules such as control flow dominance. Then, we show how the SSA form in its MLIR implementation can be seamlessly extended tocover these mechanisms, enabling the application of all SSA-based transformations and optimizations. We illustrate this on the representation and compilation of the Lustre dataflow synchronous language. Most notably, in the analysis and compilation of Lustre embedded into MLIR, theinitialization-related static analysis and code generation aspects can be fully separated from memory allocation and causality aspects, the latter being covered by the existing dominance-based algorithms of MLIR/SSA, resulting in a high degree of conceptual and code reuse. Our work allowsthe specification of both computational and control aspects of high-performance real-time applications. It paves the way for the definition of more efficient design and implementation flows where real-time ressource allocation drives parallelization and optimization.; Nous traitons de la programmation et de la compilation de systèmes réactifs, temps-réel. En particulier, nous cherchons à comprendre les principes fondamentaux communs à la programmation généraliste et aux langages synchrones—utilisés pour modéliser les systèmes de contrôle—et de là nous dérivons une méthode de compilation adaptée aux aspects réactifs et haute performance d’une application moderne. À cette fin, nous commençons par identifier les mécanismes des langages synchrones que SSA n’implémente pas : la synchronisation des calculs avec une base de temps externe, les entrées-sorties cycliques, et la notion sémantique de valeur absente, qui permet la représentation naturelle de variables dont l’initialisation ne suit pas de simples règles structurelles. Ensuite, nous montrons de quelle manière la forme SSA, dans l’implémentation de MLIR, peut être étendue pour implémenter ces mécanismes et leur appliquer toutes les transformations et optimisations basées sur SSA. Nous illustrons ces mécanismes par la représentation et la compilation du langage synchrone, flot de données Lustre. Nous montrons que les problèmes d’analyse statique pour l’initialisation, de génération de code, peuvent être entièrement distingués des problèmes d’allocation mémoire et de causalité, ces derniers étant pris en charge par les algorithmes d’analyse de la dominance de MLIR/SSA, ce qui permet un haut niveau de réutilisation du code et des concepts. Notre travail permet la spécification d’applications temps-réel, du point de vue du contrôle comme du calcul. Il ouvre la voie à ladéfinition de processus de conception et d’implémentation plus efficaces, où la parallélisation et l’optimisation procèdent de l’allocation des ressources temps-réel.
- Published
- 2020
27. K-set agreement bounds in round-based models through combinatorial topology
- Author
-
Armando Castañeda, Adam Shimi, Assistance à la Certification d’Applications DIstribuées et Embarquées (IRIT-ACADIE), Institut de recherche en informatique de Toulouse (IRIT), Université Toulouse 1 Capitole (UT1), Université Fédérale Toulouse Midi-Pyrénées-Université Fédérale Toulouse Midi-Pyrénées-Université Toulouse - Jean Jaurès (UT2J)-Université Toulouse III - Paul Sabatier (UT3), Université Fédérale Toulouse Midi-Pyrénées-Centre National de la Recherche Scientifique (CNRS)-Institut National Polytechnique (Toulouse) (Toulouse INP), Université Fédérale Toulouse Midi-Pyrénées-Université Toulouse 1 Capitole (UT1), Université Fédérale Toulouse Midi-Pyrénées, Universidad Nacional Autónoma de México (UNAM), ANR-16-CE25-0006,PARDI,Vérification de systèmes distribués paramétrés(2016), Centre National de la Recherche Scientifique - CNRS (FRANCE), Institut National Polytechnique de Toulouse - Toulouse INP (FRANCE), Universidad Nacional Autónoma de México - UNAM (MEXICO), Université Toulouse III - Paul Sabatier - UT3 (FRANCE), Université Toulouse - Jean Jaurès - UT2J (FRANCE), and Université Toulouse 1 Capitole - UT1 (FRANCE)
- Subjects
TheoryofComputation_MISCELLANEOUS ,[INFO.INFO-AR]Computer Science [cs]/Hardware Architecture [cs.AR] ,K-set ,Computer science ,Upper bounds ,Structure (category theory) ,Combinatorial topology ,0102 computer and information sciences ,02 engineering and technology ,[INFO.INFO-SE]Computer Science [cs]/Software Engineering [cs.SE] ,01 natural sciences ,Interface homme-machine ,Set (abstract data type) ,Distributed computability ,[INFO.INFO-CR]Computer Science [cs]/Cryptography and Security [cs.CR] ,Architectures Matérielles ,0202 electrical engineering, electronic engineering, information engineering ,Round-based models ,Initial value problem ,Génie logiciel ,[INFO.INFO-HC]Computer Science [cs]/Human-Computer Interaction [cs.HC] ,Graph property ,Discrete mathematics ,020203 distributed computing ,Ring (mathematics) ,Computability ,Lower bounds ,Modélisation et simulation ,Systèmes embarqués ,[INFO.INFO-MO]Computer Science [cs]/Modeling and Simulation ,010201 computation theory & mathematics ,Cryptographie et sécurité ,Set-agreeement ,[INFO.INFO-ES]Computer Science [cs]/Embedded Systems - Abstract
Round-based models are very common message-passing models; combinatorial topology applied to distributed computing provides sweeping results like general lower bounds. We combine both to study the computability of k-set agreement. Among all the possible round-based models, we consider oblivious ones, where the constraints are given only round per round by a set of allowed graphs. And among oblivious models, we focus on closed-above ones, that is models where the set of possible graphs contains all graphs with more edges than some starting graphs. These capture intuitively the underlying structure required by some communication model, like containing a ring. We then derive lower bounds and upper bounds in one round for k-set agreement, such that these bounds are proved using combinatorial topology but stated only in terms of graph properties. These bounds extend to multiple rounds when limiting our algorithms to be oblivious - recalling only pairs of processes and initial value, not who send what and when.
- Published
- 2020
28. Model-Based Testing of Post-WIMP Interactions Using Object Oriented Petri-nets
- Author
-
Philippe Palanque, David Navarre, José Creissac Campos, Alexandre Canny, Centre National de la Recherche Scientifique - CNRS (FRANCE), Institut National Polytechnique de Toulouse - Toulouse INP (FRANCE), Université Toulouse III - Paul Sabatier - UT3 (FRANCE), Université Toulouse - Jean Jaurès - UT2J (FRANCE), Université Toulouse 1 Capitole - UT1 (FRANCE), Universidade do Minho (PORTUGAL), Interactive Critical Systems (IRIT-ICS), Institut de recherche en informatique de Toulouse (IRIT), Université Toulouse 1 Capitole (UT1), Université Fédérale Toulouse Midi-Pyrénées-Université Fédérale Toulouse Midi-Pyrénées-Université Toulouse - Jean Jaurès (UT2J)-Université Toulouse III - Paul Sabatier (UT3), Université Fédérale Toulouse Midi-Pyrénées-Centre National de la Recherche Scientifique (CNRS)-Institut National Polytechnique (Toulouse) (Toulouse INP), Université Fédérale Toulouse Midi-Pyrénées-Université Toulouse 1 Capitole (UT1), Université Fédérale Toulouse Midi-Pyrénées, High-Assurance Software Laboratory [Braga, Portugal] ( HASLab ), University of Minho [Braga]-Institute for Systems and Computer Engineering, Technology and Science [Porto] (INESC TEC), and Universidade do Minho
- Subjects
[INFO.INFO-AR]Computer Science [cs]/Hardware Architecture [cs.AR] ,Computer science ,InformationSystems_INFORMATIONINTERFACESANDPRESENTATION(e.g.,HCI) ,Model-Based Testing ,[INFO.INFO-SE]Computer Science [cs]/Software Engineering [cs.SE] ,02 engineering and technology ,computer.software_genre ,Interface homme-machine ,Software testing ,[INFO.INFO-CR]Computer Science [cs]/Cryptography and Security [cs.CR] ,System under test ,Architectures Matérielles ,0202 electrical engineering, electronic engineering, information engineering ,Génie logiciel ,[INFO.INFO-HC]Computer Science [cs]/Human-Computer Interaction [cs.HC] ,Model-based testing ,Finite-state machine ,Programming language ,020207 software engineering ,Post-WIMP ,Modélisation et simulation ,[INFO.INFO-MO]Computer Science [cs]/Modeling and Simulation ,Systèmes embarqués ,020202 computer hardware & architecture ,Test case ,Workflow ,Post-WIMP interactive systems ,Cryptographie et sécurité ,[INFO.INFO-ES]Computer Science [cs]/Embedded Systems ,computer - Abstract
Model-Based Testing (MBT) relies on models of a System Under Test (SUT) to derive test cases for said system. While Finite State Machine (FSM), workflow, etc. are widely used to derive test cases for WIMP applications (i.e. applications depending on 2D widgets such as menus and icons), these notations lack the expressive power to describe the interaction techniques and behaviors found in post-WIMP applications. In this paper, we aim at demonstrating that thanks to ICO, a formal notation for describing interactive systems, it is possible to generate test cases that go beyond the state of the art by addressing the MBT of advanced interaction techniques in post-WIMP applications., (undefined)
- Published
- 2020
- Full Text
- View/download PDF
29. Programming tools for intelligent systems
- Author
-
Considine, Breandan, Paull, Liam, and Famelis, Michalis
- Subjects
Langages de programmation ,Analyse statique ,Build automation ,Tests automatisés ,Embedded systems ,Programming tools ,Programmation différenciable ,Programmation fonctionnelle ,Probabilistic programming ,Moteur de production ,Type systems ,Backpropagation ,Automated testing ,Metamorphic testing ,Continuous integration ,Kotlin ,Machine learning ,Intelligent systems ,Génie logiciel ,Machines virtuelles ,Programmation probabiliste ,Docker ,Software engineering ,Mathématiques appliquées ,Property-based testing ,Automatic differentiation ,Systèmes de type ,Systèmes intelligents ,ROS ,Apprentissage automatique ,Programming languages ,Differentiable programming ,Applied mathematics ,Static analysis ,Différenciation automatique ,Intégration continue ,Outils de programmation ,Functional programming ,Test de propriété ,Systémes embarqués ,Compilers ,Generative modeling ,Fuzzing ,Rétropropagation ,Virtual machines ,Compilateurs ,Modélisation générative ,Test métamorphique - Abstract
Les outils de programmation sont des programmes informatiques qui aident les humains à programmer des ordinateurs. Les outils sont de toutes formes et tailles, par exemple les éditeurs, les compilateurs, les débogueurs et les profileurs. Chacun de ces outils facilite une tâche principale dans le flux de travail de programmation qui consomme des ressources cognitives lorsqu’il est effectué manuellement. Dans cette thèse, nous explorons plusieurs outils qui facilitent le processus de construction de systèmes intelligents et qui réduisent l’effort cognitif requis pour concevoir, développer, tester et déployer des systèmes logiciels intelligents. Tout d’abord, nous introduisons un environnement de développement intégré (EDI) pour la programmation d’applications Robot Operating System (ROS), appelé Hatchery (Chapter 2). Deuxièmement, nous décrivons Kotlin∇, un système de langage et de type pour la programmation différenciable, un paradigme émergent dans l’apprentissage automatique (Chapter 3). Troisièmement, nous proposons un nouvel algorithme pour tester automatiquement les programmes différenciables, en nous inspirant des techniques de tests contradictoires et métamorphiques (Chapter 4), et démontrons son efficacité empirique dans le cadre de la régression. Quatrièmement, nous explorons une infrastructure de conteneurs basée sur Docker, qui permet un déploiement reproductible des applications ROS sur la plateforme Duckietown (Chapter 5). Enfin, nous réfléchissons à l’état actuel des outils de programmation pour ces applications et spéculons à quoi pourrait ressembler la programmation de systèmes intelligents à l’avenir (Chapter 6)., Programming tools are computer programs which help humans program computers. Tools come in all shapes and forms, from editors and compilers to debuggers and profilers. Each of these tools facilitates a core task in the programming workflow which consumes cognitive resources when performed manually. In this thesis, we explore several tools that facilitate the process of building intelligent systems, and which reduce the cognitive effort required to design, develop, test and deploy intelligent software systems. First, we introduce an integrated development environment (IDE) for programming Robot Operating System (ROS) applications, called Hatchery (Chapter 2). Second, we describe Kotlin∇, a language and type system for differentiable programming, an emerging paradigm in machine learning (Chapter 3). Third, we propose a new algorithm for automatically testing differentiable programs, drawing inspiration from techniques in adversarial and metamorphic testing (Chapter 4), and demonstrate its empirical efficiency in the regression setting. Fourth, we explore a container infrastructure based on Docker, which enables reproducible deployment of ROS applications on the Duckietown platform (Chapter 5). Finally, we reflect on the current state of programming tools for these applications and speculate what intelligent systems programming might look like in the future (Chapter 6).
- Published
- 2020
30. Une plateforme d'apprentissage profond à base de composants qui passe à l'échelle : une application aux réseaux de neurones convolutionnels pour la segmentation en imagerie médicale
- Author
-
Guedria, Soulaimane, Laboratoire d'Informatique de Grenoble (LIG), Centre National de la Recherche Scientifique (CNRS)-Université Grenoble Alpes (UGA)-Institut polytechnique de Grenoble - Grenoble Institute of Technology (Grenoble INP ), Université Grenoble Alpes (UGA), Université Grenoble Alpes [2020-....], Noël de Palma, and Nicolas Vuillerme
- Subjects
Distributed Systems ,Génie Logiciel ,Hpc ,Mathematical optimization ,Systèmes Distribués ,Optimisation mathématique ,Software Engineering ,[INFO.INFO-LO]Computer Science [cs]/Logic in Computer Science [cs.LO] ,Medical imaging ,Imagerie médicale - Abstract
Deep neural networks (DNNs) and particularly convolutional neural networks (CNNs) trained on large datasets are getting great success across a plethora of paramount applications. It has been providing powerful solutions and revolutionizing medicine, particularly, in the medical image analysis field. However, deep learning field comes up with multiple challenges: (1) training Convolutional Neural Networks (CNNs) is a computationally intensive and time-consuming task (2) introducing parallelism to CNNs in practice as it is a tedious, repetitive and error-prone process and (3) there is currently no broad study of the generalizability and the reproducibility of the CNN parallelism techniques on concrete medical imaging segmentation applications.Within this context, the present PhD thesis aims to tackle the aforementioned challenges. To achieve this goal, we conceived, implemented and validated an all-in-one scalable and component-based deep learning parallelism platform for medical imaging segmentation. First, we introduce R2D2, an end-to-end scalable deep learning toolkit for medical imaging segmentation. R2D2 proposes a set of new distributed versions of widely-used deep learning architectures (FCN and U-Net) in order to speed up building new distributive deep learning models and reduce the gap between researchers and talent-intensive deep learning. Next, this thesis also introduces Auto-CNNp, a component-based software framework to automate CNN parallelism throughout encapsulating and hiding typical CNNs parallelization routine tasks within a backbone structure while being extensible for user-specific customization. The evaluation results of our proposed automated component-based approach are promising. It shows that a significant speedup in the CNN parallelization task has been achieved to the detriment of a negligible framework execution time, compared to the manual parallelization strategy. The previously introduced couple of software solutions (R2D2 and Auto-CNNp) at our disposal led us to conduct a thorough and practical analysis of the generalizability of the CNN parallelism techniques to the imaging segmentation applications. Concurrently, we perform an in-depth literature review aiming to identify the sources of variability and study reproducibility issues of deep learning training process for particular CNNs training configurations applied for medical imaging segmentation. We also draw a set of good practices recommendations aiming to alleviate the aforementioned reproducibility issues for medical imaging segmentation DNNs training process. Finally, we make a number of observations based on a broad analysis of the results of the already conducted CNN parallelism experimental study which led us to propose a guideline and recommendations for scaling up CNNs for segmentation applications. We succeeded to eliminate the accuracy loss with scale for the U-Net CNN architecture and alleviate the accuracy degradation for the FCN CNN architecture.; Les réseaux neuronaux profonds (DNNs), et plus particulièrement les réseaux neuronaux convolutifs (CNN) entraînés sur des grandes quantités de données, rencontrent un vif succès dans une multitude d'applications capitales, et particulièrement en imageries médicales. Cependant, l'entraînement de réseaux de neurones convolutifs (CNN) (1) est une tâche chronophage. De plus, (2) distribuer l'entraînement des CNNs est un défi ardu en pratique car il s'agit d'un processus fastidieux, répétitif et sujet aux erreurs. En outre, (3) il n'y a actuellement aucune étude approfondie sur la généralisation et la reproductibilité des techniques de parallélisation des CNNs particulièrement sur des applications concrètes de segmentation en imagerie médicale.Dans ce contexte, cette thèse vise à relever les défis susmentionnés. Pour cela, nous avons conçu, implémenté et validé une plateforme d'apprentissage profond à base de composants qui passe à l'échelle pour la segmentation en imagerie médicale. Au début, on introduit R2D2, une boîte à outils d'apprentissage profond de bout en bout qui passe à l'échelle. En effet, R2D2 introduit également un ensemble de nouvelles versions distribuées d'architectures d'apprentissage profond populaires afin d'accélérer l'entraînement effectif des modèles CNNs innovants dans des délais raisonnables et réduire l'écart entre les chercheurs et l'apprentissage en profondeur exigeant des compétences accrues. En outre, cette thèse introduit également Auto-CNNp, un nouveau framework basé sur les composants logiciels pour automatiser la parallélisation des CNNs en encapsulant et en cachant les tâches de routine de parallélisation au sein d'une structure de base tout en gardant la solution logicielle suffisamment flexible et extensible pour une personnalisation spécifique à l'utilisateur. Les résultats de l'évaluation de notre approche automatisée basée sur les composants sont prometteurs. Ils montrent qu'une accélération significative de la tâche de parallélisation CNN a été réalisée au détriment d'un temps d'exécution du framework négligeable, par rapport au temps nécessaire à la stratégie de parallélisation manuelle.Le couple de solutions logicielles précédemment introduites (R2D2 et Auto-CNNp) nous ont donné les outils appropriés pour effectuer une analyse expérimentale approfondie afin d'étudier la généralisation des techniques de parallélisation des CNNs vers la tâche de segmentation. Simultanément, nous avons mené une revue de littérature visant à étudier les sources de la reproductibilité dans l'entraînement des modèles d'apprentissage profond pour une configuration d'entraînement particulière de segmentation en imagerie médicale. Nous proposons également quelques recommandations de bonnes pratiques afin d'atténuer ces problèmes précités de reproductibilité d'entraînement des DNNs pour la segmentation en imagerie médicale. Enfin, nous faisons un certain nombre d'observations en nous basant sur une analyse approfondies des résultats de l'étude expérimentale déjà menée sur le parallélisation des CNNs, qui nous ont permis de proposer des directives et des recommandations pour distribuer l'entraînement des CNNs pour une segmentation sans perte de précision.
- Published
- 2020
31. A scalable and component-based deep learning parallelism platform : an application to convolutional neural networks for medical imaging segmentation
- Author
-
Guedria, Soulaimane, Laboratoire d'Informatique de Grenoble (LIG), Centre National de la Recherche Scientifique (CNRS)-Université Grenoble Alpes (UGA)-Institut polytechnique de Grenoble - Grenoble Institute of Technology (Grenoble INP ), Université Grenoble Alpes (UGA), Université Grenoble Alpes [2020-....], Noël de Palma, and Nicolas Vuillerme
- Subjects
Distributed Systems ,Génie Logiciel ,Hpc ,Mathematical optimization ,Systèmes Distribués ,Optimisation mathématique ,Software Engineering ,[INFO.INFO-LO]Computer Science [cs]/Logic in Computer Science [cs.LO] ,Medical imaging ,Imagerie médicale - Abstract
Deep neural networks (DNNs) and particularly convolutional neural networks (CNNs) trained on large datasets are getting great success across a plethora of paramount applications. It has been providing powerful solutions and revolutionizing medicine, particularly, in the medical image analysis field. However, deep learning field comes up with multiple challenges: (1) training Convolutional Neural Networks (CNNs) is a computationally intensive and time-consuming task (2) introducing parallelism to CNNs in practice as it is a tedious, repetitive and error-prone process and (3) there is currently no broad study of the generalizability and the reproducibility of the CNN parallelism techniques on concrete medical imaging segmentation applications.Within this context, the present PhD thesis aims to tackle the aforementioned challenges. To achieve this goal, we conceived, implemented and validated an all-in-one scalable and component-based deep learning parallelism platform for medical imaging segmentation. First, we introduce R2D2, an end-to-end scalable deep learning toolkit for medical imaging segmentation. R2D2 proposes a set of new distributed versions of widely-used deep learning architectures (FCN and U-Net) in order to speed up building new distributive deep learning models and reduce the gap between researchers and talent-intensive deep learning. Next, this thesis also introduces Auto-CNNp, a component-based software framework to automate CNN parallelism throughout encapsulating and hiding typical CNNs parallelization routine tasks within a backbone structure while being extensible for user-specific customization. The evaluation results of our proposed automated component-based approach are promising. It shows that a significant speedup in the CNN parallelization task has been achieved to the detriment of a negligible framework execution time, compared to the manual parallelization strategy. The previously introduced couple of software solutions (R2D2 and Auto-CNNp) at our disposal led us to conduct a thorough and practical analysis of the generalizability of the CNN parallelism techniques to the imaging segmentation applications. Concurrently, we perform an in-depth literature review aiming to identify the sources of variability and study reproducibility issues of deep learning training process for particular CNNs training configurations applied for medical imaging segmentation. We also draw a set of good practices recommendations aiming to alleviate the aforementioned reproducibility issues for medical imaging segmentation DNNs training process. Finally, we make a number of observations based on a broad analysis of the results of the already conducted CNN parallelism experimental study which led us to propose a guideline and recommendations for scaling up CNNs for segmentation applications. We succeeded to eliminate the accuracy loss with scale for the U-Net CNN architecture and alleviate the accuracy degradation for the FCN CNN architecture.; Les réseaux neuronaux profonds (DNNs), et plus particulièrement les réseaux neuronaux convolutifs (CNN) entraînés sur des grandes quantités de données, rencontrent un vif succès dans une multitude d'applications capitales, et particulièrement en imageries médicales. Cependant, l'entraînement de réseaux de neurones convolutifs (CNN) (1) est une tâche chronophage. De plus, (2) distribuer l'entraînement des CNNs est un défi ardu en pratique car il s'agit d'un processus fastidieux, répétitif et sujet aux erreurs. En outre, (3) il n'y a actuellement aucune étude approfondie sur la généralisation et la reproductibilité des techniques de parallélisation des CNNs particulièrement sur des applications concrètes de segmentation en imagerie médicale.Dans ce contexte, cette thèse vise à relever les défis susmentionnés. Pour cela, nous avons conçu, implémenté et validé une plateforme d'apprentissage profond à base de composants qui passe à l'échelle pour la segmentation en imagerie médicale. Au début, on introduit R2D2, une boîte à outils d'apprentissage profond de bout en bout qui passe à l'échelle. En effet, R2D2 introduit également un ensemble de nouvelles versions distribuées d'architectures d'apprentissage profond populaires afin d'accélérer l'entraînement effectif des modèles CNNs innovants dans des délais raisonnables et réduire l'écart entre les chercheurs et l'apprentissage en profondeur exigeant des compétences accrues. En outre, cette thèse introduit également Auto-CNNp, un nouveau framework basé sur les composants logiciels pour automatiser la parallélisation des CNNs en encapsulant et en cachant les tâches de routine de parallélisation au sein d'une structure de base tout en gardant la solution logicielle suffisamment flexible et extensible pour une personnalisation spécifique à l'utilisateur. Les résultats de l'évaluation de notre approche automatisée basée sur les composants sont prometteurs. Ils montrent qu'une accélération significative de la tâche de parallélisation CNN a été réalisée au détriment d'un temps d'exécution du framework négligeable, par rapport au temps nécessaire à la stratégie de parallélisation manuelle.Le couple de solutions logicielles précédemment introduites (R2D2 et Auto-CNNp) nous ont donné les outils appropriés pour effectuer une analyse expérimentale approfondie afin d'étudier la généralisation des techniques de parallélisation des CNNs vers la tâche de segmentation. Simultanément, nous avons mené une revue de littérature visant à étudier les sources de la reproductibilité dans l'entraînement des modèles d'apprentissage profond pour une configuration d'entraînement particulière de segmentation en imagerie médicale. Nous proposons également quelques recommandations de bonnes pratiques afin d'atténuer ces problèmes précités de reproductibilité d'entraînement des DNNs pour la segmentation en imagerie médicale. Enfin, nous faisons un certain nombre d'observations en nous basant sur une analyse approfondies des résultats de l'étude expérimentale déjà menée sur le parallélisation des CNNs, qui nous ont permis de proposer des directives et des recommandations pour distribuer l'entraînement des CNNs pour une segmentation sans perte de précision.
- Published
- 2020
32. Load Balancing Algorithms in Cloud Computing
- Author
-
Joshi, Vignesh and Joshi, Vignesh
- Subjects
Algorithmes ,bepress|Engineering ,Software Engineering ,[INFO.INFO-DS] Computer Science [cs]/Data Structures and Algorithms [cs.DS] ,Cloud Computing ,Informatique ,bepress|Engineering|Computer Engineering|Other Computer Engineering ,bepress|Engineering|Computational Engineering ,Arabixiv|Engineering|Computer Engineering ,Génie Logiciel ,Computer Science ,Arabixiv|Engineering|Computational Engineering ,Arabixiv|Engineering ,Algorithms ,bepress|Engineering|Computer Engineering ,Arabixiv|Engineering|Computer Engineering|Other Computer Engineering - Abstract
Cloud computing plays an important role in enhancing the effective sharing of resources in virtual machines. Scheduling and load balancing are the two common concepts that cloud computing relies on ensuring that a prescribed task is assigned to the most appropriate virtual machine. Also, cloud computing should have the ability to handle multiple independent tasks that are arriving and execute them in the same or multiple nodes. In a heterogeneous environment, static and dynamic scheduling plays an important role by enhancing the allocation of tasks to the appropriate resources to satisfy the internet users' requests and making cloud computing technology more efficient. This work aims to evaluate and discuss important algorithms that will help improve the load balancing performance of cloud systems., Le cloud computing joue un rôle important dans l'amélioration du partage efficace des ressources dans les machines virtuelles. La planification et l'équilibrage de charge sont les deux concepts communs sur lesquels le cloud computing s'appuie pour garantir qu'une tâche prescrite est affectée à la machine virtuelle la plus appropriée. En outre, le cloud computing devrait avoir la capacité de gérer plusieurs tâches indépendantes qui arrivent et de les exécuter dans le même ou plusieurs nœuds. Dans un environnement hétérogène, la planification statique et dynamique joue un rôle important en améliorant l'allocation des tâches aux ressources appropriées pour satisfaire les demandes des internautes et en rendant la technologie de cloud computing plus efficace. Ce travail vise à évaluer et à discuter des algorithmes importants qui aideront à améliorer les performances d'équilibrage de charge des systèmes cloud.
- Published
- 2020
33. Rationalizing the need of architecture-driven testing of interactive systems
- Author
-
Canny, Alexandre, Bouzekri, Elodie, Martinie, Célia, Palanque, Philippe, Lárusdóttir, Marta Kristín, Winckler, Marco, Kuusinen, Kati, Bogdan, Cristian, Centre National de la Recherche Scientifique - CNRS (FRANCE), Institut National Polytechnique de Toulouse - Toulouse INP (FRANCE), Université Toulouse III - Paul Sabatier - UT3 (FRANCE), Université Toulouse - Jean Jaurès - UT2J (FRANCE), Université Toulouse 1 Capitole - UT1 (FRANCE), Eindhoven University of Technology - TU/e (NETHERLANDS), Interactive Critical Systems (IRIT-ICS), Institut de recherche en informatique de Toulouse (IRIT), Université Toulouse 1 Capitole (UT1), Université Fédérale Toulouse Midi-Pyrénées-Université Fédérale Toulouse Midi-Pyrénées-Université Toulouse - Jean Jaurès (UT2J)-Université Toulouse III - Paul Sabatier (UT3), Université Fédérale Toulouse Midi-Pyrénées-Centre National de la Recherche Scientifique (CNRS)-Institut National Polytechnique (Toulouse) (Toulouse INP), Université Fédérale Toulouse Midi-Pyrénées-Université Toulouse 1 Capitole (UT1), Université Fédérale Toulouse Midi-Pyrénées, Eindhoven University of Technology [Eindhoven] (TU/e), Cristian Bogdan, Kati Kuusinen, Marta Kristín Lárusdóttir, Philippe Palanque, Marco Winckler, TC 13, WG 13.2, Systemic Change, and Institut National Polytechnique de Toulouse - INPT (FRANCE)
- Subjects
[INFO.INFO-AR]Computer Science [cs]/Hardware Architecture [cs.AR] ,Computer science ,System testing ,02 engineering and technology ,[INFO.INFO-SE]Computer Science [cs]/Software Engineering [cs.SE] ,User input ,Interface homme-machine ,Field (computer science) ,Task (project management) ,[INFO.INFO-CR]Computer Science [cs]/Cryptography and Security [cs.CR] ,Software ,Architectures Matérielles ,Architecture-driven testing ,0202 electrical engineering, electronic engineering, information engineering ,Génie logiciel ,0501 psychology and cognitive sciences ,[INFO]Computer Science [cs] ,[INFO.INFO-HC]Computer Science [cs]/Human-Computer Interaction [cs.HC] ,Architecture ,050107 human factors ,Interactive systems engineering ,business.industry ,Interactive system testing ,05 social sciences ,020207 software engineering ,Modélisation et simulation ,[INFO.INFO-MO]Computer Science [cs]/Modeling and Simulation ,Systèmes embarqués ,Test (assessment) ,Cryptographie et sécurité ,[INFO.INFO-ES]Computer Science [cs]/Embedded Systems ,Software engineering ,business - Abstract
Part 3: Task Modelling and Task-Based Approaches; International audience; Testing interactive systems is known to be a complex task that cannot be exhaustive. Indeed, the infinite number of combination of user input and the complexity of information presentation exceed the practical limits of exhaustive and analytical approach to testing [31]. Most interactive software testing techniques are produced by applying and tuning techniques from the field of software testing to try to address the specificities of interactive applications. When some elements cannot be taken into account by the software testing technique, they are usually ignored. In this paper we propose to follow an opposite approach, starting from a generic architecture for interactive systems (including both software and hardware elements) for identifying in a systematic way, testing problems and testing needs. This architecture-driven approach makes it possible to identify how software testing knowledge and techniques can support interactive systems testing but also where the interactive systems engineering community should invest in order to test their idiosyncrasies too.
- Published
- 2019
- Full Text
- View/download PDF
34. Formal Development of Multi-Purpose Interactive Application (MPIA) for ARINC 661
- Author
-
Marc Pantel, Neeraj Kumar Singh, Yamine Aït-Ameur, Philippe Palanque, David Navarre, Dominique Méry, Centre National de la Recherche Scientifique - CNRS (FRANCE), Institut National Polytechnique de Toulouse - Toulouse INP (FRANCE), Université Toulouse III - Paul Sabatier - UT3 (FRANCE), Université Toulouse - Jean Jaurès - UT2J (FRANCE), Université Toulouse 1 Capitole - UT1 (FRANCE), Université de Lorraine (FRANCE), Assistance à la Certification d’Applications DIstribuées et Embarquées (IRIT-ACADIE), Institut de recherche en informatique de Toulouse (IRIT), Université Toulouse Capitole (UT Capitole), Université de Toulouse (UT)-Université de Toulouse (UT)-Université Toulouse - Jean Jaurès (UT2J), Université de Toulouse (UT)-Université Toulouse III - Paul Sabatier (UT3), Université de Toulouse (UT)-Centre National de la Recherche Scientifique (CNRS)-Institut National Polytechnique (Toulouse) (Toulouse INP), Université de Toulouse (UT)-Toulouse Mind & Brain Institut (TMBI), Université Toulouse - Jean Jaurès (UT2J), Université de Toulouse (UT)-Université de Toulouse (UT)-Université Toulouse III - Paul Sabatier (UT3), Université de Toulouse (UT)-Université Toulouse Capitole (UT Capitole), Université de Toulouse (UT), Institut National Polytechnique (Toulouse) (Toulouse INP), Proof-oriented development of computer-based systems (MOSEL), Department of Formal Methods (LORIA - FM), Laboratoire Lorrain de Recherche en Informatique et ses Applications (LORIA), Institut National de Recherche en Informatique et en Automatique (Inria)-Université de Lorraine (UL)-Centre National de la Recherche Scientifique (CNRS)-Institut National de Recherche en Informatique et en Automatique (Inria)-Université de Lorraine (UL)-Centre National de la Recherche Scientifique (CNRS)-Laboratoire Lorrain de Recherche en Informatique et ses Applications (LORIA), Institut National de Recherche en Informatique et en Automatique (Inria)-Université de Lorraine (UL)-Centre National de la Recherche Scientifique (CNRS)-Institut National de Recherche en Informatique et en Automatique (Inria)-Université de Lorraine (UL)-Centre National de la Recherche Scientifique (CNRS), TELECOM Nancy, Université de Lorraine (UL), Interactive Critical Systems (IRIT-ICS), Université Toulouse 1 Capitole (UT1), Université Fédérale Toulouse Midi-Pyrénées-Université Fédérale Toulouse Midi-Pyrénées-Université Toulouse - Jean Jaurès (UT2J)-Université Toulouse III - Paul Sabatier (UT3), Université Fédérale Toulouse Midi-Pyrénées-Centre National de la Recherche Scientifique (CNRS)-Institut National Polytechnique (Toulouse) (Toulouse INP), Université Fédérale Toulouse Midi-Pyrénées-Université Toulouse 1 Capitole (UT1), Université Fédérale Toulouse Midi-Pyrénées, Centre National de la Recherche Scientifique (CNRS)-Université de Lorraine (UL)-Institut National de Recherche en Informatique et en Automatique (Inria)-Centre National de la Recherche Scientifique (CNRS)-Université de Lorraine (UL)-Institut National de Recherche en Informatique et en Automatique (Inria)-Laboratoire Lorrain de Recherche en Informatique et ses Applications (LORIA), and Centre National de la Recherche Scientifique (CNRS)-Université de Lorraine (UL)-Institut National de Recherche en Informatique et en Automatique (Inria)-Centre National de la Recherche Scientifique (CNRS)-Université de Lorraine (UL)-Institut National de Recherche en Informatique et en Automatique (Inria)
- Subjects
[INFO.INFO-AR]Computer Science [cs]/Hardware Architecture [cs.AR] ,Model checking ,Computer science ,Interface (Java) ,PetShop ,Formal method ,[INFO.INFO-SE]Computer Science [cs]/Software Engineering [cs.SE] ,02 engineering and technology ,Interface homme-machine ,Domain (software engineering) ,[INFO.INFO-CR]Computer Science [cs]/Cryptography and Security [cs.CR] ,Architectures Matérielles ,Validation ,0202 electrical engineering, electronic engineering, information engineering ,Génie logiciel ,[INFO.INFO-HC]Computer Science [cs]/Human-Computer Interaction [cs.HC] ,Computer-aided software engineering ,business.industry ,Refinement and proofs ,Verification ,020207 software engineering ,Human-machine interface (HMI) ,Animation ,Formal methods ,Modélisation et simulation ,[INFO.INFO-MO]Computer Science [cs]/Modeling and Simulation ,Systèmes embarqués ,ARINC 661 ,Scalability ,Task analysis ,Cryptographie et sécurité ,Event-B ,[INFO.INFO-ES]Computer Science [cs]/Embedded Systems ,020201 artificial intelligence & image processing ,Software engineering ,business - Abstract
International audience; This paper reports our experience for developing Human-Machine Interface (HMI) complying with ARINC 661 specification standard for interactive cockpits applications using formal methods. This development relies on the FLUID modelling language, we have proposed and formally defined in the FORMEDICIS project. FLUID contains essential features required for specifying HMI. To develop the Multi-Purpose Interactive Applications (MPIA) use case, we follow the following steps: an abstract model of MPIA is written using the FLUID language; this MPIA FLUID model is used to produce an Event-B model for checking the functional behaviour, user interactions, safety properties, and interaction related to domain properties; the Event-B model is also used to check temporal properties and possible scenario using the ProB model checker; and finally, the MPIA FLUID model is translated to Interactive Cooperative Objects (ICO) using the PetShop CASE tool to validate the dynamic behaviour, visual properties and task analysis. These steps rely on different tools to check internal consistency along with possible HMI properties. Finally, the formal development of the MPIA case study using FLUID and its embedding into other formal techniques, demonstrates reliability, scalability and feasibility of our approach defined in the FORMEDICIS project.
- Published
- 2020
- Full Text
- View/download PDF
35. Engineering secure systems: Models, patterns and empirical validation
- Author
-
Brahim Hamid, Donatus Weber, Centre National de la Recherche Scientifique - CNRS (FRANCE), Institut National Polytechnique de Toulouse - Toulouse INP (FRANCE), Université Toulouse III - Paul Sabatier - UT3 (FRANCE), Université Toulouse - Jean Jaurès - UT2J (FRANCE), Université Toulouse 1 Capitole - UT1 (FRANCE), Universität Siegen (GERMANY), and Institut National Polytechnique de Toulouse - INPT (FRANCE)
- Subjects
Scheme (programming language) ,General Computer Science ,Computer science ,Model transformation ,02 engineering and technology ,Meta-modeling ,Interface homme-machine ,Domain (software engineering) ,Software ,Architectures Matérielles ,020204 information systems ,0202 electrical engineering, electronic engineering, information engineering ,Génie logiciel ,Software system ,computer.programming_language ,Abstraction (linguistics) ,Operations architecture ,Pattern ,business.industry ,020207 software engineering ,Modélisation et simulation ,Model driven engineering ,Metamodeling ,System engineering ,Cryptographie et sécurité ,Security ,Software engineering ,business ,Law ,computer - Abstract
Several development approaches have been proposed to handle the growing complexity of software system design. The most popular methods use models as the main artifacts to construct and maintain. The desired role of such models is to facilitate, systematize and standardize the construction of software-based systems. In our work, we propose a model-driven engineering (MDE) methodological approach associated with a pattern-based approach to support the development of secure software systems. We address the idea of using patterns to describe solutions for security as recurring security problems in specific design contexts and present a well-proven generic scheme for their solutions. The proposed approach is based on metamodeling and model transformation techniques to define patterns at different levels of abstraction and generate different representations according to the target domain concerns, respectively. Moreover, we describe an operational architecture for development tools to support the approach. Finally, an empirical evaluation of the proposed approach is presented through a practical application to a use case in the metrology domain with strong security requirements, which is followed by a description of a survey performed among domain experts to better understand their perceptions regarding our approach.
- Published
- 2018
- Full Text
- View/download PDF
36. Groupe de Recherche CNRS - Génie de la Programmation et du Logiciel.
- Author
-
Collet, Philippe, Du Bousquet, Lydie, Duchien, Laurence, and Moreau, Pierre-Etienne
- Abstract
New paradigms, languages, modeling, verification, testing approaches and new tools in the field of programming and software should be created in the next 10 years, whether to make life easier for designers and maintainers of computer systems, to model and reliable software or to anticipate technological change. This text summarizes the challenges in the Programming and Software Engineering field on the horizon 2025. This work has been presented and discussed during the national days of the Research Group on Programming and Software Engineering in June 2014 and in September 2014 in Paris. [ABSTRACT FROM AUTHOR]
- Published
- 2015
- Full Text
- View/download PDF
37. Guía de diseño de agentes móviles en computación ubicua.
- Author
-
Xiomara Reyes Gamboa, Adriana, Enrique Soto Durán, Darío, and Mojica Sepúlveda, Fanny
- Subjects
SOCIAL role ,MOBILE agent systems ,APPLICATION software ,UBIQUITOUS computing ,COMPUTER software development ,SOFTWARE architecture ,SOFTWARE engineering ,MOBILE apps ,GUIDELINES ,SYSTEMS software - Abstract
Copyright of Revista Virtual Universidad Católica del Norte is the property of Revista Virtual Universidad Catolica del Norte and its content may not be copied or emailed to multiple sites or posted to a listserv without the copyright holder's express written permission. However, users may print, download, or email articles for individual use. This abstract may be abridged. No warranty is given about the accuracy of the copy. Users should refer to the original published version of the material for the full abstract. (Copyright applies to all Abstracts.)
- Published
- 2010
38. Métodos formales e Ingeniería de Software.
- Author
-
Serna Montoya, Edgar
- Subjects
SOFTWARE engineering ,COMPUTER software development ,FORMAL methods (Computer science) ,TECHNICAL specifications ,SOFTWARE validation ,SOFTWARE verification ,QUALITY assurance ,LOGIC ,MATHEMATICAL programming ,COMPUTER software - Abstract
Copyright of Revista Virtual Universidad Católica del Norte is the property of Revista Virtual Universidad Catolica del Norte and its content may not be copied or emailed to multiple sites or posted to a listserv without the copyright holder's express written permission. However, users may print, download, or email articles for individual use. This abstract may be abridged. No warranty is given about the accuracy of the copy. Users should refer to the original published version of the material for the full abstract. (Copyright applies to all Abstracts.)
- Published
- 2010
39. A dedicated approach for model composition traceability
- Author
-
Bernard Coulette, Adil Anwar, Mahmoud Nassar, Youness Laghouaouta, Université Mohammed V, Smart Modeling for softw@re Research and Technology (IRIT-SM@RT), Institut de recherche en informatique de Toulouse (IRIT), Université Toulouse 1 Capitole (UT1), Université Fédérale Toulouse Midi-Pyrénées-Université Fédérale Toulouse Midi-Pyrénées-Université Toulouse - Jean Jaurès (UT2J)-Université Toulouse III - Paul Sabatier (UT3), Université Fédérale Toulouse Midi-Pyrénées-Centre National de la Recherche Scientifique (CNRS)-Institut National Polytechnique (Toulouse) (Toulouse INP), Université Fédérale Toulouse Midi-Pyrénées-Université Toulouse 1 Capitole (UT1), Université Fédérale Toulouse Midi-Pyrénées, Centre National de la Recherche Scientifique - CNRS (FRANCE), Institut National Polytechnique de Toulouse - Toulouse INP (FRANCE), Université Toulouse III - Paul Sabatier - UT3 (FRANCE), Université Toulouse - Jean Jaurès - UT2J (FRANCE), Université Toulouse 1 Capitole - UT1 (FRANCE), Université Mohammed V-Rabat - UM5 (MOROCCO), and Institut de Recherche en Informatique de Toulouse - IRIT (Toulouse, France)
- Subjects
[INFO.INFO-AR]Computer Science [cs]/Hardware Architecture [cs.AR] ,Traceability ,Computer science ,media_common.quotation_subject ,Context (language use) ,[INFO.INFO-SE]Computer Science [cs]/Software Engineering [cs.SE] ,02 engineering and technology ,Tracing ,Interface homme-machine ,[INFO.INFO-CR]Computer Science [cs]/Cryptography and Security [cs.CR] ,Architectures Matérielles ,020204 information systems ,0202 electrical engineering, electronic engineering, information engineering ,Génie logiciel ,Quality (business) ,Relevance (information retrieval) ,[INFO.INFO-HC]Computer Science [cs]/Human-Computer Interaction [cs.HC] ,Software system ,Model composition ,media_common ,computer.programming_language ,business.industry ,020207 software engineering ,Modélisation et simulation ,Systèmes embarqués ,[INFO.INFO-MO]Computer Science [cs]/Modeling and Simulation ,Model traceability ,Graph transformations ,Computer Science Applications ,NFR framework ,Scalability ,Cryptographie et sécurité ,Systems engineering ,[INFO.INFO-ES]Computer Science [cs]/Embedded Systems ,Model-driven architecture ,Software engineering ,business ,Aspect-oriented modeling ,computer ,Software ,Information Systems - Abstract
International audience; Context: Software systems are often too complex to be expressed by a single model. Recognizing this, the Model Driven Engineering (MDE) proposes multi-modeling approaches to allow developers to describe a system from different perspectives. In this context, model composition has become important since the combination of those partial representations is inevitable. Nevertheless, no approach has been defined for keeping track of the composition effects, and this operation has been overshadowed by model transformations. Objective: This paper presents a traceability approach dedicated to the composition of models. Two aspects of quality are considered: producing relevant traces; and dealing with scalability. Method: The composition of softgoal trees has been selected to motivate the need for tracing the composition of models and to illustrate our approach. The base principle is to augment the specification of the composition with the behavior needed to generate the expected composed model accompanied with a trace model. This latter includes traces of the execution details. For that, traceability is considered as a crosscutting concern and encapsulated in an aspect. As part of the proposal, an Eclipse plug-in has been implemented as a tool support. Besides, a comparative experiment has been conducted to assess the traces relevance. We also used the regression method to validate the scalability of the tool support. Results: Our experiments show that the proposed approach allows generating relevant traces. In addition, the obtained results reveal that tracing a growing number of elements causes an acceptable increase of response time.Conclusion: This paper presents a traceability approach dedicated to the composition of models and its application to softgoal trees. The experiment results reveal that our proposal considers the composition specificities for producing valuable traceability information while supporting scalability.
- Published
- 2017
- Full Text
- View/download PDF
40. État de l'art de la gestion de cache logiciel pour tolérer les déconnexions en environnements mobiles.
- Author
-
Kouicp, Nabil, Conan, Denis, and Bernard, Guy
- Abstract
Copyright of Annals of Telecommunications is the property of Springer Nature and its content may not be copied or emailed to multiple sites or posted to a listserv without the copyright holder's express written permission. However, users may print, download, or email articles for individual use. This abstract may be abridged. No warranty is given about the accuracy of the copy. Users should refer to the original published version of the material for the full abstract. (Copyright applies to all Abstracts.)
- Published
- 2006
- Full Text
- View/download PDF
41. Making the field of computing more inclusive
- Author
-
John \\'Scooter\\' Morris, Tovi Grossman, Jonathan Lazar, Gerrit C. van der Veer, Jennifer Mankoff, Elizabeth F. Churchill, Philippe Palanque, Towson University [Towson, MD, United States], University of Maryland System, Google Inc., Autodesk Research, University of Twente [Netherlands], Vrije Universiteit Amsterdam [Amsterdam] (VU), Open University of the Netherlands [Heerlen], Dalian Maritime University, Luxun Academy of Fine Arts - LAFA (Shenyang, Chine), Luxun Academy of Fine Arts (Shenyang) (LAFA), Interactive Critical Systems (IRIT-ICS), Institut de recherche en informatique de Toulouse (IRIT), Université Toulouse 1 Capitole (UT1), Université Fédérale Toulouse Midi-Pyrénées-Université Fédérale Toulouse Midi-Pyrénées-Université Toulouse - Jean Jaurès (UT2J)-Université Toulouse III - Paul Sabatier (UT3), Université Fédérale Toulouse Midi-Pyrénées-Centre National de la Recherche Scientifique (CNRS)-Institut National Polytechnique (Toulouse) (Toulouse INP), Université Fédérale Toulouse Midi-Pyrénées-Université Toulouse 1 Capitole (UT1), Université Fédérale Toulouse Midi-Pyrénées, University of California [San Francisco] (UCSF), University of California, Carnegie Mellon University [Pittsburgh] (CMU), Centre National de la Recherche Scientifique - CNRS (FRANCE), Institut National Polytechnique de Toulouse - Toulouse INP (FRANCE), Université Toulouse III - Paul Sabatier - UT3 (FRANCE), Université Toulouse - Jean Jaurès - UT2J (FRANCE), Université Toulouse 1 Capitole - UT1 (FRANCE), Dalian Maritime University - DMU (CHINA), Google Inc. (USA), Luxun Academy of Fine Arts - LAFA (CHINA), Open Universiteit - OU (NETHERLANDS), University of California, San Francisco - UCSF (USA), University of Twente (NETHERLANDS), Vrije Universiteit Amsterdam [Amsterdam] ( VU ), Institut de recherche en informatique de Toulouse ( IRIT ), Institut National Polytechnique [Toulouse] ( INP ) -Université Toulouse 1 Capitole ( UT1 ) -Université Toulouse - Jean Jaurès ( UT2J ) -Université Paul Sabatier - Toulouse 3 ( UPS ) -Centre National de la Recherche Scientifique ( CNRS ), University of California [San Francisco] ( UCSF ), Carnegie Mellon University [Pittsburgh] ( CMU ), Software and Sustainability (S2), Network Institute, Software & Services, and Institut National Polytechnique de Toulouse - INPT (FRANCE)
- Subjects
[INFO.INFO-AR]Computer Science [cs]/Hardware Architecture [cs.AR] ,[ INFO.INFO-MO ] Computer Science [cs]/Modeling and Simulation ,SDG 16 - Peace ,General Computer Science ,Computer science ,[ INFO.INFO-CR ] Computer Science [cs]/Cryptography and Security [cs.CR] ,[ INFO.INFO-SE ] Computer Science [cs]/Software Engineering [cs.SE] ,02 engineering and technology ,[INFO.INFO-SE]Computer Science [cs]/Software Engineering [cs.SE] ,Interface homme-machine ,[INFO.INFO-CR]Computer Science [cs]/Cryptography and Security [cs.CR] ,Lead (geology) ,[ INFO.INFO-HC ] Computer Science [cs]/Human-Computer Interaction [cs.HC] ,Human–computer interaction ,Architectures Matérielles ,020204 information systems ,0202 electrical engineering, electronic engineering, information engineering ,Génie logiciel ,0501 psychology and cognitive sciences ,[ INFO.INFO-ES ] Computer Science [cs]/Embedded Systems ,[INFO.INFO-HC]Computer Science [cs]/Human-Computer Interaction [cs.HC] ,050107 human factors ,ComputingMilieux_MISCELLANEOUS ,ComputingMilieux_THECOMPUTINGPROFESSION ,Field (Bourdieu) ,05 social sciences ,SDG 16 - Peace, Justice and Strong Institutions ,Modélisation et simulation ,Accessibility ,Systèmes embarqués ,[INFO.INFO-MO]Computer Science [cs]/Modeling and Simulation ,Justice and Strong Institutions ,Emerging technologies ,Human-centered computing ,Cryptographie et sécurité ,[INFO.INFO-ES]Computer Science [cs]/Embedded Systems ,[ INFO.INFO-AR ] Computer Science [cs]/Hardware Architecture [cs.AR] - Abstract
People with disabilities are a potential source of ideas and additional membership for professional computing organizations. Including people with disabilities in the decision-making processes of professional computing organizations ensures the most important barriers are addressed first. SIGCHI is one of ACM's largest special interest groups, with approximately 3,500 members as of 2016. SIGCHI has three goals, underscore the importance of stakeholder engagement; offer broad suggestions for how large SIGs can improve the inclusiveness of physical events and digital content; and underscore that addressing physical and digital accessibility is an ongoing process that takes time, with involvement of many stakeholders. These stakeholders must work together to drive the creation of acceptable and accepted guidelines and resources, find individuals with expertise to work in an advisory capacity, and find volunteers to implement effective strategies and provide feedback regarding the policies and guidelines in action. SIGCHI's hope is that SIGCHI will be a community that is perceived as welcoming for all researchers and practitioners with disabilities. Large SIGs, when they educate others about digital and physical accessibility, can have significant influence on the conference locations they rent and the universities and companies that employ their members. ACM has a leading role to play by ensuring all SIGs strive to be inclusive and by thus being a role model for other professional associations. The best way to handle such responsibility would ultimately be to ensure there are professional staff supporting and centralizing the most vital accessibility needs and accessibility is included in contractual relationships.
- Published
- 2017
- Full Text
- View/download PDF
42. Assembling components with behavioural contracts.
- Author
-
Carrez, Cyril, Fantechi, Alessandro, and Najm, Elie
- Abstract
Copyright of Annals of Telecommunications is the property of Springer Nature and its content may not be copied or emailed to multiple sites or posted to a listserv without the copyright holder's express written permission. However, users may print, download, or email articles for individual use. This abstract may be abridged. No warranty is given about the accuracy of the copy. Users should refer to the original published version of the material for the full abstract. (Copyright applies to all Abstracts.)
- Published
- 2005
- Full Text
- View/download PDF
43. Active networks as a developing and testing environment for network protocols.
- Author
-
Boutaba, Raouf, Polyrakis, Andreas, and Casani, Alvaro
- Abstract
Copyright of Annals of Telecommunications is the property of Springer Nature and its content may not be copied or emailed to multiple sites or posted to a listserv without the copyright holder's express written permission. However, users may print, download, or email articles for individual use. This abstract may be abridged. No warranty is given about the accuracy of the copy. Users should refer to the original published version of the material for the full abstract. (Copyright applies to all Abstracts.)
- Published
- 2004
- Full Text
- View/download PDF
44. Inférence automatique à partir d'exemples de règles de transformations logicielles
- Author
-
Serrano, Lucas, Serrano, Lucas, Well Honed Infrastructure Software for Programming Environments and Runtimes ( Whisper), Inria de Paris, Institut National de Recherche en Informatique et en Automatique (Inria)-Institut National de Recherche en Informatique et en Automatique (Inria)-LIP6, Sorbonne Université (SU)-Centre National de la Recherche Scientifique (CNRS)-Sorbonne Université (SU)-Centre National de la Recherche Scientifique (CNRS), Sorbonne Université, Julia Lawall, and Well Honed Infrastructure Software for Programming Environments and Runtimes (Whisper)
- Subjects
Sogtware engineering ,Software engineering ,API ,Linux ,[INFO.INFO-SE] Computer Science [cs]/Software Engineering [cs.SE] ,Génie logiciel ,[INFO.INFO-OS]Computer Science [cs]/Operating Systems [cs.OS] ,[INFO.INFO-SE]Computer Science [cs]/Software Engineering [cs.SE] ,Automatic software transformation ,Transformation automatique - Abstract
The Linux kernel is present today in all kinds of computing environments, from smartphones to supercomputers, including both the latest hardware and "ancient" systems. This multiplicity of environments has come at the expense of a large code size, of approximately ten million lines of code, dedicated to device drivers. However, to add new functionalities, or for performance or security reasons, some internal Application Programming Interfaces (APIs) can be redesigned, triggering the need for changes of potentially thousands of drivers using them.This thesis proposes a novel approach, Spinfer, that can automatically perform these API usage updates. This new approach, based on pattern assembly constrained by control-flow relationships, can learn transformation rules from even imperfect examples. Learned rules are suitable for the challenges found in Linux kernel API usage updates., Le noyau Linux est aujourd'hui présent dans tous les types de systèmes informatiques, des smartphones aux supercalculateurs, comprenant à la fois le matériel le plus récent et les systèmes "anciens". Cette diversité d'environnement a pour conséquence une base de code importante, d'une dizaine de millions de lignes de code, pour les pilotes matériels. Cependant par souci d'introduction de nouvelles fonctionnalités, ou pour des raisons de performance ou de sécurité, certaines interfaces de programmation (APIs) internes doivent être parfois revues, ce qui peut impliquer des changements pour des milliers de pilotes les utilisant.Cette thèse propose une nouvelle approche, Spinfer, permettant d'effectuer ces migrations d'utilisation d'APIs de manière automatique. Cette nouvelle approche, basée sur l'assemblage de motifs en suivant des contraintes de flot de contrôle, est capable d'apprendre à partir d'exemples, même imparfaits, des règles de transformations adaptées aux enjeux des migrations d'utilisations d'APIs dans le noyau Linux.
- Published
- 2020
45. Modeling and verification method for an early evaluation of Systems of Systems interactions
- Author
-
Iulian Ober, Ronan Baduel, Jean-Michel Bruel, Institut National Polytechnique de Toulouse - Toulouse INP (FRANCE), Centre National de la Recherche Scientifique - CNRS (FRANCE), Université Toulouse III - Paul Sabatier - UT3 (FRANCE), Université Toulouse - Jean Jaurès - UT2J (FRANCE), Université Toulouse 1 Capitole - UT1 (FRANCE), Advancing Rigorous Software and System Engineering (IRIT-ARGOS), Institut de recherche en informatique de Toulouse (IRIT), Université Toulouse 1 Capitole (UT1), Université Fédérale Toulouse Midi-Pyrénées-Université Fédérale Toulouse Midi-Pyrénées-Université Toulouse - Jean Jaurès (UT2J)-Université Toulouse III - Paul Sabatier (UT3), Université Fédérale Toulouse Midi-Pyrénées-Centre National de la Recherche Scientifique (CNRS)-Institut National Polytechnique (Toulouse) (Toulouse INP), Université Fédérale Toulouse Midi-Pyrénées-Université Toulouse 1 Capitole (UT1), Université Fédérale Toulouse Midi-Pyrénées, Smart Modeling for softw@re Research and Technology (IRIT-SM@RT), and Université Toulouse - Jean Jaurès (UT2J)
- Subjects
[INFO.INFO-AR]Computer Science [cs]/Hardware Architecture [cs.AR] ,Computer science ,Context (language use) ,[INFO.INFO-SE]Computer Science [cs]/Software Engineering [cs.SE] ,02 engineering and technology ,Interface homme-machine ,[INFO.INFO-CR]Computer Science [cs]/Cryptography and Security [cs.CR] ,States and modes ,Architectures Matérielles ,020204 information systems ,0202 electrical engineering, electronic engineering, information engineering ,Génie logiciel ,Use case ,Point (geometry) ,[INFO.INFO-HC]Computer Science [cs]/Human-Computer Interaction [cs.HC] ,Structure (mathematical logic) ,System of systems ,Model-based systems engineering ,020207 software engineering ,Modélisation et simulation ,[INFO.INFO-MO]Computer Science [cs]/Modeling and Simulation ,Systèmes embarqués ,Systems engineering ,Cryptographie et sécurité ,[INFO.INFO-ES]Computer Science [cs]/Embedded Systems ,Verification and validation ,System of Systems (SoS)- Early validation - Abstract
International audience; This paper presents the results achieved while pursuing the verification and validation of a train system behavior at the first steps of development in an industrial context. At this stage, and at least from the industrial point of view, the train can be considered as a System of Systems (SoS). A method is proposed, supported by preliminary results through the definition and verification of constrained states and preconditions to use cases, as well as a structure for the behavior.
- Published
- 2020
- Full Text
- View/download PDF
46. Development of complex communications protocols using Estelle.
- Author
-
Catrina, Octavian and BORCOCI, Eugen
- Abstract
Copyright of Annals of Telecommunications is the property of Springer Nature and its content may not be copied or emailed to multiple sites or posted to a listserv without the copyright holder's express written permission. However, users may print, download, or email articles for individual use. This abstract may be abridged. No warranty is given about the accuracy of the copy. Users should refer to the original published version of the material for the full abstract. (Copyright applies to all Abstracts.)
- Published
- 2000
- Full Text
- View/download PDF
47. Enabling white-box reasonings on black-box composition operators in a domain-independent way
- Author
-
Benni, Benjamin, Scalable and Pervasive softwARe and Knowledge Systems (Laboratoire I3S - SPARKS), Laboratoire d'Informatique, Signaux, et Systèmes de Sophia Antipolis (I3S), Université Nice Sophia Antipolis (... - 2019) (UNS), COMUE Université Côte d'Azur (2015-2019) (COMUE UCA)-COMUE Université Côte d'Azur (2015-2019) (COMUE UCA)-Centre National de la Recherche Scientifique (CNRS)-Université Côte d'Azur (UCA)-Université Nice Sophia Antipolis (... - 2019) (UNS), COMUE Université Côte d'Azur (2015-2019) (COMUE UCA)-COMUE Université Côte d'Azur (2015-2019) (COMUE UCA)-Centre National de la Recherche Scientifique (CNRS)-Université Côte d'Azur (UCA), COMUE Université Côte d'Azur (2015 - 2019), Sébastien Mosser, and Michel Riveill
- Subjects
Transformations ,Software composition ,Software engineering ,Génie logiciel ,[INFO.INFO-SE]Computer Science [cs]/Software Engineering [cs.SE] ,Composition logicielle - Abstract
The complexity of software systems made it necessary to split them up and reunite them afterward. Separating concerns is a well-studied challenge and teams separate the work to be done beforehand. Still, separating without considering the recomposition leads to rushed, unsafe, and time-consuming recomposition. The composition should create the right and best system with minimal human effort. Composition operators are often ad-hoc solutions developed by non-specialist development teams. They are not developed using high-level formalism and end up being too complicated or too poorly formalized to support proper reasonings. We call them "black-boxes" as existing techniques requiring knowledge of its internals cannot be applied or reused. However, black-box operators, like others, must ensure guarantees: one must assess their idempotency to use them in a distributed context; provide an average execution time to assess usage in a reactive system; check conflicts to validate that the composed artifact conforms to business properties. Despite the black-box aspect, none of these properties are domain-specific. In this thesis, we present a domain-independent approach that enables (i) reasonings on composition equation, (ii) to compose them safely, (iii) by assessing properties similar to the ones from the state-of-the-art. We validated the approach in heterogeneous application domains: 19 versions of Linux kernel with 54 rewriting rules, fixing 13 antipatterns in 22 Android apps, and validating the efficiency of the approach on the composition of 20k Docker images.; La complexité des systèmes informatiques a rendu nécessaire leur découpage avant de les recomposer. Cette séparation est un défi connu et les développeurs découpent déjà les tâches au préalable. Néanmoins, séparer sans considérer la recomposition finale entraine des réunifications hâtives et chronophages. Cette composition doit mener au bon et meilleur système avec le minimum d'effort humain. Les opérateurs de composition sont souvent ad-hoc et développés par des non-spécialistes. Ils ne respectent pas de formalismes de haut-niveau et deviennent trop complexes ou informels pour pouvoir raisonner. Nous les appelons des "boites-noires": les techniques nécessitant d'en connaitre l'intérieur ne peuvent être appliquées. Or, ces boites noires doivent garantir des propriétés : d'aucun doit vérifier son idempotence pour l'utiliser dans un contexte distribué ; connaitre son temps d'exécution pour des systèmes réactifs ; vérifier des conflits pour le confronter à des règles d'entreprise. Aucun de ces besoins n'est spécifique à un domaine applicatif. Dans cette thèse, nous présentons une approche indépendante du domaine qui permet, sur des opérateurs existants, (i) de raisonner sur des équations de composition pour (ii) les composer en sécurité, en (iii) proposant une vérification de propriétés similaires à celles de l’état de l’art. Nous avons validé cette approche sur des domaines différents : 19 versions du noyau Linux avec 54 règles de réécriture, réparé 13 « antipatrons » dans 22 applications Android et validé son efficacité sur la composition de 20k images Docker.
- Published
- 2019
48. Un modèle de raisonnement pour les opérateurs de composition logicielle décrits en boite noire
- Author
-
Benni, Benjamin, Scalable and Pervasive softwARe and Knowledge Systems (Laboratoire I3S - SPARKS), Laboratoire d'Informatique, Signaux, et Systèmes de Sophia Antipolis (I3S), Université Nice Sophia Antipolis (... - 2019) (UNS), COMUE Université Côte d'Azur (2015-2019) (COMUE UCA)-COMUE Université Côte d'Azur (2015-2019) (COMUE UCA)-Centre National de la Recherche Scientifique (CNRS)-Université Côte d'Azur (UCA)-Université Nice Sophia Antipolis (... - 2019) (UNS), COMUE Université Côte d'Azur (2015-2019) (COMUE UCA)-COMUE Université Côte d'Azur (2015-2019) (COMUE UCA)-Centre National de la Recherche Scientifique (CNRS)-Université Côte d'Azur (UCA), COMUE Université Côte d'Azur (2015 - 2019), Sébastien Mosser, and Michel Riveill
- Subjects
Transformations ,Software composition ,Software engineering ,Génie logiciel ,[INFO.INFO-SE]Computer Science [cs]/Software Engineering [cs.SE] ,Composition logicielle - Abstract
The complexity of software systems made it necessary to split them up and reunite them afterward. Separating concerns is a well-studied challenge and teams separate the work to be done beforehand. Still, separating without considering the recomposition leads to rushed, unsafe, and time-consuming recomposition. The composition should create the right and best system with minimal human effort. Composition operators are often ad-hoc solutions developed by non-specialist development teams. They are not developed using high-level formalism and end up being too complicated or too poorly formalized to support proper reasonings. We call them "black-boxes" as existing techniques requiring knowledge of its internals cannot be applied or reused. However, black-box operators, like others, must ensure guarantees: one must assess their idempotency to use them in a distributed context; provide an average execution time to assess usage in a reactive system; check conflicts to validate that the composed artifact conforms to business properties. Despite the black-box aspect, none of these properties are domain-specific. In this thesis, we present a domain-independent approach that enables (i) reasonings on composition equation, (ii) to compose them safely, (iii) by assessing properties similar to the ones from the state-of-the-art. We validated the approach in heterogeneous application domains: 19 versions of Linux kernel with 54 rewriting rules, fixing 13 antipatterns in 22 Android apps, and validating the efficiency of the approach on the composition of 20k Docker images.; La complexité des systèmes informatiques a rendu nécessaire leur découpage avant de les recomposer. Cette séparation est un défi connu et les développeurs découpent déjà les tâches au préalable. Néanmoins, séparer sans considérer la recomposition finale entraine des réunifications hâtives et chronophages. Cette composition doit mener au bon et meilleur système avec le minimum d'effort humain. Les opérateurs de composition sont souvent ad-hoc et développés par des non-spécialistes. Ils ne respectent pas de formalismes de haut-niveau et deviennent trop complexes ou informels pour pouvoir raisonner. Nous les appelons des "boites-noires": les techniques nécessitant d'en connaitre l'intérieur ne peuvent être appliquées. Or, ces boites noires doivent garantir des propriétés : d'aucun doit vérifier son idempotence pour l'utiliser dans un contexte distribué ; connaitre son temps d'exécution pour des systèmes réactifs ; vérifier des conflits pour le confronter à des règles d'entreprise. Aucun de ces besoins n'est spécifique à un domaine applicatif. Dans cette thèse, nous présentons une approche indépendante du domaine qui permet, sur des opérateurs existants, (i) de raisonner sur des équations de composition pour (ii) les composer en sécurité, en (iii) proposant une vérification de propriétés similaires à celles de l’état de l’art. Nous avons validé cette approche sur des domaines différents : 19 versions du noyau Linux avec 54 règles de réécriture, réparé 13 « antipatrons » dans 22 applications Android et validé son efficacité sur la composition de 20k images Docker.
- Published
- 2019
49. A Modular Framework for Verifying Versatile Distributed Systems
- Author
-
Florent Chevrou, Aurélie Hurault, Philippe Quéinnec, Assistance à la Certification d’Applications DIstribuées et Embarquées (IRIT-ACADIE), Institut de recherche en informatique de Toulouse (IRIT), Université Toulouse 1 Capitole (UT1), Université Fédérale Toulouse Midi-Pyrénées-Université Fédérale Toulouse Midi-Pyrénées-Université Toulouse - Jean Jaurès (UT2J)-Université Toulouse III - Paul Sabatier (UT3), Université Fédérale Toulouse Midi-Pyrénées-Centre National de la Recherche Scientifique (CNRS)-Institut National Polytechnique (Toulouse) (Toulouse INP), Université Fédérale Toulouse Midi-Pyrénées-Université Toulouse 1 Capitole (UT1), Université Fédérale Toulouse Midi-Pyrénées, Institut National Polytechnique (Toulouse) (Toulouse INP), ANR-16-CE25-0006,PARDI,Vérification de systèmes distribués paramétrés(2016), Institut National Polytechnique de Toulouse - Toulouse INP (FRANCE), Centre National de la Recherche Scientifique - CNRS (FRANCE), Université Toulouse III - Paul Sabatier - UT3 (FRANCE), Université Toulouse - Jean Jaurès - UT2J (FRANCE), and Université Toulouse 1 Capitole - UT1 (FRANCE)
- Subjects
Model checking ,[INFO.INFO-AR]Computer Science [cs]/Hardware Architecture [cs.AR] ,Logic ,Computer science ,Distributed computing ,Existential quantification ,Interaction protocol ,0102 computer and information sciences ,02 engineering and technology ,[INFO.INFO-SE]Computer Science [cs]/Software Engineering [cs.SE] ,Distributed systems ,Interface homme-machine ,01 natural sciences ,Theoretical Computer Science ,Data modeling ,[INFO.INFO-CR]Computer Science [cs]/Cryptography and Security [cs.CR] ,Architectures Matérielles ,Multicast ,0202 electrical engineering, electronic engineering, information engineering ,Génie logiciel ,[INFO.INFO-HC]Computer Science [cs]/Human-Computer Interaction [cs.HC] ,Logique en informatique ,business.industry ,020207 software engineering ,Modular design ,Modélisation et simulation ,Multicast communication ,Systèmes embarqués ,[INFO.INFO-MO]Computer Science [cs]/Modeling and Simulation ,TLA+ ,Computational Theory and Mathematics ,010201 computation theory & mathematics ,Asynchronous communication ,Models of communication ,Compatibility (mechanics) ,Cryptographie et sécurité ,[INFO.INFO-ES]Computer Science [cs]/Embedded Systems ,Compatibility checking ,business ,Software - Abstract
International audience; Putting independent components together is a common design practice of distributed systems. Besides, there exists a wide range of interaction protocols that dictate how these components interact, which impacts their compatibility. However, the communication model itself always consists in a monolithic description of the rules and properties of the communication. In this paper, we propose a mechanized framework for the compatibility checking of compositions of peers where the interaction protocol can be fine tuned through assembly of basic properties on the communication. These include whether the communication is point-to-point, multicast or convergecast, which ordering-policies are to be applied, applicative priorities, bounds on the number of messages in transit, and so on. Among these properties, we focus on a generic description of multicast communication that encompasses point-to-point and one-to-all communication as special cases. The components that form the communication model are specified in TLA+, and a system, composed of a communication model and a specification of the behavior of the peers (also in TLA+ ), is checked with the TLA+ model checker. Eventually we provide theoretical views on the relations between ordering-policies through the lenses of multicast and convergecast communication.
- Published
- 2019
- Full Text
- View/download PDF
50. A Map of Asynchronous Communication Models
- Author
-
Philippe Quéinnec, Florent Chevrou, Aurélie Hurault, Shin Nakajima, Assistance à la Certification d’Applications DIstribuées et Embarquées (IRIT-ACADIE), Institut de recherche en informatique de Toulouse (IRIT), Université Toulouse 1 Capitole (UT1), Université Fédérale Toulouse Midi-Pyrénées-Université Fédérale Toulouse Midi-Pyrénées-Université Toulouse - Jean Jaurès (UT2J)-Université Toulouse III - Paul Sabatier (UT3), Université Fédérale Toulouse Midi-Pyrénées-Centre National de la Recherche Scientifique (CNRS)-Institut National Polytechnique (Toulouse) (Toulouse INP), Université Fédérale Toulouse Midi-Pyrénées-Université Toulouse 1 Capitole (UT1), Université Fédérale Toulouse Midi-Pyrénées, Institut National Polytechnique (Toulouse) (Toulouse INP), National Institute of Informatics (NII), Centre National de la Recherche Scientifique - CNRS (FRANCE), Institut National Polytechnique de Toulouse - Toulouse INP (FRANCE), Université Toulouse III - Paul Sabatier - UT3 (FRANCE), Université Toulouse - Jean Jaurès - UT2J (FRANCE), Université Toulouse 1 Capitole - UT1 (FRANCE), and National Institute of Informatics - NII (JAPAN)
- Subjects
[INFO.INFO-AR]Computer Science [cs]/Hardware Architecture [cs.AR] ,Correctness ,Theoretical computer science ,refine-ments of communication models ,Computer science ,0102 computer and information sciences ,02 engineering and technology ,[INFO.INFO-SE]Computer Science [cs]/Software Engineering [cs.SE] ,Interface homme-machine ,01 natural sciences ,Safety property ,[INFO.INFO-CR]Computer Science [cs]/Cryptography and Security [cs.CR] ,Architectures Matérielles ,Component (UML) ,0202 electrical engineering, electronic engineering, information engineering ,Génie logiciel ,[INFO.INFO-HC]Computer Science [cs]/Human-Computer Interaction [cs.HC] ,Formal verification ,Abstraction (linguistics) ,Event (computing) ,Modélisation et simulation ,Systèmes embarqués ,[INFO.INFO-MO]Computer Science [cs]/Modeling and Simulation ,010201 computation theory & mathematics ,Asynchronous communication ,Distributed algorithm ,Models of communication ,Cryptographie et sécurité ,Event-B ,020201 artificial intelligence & image processing ,formal verification ,[INFO.INFO-ES]Computer Science [cs]/Embedded Systems - Abstract
National audience; Asynchronous communication encompasses a variety of fea-tures besides the decoupling of send and receive events. Those include message-ordering policies which are often crucial to the correctness of a distributed algorithm. This paper establishes a map of communica-tion models that exhibits the relations between them along two axes of comparison: the strength of the ordering property and the level of ab-straction of the specification. This brings knowledge about which model can be substituted by another without breaking any safety property. Fur-thermore, it brings flexibility and ready-to-use modules when developing correct-by-construction distributed systems where model decomposition exposes the communication component. Both criteria of comparison are covered by refinement. We consider seven ordering policies and we model in Event-B these communication models at three levels of abstraction. The proofs of refinement between all of these are mechanized in Rodin.
- Published
- 2019
- Full Text
- View/download PDF
Catalog
Discovery Service for Jio Institute Digital Library
For full access to our library's resources, please sign in.