De conception ancienne, la base de données utilisée par les logiciels Ciel Mac * est néanmoins rapide et très robuste. Plus de 100 000 licences de logiciels Ciel Mac * ont d'ailleurs été vendues ! Cette robustesse a d'ailleurs poussé les dirigeants de Ciel à remplacer la base de données utilisée sur les versions Windows * par la version Mac * ! Nous verrons également que Ciel * a développé toute une boite à outils pour ses logiciels, ce qui lui permet d'être peu dépendant de sociétés tierces.
Les logiciels Ciel Mac étant de conception un peu ancienne, la base de données que vous utilisez n'est-elle pas un peu fragile à l'heure actuelle ?
Non, au contraire. Nous utilisons une base de données propriétaire que nous avons développée et testée depuis des années. Il faut savoir que plus de 100 000 licences de logiciels Ciel Mac ont été vendues !
Notre base de données est donc très éprouvée et a fait ses preuves. D'ailleurs, la base de données des nouvelles versions Windows a été développée par l'auteur de la version Mac, qui s'est fortement inspiré de la base de données Ciel Mac pour faire la nouvelle version Windows, la base de données Ciel Mac nous donnant entière satisfaction depuis longtemps.
Aujourd'hui, les nouvelles versions de Ciel Compta Windows ou Ciel Gestion Commerciale Windows, par exemple, utilisent un moteur de données issu de la version Mac.
Pourquoi avoir continué à utiliser une base de données propriétaire et ne pas avoir utilisé une base de données SQL standard ?
Le développement des nouvelles versions Windows * a commencé en 2000, et à l'époque, il y avait très peu de base de données mono-utilisateur fiable. Il y avait en fait Access * (que nous avons utilisé pour d'autres produits et qui nous a causé beaucoup de problèmes !), MS SQL * qui était une véritable usine à gaz, DBF qui n'était pas riche, et quelques autres.
Aucun de ces moteurs de base de données ne nous satisfaisait, et comme nous avions notre propre moteur de base de données pour les versions Mac * qui nous satisfaisait pleinement, nous avons repris ce moteur Mac * pour les nouvelles versions Windows *.
Il faut dire aussi qu'il n'y avait pas de coût supplémentaire, puisque la base était développée par nos propres soins. Enfin, une base propriétaire est toujours bien plus rapide qu'une base de données standard du marché.
Au final, nous sommes très satisfaits de ce choix, notre base propriétaire étant bien adaptée à notre cible de petites entreprises, ces dernières n'ayant pas une très grande volumétrie de données.
Quels sont les défauts d'une base de données propriétaire par rapport à une base de données standard ?
Aujourd'hui, la seule chose qui nous manque est le système de requête SQL, mais nous avons d'autres solutions pour pallier à ce manque.
Votre base de données est de quel type ?
Ce sont de classiques fichiers séquentiels indexés, mais incluant des optimisations maison.
Il faut savoir que nous avons développé toute une boîte à outils pour les versions Mac (que nous avons ensuite reprise pour les nouvelles versions Windows *).
Cette boîte à outils, développée en C++, est une sorte de mini 4D *, qui prend en charge tous les composants : l'interface, les états, le grapheur, la base de données, etc.
Il y a plusieurs avantages à travailler de cette façon : le premier est que comme ce noyau représente 50% du code de tous nos logiciels, une amélioration faite sur ce noyau (la boîte à outils) apporte automatiquement des bénéfices sur la totalité de nos logiciels, sans développement supplémentaire.
Développer notre propre boîte à outils nous prend beaucoup plus de temps que si nous avions utilisé des composants externes : une base de données x, un grapheur y, un éditeur d'état z, etc.
Par contre, l'avantage est que nous ne soyons pas dépendants de ces sociétés tierces. Pour vous donner un exemple, nous n'utilisons que deux composants tiers sur nos applications : un composant PDF et un composant HTML. Lorsque Windows Vista * est arrivé, le composant PDF ne fonctionnait plus ! Nous ne rencontrons pas ce type de problèmes avec des technologies internes.