Bonjour aux professionnels,
Je viens vers vous pour la validation du MCD de mon projet.
En fait, je veux developper une application de gestion d'une association.
Voici mes règles de gestion:
1) Membre-Adhesion
Un Membre paie 1,N fois un droit d'adhésion.
Un adhesion est payée par 1,1 Membre.
2) Membre-Categorie
UnMembre appartient à 1,1 catégorie
Une catégorie renferme 1,n Membre
3) Membre-Paiement-Cotisation
Un Membre effectue 1,n Paiement pour une cotisation donnée.
Une cotisation peut être l'objet de 1,n paiement de 1,1 même Membre donné.
4) Membre-Paiement-Evenement
Un Membre fait 1,n Paiement pour 1,1 Evenement donné.
Un Evenement peut enregistrer 1,n Paiement d'1,1 même membre donné.
5) Membre-Type_paiement
Un Paiement possède 1,1 Type_paiement.
Un Type_paiement appartient à 1,n Paiement.
Ici Type_paiement à seulement 2 valeurs ("Partiel" pour les paiements partiels des membres et "Totalite" pour les paiements au comptant, donc j'ai 2 choix:
1er choix: - Metrre les deux types de paiements dans des options de select (<select><option>Partiel</option><option>Totalite</option></select> dans la table "Paiements".
2ème choix: Créer une table à part pour les types de paiements "Type_paiement" (type_paiement(id INTEGER, partiel VARCHAR, totalite VARCAHR).
Je ne sais pas lequel des choix me sera favorable, aux experts de m'en dire plus...
6) Montant-Paiement
Un montant est lié à 1,n Paiement.
Un Paiement est lié à 1,1 Montant.
7) Categorie-Membre-Paiement-Montant
Une Categorie doit (1,1) Montant pour (1) Paiement donné.
Un Montant est dû par (1,n) Categorie pendant (1,1) même Paiement. Du fait que 2 categories différentes peuvent payer le même montant pour un paiement d'une cotisation lamda.
Cela pourrait se traduire par:
Un Membre doit (1,1) Montant pour (1) Paiement donné et pour (1) evenement ou pour (1) cotisation donné en fonction de sa "Categorie".
Un Montant est dû par (1,n) Membre d'une même "Categorie" pour (1) "evenement" ou pour (1) "Cotisation" fesant objet d'(1) Paiement.
En effet, c'est là que j'ai vraiment un soucis de cohérence, car la table "Categorie" est liée à la table "Membre" qui elle est liée au "Paiement", tandis que la table "Paiement" est liée à la table "Montant" et la table "Montant" est encore liée à la table "Categorie". Il ya donc une fermeture dans la relation [categorie-Membre-Paiement-Montant], pourtant je pense qu'il ya une règle de MERISE qui dit qu'il ne doit pas avoir de fermeture entre les relations...sauf si je me trompe. Voir MCD.
Ce qui m'emmène à vouloir créer cette fermeture de relation, c'est le fait que j'ai retiré la colonne "Montant" de la table "Cotisation" et aussi de la table "Evenement" pour vouloir en faire une table, car chaque Evenement de l'association a un montant qui est fonction de la "Categorie" des "Membres", et, le "Montant" de la "Cotisation" est aussi fonction de la "Categorie" du "Membre". Ce qui veut dire qu'il ya des membres qui payent des "Montant" supérieurs à d'autres Membres en fonction de leur categorie, pour les evenements et aussi pour les cotisations.
J'ai donc besoin d'une bonne solution pour la règle 7.
8) Que pouvez-vous me dire aussi sur la table Adhesion? Doit-elle être reliée directement au "Membre" ou à la table "Paiement" comme Cotisation et Evenement?
Je joints le MCD à mes règles de gestion pour que vous puissiez l'analyser minutieusement.
Encore merci pour la reflexion!
Partager