Project

General

Profile

CdC » History » Version 5

« Previous - Version 5/19 (diff) - Next » - Current version
Guillaume Babin, 01/26/2013 08:22 PM


Cahier des charges

Objectif général

L'objectif est de concevoir un éditeur textuel et graphique pour le langage de programmation Lustre sous une approche basée sur l'ingénierie des modèles, en utilisant l'outil ObeoDesigner. Les deux vues du programme édité doivent être synchronisées.

Fonctionnalités

Éditeur textuel

  • A.1 : projet xText
  • A.2 : coloration syntaxique adaptée au langage Lustre
  • A.3 : auto indentation
  • A.4 : auto complétion
  • A.5 : gestion des imports de bibliothèques

Éditeur graphique de type ``boîtes et flèches''

  • B.1 : utilisation de ObeoDesigner
  • B.2 : palette graphique pour les différents opérateurs
  • B.3 : affichage des différents nœuds sous forme de boîtes noires
  • B.4 : possibilité d'ouvrir les différents nœuds pour les visualiser
  • B.5 : possibilité de modifier les spécifications (entrées/sorties) d'un nœud donné
  • B.6 : possibilité d'afficher le code correspondant à un nœud donné

De manière générale

  • C.1 : toute modification du code dans l'éditeur textuel doit être répercutée dans l'éditeur graphique, et vice versa (synchronisation)
  • C.2 : le programme final sera reversé dans le marketplace Obeo http://marketplace.obeonetwork.com ou sur https://github.com/ObeoNetwork
  • C.3 : licence EPL (Eclipse Public License)
  • C.4 : documentation de qualité permettant l'amélioration future par d'autres équipes
  • C.5 : code de qualité permettant une bonne maintenabilité

Éventuellement, les fonctionnalités suivantes pourront être envisagées

  • D.1 : éditeur textuel : l'enroulage de code (folding)
  • D.2 : éditeur graphique : la possibilité d'importer des nœuds dans la palette graphique (chargement dynamique de bibliothèque)