@startuml 'les clés primaire sont désignées avec un point 'les références entre tables sont désignées avec un carré class en_DonneesEntree { 'Nom de l'organisation liée aux données String nomOrganisation 'Le nom du lot permettant d’agréger les données provenant de différentes sources et d'en faire un suivi temporel LocalDate nomLot 'La date du lot permet d’agréger les données provenant de différentes sources et d'en faire un suivi temporel LocalDate dateLot ' le paramètre suivant est facultatif. Il liste les noms des critères souhaités dans le calcul, en cohérence avec la table ref_Critere . Son absence déclenchera le caclul sur l'ensemble des critères présents dans la table de référence ref_Critere List<String> criteresDemandees ' le paramètre suivant est facultatif. Il liste les codes des étapes souhaitées dans le calcul, en cohérence avec la table ref_EtapeACV. Son absence déclenchera le caclul sur l'ensemble des étapes présentes dans la table de référence ref_EtapeACV. List<String> etapesDemandees List<en_OperationNonIT> operationsNonIT List<en_EqP> equipementsPhysiques List<en_DC> dataCenters List<en_Messagerie> messageries List<en_Entite> entites String dureeUsage } class en_Entite { String nomOrganisation LocalDate dateLot String nomEntite Integer nbCollaborateurs String responsableEntite String responsableNumeriqueDurable } 'Operation Non IT class en_OperationNonIT { *String nomItemNonIT Double quantite String type Double dureeDeVie String localisation 'Nom de l'entité responsable du datacenter String nomEntite String nomSourceDonnee ' Référence au data center = en_DC.nomCourtDataCenter - String nomCourtDatacenter String description Double consoElecAnnuelle } 'Equipement Physique class en_EqP { * String nomEquipementPhysique 'le type fait référence au ref_typeEquipement présent dans les références String type ' Pour type == Serveur, Référence au data center = en_DC.nomCourtDataCenter - String nomCourtDatacenter String modele String statut String paysDUtilisation String utilisateur Date dateAchat Data dateRetrait ' la durée d'usage interne correspond à l'age de l'équipement (en années) au sein de l'organisation Double dureeUsageInterne ' la durée d'usage amont correspond à la durée (en années) de première vie d'un équipement, avant que ce dernier ne soit possédé par l'organisation Double dureeUsageAmont ' la durée d'usage aval correspond à la durée (en années) de troisième vie d'un équipement, une fois que ce dernier a été sorti de l'organisation Double dureeUsageAval Double consoElecAnnuelle Float nbJourUtiliseAn Float goTelecharge Integer quantite String modeUtilisation Double tauxUtilisation 'Nom de l'entité responsable de l'équipement physique String nomEntite String nomSourceDonnee List<en_EqV> machinesVirtuelles } 'Equipement Virtuel class en_EqV { * String nomEquipementVirtuel 'le type d'équipement virtuel contient "calcul", "stockage", "null" String typeEqV 'nom de l'équipement physique sous jacent - String nomEquipementPhysique Integer vCPU 'en To Double capaciteStockage ' la clé de repartition est exprimée comme une fraction Double cleRepartition Double consoElecAnnuelle String cluster 'Nom de l'entité responsable de l'équipement virtuel String nomEntite String nomSourceDonnee List<en_App> applications } 'DataCenter class en_DC { *String nomCourtDatacenter String nomLongDatacenter Double PUE String localisation 'Nom de l'entité responsable du datacenter String nomEntite String nomSourceDonnee } 'Application = Une instance d'une application sur une VM class en_App { * String nomApplication 'les type d'environnements permettent de distinguer les environnements de développement, de recette, de production.. * String typeEnvironnement ' Référence à l'équipement virtuel = en_EqV.nomVM - String nomEquipementVirtuel 'les catégories permettent le classement par domaine applicatif String domaine String sousDomaine 'Nom de l'entité associée ' permet de retrouver des données liées à l'entité String nomEntite String nomSourceDonnee } 'données de la messagerie class en_Messagerie { 'nombre total des mails émis par les collaborateurs Double nombreMailEmis 'nombre de mail émis multiplié par le nombre de destinataires Double nombreMailEmisXDestinataires 'Volume total des mails dans les boites mails des collaborateurs Double volumeTotalMailEmis 'date au format MMYY Date MoisAnnee 'Nom de l'entité associée ' Pas utile pour les applications ' mais utile pour retrouver des données liées à l'entité String nomEntite String nomSourceDonnee } en_DonneesEntree "1"--- "0-*" en_DC : peut contenir > en_DonneesEntree "1"--- "0-*" en_OperationNonIT : peut contenir > en_DonneesEntree "1"--- "0-*" en_EqP : peut contenir > en_DonneesEntree "1"--- "0-*" en_Messagerie : peut contenir > en_DonneesEntree "1"--- "0-*" en_Entite : peut contenir > en_App "1" - "1" en_EqV : est contenu dans > en_EqV "0-*" - "1" en_EqP : est contenu dans > @enduml