Lancement de GapMea logiciel de modélisation de données

Posté par  (site web personnel) . Édité par Davy Defaud, Anonyme, Benoît Sibaud, ZeroHeure, palm123 et bubar🦥. Modéré par bubar🦥. Licence CC By‑SA.
39
30
déc.
2016
Base de données

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 :
schéma des tables créé avec GapMea

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

  • # Licence ?

    Posté par  . É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  (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  (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  . É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 :

    DISTDIR = /home/gthom/gapmeabuildservice/home:gthom/gapMea/gapmea-1/.tmp/gapmea1.0.0
    J'suis pas un spécialiste du Makefile et encore moins du C++

    • [^] # Re: Makefile

      Posté par  (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  (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  (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  . É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  . É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  (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  . É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  (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.