IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

 MySQL Discussion :

Modélisation d'un modèle de données


Sujet :

MySQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Décembre 2015
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Décembre 2015
    Messages : 10
    Par défaut Modélisation d'un modèle de données
    Bonjour,

    je débute avec la mise en place d'un système de base de données relationnel.
    Je poste ici pour être certain de ne pas avoir commis d'erreur car ce n'est pas évident.

    Pour mettre en place une stratégie d'accès logiciels à des utilisateurs, j'ai identifié deux entités : User et Application.
    Ensuite, j'ai réfléchit sur la relation entre les deux entités :
    • 1 utilisateur accède à 2 applications
    • 2 utilisateurs accèdent à 2 applications
    • 1 utilisateur accède à 1 application
    • 2 utilisateurs accèdent à 1 application


    De ce fait, mes deux entités sont relié par une association 1,n dans le sens User -> Application et 1,n dans le sens Application -> User
    Ce qui me donne donc une relation N,N
    Suis-je dans le bon jusque-là ?

    Donc je créée une entité intermédiaire : Access
    Je relie ensuite l'entité User à Access et l'entité Application à Access.
    J'ai maintenant (et c'est ici que j'ai du mal, les cardinalités etc etc ...):

    - l'utilisateur Dupon à 1 accès à 2 applications (j'ai deux record dans la table Access pour Dupon : 1 record pour chaque accès [id unique de l'entité Application et id unique du User])
    - l'utilisateur Dupond à 1 accès à 1 application (j'ai un record dans la table Access pour dupond : 1 record pour l'accès [id unique de l'entité Application et id unique du User])
    - Dupont et Dupontieux ont 1 accès à 1 application (j ai un record pour dupont avec son id unique et l'id unique d'une application et un autre record avec l'id unique de dupontieux et l'id unique de la meme application)
    - Dufrêne et Duchêne ont 1 accès à 2 applications (j'ai deux record pour dufrêne pour chaque application et idem pour dufrêne)

    Est-ce bien modélisé ? Je veux dire par là que :

    De mon entité User vers mon entité Access, j'ai une relation : 1,N (car 1 User peut avoir accès à 1 à N Application)
    De mon entité Application vers mon entité Access, j'ai une relation : 1,N (car 1 Application peut avoir 1 à N User)

    par contre je pense qu'ici je me trompe :
    De mon entité Access vers mon entité User, j'ai une relation : 1,n (car l'identifiant unique d'un User donné peut se retrouver dans plusieurs record car il a accès à trois logiciels par exemple).
    De mon entité Access vers mon entité Application j'ai une realtion : 1,n (car l'identifiant unique d'une Application peut se retrouver dans plusieurs record car plusieurs personnes peuvent y accèder)


    voila le modèle que cela me donne : [User] 1,N -> Access <-1,n Application

    cela voudrait dire que pour Utilisateur Dupond je pourrai trouvé 1 à N record avec son identifiant unique dans Access.
    Cela voudrait dire aussi que pour l'Application Impression, je pourrai trouver 1 à N record avec son identifiant unique dans Access.

    Est-ce correct ? J'espère ne pas m'être égarré.

  2. #2
    Membre prolifique Avatar de Artemus24
    Homme Profil pro
    Agent secret au service du président Ulysses S. Grant !
    Inscrit en
    Février 2011
    Messages
    6 889
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Agent secret au service du président Ulysses S. Grant !
    Secteur : Finance

    Informations forums :
    Inscription : Février 2011
    Messages : 6 889
    Par défaut
    Salut Mizar_Alcor.

    Vous n'êtes pas dans le bon forum. Ici, c'est le forum MySql consacré à des aspects techniques.

    Si vous désirez concevoir un modèle, la première des choses est de définir le rôle que vont jouer vos entités.
    Je n'ai pas compris ce que représente votre entité "application" ? Est-ce les autorisations d'accès ou un simple descriptif de votre application ?
    Comment faites-vous la distinction entre un utilisateur qui accès à l'application 1, de l'accès à l'application 2 ?

    @+

  3. #3
    Membre habitué
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Décembre 2015
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Décembre 2015
    Messages : 10
    Par défaut
    Citation Envoyé par Artemus24 Voir le message
    Salut Mizar_Alcor.

    Vous n'êtes dans le bon forum. Ici, c'est le forum MySql consacré à des aspects techniques.

    Si vous désirez concevoir un modèle, la première des choses est de définir le rôle que vont jouer vos entités.
    Je n'ai pas compris ce que représente votre entité "application" ? Est-ce les autorisations d'accès ou un simple descriptif de votre application ?
    Comment faites-vous la distinction entre un utilisateur qui accès à l'application 1, de l'accès à l'application 2 ?

    @+
    Bonjour Artemus24,

    La table User se composerai des champs suivant :Id, Nom, Prenom, NumeroNational
    La table Application se composerai d'un unique champ : NomApplication
    La table accès se composerai de deux champs : UserId et ApplicationNom => UserId recevrait un Id de la table User et ApplicationNom recevrait NomApplication

    Pour imager (j'espère que je comprend bien) :

    table User
    Id | Nom | Prenom | NumeroNational
    1 toto tutu 12345678901
    2 Albert dupont 98765432109
    3 Manon dupond 45678912305
    Table Application

    NomApplication
    Application1
    Application2
    Application3
    |
    |
    Application10

    Table accès :

    Id_User | Id_Application
    1 Application8
    1 Application5
    2 Application8
    2 Application3
    2 Application5
    3 Application1


    Donc, toto ne pourrai executer que Application8 et Application5, s'il tente d'executer Application3, il se verra refuser l'accès au menu. Le Numero national et le nom et prenom sont lue sur la carte d'identité electronique pour comparer avec les accès DB.
    La validation se fait en deux temps. En premier temps, l'utilisateur connecte sa carte d'identité, je lit nom, prenom et numero du registre national. Si j'arrive à lire ces trois données (pour certifié que c'est bien lui) alors je cherche dans la db sur base de ces 3 informations à quel soft il a accès.
    J'ai essayé de faire au mieux de mes explications précédentes. J'espère que tu comprendra.

  4. #4
    Membre Expert
    Homme Profil pro
    tripatouilleur de code pour améliorer mon quotidien boulistique
    Inscrit en
    Février 2008
    Messages
    946
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : tripatouilleur de code pour améliorer mon quotidien boulistique
    Secteur : Enseignement

    Informations forums :
    Inscription : Février 2008
    Messages : 946
    Par défaut
    Bonjour

    Comme l'a si justement indiqué Artemus, vos questions portent plus sur des problèmes de conception. Les forums Merise, ALM... semblent plus appropriés. Vous y trouverez plus d'aide.

    Pierre

Discussions similaires

  1. Quels logiciels de modélisation pour une base de données ?
    Par octopus dans le forum Décisions SGBD
    Réponses: 7
    Dernier message: 11/06/2023, 16h20
  2. Réponses: 2
    Dernier message: 18/10/2006, 16h03
  3. Schéma du modèle de données : reverse engineering
    Par slefevre01 dans le forum Designer
    Réponses: 2
    Dernier message: 20/08/2005, 09h38
  4. [JTree] Quel modèle de données utiliser ?
    Par speedster dans le forum Composants
    Réponses: 2
    Dernier message: 11/07/2005, 20h44
  5. [retro-conception] Passage au modèle de données
    Par liliboc dans le forum Outils
    Réponses: 5
    Dernier message: 09/07/2004, 11h01

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo