Séminaires de Zhenjiang Hu et Soichiro Hidaka
Le vendredi 23 mars à 14h à l’Ecole Des Mines de Nantes (Amphi G Besse), séminaires de Zhenjiang Hu et Soichiro Hidaka intitulés "Bidirectional Transformations".
Model transformations are a key element in the OMG’s Model Driven Development agenda, providing a standard way to represent and transform software artifacts such as requirements, design models, program code, tests, configuration files, and documentation in software development. However, after a transformation is applied, the source and the target models usually co-exist and evolve independently. How to propagate modifications correctly across models in different formats and guarantee system consistency remains as a big challenge. In this talk, I will show that well-behaved bidirectional model transformations play an important role in making software evolution be more robust and trusty, and demonstrate how the bidirectional transformation system GRoundTram can be effectively used for development of evolutionary software with high confidence.
Bidirectional model transformation is useful for maintaining consistency between two models, and has many potential applications in software development including model synchronization, round-trip engineering, and software evolution. Despite these attractive uses, the lack of a practical tool support for systematic development of well-behaved and efficient bidirectional model transformation prevents it from being widely used. In this presentation, we introduce a well-behaved bidirectional semantics for a graph algebra for the known UnQL graph query language. We carefully refine the existing forward evaluation of structural recursion so that it can produce sufficient trace information for later backward evaluation. An integrated framework based on this bidirectionalization, called GRoundTram, which is carefully designed and implemented for compositional development of well-behaved and efficient bidirectional model transformations, is also introduced. GRoundTram is equipped with a user-friendly language for coding bidirectional model transformation, a new tool for validating both models and bidirectional model transformations, an optimization mechanism for improving efficiency, and a powerful debugging environment for testing bidirectional behavior. Theoretical and practical research challenges related to GRoundTram will also be discussed. This presentation is based a joint work with Zhenjiang Hu, Kazuhiro Inaba, Hiroyuki Kato, Kazutaka Matsuda, Keisuke Nakano, and other members of the BiG group at the National Institute of Informatics.