0% ont trouvé ce document utile (0 vote)
339 vues78 pages

Rapport PFE

Rapport PFE Licence Nationale en Génie Logicielle

Transféré par

Ramy Zarrouki
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Thèmes abordés

  • Gestion des notifications,
  • Développement agile,
  • Architecture logicielle,
  • Optimisation énergétique,
  • Diagrammes d'états,
  • Performance,
  • Développement d'applications,
  • Scalabilité,
  • Innovation technologique,
  • Diagrammes d'activité
0% ont trouvé ce document utile (0 vote)
339 vues78 pages

Rapport PFE

Rapport PFE Licence Nationale en Génie Logicielle

Transféré par

Ramy Zarrouki
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Thèmes abordés

  • Gestion des notifications,
  • Développement agile,
  • Architecture logicielle,
  • Optimisation énergétique,
  • Diagrammes d'états,
  • Performance,
  • Développement d'applications,
  • Scalabilité,
  • Innovation technologique,
  • Diagrammes d'activité

PROJET DE FIN D’ÉTUDES

en vue de l’obtention d’un diplôme national de licence en


Genie Logicielle et Systemes d’Informations

DÉVELOPPEMENT D’UN SYSTÈME DE


GESTION DES SMART BOXES DE LA
SOLUTION ENERGY SAVE DE DIDA MIND
Élaboré par

RAMI ABIDI

Encadré par

Mr Fethi SAOUEFI Mr Hatem ABIDI


MIT Polytech Ste DIDAMIND

Soutenu le 27/06/2024 Devant la commission composée de :

Président : Mr Amen Bidani


Rapporteur : Mr Mohamed Hamed
Membres : Mr. Mersini Yassine
Mme. Dhib Soumaya

Année Universitaire 2023 – 2024

Adresse :2 Rue de Sousse, 1006 - Tunis, Tunisie

Tél : +216 71 283 416- Fax : 71 283419


Dédicaces
À mon père, mon soutien éternel, que Dieu le bénisse.

À ma mère, ma source d’inspiration et ma première enseignante.

À ma sœur et mon frère, mes confidents et mes alliés dans toutes les étapes

de ma vie.

À ma femme, ma compagne de route, pour son amour et son soutien

inconditionnels.

À ma fille, Lilly, ma joie de vivre et la lumière de mes jours.

Que chacun de vous trouve dans ce travail le reflet de votre amour, de votre

encouragement et de vos sacrifices. Vous êtes ma force et ma motivation.

Merci du fond du cœur.


Remerciements
Je remercie mon encadrant académique : Mr Fethi SAOUEFI, pour

ses précieux conseils, son écoute et sa patience.

Je remercie mon encadrant professionnel, celui qui avait toujours

cru en moi : Mr Hatem ABIDI, pour toutes les opportunités qu’il m’a

offertes, et pour son encouragement infini.

Je remercie aussi toute l’équipe de MIT Polytech : mes enseignants

et tous les membres de l’administration, pour m’avoir toujours facilité

l’accès à une formation de qualité.


Table de matières
Introduction Générale ....................................................................................................... 1

Chapitre I: Présentation du cadre de projet ...................................................................... 2

1. Introduction .......................................................................................................................... 3

2. Présentation de la société d’accueil ....................................................................................... 3

2.1. Activité : ............................................................................................................................................... 3

2.2. Présentation de l’organigramme : ....................................................................................................... 5

2.3. Les services : ........................................................................................................................................ 5

2.4. Les produits de société : ...................................................................................................................... 6

3. Étude de l’existant................................................................................................................. 8

3.1. Description de l’existant ...................................................................................................................... 8

3.2. Critique de l’existant .......................................................................................................................... 10

3.3. Solutions proposées ........................................................................................................................... 11

4. Choix de modèle de développement ................................................................................... 13

4.1. Modèles de Développement Considérés ........................................................................................... 13

4.2. Critères de Sélection .......................................................................................................................... 14

4.3. Choix du Modèle en Cascade ............................................................................................................. 14

4.4. Mise en Œuvre du Modèle en Cascade ............................................................................................. 15

4.5. Conclusion.......................................................................................................................................... 16

5. Planning prévisionnel .......................................................................................................... 16

6. Conclusion........................................................................................................................... 18

Chapitre II: Spécification des besoins.............................................................................. 20

1. Introduction ........................................................................................................................ 21

2. Spécification des besoins fonctionnels................................................................................. 22


2.1. Besoin fonctionnel global 1 : Gestion des Smart Boxes ..................................................................... 22

2.2. Besoin fonctionnel global 2 : Planification et optimisation de la maintenance ................................. 22

2.3. Besoin fonctionnel global 3 : Interface utilisateur et personnalisation ............................................. 23

3. Spécification des besoins non fonctionnels .......................................................................... 23

3.1. Performance ...................................................................................................................................... 23

3.2. Scalabilité ........................................................................................................................................... 24

3.3. Sécurité .............................................................................................................................................. 24

3.4. Fiabilité et disponibilité...................................................................................................................... 24

3.5. Facilité d'utilisation ............................................................................................................................ 24

3.6. Compatibilité et intégration............................................................................................................... 24

3.7. Maintenance et évolutivité ................................................................................................................ 25

3.8. Conformité réglementaire ................................................................................................................. 25

4. Présentation des cas d’utilisation ........................................................................................ 25

4.1. Présentation des acteurs ................................................................................................................... 25

4.2. Description des cas d’utilisation ........................................................................................................ 25

4.3. Diagramme des cas d’utilisation global ............................................................................................. 27

5. Conclusion........................................................................................................................... 27

Chapitre III: Conception du système ............................................................................... 29

1. Introduction ........................................................................................................................ 30

2. Modélisation dynamique..................................................................................................... 31

2.1. Diagrammes de séquences ................................................................................................................ 31

2.2. Diagrammes d’états ........................................................................................................................... 34

2.3. Diagrammes d’état-transition ............................................................................................................ 35

2.4. Diagrammes d’activité ....................................................................................................................... 36

3. Modélisation statique ......................................................................................................... 39

3.1. Diagramme de classes........................................................................................................................ 40


3.2. Modèle relationnel ............................................................................................................................ 42

3.3. Dictionnaire de données .................................................................................................................... 48

3.4. Architecture de l’application.............................................................................................................. 49

4. Conclusion........................................................................................................................... 52

Chapitre IV: Réalisation du système ............................................................................... 53

1. Introduction ........................................................................................................................ 54

2. Environnement de développement ..................................................................................... 54

2.1. Environnement matériel .................................................................................................................... 54

2.2. Environnement logiciel ...................................................................................................................... 55

3. Principales interfaces graphiques ........................................................................................ 56

3.1. Interface d’identification : ................................................................................................................. 56

3.2. Tableau de bord interactif : ............................................................................................................... 56

3.3. Formulaire de gestion des Smart Boxes :........................................................................................... 57

3.4. Vue détaillée des Smart Boxes : ......................................................................................................... 58

3.5. Section de planification de la maintenance : ..................................................................................... 59

3.6. Rapports et statistiques : ................................................................................................................... 60

4. Conclusion........................................................................................................................... 61

Conclusion Générale ....................................................................................................... 63

Bibliographie et Webographie ........................................................................................ 65

Annexes .......................................................................................................................... 66
Liste des figures
FIGURE 1:LOGO DE LA SOCIÉTÉ .............................................................................................................................................. 4

FIGURE 2:ORGANIGRAMME DE SOCIÉTÉ .................................................................................................................................. 5

FIGURE 3: ENERGY SAVE ...................................................................................................................................................... 7

FIGURE 4:LGE ................................................................................................................................................................... 8

FIGURE 5 : LE SMART BOX IOT GPRS ENERGY SAVE ............................................................................................................... 10

FIGURE 6 MODELE DE DEVELOPPEMENT EN CASCADE .............................................................................................................. 15

FIGURE 7 DIAGRAMME DES CAS D’UTILISATION GLOBAL........................................................................................................... 27

FIGURE 11 DIAGRAMME DE SÉQUENCES POUR LA SURVEILLANCE EN TEMPS RÉEL DES SMART BOXES ................................................. 31

FIGURE 12 DIAGRAMME DE SÉQUENCES POUR LA GESTION DES PARAMÈTRES DE LA SMART BOX ...................................................... 32

FIGURE 13 DIAGRAMME DE SÉQUENCES POUR LA PLANIFICATION ET EXÉCUTION DES INTERVENTIONS DE MAINTENANCE ....................... 32

FIGURE 14 DIAGRAMME DE SÉQUENCES POUR LA GESTION DE LA MISE À JOUR DU FIRMWARE ......................................................... 33

FIGURE 15 DIAGRAMME DE SÉQUENCES POUR LA GÉNÉRATION DE RAPPORTS ............................................................................... 33

FIGURE 16 DIAGRAMME D'ÉTATS POUR LA SMART BOX ........................................................................................................... 34

FIGURE 17 DIAGRAMME D'ÉTATS POUR LA MAINTENANCE ........................................................................................................ 34

FIGURE 18 DIAGRAMMES D’ÉTAT-TRANSITION ....................................................................................................................... 35

FIGURE 19 DIAGRAMMES D’ÉTAT-TRANSITION POUR LA MAINTENANCE....................................................................................... 36

FIGURE 20 DIAGRAMME D'ACTIVITÉ POUR LE PROCESSUS DE SURVEILLANCE ................................................................................ 37

FIGURE 21 DIAGRAMME D'ACTIVITÉ POUR LE PROCESSUS DE GESTION DES MISES À JOUR DU FIRMWARE ......................................... 38

FIGURE 22 DIAGRAMME D'ACTIVITÉ POUR LE PROCESSUS DE GÉNÉRATION DE RAPPORTS .............................................................. 39

FIGURE 23 DIAGRAMME DE CLASSES ................................................................................................................................... 40

FIGURE 24 DIAGRAMME RELATIONNEL ................................................................................................................................. 45

FIGURE 25 ARCHITECTURE LOGICIELLE .................................................................................................................................. 50

FIGURE 26 ARCHITECTURE MATÉRIELLE ................................................................................................................................ 51

FIGURE 27 INTERFACE D'IDENTIFICATION .............................................................................................................................. 56

FIGURE 28 DASHBOARD PRINCIPAL...................................................................................................................................... 57


FIGURE 29 FORMULAIRE D'AJOUT DE SMARTBOXES ................................................................................................................ 58

FIGURE 30 ÉTAT DU SMARTBOX ......................................................................................................................................... 58

FIGURE 31 AJOUT D'UNE INTERVENTION DE MAINTENANCE ...................................................................................................... 59

FIGURE 32 SUIVIE DES INTERVENTIONS DE MAINTENANCE ........................................................................................................ 60

FIGURE 33 GÉNÉRATION ET EXPORT DES RAPPORTS ................................................................................................................. 61


Liste des tableaux
TABLEAU 1 PLANNING PRÉVISIONNEL ................................................................................................................................... 17

TABLEAU 2 RELATIONS PRINCIPALES ..................................................................................................................................... 44

TABLEAU 3 TABLE USERS ................................................................................................................................................... 48

TABLEAU 4 TABLE SMARTBOXES ......................................................................................................................................... 48

TABLEAU 5 TABLE FIRMWARES ........................................................................................................................................... 48

TABLEAU 6 TABLE CONNECTIONLOGS ................................................................................................................................... 49

TABLEAU 7 TABLE NOTIFICATIONS ....................................................................................................................................... 49

TABLEAU 8 TABLE LOCATIONS ............................................................................................................................................. 49


Introduction Générale

Introduction Générale

La transition vers une consommation énergétique plus intelligente et plus efficace est devenue
un enjeu majeur dans le monde d’aujourd’hui. Les entreprises cherchent constamment des moyens
d’optimiser leur utilisation de l’énergie tout en minimisant leur impact environnemental. Dans ce
contexte, la société DidaMind se positionne comme un acteur clé en proposant une solution
novatrice : Energy Save.

