Projet de 1ère licence Informatique Création d un système de mailing-list avec interface web Directeur : Tom Mens Julien Baligant
But : quel est le problème à résoudre? Il manque un outil adéquat permettant aux professeurs et aux élèves de communiquer entre eux, ainsi qu'entre les chercheurs ou les membres des équipes au sein d'une faculté. Motivation : le nouveau site web de l'université est présenté comme un pôle de communication où sont rassemblés les outils déjà existants. l'idéal est de réaliser un projet intégrable au site web!
Solution : un système de mailing-lists est la meilleure solution à développer, car : Elle résoud le problème posé Elle permet d'anticiper d'autres demandes qui nécessiteraient la même solution Elle convient au contexte d'amélioration du site web Elle ne solutionne pas des problèmes déjà gérés
Ce qui existe déjà : Répertoire du personnel : permet d'obtenir l'email de toute personne travaillant à l'université. Valves électroniques : permettent de transmettre un avis immédiatement à la classe concernée (utilisées par les secrétaires). Webmail : permet à tout utilisateur inscrit de consulter sa boite mail personnel sur le site web.
Ce que doit faire l'application en détail : Identification avec username et mot de passe Envoyer un mail à un ou plusieurs destinataires Joindre des fichiers Gérer un carnet d'adresses personnel Permettre la création et la gestion de groupes (étudiants pour les professeurs, groupes particuliers) Pouvoir contacter les anciens élèves Gestion minimale de la base de données (admins)
Technologies adéquates : PHP : langage de programmation web par excellence. Packages prêts à l'emploi : PEAR SQL : Structured Query Language. Langage de manipulation de base de données le plus courant. RADIUS : système d'identification et d'attribution des privilèges SSL : Secure Socket Layer. Système de sécurisation et de crypstage lors des connexions client - serveur FTP : File Transfer Protocol. Pour joindre des fichiers.
Base de données : Elle contient une quinzaine de tables : utilisateurs, cours, classes, années, cycles, sections, les relations telles que quels profs donnent quels cours, quels étudiants sont dans quelles classes, contacts des utilisateurs, élèves dispensés, groupes d'étudiants, groupes particuliers,... Certaines tables existent déjà, on espère y avoir accès. Les tables spécifiques à l'application seront ajoutées.
Méthodes de résolution (I) : Connexion : l'utilisateur saisit son login et son mot de passe et accède à l'interface correspondant à sa catégorie. Navigation : l'utilisateur commence par choisir le cycle, puis la section, et enfin la classe qu'il veut joindre. Les listes de sélection sont créées au fur et à mesure avec des requêtes adéquates. Enfin, un professeur accède aux groupes d'étudiants qu'il gère en choisissant préalablement un de ses cours.
Méthodes de résolution (II) : Procédures internes : Choisir les destinataires (avec Navigation) Construire la requête Réception de la liste des noms Construction des adresses Envoi groupé Pour l'envoi à un groupe (étudiants ou particuliers), une liste vers les groupes contactables par l'utilisateur est directement accessible.
Interfaces (I) : Administrateur : accès à ses groupes envoyer un message à n'importe quel utilisateur accès à la gestion des tables spécifiques à l'application modification de son compte personnel Professeur : accès à ses groupes particuliers/d'étudiants envoyer un mail à n'importe quel utilisateur modification de son compte personnel
Interfaces (II) : Chercheur / autres : accès à ses groupes particuliers envoyer un mail à n'importe quel utilisateur modification de son compte personnel Etudiant : contacter les groupes d'étudiants dont il fait partie, ainsi que le professeur qu'il l'a créé modification de son compte personnel
Ce qu'il reste à faire : Implémentation des scripts et des requêtes Interfaces Design graphique Tests Documentation, manuel d'utilisation