thesis

Reuse and scalability in modeling and simulation software engineering

Defense date:

Jan. 1, 2011

Edit

Institution:

Nice

Disciplines:

Abstract EN:

Pas de résumé disponible.

Abstract FR:

L’étude d’un système à l’aide de simulations informatiques à événements discrets implique plusieurs activités : spécification du modèle conceptuel, description de l’architecture logicielle du modèle, développement du logiciel, scénarisation de la simulation, instrumentation, planification d’expérimentation, configuration des ressources de calcul, exécution, post-traitement et analyse, validation et vérification. De nombreux éléments logiciels sont requis pour remplir toutes ces activités. Toutefois, il est fréquent de créer un nouveau simulateur à partir de rien quand on commence une étude à l’aide de simulation. Dans ce cas il est nécessaire de développer de multiples outils prenant en charge les activités de la simulation. Cette thèse aborde le défi de la création de nouveaux simulateurs tout en réutilisant des modèles et des outils provenant d’autres simulateurs. En effet, la réutilisation de logiciel augmente la fiabilité, est moins sujette aux erreurs, permet une meilleure utilisation des expertises complémentaires, améliore la conformité aux normes, et accélère le développement. La réutilisation de logiciels peut être appliquée à toutes les activités de la simulation. Plusieurs problèmes doivent être résolus pour tirer pleinement profit de la réutilisation. Dans cette thèse, nous abordons trois questions principales : tout d’abord, nous étudions les solutions pratiques de réutilisation permettant de combiner un ensemble choisi d’éléments logiciels utiles pour la modélisation et la simulation, en incluant aussi bien les modèles, les moteurs de simulation, les algorithmes et les outils. Deuxièmement, nous nous concentrons sur les questions liées à l’instrumentation. Troisièmement, nous étudions le problème de l’intégration d’éléments logiciels provenant d’autres simulateurs dans un nouveau simulateur. Pour atteindre ces objectifs, nous étudions des techniques de pointe en génie logiciel comme le génie logiciel à base de composants, la modélisation par couches et la programmation orientée aspect.