DTCv2

De April MediaWiki

gDTC v2[modifier]

Cette page décrit le travail sur la refonte du système gDTC vers une v2. En premier lieu, elle décrira le cahier des charges fonctionnelles telles qu'exprimées par les parties prenantes.

La version 1 est présentée ici : DTC

Contexte[modifier]

blah


Planning[modifier]

  • J-0 : initiation du cahier des charges
  • J+n : rencontres avec différents acteurs impliqués, définition des besoins, des manques, des limites
  • J+n : synthèse des discussions
  • J+n : formulation du cahier des charges, sélection des fonctionnalités à développer
  • J+n : propositions de schémas d'utilisation (mockups)
  • J+n : synthèse
  • Septembre 2009 : développement


Fondamentaux[modifier]

Blah. Raison d'être de l'application

Cadre général de l'application[modifier]

Schémas d'utilisation par rôle[modifier]

Adhérents[modifier]

Cas général[modifier]

  • Accéder à ses informations personnelles
    • Déclarer 2 adresses mails
  • Cotisations
    • Avoir un historique de ses cotisations
    • Pouvoir éditer un reçu
  • Accéder à l'historique des contacts ?
  • Abonnement aux listes
    • connaître l'ensemble de ses abonnements avec les adresses correspondantes
    • pouvoir s'abonner, se désabonner, avec différentes adresses
  • Annuaire
    • Connaître les autres adhérents de la même ville/région
    • Améliorer l'IHM
    • Pour quels usages ? Obtenir stats d'utilisation
  • Gérer informations reçues
    • Format: texte, html, multipart
    • Niveau de mails reçus: minimum, infos locales, tout, ...

Personnes physiques[modifier]

Personnes morales[modifier]

  • Connaître le barême des cotisations
  • Déclarer le montant de sa prochaine cotisation
  • Générer une facture
  • Générer une facture acquittée

Dans le mail de relance prochaine et/ou dans page de relance (liée par mail), insérer la grille de cotisation. Permettre à l'adhérent de saisir son montant de cotisation et ajouter un lien vers une facture.

Relance automatique des membres personnes morales en dessous d'un certain montant. Cases à cocher pour autoriser ou pas la relance auto (par ex. pour certaines structures qu'on connaît). Si pas de relance auto, programmation éventuelle d'événement dans le tableau de bord.

  • Ajouter un onglet pour la saisie des indicateurs annuels (cf avec Tangui)

Trésorier[modifier]

Le trésorier utilise l'applicatif DTC pour faire le lien entre sa comptabilité et les cotisations des membres.

Le trésorier utilise l'applicatif pour :

  • importer les opérations relatives aux adhésions dans son outil comptable
  • mettre en place un plan de trésorerie
    • simuler les entrées relatives aux ré-adhésions/nouvelles adhésions
  • la facturation
    • envoyer systématiquement une facture aux personnes morales
    • pouvoir éditer une facture acquittée
    • créer un reçu dans le cas d'un don
  • calculer le bénévolat valorisé
  • le paiement bancaire
    • recevoir le paiement des cotisations des membres
    • permettre à un membre ou à un non membre de régler une somme par CB\
  • projeter la réception des cotisations (tableau de bord budget)

Secrétaire[modifier]

Le secrétaire utilise gDTC pour le suivi des adhésions (validation, renouvellement, radiation) et des cotisations qui s'y rattachent (relances, dispenses).

  • Valider les nouvelles adhésions
    • éviter les doublons
    • pouvoir valider plusieurs adhésions d'un coup
    • vérifier si l'e-mail n'est pas valide
  • Radier un adhérent
    • le désabonner à l'ensemble des listes
  • Enregistrer le paiement d'une cotisation
    • par chèque
    • par virement
    • par carte bancaire
    • en espèces
  • Relancer des adhérents (selon divers critères)
    • retard de paiement suite à adhésion
    • renouvellement de cotisation
      • pour les personnes morales, nécessité de déterminer le montant de la cotisation conformément aux barêmes respectifs
  • Pouvoir modifier la date de relance des adhérents
    • suspendre provisoirement (pendant une période de N mois) les relances automatiques
  • Suivre les échanges avec les adhérents
      • pour les personnes morales, pouvoir donner une date de relance
  • Savoir qui est à jour de cotisation
  • Faire des statistiques
    • tranches d'âge