Les Smart Boxes sont des dispositifs matériels essentiels au cœur de la solution Energy Save
de DidaMind. Ils jouent un rôle crucial dans la surveillance, la gestion et l’optimisation de la
consommation énergétique des clients. Ces boîtiers intelligents combinent à la fois des composants
matériels avancés et une logique logicielle sophistiquée pour offrir une expérience transparente aux
utilisateurs.

Ce projet a pour objectif principal de développer un système de gestion complet pour ces smart
boxes. Ce système permettra de suivre divers paramètres de chaque box. La solution proposée vise
à centraliser et à faciliter la gestion des dispositifs déployés, améliorant ainsi l'efficacité
opérationnelle et la satisfaction client.

Ce rapport est structuré en plusieurs chapitres, chacun abordant une étape clé du projet :

Présentation du cadre de projet : Nous introduirons le contexte général du projet, en mettant


en évidence l’importance des Smart Boxes dans la solution EnergySave de DidaMind.

La spécification des Besoins : Nous détaillerons les besoins fonctionnels et non fonctionnels
du système de gestion, ainsi que les cas d’utilisation associés.

La conception du Système : Nous présenterons les modèles dynamiques et statiques du


système, y compris les diagrammes de séquences, de collaboration et de classes.

La réalisation du Système : Nous aborderons l’environnement de développement, les


interfaces graphiques principales et les choix techniques.

La conclusion Générale : Nous résumerons les résultats obtenus et discuterons des


perspectives futures.

Développement d’un système de gestion des Smart Boxes 1


Chapitre I: Présentation du cadre de projet

Présentation
du cadre de
projet
Chapitre I: Présentation du cadre de projet

1. Introduction
L’état de l’art constitue la première étape de notre exploration vers le développement d’un
système de gestion des Smart Boxes de la solution Energy Save de DidaMind. Dans cette section,
nous dresserons un panorama des connaissances existantes, des recherches antérieures et des
avancées technologiques pertinentes dans le domaine de la gestion énergétique intelligente.

Le contexte mondial actuel met en avant la nécessité d’une transition vers une consommation
énergétique plus intelligente et plus efficace. Les entreprises cherchent activement des moyens
d’optimiser leur utilisation de l’énergie tout en minimisant leur impact environnemental. C’est dans
ce contexte que la société DidaMind propose sa solution novatrice : Energy Save. Au cœur de cette
solution se trouvent les Smart Boxes, des dispositifs matériels intelligents qui jouent un rôle crucial
dans la surveillance, la gestion et l’optimisation de la consommation énergétique des clients.

Notre objectif ainsi peut être défini par l’identification des lacunes : Cette partie nous
permettra d’identifier les zones où des améliorations sont nécessaires.

Ce chapitre jettera les bases nécessaires pour la suite de notre rapport. Nous sommes prêts à
explorer les avancées technologiques et à contribuer à l’optimisation opérationnelle de la société
d’accueil grâce à notre système de gestion des Smart Boxes.

2. Présentation de la société d’accueil


2.1. Activité :

DidaMind est une entreprise tunisienne spécialisé dans le développement des solutions
industrielles sur mesure créée en 2020 qui combine des ressources d'experts, une passion pour
l'innovation, des technologies de développement d'applications de pointe et des processus
commerciaux finement réglés pour concrétiser les visions commerciales les plus difficiles de
clients avec un minimum d'effort et une efficacité maximale. En fait, DidaMind développe des
produits et services innovants et créatifs qui fournissent des solutions globales de communication
et d'information. De plus, DidaMind est synonyme d'excellence, de passion et de flexibilité. Il
exécute des projets hautement techniques dans les délais, dans les limites et à moindre coût.
Ensuite, son objectif est de fournir un service client et une expérience utilisateur exceptionnels.

Développement d’un système de gestion des Smart Boxes 3


Chapitre I: Présentation du cadre de projet

Des solutions sur mesure :

• Solutions IoT et intelligence Artificielle

• Étude et conception des Robots

• Logiciels et solutions informatiques pour entreprise

• Développement Web et Mobile

Cette société se situe à Avenue des Martyrs Mourouj 3 Ben Arous, Tunisie.

Figure 1:logo de la société

Développement d’un système de gestion des Smart Boxes 4


Chapitre I: Présentation du cadre de projet

2.2. Présentation de l’organigramme :

Dévellopement
mobile
Dévellepement
informatique
Dévellopement
Web
Service
informatique
Robotique
Directeur systéme
générale embarqué
IOT
Conception et
Service
fabrication
mécanique
mécanique

Figure 2:Organigramme de société

2.3. Les services :

[Link] :

Le terme Internet Of Things (IOT) vous offre une visibilité précise et instantanée de l’état des
assets de votre entreprise. Grâce à leur capacité à transmettre de l’information en temps réel, les
solutions connectées répondent à des cas d’usage critiques. Ils améliorent également vos produits
et services en mesurant en continu la satisfaction client. Les freins à l’efficience sont levés et la
maintenance devient prédictive.

Développement d’un système de gestion des Smart Boxes 5


Chapitre I: Présentation du cadre de projet

[Link] :

Les robots industriels permettent l’automatisation de certaines tâches sur votre chaîne de
production, vous apportant flexibilité et gain de productivité.

2.3.3.L’Intelligence Artificielle :

L’IA permet aux machines de sentir, d’apprendre, de raisonner, d’agir et de s’adapter au


monde réel en automatisant les tâches dangereuses ou rébarbatives.

2.3.4.Développement Mobile :

Les applications mobiles sont devenues un canal de communication primordial pour l’image
d’une entreprise. DidaMind accompagne de l’idée de départ, à la conception et au développement
des applications IOS et Android.

2.3.5.Développement site web :

L'esprit de DidaMind réside dans l’intérêt à accompagner leurs clients a réaliser un site
internet efficace. Chaque client qui grâce à son site sur mesure va générer du business et ainsi
développer son activité.

2.3.6.Développement Des ERP :

Le développement des Entreprises Ressources Planning (ERP) sur mesure consiste à élaborer
d'un logiciel s'adaptant aux situations et aux besoins spécifiques de chaque entreprise.

En fait, DidaMind développe un logiciel adapté aux besoins des entreprises pour résoudre
leurs problèmes et améliorer leurs gestions dans son ensemble et ainsi booster leurs performances.

2.4. Les produits de société :

Parmi les produits de l’entreprise on trouve :

[Link] save :

C'est une solution IoT de management énergétique pour stimuler l’efficacité de l’énergie,
réduire les coûts d’exploitation et créer des installations plus durables et saines pour
l’environnement. Ainsi, Energy Save est une solution de supervision électrique et de monitoring

Développement d’un système de gestion des Smart Boxes 6


Chapitre I: Présentation du cadre de projet

énergétique permettant la maîtrise de l’énergie, la performance industrielle et l'efficacité de la


maintenance.

Energy Save a reçu le label « Solar Impulse Efficient Solution », une preuve des normes
élevées de rentabilité et de durabilité.

Figure 3: Energy Save

[Link] de gestion commerciale :

INDEX est un logiciel de gestion commerciale simple et rapide. Il répond aux besoins
comptables et administratifs de chaque professionnel, entrepreneur ou indépendant en déclaration
contrôlée. Cette solution Smart de gestion commerciale facilite les traitements et l'organisation
administrative. Elle permet une gestion complète et personnalisable de la chaîne de facturation
(devis, factures, stock, achats et ventes).

[Link] de gestion scolaire :

LGE est une solution tout en un simple et complet destiné aux établissements d'enseignement
tel qu’écoles, collèges, lycées, universités. C'est une application de gestion scolaire performante
adéquate à la spécificité de l’enseignement. Elle permet de gérer l’école en utilisant des multiples

Développement d’un système de gestion des Smart Boxes 7


Chapitre I: Présentation du cadre de projet

fonctionnalités. De même, LGE est compatible avec procédures existantes et surtout il est conforme
avec chaque structure pédagogique et administrative actuelle.

Figure 4:LGE

3. Étude de l’existant
3.1. Description de l’existant

Le Smart Box IoT GPRS Energy Save est un dispositif essentiel au cœur de la solution
innovante proposée par DidaMind. Ce boîtier intelligent agit comme une passerelle (gateway) pour
la surveillance et la gestion de la consommation énergétique chez les clients. Le SmartBox est
installé directement sur le réseau énergétique du client, et lié au serveur central du logiciel pour
collecter les informations nécessaires pour une audit complète, ainsi permettant au logiciel
EnergySave d’optimiser la consommation d’énergie, en obtenant les information en temps réel
avec une grande quantité de variables électriques, pour avoir l’efficacité maximale énergétique sur
les installations.

Voici les caractéristiques clés de ce Smart Box :

Processeur avancé : Le Smart Box est équipé d’un processeur Dual-Core 32 bits LX6, offrant
des performances supérieures. Il intègre également une unité de protection de la mémoire (MPU),

Développement d’un système de gestion des Smart Boxes 8


Chapitre I: Présentation du cadre de projet

un démarrage sécurisé et un chiffrement Flash. Sa mémoire embarquée de 512 Ko avec un accès


large de 128 bits garantit une efficacité optimale.

Modes de fonctionnement : Le Smart Box peut fonctionner en différents modes, notamment


le mode veille, attente et sauvegarde. En mode sauvegarde, sa consommation est minimale,
atteignant seulement 2,5 μA, grâce à son horloge temps réel (RTC), son temps réel (RTT) et son
registre de sauvegarde générale (GPBR).

Interfaces de communication : Le Smart Box dispose de plusieurs interfaces de


communication, dont USB 2.0, RJ45 Gigabit Ethernet, RS232, RS485, CAN et un module Quad-
band GSM/GPRS. Il prend en charge divers protocoles tels que TCP, UDP, SpeedWire, SunSpec,
Modbus TCP/IP et Modbus RTU via RS485.

Écran graphique OLED : L’écran du Smart Box est un OLED graphique monochrome avec
une résolution de 128 x 64 pixels. Il offre une interface conviviale pour les utilisateurs.

Sécurité anti-manipulation : Le Smart Box est protégé par un code d’accès, garantissant la
sécurité des paramètres et des données.

Environnement et installation : Le Smart Box peut être monté verticalement grâce à un


système de fixation clip-on ou par vis. Sa classe d’isolation électrique est Double isolation Classe
II. Fabriqué en polycarbonate, il offre une résistance au feu conforme à la norme V-0 UL 94. Ses
dimensions sont 115 mm (largeur) x 90 mm (profondeur) x 73 mm (hauteur), avec un poids net de
350 g.

Durabilité et environnement : Le Smart Box est conforme à la norme IP54 pour la face avant
et IP30 pour le corps, selon la norme IEC 60529. Il peut fonctionner dans une plage de température
de -10 à 60 °C et être stocké entre -25 et 70 °C. Son altitude de fonctionnement est inférieure ou
égale à 2000 mètres.

En résumé, le Smart Box IoT GPRS Energy Save de DidaMind est un dispositif essentiel pour
la gestion intelligente de la consommation énergétique, offrant des performances avancées, une
sécurité renforcée et une convivialité optimale pour les utilisateurs.

Développement d’un système de gestion des Smart Boxes 9


Chapitre I: Présentation du cadre de projet

Figure 5 : Le Smart Box IoT GPRS Energy Save

3.2. Critique de l’existant

Malgré les capacités avancées du Smart Box Energy Save de DidaMind, Une lacune majeure
subsiste dans l’infrastructure actuelle, notamment l’absence d’une solution centralisée de suivi et
de gestion. Cette carence se traduit par des défis significatifs en matière d’efficacité opérationnelle
et de satisfaction client.

Premièrement, l’absence d’un tableau de bord (Dashboard) centralisé pour la gestion des
Smart Boxes représente une limitation majeure. Actuellement, Les équipes de DidaMind ne
disposent pas d’un moyen intégré et convivial pour surveiller en temps réel l’état de chaque Smart
Box déployée. Un Dashboard accessible permettrait non seulement de visualiser les paramètres
critiques mais aussi d’identifier rapidement les anomalies ou les problèmes potentiels, facilitant
ainsi une intervention rapide.

