BACK TO INDEX

Publications of year 1998
Thesis
  1. Thomas Ledoux. Réflexion dans les systèmes répartis, application à CORBA et Smalltalk. PhD thesis, École des Mines de Nantes et Université de Nantes, March 1998.
    Abstract:
    Aujourd'hui, la technologie objet s'impose dans le monde industriel comme la meilleure solution pour répondre aux problèmes de l'intégration et de la réutilisation des composants logiciels distribués. En normalisant des spécifications pour la portabilité et l'interopérabilité des composants objets, le bus logiciel CORBA (Common Object Request Broker Architecture) constitue une première approche pour aborder le problème de la construction d'applications distribuées à objets. Par ailleurs, les concepts de la réflexion permettent de réaliser des systèmes ouverts en rendant adaptables les différentes caractéristiques d'un programme. Ainsi, dans le contexte des environnements répartis, les langages réflexifs offrent un modèle dynamique d'exécution permettant l'introspection et la modification des stratégies et des mécanismes de distribution. L'objectif de cette thèse est d'explorer l'apport des techniques de réflexion dans le cadre des architectures distribuées et plus particulièrement autour de CORBA. Nous mettons notamment l'accent sur deux propriétés indispensables pour la construction d'applications réparties : la séparation des aspects et l'adaptabilité dynamique. Nous présentons OpenCorba, un système ouvert, basé sur un nouveau protocole à métaobjets Smalltalk. Il réifie différents aspects du bus CORBA afin de rendre plus malléable la « boîte noire » de l'ORB (Object Request Broker, i.e. le bus). OpenCorba favorise la séparation des caractéristiques internes du bus pour mieux les organiser, les rendre modulaires et donc interchangeables (séparation des aspects). OpenCorba permet ainsi d'intervenir sur le modèle d'exécution répartie de l'ORB, pour changer dynamiquement les stratégies de représentation et d'exécution (adaptabilité dynamique). OpenCorba est le premier ORB réflexif apportant la flexibilité nécessaire aux environnements distribués.


Articles in journal or book chapters
  1. Charles Consel, Luke Hornof, Julia Lawall, Renaud Marlet, Gilles Muller, Jacques Noyé, Scott Thibault, and Eugen-Nicolae Volanschi. Partial Evaluation for Software Engineering. ACM Computing Surveys, 30(3), September 1998.


  2. Charles Consel, Luke Hornof, Julia Lawall, Renaud Marlet, Gilles Muller, Jacques Noyé, Scott Thibault, and Eugen-Nicolae Volanschi. Tempo: Specializing Systems Applications and Beyond. ACM Computing Surveys, 30(3), September 1998.


  3. H. A. Sahraoui, N. Revault, G. Blain, and J.-F. Perrot. Un outil pour la conception de bases de données à objets. Revue Technique et Science Informatique (TSI), 17(7), 1998. Keyword(s): génie logiciel, modélisation sémantique, méta-modélisation, méta-outils, bases de données à objets, acquisition des connaissances, programmation par règles..
    Abstract:
    La conception des bases de données à objets est une activité complexe, qui fait appel à des connaissances variées. Elle est facilitée par l'emploi d'outils logiciels dont la construction présente elle-même des difficultés substantielles. Nous proposons d'aborder le problème du développement de ces outils par une technique de méta-modélisation, dans un environnement logiciel expérimental : le système MétaGen. Cet article décrit une expérience de reconstruction d'un de ces outils (InterSem, développé à Montréal) avec notre technique. A travers cette expérience nous montrons que de nombreux problèmes (rapidité d'écriture, facilité de maintenance et d'évolution) peuvent être ainsi résolus.


