Explorer les Livres électroniques
Catégories
Explorer les Livres audio
Catégories
Explorer les Magazines
Catégories
Explorer les Documents
Catégories
Intitulé du Projet :
Conception et réalisation d’une application
Gestion de la gouvernance du tenant office
« Taux d’adoption & Boîtes à Risque »
Organisme d’accueil :
PROGED INTERNATIONALE
À mes très chers parents, pour leur amour, leurs sacrifices leur soutien et leur dévouement. Il n’y a
pas de mots qui puissent exprimer toute ma joie, ma gratitude et ma reconnaissance pour tout ce qu’ils
ont fait pour moi. Que Dieu leur accorde santé, bonheur et longue vie.
À ma chère sœur Kmar, merci de votre tendresse et de votre affection. Je te souhaite tout le bonheur
et la réussite.
À tous les membres de ma famille, pour toute leur tendresse, leur considération et leur soutien
permanent et à qui je dois énormément des choses merveilleuses.
À mes chers amis pour l’amitié qui nous a unies et pour tous les merveilleux moments et les souvenirs
partagés.
À toute l’équipe PROGED, qui m’ont encouragé et soutenu durant la période de ce stage.
À tous ceux que j’aime et à tous ceux qui m’aiment.
Remerciements
En préambule à ce rapport, je souhaite adresser ici tous mes remerciements aux personnes qui m’ont
apporté leur aide et qui ont ainsi contribué à l'élaboration de ce travail.
Nous tenons à remercier, toute l'équipe pédagogique de l'IHEC et les intervenants professionnels
responsables de la formation sur les nouvelles technologies, pour avoir contribué à ma formation.
Je tiens à exprimer également ma profonde reconnaissance à Mr Slim MESFAR qui m’a encadré
durant ce projet. Son aide et ses conseils, qu’il m’a apporté lors des différents suivis, ont
continuellement amélioré mon travail.
J’exprime ma sincère gratitude aux membres du jury, qui ont accepté d'évaluer ce projet de fin
d'étude.
Table de Matières
Chapitre 5 : SPRINT 2 – Gestion de Taux d’adoption aux services (Teams & SharePoint) .................. 48
1. Introduction ........................................................................................................................................ 48
2. Objectif attendu et identification des tâches .................................................................................... 48
2.1. Objectif attendu ............................................................................................................................. 48
2.2. Sprint Backlog ............................................................................................................................... 48
3. Analyse détaillée des besoins ............................................................................................................. 50
3.1. Diagramme de cas d’utilisation ..................................................................................................... 50
3.2. Description textuelle des cas d’utilisation ..................................................................................... 50
4. Wireframes des interfaces ................................................................................................................. 52
5. Modélisation conceptuelle .................................................................................................................. 53
5.1. Diagrammes de séquence .............................................................................................................. 53
5.2. Diagramme de classes ................................................................................................................... 55
6. Réalisation ........................................................................................................................................... 57
6.1. Captures d’écran ............................................................................................................................ 57
6.2. Tests et validation.......................................................................................................................... 58
7. Conformité aux exigences non fonctionnelles .......................................................................................... 58
8. Conclusion ................................................................................................................................................... 58
I
Liste des Tableaux
Tableau 1: Tableau de Backlog initial...............................................................................................................22
Tableau 2: Planification prévisionnelle des Sprints .........................................................................................22
Tableau 3: Tableau de Backlog Sprint 1 ...........................................................................................................34
Tableau 4: Description textuelle du cas d’utilisation « Synchronisation des utilisateurs office »...................36
Tableau 5: Description textuelle du cas d’utilisation « MAJ de l’interface de journalisation des données » .36
Tableau 6: Description textuelle du cas d’utilisation - Affichage Nombre email Envoyés/Reçus ...................36
Tableau 7: Dictionnaire de données Sprint 1 ...................................................................................................41
Tableau 8: Tableau de Backlog Sprint 2 ...........................................................................................................49
Tableau 9: Description textuelle du cas d’utilisation – MAJ de la journalisation des données SharePoint ....50
Tableau 10: Description textuelle du cas d’utilisation – MAJ de la journalisation des données Teams .........51
Tableau 11: Description textuelle du cas d’utilisation - Affichage Nbre de connexion SharePoint ................51
Tableau 12: Description textuelle du cas d’utilisation - Affichage Nbre de connexion Teams .......................51
Tableau 13: Dictionnaire de données Sprint 2 .................................................................................................56
Tableau 14: Tableau de Backlog Sprint 3 .........................................................................................................60
Tableau 15: Description textuelle du cas d’utilisation Journalisation/Notification dépassement de quota...61
Tableau 16: Description textuelle du cas d’utilisation « Affichage détail dépassement de quota » ..............62
Tableau 17: Dictionnaire de données Sprint 3 .................................................................................................64
II
Introduction générale
Parce que l’Agilité est aujourd’hui essentielle dans un monde de forte transformation, les entreprises
doivent identifier très vite et en temps réel les points d’amélioration dans l’utilisation de leur système
d’information. Cela permettra de bien gouverner les solutions implémentées et de gérer efficacement
l’augmentation du volume et la complexité des données e-mails, documents, messages instantanés et
autres.
Microsoft 365 [1] combine un ensemble de services puissants conçus pour la gestion et la maintenance
des entreprises à tous les niveaux. En fait, Microsoft 365 offre une nouvelle façon de communication
en équipe grâce à Outlook, SharePoint et Teams qui alimentent toutes les capacités de l’entreprise.
Mais, ces services peuvent être limités, et par conséquent, ont besoin des fonctionnalités et d’options
afin de mieux contrôler et mesurer l’état du business, ainsi augmenter la productivité de l’équipe.
L’objectif principal de notre projet est de concevoir puis développer une application « Gestion de la
gouvernance du tenant office 365 » qui permet :
- d’avoir des fonctionnalités d’analyse basées sur les indicateurs afin de faciliter l’adoption
des outils collaboratifs.
- de surveiller et alerter d’une manière intelligente en cas d’une pique et interpréter le temps
restant pour qu'une boite soit saturée.
Cette gouvernance s’occupe de l’utilisation efficace de l’informatique et ses ressources pour
améliorer l’efficacité et la productivité de l’organisation.
Dans ce contexte et dans le cadre de notre projet de fin d’études, nous visons la mise en place d’une
application qu’on dénotera " GMA365" (Governance Management Application) et qui permettra la
gouvernance du tenant office 365 pour gérer le Taux d’Adoption et les Boites à Risque.
Page 1
Le présent rapport permet de détailler les différentes étapes suivies lors du développement de notre
projet. Il se compose de six chapitres.
Dans le premier chapitre, nous commençons par présenter le cadre général du projet, la mission qui
nous a été confiée
Le deuxième chapitre est consacré pour préciser les besoins fonctionnels et non fonctionnels, ainsi
que le cycle de développement adopté pour la mise en œuvre de notre projet
Le troisième chapitre est consacré à la description de l’étude technique de la solution tout en
déterminant les technologies et outils utilisés.
Les chapitres quatre, cinq et six, présentent respectivement les Sprint développés selon la méthode
SCRUM. Dans chaque Sprint, nous décrivons les objectifs, l'analyse des exigences, les modèles
conceptuels ainsi que l'implémentation, les tests et la vérification de l’intégration.
Page 2
C HAPITRE 1 :
CONTEXTE GENERAL
DU PROJET
Page 3
Chapitre 1 : Contexte général du projet
1. Introduction
Dans le premier chapitre, nous nous intéresserons d'abord à l'introduction du cadre global du projet
et à la description des exigences. Il s'agit en fait d'une introduction à l'organisation d'accueil, suivie
de la définition de la tâche, de la présentation du projet et des objectifs à atteindre. Ensuite, nous
étudions et discutons quelques applications similaires existantes, puis nous présentons la solution
proposée.
2. Organisme d’accueil
PROGED International [4] (Figure 1), créée en 2010, est une société de services et d’ingénierie
informatique, qui offre une large gamme de solutions innovantes. Cette gamme a permis de répondre
aux besoins de tout type d’entreprise en matière de portails d’entreprise, de gestion électronique de
documents et d’outils d’aide à la décision d'entreprises sur la plateforme Microsoft SharePoint et
Office 365.
PROJED International comprend environ une dizaine d’ingénieurs et administratifs. Les marchés les
plus envisagés par PROGED International sont le marché national ainsi que le marché français.
Page 4
Chapitre 1 : Contexte général du projet
3. Définition de la mission
3.1. Présentation du projet
La mise en œuvre d’office 365 est un projet qui a des impacts non négligeables sur les modes de
fonctionnement de l’organisation et les comportements des utilisateurs. C’est pourquoi nous
allons examiner la problématique de la gouvernance à mettre en place pour le fonctionnement en
mode courant une fois qu’office 365 aura été déployé et adopté. La solution informatique intitulé
GMA365 comme il est indiqué dans la Figure 2, permet de gouverner les tenant office et de
mieux cibler et attirer les clients potentiels.
Comme le sujet l’indique, notre objectif est de concevoir et de mettre en place un système
« Gestion de la gouvernance du tenant office 365 » qui permet de contrôler l’autonomie à des
entités dans la gestion de la sécurité et d’avoir des fonctionnalités d’analyse basées sur les
indicateurs afin de faciliter l’adoption des outils collaboratifs.
- Créer une interface Dashboard pour visualiser l’état du tenant Microsoft 365
- Visualiser les indicateurs du taux d’adoption :
o Nombre d’e-mail Envoyé/Reçu
o Nombre de connexion aux services (SharePoint & Teams)
- Notifier en cas de dépassement de quota
4. Etude de l’existant
Afin d'approfondir notre compréhension du sujet et avoir une idée plus claire sur notre projet et
ses fonctions attendues, nous avons mené une étude sur des solutions qui s'inscrivent dans le même
cadre que notre projet. Pour cela nous allons étudier, d’une part, la gouvernance des tenants office
Page 5
Chapitre 1 : Contexte général du projet
sous MS 365 et, d’autre part, les solutions de gouvernance sur le marché comme Avepoint et
Govern365.
4.1.1. Prérequis :
Toute solutions consacrées pour la gestion de gouvernance du tenant Microsoft 365 offrent
un ensemble de fonctions assurant la bonne gestion et le monitoring du tenant.
Nous commençons par présenter les définitions des concepts :
- Tenant Microsoft : un « Tenant » représente la bulle indépendante correspondant à une
société hébergée dans Office 365. Dans ce tenant, seuls les utilisateurs et les informations de
l’entreprise y sont stockés et ne sont visibles que de l’entreprise en question.
- La gouvernance informatique : consiste à définir des processus définis pour une utilisation
informatique efficace et protégée. C’est une tâche essentielle pour les entreprises.
4.1.2. Gouvernance sous Microsoft 365
Microsoft propose des solutions pour la gestion de la gouvernance, tels que : Gouvernance de
la collaboration, Gouvernance des informations de Microsoft (MIG) et Microsoft Information
Protection (MIP)
- Gouvernance de la collaboration [11] : La gouvernance de la collaboration consiste à gérer
l’accès des utilisateurs aux ressources, à respecter les normes de votre entreprise et à garantir
la sécurité de vos données.
- Gouvernance des informations de Microsoft (MIG) [12] : il s’agit d’utiliser les fonctionnalités
de gouvernance des informations de Microsoft (parfois abrégé en MIG) pour gérer les données
en matière de conformité ou d’obligations réglementaires.
- Microsoft Information Protection (MIP) [13] : Les fonctionnalités MIP sont incluses dans la
Conformité Microsoft 365 et donnent les outils nécessaires pour permettre de connaître les
données, protéger ces données et éviter leur perte.
Page 6
Chapitre 1 : Contexte général du projet
a) Avepoint [14] :
AvePoint Cloud Governance met à la disposition des utilisateurs des ressources informatiques
en libre-service (SaaS) pour migrer, gérer et protéger les données dans Microsoft 365.
Figure 5: Surveillez et créez des rapports sur les activités des utilisateurs
Cette plateforme permet de Contrôler toutes les actions de gestion de DocAve pour surveiller
la conformité des administrateurs aux politiques.
Page 7
Chapitre 1 : Contexte général du projet
b) Govern365 [15] :
Govern 365 est une application qui permet aux utilisateurs finaux de provisionner
intuitivement toutes les charges de travail proposées par Office 365 tout en maintenant le
bon équilibre entre le contrôle administratif et l’autonomisation des utilisateurs dans
Office 365.
Après analyse des solutions cités, nous avons constaté quelques limites parmi lesquelles nous
citons :
Page 8
Chapitre 1 : Contexte général du projet
• Des coûts de licences des applications de gestion de tenant MS 365 très élevées comme suit :
➢ AvePoint: pay as you go,
➢ Govern365 : à partir de 1000$ / mois.
5. Conclusion
Dans ce premier chapitre, nous avons parlé de notre organisme d’accueil puis nous avons décrit une
brève présentation du projet à réaliser. Ainsi, après avoir déterminé la problématique, nous avons
proposé notre solution alternative pour faire face à l’existant.
Dans ce qui suit, nous allons entamer le deuxième chapitre qui fera l’objet de l’analyse et la
spécification des besoins du projet ainsi que la présentation du Backlog produit et la planification de
travail à réaliser.
Page 9
C HAPITRE 2 :
ANALYSE ET
SPECIFICATIONS DES
BESOINS
Page 10
Chapitre 2 : Analyse et spécifications des besoins
1. Introduction
Tout projet ayant un niveau de complexité considérable rend l’adoption d’une méthodologie de
développement une nécessité pour garantir une qualité acceptable et éviter tout retard au niveau des
délais.
La société PROGED suit dans sa gestion des projets la méthodologie Agile Scrum [5] pour diverses
raisons.
En effet ce modèle assure une meilleure collaboration et une meilleure communication avec les
différentes équipes travaillant sur les projets de la société. La méthodologie Agile Scrum se distingue
par le travail de groupe, ses réunions quotidiennes et le suivi continu des projets, ce qui revient par la
facilité de la gestion des changements fréquents. Ce modèle assure une livraison de produits de
qualité, et conformes aux besoins et aux attentes des clients.
Dans notre cas, le projet est réalisé en monôme. Donc, nous essayons d’adapter Scrum à nos besoins.
Ainsi, nous utiliserons l’ensemble des bonnes pratiques suivantes :
- l’extraction des fonctionnalités à développer après la réalisation du Backlog du produit,
- le découpage du projet en un ensemble de sprints,
- le découpage de chaque sprint en un ensemble de tâches,
- une réunion quotidienne avec l’encadrant pour le suivi de l’avancement,
- une réunion hebdomadaire chaque mercredi où nous essayons de répondre à ces trois
questions :
• Quelles sont les tâches effectuées ?
• Quelles sont les difficultés rencontrées ?
• Quelles sont les tâches futures à réaliser ?
Page 11
Chapitre 2 : Analyse et spécifications des besoins
Lorsque nous disons Scrum, il faut comprendre les mots concepts suivants :
Un Scrum Master : Le responsable de la compréhension, de l'adhésion et de la mise en œuvre de la
méthode Scrum qu'il maîtrise parfaitement.
Product Owner : Il porte la vision du produit à réaliser. Il travaille en interaction avec l’équipe de
développement qui doit suivre ses instructions.
Une équipe De Développement : Elle est chargée de transformer les besoins définis par le Product
Owner en fonctionnalités utilisables.
Les artefacts du Scrum se résument ci-dessous :
Le product Backlog (ou carnet du produit) : Il s'agit d'une liste hiérarchisée des exigences initiales
du client concernant le produit à réaliser.
Le Sprint Backlog (ou carnet de Sprint) : C'est le plan détaillé de la réalisation de l'objectif du
Sprint, défini lors de la réunion de planification du Sprint.
L'incrément : Il s'agit de l'ensemble des éléments terminés du product backlog pour le Sprint en
cours, ainsi que ceux des Sprints précédents.
Le Burndown Chart (ou graphique d'avancement) : Ce graphique simple indique l'état
d'avancement dans la réalisation des tâches du Sprint backlog. Il s’agit du tracé de la charge de travail
restante (exprimée généralement en heures) en fonction du temps (en jours).
S’il parait un peu difficile de déterminer la méthodologie de Scrum, sa mise en œuvre est aussi
simple et efficace. Voici son illustration :
Page 12
Chapitre 2 : Analyse et spécifications des besoins
3. Modélisation conceptuelle
Dans cette section, nous décrivons la méthode de conception et le langage de modélisation utilisés
dans le cadre de notre projet.
L’UML (Unified Modelling Language) [6] est une notation qui permet de modéliser un problème de
façon standard. Ce langage est né de la fusion de plusieurs méthodes existantes auparavant, et il est
devenu une référence en termes de modélisation objet, à un tel point que sa connaissance devienne
indispensable pour un développeur.
UML définit neuf diagrammes pour donner à l’utilisateur les moyens de visualiser et de manipuler
des éléments de modélisation : diagrammes d’activités, diagrammes de cas d’utilisation, diagrammes
de classes, diagrammes de collaboration, diagrammes de composants, diagrammes de déploiement,
diagrammes d’états transitions, diagrammes d’objets et diagrammes de séquences. Le choix d’UML,
comme outil de modélisation des flux et des différentes actions de l’application, peut être justifié par
plusieurs raisons :
Page 13
Chapitre 2 : Analyse et spécifications des besoins
La création d’une application passe par l'élaboration de deux parties, la première partie c'est la
configuration et la mise en place de l'espace d’administration (Back Office).
A traves l’espace d’administration, l’administrateur de la solution peut :
- Inscription des responsables entités
- Gestion des entités
- Gérer les journalisations des transactions.
- Gérer le paramétrage du quota.
La seconde partie concerne la création et la mise en place des pages accessibles par tous les
responsables entités (Front Office),
Les fonctionnalités accessibles par les responsables entités peuvent être :
- Créer un Dashboard qui décrit l’état du tenant
- Gérer les indicateurs du taux d’adoption :
o Nombre d’e-mail Envoyé/Reçu
o Nombre de connexion aux services (SharePoint & Teams)
- Notification par alerte en cas de dépassement de quota
Page 14
Chapitre 2 : Analyse et spécifications des besoins
Il s’agit de suivre le taux d’adoption des utilisateurs pour les services Microsoft 365. En standard,
l’accès à ces indicateurs nécessite le droit d'administration et un effort important pour collecter toutes
les informations nécessaires.
La solution consiste à permettre aux administrateurs métiers (Responsable de service par exemple)
de suivre les indicateurs de ses collaborateurs, agréger et simplifier la lecture de ces informations
avec des rapports et des graphiques.
Un « indicateur » est une information sélectionnée parmi les autres parce qu'elle parait
particulièrement significative ou représentative d'une situation donnée.
Les indicateurs sont des éléments d’information à construire à partir des données disponibles dans les
bases de données. L’essentiel est qu’il y ait possibilité de comparaison :
✓ avec la valeur du même indicateur ailleurs (si possible dans un site de caractéristiques
identiques)
✓ avec une valeur antérieure du même indicateur.
Dans notre projet nous allons gérer les Indicateurs de fonctionnement qui permettent de donner une
image de l’activité des utilisateurs sur les différents services d’Office 365 [2] .
Ce type d’indicateurs est lié à la disponibilité des données sous Office 365 qui nécessite la
journalisation des données pour pouvoir réaliser un comparatif entre les données historiques et J-1
par exemple.
Nous allons gérer les indicateurs de fonctionnement suivants :
• Contrôler le trafic des boîtes aux lettres et comprendre l’adoption d’Exchange Online
dans une organisation :
Résumé du trafic des boîtes aux lettres : Nombre d’e-mail Envoyés/Reçus
• Activité d’ouverture de session d’utilisateur
Nombre de connexions aux services (SharePoint & Teams) par période.
L’évolution des boîtes aux lettres en termes de stockage, pose un problème aux services
informatiques.
La solution consiste à surveiller et alerter d’une manière intelligente en cas d’un pique et interpréter
le temps restant pour qu'une boite soit saturée.
Page 15
Chapitre 2 : Analyse et spécifications des besoins
Pour toutes les boîtes aux lettres de l’organisation, nous devons afficher instantanément des détails
sur la taille actuelle, les restrictions de taille et les statistiques de comparaison entre la taille et le quota
alloué.
Pour ce faire, nous allons contrôler le trafic des boîtes aux lettres et comprendre l’adoption
d’Exchange Online dans une organisation en suivant les trois étapes suivantes :
a) Identification de la Taille des boîtes aux lettres
Cette étape consiste à identifier la taille des boites aux lettres utilisateurs sur Microsoft 365 qui
indique le nombre d'éléments dans chaque boîte aux lettres, la taille de tous les éléments dans une
boîte aux lettres particulière, la taille totale de la table des messages et la taille disponible de cette
table.
b) Définition des restrictions de taille des boîtes aux lettres
Imposer des restrictions de taille aux boîtes aux lettres permet aux administrateurs de veiller plus
facilement à ce que les utilisateurs n'occupent pas trop d'espace de stockage sur le serveur.
Pour ce faire, nous allons définir pour tous les utilisateurs des quotas de boîte aux lettres pour
l'émission d'un avertissement sur les limites définies, l'interdiction d'envoi ou l'interdiction de
réception. Il affiche également des indicateurs comme la taille de l'archive, son quota affecté et
l'avertissement basé sur la consommation de quota.
c) Taille actuelle des boîtes aux lettres par rapport aux quotas
Cette étape permet de préparer toutes les boîtes aux lettres et indique leurs tailles actuelles par rapport
à leurs quotas alloués pour :
- En cas de dépassement, créer des alertes personnalisées pour une notification par e-mail en
temps réel.
- Génération d’un rapport global ou détaillé.
Les administrateurs peuvent ainsi garantir une gestion des boîtes aux lettres efficace et éviter que la
consommation ne dépasse le quota défini.
- Les erreurs :
Les ambigüités doivent être signalées par des messages d’erreurs bien organisés pour bien
guider l’utilisateur et le familiariser avec notre solution.
- Ergonomie des interfaces :
L’application doit être adaptée à l’utilisateur sans qu’il ne fournisse aucun effort (utilisation
claire et facile) de point de vue navigation entre les différentes pages, couleurs et mise en
textes utilisés : standard Microsoft.
- Sécurité :
Notre solution doit respecter surtout la confidentialité des données personnelles.
- Aptitude à la maintenance et la réutilisation :
Le système doit être conforme à une architecture standard et claire permettant sa maintenance
et sa réutilisation.
- Compatibilité et portabilité :
Un site web quel que soit son domaine, son éditeur et son langage de programmation ne peut
être fiable qu’avec une compatibilité avec tous les navigateurs web et tous les moyens
matériels.
Page 17
Chapitre 2 : Analyse et spécifications des besoins
Page 18
Chapitre 2 : Analyse et spécifications des besoins
Page 19
Chapitre 2 : Analyse et spécifications des besoins
SPRINT 1
Taux d’adoption d’Outlook Online
SPRINT 2
Taux d’adoption aux services (Teams & SharePoint)
SPRINT 3
Boîtes à Risque (Messagerie Outlook)
Les 3 sprints décrivent l’interface d’intégration entre Microsoft 365 et la nouvelle application
PROGED-365 via des services Web pour interconnecter et Synchroniser ces deux
environnements afin de fournir une image précise et en temps réels des données utiles pour la
préparation des indicateurs et générer les alertes :
- SPRINT 1 / Taux d’adoption d’Outlook Online
Contrôler le trafic des boîtes aux lettres et comprendre l’adoption d'Outlook Online dans une
organisation → Indicateur : Nombre d’e-mail Envoyé/Reçu (trafic des boîtes aux lettres)
- SPRINT 2 / Gestion des Indicateurs Taux d’adoption :
Activité d’ouverture de session d’utilisateur → Indicateur : Nombre de connexion aux
services (Teams & SharePoint)
- SPRINT 3 / Gestion des Alertes Boîtes à Risque (Messagerie Outlook) :
Notification par alerte en cas de dépassement de quota
Page 20
Chapitre 2 : Analyse et spécifications des besoins
Le Backlog du produit est un outil qui sert à collecter les fonctions essentielles et les raffine
progressivement. C’est l’ensemble des caractéristiques fonctionnelles « user story » ou techniques
« technical story » qui constituent le produit souhaité.
Une user story s’écrit comme suit :
En tant que <rôle>
Je veux < liste de tâches>
Afin de < valeur ajoutée ou résultat>
Pour chaque user story, nous identifions le rang, l’estimation, l'importance et la description. Le
Tableau suivant décrit le Backlog produit de notre application et évoque les User Stories :
Le Tableau ci-dessous résume le backlog produit de notre application web initiale :
Page 21
Chapitre 2 : Analyse et spécifications des besoins
Une fois que le Backlog du produit est suffisamment complet, nous avons trié les « User Stories »
précédemment. Par la suite, nous avons établi, lors de la réunion de planification des sprints, les
durées prévisionnelles du travail à effectuer durant chaque sprint.
Alors pour se repérer, la planification de sprint dans le processus Scrum sert à planifier le travail à
réaliser au cours du sprint. Voilà l’objectif de cette réunion qui servira également à répondre à deux
questions importantes :
- Qu’est-ce qui peut être fait dans ce sprint ?
- Comment transformer les éléments du product Backlog que l’on a sélectionné en un incrément
terminé ?
Mois Février Mars Avril Mai Juin
Analyse de la situation & Auto formation
Etude préliminaire et familiarisation avec le projet
Conception et mise en place de l’environnement
Sprint 1 : Taux d’adoption d’Outlook Online
Sprint 2 : Taux d’adoption aux services
Sprint 3 : Boîtes à Risque (Messagerie Outlook)
Finition et enchaînement entre les sprints
Rédaction du rapport
Tableau 2: Planification prévisionnelle des Sprints
Page 22
Chapitre 2 : Analyse et spécifications des besoins
6. Conclusion
Tout au long de ce chapitre, nous avons préparé notre planification de travail pendant laquelle nous
avons construit notre Backlog de produit en se basant sur les besoins fonctionnels et non fonctionnels.
Finalement nous avons mentionné le découpage de notre solution en des sprints. Dans le chapitre
suivant, nous allons enchainer en présentant notre étude technique.
Page 23
C HAPITRE 3 :
ETUDE TECHNIQUE DE
LA SOLUTION
Page 24
Chapitre 3 : Étude technique de la solution
1. Introduction
Dans ce chapitre, nous abordons les spécifications architecturales de notre projet en présentant le style
architectural utilisé, l’architecture physique et l’architecture système optées.
Ensuite, nous décrivons les spécifications technologiques de notre projet. Nous présentons notre
choix de l’environnement de travail, où nous spécifions l’environnement matériel et logiciel qu’on a
utilisé pour réaliser notre application et enfin nous présentons les technologies et langages de
programmation utilisés.
2. Spécification architecturale
L’architecture est l’ensemble des aspects techniques et applicatifs qui sont importants pour un
logiciel. Les choix architecturaux influent sur la réussite ou l’échec d’un projet.
La Figure 12 montre l’architecture système de notre application. Dans la partie front, nous avons
travaillé avec React js alors que dans la partie back nous avons travaillé avec Microsoft Power
Automate. React communique avec les API avec des données de type JSON et enregistre les données
dans une base de données Microsoft SQL Server.
GMA365 utilise l’outil de développement Power Automate et Graph API pour collecter des
informations à partir des tenants de Microsoft 365.
Page 25
Chapitre 3 : Étude technique de la solution
Les informations collectées sont ensuite stockées dans la base de données configurée dans le
GMA365, pour traitement et analyse. Ces informations peuvent être récupérées sous forme de
rapports, à tout moment.
Server : Azure
Page 26
Chapitre 3 : Étude technique de la solution
3. Spécification technologique
Dans cette partie, nous menons une étude technique où nous décrivons les ressources logicielles utilisées
dans le développement de notre projet. Nous présentons alors notre choix de l’environnement de travail,
dans lequel nous spécifions l’environnement matériel et logiciel et les Technologies et langages de
programmation que nous avons utilisés pour réaliser cette application.
a) Système d’exploitation :
Microsoft Windows 10 : Le choix de la plateforme de développement
est important pour la réalisation d’un projet. Nous avons choisi Windows
10 Professionnel comme un système d’exploitation pour notre projet
b) Outils de conception :
Visual Paradigm : Le choix de la plateforme de développement est
important pour la réalisation d’un projet. Nous avons choisi Windows 10
Professionnel comme un système d’exploitation pour notre projet
c) Environnement de développement :
Lors de l’implémentation de notre application, nous avons recouru aux différents logiciels.
Dans la suite, nous allons détailler cet environnement.
Visual Studio Code [9] : est un éditeur de code source léger mais
puissant qui s’exécute sur le bureau de l’utilisateur et est disponible
pour Windows, macOS et Linux. Il est livré avec un support intégré
pour JavaScript, TypeScript et Node.js et dispose d’un écosystème
riche d’extensions pour d’autres langages (tels que C++, C#, Java,
Pyton, PHP, Go) et d’exécution (tels que .NET et Unity)
Page 27
Chapitre 3 : Étude technique de la solution
Page 28
Chapitre 3 : Étude technique de la solution
React js [3] : est une bibliothèque JavaScript utilisée pour créer des
composants d'interface utilisateur réutilisables et de faciliter la création
d'application web monopage, via la création de composants dépendant
d'un état et générant une page HTML à chaque changement d'état.
Page 29
Chapitre 3 : Étude technique de la solution
b) Langage de programmation
Power Automate [17] : Power Automate est un service qui vous aide à
créer des workflows automatisés entre vos applications et services
favoris pour synchroniser des fichiers, obtenir des notifications,
collecter des données, etc.
Voici quelques exemples de ce que vous pouvez faire avec Power
Automate.
• Automatiser les processus d’entreprise
• envoyer des rappels automatiques sur les tâches en retard ;
• déplacer des données métier entre des systèmes selon un
calendrier ;
• connecter à près de 300 sources de données ou à toute API
accessible au public ;
Page 30
Chapitre 3 : Étude technique de la solution
4. Conclusion
Tout au long de ce chapitre nous avons présenté l’environnement de développement matériel et
logiciel ainsi que l’architecture que nous avons utilisé tout au long de notre projet. Dans le chapitre
suivant, nous détaillerons le SPRINT 1.
Page 31
C HAPITRE 4 :
SPRINT 1 :
GESTION DE TAUX
D’ADOPTION
D’OUTLOOK ONLINE
Page 32
Chapitre 4 : SPRINT 1 – Gestion de Taux d’adoption
d’Outlook Online
1. Introduction
Puisque Scrum est choisi comme méthode de gestion de projets, ce chapitre qui fait l’objet d’une
présentation du premier sprint, va être réparti selon les exigences de Scrum. En effet pour chaque Sprint,
il s’agit, dans un premier temps, de définir l’objectif attendu et élaborer le Sprint Backlog, ensuite il va
falloir présenter la conception et la réalisation.
Les fonctionnalités réalisées durant le sprint sont sélectionnées dans le « product backlog » renseigné
par le « product owner ». L’équipe de développement se base sur leur estimation de la difficulté de
réalisation des fonctionnalités pour définir des priorités.
Le Tableau ci-dessous présente le Backlog du premier sprint et regroupe les fonctionnalités qui seront
développées au sein de ce sprint.
Page 33
Chapitre 4 : SPRINT 1 – Gestion de Taux d’adoption d’Outlook Online
Page 34
Chapitre 4 : SPRINT 1 – Gestion de Taux d’adoption d’Outlook Online
Page 35
Chapitre 4 : SPRINT 1 – Gestion de Taux d’adoption d’Outlook Online
Page 36
Chapitre 4 : SPRINT 1 – Gestion de Taux d’adoption d’Outlook Online
- Dashboard
Page 37
Chapitre 4 : SPRINT 1 – Gestion de Taux d’adoption d’Outlook Online
5. Modélisation conceptuelle
Nous passons à présent, à la présentation de la conception de ce premier sprint. Pour cela,
nous allons documenter quelques cas d’utilisation à travers la construction des diagrammes de
séquence nécessaires. Nous proposons ensuite le diagramme de classes.
Page 38
Chapitre 4 : SPRINT 1 – Gestion de Taux d’adoption d’Outlook Online
Page 39
Chapitre 4 : SPRINT 1 – Gestion de Taux d’adoption d’Outlook Online
a) Dictionnaire de données
Pour mieux comprendre l'aspect d'intégration du module, nous allons va aussi expliquer les
classes existantes :
Page 40
Chapitre 4 : SPRINT 1 – Gestion de Taux d’adoption d’Outlook Online
b) Diagramme
Page 41
Chapitre 4 : SPRINT 1 – Gestion de Taux d’adoption d’Outlook Online
6. Réalisation
Dans cette partie, nous présentons quelques captures d’écran de notre application afin de
mieux comprendre la réalisation des différentes tâches de ce Sprint.
Afin de communiquer avec un tenant Microsoft 365, nous avons besoins de créer une
application AD avec des permissions Graph API pour consommer le tenant. La Figure 22
montre notre application crée sur azure AD :
Page 42
Chapitre 4 : SPRINT 1 – Gestion de Taux d’adoption d’Outlook Online
Dans la Figure 23 L’application est installée dans le tenant du destinataire, nous pouvons accéder à
cette application à travers la liste des applications Microsoft 365 :
Page 43
Chapitre 4 : SPRINT 1 – Gestion de Taux d’adoption d’Outlook Online
Cette interface [Figure 25] présente la page indicateur Outlook, pour les responsables entités,
qui contient : le totale des emails envoyés et reçus avec le nombre de la journée données des
emails envoyés et reçus.
Page 44
Chapitre 4 : SPRINT 1 – Gestion de Taux d’adoption d’Outlook Online
6.2.1. Test
Durant cette partie, nous avons eu quelques problèmes d’adaptations d’une part, sur le nouvel
environnement cloud Azure et la manière communication avec les services office 365 et d’autre
part, sur les nouvelles technologies.
6.2.2. Validation
A la fin du sprint nous avons effectué une réunion avec notre encadreur Mr AHMED MEHDI,
après le test de l’application, il nous a confirmé que le travail est effectué avec quelques
corrections.
Page 45
Chapitre 4 : SPRINT 1 – Gestion de Taux d’adoption d’Outlook Online
8. Conclusion
Dans cette étape de notre projet, nous avons conçu et réalisé notre premier sprint « Taux d’adoption
d'Outlook Online - Indicateur : Nombre d’e-mail Envoyé/Reçu (trafic des boîtes aux lettres » qui
décrit les tâches traitées. Puis nous avons illustré les différents diagrammes UML pour modéliser
notre module. Ainsi, nous avons décrit les interfaces et le fonctionnement des différentes tâches
traitées. Il constitue un premier incrément de notre application. Dans le chapitre suivant, nous
développons notre deuxième sprint.
Page 46
C HAPITRE 5 :
SPRINT 2 :
GESTION DE TAUX
D’ADOPTION AUX
SERVICES (TEAMS &
SHAREPOINT)
Page 47
Chapitre 5 : SPRINT 2 – Gestion de Taux d’adoption aux services
(Teams & SharePoint)
1. Introduction
Puisque Scrum est choisi comme méthode de gestion de projets, ce chapitre qui fait l’objet d’une
présentation du premier sprint, va être réparti selon les exigences de Scrum. En effet pour chaque Sprint,
il s’agit, dans un premier temps, de définir l’objectif attendu et élaborer le Sprint Backlog, ensuite il va
falloir présenter la conception et la réalisation.
Les fonctionnalités réalisées durant le sprint sont sélectionnées dans le « product backlog » renseigné
par le « product owner ». L’équipe de développement se base sur leur estimation de la difficulté de
réalisation des fonctionnalités pour définir des priorités.
Le Tableau ci-dessous présente le Backlog du deuxième sprint et regroupe les fonctionnalités qui
seront développées au sein de ce sprint.
Page 48
Chapitre 5 : SPRINT 2 – Gestion de Taux d’adoption aux services (Teams & SharePoint)
Page 49
Chapitre 5 : SPRINT 2 – Gestion de Taux d’adoption aux services (Teams & SharePoint)
3.2.1. Journalisation des données d’adoption « Nombre de connexion aux services SharePoint »
Cas d’utilisation
Acteurs Administrateur système
Précondition L’administrateur doit être authentifié.
Post-condition Les informations des données d’adoption vont être mises à jour.
Scénario nominal 1.L’administrateur active le service de la journalisation des données des
indicateurs.
2. Le système affiche l’état activé.
3. Le système cherche les données office : « Nombre de connexion au
service SharePoint »
4. Le système enregistre les données d’adoption vers le journal
Scénario alternatif 1a. Problème technique d’activation du service
1a.3. Reprise de l’étape 1
Tableau 9: Description textuelle du cas d’utilisation – MAJ de la journalisation des données SharePoint
Page 50
Chapitre 5 : SPRINT 2 – Gestion de Taux d’adoption aux services (Teams & SharePoint)
3.2.2. Journalisation des données d’adoption « Nombre de connexion aux services Teams »
Cas d’utilisation
Acteurs Administrateur système
Précondition L’administrateur doit être authentifié.
Post-condition Les informations des données d’adoption vont être mises à jour.
Scénario nominal 1.L’administrateur active le service de la journalisation des données des
indicateurs.
2. Le système affiche l’état activé.
3. Le système cherche les données office : « Nombre de connexion au
service Teams)»
4. Le système enregistre les données d’adoption vers le journal
Scénario alternatif 1a. Problème technique d’activation du service
1a.3. Reprise de l’étape 1
Tableau 10: Description textuelle du cas d’utilisation – MAJ de la journalisation des données Teams
Cas d’utilisation
Acteurs Responsable Entité
Précondition Le responsable Entité doit être authentifié.
Post-condition Affichage de l’indicateur Nombre de connexion au service SharePoint
Scénario nominal 1. Le Responsable Entité demande l’interface d’affichage des indicateurs
2. Le système affiche le formulaire d’affichage passer des indicateurs
3. Le Responsable Entité saisit la période
4. Le système vérifie les données saisies.
Scénario alternatif 3a. Le commerçant saisit des données manquantes/invalides.
4a.1. Le système affiche un message d’erreur.
4a.2. Reprise de l’étape 3
Tableau 11: Description textuelle du cas d’utilisation - Affichage Nbre de connexion SharePoint
Cas d’utilisation
Acteurs Responsable Entité
Précondition Le responsable Entité doit être authentifié.
Post-condition Affichage de l’indicateur Nombre de connexion au service Teams
Scénario nominal 1. Le Responsable Entité demande l’interface d’affichage des indicateurs
2. Le système affiche le formulaire d’affichage passer des indicateurs
3. Le Responsable Entité saisit la période
4. Le système vérifie les données saisies.
Scénario alternatif 3a. Le commerçant saisit des données manquantes/invalides.
4a.1. Le système affiche un message d’erreur.
4a.2. Reprise de l’étape 3
Tableau 12: Description textuelle du cas d’utilisation - Affichage Nbre de connexion Teams
Page 51
Chapitre 5 : SPRINT 2 – Gestion de Taux d’adoption aux services (Teams & SharePoint)
Page 52
Chapitre 5 : SPRINT 2 – Gestion de Taux d’adoption aux services (Teams & SharePoint)
5. Modélisation conceptuelle
Nous passons à présent, à la présentation de la conception de ce premier sprint. Pour cela,
nous allons documenter quelques cas d’utilisation à travers la construction des diagrammes de
séquence nécessaires. Nous proposons ensuite le diagramme de classes.
Page 53
Chapitre 5 : SPRINT 2 – Gestion de Taux d’adoption aux services (Teams & SharePoint)
Page 54
Chapitre 5 : SPRINT 2 – Gestion de Taux d’adoption aux services (Teams & SharePoint)
Page 55
Chapitre 5 : SPRINT 2 – Gestion de Taux d’adoption aux services (Teams & SharePoint)
5.2.2. Diagramme
Page 56
Chapitre 5 : SPRINT 2 – Gestion de Taux d’adoption aux services (Teams & SharePoint)
6. Réalisation
Dans cette partie, nous présentons quelques captures d’écran de notre application afin de
mieux comprendre la réalisation des différentes tâches de ce Sprint.
o Front SharePoint
Page 57
Chapitre 5 : SPRINT 2 – Gestion de Taux d’adoption aux services (Teams & SharePoint)
6.2.3. Test
6.2.4. Validation
A la fin du sprint nous avons effectué une réunion avec notre encadreur Mr AHMED MEHDI,
après le test de l’application, il nous a confirmé que le travail est effectué.
8. Conclusion
Dans cette étape de notre projet, nous avons conçu et réalisé notre deuxième sprint « Nombre de
connexion aux services (Teams & SharePoint) » qui décrit les tâches traitées. Puis nous avons illustré
les différents diagrammes UML pour modéliser notre module. Ainsi, nous avons décrit les interfaces
et le fonctionnement des différentes tâches traitées.
Page 58
C HAPITRE 6 :
SPRINT 3 :
GESTION DES BOITES A
RISQUE (MESSAGERIE
OUTLOOK)
Page 59
Chapitre 6 : SPRINT 3 – Gestion des Boîtes à Risque (Messagerie
Outlook)
1. Introduction
Puisque Scrum est choisi comme méthode de gestion de projets, ce chapitre qui fait l’objet d’une
présentation du premier sprint, va être réparti selon les exigences de Scrum. En effet pour chaque Sprint,
il s’agit, dans un premier temps, de définir l’objectif attendu et élaborer le Sprint Backlog, ensuite il va
falloir présenter la conception et la réalisation.
Un sprint est une itération de développement de la méthode Scrum. Il dure généralement entre
deux et quatre semaines. Tous les Sprints ont une durée constante et ne se chevauchent jamais, c’est-
à-dire qu’un Sprint ne peut pas démarrer tant que le précédent n’est pas encore terminé.
Les fonctionnalités réalisées durant le sprint sont sélectionnées dans le « product backlog » renseigné
par le « product owner ». L’équipe de développement se base sur leur estimation de la difficulté de
réalisation des fonctionnalités pour définir des priorités.
Page 60
Chapitre 6 : SPRINT 3 – Gestion des Boîtes à Risque (Messagerie Outlook)
Page 61
Chapitre 6 : SPRINT 3 – Gestion des Boîtes à Risque (Messagerie Outlook)
- Boites à Risque
Page 62
Chapitre 6 : SPRINT 3 – Gestion des Boîtes à Risque (Messagerie Outlook)
sur vos appareils. Pour continuer à utiliser ces services, veuillez mettre à niveau votre espace
de stockage Cloud (Archive des emails/fichiers SharePoint) ou réduire l’espace de stockage
que vous utilisez.
Cordialement,
GMA 365
5. Modélisation conceptuelle
Nous passons à présent, à la présentation de la conception de ce premier sprint. Pour cela,
nous allons documenter quelques cas d’utilisation à travers la construction des diagrammes de
séquence nécessaires. Nous proposons ensuite le diagramme de classes.
Page 63
Chapitre 6 : SPRINT 3 – Gestion des Boîtes à Risque (Messagerie Outlook)
Page 64
Chapitre 6 : SPRINT 3 – Gestion des Boîtes à Risque (Messagerie Outlook)
5.2.3. Diagramme
6. Réalisation
Dans cette partie, nous présentons quelques captures d’écran de notre application afin de
mieux comprendre la réalisation des différentes tâches de ce Sprint.
Page 65
Chapitre 6 : SPRINT 3 – Gestion des Boîtes à Risque (Messagerie Outlook)
6.2.5. Test
Par contre, faute de temps, nous n’avons pas compléter le développement de l’affichage du
détail des dépassements de quota des utilisateurs.
6.2.6. Validation
A la fin du sprint nous avons effectué une réunion avec notre encadreur Mr AHMED MEHDI,
après le test de l’application, il nous a confirmé que le travail est effectué.
Page 66
Chapitre 6 : SPRINT 3 – Gestion des Boîtes à Risque (Messagerie Outlook)
8. Conclusion
Dans cette étape de notre projet, nous avons conçu et réalisé notre troisième sprint « Notification par
alerte en cas de dépassement de quota Outlook online » qui décrit les tâches traitées. Puis nous avons
illustré les différents diagrammes UML pour modéliser notre module. Ainsi, nous avons décrit les
interfaces et le fonctionnement des différentes tâches traitées.
Page 67
Conclusion générale et perspectives
Ce travail s’inscrit dans le cadre du stage de fin d’études effectué au sein de la société PROGED
Internationale. L’objectif principal de notre projet est de contribuer à l’amélioration de la gestion du
tenant Microsoft 365.
Dans ce sens, nous avons commencé par une étude théorique sur les spécifications du projet GMA
365, le déroulement de ces différents modules, les solutions existantes et les besoins qui ont amené à
la réalisation de notre projet. Dès que les priorités des exigences de notre projet ont été fixées, nous
avons commencé le processus du travail.
Notre projet a été réalisé en quatre mois pendant lesquels nous sommes arrivés à développer les
différentes fonctionnalités de l’application qui permettant de consulter l’état de notre tenant avec une
manière visuellement attirante et simple.
De plus, GMA365 nous permet d’une part de mettre à la disposition des responsables entités les
indicateurs d’analyse du taux d’adoption relatif à Outlook Online, Teams et SharePoint et d’autre part
bien gérer les boîtes à risque de la messagerie Outlook en appliquant la règle de dépassement de
quota.
Durant notre stage de fin d’étude, nous avons eu l’opportunité de découvrir le monde professionnel
et de maitriser les nouvelles technologies. Un autre point assez pertinent de notre expérience était
l’occasion de travailler avec la méthode Scrum tout au long de la période de développement avec tout
ce qu’elle implique de responsabilité, d’organisation, d’estimation convenable de durée des tâches et
de travail d’équipe. Que ce soit technique ou social, cela nous permet d’améliorer nos compétences.
Notre processus n’est pas simple, nous devons faire face à certaines difficultés, telles que la
compréhension du sujet et l’étude des technologies. Malgré toutes les difficultés rencontrées, nous
avons réussi à mettre en œuvre l’application. Finalement, notre travail ne s’arrête pas à ce niveau.
Plusieurs perspectives peuvent être envisagés. En fait nous ne sommes pas arrivés à la phase de
gestion des entités. Comme perspective, nous souhaitons ajouter des filtres par service pour améliorer
la gestion des administrateurs entités qui est responsable de la consultation de l’utilisation des
différents services par les utilisateurs et ce par l’intégration de l’informatique décisionnelle
(Business Intelligence) pour une analyse plus approfondie des indicateurs.
Indépendamment des contraintes techniques et des défis confrontés, nous avons atteint les objectifs
et nous avons répondu aux exigences du projet.
Page 68
Bibliographie et Webographie
[1]. Microsoft 365 : travaillez en ligne avec OneDrive, SharePoint, Teams, Planner et Outlook
Editions ENI - Myriam GRIS.
[3]. React : Développez le Front End de vos applications web et mobiles avec JavaScript Editions ENI -
Sébastien CASTIEL
[4]. https://www.progedsolutions.com/
[5]. «SCRUM,» [En ligne]. Available: https://www.thierry-pigot.fr/scrum-en-moins-de-10-minutes/
[6]. «UML,» [En ligne]. Available: https://web.maths.unsw.edu.au/~lafaye/CCM/uml/umlintro.htm
[7]. «Bootstrap,» [En ligne]. Available: https://getbootstrap.com/
[8]. «JavaScript,» [En ligne]. Available : https://www.javascript.com/
[9]. https://fr.wikipedia.org/wiki/Visual_Studio_Code
[10]. https://fr.wikipedia.org/wiki/Microsoft_Azure
[11]. https://docs.microsoft.com/fr-fr/microsoft-365/solutions/collaboration-governance-
overview?view=o365-worldwide
[12]. https://docs.microsoft.com/fr-fr/microsoft-365/compliance/manage-information-
governance?view=o365-worldwide
[13]. https://docs.microsoft.com/en-us/microsoft-365/compliance/information-protection?view=o365-
worldwide
[14]. https://www.avepoint.com/fr
[15]. https://www.govern365.com
[16]. https://azure.microsoft.com/fr-fr/services/active-directory/
[17]. https://docs.microsoft.com/fr-fr/power-automate/
[18]. https://azure.microsoft.com/fr-fr/products/azure-sql/database/
Page 69
Résumé
A travers ce document, nous allons décrire en détails les différentes étapes de réalisation du projet.
Abstract
The governance and administration of the Office 365 environment is a set of principles, rules, roles
and responsibilities that guide and oversee the cooperation of all members in carrying out their tasks
with the support of the services offered.
The main objective of our project is to design and then develop a "Holding office governance
management" application.
This application allows entity managers and administrators to govern the management of adoption
rates and the management of risk boxes.
The Technologies used in front "ReactJS, Bootstrap, JavaScript, HTML", in Back "Power Automate,
Graph API", the Deployment "App service" and the Database "Azure SQL Database" with Microsoft
365 "SharePoint, Teams, Outlook ".
Through this document, we will describe in detail the different stages of the project.