Plusieurs paramètres critiques nécessitent une surveillance continue pour garantir le bon
fonctionnement des Smart Boxes. Parmi ces paramètres, on peut citer :

- L'identificateur du box, ou numéro de série : Ce paramètre unique permet d'identifier


précisément chaque Smart Box, facilitant ainsi la gestion et le suivi des dispositifs déployés.

- Le type du box : Connaître le type spécifique de chaque Smart Box (par exemple, modèle
GPRS version 1, 2 ou 3, modèle ETH version 1 ou 2) aide à comprendre les capacités et les
limitations de chaque unité.

Développement d’un système de gestion des Smart Boxes 10


Chapitre I: Présentation du cadre de projet

- Les modules intégrés : Une liste détaillant les modules intégrés (tels que GPRS, ETH,
RS485, Batterie, CAN, Carte SD, etc.) offre une vue d’ensemble des fonctionnalités disponibles
pour chaque box.

- Le client : Identifier pour quel client le Smart Box est déployé permet de personnaliser le
service et de garantir que les besoins spécifiques de chaque client sont satisfaits.

- L'emplacement géographique (les coordonnées GPS) : Connaître l’emplacement exact de


chaque Smart Box facilite la planification des interventions de maintenance et l’analyse
contextuelle des données.

- État de connexion : Suivre si le Smart Box est connecté ou déconnecté du réseau est
essentiel pour garantir une surveillance continue et intervenir rapidement en cas de déconnexion.

- Qualité du signal : Surveiller la qualité du signal de communication permet de détecter et


de résoudre les problèmes de connectivité avant qu'ils n'affectent les performances du système.

- Date d'installation : Connaître la date d'installation de chaque Smart Box aide à planifier
les maintenances périodiques et à évaluer la durée de vie des équipements tels que la batterie.

- Version Firmware : Suivre la version du firmware installée sur chaque Smart Box permet
de garantir que tous les dispositifs utilisent les versions les plus récentes et les plus sécurisées.

- État de la batterie : Surveiller l’état de la batterie est crucial pour assurer que les Smart
Boxes restent opérationnelles, notamment dans les situations où l'alimentation principale est
interrompue.

En l'absence d'un système de gestion intégré, l’équipe de DidaMind doit recourir à des
méthodes manuelles ou à des solutions ad hoc pour collecter et analyser ces informations, ce qui
entraîne une perte de temps et augmente le risque d’erreurs humaines. De plus, cette approche
fragmentée complique la tâche de maintenir une vue d’ensemble cohérente de l’état global des
Smart Boxes, rendant difficile l’identification proactive des problèmes.

3.3. Solutions proposées

Pour remédier aux lacunes identifiées dans l’infrastructure actuelle, nous proposons de
développer un système de gestion centralisé pour les Smart Boxes de la solution Energy Save de

Développement d’un système de gestion des Smart Boxes 11


Chapitre I: Présentation du cadre de projet

DidaMind. Ce système comprendra un tableau de bord interactif et complet, permettant une


surveillance et une gestion optimales de chaque Smart Box déployée.

Le tableau de bord offrira une vue d’ensemble de tous les Smart Boxes déployés, permettant
aux utilisateurs de visualiser rapidement l’état général du réseau. Il inclura des filtres et des
fonctionnalités de recherche pour trier les dispositifs par client, type, état de connexion, etc., et
pour rechercher des Smart Boxes spécifiques par numéro de série ou autres identifiants. La
surveillance en temps réel sera une composante essentielle, permettant de suivre l’état de connexion
de chaque Smart Box et la qualité de leur signal de communication. Ainsi, les utilisateurs pourront
identifier immédiatement les dispositifs déconnectés ou ceux ayant une faible connectivité.

La gestion des paramètres des Smart Boxes sera grandement facilitée. Chaque Smart Box sera
répertoriée avec son identificateur unique, son type, et la liste des modules intégrés, fournissant
une base de données détaillée et facilement accessible. Des informations sur le client pour lequel
chaque Smart Box est déployée seront également incluses, facilitant la gestion des relations client
et la personnalisation des services.

Un autre aspect crucial de la solution sera le suivi géographique des Smart Boxes. Les
coordonnées GPS de chaque Smart Box seront affichées sur une carte interactive, permettant une
localisation précise et facilitant les interventions sur le terrain. De plus, le système suivra la date
d’installation et la version du firmware de chaque Smart Box, aidant ainsi à planifier les mises à
jour et les maintenances. L’état de la batterie sera également surveillé en continu pour garantir que
les Smart Boxes restent opérationnelles, même en cas de coupure de l'alimentation principale.

La solution proposée jouera un rôle central dans l’optimisation des opérations d’intervention
de maintenance nécessaires. Grâce à une surveillance continue, le système permettra de planifier
et d’exécuter les mises à jour logicielles de manière proactive, en minimisant les interruptions de
service. De plus, en surveillant l’état de la batterie et d’autres composants critiques, les
interventions pour le remplacement de la batterie ou la réparation de pièces défectueuses pourront
être programmées efficacement, réduisant ainsi les temps d’arrêt et améliorant la fiabilité globale
du service. Cette approche proactive et préventive facilitera une gestion plus fluide et plus efficace
des Smart Boxes, permettant à DidaMind de maintenir un haut niveau de performance et de
satisfaction client.

Développement d’un système de gestion des Smart Boxes 12


Chapitre I: Présentation du cadre de projet

Enfin, l’interface utilisateur du tableau de bord sera conçue pour être intuitive et facile à
utiliser, même pour les utilisateurs ayant peu de compétences techniques. Elle permettra également
une personnalisation selon les besoins spécifiques des utilisateurs, en affichant les informations les
plus pertinentes pour eux.

En intégrant ces fonctionnalités, la solution proposée vise à centraliser et à optimiser la gestion


des Smart Boxes, améliorant ainsi l’efficacité opérationnelle et la satisfaction des clients de
DidaMind. Le système permettra de suivre les paramètres essentiels de chaque Smart Box,
d’identifier rapidement les problèmes et de garantir une utilisation optimale des ressources
énergétiques.

4. Choix de modèle de développement


Le choix du modèle de développement est une étape cruciale dans la réalisation de tout projet
logiciel. Pour ce projet de fin d'études, il est essentiel de sélectionner une approche qui favorise
une gestion efficace du temps et des ressources, tout en garantissant la qualité du produit final.

4.1. Modèles de Développement Considérés

[Link]èle en Cascade

Le modèle en cascade, est une approche séquentielle où chaque phase de développement doit
être complétée avant le début de la suivante. Bien que ce modèle soit structuré et simple à
comprendre, il manque de flexibilité pour intégrer des changements en cours de développement,
ce qui peut poser problème si des ajustements sont nécessaires après la phase de conception.

[Link]èle Agile

Le modèle agile est une approche itérative et incrémentale qui favorise la flexibilité et
l'adaptabilité. Il permet de diviser le projet en petites itérations appelées sprints, facilitant ainsi
l'intégration des retours continus et l'ajustement des priorités en cours de route. Cette méthode est
particulièrement adaptée aux projets où les exigences peuvent évoluer.

Développement d’un système de gestion des Smart Boxes 13


Chapitre I: Présentation du cadre de projet

[Link]èle en Spirale

Le modèle en spirale combine des éléments du modèle en cascade et des méthodes itératives,
en mettant l'accent sur l'évaluation continue des risques. Il permet une amélioration progressive du
système à travers des itérations successives. Cependant, ce modèle peut être complexe à gérer et à
mettre en œuvre, surtout pour des projets de petite envergure.

4.2. Critères de Sélection

Pour déterminer le modèle de développement le plus approprié pour ce projet, les critères
suivants ont été pris en compte :

Simplicité et Structure : Le modèle doit être facile à comprendre et à appliquer pour un seul
développeur.

Gestion du Temps : La méthode doit permettre une gestion efficace du temps et des
ressources disponibles.

Flexibilité et Adaptabilité : Bien que les exigences du projet soient fixes, une certaine
flexibilité dans la gestion du développement peut être bénéfique.

Apprentissage et Expérience : Le choix du modèle doit également refléter les connaissances


acquises durant le cursus universitaire.

4.3. Choix du Modèle en Cascade

Après une analyse approfondie des différents modèles de développement et en tenant compte
des critères susmentionnés, le modèle en cascade a été retenu pour ce projet.

Développement d’un système de gestion des Smart Boxes 14


Chapitre I: Présentation du cadre de projet

Conception

Developpement

Test

Déploiement

Figure 6 Modele de developpement en cascade

Les raisons de ce choix sont les suivantes :

Simplicité et Clarté : Le modèle en cascade est linéaire et bien structuré, ce qui facilite la
planification et le suivi des progrès pour un projet modeste réalisé par un seul étudiant.

Conformité aux Exigences Fixes : Étant donné que les exigences du projet sont clairement
définies et ne nécessitent pas de modifications importantes en cours de route, le modèle en cascade
s'avère approprié.

Facilité de Documentation : Le modèle en cascade permet une documentation claire et


complète à chaque étape du projet, ce qui est essentiel pour un rapport de fin d'études.

Gestion Efficace du Temps : Ce modèle permet de bien délimiter les phases de conception,
de développement et de tests, assurant ainsi une utilisation optimale du temps disponible.

4.4. Mise en Œuvre du Modèle en Cascade

Le projet sera structuré en plusieurs phases successives :

Développement d’un système de gestion des Smart Boxes 15


Chapitre I: Présentation du cadre de projet

Phase de Conception : Définition des spécifications fonctionnelles et non fonctionnelles, et


élaboration des diagrammes de conception.

Phase de Développement : Réalisation du codage en utilisant les technologies appropriées


(HTML, CSS, JavaScript, etc.).

Phase de Tests : Vérification et validation du système développé pour s'assurer qu'il répond
aux exigences définies.

Phase de Déploiement : Mise en œuvre finale du système et préparation du rapport de fin


d'études.

4.5. Conclusion

Le choix du modèle en cascade pour le développement du système de gestion des Smart Boxes
de la solution Energy Save de DidaMind se justifie par la simplicité, la structure claire et la
conformité aux exigences fixes du projet. Cette approche garantit une gestion rigoureuse des
différentes phases du projet, tout en facilitant la documentation et le suivi des progrès, éléments
essentiels pour la réussite de ce projet de fin d'études.

5. Planning prévisionnel
La planification prévisionnelle est une étape cruciale pour assurer le succès de ce projet de fin
d'études, qui se déroulera sur une période de quatre mois, de février à mai. Le projet est structuré
en quatre phases principales : Conception, Développement, Tests, et Déploiement. Chaque phase
comprend des activités spécifiques avec des objectifs clairs et des délais précis.

En février, la phase de conception se concentrera sur la définition des spécifications


fonctionnelles et non fonctionnelles du système. Les deux premières semaines seront dédiées à
l'analyse des besoins et à la rédaction des spécifications détaillées. Les deux semaines suivantes
seront consacrées à la conception de l'architecture du système et à la création des diagrammes
UML, notamment les diagrammes de cas d'utilisation, de séquences et de classes.

En mars, la phase de développement débutera avec la mise en place de l'environnement de


développement. Les deux premières semaines seront dédiées au développement des interfaces
utilisateur (UI). Les deux dernières semaines du mois se concentreront sur le développement de la

Développement d’un système de gestion des Smart Boxes 16


Chapitre I: Présentation du cadre de projet

logique métier et des fonctionnalités principales du système, ainsi que sur l'intégration des
différents composants.

Le mois d'avril sera consacré à la phase de tests. Les deux premières semaines seront utilisées
pour développer des cas de test et réaliser des tests unitaires sur les composants individuels. Les
deux dernières semaines se concentreront sur les tests d'intégration pour vérifier l'interaction entre
les composants, suivis des tests de système pour valider l'ensemble du système par rapport aux
exigences fonctionnelles.

En mai, la phase de déploiement et de rédaction du rapport marquera la fin du projet. Les deux
premières semaines seront dédiées au déploiement du système dans l'environnement de production
et à la réalisation des tests finaux de validation. Les deux dernières semaines seront consacrées à
la rédaction du rapport de fin d'études et à la préparation de la présentation finale et des supports
associés.

