creapage.net
Les présentations de Sashipa

Deux présentations de Sashipa sont disponibles et se complètent :

Licences : les composants de la technologie Sashipa-Melba sont libres.

Présentation générale

Sashipa-Melba est une plateforme de développement d'interfaces utilisateurs pour bases de données relationnelles. La caractéristique principale de la construction d'applications avec cette technologie est l'absence de programmation : l'informaticien doit juste écrire un fichier XML décrivant l'application qu'il veut générer. De plus, un fichier XML par défaut peut être généré à partir d'une connexion à une base de données.

Avantages et limitations technologiques

Limitations

La limitation qui tue : seules les fonctionnalités prévues par Sashipa / Melba peuvent être mises en oeuvres.

Vous ne pouvez pas travailler avec un SGBD non supporté. (Cf compatibilités).

Les applications générées s'appuient sur la technologie Java, qui requièrent un ordinateur suffisamment performant. Je recommande 64 Mo de RAM et un microprocesseur à 200 MHz.

Les applications générées s'appuient sur la technologie Java. Donc il est nécessaire, lors du déploiement sur le poste utilisateur, d'installer le Java Runtime Environment (JRE) que vous trouverez sur le site de Sun.

Avantages

Les interfaces construites sur cette technologie répondent toutes à la même logique de présentation. Les utilisateurs finals apprennent donc facilement à se servir d'une nouvelle application ou d'une nouvelle fonctionnalité.

Les applications sont construites sans programmation. Elles sont donc dépourvues de bugs. Plus exactement, elles ne contiennent que les bugs de la bibliothèque Melba. Melba étant assez fiable car utilisé par de nombreuses applications.

La rapidité de création d'une application est inégalée : pas de programmation / déboguage, très peu de tests sont nécessaires... Il suffit juste d'écrire un fichier en XML.

La souplesse de votre architecture : en changeant juste un mot dans votre fichier XML, vous transformez votre application en applet, ou encore votre architecture client - base de données en client / servlet / base de données ... De même, changer le nom ou le type d'une colonne de votre base de données ne demande qu'une unique modification dans le fichier XML... Ou encore pour changer de SGBD, une unique modification suffira, sans vous soucier des différences d'implémentation du SQL. Il est même possible d'accéder à la base de données via une PHP, ainsi que le fait l'application de démonstration sur ce site.

Les applications générées s'appuient sur la technologie Java et sont donc indépendantes du système d'exploitation.

Présentation de Sashipa, Melba...

Sashipa

Sashipa est un formalisme de description d'interfaces utilisateurs pour bases de données relationnelles.

Le langage Sashipa est un langage XML. En XML, la définition d'un langage se fait sous la forme d'un fichier DTD. On dit d'un fichier XML respectant la DTD Sashipa qu'il est une instance de Sashipa.

Remarque : les fichiers XML instances de Sashipa ne sont pas liés à la plateforme Java. Ils contiennent la description générique de votre application, qui est indépendante de la plateforme de développement. Aujourd'hui la seule convertion existante des fichiers instances de Sashipa se fait vers Java en utilisant Melba. Mais il est possible de porter Melba sous d'autres plateformes d'une part, et il est surtout envisageable de créer des applications à partir de Sashipa en utilisant d'autres solutions que celles employées par Melba.

Sashipa pourrait servir de base à l'élaboration d'un standard de description des interfaces de bases de données. J'invite les éditeurs de plateformes de développements à réfléchir à l'ajout d'une fonctionnalité d'import / export de fichiers XML instances de Sashipa à leurs logiciels. Ceci permettrait la compatibilité et donc la migration entre les différentes plateformes de développements.

Database2Sashipa

Le programme Database2Sashipa, écrit en Java, génère un fichier XML instance de Sashipa à partir d'une connexion à une base de données. Le fichier est entièrement construit à partir d'hypothèses par défaut. Si l'application est destinée à un utilisateur non informaticien, il faudra donc le retoucher, mais le plus gros du travail d'écriture est déjà fait. Pour des besoins d'administration des données, l'application par défaut peut suffire.

Sashipa2Melba

Le programme Sashipa2Melba, écrit en Java, convertit un fichier XML instance de Sashipa en fichier(s) source(s) Java utilisant la bibliothèque de programmation Melba. Ces fichiers seront ensuite compilés pour être exécutés.
Melba

Melba, pour Moteur d'ELaboration Automatique d'interfaces de Base de données, est le gros moteur Java sur lequel s'appuient les applications générées.

Licences

Les composants de la technologie Sashipa / Melba sont libres (open-sources, gratuits, librement utilisables et modifiables).

Pour résumer, si vous modifiez ou améliorez Database2Sashipa ou Sashipa2Melba, le nouveau produit restera sous licence GPL. Par contre, les logiciels générés avec Sashipa2Melba sont votre propriété. Pour des buts commerciaux ou non.

Annexe

Etapes de génération d'une application

Les étapes de l'élaboration d'une application à partir d'un fichier XML Sashipa sont détaillées ici.

Database2Sashipa action
Fichier XML par défaut : instance de Sashipa résultat
Adaptation manuelle du fichier XML action
Fichier XML : instance de Sashipa résultat
Sashipa2Melba action
Un fichier source Java client résultat
Un fichier source Java serveur (éventuellement)
Javac utilise Melba (Javax éventuellement) action
Fichiers Java compilés résultat
Jar action
Un fichier archive pour l'application cliente résultat
Un fichier archive pour l'application serveur (éventuellement)
Java action
Exécution résultat