Conference articles
  1. R. Allen, Rémi Douence, and D. Garlan. Specifying and Analyzing Dynamic Software Architectures. In Fundamental Approaches to Software Engineering (FASE), volume 1382 of Lecture Notes in Computer Science, pages 21-37, March 1998. Springer-Verlag.


  2. Isabell Borne, Wolfgang De Meuter, and Fernando Brito e Abreu. Techniques, Tools and Formalisms for capturing and assessing Architectural Quality in Object-Oriented Software. In Serge Demeyer and Jan Bosch, editors, Object-Oriented Technology (ECOOP'98 Workshop Reader), volume 1543 of Lecture Notes in Computer Science, July 1998. Springer-Verlag.


  3. Isabelle Borne, Annya Romanczuk-Réquilé, and Frédérique Stéfani. Towards a Systematic Object-Oriented Transformation of a Merise Analysis. In Proceedings of the 2nd Euromicro Conference on Software Maintenance and Reengineering, CSMR'98, Florence, Italy, March 1998. IEEE Computer Society Press. Keyword(s): Object-oriented analysis, reengineering, legacy system, restructuring.
    Abstract:
    In the framework of a project whose main goal is to design a reengineering platfrom for legacy systems, we propose a rule-based approach for a systematic object-oriented transformation of a MERISE analysis. This work is an ongoing research which will lead to the realization of a semi-automatic tool to transform a MERISE analysis schema to an object-oriented analysis schema. In this paper we will present the restructuring process and the rules extracted from a real-world case provided by a company wishing to migrate to object-oriented techniques in order to improve its maintenance process and software quality.


  4. Noury M. Bouraqadi-Saâdani, Thomas Ledoux, and Fred Rivard. Safe Metaclass Programming. In Proceedings of OOPSLA'98, pages 84-96, October 1998. ACM-Sigplan.
    Abstract:
    In a system where classes are treated as first class objects, classes are defined as instances of other classes called {\em metaclasses}. An important benefit of using metaclasses is the ability to assign {\em properties} to classes (e.g. being abstract, being final, tracing particular messages, supporting multiple inheritance), independently from the base-level code. However, when both inheritance and instantiation are explicitly and simultaneously involved, communication between classes and their instances raises the {\em metaclass compatibility} issue. Some languages (such as Smalltalk) address this issue but do not easily allow the assignment of specific properties to classes. At the opposite, other languages (such as CLOS) allow the assignment of specific properties to classes but do not tackle the compatibility issue well. In this paper, we describe a new model of metalevel organization called {\em the compatibility model} which overcomes this difficulty. It allows \emph{safe metaclass programming} since it makes it possible to assign specific properties to classes while ensuring metaclass compatibility. Therefore, we can take advantage of the expressive power of metaclasses to build reliable software. We implemented this compatibility model in NeoClasstalk, a fully reflective Smalltalk. Our implementation extends NeoClasstalk's metaclass facility, enabling safe reuse and composition of class specific properties. This simplifies and enhances the use of metaclasses.


  5. Noury M. Bouraqadi-Saâdani, Fred Rivard, and Thomas Ledoux. Composition de Métaclasses. In Journées francophones des langages applicatifs, JFLA'98, Como, Italy, February 1998.
    Abstract:
    Dans un contexte de classes réifiées, les classes sont définies comme instances d'autres classes : les métaclasses. Il est alors possible d'attribuer des propriétés aux classes (être abstraite, avoir une seule instance, ...) par le biais de leurs métaclasses. Cet article traite de la problématique de la composition des métaclasses. L'utilisation des métaclasses structure les applications en niveaux d'abstraction qui peuvent communiquer entre eux. Lors de la composition de (méta)classes, des problèmes dit d'incompatibilité apparaissent du fait des communications entre niveaux. Certains langages (par exemple Smalltalk) privilégient la compatibilité au détriment de la composition des propriétés de classes. Tandis que d'autres langages (par exemple CLOS) privilégient la composition des propriétés de classes au détriment de la compatibilité. Partant du modèle des hiérarchies parallèles de Smalltalk, nous définissons un pattern de compatibilité. Il permet de garantir la compatibilité entre niveaux d'abstraction tout en autorisant la réutilisation et la composition de propriétés de classes. Notre implémentation du pattern de compatibilité a montré qu'il permet une composition fiable des metaclasses, ce qui facilite et encourage leur utilisation.


  6. Mathias Braux. Speeding up the Meta-level Processing of Java Through Partial Evaluation. In Jean-Charles Fabre and Shigeru Chiba, editors, OOPSLA'98 Workshop on Reflective Programming in C++ and Java, Center for Computational Physics, University of Tsukuba, Japan, October 1998.
    Abstract:
    Run-time features like reflection in object-oriented languages decrease application performance. In order to reconcile flexibility and performance, we adapt the standard partial evaluation process to deal with Java reflection API. This paper present a way to evaluate at compile time the meta-object computations that normally take place at run time. A classification of the Java reflective methods allows the partial evaluation process when to start and end.


  7. Pierre Cointe and N. Revault. JavaBeans - Un modèle de composants logiciels. In Proceedings of Objet'98, June 1998. Keyword(s): Java, événements, composants logiciels, environnements de développement.
    Abstract:
    Ce support d'exposé est dedié à la présentation de JavaBeans, l'architecture de composants associée à Java. Un bean java (un grain de café) est un composant logiciel réutilisable manipulable visuellement a l'aide d'outils de construction d'applications. Un bean est modélisé par une classe Java respectant des règles de constructions particulières (design patterns) accessibles au niveau du langage même par introspection. Après un court rappel des aspects avancés du modèle objet de Java incluant les processus légers (threads), la "serialisation" (linéarisation/reconstruction), les évènements et la réflexion nous détaillons la construction d'un premier bean . Cet exemple est l'occasion de démontrer différents environnements de développement et de générations d'applications Java dont ``VisualAge for Java'' d'IBM et la ``BeanBox'' de Sun.


  8. Mireille Ducassé and Jacques Noyé. Tracing Prolog Programs by Source Instrumentation is Efficient Enough. In Proceedings of the JICSLP'98 Post-Conference Workshop on Parallelism and Implementation Technology for (Constraint) Logic Programming Languages, June 1998.


  9. Pascal Fradet and Mario Südholt. AOP: towards a generic framework using program transformation and analysis. In International Workshop on Aspect-Oriented Programming at ECOOP, July 1998. Keyword(s): aop, abstract interpretation, aspect of program robustness.
    Abstract:
    What exactly are aspects? How to weave? What are the join points used to anchor aspects into the component program? Is there a general purpose aspect language? We address these questions for a particular but quite general class of aspects: aspects which can be described as static, source-to-source program transformations. We discuss the design of a generic framework to express aspects as syntactic transformations as well as a generic weaver. We also consider how to use semantic properties for the definition of aspects and how to implement these properties using static analysis techniques. As an application of the framework, we sketch how to describe and implement an aspect dealing with program robustness and exceptions.


  10. Thomas Ledoux. Adaptabilité dynamique des aspects pour la construction d'applications réparties ouvertes. In Colloque International sur les NOuvelles TEchnologies de la REpartition, NOTERE'98, Montréal, Canada, October 1998.
    Abstract:
    Aujourd'hui, la complexité croissante des systèmes informatiques nécessite de trouver de nouveaux mécanismes d'abstraction pour améliorer la conception et l'implémentation des applications. Le paradigme de la séparation des aspects offre une approche intéressante pour permettre la réutilisabilité de composants logiciels. Dans cet article, nous proposons d'étendre ce paradigme pour prendre en compte l'évolutivité des systèmes pendant leur exécution. Cette extension, nommée adaptabilité dynamique des aspects, va permettre à un système de remplacer un aspect spécifique par un autre, pendant son exécution, sans affecter le reste du système. Dans le contexte des applications réparties, les concepts de séparation et d'adaptabilité dynamique des aspects contribuent grandement à la construction d'architectures ouvertes. Ils permettent en effet de modéliser, de réutiliser et d'adapter les nombreux mécanismes de répartition. Nous illustrons cette approche dans le cadre de la plate-forme CORBA. Dans un premier temps, nous établissons une correspondance entre aspects et réflexion, de façon à mettre en oeuvre la séparation et l'adaptabilité dynamique des aspects. Puis, nous présentons OpenCorba, un ORB ouvert, capable dadapter dynamiquement les stratégies de représentation et d'exécution du bus logiciel.


  11. B. Lesueur, N. Revault, G. Sunyé, and M. Ziane. Using the MétaGen Modeling and Development Environment in the FIBOF Esprit Project. In , June 1998. Note: International Workshop on Automating the Object-Oriented Software Development at ECOOP'98. Keyword(s): object-oriented development, metamodelling, domain-specific language, oo application frameworks.
    Abstract:
    This paper presents an original approach to the development of object-oriented applications using MétaGen, the MetaCASE tool developed by the MétaFor team of Paris 6 University's CS Lab (LIP6). This approach addresses the crucial communication problem between users and developers by supporting the development of domain-specific languages. Moreover, even though the production of code from user requirements is not as automated as with more formal approaches, MétaGen supports the factorization of implementation knowledge for a whole application domain. This implementation knowledge is expressed in a first-order-logic rule-based system and is based on the use of state-of-the-art object-oriented technology such as application frameworks and design patterns. Our approach has been validated on real-size applications including the FIBOF ESPRIT IV project which is presented here.


  12. Annya Romanczuk-Réquilé. Introduction à UML. In Proceedings of Objet'98, June 1998. Keyword(s): analyse et conception par objets.
    Abstract:
    Le langage de modélisation UML (Unified Modeling Language), soumis récemment à l'OMG (Object Management Group), est devenu un standard pour la modélisation d'applications par objets. A l'origine, UML a été défini à partir d'une fusion des méthodes Booch, OMT (Object Modeling technique) et OOSE (Object Oriented Software Engineering). Désormais, de nombreux ateliers de génie logiciel supportent ce langage de modélisation unifiée et l'utilisation de celui-ci dans le développement industriel d'applications par objets devient incontournable. Ce tutoriel d'introduction à UML présente une description : des concepts de base et de leur notation, des diagrammes graphiques constituant les différentes vues d'un modèle objet et d'une démarche de développement.


  13. Annya Romanczuk-Réquilé, Cabral Lima, Celso Kaestner, and Edson Scalabrin. A contextual Help System Based on Intelligent Diagnosis Processes aimed to the Conception and Maintenance of Object-Oriented Software Packages. In International Workshop on Techniques, Tools and Formalisms for Capturing and Assessing Architectural Quality in Object-Oriented Software, ECOOP'98, July 1998.
    Abstract:
    Software Engineering and object-oriented technologies represent expectations in supplying the high and increasing demand of the software market for products wit h guaranteed quality and of acceptable cost and performance. The quality is soug ht through the utilization of object-oriented methodologies since the stage of d esign and implementation until the stage of software's test. Nevertheless, the q uantification of this quality is taken into effect from adequate metrics. Actual ly, assuring an optimal level of quality is very difficult, since there are few systems that can effectively help designers and programmers to acquire more per formance in their activities. The aim of this paper is presenting a solution that helps the software designer in the improvement and maintenance of quality, in two situations: (1) in the diagnosis of quality of an existing system, and in the assessment of the best strategy of its modification; and^M (2) in the design, implementation and test of a new system project, either since its initial design (forward engineering process), or from an already-existing s ystem (reengineering process). The proposal is prone to the definition, design and implementation of an integra ted environment that aids and counsels on-line designers and programmers to incr ease the performance of their respective activities. The main techniques used in this approach come from Artificial Intelligence, particularly from the so-calle d Intelligent Systems (e.g. systems based on knowledge, multi-agents systems). This paper presents the following subjects: contextual diagnosis in intelligent systems; the main aspects treated in object-oriented systems; the modeling adopt ed for implementation of the proposal; and finally, the first conclusions about our research project.


Internal reports
  1. Hervé Albin-Amiot. Génération automatique de classes Smalltalk et Java à partir de patterns. Rapport de DEA, École des Mines de Nantes, September 1998.


  2. Yann-Gaël Guéhéneuc. Syntax-error recovery in Interactive Development Environments. Rapport de DEA, École des Mines de Nantes, September 1998.



BACK TO INDEX




Disclaimer:

This material is presented to ensure timely dissemination of scholarly and technical work. Copyright and all rights therein are retained by authors or by other copyright holders. All person copying this information are expected to adhere to the terms and constraints invoked by each author's copyright. In most cases, these works may not be reposted without the explicit permission of the copyright holder.

Les documents contenus dans ces répertoires sont rendus disponibles par les auteurs qui y ont contribué en vue d'assurer la diffusion à temps de travaux savants et techniques sur une base non-commerciale. Les droits de copie et autres droits sont gardés par les auteurs et par les détenteurs du copyright, en dépit du fait qu'ils présentent ici leurs travaux sous forme électronique. Les personnes copiant ces informations doivent adhérer aux termes et contraintes couverts par le copyright de chaque auteur. Ces travaux ne peuvent pas être rendus disponibles ailleurs sans la permission explicite du détenteur du copyright.




Last modified: Wed May 31 15:05:58 2017
Author: helene.


This document was translated from BibTEX by bibtex2html