Voici un tableau récapitulatif du planning prévisionnel :

Tableau 1 Planning prévisionnel

Mois Semaines Activités

Février 1-2 Analyse des besoins, rédaction des spécifications


fonctionnelles et non fonctionnelles

3-4 Conception de l'architecture du système, création des


diagrammes UML

Mars 1-2 Mise en place de l'environnement de développement,


développement des interfaces utilisateur

3-4 Développement de la logique métier et des fonctionnalités,


intégration des composants

Avril 1-2 Développement des cas de test, tests unitaires

3-4 Tests d'intégration, tests de système

Développement d’un système de gestion des Smart Boxes 17


Chapitre I: Présentation du cadre de projet

Mai 1-2 Déploiement du système, tests finaux de validation

3-4 Rédaction du rapport de fin d'études, préparation de la


présentation finale

Ce planning structuré assure une gestion rigoureuse et efficace du projet, garantissant ainsi
que chaque phase est réalisée dans les délais impartis et que les objectifs sont atteints.

6. Conclusion
Ce premier chapitre a établi les bases essentielles du projet de développement d’un système
de gestion des Smart Boxes pour la solution Energy Save de DidaMind. Nous avons commencé
par introduire le contexte général du projet, en soulignant l'importance croissante de la gestion
efficace de l'énergie dans le monde moderne et en mettant en lumière le rôle innovant de DidaMind
dans ce domaine.

La présentation de la société d’accueil nous a permis de mieux comprendre l'environnement


dans lequel ce projet sera réalisé, en mettant en lumière les ambitions et les capacités de DidaMind
en matière de technologies de gestion énergétique. L'étude de l'existant a fourni un aperçu des
solutions actuelles, de leurs limites et des opportunités d'amélioration, ce qui a conduit à la
proposition de solutions adaptées et innovantes.

Pour ce qui est du modèle de développement, différentes approches ont été envisagées avant
de retenir le modèle en cascade. Ce choix s’appuie sur les caractéristiques spécifiques du projet :
des exigences fixes, une structure claire et une gestion rigoureuse des phases, adaptées à un projet
de fin d’études réalisé par un seul étudiant.

Le planning prévisionnel, élaboré pour structurer efficacement le travail sur une période de
quatre mois, de février à mai, permet de s'assurer que chaque phase du projet est abordée de manière
organisée et méthodique. Ce planning détaillé garantit que les objectifs seront atteints dans les
délais impartis, et que chaque étape du projet sera réalisée de manière rigoureuse.

En résumé, ce chapitre a fourni les fondations nécessaires pour aborder les étapes suivantes
du projet avec une vision claire et structurée. Les éléments présentés permettront de guider le

Développement d’un système de gestion des Smart Boxes 18


Chapitre I: Présentation du cadre de projet

développement du système de gestion des Smart Boxes avec rigueur et efficacité, en vue d’atteindre
les objectifs fixés et de livrer un produit de qualité.

Développement d’un système de gestion des Smart Boxes 19


Chapitre II: Spécification des besoins

Spécification
des besoins
Chapitre II: Spécification des besoins

1. Introduction
Dans ce deuxième chapitre, nous allons aborder la spécification des besoins pour le
développement du système de gestion des Smart Boxes de la solution Energy Save de DidaMind.
La spécification des besoins constitue une étape cruciale dans le cycle de vie du développement
logiciel, car elle permet de définir clairement ce que le système doit accomplir et les contraintes
qu'il doit respecter.

Ce chapitre commencera par une introduction générale des besoins fonctionnels et non
fonctionnels du système. Les besoins fonctionnels décrivent les fonctionnalités spécifiques que le
système doit fournir, tandis que les besoins non fonctionnels concernent les exigences de
performance, de sécurité, d'ergonomie et d'autres critères de qualité.

Nous détaillerons ensuite les besoins fonctionnels en les organisant en besoins globaux et
sous-besoins. Cette approche nous permettra de décomposer les fonctionnalités principales en
tâches plus petites et plus gérables, facilitant ainsi leur mise en œuvre et leur évaluation. Chaque
besoin fonctionnel sera accompagné de cas d’utilisation illustrant comment les utilisateurs
interagiront avec le système pour accomplir leurs tâches.

Les besoins non fonctionnels seront également spécifiés en détail, couvrant des aspects tels
que la performance, la sécurité, la compatibilité, et la maintenabilité du système. Ces exigences
sont essentielles pour garantir que le système sera non seulement fonctionnel, mais aussi fiable,
sécurisé et performant.

Enfin, nous présenterons les cas d'utilisation sous forme de diagrammes, qui offriront une vue
d’ensemble des interactions entre les acteurs et le système. Ces diagrammes permettront de
visualiser les différentes manières dont le système sera utilisé, aidant ainsi à identifier les besoins
et à vérifier leur adéquation avec les objectifs du projet.

Ce chapitre vise à fournir une compréhension claire et détaillée des attentes envers le système
de gestion des Smart Boxes, établissant ainsi une base solide pour les phases de conception et de
développement qui suivront. En définissant précisément les besoins, nous nous assurons que toutes
les parties prenantes partagent une vision commune des objectifs du projet et des moyens à mettre
en œuvre pour les atteindre.

Développement d’un système de gestion des Smart Boxes 21


Chapitre II: Spécification des besoins

2. Spécification des besoins fonctionnels


Cette section détaille les besoins fonctionnels du système de gestion des Smart Boxes. Les
besoins sont divisés en besoins fonctionnels globaux et sous-besoins spécifiques, qui ensemble
définissent les fonctionnalités essentielles pour le bon fonctionnement et la gestion efficace du
système.

2.1. Besoin fonctionnel global 1 : Gestion des Smart Boxes

[Link] en temps réel des Smart Boxes

Le système doit permettre le suivi en temps réel de chaque Smart Box déployée. Cela inclut
la visualisation de l’état de connexion, la qualité du signal et l'emplacement géographique
(coordonnées GPS). Le suivi en temps réel aidera à identifier rapidement les Smart Boxes
déconnectées ou celles ayant une faible connectivité.

[Link] et gestion des Smart Boxes

Chaque Smart Box doit être répertoriée avec son identificateur unique (numéro de série), son
type, et la liste des modules intégrés. Le système doit permettre de filtrer et de rechercher des Smart
Boxes par divers critères, tels que le numéro de série, le type, ou le client pour lequel le Smart Box
est déployé. Cela facilitera la gestion et le suivi précis des dispositifs déployés.

[Link] sur les clients

Le système doit stocker et afficher des informations sur le client associé à chaque Smart Box.
Cela permettra de personnaliser les services et de garantir que les besoins spécifiques de chaque
client sont satisfaits, améliorant ainsi la gestion des relations client.

2.2. Besoin fonctionnel global 2 : Planification et optimisation de la maintenance

[Link] de l'état des composants et de la batterie

Le système doit surveiller l’état de la batterie et d'autres composants critiques des Smart
Boxes, permettant ainsi de prévoir et de planifier les interventions de maintenance nécessaires.
Cette fonctionnalité garantira que les Smart Boxes restent opérationnelles et que les interventions
se font de manière proactive.

Développement d’un système de gestion des Smart Boxes 22


Chapitre II: Spécification des besoins

[Link] des mises à jour du firmware

Le système doit suivre la version du firmware de chaque Smart Box et permettre de planifier
mises à jour logicielles. Cela garantira que tous les dispositifs utilisent les versions les plus récentes
et sécurisées du firmware, minimisant les interruptions de service.

2.3. Besoin fonctionnel global 3 : Interface utilisateur et personnalisation

[Link] de bord interactif

Le système doit fournir un tableau de bord interactif, offrant une vue d’ensemble de tous les
Smart Boxes déployés. Le tableau de bord doit être intuitif et facile à utiliser, même pour les
utilisateurs ayant peu de compétences techniques. Il doit permettre de visualiser rapidement l’état
général du réseau et d’accéder à des détails spécifiques sur chaque Smart Box.

[Link] de l’interface

Les utilisateurs doivent pouvoir personnaliser le tableau de bord en fonction de leurs besoins
spécifiques, en affichant les informations les plus pertinentes pour eux. Cela inclut la possibilité de
configurer des alertes et des notifications pour différents types d’événements, tels que les besoins
de maintenance.

En intégrant ces besoins fonctionnels, la solution proposée vise à fournir une gestion
centralisée et efficace des Smart Boxes, tout en optimisant les opérations de maintenance et en
améliorant la satisfaction des clients de DidaMind.

3. Spécification des besoins non fonctionnels


Les besoins non fonctionnels définissent les critères de performance, de sécurité, et
d’utilisation que le système de gestion des Smart Boxes doit respecter pour être efficace et fiable.
Ces exigences garantissent que le système ne se contente pas seulement de fonctionner, mais qu’il
fonctionne de manière optimale, sécurisée, et conviviale.

3.1. Performance

Le système doit offrir des performances élevées pour assurer une gestion fluide et en temps
réel des Smart Boxes. Cela inclut des temps de réponse rapides pour l’affichage des données et
l’exécution des commandes sur le tableau de bord. Le système doit pouvoir gérer de grandes

Développement d’un système de gestion des Smart Boxes 23


Chapitre II: Spécification des besoins

quantités de données provenant de nombreux Smart Boxes sans compromettre la vitesse ou


l’efficacité.

3.2. Scalabilité

Le système doit être scalable pour s'adapter à un nombre croissant de Smart Boxes et à une
expansion géographique des opérations. Il doit pouvoir intégrer facilement de nouveaux dispositifs
et gérer l'augmentation du volume de données et des utilisateurs sans dégradation des
performances.

3.3. Sécurité

La sécurité est primordiale pour garantir la confidentialité et l’intégrité des données. Le


système doit inclure des mesures de sécurité robustes, telles que l'authentification multi-facteur
pour l’accès utilisateur, le chiffrement des données en transit et au repos, et des audits réguliers de
sécurité pour identifier et corriger les vulnérabilités. La protection contre les accès non autorisés et
les tentatives de manipulation des Smart Boxes est également essentielle.

3.4. Fiabilité et disponibilité

Le système doit être extrêmement fiable et disponible, avec un temps d'arrêt minimal. Cela
implique la mise en place de solutions de redondance et de récupération après sinistre pour assurer
la continuité du service en cas de panne. Les sauvegardes régulières des données doivent être
automatisées pour prévenir les pertes d’information.

3.5. Facilité d'utilisation

L’interface utilisateur doit être intuitive et conviviale, permettant une prise en main rapide
même pour les utilisateurs ayant peu de compétences techniques. La navigation doit être claire et
les fonctionnalités facilement accessibles. La personnalisation de l’interface doit être simple et
flexible, permettant aux utilisateurs de configurer le tableau de bord selon leurs besoins spécifiques.

3.6. Compatibilité et intégration

Le système doit être compatible avec les infrastructures matérielles et logicielles existantes de
DidaMind. Il doit pouvoir s'intégrer facilement avec d'autres systèmes et outils utilisés par
l'entreprise, tels que les systèmes de gestion de la relation client (CRM) et les plateformes de

Développement d’un système de gestion des Smart Boxes 24


Chapitre II: Spécification des besoins

maintenance. L'interopérabilité avec différents protocoles de communication et types de Smart


Boxes est également nécessaire.

3.7. Maintenance et évolutivité

Le système doit être conçu de manière à faciliter la maintenance et les mises à jour futures. La
documentation complète et à jour doit être disponible pour les administrateurs système et les
développeurs. L’architecture du système doit permettre des mises à jour et des améliorations sans
nécessiter de modifications majeures ou d'interruptions prolongées du service.

3.8. Conformité réglementaire

Le système doit respecter toutes les normes et réglementations pertinentes en matière de


gestion des données, de sécurité, et de confidentialité. Cela inclut, mais ne se limite pas à, les
règlements généraux sur la protection des données (RGPD), et la loi organique n° 2004-63 du 27
juillet 2004, portant sur la protection des données à caractère personnel.

