Chapitre 27. Projet Disques

Table des matières

Approche naïve
Analyse
Dernières remarques
Une autre analyse du projet Disques
Description
Résultat
Création des tables
Votre travail

Maîtrise AES-TEG, 2000-2002. Vous pouvez consulter les pages originales sur le web.

Approche naïve

On souhaite mémoriser le contenu d'une discothèque dont le but est le prêt de disques (CD ou vinyl) à ses adhérents.

Il faut connaître les œuvres, les exemplaires de chaque œuvre, les artistes correspondants, les renseignements sur les adhérents.

Pour ce faire la première solution consisterait en un (gros) tableau permettant de stocker toutes les informations dont on dispose sur un album : nom de l'album, interprète, morceaux (plusieurs), le genre de musique, le type de support (vinyl, CD), etc... ainsi que celles dont on dispose sur les adhérents.

La représentation de ces informations « à plat » sous la forme d'un seul tableau montre d'emblée ses limites :

  • En effet, on ne va pas reprendre systématiquement toutes les informations liées à un album du fait que la colonne des titres contient plusieurs titres pour un même album.

  • Par ailleurs, cette disposition privilégie l'approche de ces informations album par album. Et par conséquent, elle est moins commode pour une approche par interprète, par emprunteur.

Avec cette solution on a donc des difficultés à percevoir séparement des éléments (entités) qui sont pourtant bien distinctes (albums, interprètes, adhérents).

On a par la même occasion, des difficultés à regrouper certaines informations : les albums d'un même interprète, les albums d'un même genre, les albums empruntés par un même adhérent, etc. On dispose bien dans un tableur de la possiblité de trier un tableau suivant telle ou telle colonne mais là on se heurte à un problème de choix (il n'y a pas de raison de privilégier un ordre par rapport à un autre).

Par ailleurs, dès lors qu'un tableau est trié, il s'agit de respecter cet ordre lors de toute mise-à-jour du tableau, ce qui complique la procédure de saisie de nouveaux albums.

Même si le tableau devait être trié, la recherche d'une information précise demeurerait assez fastidieuse, cette recherche devient encore moins aisée s'il s'agit de retrouver des croisements d'information (X a t-il fait une reprise d'un titre déjà interprété par Y). La difficulté se corse encore lorsqu'il ne s'agit plus d'accéder à une information mais d'extraire une série d'informations (les albums de Jean Ferrat qui contiennent des textes d'Aragon).

On remarque également que, dans une telle représentation, de nombreuses informations figurent plusieurs fois (artiste : nom et prénom ; emprunteur : adresse ...). Ces informations étant saisies individuellement, outre la perte d'efficacité, il existe des risques d'incohérence (une même donnée saisie différemment à deux endroits distincts).

La répétition d'une même donnée peut être également pénalisante si celle-ci vient à changer, en effet au lieu d'avoir à procéder à une seule mise-à-jour, on est obligé de reporter la même modification partout où cette donnée figure (là encore perte d'efficacité et risque d'incohérence). Par exemple que faire lorsqu'un chanteur décide de changer de nom[4] ?



[4] Idée bizarre, je sais... Mais c'est quand même ce qu'a fait Prince. (Ce qui n'enlève d'ailleurs rien à la bizarreté du fait...)