Python
Latest commit 1a67101 Jan 19, 2017 laowantong Merge branch 'pip_magic'
Permalink
Failed to load latest commit information.
doc updated manual and version number Jan 19, 2017
logos redraw master icon Oct 1, 2016
magic rc1 Jan 19, 2017
mocodo updated manual and version number Jan 19, 2017
.gitignore updated manual and version number Jan 19, 2017
README.md make can.rawgit refresh svg Oct 24, 2016
mocodo.py fix #36 Sep 30, 2016
setup.py fix #36 Sep 30, 2016

README.md

Mocodo est un logiciel d'aide à l'enseignement et à la conception des bases de données relationnelles.

  • En entrée, il prend une description textuelle des entités et associations du modèle conceptuel de données (MCD).
  • En sortie, il produit son diagramme entité-association en SVG et son schéma relationnel (MLD) en SQL, LaTeX, Markdown, etc.

Ci-dessous, un exemple sous Jupyter Notebook. L'appel du programme se fait en première ligne, sur un texte d'entrée donné lignes suivantes.

%%mocodo --mld --colors brewer+1 --shapes copperplate --relations diagram markdown_data_dict
DF, 11 Élève, 1N Classe
Classe: Num. classe, Num. salle
Faire Cours, 1N Classe, 1N Prof: Vol. horaire
Catégorie: Code catégorie, Nom catégorie

Élève: Num. élève, Nom élève
Noter, 1N Élève, 0N Prof, 0N Matière, 1N Date: Note
Prof: Num. prof, Nom prof
Relever, 0N Catégorie, 11 Prof

Date: Date
Matière: Libellé matière
Enseigner, 11 Prof, 1N Matière

En sortie, le MCD (diagramme conceptuel) et le MLD (schéma relationnel) correspondants:

Classe (Num. classe, Num. salle)
Faire Cours (Num. classe, Num. prof, Vol. horaire)
Catégorie (Code catégorie, Nom catégorie)
Élève (Num. élève, Nom élève, Num. classe)
Noter (Num. élève, Num. prof, Libellé matière, Date, Note)
Prof (Num. prof, Nom prof, Libellé matière, Code catégorie)

L'appel ci-dessus a également construit le dictionnaire des données:

  • Num. classe
  • Num. salle
  • Vol. horaire
  • Code catégorie
  • Nom catégorie
  • Num. élève
  • Nom élève
  • Note
  • Num. prof
  • Nom prof
  • Date
  • Libellé matière

Ainsi que le diagramme relationnel, qui peut être visualisé par un nouvel appel:

%mocodo --input mocodo_notebook/sandbox.mld --colors brewer+1

La devise de Mocodo, « nickel, ni souris », en résume les principaux points forts:

  • description textuelle des données. L'utilisateur n'a pas à renseigner, placer et déplacer des éléments comme avec une lessive ordinaire. Il ne fournit rien de plus que les informations définissant son MCD. L'outil s'occupe tout seul du plongement;
  • propreté du rendu. La sortie se fait en vectoriel, prête à être affichée, imprimée, agrandie, exportée dans une multitude de formats sans perte de qualité;
  • rapidité des retouches. L'utilisateur rectifie les alignements en insérant des éléments invisibles, en dupliquant des coordonnées ou en ajustant des facteurs mutiplicatifs: là encore, il travaille sur une description textuelle, et non directement sur le dessin.

Mocodo est libre, gratuit et multiplateforme. Si vous l'aimez, répandez la bonne nouvelle en incluant l'un de ses logos dans votre support: cela multipliera ses chances d'attirer des contributeurs qui le feront évoluer.

Pour vous familiariser avec Mocodo, le mieux est d'utiliser sa version en ligne.

Pour en savoir plus, lisez la documentation au format HTML ou téléchargez-la au format Jupyter Notebook.