En respectant ces exigences non fonctionnelles, le système de gestion des Smart Boxes de
DidaMind sera non seulement efficace et performant, mais aussi sûr, fiable, et facile à utiliser,
garantissant une gestion optimisée et une satisfaction maximale des clients.

4. Présentation des cas d’utilisation


4.1. Présentation des acteurs

Les acteurs représentent les différents types d’utilisateurs internes de DidaMind qui
interagiront avec le système de gestion des Smart Boxes. Les principaux acteurs identifiés sont
l’administrateur système et le technicien de maintenance. L’administrateur système est responsable
de la configuration, de la maintenance et de la mise à jour du système, en gérant les accès utilisateur
et en surveillant la sécurité du système. Le technicien de maintenance, quant à lui, effectue les
interventions de maintenance sur les Smart Boxes, telles que les mises à jour de firmware et le
remplacement de batteries.

4.2. Description des cas d’utilisation

Les cas d'utilisation décrivent les interactions typiques entre les utilisateurs internes de
DidaMind et le système de gestion des Smart Boxes. Ces scénarios montrent comment le personnel

Développement d’un système de gestion des Smart Boxes 25


Chapitre II: Spécification des besoins

de DidaMind, tel que les administrateurs système et les techniciens de maintenance, utiliseront le
système pour accomplir des tâches spécifiques liées à la gestion et à l’optimisation des Smart
Boxes.

[Link] en temps réel des Smart Boxes

Les utilisateurs peuvent visualiser l’état de connexion, la qualité du signal, et les coordonnées
GPS de chaque Smart Box en temps réel sur le tableau de bord. Cette fonctionnalité permet
d’identifier rapidement les dispositifs déconnectés ou ayant une faible connectivité, assurant ainsi
une surveillance proactive et efficace. Pour que cette surveillance soit possible, les Smart Boxes
doivent être correctement installées et connectées au système. Après l'interaction, l'utilisateur
obtient une vue d’ensemble actualisée de l'état de tous les Smart Boxes déployés.

[Link] et gestion des Smart Boxes

Les administrateurs peuvent rechercher et filtrer les Smart Boxes par identificateur, type, ou
état de connexion. Ils ont également accès à des informations détaillées telles que la liste des
modules intégrés et la version du firmware. Cette fonctionnalité exige que les informations des
Smart Boxes soient enregistrées et mises à jour dans le système. Après l'interaction, les
administrateurs peuvent gérer et consulter les paramètres des Smart Boxes de manière efficace,
facilitant ainsi la gestion et l'optimisation des dispositifs.

[Link] et exécution des interventions de maintenance

Les techniciens peuvent exécuter des interventions de maintenance préventive ou corrective,


ces interventions sont planifiées par l’administrateur du système. Ils peuvent exécuter des mises à
jour de firmware et remplacer les batteries des Smart Boxes. Pour cela, le système doit fournir des
alertes et des informations à jour sur l'état des Smart Boxes. Après l'intervention, les techniciens
s'assurent que les interventions de maintenance sont exécutées avec succès, minimisant ainsi les
temps d’arrêt et améliorant la fiabilité des Smart Boxes.

[Link] des mises à jour du firmware

Le système permet de gérer les versions de firmware des Smart Boxes, incluant la planification
(par l’administrateur) et l’exécution (par le technicien) des mises à jour. Cette fonctionnalité assure
que tous les dispositifs utilisent les versions les plus récentes et sécurisées du firmware. Après

Développement d’un système de gestion des Smart Boxes 26


Chapitre II: Spécification des besoins

l'interaction, les mises à jour de firmware sont appliquées avec succès, garantissant que les Smart
Boxes fonctionnent avec le firmware le plus récent.

4.2.5.Génération de rapports

Les administrateurs peuvent générer des rapports périodiques sur l’état et les performances
des Smart Boxes. Ces rapports incluent des données sur l’utilisation, les mises à jour, et les
interventions de maintenance. Les données doivent être collectées et stockées de manière continue
pour permettre la génération de ces rapports. Après l'interaction, les administrateurs obtiennent des
rapports détaillés qui les aident à analyser les performances et à prendre des décisions informées.

4.3. Diagramme des cas d’utilisation global

Le diagramme ci-dessous illustre les interactions principales entre les acteurs internes et le
système. Il montre les cas d'utilisation décrits et leurs relations avec les acteurs impliqués. Les
administrateurs système et les techniciens de maintenance de DidaMind interagissent avec le
système pour accomplir des tâches spécifiques. En répondant à ces cas d’utilisation, le système de
gestion des Smart Boxes permettra une gestion centralisée et efficace, optimisant les opérations
internes et garantissant la fiabilité et la performance des dispositifs déployés.

Figure 7 Diagramme des cas d’utilisation global


En répondant à ces cas d’utilisation, le système de gestion des Smart Boxes permettra une
gestion centralisée et efficace, optimisant les opérations internes et garantissant la fiabilité et la
performance des dispositifs déployés.

5. Conclusion
Dans ce chapitre, nous avons minutieusement détaillé les spécifications des besoins pour le
développement du système de gestion des Smart Boxes de la solution Energy Save de DidaMind.
En commençant par l'identification des besoins fonctionnels et non fonctionnels, nous avons établi
une base claire et structurée pour comprendre les attentes envers le système. Les besoins

Développement d’un système de gestion des Smart Boxes 27


Chapitre II: Spécification des besoins

fonctionnels, subdivisés en besoins globaux et sous-besoins, ont permis de détailler les


fonctionnalités spécifiques nécessaires pour une gestion efficace des Smart Boxes, comme le suivi
en temps réel, l'identification et la gestion des dispositifs, ainsi que la personnalisation de l'interface
utilisateur.

Nous avons également souligné l'importance des besoins non fonctionnels, en insistant sur des
critères tels que la performance, la scalabilité, la sécurité, et la facilité d'utilisation. Ces exigences
garantissent que le système sera non seulement fonctionnel, mais aussi performant, sécurisé, et
convivial pour les utilisateurs. En intégrant ces aspects, nous assurons que le système répondra aux
standards de qualité nécessaires pour un déploiement réussi et une utilisation durable.

La présentation des cas d'utilisation a fourni une vision concrète des interactions entre les
acteurs internes de DidaMind et le système, illustrant comment les administrateurs système et les
techniciens de maintenance utiliseront le système pour accomplir leurs tâches. Les diagrammes des
cas d'utilisation ont permis de visualiser ces interactions de manière claire et structurée, facilitant
ainsi la compréhension des exigences fonctionnelles et leur mise en œuvre.

En conclusion, nous avons établi une fondation solide pour les phases de conception et de
développement qui suivront, en définissant précisément les besoins fonctionnels et non
fonctionnels du système de gestion des Smart Boxes. Cette spécification détaillée des besoins
assure que toutes les parties prenantes partagent une vision commune des objectifs du projet et des
moyens à mettre en œuvre pour les atteindre, posant ainsi les bases pour un développement réussi
et une mise en service efficace du système.

Développement d’un système de gestion des Smart Boxes 28


Chapitre III: Conception du système

Conception
du système
Chapitre III : Conception du système

1. Introduction
La conception du système de gestion des Smart Boxes de DidaMind constitue une étape
cruciale pour garantir une solution robuste, efficace et évolutive. Ce chapitre présente en détail les
différentes phases de la conception, en s'assurant que chaque composant du système est
soigneusement planifié et intégré. La conception repose sur deux aspects principaux : la
modélisation dynamique et la modélisation statique, chacun apportant une perspective essentielle
pour le développement du système.

La modélisation dynamique met en lumière les interactions et les comportements du système


en temps réel. Elle inclut des diagrammes de séquences, de collaboration, d’états et d’activités, qui
illustrent comment les différents composants du système interagissent entre eux et avec les
utilisateurs. Ces diagrammes permettent de comprendre le flux d’informations et les processus
opérationnels, facilitant ainsi l’identification des points critiques et des améliorations possibles.

D'un autre côté, la modélisation statique se concentre sur la structure du système. Elle englobe
la définition des classes, le modèle relationnel des données, et la structure de l’architecture
logicielle et matérielle. Le diagramme de classes expose les relations et les dépendances entre les
différentes entités du système, tandis que le modèle relationnel détaille la façon dont les données
sont stockées et interconnectées. L’architecture de l’application, quant à elle, décrit les composants
logiciels et matériels nécessaires, leur organisation et leur interaction pour assurer le bon
fonctionnement du système.

La conception détaillée de chaque élément, soutenue par une modélisation rigoureuse, est
essentielle pour développer un système de gestion des Smart Boxes capable de répondre aux
besoins spécifiques de DidaMind. Cette phase garantit que toutes les fonctionnalités identifiées
sont correctement implémentées et que le système peut évoluer en fonction des futures exigences.
Ce chapitre explore donc en profondeur ces aspects de la conception, fournissant une base solide
pour la réalisation du système.

Développement d’un système de gestion des Smart Boxes 30


Chapitre III : Conception du système

2. Modélisation dynamique
2.1. Diagrammes de séquences

Les diagrammes de séquences sont essentiels pour illustrer comment les différents composants
du système interagissent dans des scénarios spécifiques. Ils montrent la séquence d'événements et
les messages échangés entre les objets du système. Dans le cadre de notre système de gestion des
Smart Boxes, nous avons plusieurs cas d'utilisation clés qui nécessitent des diagrammes de
séquences détaillés. Par exemple, pour la surveillance en temps réel, le diagramme montre
comment le tableau de bord affiche les détails des Smart Boxes tels que l'état de connexion, la
qualité du signal, et les coordonnées GPS. Le processus commence par une requête du tableau de
bord envoyée au serveur central qui répond avec l’état enregistré des Smart Boxes. Cela permet de
visualiser clairement le flux de données et les interactions nécessaires pour maintenir une
surveillance en temps réel efficace.

Interface utilisateur Serveur d'application Base de données


Administrateur système Technicien de maintenance

Modification des paramètres

Envoi des nouvelles données

Mise à jour des paramètres

Confirmation de la mise à jour

Réponse à l'administrateur

Planification de la maintenance

Enregistrement de la maintenance

Stockage des interventions

Confirmation de l'enregistrement

Validation de la planification

Administrateur système Technicien de maintenance


Interface utilisateur Serveur d'application Base de données

Figure 8 Diagramme de séquences pour la surveillance en temps réel des Smart Boxes

Développement d’un système de gestion des Smart Boxes 31


Chapitre III : Conception du système

Figure 9 Diagramme de séquences pour la gestion des paramètres de la Smart Box

Figure 10 Diagramme de séquences pour la Planification et exécution des interventions


de maintenance

Développement d’un système de gestion des Smart Boxes 32


Chapitre III : Conception du système

Figure 11 Diagramme de séquences pour la gestion de la mise à jour du Firmware

Figure 12 Diagramme de séquences pour la génération de rapports

Ces diagrammes de séquence représentent différentes interactions, processus et collaborations


impliqués dans la gestion des Smart Boxes, y compris la modification des paramètres, la
planification de la maintenance et la surveillance en temps réel.

Développement d’un système de gestion des Smart Boxes 33


Chapitre III : Conception du système

2.2. Diagrammes d’états

Les diagrammes d’états décrivent les différents états qu’une Smart Box peut traverser au cours
de son cycle de vie, ainsi que les transitions entre ces états. Pour le système de gestion des Smart
Boxes, un diagramme d’états pourrait représenter les états tels que "inactif", "en veille", "actif",
"mise à jour du firmware en cours", et "batterie faible". Chaque transition entre ces états est
déclenchée par des événements spécifiques, comme une commande de mise à jour du firmware ou
une alerte de batterie faible. Par exemple, une Smart Box passe de l’état "actif" à l’état "mise à jour
du firmware en cours" lorsque le technicien envoie une commande de mise à jour. Ces diagrammes
aident à visualiser et à gérer les différents états des Smart Boxes et à prévoir les réponses du
système à divers événements.

Inactif En_veille Actif Mise_a_jour_firmware Batterie_faible

Figure 13 Diagramme d'états pour la Smart Box


