Structuration de modèles orientés métiers pour les systèmes embarqués : composants de modélisation et métamodélisation exécutable comme support des méthodologies de développement des systèmes embarqués
Institution:
Télécom BretagneDisciplines:
Directors:
Abstract EN:
The rise of the UML as the de-facto standard language for software-intensive systems has led to interesting evolutions in the whole software industry. Indeed, modeling technologies come with formalized semantics, through metamodels, and associated graphical syntax, allowing for simplified yet rigorous representations. Pragmatically, the concepts manipulated in UML are close to classical object concepts implemented in Java or C# : it is widely used as a syntactical easer for these languages, coupled wit automatic generation tools. Furthermore, model transformation techniques aims at manipulating models, traducing them from a language to an other, or merging them. In the MDA initiative, separate models, corresponding to business on the one side, and implementation platform on the other side, are merged in order to get the global system model. This facilitates the management of implementation technology evolutions, since the business model is clearly identified, and just has to be mapped against the new platform's model. In the system engineering domain, we state that the problematics is different, because the main problem here is not to be able to master a particular technique, but to manage the mass of information exchanged around the system. The vast number of stakeholders, each using its own technique to evaluate its own data, induces a large number of interactions, which have to be managed, i. E. Validated against key characteristics of the system. We show how a structure made of modeling components, allocated to development roles, can help us organize the development. A number of formalisms, those used for specific works, are transferred inside components, and are therefore hidden from the outside, while others are placed on interfaces, in order to specify exchange formats. By combining this organization with present executable metamodeling capabilities, we add process-based services inside components, in order to make first-order, methodology-able entities out of them.
Abstract FR:
Depuis la fin des années 90, avec l'avènement du langage UML, la modélisation des systèmes à logiciel prépondérant s'est développé de manière conséquente. Les capacités mises en avant par cette mouvance sont en effet très intéressantes, avec une formalisation de la sémantique via les métamodèles et une concision de la syntaxe via une représentation graphique. Par ailleurs, la proximité des concepts objet manipulés dans UML avec ceux implantés dans des langages de programmation comme Java ou C# fait de ce langage un excellent facilitateur syntaxique, et permet la génération automatique de code à partir de la représentation graphique d'une structure de données et des interactions auxquelles elles donnent lieu. Au-delà, les techniques de transformation de modèles permettent la manipulation des modèles, pour les passer d'un formalisme à un autre ou les fusionner. Ceci s'insère dans la démarche MDA de construction de modèles d'implantation par fusion de modèles aux préoccupations différentes, orientés business d'un côté, orientés plateforme technologique de l'autre. A chaque mutation technologique, seuls les modèles orientés plateforme sont à reprendre, tandis que les modèles business restent inchangés. Une transformation peut ensuite opérer le basculement du modèle business d'une technologie vers l'autre. Dans le cadre de l'ingénierie système, nous faisons le constat que la complexité inhérente au développement des grands systèmes induit une problématique autre. Le grand nombre d'intervenants, qui gère chacun des problèmes techniques spécifiques, entraîne l'utilisation de nombreux formalismes, dont il faut ensuite pouvoir maîtriser les interactions. Plus que l'établissement de formalismes adaptés, ou de transformations adaptées, c'est l'organisation des relations entre formalismes qui est ici étudiée. Nous montrons que l'espace de modélisation bénéficie d'être découpé en "composants de modélisation" autour des besoins métier. Certains formalismes, liés aux domaines métier ou aux capacités d'analyse, sont privatisés et donc rendus invisibles, tandis que d'autres sont mis en avant aux interfaces, pour permettre aux composants d'interagir. En combinant ce principe de découpage avec les capacités actuels de modélisation, il nous devient possible de structurer et hiérarchiser les échanges entre acteurs du développement. Dans ce cadre, les métamodèles eux-mêmes se voient adjoindre des capacités d'exécutabilité, afin de supporter les aspects méthodologiques qui leur sont propres, et de devenir ainsi des entités organisationnelles de premier plan.