CA actif[modifier]

Plusieurs besoins liés à leur activité, mais notamment:

  • Envoyer des informations aux membres
  • Obtenir des indicateurs et des statistiques sur les membres
  • Obtenir un retour

Décomposition des besoins :

  • Envoi de mailing aux adhérents (voir #Mailing)
    • Écriture de messages par une interface web type admin
    • Choix des adhérents qui recevront ces messages
    • Spécifier une adresse de réponse
    • Obtenir la liste des bounces pour ce mailing
  • Gestion des MOTD aux adhérents
    • Écriture de messages par une interface web type admin
    • Définition d'une période de validité
    • Choix des adhérents qui recevront ces messages
    • Permettre ou non aux adhérents de les marquer comme lu
  • Envoi de formulaires aux membres (type RSVP, sondage, vote)
    • Écriture de formulaires par une interface web
    • Définition d'une période de validité
    • Choix des adhérents qui recevront ces messages
    • Définition d'un certain nombre de champs
    • Relance
    • Stats
  • Obtenir des information/statistiques sur les membres
    • Répartition géographique
    • Annuaire détaillé
    • Recherche de membres sur des critères arbitraires avec possibilité de choisir les attributs exportés

Animation de la communauté April[modifier]

  • Consulter les réponses au questionnaire sur l'April
    • statistiques de satisfaction, évolution des statistiques, compétences, suggestions, implication)
    • Connaître les compétences des membres se proposant pour aider pour trouver des volontaires => un champ séparé de profession et une case à cocher "Je veux participer".
    • Les compétences doivent être « structurées » (liste de tags + champ libre, par ex liste de tags cliquable qui insère des valeurs dans le champ)
    • Permettre aux responsables de groupes de contacter un ensemble d'adhérents choisis selon certains critères (compétences, localisation...)
  • Pouvoir lancer un script à chaque modification du nombre d'adhérents pour, par exemple, générer le bandeau d'adhésion.
  • Pouvoir vérifier le bénévolat valorisé d'un groupe de travail par le responsable de groupe (pour vérifier si les volontaires l'ont bien rempli)
  • Avoir des stats de bénévolat valorisé par mois (pour voir s'il faut faire des relances)
  • Avoir des stats de connexion au Drupal de manière identifiée (et éventuellement des stats de connexion à gDTC) pour mesurer son utilisation
  • Pouvoir gérer les options de certains modules Drupal (qui sont rendu inaccessibles par le captage de la page perso)
  • Gérer le bénévalo de son groupe de travail
    • avoir la liste du bénévalo renseigné
    • saisir du bénévalo pour un utilisateur
  • amélioration bénévolat valorisé (mois, projet non cliquables, ajouter années, ajout de projets)

Sympathisant[modifier]

Cette catégorie comprend les non-membres mais qui connaissent l'April.

Besoins :

  • adhérer à l'April
    • personne physique
    • personne morale
  • faire un don à l'April
    • obtenir un reçu
    • éventuellement obtenir un macaron pour mettre sur son site web
  • connaître l'April
    • accéder au trombinoscope de l'April
    • Modifier la page principale du trombi : La page est bien trop lourde. Il faut pouvoir sélectionner un groupe de personnes et pas tout le monde à la fois. Exemple : une liste déroulante permettant de choisir entre [CA] (+permanents), [Bénévoles] (conseils + groupes de travail), [Adhérents - A], [Adhérents - B], [Adhérents - C], etc. Une barre de recherche serait également un plus.
    • accéder à la page de l'équipe
    • consulter quelques statistiques ? (H/F, tranches d'âges, informaticiens / non informaticiens, localisation des membres...)

Tableau de bord[modifier]

Certains rôle possèdent leur tableau de bord, qui permet d'obtenir au moins les informations suivantes:

  • next actions (lorsqu'une relance est envoyée à une personne morale, une action planifiée est insérée dans le tableau de bord du secrétaire, par ex. les responsables de groupe on comme next action de produire un rapport d'activité, ...)
  • logs divers
  • stats

Identification et Confidentialité[modifier]

Identification[modifier]

Deux besoins parallèles:

  • SSO (Single Sign On)
  • Authentification partagée

Le SSO est a priori le but ultime car il permet de ne saisir son mot de passe qu'une seule fois. L'authentification partagée, par exemple par LDAP, est une possibilité.

Quelques solutions de SSO à évaluer : CAS, LemonLDAP. Voir avec les admins.

Confidentialité[modifier]

  • Accès intégral en HTTPS (ce n'est pas le cas dans la V1)
  • Définir qui a accès à quoi. S'il n'est pas possible de créer des rôles et de définir les matrices de droits spécifiques à chaque rôle, créer des bases différentes. L'une de ces bases, maîtresse, sera utilisée par DTC. Les autres, esclaves, ne contiendront que les informations utiles à l'application à laquelle elles sont dédiées, une ynchronisation périodique entre la base maîtresse et les bases esclaves étant effectuée.

Système d'ACL[modifier]

Créer des profils et leur donner des droits différents. Idéalement, définir un ensemble de fonction et permettre à chaque profil défini d'accéder ou non à une fonction.

  • par exemple, trésorier, secrétaire, assistante de direction, responsables de groupes
  • plus, donner permission sur groupe ? par exemple, le responsable du groupe de travail traduction ne doit pas avoir d'accès sur les informations du groupe transcription
  • gestion des bounces (secretaire+admin sys)
  • gestion purement administrative (ajout d'adhérent, cotisation, relances...)
  • système de mailing (modèles de mails, recherche sur les adhérents sur certains critères mais pas tous (cotisation par ex)

Contraintes d'intégrité[modifier]

Pour limiter les risques d'incohérence dans gDTC, il faudrait implémenter des contraintes d'intégrité :

  • personne notée comme membre mais sans adhésion ouverte
  • Entreprise membre mais sans contact associé


Mailing[modifier]

Le traitement de fond doit être fait par un outil spécialisé, pas par le web. À chaque mailing on doit pouvoir avoir des stats détaillées sur le nombre de bounces (avec lien pour avoir la liste), un événement doit être inséré dans le tableau de bord (ajax éventuellement).

Le web ne sert qu'à préparer des templates et sélectionner les destinataires d'un mailing.

Gestion des bounces :

  • afficher liste des bounces par adhérent et non par bounce, classé par temps depuis lequel l'adhérent est en bounce
  • dans la liste des adhérents, afficher icône si en bounce

Éviter les envois multiples : si possible, quand une personne est membre en tant que personne physique et inscrit en tant que contact d'une ou plusieurs personnes morales avec la même adresse mail, faire en sorte qu'il ne reçoive pas les messages en plusieurs exemplaires. Autrement dit, éviter les envois doublon sur une même adresse mail.

Pouvoir modifier le reply-to (qui est actuellement par défaut sur secretaire@) de manière a recevoir les réponses sur une autre liste (liot)

Divers[modifier]

Corrections ou améliorations attendues sur certains points

  • Permettre à l'adhérent de modifier le mail du contact relié à une structure
  • Reconduction automatique des prélèvements
    • Pour cela, DTC doit connaître le montant unitaire, la fréquence et la date du premier prélèvement car une copie des informations existantes n'est pas forcément pertinente. Par exemple, si une personne opte pour un prélèvement trimestriel de 10 euros après 6 mois d'adhésion, seuls 20 euros seront crédités au titre de la cotisation de la première année. L'année suivante, il ne faudra pas créer une cotisation de 20 euros (montant résultant d'une copie « bête » des informations) mais une cotisation de 40 euros (montant issu d'un calcul).
  • Eviter l'écrasement d'une cotisation payée par prélèvement lors d'un règlement par CB
  • Mail annuel de rappel aux adhérents qui règlent par prélèvement
  • suppression de logo dans l'annuaire (actuellement, on peut remplacer, mais pas supprimer)
  • Ajouter l'acronyme aux critères de recherche