Skip to content

patrickdupre/mocodo_js

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

42 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Mocodo is a software created to help teaching and designing relational databases (https://github.com/laowantong/mocodo). (This tool works according to a part of the principles of the "Merise" method : https://en.wikipedia.org/wiki/Merise)

Mocodo{.js} uses the formalism of mocodo (same textual description) to construct the MCD (conceptual data model). With Mocodo{.js}, the client browser is working, not the server.

  • The online version is a "beta version".
  • Errors are not managed.
  • The code needs to be reworked.

The script is tested with Brave, Chrome, Edge and Firefox browsers (it doesn't work on Internet Explorer - use Edge or whatever).

  • Input: the textual description of the entities and associations of the conceptual data model.
  • Output: entity-association diagram in [SVG] which can be downloaded.

Online version

https://www.st2msi.net/mocodo_js/mocodo_js.html You can train first with the original : http://www.mocodo.net/.

Contributions of this version

  • Generalization/specialization (heritage) is expressed through relationships: XT,T,X or .
  • These relations receive the cardinalities && (avoids displaying cardinalities).
  • The first property of "subtype" entities is preceded by a & (le & avoid underlining).
  • example: XT, &&> ModelePalette, && Standard, && Personalisee.
  • , &&> ModelePalette, && Standard, && Personalisee will display an empty triangle.

Example

Input

Adapted from a case study (BTS SIO SLAM AHM-23 - 2017).
EssenceBois: id, libelle
:
:
Constituer, 0N EssenceBois, 11 MatierePremiere

:
Composant: id, libelle, longueur, largeur, epaisseur
Decouper, 1N Composant, ON MatierePremiere: quantiteDecoupee, longueurPerte, longueurChute
MatierePremiere:id, libelle, longueur, largeur, epaisseur, idEssence
Stock,0N MatierePremiere, 0N Site : stockActuel, stockAlerte
Site: code, nom

dans une, 0N EssenceBois, 11 ModelePalette
composer, 0N Composant, 0N ModelePalette: Qantite
LigneCommande,0N ModelePalette, 0N Commande: quantiteCommandee, prixUnitaireFacture, estFabrique
:
associer, 11 Client, 0N Site
travailler, 0N Site, 11 Utilisateur

: 
ModelePalette: id, designation, longueur, largeur, poidsCharge, coutRevient, type, nomFichierPdf
Commande: id, dateCommande, dateLivraisonPrevue, dateLivraisonReelle
passer, 11 Commande, 0N Client
Client:numero, raisonSociale, adresseRue, codePostal, ville, telephone, courriel, imageLogo
Utilisateur: login, motDePasse, nom, prenom

:
XT, &&> ModelePalette, && Standard, && Personalisee
:
demander, 11 Personalisee, 0N Client

Standard: &refCatalogue
:
Personalisee: &dateApplication, dateCreation, contact

Output

Local install

  • You need to have an installed and operational http server
  • Download the code via Github
  • Unzip the file at the server's root
  • Call the file mocodo_js.html from your browser

Bibliography

  • INGENIERIE DES SYSTEMES D’INFORMATION : MERISE DEUXIEME GENERATION (http://www.lsis.org/espinasseb/LivreMerise/LivreMerisePDF-total-12sept14.pdf
  • Jean-Luc Hainaut (2018), Bases de données - 4e édition - Concepts, utilisation et développement (InfoSup, Dunod)
  • Joseph Gabay (2001), Merise et UML pour la modélisation des systèmes d'information - Un guide complet avec études de cas, (Informatique, Dunod)

References

About

Mocodo{.js} uses the formalism of mocodo https://github.com/laowantong/mocodo (same textual description) to construct the MCD (conceptual data model). With Mocodo{.js}, the client browser is working, not the server.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors