HOUMADI
HOUMADI
HOUMADI
SYDNE
Auteur :
Encadrants :
Farda HOUMADI
Maxime LECLERCQ
no étudiant : 33002162
Moslim
Remerciements
J’adresse mes sincères remerciements à toutes les personnes qui ont contribué à la réa-
lisation de mon stage.
Ensuite, M. Yoland SAVRIMOUTOU, Directeur Général des Services, qui m’a fait confiance
tout au long de ce stage. J’exprime mes remerciements à M. Joël FONTAINE Contrôleur
d’exploitation, avec qui j’effectué l’ensemble des visites des infrastructures du SYDNE.
Je remercie également tous les membres du SYDNE, qui m’ont accueilli chaleureusement
pendant la période du stage et qui ont pris du temps pour répondre à mes questions malgré
leurs plannings chargés.
Je tiens à remercier tous les partenaires qui sont intervenus pour m’aiguiller, me conseiller
dans la partie technique du stage.
H.F
3
4
Résumé
C’est au sein de l’organisme SYDNE (Syndicat intercommunal de traitement des dé-
chets du Nord et de l’Est de la Réunion), que j’ai effectué mon stage de fin d’études de
Master Informatique. Le SYDNE est une collectivité récente, qui a la compétence de la
gestion de traitement et de valorisation des déchets ménagers et assimilés dans le Nord
et Est de La Réunion. L’organisme a pour projet de structurer ses données internes et de
mettre en place un outil informatique pour les exploiter.
L’objectif de mon stage consistait donc à concevoir une base de données et à développer
un outil informatique d’analyse, de suivi et de reporting de données. Pour cela, plusieurs
étapes étaient nécessaires comme l’analyse de l’existant, la modélisation de la base de
données ou encore le développement de l’outil selon les besoins définis par les agents. Ce
rapport ne présente qu’une première version de l’outil.
Mots-clés
: base de données, analyse des données, déchets ménagers et assimilés, SQL, Python
Abstract
It is within the organization SYDNE, that I did my internship end of studies of Mas-
ter’s degree in Computer Science. The SYDNE is a young community, which has the skill
of the management of treatment and recovery of household and similar waste in the North
and East of Reunion Island. The organization plans to structure its internal data and put
in place a computer tool to exploit them.
The objective of my internship was to design a database and develop a computer tool
for analysis, monitoring and reporting of data. For this, several steps were needed such as
the analysis of the existing, the modeling of the database or the development of the tool
according to the needs defined by the agents. This report presents only a first version of
the tool.
Keywords
: database, data analysis, household and similar waste, SQL, Python
5
6
Table des matières
1 Contexte 3
1.1 Structure d’accueil : le SYDNE . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.1.1 Présentation du SYDNE . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.1.2 Compétences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.1.3 Organisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.2 Problématique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.3 Compétence DMA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.3.1 Absence de maîtrise de gestion de BD . . . . . . . . . . . . . . . . . 4
1.3.2 Objectif du stage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2 Outils et organisations 6
2.1 Déroulé de la commande du SYDNE . . . . . . . . . . . . . . . . . . . . . . 6
2.2 Moyen pour y répondre . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.3 Méthode gestion de projet . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.3.1 Cycle de vie d’un projet . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.3.2 Démarche suivie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
3 Analyse préalable 10
3.1 Diagnostic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
3.2 Étude des outils existants . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
3.2.1 Outils commerciaux . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
3.2.2 Outils relatifs au déchets . . . . . . . . . . . . . . . . . . . . . . . . . 12
3.3 Expression des besoins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
3.4 Problématique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
3.5 Analyse de l’existant . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
3.6 Solution proposée . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
5 Résultats 34
5.1 Déroulement du projet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
5.2 Difficultés rencontrées . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
5.2.1 Constat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
5.2.2 Analyse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
5.3 Outil final . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
5.3.1 Interface de connexion utilisateur . . . . . . . . . . . . . . . . . . . . 36
5.3.2 Interface de saisie utilisateur . . . . . . . . . . . . . . . . . . . . . . 37
5.3.3 Interface administrateur : importation des données . . . . . . . . . . 37
5.4 Perspectives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
Bibliographie 41
Annexes 44
A Le SYDNE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
A.1 Organisation institutionnelle : le comité syndical . . . . . . . . . . . 44
A.2 Territoire du SYDNE . . . . . . . . . . . . . . . . . . . . . . . . . . 45
A.3 Bilan annuel des quantités des déchets . . . . . . . . . . . . . . . . . 46
B Documents réalisés . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
B.1 Présentation des objectifs du stage aux agents . . . . . . . . . . . . . 48
B.2 Recueil des besoins : questionnaire . . . . . . . . . . . . . . . . . . . 50
B.3 Note d’avancement . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
B.4 Présentation des solutions techniques . . . . . . . . . . . . . . . . . . 57
C Visite des installations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
C.1 Déchet entrant . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
C.2 Déchet sortant . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
D Développement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
D.1 Turoriel Django . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
D.2 Personnalisation de l’interface administrateur . . . . . . . . . . . . . 65
D.3 Script sql . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
E MOOC (massive open online course) . . . . . . . . . . . . . . . . . . . . . . 68
Table des figures
10
Liste des tableaux
11
Introduction
Au cours de ces dernières années, la problématique autour des déchets a fait la une
de l’actualité de plus en plus régulièrement. En effet, l’organisation liée à la gestion des
déchets a fortement progressé sur le territoire français, en matière de maîtrise des coûts,
d’amélioration de la qualité et des quantité de déchets triés, de la valorisation organique
et matière.
Ces différentes évolutions entraînent nécessairement la production d’une masse importante
de données. De plus, les organisations produisent, collectent quotidiennement des données.
Savoir les organiser, les structurer puis les valoriser, mais aussi les exploiter et les analy-
ser constitue un réel défi pour elles. C’est pourquoi, il est essentiel de disposer des outils
informatiques adaptés pour répondre à ce besoin grandissant.
1
Le présent document est organisé comme suit. Dans un premier temps, j’y présente le
contexte du stage suivi de la présentation de la structure d’accueil et des objectifs attendu.
Ensuite, outils et organisations dans laquelle, j’explicite les besoins du SYDNE ainsi que
les moyens mis à ma disposition pour y répondre. J’évoque également dans cette partie la
méthode de gestion de projet mise en place avec mon tuteur de stage. Et enfin, avant de
conclure, je présente les résultats obtenus du projet et les difficultés rencontrées.
2
Chapitre 1
Contexte
SYDNE
1.1.2 Compétences
Ayant transféré la compétence de traitement des déchets ménagers et assimilés, les
deux EPCI, ont conservé la charge des différents modes de collecte dont la gestion des
déchetteries. Ainsi la compétence du SYDNE comprend :
• Le tri des déchets recyclables issus des collectes sélectives ;
• La valorisation matière des déchets recyclables ;
• La valorisation organique des déchets verts ;
• La valorisation énergétique ;
• L’élimination par enfouissement des ordures ménagères et des refus de tri.
Le SYDNE traite les déchets ménagers et assimilés soit, les déchets recyclables, les ordures
ménagères résiduelles, les encombrants, les déchets verts collectés en porte à porte qu’en
déchetterie.
3
1.1.3 Organisation
La structure du SYDNE repose sur deux organisations. Une organisation institution-
nelle (comité syndical), qui définit la politique du syndicat, vote le budget, décide des
investissements et de modalités de gestion du service. Il est composé de délégués désignés
par les assemblées délibérantes de chacun des adhérents du syndicat.
Et une organisation administrative qui exécute les décisions du comité syndical. Son
effectif est de dix membres.
1.2 Problématique
L’objectif du SYDNE, dans les années à venir, est d’assurer une continuité du service
public du traitement des DMA, en intégrants les futurs projet, dans des conditions tech-
niques financières et environnementales maîtrisées.
L’architecture SI actuelle du SYDNE, n’intègre pas un système de gestion de base de don-
nées. Les données stockées et archivées dans le serveur de fichier, ne leur permettent pas
d’effectuer des analyses dans l’optique d’optimiser les activités de traitement des déchets.
4
tendra à archiver des données financières (factures des prestataires). Il conviendrait de
regrouper ces informations dans un outil informatique commun, mutualisé et standardisé.
Cela implique un savoir-faire et des compétences informatiques, qui ne sont actuellement
pas présentes en interne.
5
Chapitre 2
Outils et organisations
En premier lieu, découvrir le métier de l’activité du syndicat, le métier des agents, les
sites d’exploitation, la terminologie et les caractéristiques des activités relatives au traite-
ment des déchets. Il s’agit ici de comprendre les concepts principaux liés aux déchets pour
la mise en place de la base de données et le développement de l’outil.
Ensuite, effectuer l’état de l’art des outils existant de capitalisation de données relatives
au traitement de déchets au niveau local, régional, national. L’activité consiste à contac-
ter, rencontrer des acteurs et expérimentés pour échanger sur le fonctionnement de leur
structure, sur le processus suivie pour la centralisation des données, sur la structuration
et de la nomenclature de la base des données et des technologies utilisées.
Puis, concevoir et mettre en place une base de données. Le choix des technologies, la
standardisation des fichiers, la collecte des données ainsi que la conception et l’architec-
ture de la base de données sont au cœur de cette tâche.
Et enfin, développer et déployer l’outil afin de réponde aux besoins des agents. Mais éga-
lement, faire une demande de subvention auprès des organismes pour le développement de
l’outil.
6
2.2 Moyen pour y répondre
Le projet requiert les moyens matériels suivants :
7
2.3.2 Démarche suivie
Dans cette démarche de méthodologie, nous avons mis en place un planning prévision-
nel au début du stage.
Puis, nous avons suivi le modèle d’organisation interne pour la validation des étapes du
projet. Cette méthode consiste à la rédaction d’une note d’avancement (en annexe), qui
est soumis dans un premier temps au tuteur de stage puis au directeur général des services
afin de valider ou non l’étape et les solutions proposées.
8
9
Figure 2.2 – Planning prévisionnel
Chapitre 3
Analyse préalable
3.1 Diagnostic
La structuration des données dans le serveur interne, est organisée de la manière sui-
vante : les données sont stockées dans le serveur de fichiers, et plus précisément dans le
disque PROD. Ces données sont rangées en arborescence et classées par type de service.
Toutes les informations dans ce disque sont accessibles à tous les agents sauf quelques
dossiers confidentiels.
La problématique relevé dans ce modèle est la duplication des fichiers et le même fichier
peut exister sous différents noms. Un autre point très important est la sécurisation des
fichiers. Le fait est que chaque agent a accès aux fichiers et ces fichiers ne sont pas sécurisés
en écriture.
Pour compléter ce diagnostic, je constate que l’historique de la majorité des données date
d’environ un ans. Les données manipulées sont majoritairement sous le format excel, pdf
et word. Pour le pôle technique, les données sont collectées mensuellement auprès des
prestataires. Les données reçues peuvent être brutes et/ou agrégées. Au niveau du pôle
finance, les factures contenant les éléments essentiels au DMA sont transmises et reçues
mensuellement.
10
Previsoft Tennaxia / Everhse Caktus
Type Logiciel Logiciel Logiciel
Démo Sur demande Sur demande Sur demande
Accès à la consultation des
Simple et ergonomique Intégration des données historiques
données aux prestataires,
Avantage Vue personnalisé Comparaison sur plusieurs années
publics sur une période :
Service d’intégration Intégration de la réglementation
collecte, valorisation, facture
Design de l’interface terne
Inconvénients
de la version actuelle
Traçabilité des déchets
Suivi statistique
Respect de la réglementation
Réduction des coûts
Objectif Maîtrise des coûts Gestion des déchets
Répondre aux différents
Production de déclaration et
11
exigences réglementaires
document administratif
Plateforme Desktop et web web Desktop et web
Enregistrements des données :
Ajout et description des déchets déchets, prestataire...
Suivi des tonnages
Quelques Déclaration annuel des rejets Edition du registre des déchets et
Statistique reporting
fonctionnalités Suivi des coûts déclarations
Registre, BSD
Analyse Gestion des coûts
Analyse
Table 3.1 – Tableau comparatif solution commercial
11
3.2.2 Outils relatifs au déchets
PEIGEO
Au niveau local, l’observatoire réunionnais des déchets (ORD) crée par l’AGORAH (agence
urbanisme de La Réunion) en 2014, a développé un outil, PEIGEO (Plateforme d’Echange
de l’Information GEOgraphique) pour valoriser les données géographiques de la Réunion.
Cet outil a pour vocation d’informer, de partager, de mutualiser, de coordonner et diffu-
ser l’information géographique de la Réunion. L’outil permet de géolocaliser et visualiser
quelques installations relatives au traitement des déchets et d’autres informations liées à
l’urbanisme de la Réunion.
Outil de l’ORDIF
Au niveau régional, j’ai opté pour l’ORDIF (observatoire régional des déchets en Île-de-
France) pour son expérience de plus de 20 ans dans le domaine.
L’ORDIF possède un outil d’analyse et de suivi. À partir de cet outil, on peut réaliser des
bilans, des synthèses, documents rédigés, graphiques et cartographiques.
SINOE
Au niveau national, SINOE mis en place par l’ADEME (Agence de l’environnement et
de la maîtrise de l’énergie), est un outil d’analyse principalement destiné aux collectivités
territoriales en charge de la gestion des DMA. Il a pour but d’optimiser la politique de
gestion des déchets et également à améliorer le service notamment pour la maîtrise des
coûts.
Les opérations que nous pouvons effectuer sur SINOE sont nombreuses. Et parmi elles, la
visualisation du bilan annuel et de l’historique des flux, le partage des données entre les
collectivités, l’affichage des informations administratives et techniques sur les installations.
Il présente aussi un outil d’aide à la décision pour les analyses, indicateurs, les coûts, les
cartes et graphiques.
12
Besoins Nombre d’occurence
Projection, visant à estimer les gisements de déchets à court terme
(au mois suivant par exemple), mais également à moyen et 4
long terme (10 - 20 - 30 ans par exemple)
Une interface de saisie rapide et ergonomique des données 4
Tableau de suivi des marchés publics en cours 4
Analyse des données, pour permettre par exemple la production
d’analyses statistiques, de tableaux de bord, d’indicateurs, 3
de ratios (tonnes/habitants, e/tonnes, etc.)
Edition du rapport annuel d’activité du SYDNE 3
Suivi de l’évolution budgétaire avec projection et rétrospective,
3
des factures et rapport mensuel des prestataires
Fiche d’information et historique des événements par site 3
Alerte en cas de dépassement du seuil minimum fixé pour les
3
sites par exemple
Suivi recette éco-organisme 2
Suive facture par marché 2
Transportable sur SIG 2
Suivi des demandes des usagers (appel numéros vert,
2
courrier, contact via site web)
Opération basique et avancée sur les données : écart-variation,
2
somme,. . .
L’archivage sécurisé de la données 2
Automatisation des tâches financières : calcul révision
1
des prix, . . .
Comparaison prix unitaire de l’ancien marché avec le
1
nouveau marché
Référencement par mot-clé des rapports comité syndicaux 1
Evolutif, pour permettre de s’adapter aux nouveau besoins du SYDNE 1
Table 3.2 – Expression des besoins en fonction des agents
13
3.4 Problématique
Nous allons nous fixer sur les problématiques suivantes :
— Le choix sur le logiciel de modélisation de la base de données et le système de gestion
de base de données
— Le choix du langage de programmation et les outils de développement
L’accès de la base de données en fonction des rôles de chaque agent semble la méthode
la plus pertinente puisque les objectifs finaux de chaque agent diffèrent.
Le niveau de sécurité sera élevé car les données seront affichées en fonction des permissions
de chacun.
14
Chapitre 4
4.1.1 MySQL
MySQL
MySQL est un système de gestion de base de données relationnelle éditée par Oracle
corporation.
C’est l’une des SGBD le plus utilisée. Il est distribué sous deux licences, que sont GPL
(publique) et propriétaire. MySQL possède de nombreuses avantages comme par exemple :
— intégration parfaite dans l’environnement Apache (serveur web) et PHP (langage
programmation coté serveur) ;
— open source et multiplateforme ;
— déploiement facilité.
4.1.2 PostgreSQL
PostgreSQL
15
C’est un SGBD créé par la société PostgreSQL. Il est open source, gratuit et multiplate-
forme.
Microsoft Access est une application de gestion base de données relationnelle édité par
Microsoft. Cependant, il est propriétaire et payant.
16
— que la prise en main est facile ;
— que son extension PostGIS soit en lien avec QGIS.
D’après les avantages et les inconvénients de chacune des solutions présentées, PostgreSQL
est le plus convenable et offre plus d’avantage à notre projet puisqu’il est facile à utiliser,
flexible, open source, gratuit et multiplateforme.
HTML5 et CSS3
HTML et CSS sont la base pour tout projet de développement web, car les navigateurs tels
que Google Chrome ou encore Safari par exemple, vont interpréter le code pour afficher
les pages web.
Le langage HTML (HyperText Markup Language) a été inventé en 1990 par Tim
Berners-Lee. Le HTML est un fichier texte contenant des balises permettant de mettre en
forme (texte, image. . . ) et structurer le contenu des pages web.
Le CSS (Cascading Style Sheets) consiste à attribuer dans un même document des ca-
ractéristiques de mise en forme à tout un groupe d’éléments de la page web. Il est utilisé
conjointement avec HTML pour modifier le design (la couleur, la police, bordure, etc.) de
la page web. Il permet de réduire la taille et la complexité du code HTML. Utilisé CSS,
c’est :
— se focaliser sur la conception sans se soucier de la forme
— une mise à jour de l’apparence du site facilité
— une plus grande lisibilité du code HTML
JavaScript
Le JavaScript est un langage de script orienté objet, crée dans les années 1990 par Brendan
Eich. C’est un langage qui est inclut dans le code HTML et interprété par le navigateur.
Le JavaScript est un langage coté client, c’est-à-dire que les scripts sont exécutés par le
navigateur. Il permet de dynamiser la page web en intégrant des interactions avec l’utili-
sateur, des animations. Par exemple, la création des infobulles ou le défilement des images.
Bootstrap
17
Bootstrap est un framework qui permet de créer le design des sites et d’application web
plus aisément. Il a été créé en 2010 par deux développeurs travaillant chez Twitter. C’est
une bibliothèque qui contient du CSS pour la mise en forme du texte, tableau et les for-
mulaires. Il inclut également les librairies JavaScript pour dynamiser les pages web. Il est
mis à disposition du public sous la licence MIT.
Bootstrap fournit : une mise en page basée sur une grille de 12 colonnes, une bibliothèque
open source, une bonne documentation, etc.
Django
Afin d’éviter de répéter les mêmes étapes lors de la réalisation d’une solution web (la
gestion d’authentification des utilisateurs, des formulaires, . . . ), nous avons choisi d’uti-
liser un framework. Face à une multitude de framework web existant et ceux dans de
différents langages de programmations, mon choix s’est porté sur Django. D’une part,
parce qu’il est développé en Python, un langage de programmation que je maîtrise.
Python est un langage de programmation interprété, c’est-à-dire qu’il n’est pas nécessaire
de le compiler avant de l’exécuter. C’est également un langage de haut niveau et orienté-
objet.
Et d’autre part, parce qu’il est simple à l’apprentissage, garanti la sécurité du site final et
facilite la maintenance des solutions développées sur la durée.
Django a été créé en 2003 par les développeurs Adrian Holovaty et Simon Willison
pour le journal local dans le Kansas : World Online. C’est un framework open source dé-
veloppée en Python. Il est consacré au développement web et conçu pour réduire le temps
de développement et permet de simplifier la conception d’un site.
Par ailleurs, Django utilise un modèle MVT (Modèle Vue Template). Ce modèle s’ins-
pire du modèle MVC (Modèle Vue Contrôleur). Le MVC sépare le modèle (accès et mis à
jour des données) de la vue (interface utilisateur) et du contrôleur (action des utilisateurs).
18
Figure 4.1 – Modèle vue contrôleur
Cette spécificité réside dans le fait que Django gère lui-même le contrôleur. L’image
ci-dessous illustre l’écosystème d’un projet dans Django.
Le développement d’une application web est faite sous forme de projet. En effet, le
projet regroupe l’ensemble des configurations et des applications. Un projet peut contenir
zéro à plusieurs applications. Contrairement à l’application qui ne peut exister sans le
projet.
Quant à l’application, c’est un dossier qui contient plusieurs fichiers de code ( views.py,
models.py, admin.py, . . . ). Chacune de ces fichiers appartient à une composante dans le
MVT.
Un template est un fichier HTML. Il est récupéré par la vue et avant d’être envoyé à la
vue, il est analysé et exécuté par le framework.
19
4.2.3 Outils complémentaires
GIT
Git est un logiciel de gestion de versions décentralisé. Il est open source et gratuit. Il a
été créé vers 2005 par Linus Torvalds le développeur du noyau Linux. Il permet de suivre
l’évolution d’un fichier, texte ligne de code par ligne de code.
Ce logiciel est très utilisé pour la gestion d’un projet informatique en équipe ou indivi-
duellement.
Version
Système d’exploitation
Linux Toute distribution
Windows 2000 ou supérieur
Serveur web
Apache 2
Gunicorn 19.8
SGBD
PostgreSQL 10
Framework
Django 1.10.1
Table 4.1 – Configuration minimale requise du serveur
Utilisateur
Concernant les postes utilisateurs, la configuration requise est la suivante :
20
Système d’exploitation Linux, Windows, Mac os x
Mémoire 1024 Mo
Navigateur Google Chrome, Mozilla
Table 4.2 – Configuration minimale requise pour l’utilisateur
21
4.3.3 Architecture logicielle
L’outil utilise le serveur SGBD PostgreSQL. La communication entre l’outil et le ser-
veur repose sur l’architecture suivante.
Dans cette architecture, le modèle est connecté au serveur grâce au pilote postgreSQL
permettant ainsi une communication directe avec le serveur des données. Le serveur post-
greSQL a comme nom d’hôte : localhost. Il écoute sur le port 5432.
22
Figure 4.5 – Architecture matérielle
23
Dans notre système l’utilisateur s’authentifie avec les identifiants fourni par l’administra-
teur. Selon le profil, l’utilisateur pourra effectuer les actions suivantes :
• consulter les données depuis le tableau de bord ;
• saisir les données
• analyser les données à partir des indicateurs
• faire une projection des données
• exporter les données
24
25
Figure 4.6 – Diagramme de cas d’utilisation du système
Dictionnaire de données
Le dictionnaire de données contient les noms mnémoniques des données ainsi que la des-
cription correspondant.
26
4.4.2 Modélisation avec SQL Power Architect
Pour l’ajout d’une nouvelle colonne dans la base, nous avons plusieurs paramètres que
nous pouvons définir. Nous devons indiquer son nom, préciser s’il est clé primaire, s’il doit
s’incrémenter automatiquement ou encore s’il est obligatoire de le renseigner ou non au
moment de l’insertion des données.
27
La définition d’une relation d’association entre deux tables s’effectue de cette façon.
Nous déterminons le type de la relation c’est-à-dire s’il doit être considérer en tant qu’iden-
tifiant de la table ou en tant que clé étrangère. Nous spécifions également la cardinalité
entre les deux tables. Puis la règle lorsqu’on modifie ou supprime la donnée.
Après la modélisation, nous intégrons les tables dans la base de données PostgreSQL.
Pour ce faire, nous saisissons toutes les informations de Connexion liées à la base.
28
Enfin, l’édition du script sql. Avec la commande execute, les tables sont ajoutées di-
rectement dans la base.
29
30
Figure 4.11 – Modélisation logique BD : version 1
4.4.4 Base de données : version 2
Dans cette seconde version, plusieurs corrections ont été apportées. Tout d’abord la
suppression de la table epci. Cette table est intégré dans la table commune en tant que
champ. Dans cette même table le champ année a été ajouter.
Ensuite, la modification des tables comme analyse, facture, site, etc.
Et enfin, l’ajout des nouvelles tables telles que estExploitant, conclu pour référencer les
marchés établis avec les partenaires.
31
32
Figure 4.12 – Modélisation logique BD : version 2
4.4.5 Administration de la base avec PostgreSQL
Dans un premier temps la base de données a été administrer depuis l’interface pgAdmin.
33
Chapitre 5
Résultats
34
35
Figure 5.1 – Diagramme de Gantt : déroulé réel du stage
5.2 Difficultés rencontrées
5.2.1 Constat
Durant le stage, plusieurs difficultés se sont présentées.
5.2.2 Analyse
Malgré les quelques complications que j’ai eu, cela n’a pas empêché l’atteinte des
objectifs fixés. Ainsi, face à ces problèmes, j’ai apporté des solutions concluantes qui m’ont
permis d’avancer rapidement.
36
Figure 5.2 – Page d’authentification
saisir les données dans les catégories suivantes : techniques, finance et administrative. Le
cas présent, j’affiche quelques onglets pour illustrer le type de données à saisir, sans tenir
Depuis cet interface, l’administrateur pourra effectuer les opérations basiques telles que
a le choix de saisir les données ou de les importer à partir d’un fichier excel. Nous pouvons
voir dans l’image qui suit les champs qu’il doit respecter. Une demande de confirmation
est demandée. De plus, l’administrateur est informé si les données importées sont une mise
37
Figure 5.4 – Interface administrateur : importation
5.4 Perspectives
• Créer une interface exclusive aux partenaires. Dans cette interface, les partenaires
déposeraient les fichiers de données, saisiraient les données qui seront par la suite
validées par l’administrateur. Ils pourraient également avoir un tableau de bord avec
leurs données (tonnages, marchés publics en cours, etc.) afin d’avoir un suivi plus
dynamique.
38
• L’enregistrement des requêtes effectuées à partir des analyses, voire les partager avec
• Rendre plus souple l’importation des données. Actuellement, les champs des en-
têtes sont imposés dans le fichier. Cependant, le mieux est de laisser à l’utilisateur
39
Conclusion
En résumé, les éléments suivants ont été traités : l’analyse de l’existant, la mise en
place des outils pour le développement, la création de la base de données et l’aperçu visuel
Les objectifs fixés sont atteints omis quelques fonctionnalités qui restent à développer.
X le volet subvention.
Ce stage m’a permis de mettre en avant mes connaissances théoriques et techniques dans
la structure du SYDNE.
Durant ce stage, j’ai acquis des compétences au niveau informatique qui sont :
40
Bibliographie
http://www.sydne.re/.
http://www.sinoe.org/.
http://www.peigeo.re/accueil.
http://www.ordif.com/.
http://www.ademe.fr/collectivites-secteur-public/
collectivites-lademe-finance-projets.
http://www.regionreunion.com/sites/feder/.
https://openclassrooms.com/courses/introduction-au-framework-django.
https://fadace.developpez.com/sgbdcmp/.
http:
//www.formation-django.fr/framework-django/zoom-sur/orm-django.html.
https://djangopackages.org/.
https://docs.djangoproject.com/fr/2.0/.
41
[12] Python. Documentation.
https://docs.python.org/fr/3/.
http://do-we-know-how.bring.out.ba/file/2011/09/
7335282-PowerArchitectUserGuide.pdf.
42
Glossaire
à créer les fondations ainsi que les grandes lignes de tout ou d’une partie d’un logiciel
(architecture).
toute substance, matériau, produit, ou plus généralement tout bien meuble abandonné ou
Déchets ménagers et assimilés (DMA) : sont des déchets issus des ménages et des
déchets assimilés. Les déchets produits par les services municipaux, déchets de l’assainisse-
ment collectif, déchets de nettoyage des rues, de marchés ne relèvent pas de ce périmètre.
données.
Modèle physique des données (MPD) : consiste à implanter une base de données
dans un SGBDR.
43
A Le SYDNE
44
A.2 Territoire du SYDNE
45
A.3 Bilan annuel des quantités des déchets
46
B Documents réalisés
47
24/05/2018
1) Contexte du SYDNE
2) Objectif
PROJET BD DMA 3) Exemple
MISE EN PLACE D’UN OUTIL INFORMATIQUE DE GESTION DES DONNÉES 4) Déroulé
Projet BD DMA 2
29 JANVIER 2018 FARDA HOUMADI/ STAGIAIRE
OBJECTIF
3. EXEMPLE
48
1
24/05/2018
EXEMPLE
4. DÉROULÉ
DÉROULÉ
Fin :
Début : Today Questionnaires 16/02/2018
FARDA.HOUMADI@SYDNE.RE
Projet BD DMA 9
2
B.2 Recueil des besoins : questionnaire
26/05/2018
Figure 9 – Questionnaire
50
B.3 Note d’avancement
1 OBJECTIF DE LA NOTE :
Point d’avancement sur le projet de la mise en place d’une base de données et d’un outil informatique.
2 CONTEXTE / AVANCEMENT
En bref, le projet consiste à :
• Développer & mettre en place un outil informatique permettant de capitaliser, archiver l’information
• Faciliter les tâches administratives
• Effectuer des analyses statistiques
En termes d’avancement, les besoins de chaque agent du SYDNE ont été recueillis. Ces besoins sont traduits en
fonctionnalités pour le développement de l’outil. La conception et la mise en place de la base de données sont
en cours. Le développement de l’outil se fera en parallèle de cette mise en place afin d’éviter tout retard sur le
projet.
SYDNE/FH 1
51
Eco-organisme : tonnage valorisé
Édition du rapport annuel
Compatible avec le site web du SYDNE
Évolutif
Suivi des demandes des usagers (appel numéros vert, courrier)
Référencement par mot-clé des rapports comité syndicaux
Suivi recette éco-organisme
Automatisation de tâches financières : calcul révision des prix,
Contrôle cohérence
Matrice des coûts HT
Suivie facture par marché
Opération basique et avancé sur les données : écart-variation, somme
Vérification de la donnée
Comparaison prix unitaire de l’ancien marché avec le nouveau marché
1. Connexion
2. Choix des informations à afficher dans le tableau de bord
3. Accueil de l'outil
4. Interface de saisie : choix catégorie
5. Interface analyse
6. Paramètres : modification mot de passe…
SYDNE/FH 2
7. Interface de l'historique
5 ANALYSE FONCTIONNEL
SYDNE/FH 3
Nom de la fonctionnalité Description Nécessaire ? Priorité Planification
Oui/non Faible,
moyen, forte
Gestion des utilisateurs et Identification de l'utilisateur : identifiant et mot de passe oui Forte Mars
droits Quatre niveaux de profils :
• Administrateur : à tous les droits sur l'outil, gère les
utilisateurs, délègue certain droit au responsable de service
• Gestionnaire des données
• Utilisateur : exportation des données, tableau/graphique
obtenu après analyse
• Visiteur : consultation des données
SYDNE/FH 4
Validation ou annulation de l'action
SYDNE/FH 5
6 CONCEPTION DE LA BASE DE DONNEES
SYDNE/FH 7
B.4 Présentation des solutions techniques
1 OBJECTIF DE LA NOTE :
Présentation de deux solutions dans l’objectif d’effectuer un choix pour le développement et la mise en place de
l’outil.
2 CONTEXTE / AVANCEMENT
En bref, le projet consiste à :
• Développer & mettre en place un outil informatique permettant de capitaliser, archiver l’information
• Faciliter les tâches administratives
• Effectuer des analyses statistiques
En termes d’avancement, les besoins de chaque agent du SYDNE ont été recueillis. Ces besoins sont traduits en
fonctionnalités pour le développement de l’outil. La conception et la mise en place de la base de données sont
en cours. Le développement de l’outil est également en cours.
3 PRELIMINAIRE
❖ Base de données
Une base de données est un système qui enregistre des données de manière structurée.
SYDNE/FH 1
57
C’est un SGBD open source, gratuite et multiplateforme. Il est le plus complet des SGBD gratuits. Il
convient aux bases de données volumineuses.
3 6 PRECONISATION DE LA SOLUTION
4
Figure 2 : Exemple d'architecture d'une application web
La solution que j’ai choisie en termes de SGBD est PostgreSQL pour ses nombreuses fonctionnalités.
Pour l’outil une application web, qui sera développé avec le langage Python et utilisant le framework
4 PRESENTATION DES SGBD Django. Les fonctionnalités disponibles dans Django permettent de créer une application web très
❖ MySQL rapidement. Le framework dispose d’une interface administrateur pour la gestion du projet et des
MySQL est un SGBD open source, gratuite et multiplateforme (Windows, Linux, MacOSX, Unix). Il est données. Dans cette interface, plusieurs fonctionnalités sont déjà disponibles telles que :
adapté pour les petites bases de données avec un nombre faible de connexion simultané. - la gestion des utilisateurs en leur attribuant les droits, les actions qu’ils pourront
effectuer dans l’outil
❖ Microsoft Acces - l’import/export des données à partir d’un fichier Excel/PDF
Il est propriétaire, payant et disponible uniquement sur la plateforme Windows. Il est complet, intuitif - prévisualisation des données importées avant enregistrement dans la base
et simple à déployer.
Quelques performances que le framework dispose :
❖ PostgreSQL
- la sécurisation de l’application finale
- la maintenance est facilitée sur la durée
SYDNE/FH 2 SYDNE/FH 3
7 SUITE A DONNEES
La confirmation de la solution choisie par le DGS. Suivi du projet par le service informatique de la CINOR.
SYDNE/FH 4
C Visite des installations
60
C.2 Déchet sortant
Figure 12 – Compost
D Développement
61
D.1 Turoriel Django
Installation de Django
Création du projet
Création de l’application
Organisation du projet
Installation de l’application dans le projet. Dans le fichier setting.py, ajouter le nom de l’application.
# Application definition
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
62
'django.contrib.staticfiles',
'mainDMA',
]
Configuration de la base de données selon les caractéristiques de PostgreSQL. Par défaut, Django
utilise la base de données SQLite.
# Database
# https://docs.djangoproject.com/en/1.10/ref/settings/#databases
DATABASES = {
'default' : {
'ENGINE' : 'django.db.backends.postgresql',
'NAME' : 'dma',
'USER' : 'postgres',
'PASSWORD' : 'sydne',
'HOST' : 'localhost',
'PORT' : '',
}
}
Migration des tables (admin, auth, contentypes, sessions) dans la base. La migration est obligatoire
pour pouvoir définir les identifiants de l’administrateur.
Password:
Password (again):
Lancement du serveur.
class Commune(resources.ModelResource):
class Meta:
# Nom du modele de la table
model = Commune
exclude = ('id')
# Champs a afficher
fields = ('id_commune','nom_commune','code_postal', 'code_insee',
'nombre_habitant','nom_epci',)
import_id_fields = ['id_commune',]
# Specification des champs a filtre
list_filter = ['nom_commune', 'nom_epci',]
class ImpExp(ImportExportModelAdmin):
resource_class = Commune
# pass
65
# register all adminactions
# Ajout des actions : supprimer, ajouter, exporter
actions.add_to_site(site)
admin.site.site_header = "Projet DMA Administration"
admin.site.site_title = "Projet DMA Administration"
D.3 Script sql
67
E MOOC (massive open online course)
J’ai suivi les MOOCs « Déccouvrez le framework Django » et « Développez votre site
web avec le framework Django » sur le site d’Open Classerooms. Ces cours m’ont permis
de comprendre et d’acquérir les bases pour développer une application web avec le frame-
work Django.
68