DbSkull 2006
- Langage
- MatLab
- Environnement
- Mac OS X
- Windows XP
- Client
- ICP Grenoble
- Site : icp.inpg.fr
DbSkull vient de DataBase Skull soit Base de données crânienne en français. Il repose sur la base de données biométriques du crâne qu'a mis au point Alain Froment un anthropologue rattaché au Musée de l'Homme à Paris. Elle contient 16 mesures pour 26.000 individus.
Le logiciel a 3 objectifs :
- "Nettoyer" les mesures supposées erronées de la base
- Mener une étude statistique de la base
- Représenter les répartitions à travers le monde en fonction de critères de sélection
MatLab
Il a été réalisé sous MatLab, un langage de calcul scientifique de haut niveau et de modélisation mathématiques qui est spécialisé dans le traitement et la représentation des données. Les puissants outils qu'il intégre lui permette d'exécuter rapidement des calculs matriciels et vectoriels importants, la conception et résolution de problèmes ainsi que des fonctions permettant l'intégration d'algorithmes développés en langage MatLab dans des langages externes tels que le C/C++, Fortran, Java.
Le langage MatLab est interprété et non compilé (il n'y a pas d'édition de liens ou d'exécutable généré), ainsi bien que sa syntaxe soit proche de celle du C il n'est pas aussi efficace car le code n'est pas traduit en instructions machines (inconvénient devenu négligeable avec la puissance des machines actuelles). Ce mode de fonctionnement a pour avantage majeur de ne pas nécessiter de recompilation à chaque modification du code, il suffit de ré-exécuter le code. De plus MatLab permet l'utilisation de programmes dans d'autres langages comme le C si la rapidité d'exécution de certaines fonctions doit être primordiale.
L'interface Homme-Machine

La fenêtre principale regroupe les différents éléments graphiques permettant d'exploiter la base de données comme les boutons de sélection des variables, des fonctions, du sexe, des continents ainsi que les axes et les zones de textes où seront affichés les graphiques et données résultats. Le nom des différentes variables & fonctions sont elles dans les fenêtres adjacentes, de cette manière on préserve une homogénïté de l'interface graphique mais surtout elle est facilement réutilisable avec une base de données aux critères différents.
Hiérarchie du logiciel
Le logiciel est constitué de trois couches distinctes :
- L'IHM (Interface Homme Machine) :
L'interface en elle même : elle est la couche qui permet à l'utilisateur d'interagir avec le logiciel. Chaque action que fait l'utilisateur sur l'interface fait appel au callback de l'élément qui appelle lui-même une fonction de la couche Opérations.
- La couche Opérations :
La couche Opérations regroupe l'ensemble des fonctions du logiciel. Elles sont appelées depuis la couche IHM et effectuent les opérations et manipulations sur les matrices et les fichiers.
- La couche Fichiers :
La couche Fichiers regroupe les différents fichiers sur lesquels le logiciel effectue des manipulations (lecture, écriture, suppression, création)
L'IHM appelle la couche Opérations, mais ne peut pas appeler directement la couche Fichiers. Cette séparation des couches rend la maintenance et mise à jour du logiciel plus aisée, deux couches peuvent être développées séparément, il suffit d'être en accord sur la syntaxe des appels.