Cela représente le cycle de vie de la Smart Box, passant par les états "Inactif", "Veille", "Actif"
et "BatterieFaible", avec les transitions correspondantes entre ces états.

En_fonctionnement Maintenance_en_attente En_maintenance Maintenance_terminée

Figure 14 Diagramme d'états pour la maintenance


Ce diagramme représente le cycle de vie d'une intervention de maintenance, passant par les
états de "Planification", "EnAttente", "EnCours" et "Terminée", avec les transitions
correspondantes entre ces états.

Développement d’un système de gestion des Smart Boxes 34


Chapitre III : Conception du système

2.3. Diagrammes d’état-transition

Les diagrammes d’état-transition sont une variante des diagrammes d’états, mettant l’accent
sur les conditions et les événements qui causent le changement d’un état à un autre. Pour notre
système, ces diagrammes peuvent illustrer les conditions sous lesquelles une Smart Box change
d’état, par exemple de "veille" à "actif". Les transitions peuvent être déclenchées par des
événements tels que l'activation par l'utilisateur, la réception de nouvelles données, ou des alertes
système. Un diagramme d’état-transition pour une Smart Box pourrait montrer que lorsqu’une
commande de maintenance est reçue, la Smart Box passe de l’état "actif" à "maintenance en cours",
et revient à "actif" une fois l’intervention terminée. Ces diagrammes sont particulièrement utiles
pour comprendre et définir les logiques de contrôle dans le système.

Inactif

Activation par l'utilisateur

Veille

Commande de mise à jour Réception de nouvelles données

MiseAJourFirmware Actif

Alert batterie faible Batterie remplacée

BatterieFaible

Figure 15 Diagrammes d’état-transition

Développement d’un système de gestion des Smart Boxes 35


Chapitre III : Conception du système

Cela représente les transitions entre les différents états de la Smart Box, passant par les états
"Inactif", "Veille", "Actif" et "BatterieFaible", avec les transitions correspondantes entre ces états.

Planification

EnAttente

Intervention déclenchée

EnCours

Intervention réalisée Planification terminée

Terminée

Prêt pour une nouvelle intervention

Figure 16 Diagrammes d’état-transition pour la maintenance


Ce diagramme représente les transitions entre les différents états d'une intervention de
maintenance, passant par les états de "Planification", "EnAttente", "EnCours" et "Terminée", avec
les transitions correspondantes entre ces états.

2.4. Diagrammes d’activité

Les diagrammes d’activité détaillent les flux de travail et les processus opérationnels du
système. Ils sont particulièrement utiles pour modéliser les processus de bout en bout impliquant
plusieurs acteurs et systèmes. Dans le contexte de notre système, un diagramme d’activité pourrait

Développement d’un système de gestion des Smart Boxes 36


Chapitre III : Conception du système

décrire le processus complet de gestion des mises à jour de firmware, depuis la détection de la
version obsolète par le serveur jusqu’à la confirmation de mise à jour réussie. Le diagramme
montrerait les étapes successives, telles que la vérification de la version actuelle, l'envoi de la
commande de mise à jour, l'installation de la nouvelle version par la Smart Box, et la vérification
post-mise à jour. Chaque étape est représentée par une activité, et les transitions entre les activités
montrent le flux de contrôle et les décisions prises en cours de processus. Cela aide à identifier les
points critiques et à optimiser les processus opérationnels.

Figure 17 Diagramme d'Activité pour le Processus de Surveillance

Développement d’un système de gestion des Smart Boxes 37


Chapitre III : Conception du système

Figure 18 Diagramme d'Activité pour le Processus de Gestion des Mises à Jour du


Firmware

Développement d’un système de gestion des Smart Boxes 38


Chapitre III : Conception du système

Début de la génération de rapport

Collecte des données historiques

Analyse des données

Génération du rapport

yes no
Rapport généré?

Envoyer le rapport à l'utilisateur Générer une alerte d'échec de génération de rapport

Figure 19 Diagramme d'Activité pour le Processus de Génération de Rapports

Ces diagrammes d'activités détaillent les différents processus et workflows clés pour la gestion
des Smart Boxes, allant de la surveillance continue à la gestion des mises à jour et à la génération
de rapports. Ils aident à visualiser et à comprendre les étapes successives impliquées dans chaque
processus, permettant ainsi une meilleure gestion et optimisation du système.

3. Modélisation statique
Dans cette section, nous allons détailler la modélisation statique du système de gestion des
paramètres des Smart Boxes, en fournissant une description, un diagramme de classes, un modèle
relationnel et un dictionnaire de données.

Développement d’un système de gestion des Smart Boxes 39


Chapitre III : Conception du système

3.1. Diagramme de classes

Le diagramme de classes représente les différentes entités du système ainsi que leurs attributs
et méthodes.

Figure 20 Diagramme de classes


Explication du Diagramme de Classes :

User :

Attributs : userId, username, password, email, role

Méthodes : login(), logout(), viewDashboard(), receiveNotification(notification: Notification)

Relations :

Chaque utilisateur peut recevoir plusieurs notifications.

Chaque utilisateur gère un seul tableau de bord.

Chaque utilisateur peut surveiller plusieurs Smart Boxes.

Développement d’un système de gestion des Smart Boxes 40


Chapitre III : Conception du système

SmartBox :

Attributs : boxId, name, status, signalStrength, location, currentFirmware

Méthodes : updateFirmware(firmware: Firmware), getConnectionStatus(), sendData()

Relations :

Chaque Smart Box a une version courante de firmware.

Chaque Smart Box est associée à plusieurs logs de connexion.

Chaque Smart Box est localisée à une position définie par des coordonnées GPS.

Firmware :

Attributs : firmwareId, version, releaseDate, size

Méthodes : applyTo(box: SmartBox), rollbackToPreviousVersion(box: SmartBox)

Relations :

Un firmware peut être appliqué à plusieurs Smart Boxes.

ConnectionLog :

Attributs : logId, boxId, timestamp, status

Méthodes : recordConnection(box: SmartBox), getLogsForBox(box: SmartBox)

Relations :

Plusieurs logs de connexion peuvent être associés à une seule Smart Box.

Les logs de connexion peuvent être visualisés via le tableau de bord.

Notification :

Attributs : notificationId, message, dateSent, recipient

Méthodes : sendToUser(user: User), markAsRead()

Relations :

Chaque notification est envoyée à un seul utilisateur.

Développement d’un système de gestion des Smart Boxes 41


Chapitre III : Conception du système

Dashboard :

Attributs : dashboardId, userId, lastUpdated

Méthodes : viewBoxStatus(box: SmartBox), updateStatus(), showLogs()

Relations :

Le tableau de bord peut afficher le statut de plusieurs Smart Boxes.

Le tableau de bord est mis à jour par l'utilisateur et montre les logs de connexion.

Location :

Attributs : latitude, longitude

Méthodes : getCoordinates(), updateCoordinates(lat: Double, lon: Double)

Relations :

Chaque Smart Box est localisée à une position unique.

3.2. Modèle relationnel

Dans cette section, nous allons détailler le modèle relationnel du système de gestion des Smart
Boxes. Ce modèle relationnel est une représentation des tables de la base de données, des colonnes
associées et des relations entre ces tables. Ce modèle est essentiel pour structurer les données de
manière efficace et garantir l'intégrité et la performance de la base de données.

[Link] et colonnes

Les principales tables du modèle relationnel avec les clés primaires (PK), les clés étrangères
(FK) :

Users : user_id (PK) , username, password, email, role

SmartBoxes : box_id (PK), name, status, signal_strength, location_id (FK),


current_firmware_id (FK)

Firmwares : firmware_id (PK), version, release_date, size, ConnectionLogs

Notifications : notification_id (PK), message, date_sent, recipient_id (FK)

Locations : location_id (PK), latitude, longitude

Développement d’un système de gestion des Smart Boxes 42


Chapitre III : Conception du système

[Link] entre les tables

Les relations entre les tables définissent comment les données sont liées entre elles. Ces
relations sont établies par les clés étrangères, garantissant l'intégrité référentielle dans la base de
données. Voici les relations principales entre les tables :

Users :

Identifie chaque utilisateur avec des informations de connexion et des rôles.

Relations : Les utilisateurs peuvent surveiller plusieurs Smart Boxes et recevoir des
notifications.

SmartBoxes :

Stocke les informations spécifiques à chaque Smart Box, y compris son état et sa force de
signal.

Relations : Les Smart Boxes sont associées à une position GPS (Location) et ont une version
de firmware courante (Firmware).

Firmwares :

Contient les informations sur les différentes versions de firmware disponibles.

Relations : Chaque Smart Box a une version courante de firmware.

ConnectionLogs :

Enregistre les logs de connexion pour chaque Smart Box avec un statut et un timestamp.

Relations : Chaque log de connexion est associé à une Smart Box.

Notifications :

Gère les notifications envoyées aux utilisateurs.

Relations : Chaque notification est associée à un utilisateur (recipient).

Locations :

Stocke les coordonnées GPS de chaque Smart Box.

Relations : Chaque Smart Box est associée à une position (latitude et longitude).

Développement d’un système de gestion des Smart Boxes 43


Chapitre III : Conception du système

Tableau 2 Relations principales


Nom de la Table 1 Colonne Table 1 Table 2 Colonne Table Type de Description
Relation 2 Relation
Surveillance Users user_id SmartBoxes monitored_by 1 Un utilisateur
des Box (user_id) peut surveiller
plusieurs Smart
Boxes.
Logs de SmartBoxes box_id ConnectionLogs box_id 1 Une Smart Box
Connexion peut avoir
plusieurs logs de
connexion.
Position des SmartBoxes location_id Locations location_id 1:1 Chaque Smart
Box Box a une
position GPS
unique.
Version du SmartBoxes current_firmware_id Firmwares firmware_id 1:1 Chaque Smart
Firmware Box a une
version courante
de firmware.
Notifications Notifications recipient_id Users user_id N:1 Plusieurs
notifications
peuvent être
envoyées à un
utilisateur.
Logs de ConnectionLogs box_id SmartBoxes box_id N:1 Plusieurs logs
Connexion peuvent se
rapporter à une
seule Smart Box.
Position des Locations location_id SmartBoxes location_id 1 Une position
Box GPS peut être
associée à
plusieurs Smart
Boxes.

[Link] relationnel

Le diagramme relationnel fournit une vue graphique des relations entre les différentes tables.
Chaque table est représentée par un rectangle, avec ses colonnes et types de données listés à
l'intérieur. Les lignes entre les rectangles représentent les relations entre les tables.

Développement d’un système de gestion des Smart Boxes 44


Chapitre III : Conception du système

Figure 21 Diagramme relationnel


[Link] des relations

Surveillance des Box (Users - SmartBoxes):

Relation: 1 (un utilisateur peut surveiller plusieurs Smart Boxes)

Clé Étrangère: monitored_by dans la table SmartBoxes fait référence à user_id dans la table
Users.

Description: Un utilisateur peut être responsable de la surveillance de plusieurs Smart Boxes.

Développement d’un système de gestion des Smart Boxes 45


Chapitre III : Conception du système

Logs de Connexion (SmartBoxes - ConnectionLogs):

Relation: 1 (une Smart Box peut avoir plusieurs logs de connexion)

Clé Étrangère : box_id dans la table ConnectionLogs fait référence à box_id dans la table
SmartBoxes.

Description: Les logs de connexion enregistrent l'état et le timestamp pour chaque Smart Box
à différents moments.

Position des Box (SmartBoxes - Locations):

Relation: 1:1 (chaque Smart Box a une position GPS unique)

Clé Étrangère: location_id dans la table SmartBoxes fait référence à location_id dans la table
Locations.

Description: Chaque Smart Box est localisée à une position spécifique donnée par des
coordonnées GPS uniques.

Version du Firmware (SmartBoxes - Firmwares):

Relation: 1:1 (chaque Smart Box a une version courante de firmware)

Clé Étrangère: current_firmware_id dans la table SmartBoxes fait référence à firmware_id


dans la table Firmwares.

