impactometre issueshttps://gitlab.utc.fr/tx-techno-num/impactometre/-/issues2020-04-16T18:34:26Zhttps://gitlab.utc.fr/tx-techno-num/impactometre/-/issues/60Débuguer l'affichage de l'impact sur la santé humaine2020-04-16T18:34:26ZValentin Le GaucheDébuguer l'affichage de l'impact sur la santé humaineLa barre d'histogramme consacrée à l'affichage de la santé humaine est souvent à zéro, ce qui ne concorde à priori pas avec les données entrées.
Pistes possibles pour trouver et corriger le bug :
* Tester si la barre d'histogramme corr...La barre d'histogramme consacrée à l'affichage de la santé humaine est souvent à zéro, ce qui ne concorde à priori pas avec les données entrées.
Pistes possibles pour trouver et corriger le bug :
* Tester si la barre d'histogramme correspondant à la santé humaine est systématiquement à zéro, ou si elle est positive pour certaines entrées
* Vérifier si le zéro affiché ne provient pas d'erreurs d'arrondis cumulésV1Valentin Le GaucheValentin Le Gauchehttps://gitlab.utc.fr/tx-techno-num/impactometre/-/issues/16Gérer le re-calcul de l'impact d'un scénario modifié par l'utilisateur2020-01-27T19:38:40ZClement BrizardGérer le re-calcul de l'impact d'un scénario modifié par l'utilisateurFaire une fonction substract (damage) dans la classe ComponentDamage.
Récupérer la catégorie de l'objet qui a été modifié, recalculer son impact, soustraire à son CategoryDamage l'ancienne valeur d'impact et ajouter la nouvelle, puis rec...Faire une fonction substract (damage) dans la classe ComponentDamage.
Récupérer la catégorie de l'objet qui a été modifié, recalculer son impact, soustraire à son CategoryDamage l'ancienne valeur d'impact et ajouter la nouvelle, puis recalculer l'impact de la réunion.
* [x] Poursuivre la création de la fonction `update()` du contrêleur `meetingScenario` et les fonctions `update()` associées présentes dans les classesV1Valentin Le GaucheValentin Le Gauchehttps://gitlab.utc.fr/tx-techno-num/impactometre/-/issues/59Modifier un composant d'une réunion2020-01-27T11:20:53ZValentin Le GaucheModifier un composant d'une réunionV1Valentin Le GaucheValentin Le Gauchehttps://gitlab.utc.fr/tx-techno-num/impactometre/-/issues/58Modifier la fonction de normalisation des damages.2020-01-27T09:51:10ZValentin Le GaucheModifier la fonction de normalisation des damages.* [x] Renvoyer un valeur de damage valant 100 % pour chaque sphère de dommage (et une seule pour l'ensemble des valeurs des différentes sphères)
* [x] Renvoyer, pour chaque meeting scenario et pour chaque sphère d'impact, en plus de la...* [x] Renvoyer un valeur de damage valant 100 % pour chaque sphère de dommage (et une seule pour l'ensemble des valeurs des différentes sphères)
* [x] Renvoyer, pour chaque meeting scenario et pour chaque sphère d'impact, en plus de la sa valeur total, ses valeurs normalisées pour chaque catégorie de composants de la réunion (hardware, software, journey)V1Valentin Le GaucheValentin Le Gauchehttps://gitlab.utc.fr/tx-techno-num/impactometre/-/issues/12Gérer les calculs après que l'utilisateur a rempli ses paramètres2020-01-27T00:48:19ZClement BrizardGérer les calculs après que l'utilisateur a rempli ses paramètresQuand l'utilisateur a fini de remplir le formulaire, il clique sur "Lancer les calculs". On doit calculer l'impact de son scénario, et générer deux scénarios proches de ses paramètres dont on calcule aussi l'impact. On renvoie les trois ...Quand l'utilisateur a fini de remplir le formulaire, il clique sur "Lancer les calculs". On doit calculer l'impact de son scénario, et générer deux scénarios proches de ses paramètres dont on calcule aussi l'impact. On renvoie les trois impacts.
* [x] Faire une fonction qui, prenant des MeetingScenario en paramètres, renvoie les valeurs normalisées pour chaque sphère d'impact (utilisation de la fonction utilitaire normalise())
* [x] Générer deux MeetingScenario en fonction du MeetinScenario créé par l'utilisateur (pour cela : créer un méthode dans la classe `MeetingScenario` generateTwoAlernatives(this))
Attendre que #9 soit faite.V1Valentin Le GaucheValentin Le Gauchehttps://gitlab.utc.fr/tx-techno-num/impactometre/-/issues/55Pouvoir créer un MeetingScenario sans une certaine catégorie de composants2020-01-26T23:29:42ZClement BrizardPouvoir créer un MeetingScenario sans une certaine catégorie de composantsV1Clement BrizardClement Brizardhttps://gitlab.utc.fr/tx-techno-num/impactometre/-/issues/48Modifier le mode de calcul de l'impact des transports2020-01-26T23:22:23ZValentin Le GaucheModifier le mode de calcul de l'impact des transports* [x] Dans le cas de la voiture (électrique ou thermique), l'impact d'un trajet est égal à l'impact du trajet selon les valeurs de Simapro divisé par le nombre de passagers (on répartit l'impact sur l'ensemble des passagers ; par conven...* [x] Dans le cas de la voiture (électrique ou thermique), l'impact d'un trajet est égal à l'impact du trajet selon les valeurs de Simapro divisé par le nombre de passagers (on répartit l'impact sur l'ensemble des passagers ; par convention, un seul passager participe à la visio, on n'ajoute donc sa seule part de l'impact à la visio).V1Valentin Le GaucheValentin Le Gauchehttps://gitlab.utc.fr/tx-techno-num/impactometre/-/issues/53Pouvoir calculer un impact embodied pour un composant assimilé à un autre2020-01-26T15:39:50ZClement BrizardPouvoir calculer un impact embodied pour un composant assimilé à un autreV1Clement BrizardClement Brizardhttps://gitlab.utc.fr/tx-techno-num/impactometre/-/issues/36Vérifications à faire avec Simapro + valeurs restant à mesurer2020-01-25T18:14:46ZClement BrizardVérifications à faire avec Simapro + valeurs restant à mesurer* [x] A-t-on une valeur de embodied pour DESKTOP dans Simapro ? De quoi DESKTOP est-il composé dans Simapro ?
* [x] De quoi DESKTOP_WITHOUT_SCREEN est-il composé dans Simapro ?
* [x] INTERNET_ACCESS_EQUIPMENT n'a pas de valeur operating....* [x] A-t-on une valeur de embodied pour DESKTOP dans Simapro ? De quoi DESKTOP est-il composé dans Simapro ?
* [x] De quoi DESKTOP_WITHOUT_SCREEN est-il composé dans Simapro ?
* [x] INTERNET_ACCESS_EQUIPMENT n'a pas de valeur operating. La mesurer, faire le calcul dans Simapro puis mettre le résultat dans la DB.
* [x] Mettre une valeur embodied à MICRO et CAMERA. L'avait-on fait dans Simapro ? En les assimilant à quel composant ? --> ajout d'un attribut `wieght` pour ensuite calculer son impact embodied
* [x] Checker dans l'article dédié la valeur de la durée de vie d'un projecteur
* [x] Calculer dans Simapro la valeur embodied du LOGITECH_KIT (avec une assimilation)
* [x] Pourquoi y'a-t-il dans la DB un composant LOGITECH_KIT_CAMERA ? L'a-t-on dans Simapro ? La caméra n'est-elle pas intégrée dans LOGITECH_KIT ?
* [x] Corriger dans la DB les valeurs d'impact de la voiture électrique (actuellement identiques à bus longue distance)
* [x] Vérifier toutes les valeurs dans la DB avec les exports Simapro
* [x] Modifier les composants câbles (ajouter les fiches)
* [x] ~~Créer des composants agrégés pour inclure les câbles~~ Câble déjà incorporer des les composants de la base Ecoinvent
* [x] Ajouter une valeur pour la bande passante de JitsiV1Valentin Le GaucheValentin Le Gauchehttps://gitlab.utc.fr/tx-techno-num/impactometre/-/issues/47Donner la possibilité d'avoir une instance de Hardware avec plusieurs fois le...2020-01-25T18:14:37ZValentin Le GaucheDonner la possibilité d'avoir une instance de Hardware avec plusieurs fois le même composantLes composants d'un hardware sont stockés dans un tableau et indexés par leur nom. On ne peut donc avoir une instance de Hardware avec plusieurs fois le même composant car on peut avoir un tableau avec plusieurs entrées identiques.
* [x]...Les composants d'un hardware sont stockés dans un tableau et indexés par leur nom. On ne peut donc avoir une instance de Hardware avec plusieurs fois le même composant car on peut avoir un tableau avec plusieurs entrées identiques.
* [x] Donner la possibilité d'avoir une instance de Hardware avec plusieurs le même composant
* [x] Décommenter les composants du kit logitech dans harware.jsV1Clement BrizardClement Brizardhttps://gitlab.utc.fr/tx-techno-num/impactometre/-/issues/52Ajouter un attribut "nombre de participants" à la classe MeetingScenario2020-01-25T18:06:54ZValentin Le GaucheAjouter un attribut "nombre de participants" à la classe MeetingScenario* [ ] Ajouter un attribut "nombre de participants" à la classe MeetingScenario
* [ ] Modifier le constructeur de la classe et ses utilisations* [ ] Ajouter un attribut "nombre de participants" à la classe MeetingScenario
* [ ] Modifier le constructeur de la classe et ses utilisationsV1Valentin Le GaucheValentin Le Gauchehttps://gitlab.utc.fr/tx-techno-num/impactometre/-/issues/51Retirer l'attribut `name ` des classes Hardware, Software et TransportationMean2020-01-25T14:39:27ZValentin Le GaucheRetirer l'attribut `name ` des classes Hardware, Software et TransportationMeanRetirer l'attribut `name ` des classes
* [ ] Hardware (ATTENTION, il est utilisé dans la fonction `computeVisioOrStandbyTimeOverLife(damageType)`)
* [ ] Software
* [ ] TransportationMeanRetirer l'attribut `name ` des classes
* [ ] Hardware (ATTENTION, il est utilisé dans la fonction `computeVisioOrStandbyTimeOverLife(damageType)`)
* [ ] Software
* [ ] TransportationMeanV1Clement BrizardClement Brizardhttps://gitlab.utc.fr/tx-techno-num/impactometre/-/issues/50Donner la possibilité de stocker les différents MeetingScenario créés2020-01-25T14:38:28ZValentin Le GaucheDonner la possibilité de stocker les différents MeetingScenario créésAttendre que !40 et !35 soient mergées.
Donner la possibilité de stocker les différents MeetingScenario créés :
* [x] Ajouter attribut id à la classe MeetingScenario (modifier son contructeur)
* [x] Créer un fichier `meetinScenarios....Attendre que !40 et !35 soient mergées.
Donner la possibilité de stocker les différents MeetingScenario créés :
* [x] Ajouter attribut id à la classe MeetingScenario (modifier son contructeur)
* [x] Créer un fichier `meetinScenarios.js` dans le dossier `database` (en profiter pour le mettre à la racine), qui contient une hashmap vide, où les meetingScenario seront stockés et indexés par leur id
* [x] Créer un fichier `meetingScenario.js` dans `controllers/meeting`
* [ ] Dans ce fichier créer les fonctions `create`, `read`, `update`, `delete` qui interagissent avec la hashmap qui stocke les MeetingScenario dans la base de données.V1Valentin Le GaucheValentin Le Gauchehttps://gitlab.utc.fr/tx-techno-num/impactometre/-/issues/25Faire la fonction de calcul d'impact pour une réunion2020-01-23T14:30:47ZClement BrizardFaire la fonction de calcul d'impact pour une réunionAttendre que #9 et #24 soient faites
* [x] Supprimer la classe DistributedDamage
* [x] Renommer la classe ComponentDamage en Damage
* [x] Créer une classe CategoryDamage : elle contient un attribut category, un tableau de Damage et u...Attendre que #9 et #24 soient faites
* [x] Supprimer la classe DistributedDamage
* [x] Renommer la classe ComponentDamage en Damage
* [x] Créer une classe CategoryDamage : elle contient un attribut category, un tableau de Damage et un attribut damage correspondant à la somme des éléments du tableau (ici, on peut éventuellement créer un constructeur de ComponentDamage prenant un tableau en paramètre)
* [x] Modifier la classe MeetingDamage :
Son constructeur reçoit en paramètres un transportDamage de type CategoryDamage, un hardwareDamage de type CategoryDamage, et un softwareDamage de type CategoryDamage. Dans le constructeur, on instancie un attribut damage qui est la somme des Damage des trois CategoryDamage.
* [x] ~~Faire une fonction format dans MeetingDamage qui appelle une fonction normaliseDamages() pour renvoyer un résultat affichable par le front :~~ déplacé dans #12
* [x] Faire une fonction normalizeDamages dans le dossier utils à la racine du projet, qui prend en paramètres un nombre n de valeurs d'impact, met la plus grande à 100 et ajuste les autres.
* [x] Ajouter un attribut de type MeetingDamage à la classe MeetingSceanrio
* [x] Créer une fonction computeDamage dans la classe MeetingDamage qui initialise son attribut de MeetingDamage
EDIT : refacto de certaines classes
* [x] MeetingScenario :
```javascript
class MeetingScenario extends Scenario {
constructor({user, duration, payload}) {
// user
// duration
this._damage = new MeetingDamage(payload)
}
}
```
* [x] MeeetingDamage :
```javascript
class MeetingDamage {
constructor({ hardware: [], software: [], journeys: [] }) {
this._hardwareDamage = new CategoryDamage('hardware', hardware)
// pareil pour les deux autres
this._total = <somme des totaux des trois CategoryDamage>
}
}
```
* [x] CategoryDamage :
```javascript
class CategoryDamage {
constructor({ category, componentsParameters[] }) {
// category
// attribut components est une HashMap <id, Component>
// total calculé avec la fonction utilitaire
}
}
```
* [x] ~~computeDamageFromComponents(Component[])~~ Plus de besoin d'une telle fonction, les damage totaux sont calculés par itéraion sur un hashmap dans `computeDamage()` de `CategoryDamage`V1Valentin Le GaucheValentin Le Gauchehttps://gitlab.utc.fr/tx-techno-num/impactometre/-/issues/37Enrichir les classes Hardware, Software, TransportationMean et ComponentDamage2020-01-18T15:56:41ZClement BrizardEnrichir les classes Hardware, Software, TransportationMean et ComponentDamage* [x] Ajouter un attribut name comme dans la classe Hardware et modifier le constructeur.
* [x] Ajouter un attribut category qui vaut "Hardware" pour les objets de la base de données hardware, "Software" et "TransportationMean" pour le...* [x] Ajouter un attribut name comme dans la classe Hardware et modifier le constructeur.
* [x] Ajouter un attribut category qui vaut "Hardware" pour les objets de la base de données hardware, "Software" et "TransportationMean" pour les classes correspondantes (attendre que #38 soit faite avant) et modifier les constructeurs.
* [x] Pour la base de données TransportationMean, on peut ajouter un attribut subCategory qui regroupe les moyens de transport en grandes classes (avion, voiture, bus, train, etc.)
* [x] Ajouter un attribut equipment dans la classe Damage qui contient l'équipement correspondant.
* [x] Créer une classe abstraite pour les composants (id, name, french, damage). Modifier les classes filles en conséquence.
* [x] Modifier TransportationMean pour qu'elle prenne un string correspondant au name dans la DB. Modifier la classe Journey en conséquence. V1https://gitlab.utc.fr/tx-techno-num/impactometre/-/issues/46Créer une classe abstraite Scenario2020-01-09T10:01:09ZClement BrizardCréer une classe abstraite ScenarioV1https://gitlab.utc.fr/tx-techno-num/impactometre/-/issues/39Rendre la classe Damage partagée entre meeting et music2020-01-09T09:50:17ZClement BrizardRendre la classe Damage partagée entre meeting et musicAttendre #42
Créer un dossier shared dans model/classesAttendre #42
Créer un dossier shared dans model/classesV1Clement BrizardClement Brizardhttps://gitlab.utc.fr/tx-techno-num/impactometre/-/issues/45Ajouter à la classe journey un attribut passenger2020-01-09T09:36:43ZClement BrizardAjouter à la classe journey un attribut passengerPour prendre en compte modifications décidées le 07/01 avec le prof.Pour prendre en compte modifications décidées le 07/01 avec le prof.V1https://gitlab.utc.fr/tx-techno-num/impactometre/-/issues/44Renomer la classe Meeting en Scenario2020-01-06T11:27:31ZValentin Le GaucheRenomer la classe Meeting en ScenarioModifier la JSDoc en conséquence.Modifier la JSDoc en conséquence.V1Valentin Le GaucheValentin Le Gauchehttps://gitlab.utc.fr/tx-techno-num/impactometre/-/issues/38Changer le nom de la base de données des transports2020-01-06T11:16:19ZClement BrizardChanger le nom de la base de données des transportsL'appeler "TransportationMean", comme le nom de la classe. Changer le nom du fichier, et le nom de la constante exportée dans le fichier.L'appeler "TransportationMean", comme le nom de la classe. Changer le nom du fichier, et le nom de la constante exportée dans le fichier.V1Valentin Le GaucheValentin Le Gauche