GapMea est un outil de conception de bases de données (code sous licence GPL v3+ et documentation sous GFDL v1.3+).
GapMea est un outil graphique de modélisation des données écrit en C++ à l’aide de la bibliothèque Qt. Il permet de formaliser des schémas recueillant et structurant les informations nécessaires à un domaine de gestion. Le schéma obtenu est enregistré dans un fichier texte au format XML. Le logiciel permet la génération du code SQL nécessaire à la création des tables de la base de données qui vont accueillir les informations.
Cet outil permet un apprentissage rapide de la modélisation des données. Il offre une représentation synthétique des relations entre les tables d’une base de données.
Voici un aperçu du genre de schémas que l’on peut créer :
L’auteur
Professeur certifié en Informatique de Gestion, j’enseigne depuis plus de vingt ans en section de Technicien supérieur en informatique, aujourd’hui dénomméee BTS « Services Informatiques aux Organisations ».
Je suis donc en premier lieu enseignant, mais aussi développeur, administrateur système, dompteur de routeurs et autres commutateurs…
Le projet
Il est né d’un besoin, ni Umbrello ni Dia ne me satisfaisaient pour cet objectif particulier.
Historique
GapMea est un projet que je traîne depuis très longtemps : un premier jet a été développé avec Delphi et Interbase, puis un portage sous feu Kilix, une reprise complète et salutaire en Qt4 et enfin un portage sous Qt5.
De très nombreuses heures de travail donc… Il est maintenant temps pour ce code de quitter mon disque dur poussiéreux.
Longue vie à lui et au logiciel libre.
Aller plus loin
- Le site du projet (1794 clics)
- Les sources (370 clics)
- La documentation (525 clics)
- La documentation technique (270 clics)
- Téléchargements (941 clics)
- le BTS SIO de GAP (244 clics)
# Licence ?
Posté par OhMyGod . Évalué à 3.
Oh My God, c'est peut-être le logiciel de modélisation merise que j'attendais depuis longtemps !
Merci de partager ce code !
Cependant, quelle est la licence d'utilisation (des binaires et des sources) ?
Il ne me semble pas en avoir vu mention dans le dépôt github.
[^] # Re: Licence ?
Posté par palm123 (site web personnel) . Évalué à 5.
extrait de
http://gthom.btsinfogap.org/gapMea/gapMea.html
Copyright (C) 2016 Gilles Thomassin. Vous avez la permission de copier, distribuer ou modifier ce document selon les termes de la licence GNU de documentation libre, dans sa version 1.3 ou dans toute version ultérieure publiée par la Free Software Foundation . Cette licence est consultable ici.
ウィズコロナ
[^] # Re: Licence ?
Posté par Benoît Sibaud (site web personnel) . Évalué à 6. Dernière modification le 30 décembre 2016 à 12:24.
Pour le code, dans la boîte de dialogue About: GPLv3+ (ça serait mieux d'avoir un fichier COPYING ou LICENSE, plus des en-têtes dans les fichiers source)
Pour la doc, voir le commentaire précédent (GFDL 1.3+)
Infos ajoutées dans la dépêche.
# Makefile
Posté par mornik . Évalué à 3.
Bonjour,
Merci pour ce partage. En parcourant le makefile pour voir ce dont j'ai besoins pour le compiler sur fedora, une ligne m'a surpris :
J'suis pas un spécialiste du Makefile et encore moins du C++DISTDIR = /home/gthom/gapmeabuildservice/home:gthom/gapMea/gapmea-1/.tmp/gapmea1.0.0
[^] # Re: Makefile
Posté par Gilles Thomassin (site web personnel) . Évalué à 4.
Le fichier makefile est généré automatiquement par qmake et tient compte de l'environnement dont tu disposes.
Pour compiler à partir des sources il faut disposer de qt5 version dev
se placer dans le répertoire du source
$cd lesSources
construire le makefile
$qmake gapmea.pro
et compiler
$make
et ça devrait coller…
[^] # Re: Makefile
Posté par Renault (site web personnel) . Évalué à 3.
Cependant il a raison sur un point, tu n'aurais pas dû pousser le fichier Makefile dans les sources de ton programme. ;)
[^] # Re: Makefile
Posté par Gilles Thomassin (site web personnel) . Évalué à 3.
C'est vrai ;)
D'ailleurs il a maintenant disparu…
J'utilise osc et opensusebuildservice https://build.opensuse.org/package/show/home:gthom/gapMea pour générer un maximum de paquets. C'est très pratique.
Pour créer le rpm fedora il faut modifier le fichier gapmea.spec présent sur le dépôt build.opensuse car les noms des paquets requis sont différents d'une opensuse je pense notamment à libqt5-qtbase-devel qui n'est pas sous fedora. De même le "qmake-qt5" sera sans doute à remplacer par un "qmake" tout court.
# Positionnement de l'outil par rapport à pgModeler
Posté par mrechte . Évalué à 2.
Bonjour. Comment positionnez-vous votre outil par rapport à pgModeler (http://www.pgmodeler.com.br/)? Merci bien.
[^] # Re: Positionnement de l'outil par rapport à pgModeler
Posté par OhMyGod . Évalué à 0.
pgModeler n'a pas l'air de s'occuper du MCD (voir de merise tout court).
[^] # Re: Positionnement de l’outil par rapport à pgModeler
Posté par Gilles Thomassin (site web personnel) . Évalué à 7. Dernière modification le 30 décembre 2016 à 17:19.
Ce sont des outils très différents :
PgModeler travaille sur la base de données, tout comme phpMysqlAdmin ou MysqlWorkBench.
GapMea est un outil simple de conception/maquettage/prototypage utilisable sans moteur de base de données.
Il génère des fichiers aisément partageables et modifiables avec un simple éditeur de texte (c’est du XML).
Il prend donc sa place en amont de la création de la base lors de la phase d’analyse des besoins.
la génération SQL permet de créer ensuite les bases correspondantes permettant ainsi de profiter du travail d’analyse effectué.
J’ai essayé de suivre la philosophie UNIX [KISS] en créant un petit outil spécialisé indépendant.
C’est pourquoi par exemple le reverse engineering se fait grâce à un autre outil qui analyse la base et produit un fichier
.mea
utilisable par GapMea.Rien n’empêche ensuite un autre outil de produire du SVG à partir du XML…
# Mocodo
Posté par churtekukel . Évalué à 1.
Un de mes étudiants me signale que Mocodo a un concurrent (de plus) ;)
L'approche est très différente (Mocodo demande une description textuelle du MCD), mais les buts semblent les mêmes.
[^] # Re: Mocodo
Posté par Gilles Thomassin (site web personnel) . Évalué à 1.
Très sympa Mocodo je découvre…
Énorme travail et super documentation BRAVO.
Un de mes étudiants signale…
Il faudra lui donner une bonne note en "veille technologique" ;)
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.