Description: Les Smart Boxes utilisent une version spécifique de firmware qui peut être mise
à jour.

Notifications (Notifications - Users):

Relation: N:1 (plusieurs notifications peuvent être envoyées à un utilisateur)

Clé Étrangère: recipient_id dans la table Notifications fait référence à user_id dans la table
Users.

Description: Les utilisateurs reçoivent des notifications concernant l'état des Smart Boxes ou
d'autres événements pertinents.

Logs de Connexion (ConnectionLogs - SmartBoxes):

Relation: N:1 (plusieurs logs peuvent se rapporter à une seule Smart Box)

Développement d’un système de gestion des Smart Boxes 46


Chapitre III : Conception du système

Clé Étrangère: box_id dans la table ConnectionLogs fait référence à box_id dans la table
SmartBoxes.

Description: Les logs de connexion fournissent un historique détaillé des connexions et des
statuts des Smart Boxes.

Position des Box (Locations - SmartBoxes):

Relation: 1 (une position GPS peut être associée à plusieurs Smart Boxes)

Clé Étrangère: location_id dans la table SmartBoxes fait référence à location_id dans la table
Locations.

Description: Une position GPS peut être partagée par plusieurs Smart Boxes, bien que
généralement chaque Smart Box ait une position unique.

Ces relations permettent de structurer et de gérer les données de manière efficace dans le
système, assurant une intégrité des données et facilitant la gestion des opérations de surveillance et
de mise à jour des Smart Boxes.

[Link]

Le modèle relationnel présenté dans cette section permet de structurer efficacement les
données nécessaires à la gestion des Smart Boxes. En définissant clairement les tables, les
colonnes, les types de données et les relations entre les tables, nous garantissons une base solide
pour le développement du système. Ce modèle relationnel assure l'intégrité des données, facilite
l'accès et la manipulation des informations, et supporte les opérations de maintenance et de mise à
jour nécessaires pour le bon fonctionnement du système de gestion des Smart Boxes.

Développement d’un système de gestion des Smart Boxes 47


Chapitre III : Conception du système

3.3. Dictionnaire de données

Le dictionnaire de données fournit des descriptions détaillées des tables et de leurs colonnes.

Tableau 3 Table Users


Nom de la Type de Taille Obligatoire Valeur Valeurs Clé
Colonne Données par Autorisées
Défaut
user_id Integer N/A Oui N/A N/A PK
username String 255 Oui N/A N/A
password String 255 Oui N/A N/A
email String 255 Oui N/A N/A
role String 50 Oui N/A ['Admin',
'User']

Tableau 4 Table SmartBoxes


Nom de la Colonne Type de Taille Obligatoire Valeur Valeurs Clé
Données par Autorisées
Défaut
box_id Integer N/A Oui N/A N/A PK
name String 255 Oui N/A N/A
status String 50 Oui 'offline' ['online',
'offline',
'maintenance']
signal_strength Integer N/A Oui 0 [0-100]
location_id Integer N/A Oui N/A N/A FK Location
current_firmware_id Integer N/A Oui N/A N/A FK Firmware

Tableau 5 Table Firmwares


Nom de la Type de Taille Obligatoire Valeur Valeurs Clé
Colonne Données par Autorisées
Défaut
firmware_id Integer N/A Oui N/A N/A PK
version String 50 Oui N/A N/A
release_date Date N/A Oui N/A N/A
size Double N/A Oui 0.0 N/A

Développement d’un système de gestion des Smart Boxes 48


Chapitre III : Conception du système

Tableau 6 Table ConnectionLogs


Nom de la Type de Taille Obligatoire Valeur Valeurs Clé
Colonne Données par Autorisées
Défaut
log_id Integer N/A Oui N/A N/A PK
box_id Integer N/A Oui N/A N/A FK SmartBox
timestamp Date N/A Oui N/A N/A
status String 50 Oui 'offline' ['online',
'offline']

Tableau 7 Table Notifications


Nom de la Type de Taille Obligatoire Valeur Valeurs Clé
Colonne Données par Autorisées
Défaut
notification_id Integer N/A Oui N/A N/A PK
message String 500 Oui N/A N/A
date_sent Date N/A Oui N/A N/A
recipient_id Integer N/A Oui N/A N/A FK User

Tableau 8 Table Locations


Nom de la Type de Taille Obligatoire Valeur par Défaut Valeurs Clé
Colonne Données Autorisées
location_id Integer N/A Oui N/A N/A PK
latitude Double N/A Oui 0.0 [-90.0, 90.0]
longitude Double

Ce dictionnaire de données permet de structurer les informations nécessaires pour gérer les
Smart Boxes de manière efficace, tout en facilitant la maintenance et les mises à jour de firmware,
et en assurant une intégration fluide avec les clients et les logs de maintenance.

3.4. Architecture de l’application

L'architecture de l'application repose sur une approche modulaire et évolutive, permettant une
gestion efficace des paramètres des Smart Boxes. En combinant des technologies modernes avec
une conception robuste, le système offre une expérience utilisateur fluide et une gestion optimisée
des données.

Développement d’un système de gestion des Smart Boxes 49


Chapitre III : Conception du système

[Link] logicielle

Module de Gestion des Paramètres :

Responsable de la collecte, du stockage et de la mise à jour des paramètres des Smart Boxes.

Module d'Interface Utilisateur (UI) :

Fournit une interface utilisateur conviviale pour visualiser et interagir avec les paramètres des
Smart Boxes.

Module de Recherche et de Filtrage :

Permet la recherche et le filtrage des Smart Boxes en fonction de différents critères (numéro
de série, type, client, etc.).

Module de Gestion de l'Authentification et de l'Autorisation :

Gère l'authentification des utilisateurs et l'autorisation d'accès aux fonctionnalités de


l'application.

Module de Génération de Rapports :

Génère des rapports détaillés sur les paramètres des Smart Boxes pour l'analyse et la prise de
décision.

Figure 22 Architecture logicielle

Développement d’un système de gestion des Smart Boxes 50


Chapitre III : Conception du système

[Link] matérielle

Serveur Central :

Héberge l'application et la base de données, permettant l'accès à distance à partir de différents


appareils.

Figure 23 Architecture matérielle

[Link] Utilisées :

