Proposition de stage en
informatique – Conception d’un éditeur de
diagramme de classes UML
Dans le cadre du
développement de sa plateforme de modélisation et simulation multi-agent, Cormas (http://cormas.cirad.fr), l’Unité de Recherche GREEN du Cirad (http://ur-green.cirad.fr) propose un stage indemnisé de 6 mois pour un étudiant en informatique
pour développer un module de Cormas . Ce développement
informatique consiste à mettre au point un éditeur graphique permettant de
dessiner un diagramme de classes UML et de générer du code SmallTalk (à la fois
en VisualWorks de Cincom et en Pharo, open-source) de la structure du modèle en
se référant au standard "Executable UML" (xUML) proposé par Mellor
& Balcer (2002) and adopté par l’OMG (2003). Pour ce travail, nous ne
cherchons pas un éditeur exhaustif intégrant tous les éléments décrits par
UML2. Pour cet éditeur, les éléments du méta-modèle proposés seront limités à :
la classe, ses attributs et ses méthodes, la spécialisation de classes et les
associations. Les associations sont simples (uniquement binaires) et sont définies
par leur nom et par leurs extrémités qui comportent chacune un nom de rôle, une valeur de multiplicité et la navigabilité. Cormas
étant un framework, le modèle créé par un utilisateur doit s’ancrer sur des
classes prédéfinies disponibles dans Cormas.
A la fin de la conception de son modèle, l’utilisateur devra être invité à
rattacher les classes qu’il a créées aux classes prédéfinies. Dans ce cas, les
propriétés héritées (méthodes, associations, attributs, ...) devront être
spécifiées dans le diagramme conceptuel de l’utilisateur qui pourra être
affiché de façon indépendante du framework. Outre la création
dynamique du squelette des classes, le stagiaire devra porter une attention
particulière aux associations entre classes uni ou bi-directionnelles qui
seront traduites en attributs nommés selon le rôle de l’extrémité de
l’association (on parle parfois de d’association dégénérée pour laquelle le
rôle de l’extrémité opposée est traduit en attribut). Ne seront pas prises en
compte les classes-associations, ni les associations n-aires, ni les associations
qualifiées.
Cet éditeur
permettra également de ré-afficher un modèle déjà sauvegarder mais aussi de
proposer de générer un nouveau diagramme à partir d’un modèle déjà implémenté
(rétro-ingénierie).
Par ailleurs, un
éditeur de diagramme d’activité xUML est déjà disponible dans Cormas. En sélectionnant une méthode de
son diagramme de classes, l’utilisateur pourra alors dessiner le comportement
de cette méthode en décrivant la succession des activités et des conditions
booléennes.
Bien que la distribution
de VisualWorks s’accompagne de quelques outils permettant des aller-retours
entre du code Smalltalk et des diagrammes UML (ADvance, Gipa, BOOST, MetaEdit+,
DoME, UMLForSmalltalk ou Umbrello,...), le développement de l’éditeur UML devra
se faire sous Roassal. En effet, avec
la sortie récente de Roassal2, un
moteur puissant de visualisation (http://objectprofile.com/Roassal.html), disponible à la fois pour VisualWorks et pour
Pharo, la mise au point de ce module UML permettra d’accélérer la migration de Cormas sous Pharo.
En option, il
sera intéressant de pouvoir générer le code XML (XMI) d’un modèle pour pouvoir
le lire dans un autre éditeur. ______
Durée : 6 mois (ou moins si nécessaire) Gratification :
485,10 € par mois. Lieu : pas d’accueil prévu au Cirad. L’étudiant
travaillera dans son laboratoire mais des contacts réguliers seront proposés. Contacts : Pierre Bommel ([hidden email]) et Grégoire Leclerc ([hidden email]).
[PB1] Profil de candidature : Etudiant en Informatique, License ou
Master, ayant un goût pour la modélisation et la simulation. L’étudiant doit
avoir de bonnes connaissances des concepts de la modélisation objet et d’UML.
Des compétences en programmation Smalltalk devront être acquises.
Bommel, P., Dieguez, F.,
Bartaburu, D., Duarte, E., Montes, E., Pereira, M., Corral, J., Lucena, C. de
and Morales Grosskopf, H. (2014). A Further Step Towards Participatory
Modelling. Fostering Stakeholder Involvement in Designing Models by Using
Executable UML. Journal of Artificial Societies and Social Simulation 17 (1) 6
<http://jasss.soc.surrey.ac.uk/17/1/6.html>.
Mellor, S. J., & Balcer, M. J. (2002). Executable UML : a foundation for model-driven architecture. Boston; San Francisco; New York: Addison-Wesley. -------------------------------------------- Stéphane Ducasse 03 59 35 87 52 Assistant: Julie Jonas 03 59 57 78 50 03 59 35 86 16 S. Ducasse - Inria 40, avenue Halley, Parc Scientifique de la Haute Borne, Bât.A, Park Plaza Villeneuve d'Ascq 59650 France _______________________________________________ Esug-list mailing list [hidden email] http://lists.esug.org/mailman/listinfo/esug-list_lists.esug.org |
Free forum by Nabble | Edit this page |