Frontend : HTML, CSS, JavaScript (pour l'interface utilisateur).

Backend : [Link], Express (pour la logique métier et les API).

Base de Données : MongoDB (pour le stockage des données).

Authentification : JWT (JSON Web Tokens) pour l'authentification des utilisateurs.

Communication : Protocoles HTTP/HTTPS pour les échanges de données entre le frontend


et le backend.

Développement d’un système de gestion des Smart Boxes 51


Chapitre III : Conception du système

4. Conclusion
Dans ce chapitre, nous avons exploré en détail la modélisation statique du système de gestion
des paramètres des Smart Boxes. À travers l'examen approfondi de l'architecture de l'application,
du diagramme de classes, du modèle relationnel et du dictionnaire de données, nous avons dressé
une cartographie complète de la structure et de l'organisation du système.

La modélisation statique fournit une base solide pour la conception et le développement du


système, en définissant clairement les entités, les attributs et les relations entre les différents
composants. Elle permet une compréhension approfondie des données manipulées par le système,
ainsi que des interactions entre les différentes parties prenantes.

En définissant les composants logiciels et matériels, ainsi que les technologies utilisées,
l'architecture de l'application offre une vision globale de la manière dont le système fonctionne et
interagit avec son environnement. Elle met en lumière les choix technologiques et architecturaux
qui sous-tendent la mise en œuvre du système, permettant ainsi une planification stratégique et une
gestion efficace des ressources.

En conclusion, la modélisation statique présentée dans ce chapitre constitue une étape


essentielle dans le processus de développement du système de gestion des paramètres des Smart
Boxes. Elle fournit un cadre conceptuel solide sur lequel s'appuyer pour la réalisation pratique du
système, garantissant ainsi sa cohérence, sa robustesse et sa pérennité.

Développement d’un système de gestion des Smart Boxes 52


Chapitre IV: Réalisation du système

Réalisation
du système
Chapitre IV : Réalisation du système

1. Introduction
La réalisation du système de gestion des Smart Boxes pour la solution Energy Save de
DidaMind constitue l'étape décisive où les concepts et les modèles théoriques prennent forme pour
se matérialiser en une application opérationnelle. Après avoir soigneusement défini les
spécifications et conçu les différents aspects du système, cette phase se concentre sur la mise en
œuvre concrète des fonctionnalités prévues, en utilisant les outils et technologies les plus
appropriés.

L'objectif principal de cette étape est de développer un système robuste et intuitif, capable de
gérer efficacement les paramètres des Smart Boxes. Pour cela, nous avons mis en place un
environnement de développement adéquat, comprenant à la fois des ressources matérielles et
logicielles. Nous avons également conçu des interfaces graphiques interactives, qui permettent une
gestion facile et efficace des Smart Boxes par les utilisateurs finaux.

Dans ce chapitre, nous détaillerons d'abord l'environnement de développement, en décrivant


les configurations matérielles et logicielles utilisées pour coder et tester l'application. Ensuite, nous
présenterons les principales interfaces graphiques développées, en soulignant leur rôle dans la
gestion et la visualisation des paramètres des Smart Boxes. Chaque interface sera décrite en termes
de fonctionnalités et d'interaction utilisateur, montrant comment elles contribuent à atteindre les
objectifs du système.

Enfin, nous aborderons les défis rencontrés au cours du développement, ainsi que les solutions
mises en place pour les surmonter.

2. Environnement de développement
Pour assurer une réalisation efficace et de qualité, nous avons sélectionné des outils et des
technologies adaptés aux besoins spécifiques de notre projet.

2.1. Environnement matériel

L'environnement matériel comprend les ordinateurs et les serveurs utilisés pour le


développement et les tests. Les configurations utilisées sont :

Développement d’un système de gestion des Smart Boxes 54


Chapitre IV : Réalisation du système

Ordinateur de développement : Un ordinateurs personnels équipé de processeur de type


AMD Ryzen 5, avec 32 Go de RAM, et utilisant le système d'exploitation Windows 11. Cette
machine assure la performance nécessaire pour exécuter les environnements de développement et
de test.

Serveur de test : Un serveur dédié pour l'hébergement des applications web, offert par la
société DidaMind, doté d'une configuration robuste pour gérer les tests de charge et de
performance. Ce serveur permet de simuler un environnement de production pour valider le
comportement du système sous différentes conditions de charge.

2.2. Environnement logiciel

L'environnement logiciel inclut les outils de développement, les frameworks et les


bibliothèques utilisés pour construire le système :

Langages de programmation : HTML, CSS, et JavaScript pour le développement du front-


end, ainsi que Python pour le back-end. Ces langages sont choisis pour leur efficacité et leur
capacité à répondre aux besoins du projet.

Frameworks : Django (Python) pour le développement du back-end, et React pour le front-


end. Django est reconnu pour sa robustesse et sa facilité d'intégration avec des bases de données,
tandis que React offre une expérience utilisateur fluide et réactive.

Base de données : PostgreSQL pour la gestion des données des Smart Boxes. PostgreSQL est
choisi pour sa fiabilité, sa scalabilité, et ses fonctionnalités avancées de gestion de données.

Outils de gestion de projet : Git pour le contrôle de version, permettant une gestion efficace
des modifications de code, et Trello pour le suivi des tâches, facilitant la coordination et la gestion
des différentes étapes du développement.

Environnements de développement intégrés (IDE) : Visual Studio Code et PyCharm pour


offrir des fonctionnalités avancées de développement, de débogage et de test.

Développement d’un système de gestion des Smart Boxes 55


Chapitre IV : Réalisation du système

3. Principales interfaces graphiques


Les interfaces graphiques sont essentielles pour offrir une expérience utilisateur intuitive et
efficace. Les principales interfaces développées incluent :

3.1. Interface d’identification :

C’est une interface simple et efficace pour l'identification des utilisateurs, demandant une
adresse e-mail et un mot de passe. Ce qui garantit une protection des données utilisés dans ce
système.

Figure 24 Interface d'identification

3.2. Tableau de bord interactif :

Ce tableau de bord permet aux utilisateurs de visualiser en temps réel l'état des Smart Boxes,
avec des options de recherche et de filtrage. Les utilisateurs peuvent accéder rapidement à des
informations critiques telles que l'état de connexion, la qualité du signal, et l'emplacement
géographique des Smart Boxes.

Développement d’un système de gestion des Smart Boxes 56


Chapitre IV : Réalisation du système

Figure 25 Dashboard Principal

3.3. Formulaire de gestion des Smart Boxes :

Cette interface permet aux utilisateurs d'ajouter, de modifier et de supprimer les informations
des Smart Boxes. Elle inclut des champs pour saisir l'identificateur unique, le type de box, les
modules intégrés, le client, et la date d'installation.

Développement d’un système de gestion des Smart Boxes 57


Chapitre IV : Réalisation du système

Figure 26 Formulaire d'ajout de SmartBoxes

3.4. Vue détaillée des Smart Boxes :

Cette interface affiche des informations détaillées sur chaque Smart Box, y compris l'état de
la batterie, la qualité du signal, et la version du firmware. Les utilisateurs peuvent également
consulter l'historique des interventions de maintenance pour chaque box.

Figure 27 État du SmartBox

Développement d’un système de gestion des Smart Boxes 58


Chapitre IV : Réalisation du système

3.5. Section de planification de la maintenance :

Cette interface permet de planifier et de suivre les interventions de maintenance, en tenant


compte de l'état des composants et des besoins spécifiques des clients. Elle inclut un calendrier
interactif et des notifications pour rappeler les maintenances prévues.

Figure 28 Ajout d'une intervention de maintenance

Développement d’un système de gestion des Smart Boxes 59


Chapitre IV : Réalisation du système

Figure 29 Suivie des interventions de Maintenance

3.6. Rapports et statistiques :

Cette section génère des rapports sur la performance des Smart Boxes et les interventions de
maintenance, offrant des insights précieux pour l'optimisation du système. Les utilisateurs peuvent
exporter les rapports en différents formats pour une analyse plus approfondie.

Développement d’un système de gestion des Smart Boxes 60


Chapitre IV : Réalisation du système

Figure 30 Génération et export des rapports

4. Conclusion
La réalisation du système de gestion des Smart Boxes a représenté une étape cruciale,
marquant la transition des concepts théoriques vers une application pratique et fonctionnelle. Cette
phase a permis de transformer les spécifications détaillées et les modèles conceptuels en un système
opérationnel et utilisable par les équipes de DidaMind.

Tout d'abord, nous avons mis en place un environnement de développement robuste,


comprenant des configurations matérielles et logicielles adéquates. Cela a inclus l'utilisation de
langages de programmation adaptés, de frameworks puissants, et d'outils de gestion de projet
efficaces, assurant ainsi une base solide pour le développement du système.

Ensuite, nous avons développé des interfaces graphiques interactives et intuitives, facilitant la
gestion des Smart Boxes. Le tableau de bord interactif, le formulaire de gestion, la vue détaillée
des Smart Boxes, la section de planification de la maintenance, et les outils de génération de
rapports ont été conçus pour offrir une expérience utilisateur optimale. Ces interfaces permettent
une gestion efficace et en temps réel des paramètres critiques, améliorant ainsi la performance
opérationnelle et la satisfaction client.

Développement d’un système de gestion des Smart Boxes 61


Chapitre IV : Réalisation du système

Le processus de réalisation a également impliqué la gestion de divers défis, tels que


l'intégration des nombreux paramètres des Smart Boxes et la garantie de la sécurité et de la fiabilité
du système. Grâce à une approche méthodique et l'utilisation de technologies appropriées, ces défis
ont été surmontés, aboutissant à un système qui répond aux attentes et besoins des utilisateurs.

En conclusion, la phase de réalisation a été déterminante pour la concrétisation du projet. Elle


a permis de valider les choix technologiques et méthodologiques, et de s'assurer que le système
final est prêt à être déployé et utilisé de manière efficace. Cette étape a posé les bases pour les
prochaines phases de déploiement et de maintenance, assurant ainsi la pérennité et l'évolutivité de
la solution de gestion des Smart Boxes de DidaMind.

Développement d’un système de gestion des Smart Boxes 62


Conclusion Générale

Conclusion Générale

La réalisation de ce projet de fin d'études, consacré au développement d'un système de gestion


des Smart Boxes pour la solution Energy Save de DidaMind, a été une expérience enrichissante et
formatrice. Ce projet a permis de mettre en pratique les connaissances acquises tout au long de
notre cursus en génie logiciel et systèmes d'information, tout en répondant à un besoin réel de
l'industrie.

Le travail a débuté par une analyse approfondie de l'existant, mettant en évidence les
limitations des solutions actuelles et les opportunités d'amélioration. Cette phase d'état de l'art a
permis de bien comprendre les enjeux et les exigences spécifiques du projet. Les principaux défis
identifiés comprenaient l'absence d'un tableau de bord centralisé pour la gestion des Smart Boxes
et la nécessité de surveiller divers paramètres critiques en temps réel.

Ensuite, nous avons défini les spécifications des besoins fonctionnels et non fonctionnels. Ces
spécifications ont servi de fondation solide pour la conception du système, en s'assurant que toutes
les fonctionnalités nécessaires étaient bien prises en compte. La modélisation statique et dynamique
a permis de visualiser les interactions et les structures du système, facilitant ainsi sa mise en œuvre.

La phase de réalisation a été marquée par le développement d'un environnement de travail


adéquat, intégrant les outils et technologies nécessaires. Les interfaces graphiques ont été conçues
pour être intuitives et interactives, permettant une gestion efficace des Smart Boxes par les
utilisateurs. Les fonctionnalités telles que le tableau de bord interactif, la gestion des informations
des clients, et la planification de la maintenance ont été implémentées avec succès, répondant ainsi
aux objectifs fixés.

L'ensemble du processus de développement a été jalonné de défis techniques et


organisationnels, mais ces obstacles ont été surmontés grâce à une approche méthodique et une
utilisation judicieuse des technologies disponibles. Le choix d'un modèle de développement en
cascade a permis une structuration claire et progressive du travail, assurant la qualité et la cohérence
de chaque étape.

Développement d’un système de gestion des Smart Boxes 63


Conclusion Générale

En conclusion, ce projet a abouti à la création d'un système de gestion des Smart Boxes
efficace et fonctionnel, capable de répondre aux besoins de DidaMind et de ses clients. Ce travail
a non seulement permis de développer des compétences techniques avancées, mais aussi de
renforcer des compétences en gestion de projet et en résolution de problèmes. La solution
développée est prête à être déployée et utilisée, offrant une gestion centralisée et optimisée des
Smart Boxes, et contribuant ainsi à une meilleure efficacité énergétique et à une satisfaction accrue
des clients.

Nous espérons pouvoir continuer à évoluer et à améliorer ce système, en intégrant de nouvelles


fonctionnalités, notamment en ajoutant une liaison directe entre la base de données de notre
système et les Smart Boxes, vu que ces dispositifs sont connectés au réseau. Ce projet est une étape
importante vers des solutions technologiques plus intelligentes et plus durables, alignées avec les
objectifs de la transition énergétique.

Développement d’un système de gestion des Smart Boxes 64


Bibliographie et Webographie

Bibliographie et Webographie
Bibliographie

• Booch, G., Rumbaugh, J., & Jacobson, I. (2005). The Unified Modeling Language User Guide
(2nd ed.). Addison-Wesley.

• Erl, T. (2016). Cloud Computing: Concepts, Technology & Architecture. Prentice Hall.

• Jacobson, I., Booch, G., & Rumbaugh, J. (1999). The Unified Software Development Process.
Addison-Wesley.

• Madakam, S., Ramaswamy, R., & Tripathi, S. (2015). Internet of Things (IoT): A literature
review. Journal of Computer and Communications, 3(5), 164-173.

• Pressman, R. S. (2005). Software Engineering: A Practitioner's Approach (6th ed.). McGraw-


Hill.

• Sommerville, I. (2011). Software Engineering (9th ed.). Addison-Wesley.

• Welling, L., & Thomson, L. (2017). PHP and MySQL Web Development (5th ed.). Addison-
Wesley.

Webographie

• [Link]
Analytics Insight. (2023). Implementing Dashboard Analytics for IoT Devices.

• [Link]
IoT World Today. (2021). Understanding GPRS Technology in IoT.

• [Link]
World Energy Council. (2022). Energy Efficiency and IoT.

• [Link]
DidaMind. (2022). Energy Save Solution Overview.

• [Link]
IoT For All. (2021). Best Practices for IoT Device Management.

• [Link]
Microsoft Azure. (2022). Azure IoT Hub Documentation.

Développement d’un système de gestion des Smart Boxes 65


Annexes

ANNEXE A: Energy Save IoT GPRS Smart Box PRODUCT DATA SHEET

Développement d’un système de gestion des Smart Boxes 66


ANNEXE A: Smart Box Product Data Sheet

Développement d’un système de gestion des Smart Boxes 67


ANNEXE A: Smart Box Product Data Sheet

Développement d’un système de gestion des Smart Boxes 68


ANNEXE A: Smart Box Product Data Sheet

Développement d’un système de gestion des Smart Boxes 69

Common questions

Alimenté par l’IA

Les principales fonctionnalités du système incluent le suivi en temps réel des Smart Boxes, la gestion de l'état des composants et les mises à jour du firmware, ainsi que la personnalisation de l'interface utilisateur .

Le système améliore la satisfaction client en proposant une gestion proactive de la maintenance, réduisant les temps d'arrêt et améliorant la fiabilité du service. La personnalisation des services et l'accès simplifié à des informations pertinentes via le tableau de bord contribuent également à satisfaire les besoins spécifiques des clients .

Le suivi en temps réel des Smart Boxes permet de visualiser l'état de connexion, la qualité du signal, et l'emplacement géographique, ce qui aide à identifier rapidement les Smart Boxes déconnectées ou ayant une faible connectivité. Cela assure une gestion efficace des dispositifs déployés .

La modélisation statique, à travers des diagrammes de classes et un modèle relationnel, structure les données de manière efficace, assurant l'intégrité et la performance de la base de données. Elle décrit les entités du système, leurs attributs, méthodes, et relations, ce qui est crucial pour la gestion ordonnée des paramètres .

Le système optimise les opérations de maintenance en surveillant en continu l'état des composants critiques, comme la batterie, afin de prévoir et planifier les interventions nécessaires. Cela permet de maintenir les Smart Boxes opérationnelles et d'effectuer les interventions de manière proactive .

Le modèle relationnel inclut les tables Users, SmartBoxes, Firmwares, ConnectionLogs, Notifications, et Locations. Les relations clés sont notamment que les utilisateurs peuvent surveiller plusieurs Smart Boxes, chaque Smart Box a une version courante de firmware, et les logs de connexion sont associés à une Smart Box spécifique .

Cette approche permet de planifier les mises à jour logicielles et les interventions de maintenance de manière proactive, minimisant ainsi les interruptions de service. Elle assure également une gestion efficace des ressources, contribuant à la fiabilité et à la performance globale des Smart Boxes .

La personnalisation de l'interface utilisateur est cruciale car elle permet aux utilisateurs d'adapter le tableau de bord à leurs besoins spécifiques, ce qui améliore l'accès aux informations les plus pertinentes. Cela inclut la possibilité de configurer des alertes pour différents types d’événements, facilitant ainsi une gestion plus efficace .

Le modèle Agile est adapté car il permet une flexibilité et une adaptabilité accrue, ce qui est essentiel dans des projets où les exigences peuvent évoluer. Grâce à des itérations courtes, il facilite l'intégration des retours continus et l'ajustement des priorités .

Le modèle en cascade est rigide car chaque phase doit être complétée avant que la suivante commence, ce qui le rend inadapté pour intégrer des changements en cours de développement. Cela pose des problèmes si des ajustements sont nécessaires après la phase de conception .

Vous aimerez peut-être aussi