0% ont trouvé ce document utile (0 vote)
136 vues67 pages

Rapport Mémoire Merging Chapters

Ce mémoire de fin d'études présente un projet d'automatisation des processus de gestion des factures dans le cadre d'un mastère professionnel en Robotique Avancée et Intelligence Artificielle. Il aborde les problématiques liées à la gestion manuelle des factures et propose des solutions basées sur l'automatisation des processus à l'aide de la Robotic Process Automation (RPA). Le document inclut également une étude des solutions existantes et des méthodologies de travail pour la mise en œuvre du projet.

Transféré par

sinda.hammami
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
0% ont trouvé ce document utile (0 vote)
136 vues67 pages

Rapport Mémoire Merging Chapters

Ce mémoire de fin d'études présente un projet d'automatisation des processus de gestion des factures dans le cadre d'un mastère professionnel en Robotique Avancée et Intelligence Artificielle. Il aborde les problématiques liées à la gestion manuelle des factures et propose des solutions basées sur l'automatisation des processus à l'aide de la Robotic Process Automation (RPA). Le document inclut également une étude des solutions existantes et des méthodologies de travail pour la mise en œuvre du projet.

Transféré par

sinda.hammami
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

Ministère de l’Enseignement Supérieur et de la Recherche Scientifique

Direction Générale des études Technologiques

Institut supérieur des études technologiques de Bizerte


Département de génie électrique

Mémoire de fin d’études pour l’obtention du diplôme de mastère professionnel


en Robotique Avancée et Intelligence Artificielle

Automatisation des Processus de Gestion des


Factures

Elaboré par :

Khadhraoui Seif Eddine


Soutenu le …/…/…
Devant le jury composé de :

Mme/M. ……………………………………. Président

Mme/M. ……………………………………. Rapporteur

Mme/M. ……………………………………. Examinateur

M. Karoui Yassine Encadrant Industriel

Mme Boulehmi Hela Encadrant académique

Année Universitaire 2023/2024


RAIA24.02
Dédicaces

Je dédie cet humble et modeste travail avec grand amour, sincérité


et fierté :

A mes chers parents, source de tendresse, Ridha KHADHRAOUI &


Fatma MALLOULI de noblesse d’affectation. Puisse cette étape
constituer pour vous un motif de satisfaction.

A mon frère Mohamed Amine et ma soeur Siwar, en témoignage de


la fraternité, avec mes souhaits de bonheur, de santé et de succés.

A tous mes collègues professionnels, mes professeurs et mes amis.

Et à tout qui compulse ce modeste travail.

Seif Eddine Khadhraoui

i
Remerciements

Nous tenons à exprimer nos sincères remerciements à notre superviseuse académique, Madame
Hela BOULEHMI, ainsi qu’à nos superviseurs professionnels, Monsieur Yassine El KAROUI,
Monsieur Mohamed Ali SEKMA. Votre soutien, votre expertise et votre guidage tout au long de
ce projet ont été d’une valeur inestimable.

Madame Hela BOULEHMI, nous vous sommes extrêmement reconnaissants pour votre dé-
vouement et votre accompagnement tout au long de notre parcours académique. Votre expertise,
vos conseils éclairés et votre enthousiasme ont été une source constante d’inspiration et de moti-
vation. Votre soutien inconditionnel a été essentiel pour nous permettre d’atteindre nos objectifs et
de réaliser ce projet avec succès.

Monsieur Yassine El Karoui, Monsieur Mohamed Ali SEKMA, nous vous sommes profondé-
ment reconnaissants pour votre encadrement professionnel et votre soutien constant. Vos connais-
sances approfondies, votre expertise technique et votre disponibilité ont été des atouts précieux
pour la réalisation de ce projet. Votre implication et vos conseils avisés ont grandement contribué
à notre apprentissage et à notre développement professionnel.

Enfin, nous souhaitons exprimer notre gratitude à tous les membres de l’équipe RPA du SI-
NORFI, ainsi qu’à tous ceux qui ont contribué de près ou de loin à ce projet. Votre collaboration,
votre soutien et votre esprit d’équipe ont été indispensables pour mener à bien cette entreprise.
Nous sommes fiers de faire partie d’une équipe aussi talentueuse et dynamique.

Nous tenons à vous remercier du fond du cœur pour votre soutien indéfectible, votre confiance
et votre engagement tout au long de cette expérience enrichissante. Votre contribution a été es-
sentielle pour notre réussite et nous sommes honorés d’avoir pu travailler à vos côtés. Merci pour
votre accompagnement précieux et pour avoir fait de cette aventure une expérience inoubliable.

ii
Table des matières

Introduction générale 1

I Cadre Générale du projet 2


Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1 Organisme d’accueil . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.1 Présentation de l’organisme d’accueil . . . . . . . . . . . . . . . . . . . . 3
1.2 Fiche d’identité . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.3 Domaine d’expertise . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.4 Secteur d’activités et clients potentiels . . . . . . . . . . . . . . . . . . . . 4
2 Contexte du projet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
3 Motivations et Problématiques . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
3.1 La gestion manuelle des factures . . . . . . . . . . . . . . . . . . . . . . . 5
3.2 Le volume des factures chez les entreprises . . . . . . . . . . . . . . . . . 5
3.3 Les inconvénients, impacts et estimations de la gestion manuel . . . . . . . 6
4 Travail demandé . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
5 Concepts clés . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
5.1 Robotic Pocess Automation (RPA) . . . . . . . . . . . . . . . . . . . . . . 7
5.1.1 Types de l’RPA . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
5.1.2 Les étapes d’implémentation de l’RPA . . . . . . . . . . . . . . 8
5.1.3 Les Outils de RPA . . . . . . . . . . . . . . . . . . . . . . . . . 9
5.1.4 Les Bénéfices de l’RPA . . . . . . . . . . . . . . . . . . . . . . 9
5.1.5 Domaines d’utilisation de l’RPA . . . . . . . . . . . . . . . . . . 9
5.2 ROI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
5.3 BPMN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
5.4 PDD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
5.5 Données structurées . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
5.6 Données semi-structurées . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
5.7 Données non-structurées . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
5.8 OCR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
5.9 RPA pour le traitement des documents non-structurés . . . . . . . . . . . . 11
5.9.1 Robots logiciels automatisés . . . . . . . . . . . . . . . . . . . . 11
5.9.2 RPA cognitive . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
5.9.3 Processus de sélection en tant que candidat RPA . . . . . . . . . 11
5.10 La compréhension des documents (Document Understanding) . . . . . . . 12
5.10.1 Définition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
5.10.2 Les principaux aspects . . . . . . . . . . . . . . . . . . . . . . . 12
5.10.3 Les applications du (DU) . . . . . . . . . . . . . . . . . . . . . 12
5.11 Generative AI ou IA Génératif . . . . . . . . . . . . . . . . . . . . . . . . 13
5.11.1 Définition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
5.11.2 Description du fonctionnement . . . . . . . . . . . . . . . . . . 13

iii
Seif eddine Khadhraoui Automatisation de gestion des factures

5.11.3 Domaines d’application . . . . . . . . . . . . . . . . . . . . . . 13


6 Etude de l’existant . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
6.1 Présentation et critique des solutions existantes sur le marché . . . . . . . 14
7 Solutions Proposées . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
7.1 Solution 1 : Développer un modèle ML et l’intégrer avec le robot . . . . . . 15
7.2 Solution 2 : Utiliser les modèles et les classificateurs de l’RPA . . . . . . . 15
8 Choix de solution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

II Conception et planification 17
Introduction
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
1 Méthodologie de travail . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
1.1 Comparaion des méthodologies de gestion de projet . . . . . . . . . . . . . 18
1.2 Méthodologie Agile SCRUM . . . . . . . . . . . . . . . . . . . . . . . . . 19
1.2.1 Rôles SCRUM . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
1.3 Phases du Sprint . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
2 Etude préliminaire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
2.1 Identification des Acteurs . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
2.2 Besoins Fonctionnels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
2.2.1 Classification automatisée et intelligente des documents : . . . . 20
2.2.2 Extraction automatisée et précise des données : . . . . . . . . . . 20
2.2.3 Export automatisé des données extraites : . . . . . . . . . . . . . 20
2.3 Besoins Non Fonctionnels . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.3.1 Performance : . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.3.2 Extensibilité et maintenabilité : . . . . . . . . . . . . . . . . . . 21
2.3.3 Convivialité : . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.3.4 La scalabilité horizontale : . . . . . . . . . . . . . . . . . . . . . 21
2.3.5 La réduction de la complexité : . . . . . . . . . . . . . . . . . . 21
3 Planification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
3.1 Backlog de produit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
3.2 Architecture globale du projet . . . . . . . . . . . . . . . . . . . . . . . . 23
4 Environnement du travail . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
4.1 Environnement Matériel . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
4.2 Environnement Logiciel . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
4.2.1 Choix de l’outil RPA . . . . . . . . . . . . . . . . . . . . . . . . 24
5 Planification des sprints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
Conclusion
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

III Réalisation et évaluation 28


Introduction
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
1 Sprint 1 : Développement du robot TARS . . . . . . . . . . . . . . . . . . . . . . 29
1.1 Sprint Backlog . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
1.2 Outil RPA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
1.2.1 UiPath Studio . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
1.2.2 UiPath Orchestrator . . . . . . . . . . . . . . . . . . . . . . . . 30
1.2.3 UiPath Robot Assistant . . . . . . . . . . . . . . . . . . . . . . . 31
1.3 Définitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
1.3.1 OCR dans UiPath . . . . . . . . . . . . . . . . . . . . . . . . . 31
1.3.2 DU dans UiPath . . . . . . . . . . . . . . . . . . . . . . . . . . 32

iv
Seif eddine Khadhraoui Automatisation de gestion des factures

1.4 Authentification Outlook et téléchargement des documents . . . . . . . . . 33


1.4.1 Installation des packages . . . . . . . . . . . . . . . . . . . . . . 33
1.4.2 Assignation des variables . . . . . . . . . . . . . . . . . . . . . 33
1.4.3 Authentification au compte outlook . . . . . . . . . . . . . . . . 33
1.5 Numérisation des documents . . . . . . . . . . . . . . . . . . . . . . . . . 34
1.6 Classification des documents avec modèles ML . . . . . . . . . . . . . . . 35
1.7 Classification des documents avec l’IA Genératif . . . . . . . . . . . . . . 36
1.8 Extraction des données . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
1.8.1 Extraction des données pour les factures . . . . . . . . . . . . . . 38
1.8.2 Extraction des données pour les chèques bancaires . . . . . . . . 39
1.8.3 Extraction des données pour les bons de commande . . . . . . . 39
1.9 Export des données . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
1.10 Envoie du rapport par mail . . . . . . . . . . . . . . . . . . . . . . . . . . 40
1.11 Vue d’ensemble du Robot TARS . . . . . . . . . . . . . . . . . . . . . . . 41
1.12 Visualisation des Résultats du Robot . . . . . . . . . . . . . . . . . . . . . 42
2 Sprint 2 : Développement de l’interface utilisateur . . . . . . . . . . . . . . . . . . 43
2.1 Sprint Backlog . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
2.2 Création du Super admin . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
2.2.1 Inscription utilisateur . . . . . . . . . . . . . . . . . . . . . . . . 44
2.2.2 Création du page de Login . . . . . . . . . . . . . . . . . . . . . 44
2.2.3 Gestion des comptes et déconnexion . . . . . . . . . . . . . . . . 45
2.2.4 Développement du page d’accueil et le bouton Trigger . . . . . . 45
2.2.5 Connexion entre UiPath et l’interface . . . . . . . . . . . . . . . 46
2.2.6 Développement du Dashboard . . . . . . . . . . . . . . . . . . . 46
3 Sprint 3 : Scalabilité et monitoring . . . . . . . . . . . . . . . . . . . . . . . . . . 47
3.1 Sprint Backlog . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
3.2 Gestion des exceptions pour TARS . . . . . . . . . . . . . . . . . . . . . . 47
3.2.1 Définition des exceptions en RPA . . . . . . . . . . . . . . . . . 47
3.2.2 Les types d’exceptions . . . . . . . . . . . . . . . . . . . . . . . 47
3.2.3 Exceptions rencontrées dans notre projet . . . . . . . . . . . . . 48
3.3 Optimisation du TARS . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
3.4 Monitoring du robot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
3.4.1 Export du robot vers UiPath Cloud . . . . . . . . . . . . . . . . 50
3.4.2 Plateforme UiPath Orchestrator . . . . . . . . . . . . . . . . . . 50
3.4.3 Les déclencheurs des Robots . . . . . . . . . . . . . . . . . . . . 51
4 Évaluataion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
4.1 RPA Assesment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
4.2 ROI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
Conclusion
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54

Conclusion générale 54

Bibliographie 56

Annexes 57

v
Table des figures

I.1 Logo du société SINORFI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3


I.2 Les étapes d’implémentation de l’RPA . . . . . . . . . . . . . . . . . . . . . . . . 8
I.3 Types des RPA pour le traitement des documents . . . . . . . . . . . . . . . . . . 11
I.4 Fonctionnement du IA Générative . . . . . . . . . . . . . . . . . . . . . . . . . . 13

II.1 Le process SCRUM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19


II.2 Architecture du projet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
II.3 Logo de UiPath . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
II.4 Planification des sprints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

III.1 Capture d’écran Uipath Studio . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30


III.2 UiPath Orchestrator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
III.3 UiPath Robot Assistant . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
III.4 Activité Multiple Assign . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
III.5 Activités Outlook . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
III.6 Activité Digitize . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
III.7 Activité Classify Document . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
III.8 Activité Classify Document avec Generative classifier . . . . . . . . . . . . . . . . 36
III.9 Classification des documents avec Generative Classifier . . . . . . . . . . . . . . . 36
III.10Activité du déplacement des documents . . . . . . . . . . . . . . . . . . . . . . . 37
III.11Activité Extract Document Data . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
III.12Informations extraites depuis les factures . . . . . . . . . . . . . . . . . . . . . . . 38
III.13Informations extraites depuis les chèques . . . . . . . . . . . . . . . . . . . . . . . 39
III.14Informations extraites depuis les bons de commande . . . . . . . . . . . . . . . . . 39
III.15Processus Excel pour export des données . . . . . . . . . . . . . . . . . . . . . . . 40
III.16Activité envoie du rapport par mail . . . . . . . . . . . . . . . . . . . . . . . . . . 40
III.17Vue d’ensemble du robot TARS . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
III.18Processus du robot TARS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
III.19Résultat de l’extraction des données d’une facture avec TARS . . . . . . . . . . . . 42
III.20Envoi du rapport par mail . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
III.21Création du super admin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
III.22Page d’inscription des utilisateurs . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
III.23Page de Login User . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
III.24Gestion des informations utilisateur . . . . . . . . . . . . . . . . . . . . . . . . . 45
III.25Page d’accueil de l’application . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
III.26Capture de code du l’envoi de mail . . . . . . . . . . . . . . . . . . . . . . . . . . 46
III.27Dashboard du Robot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
III.28Exception de taxonomy OCR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
III.29Exception du API pour l’extraction des données . . . . . . . . . . . . . . . . . . . 48
III.30Durée de process avant l’optimisation . . . . . . . . . . . . . . . . . . . . . . . . 49
III.31Durée de process après l’optimisation . . . . . . . . . . . . . . . . . . . . . . . . 49

vi
Seif eddine Khadhraoui Automatisation de gestion des factures

III.32Publication du robot TARS sur UiPath Orchestrator . . . . . . . . . . . . . . . . . 50


III.33Dashboard UiPath Orchestrator . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
III.34Trigger du robot TARS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51

vii
Liste des tableaux

I.1 Inconvénients et impact estimé du traitement manuel[2] . . . . . . . . . . . . . . . 6


I.2 Domaines d’utilisation de l’RPA[4] . . . . . . . . . . . . . . . . . . . . . . . . . . 9
I.3 Description des Logiciels existant sur le marché[12] . . . . . . . . . . . . . . . . . 14
I.4 Comparaison des solutions proposées . . . . . . . . . . . . . . . . . . . . . . . . . 15

II.1 Tableau comparative entre les méthodologies de gestion de projet . . . . . . . . . . 18


II.2 Backlog du produit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
II.3 Comparaison des Outils RPA Populaires[12] . . . . . . . . . . . . . . . . . . . . . 24

III.1 Sprint Backlog du Sprint 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29


III.2 Comparaison entre Tesseract et omnipage OCR[22] . . . . . . . . . . . . . . . . . 31
III.3 Les algorithmes ML utilisés par UiPath Document Understanding[23] . . . . . . . 32
III.4 Comparaison entre les Classificateurs ML et Classificateurs Génératifs d’UiPath . . 37
III.5 Sprint 2 Backlog . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
III.6 Sprint 3 Backlog . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
III.7 Évaluation du temps de traitement . . . . . . . . . . . . . . . . . . . . . . . . . . 52
III.8 Êvaluation du Coût de traitement . . . . . . . . . . . . . . . . . . . . . . . . . . . 53

viii
Liste des Abréviations

ladis washroom
RPA : Robotic Process Automation
RH : Ressources Humaine ETL : Extract Transform Load
GMAO : Gestion de Maintenance Assisté par ordinateur
OCR : Optical Character Recognition
AI : Aritificial Intelligence
IA : Intelligence Artificielle
ML : Machine Learning
DL : Deep Learning
NLP : Natural Language Processing
ERP : Entreprise Resource Planning
PDD : Process Definition Document
JSON : JavaScript Object Notation
DU : Document Understanding
HTML : HyperText Markup Language
CSS : Cascading Style Sheets
API : Application Programming Interface
SMTP : Simple Mail Transfer Protocol
PNG : Portable Network Graphics
JPEG : Joint Photographic Experts Group
PDF : Portable Document Format
Go : Giga-Octet
SVM : Support Vector Machine
CNN : Convolutional Neural Network
RNN : Recurrent Neural Network
LSTM : Long Short-Term Memory
BoW : Bag Of Words
TF-IDF : Term Frequency Inverse Document Frequency

ix
Introduction Générale

L’intelligence artificielle (IA) est un domaine de l’informatique qui vise à créer des systèmes
capables d’accomplir des tâches nécessitant normalement l’intelligence humaine.L’IA utilise des
algorithmes avancés et des techniques d’apprentissage automatique pour analyser des données,
identifier des modèles et effectuer des prédictions ou des actions autonomes.
La RPA, ou automatisation des processus robotique, est une technologie qui permet d’automa-
tiser les tâches répétitives et routinières. Elle utilise des robots logiciels pour limiter les actions
humaines sur des applications informatiques. C’est une technologie mature qui a déjà été adoptée
par de nombreuses entreprises dans le monde entier. Elle a permis de révolutionner la manière de
gérer les tâches routinières et répétitives, en libérant les employés pour se concentrer sur des tâches
à plus forte valeur ajoutée.
Il est évident que le processus du traitement des factures exige une analyse des documents, c’est
une tâche importante pour les entreprises. Elle permet de collecter et de traiter des données sur les
documents financiers. Cependant, cette analyse peut être fastidieuse et coûteuse lorsqu’elle est
réalisée manuellement. Afin d’extraire une information d’une facture ou d’autre document l’agent
se trouve obligé d’ouvrir le document et de sélectionner ou réécrire l’information manuellement.
Après leur succès éblouissant dans des divers secteurs, les robots RPA s’invitent progressive-
ment dans le secteur financier et le domaine RH. Cependant avec ces outils RPA, ce problème peut
être résolu sans intervention humaine en peu temps.
C’est dans ce cadre que se place notre projet de fin d’études qui consiste à la réalisation d’une
solution complète pour l’automatisation d’analyse d’un document financier spécifique à l’entre-
prise SINORFI dans le but de développer un outil automatisé qui utilise les technologies de l’RPA
et de l’IA pour améliorer l’efficacité et la précision de l’analyse.
Ce rapport présente les différentes étapes de notre travail. Il s’articule autour de trois chapitres
Dans un premier chapitre, nous commençons par la présentation de l’organisme d’accueil, ensuite
du sujet en spécifiant son cadre, l’étude et la critique de l’existant, décrire la problématique et enfin
proposer les solutions.
Dans le deuxième chapitre nous allons étudier quelques concepts de base, comme l’analyse
des besoins fonctionnels et non fonctionnels, la méthodologie de gestion de projet, le backlog du
produit, la conception, l’architecture globale et l’environnement du travail.
Le dernier chapitre détaille les fonctionnalités à implémenter et à délivrer à la fin de chaque
sprint et présente les résultats obtenus ainsi que l’évaluation de notre travail réalisé.
Nous finissons par une conclusion générale qui présente une récapitulation du travail réalisé et
par la proposition de nouvelles évolutions et perspectives du projet.

1
Chapitre I

Cadre Générale du projet

2
Seif eddine Khadhraoui Automatisation de gestion des factures

Introduction

Ce chapitre vise à situer notre projet dans un contexte global. En premier lieu nous présenterons
l’organisme d’accueil. Puis, nous exposerons les motivations qui ont conduit à la conception de ce
projet. Pour ce faire, nous décrirons par la suite le sujet traité, ses problématiques ainsi que et les
objectifs à atteindre.
Ensuite, nous présentons les services existants sur le marché afin de les critiquer. Dans une
étape ultérieure, nous proposons des solutions et faisons notre choix.

1 Organisme d’accueil

1.1 Présentation de l’organisme d’accueil

Le projet "Automatisation des processus de gestion des documents financiers" a été élaboré
dans le cadre du projet de fin d’études présenté en vue de décrocher le diplôme Master Profes-
sionnel en Robotique Avancée et Intelligence Artificiel (RAIA) à l’institut supérieur des études
technologiques de Bizerte pour l’année universitaire 2023/2024.
Ce projet a été réalisé au sein de l’entreprise SINORFI, Nous présenterons par la suite l’orga-
nisme d’accueil ainsi que ses différentes activités.

1.2 Fiche d’identité

F IGURE I.1 – Logo du société SINORFI

Fondée en 2003, SINORFI bénéficie de plus de quinze années d’expérience dans l’intégration
et la mise en place du GMAO IBM Maximo et de solutions technologiques permettant la transfor-
mation digitale des entreprises.[1]

3
Seif eddine Khadhraoui Automatisation de gestion des factures

1.3 Domaine d’expertise

Sinorfi est expert dans les domaines suivants :

• Audit : Analyse / Consulting


• Support : Administration et support de la GMAO MAXIMO
• Management : Mise en œuvre de projets pilotes et Tableaux de bord / Test et qualité.
• Intégration : Extraction, transformation et chargement des données avec les outils ETL
(MAXIMO, SAP Data Services, Talend. . .)
• Migration : Installation et migration de plateformes (SAP, IBM MAXIMO. . .)
• Développement : Développement d’applications web et mobiles (IOS, Android)

1.4 Secteur d’activités et clients potentiels

Sinorfi est une société qui conseille, accompagne et met en œuvre les projets de différentes
entreprises. Les secteurs d’activités de Sinorfi Tunisie couvre essentiellement :
• Industrie pharmaceutique (Servier, ALbioma).
• Energie (SUEZ, ENI, GE/STEG).
• Banque Assurance (BH Bank, Gulf Bank Algeria).
• Télécommunications (SFR, Tunisie Telecom, INWI).
• Services (La Poste, ALSTOM, Dassault aviation).
• Transport (SNCF, RATP, Keolis).

2 Contexte du projet

Le projet vise à automatiser les tâches répétitives et complexes de la gestion manuelle chez les
entreprises, en implémentant un système de suivi et de validation.
Il s’agit d’automatiser les processus manuels de gestion des pièces comptables dans les en-
treprises, en se concentreront d’abord sur la classification des documents financiers tels que les
factures, les chèques et les bons de livraison.
Une fois classifiés, ces documents feront l’objet d’une extraction automatique des données per-
tinentes pour notre étude. Nous utiliserons l’OCR (Optical Character Recognition) pour l’extrac-
tion des textes des documents numérisés et le NLP (Natural Language Processing) pour l’analyse
des textes extraits afin de classifier ces documents.

4
Seif eddine Khadhraoui Automatisation de gestion des factures

3 Motivations et Problématiques

Introduction

Les entreprises génèrent un grand nombre de factures et ils sont confrontée à un processus de
gestion des factures manuel et fastidieux. Ce processus implique la saisie manuelle des données ,
la vérification des informations et l’approbation des factures par plusieurs personnes.

3.1 La gestion manuelle des factures

La gestion manuelle des factures est le processus de traitement des factures papier sans utiliser
de logiciel ou de technologie d’automatisation.
Ce processus est chronophage et sujet aux erreurs impliquant de nombreuses tâches répétitives,
telles que la saisie des données, la vérification des informations et l’approbation des paiements.
Les étapes clés de la gestion manuelle des factures :
• 1) Réception des pièces comptable : Les pièces sont reçues postal ou par, généralement par
courrier postal ou par e-mail.
• 2) Saisie des données : Les informations des pièces sont saisies manuellement dans un sys-
tème informatique.
• 3) Vérification des informations : Les informations des pièces sont vérifiées pour s’assurer
qu’elles sont exactes et complètes.
• 4) Approbation des paiements : Le document est approuvé par un responsable avant d’être
payée.
• 5) Paiement de la facture : La facture est payée par l’entreprise, généralement par virement
bancaire ou par chèque.
• 6) Archivage des factures : Les factures sont stockées en toute sécurité pour consultation
ultérieure.

3.2 Le volume des factures chez les entreprises

Le secteur financier des entreprises en Tunisie est un secteur dynamique et en pleine crois-
sance, où la gestion efficace des factures s’avère essentielle pour maintenir la performance et la
compétitivité.
En 2020, le nombre de factures émises en Tunisie était estimé à 100 millions.d’après la mi-
nistère de finance, Un grand Nombre des factures traitées par an, On estime que les entreprises
tunisiennes traitent au moyenne 10 000 factures par an.
En 2020, une étude de la Chambre de Commerce et d’Industrie de Tunis (CCIT) a révélé que
80% des entreprises tunisiennes traitaient leurs factures manuellement.

5
Seif eddine Khadhraoui Automatisation de gestion des factures

3.3 Les inconvénients, impacts et estimations de la gestion manuel

Les inconvénients liés au traitement manuel des factures sont :

• Les pertes de temps à analyser et à corriger : lors de la saisie des factures dans le logiciel
comptable, de nombreuses erreurs peuvent être commises.
• Les pertes de documents : lors du transfert ou de l’archivage, les pertes de documents peuvent
rendre les audits comptables et fiscaux coûteux.
• Les coûts de l’espace dédié à l’archivage papier : les factures sont classées dans des armoires,
qui nécessitent de l’espace physique impliquant parfois des coûts locatifs.

Inconvénients Impacts estimés


Chronophage : 1 agent peut traiter 20 factures/heure
Chaque facture nécessite une saisie manuelle des don- 1000 factures prennent 50 heures = 1.25
nées, une vérification et ainsi qu’une approbation semaines.
Tâches répétitives : 50% du temps de traitement consacré à la
Les agents consacrent beaucoup de temps à des tâches validation des données = 25 heures pour
répétitives comme la vérification des noms, des dates 1000 factures
et des valeurs.
Sujet aux erreurs humaines : 5% d’erreur = 50 factures erronées sur
La saisie et la vérification manuelle des données 1000
peuvent entraîner des erreurs.
Manque d’évolutivité : Doubler la charge de travail exige de
Difficile de gérer l’augmentation du volume de fac- doubler le personnel et d’augmenter les
tures sans ajouter plus d’agents. coûts.
Visibilité et suivi limités : Retards dans la détermination et la
Le processus manuel manque de données en temps résolution des écarts.
réel et de pistes d’audit.
Risques pour la sécurité : Données sensibles exposées si les factures
Les factures physiques sont susceptibles d’être per- sont égarées.
dues ou endommagées.
Coût élevé : Les salaires, l’équipement et le stockage Le traitement manuel peut coûter de 3 C
physique augmentent les coûts de traitement. à 5 C par facture.
Mauvaise expérience client : Les retards peuvent nuire aux relations
Un traitement lent entraîne des cycles de paiement avec les clients
plus longs et des fournisseurs insatisfaits.
Nombre de clics par facture : Peut aller de 20 à 50 clics pour des tâches
de base telles que la saisie des données
Temps de vérification des valeurs : La vérification simple peut prendre de 1
à 2 minutes, les vérifications complexes
peuvent prendre de 5 à 10 minutes

TABLE I.1 – Inconvénients et impact estimé du traitement manuel[2]

6
Seif eddine Khadhraoui Automatisation de gestion des factures

4 Travail demandé

Notre mission est de résoudre ce problème majeur qui a un impact sur les entreprises. Il est donc
nécessaire de trouver une solution pour automatiser les tâches répétitives de la gestion manuelle
des factures.

5 Concepts clés

Cette section s’attache à présenter les concepts clés qui constitue les piliers fondamentaux de
ce projet. Ces concepts jouent un rôle crucial en orientant les recherches, les analyses et la mise en
œuvre du projet.

5.1 Robotic Pocess Automation (RPA)

RPA (Robotic Process Automation) ou l’automatisation robotisée des processus est un logiciel
installable qui permet aux robots logiciels d’effectuer des tâches sur un ordinateur comme le ferait
un humain. D’après UiPath qui est un fournisseur de logiciel RPA, le terme RPA est définie par :
L’automatisation robotisée des processus est la technologie qui permet n’importe qui aujourd’hui
pour configurer un logiciel informatique, ou un « robot » pour émuler et intégrer les actions d’un
humain interagissant au sein de systèmes numériques. [3]

5.1.1 Types de l’RPA

Automatisation Assistée (Attended Automation)


Attended Automation ou le mode assisté d’un robot désigne l’exécution des tâches du robot sous
l’assistance humaine c’est -à -dire le robot nécessite une activité humaine pour le déclenche-
ment.Le robot se comporte comme un assistant virtuel, déchargeant l’humain des tâches banales,
à faible valeur ajoutée, on attend du robot qu’il améliore la productivité de son binôme humain.
Nous utiliserions des robots en mode assisté pour les raisons suivantes :
• Tâches nécessitant une interaction en temps réel entre l’homme et le robot.
• Augmenter le travail quotidien des employés, leur permettant de le faire plus rapidement et
mieux.
Automatisation non Assistée (Unattended Automation)
Unattended Automation ou l’automatisation en mode non assistée, dans ce mode d’automati-
sation les flux de travail fonctionnent d’une manière autonome, s’enclenchant et s’exécutant auto-
matiquement sur des serveurs. Leur planification est généralement définie à l’avance, assurant une
disponibilité 24 heures sur 24, 7 jours sur 7.
Nous utiliserions l’automatisation en mode non assistée pour les raisons suivantes :
• Tâches structurées et entièrement cartographiables.
• Recueillir, trier, analyser et distribuer de grandes quantités de données.

7
Seif eddine Khadhraoui Automatisation de gestion des factures

5.1.2 Les étapes d’implémentation de l’RPA

L’implantation réussie de l’automatisation robotisée des processus (RPA) nécessite une plani-
fication et une exécution précise. Avant de lancer des robots RPA, il est crucial de suivre des étapes
clés pour garantir une intégration fluide et une exploitation efficace.

F IGURE I.2 – Les étapes d’implémentation de l’RPA

Comme le montre la figure ci-dessus les étapes pour implémenter le RPA sont les suivantes :
• Identifier les processus à automatiser :
Les entreprises doivent d’abord identifier le processus approprié pour l’automatisation.
La sélection des processus doit être basée sur une précise appropriée et ce à donner la prio-
rité aux activités qui contribueront à obtenir un meilleur retour sur investissement (ROI) en
termes de coût et de résultat attendu.
• Effectuer une analyse de faisabilité :
L’étape suivante consiste à effectuer l’analyse de faisabilité. L’analyse approfondie de la
mise en œuvre du RPA en termes de faisabilité technique et fonctionnelle.
• Automatiser le processus et développer un contrôleur bot :
Les processus automatisés sont envoyés à un bot contrôleur. Ce dernier est utilisé pour
contrôler et hiérarchiser l’exécution du processus. Il permet aux utilisateurs de planifier,
gérer et contrôler diverses activités.
• Tester le processus et déployer le robot :
Effectuer des tests approfondis pour examiner les performances dans tous les scénarios pos-
sibles et identifier les défauts lors de l’exécution de la procédure. (Site Favorite)
Une fois les tests effectués et validés, on passe au déploiement de la solution RPA, Il faut
assurer un déploiement fluide ce qui est essentiel pour garantir des performances efficaces à
long terme.

8
Seif eddine Khadhraoui Automatisation de gestion des factures

5.1.3 Les Outils de RPA

Les outils RPA, tels que UiPath et Power Automate sont des logiciels conçus pour automati-
ser des tâches répétitives et basées sur des règles effectuées par des humains.
Ils permettent aux entreprises de créer des "bots" logiciels qui imitent les actions humaines, inter-
agissant avec les systèmes informatiques et les interfaces utilisateur pour effectuer des tâches telles
que la saisie de données, la génération de rapports et le service client.
Dans le marché actuel, la diversité des outils de RPA offre aux entreprises une gamme variée de
solutions pour automatiser leurs processus métier.

5.1.4 Les Bénéfices de l’RPA

Parmi les nombreux avantages du RPA sont :


— Automatiser d’une manière fluide un grand nombre de processus.
— Gèrer la plupart des processus métier réguliers avec une automatisation sans erreur.
— Réduit considérablement l’intervention humaine et les coûts opérationnels.

5.1.5 Domaines d’utilisation de l’RPA

Le RPA est utilisé dans plusieurs domaines tels que :

Domaines Service clientèle Département des Département IT Département RH


finances
Utilisations •.Validation des •Approbation du •Traitement et ges- •Vérification des an-
contrôleurs crédit tion des courriels técédents d’emploi
• Rappels et • Saisie des don- •Validation des don- •Validation des
notifications aux nées ERP nées enregistrements de
clients • Gestion du pro- •Tests d’applications temps
• .Réponses en cessus de recou- •Gestion des dé-
dehors des heures vrement penses et
de travail remboursement

TABLE I.2 – Domaines d’utilisation de l’RPA[4]

5.2 ROI

(ROI) Return of Investments ou Le retour sur investissement de l’RPA est une mesure de la
rentabilité de l’implantation de solutions RPA au sein d’une entreprise. Il s’agit du rapport entre
les bénéfices générés par l’RPA et les coûts associés à son adoption et à sa maintenance.

9
Seif eddine Khadhraoui Automatisation de gestion des factures

5.3 BPMN

BPMN (Business Process Model and Notation) est un langage graphique pour la modélisation
des processus métier. Il permet de représenter les différentes étapes d’un processus, les interactions
entre les participants, les décisions et les flux de données.
Le BPMN vise à améliorer la communication et la compréhension des processus métier entre les
parties prenantes, à identifier les inefficacités et à optimiser les performances. Il est utilisé dans
divers domaines, tels que la gestion des opérations, la gestion des risques, l’informatique et l’audit
interne.[6]

5.4 PDD

Un PDD (Process Definition Document) ou Document de définition des processus est un do-
cument crucial qui décrit en détail un processus métier spécifique ciblé pour une automatisation
potentielle via des robots RPA.[7]

5.5 Données structurées

Les données structurées font référence à des informations organisées dans un format facile-
ment compréhensible par les humains et les machines. site3 Dans ces données les éléments ou
les champs sont clairement définis qui nous permet un stockage, une récupération et une analyse
efficaces des données.
Les données structurées se trouvent généralement dans des bases de données relationnelles, des
feuilles de calcul et d’autres formats tabulaires.[5]

5.6 Données semi-structurées

Les données semi-structurées sont une forme de données structurées qui n’obéissent pas à
la structure tabulaire des modèles de données associés aux bases de données relationnelles. Ils
contiennent des balises ou d’autres marqueurs pour séparer les éléments sémantiques et renforcer
la hiérarchie des enregistrements et des champs dans les données.

5.7 Données non-structurées

Les données non structurées sont des informations non organisées dans un format prédéfini, ce
qui les rend difficiles à traiter par les machines à l’aide des méthodes traditionnelles. Les fichiers
texte, PDF, images, fichiers vidéo et audio, etc. peuvent tous être classés comme des données non
structurées.

5.8 OCR

OCR (Optical Character Recognition) est une technologie qui permettent de reconnaître le texte
dans une image ; habituellement, un document imprimé ou manuscrit numérisé.

10
Seif eddine Khadhraoui Automatisation de gestion des factures

5.9 RPA pour le traitement des documents non-structurés

Cette partie est consacré à identifier les services de l’RPA qui nous aide à traiter les documents
non structurés.

5.9.1 Robots logiciels automatisés

RPA permet aux organisations d’automatiser les très redondants et basé sur des règles tâches
à un faible montant du prix antérieur. Ils peuvent effectuer de nombreuses tâches telles que se
connecter au système ou à l’application, placer des fichiers et dossiers aux emplacements sélec-
tionnés, remplir les formulaires, extraire les données structurées des documents et plus encore. Ces
robots logiciels augmentent l’évolutivité, la vitesse et réduire les coûts.

5.9.2 RPA cognitive

La RPA traditionnelle peut ne pas être suffisante automatiser les systèmes pour prendre les dé-
cisions simples de manière indépendante. La RPA cognitive tire parti de NLP et ML pour effectuer
des tâches répétitives à volume élevé auparavant effectuée par des humains.
C’est une combinaison de RPA et d’IA. Il peut gérer d’énormes données, et modèles cachés des
données, et prédire l’avenir tendances. Il améliore les performances au fil du temps.
Il peut imiter la façon dont un humain pense et peut prendre des décisions intelligentes.[8]

5.9.3 Processus de sélection en tant que candidat RPA

Un des faits importants qui pourraient avoir une incidence sur la mise en œuvre de l’RPA
Le succès est la pertinence du processus candidat pour l’automatisation. Les organisations doivent
connaître la pertinence du processus critères de mise en œuvre de la RPA. Le processus sélectionné
peut d’abord être défini en règles claires ou de définies, car le RPA ne convient qu’aux tâches basées
sur des règles. La figure suivante résume les services de l’RPA pour le traitement des documents.

F IGURE I.3 – Types des RPA pour le traitement des documents

11
Seif eddine Khadhraoui Automatisation de gestion des factures

5.10 La compréhension des documents (Document Understanding)

5.10.1 Définition

Document Understanding (DU) ou la compréhension des documents par les ordinateurs est
un domaine de l’informatique et de l’intelligence artificielle qui vise à leur donner la capacité
d’extraire des informations et du sens à partir de documents, comme le font les humains.

5.10.2 Les principaux aspects

Plongeons dans les aspects clés de la compréhension des documents :


• Extraction des données :
Cela implique d’identifier et de capturer des points de données pertinents à partir de docu-
ments, tels que des noms, des dates, des quantités, des mots clés ou des entités spécifiques
• Comprendre le sens :
La compréhension des documents vise à saisir le contexte et les relations au sein du docu-
ment, il peut s’agir d’analyser le sentiment du texte, de classer le type de document ou même
de résumer les principaux points.

5.10.3 Les applications du (DU)

La technologie de la compréhension des documents [9] a de nombreuses applications dans


divers domaines notamment :
• Automatisation du traitement des documents :
Des tâches telles que l’extraction des données des factures, des contrats ou des demandes de
prêt peuvent être automatisées, ce qui permet de gagner du temps et de réduire les erreurs.
• Recherche et récupération de contenu :
Trouver des informations spécifiques dans une grande collection de documents devient beau-
coup plus efficace.
• Recherche et récupération de contenu :
Trouver des informations spécifiques dans une grande collection de documents devient beau-
coup plus efficace.
• Chatbots et assistants virtuels :
Ils peuvent mieux comprendre les requêtes des utilisateurs et fournir des réponses plus per-
tinentes basées sur la connaissance des documents.
• Analyse des sentiments :
Analyse de l’opinion publique ou des commentaires des clients à partir de documents.

12
Seif eddine Khadhraoui Automatisation de gestion des factures

5.11 Generative AI ou IA Génératif

5.11.1 Définition

L’intelligence artificielle (IA) générative est une branche de l’apprentissage profond (Deep
Learning) qui permet de produire divers types de contenu tels que du texte, des images, de l’audio
et de la vidéo. Elle génère de nouvelles instances de données en se basant sur une distribution de
probabilité apprise à partir de données existantes.[10]

5.11.2 Description du fonctionnement

La Generative AI traite et analyse les énormes quantités de données à une vitesse miraculeuse.
Des calculs permettent aux machines d’effectuer les mêmes tâches que les humains, à savoir créer
des contenus basés sur des modèles existants.

F IGURE I.4 – Fonctionnement du IA Générative

5.11.3 Domaines d’application

L’intelligence artificielle générative (IA générative) possède un large éventail d’applications


qui transforment divers secteurs. on va citer quelques exemples concrets :
Création de contenu :
• Texte : Rédaction d’articles de blog, de scripts, de poèmes, de descriptions de produits, de
courriels, de lettres et d’autres formats.
• Images et vidéos : Génération d’images réalistes ou abstraites à partir de descriptions tex-
tuelles, création de vidéos à partir de scripts ou d’images existantes ou modification et amé-
lioration d’images.
Amélioration de l’expérience utilisateur :
• Chatbots et assistants virtuels : Développement de chatbots et création d’assistants virtuels
qui sont capables de comprendre et de répondre à des requêtes complexes.

13
Seif eddine Khadhraoui Automatisation de gestion des factures

6 Etude de l’existant

Afin d’avoir une vision globale de l’application, nous sommes amenés à faire une étude de
l’existant. L’étude permet de déterminer les points faibles et les points forts d’un produit actuel
pour pouvoir déterminer nos besoins, en vue d’en prendre en considération lors de conception et
la réalisation de notre application.

6.1 Présentation et critique des solutions existantes sur le marché

L’automatisation des processus de gestion des factures est devenue un enjeu majeur pour les
entreprises modernes. Les logiciels de facturation qu’on va citer sont plus en plus populaires pour
aider les départements financiers à gérer efficacement leurs tâches.
Il est important de mettre une étude de l’existant pour évaluer leurs performances et identifier les
éventuels points d’amélioration. Cette étude se concentrera sur les fonctionnalités de ces logiciels,
leurs avantages et leurs limites.
Ce tableau résume les logiciels les plus populaires de gestion des factures et leur digitalisation qui
sont choisie par nombreuses entreprises.

Logiciel Fonctionnalités principales Points forts Points faibles


Kofax Extraction de données Haute précision, auto- Prix élevé, nécessite
Invoice par l’IA, validation des matisation complète du une expertise pour la
Processing données et intégration traitement des factures configuration
ERP/comptabilité
Trax Automatisation del a gestion Fonctionnalités spéci- Ne convient pas aux
Technologies des factures pour le secteur du fiques pour les factures entreprises d’autres
transport et de la logistique de transport secteurs
Basware Automatisation complète du Automatisation com- Prix élevé, néces-
Invoice processus de traitement des plète, réduction des site une intégration
Automation factures coûts et amélioration avec les systèmes
de la visibilité ERP/comptables

TABLE I.3 – Description des Logiciels existant sur le marché[12]

7 Solutions Proposées

Pour remédier aux problèmes rencontrés liées à la gestion manuelle des documents financiers
(exemple les factures), nous présentons nos envisageables solutions.
Nous sommes convaincus que l’automatisation de ces tâches répétitives est la meilleure solution
pour résoudre les problèmes de gestion manuelle. Pour cela nous proposons d’utiliser l’RPA pour
développer un robot qui s’occupe de processus des pièces financiers chez les entreprises.

14
Seif eddine Khadhraoui Automatisation de gestion des factures

7.1 Solution 1 : Développer un modèle ML et l’intégrer avec le robot

En première lieu nous suggérerons de développer un modèle ML personnalisé et de l’entrainer


pour la classification et l’extraction des données. Après nous allons l’intégrer avec le robot RPA
pour automatiser les processus de vérification et classification des documents ainsi que l’extraction
des données depuis les pièces classifiées.

7.2 Solution 2 : Utiliser les modèles et les classificateurs de l’RPA

Les outils RPA modernes, tels que UiPath, Automation anywhere et Blue prism offrent des
fonctionnalités intégrées afin de créer un modèle ML pour la classification des documents et l’ex-
traction des données. L’intégration des modèles avec les robots RPA est simplifiée et optimisée,
garantissant ainsi des performances accrues.

8 Choix de solution

Pour déterminer la meilleure approche de classification des fichiers financiers, il est essentiel de
comparer les solutions proposées en fonction de divers critères. Le tableau comparatif ci-dessous
met en lumière les différences entre l’utilisation des modèles de classification intégrés dans les
outils RPA et la création d’un modèle de machine learning (ML) personnalisé.

Critère Classificateur intégré dans Création d’un modèle ML et l’intégrer


les outils RPA avec le robot RPA
Facilité Haute : intégration facile avec les Moyenne à faible : nécessite une
d’implémentation outils RPA intégration manuelle
Temps de Court : utiliser les modèles Long : collecte de données, entrainement,
développement les entrainer et les configurer évaluation et optimisation du modèle
Coût Faible à modéré Élevé : coûts de développement, de
formation et de maintenance du modèle
Maintenance Faible : maintenance assurée par le Élevée : mise à jour et réentraînement
fournisseur de l’outil RPA réguliers du modèle nécessaires
Scalabilité Haute : solutions RPA sont conçues Moyenne à élevée : peut nécessiter des
pour évoluer facilement ajustements pour évoluer
Intégration avec Facile : les outils RPA sont conçus Complexe : intégration manuelle requise
d’autres systèmes pour s’intégrer avec de nombreux
systèmes

TABLE I.4 – Comparaison des solutions proposées

Lorsqu’il s’agit de traiter les fichiers financiers, l’utilisation des classificateurs intégrés dans les
outils de RPA se révèle être une option judicieuse. Ils offrent une implémentation rapide, réduisant
ainsi les délais et les coûts. Les robots RPA, reposant sur des technologies OCR peuvent extraire
et organiser avec précision les informations des factures. Cette approche garantit une automati-
sation efficace des processus financiers et une intégration fluide avec les systèmes ERP et autres
applications d’entreprise.

15
Seif eddine Khadhraoui Automatisation de gestion des factures

Conclusion

Au début de ce chapitre, nous avons présenté le cadre général de notre projet, en mettant en
évidence l’organisme d’accueil et ses différents secteurs d’activité.
Dans la deuxième section, nous avons décrit le contexte du projet, incluant les problématiques
rencontrées et les concepts clés.
La section suivante a passé en revue les différentes solutions existantes, en les critiquant en
profondeur et la dernière section a traité des solutions proposées et du choix final.
Dans le chapitre suivant, nous commencerons par une étude préliminaire qui nous permettra de
détailler davantage notre projet et de le clarifier."

16
Chapitre II

Conception et planification

17
Seif eddine Khadhraoui Automatisation de gestion des factures

Introduction

Dans ce chapitre, nous présenterons en détail la méthodologie de travail employée pour notre
projet. Nous commencerons par une étude préliminaire qui permettra de décrire nos besoins spéci-
fiques. Ensuite, nous aborderons la planification nécessaire pour mener à bien le travail demandé.
Nous décrirons également l’environnement de travail ainsi que la planification des sprints.

1 Méthodologie de travail

Chaque projet commence par une idée et se termine par un produit fini. Pour assurer la réussite
du projet, il est essentiel de le planifier et de le gérer de manière efficace. Les méthodes itératives
sont particulièrement adaptées aux projets complexes. Elles consistent à découper le projet en
plusieurs étapes, appelées itérations. Chaque itération permet de livrer une version du produit, qui
est ensuite testée et améliorée.

1.1 Comparaion des méthodologies de gestion de projet

Critère Méthodologie Méthodologie agile Méthodologie hybride


traditionnelle
Approche En cascade Incrémentale Itérative et incrémentale com-
bine les éléments des 2 ap-
proches
Flexibilité Faible Elevée Modérée
Communication Centralisée Décentralisée Mixte
Livraison de valeur Retardée Rapide Rapide ou retardée selon le
projet
Adaptation aux Difficile Facile Modérée
changements
Exigences en ma- Elevées Moyennes Moyenne ou élevée selon le
tière d’expérience projet
Coût Modéré Élevé Modéré ou élevé

TABLE II.1 – Tableau comparative entre les méthodologies de gestion de projet

Nous avons trouvé que la méthodologie Agile est la meilleure option, offrant une flexibilité ac-
crue et une livraison rapide de valeur. Cela est particulièrement important pour les projets de petite
taille ou de faible complexité. Voici quelques raisons spécifiques pour lesquelles la méthodologie
Agile est une bonne option pour notre projet :
• La flexibilité de la méthode Agile nous permet d’adapter le projet aux changements au fur et
à mesure que nous apprenons davantage sur le processus métier et les exigences des parties
prenantes.
• La méthodologie Agile permet une livraison rapide de valeur, accélérant ainsi la fourniture
de résultats aux utilisateurs finaux et favorisant une adoption plus rapide de la RPA.

18
Seif eddine Khadhraoui Automatisation de gestion des factures

1.2 Méthodologie Agile SCRUM

Les méthodes agiles sont des approches itératives qui mettent l’accent sur la collaboration et
l’adaptation. Elles reposent sur l’idée que le client doit être impliqué tout au long du projet. Pour
notre projet, nous avons choisi d’utiliser la méthodologie SCRUM.[15]

F IGURE II.1 – Le process SCRUM

Cette figure illustre le processus SCRUM en mettant en évidence les rôles, les artefacts et les
phases clés :

1.2.1 Rôles SCRUM

Product Owner : Responsable de la gestion et de la priorisation du backlog produit.


Scrum Master : Facilite les réunions et aide l’équipe à surmonter les obstacles.
Équipe de Développement : Travaille sur la conception, le développement et la livraison des
incréments de produit.

1.3 Phases du Sprint

• Planning : Planification des tâches pour le sprint à venir


• Implementation : Phase de mise en œuvre où l’équipe travaille sur les user stories
• Review : Révision du travail accompli à la fin du sprint
• Retrospective : Réflexion sur ce qui a bien fonctionné et ce qui peut être amélioré pour le
prochain sprint

19
Seif eddine Khadhraoui Automatisation de gestion des factures

2 Etude préliminaire

Dans cette section, nous commençons par identifier les acteurs qui interagissent avec notre
système et analyser leurs exigences afin de mieux comprendre les objectifs de ce sprint.
Ensuite nous décrivons les exigences fonctionnelles et non fonctionnelles de notre analyseur des
documents financiers.

2.1 Identification des Acteurs

Dans cette section, notre attention se porte sur les divers intervenants qui interagissent directe-
ment avec notre application, en présentant leur rôle et leurs besoins. Les acteurs clés suivants ont
été identifiés :
• Un responsable Financier : c’est un acteur qui va être en interaction directe avec notre robot
à travers une interface utilisateur. Il a la possibilité d’initialiser le robot, suivre ces activités
approuver les fichiers traités et il peut consulter l’ensemble des données extraites.

2.2 Besoins Fonctionnels

Notre application offre les fonctionnalités suivantes :

2.2.1 Classification automatisée et intelligente des documents :

Le robot sera en mesure d’identifier les différents types de documents financiers tels que les
factures, les chèques bancaires et les bon de commandes. Il pourra ensuite les catégoriser de ma-
nière précise et efficace, facilitant ainsi leur traitement ultérieur.

2.2.2 Extraction automatisée et précise des données :

Cette fonctionnalité permettra au robot de récupérer de manière automatisée les informations


clés telles que les montants, les dates, les numéros de facture, les noms des fournisseurs, etc., à
partir des documents financiers traités.

2.2.3 Export automatisé des données extraites :

Cette fonctionnalité permettra au robot de transférer automatiquement les informations ex-


traites vers les systèmes ou les applications financières pertinentes, tout en archivant ces infor-
mations pour les utiliser dans d’autres applications, telles que la rédaction de nouveaux bons de
commande.

20
Seif eddine Khadhraoui Automatisation de gestion des factures

2.3 Besoins Non Fonctionnels

Voici les besoins non fonctionnels pour notre robot :

2.3.1 Performance :

Le logiciel doit permettre aux utilisateurs d’effectuer des tâches efficacement et sans interrup-
tions. À cette fin, notre robot est équipé de diverses technologies telles que l’IA, l’OCR, le NLP et
d’autres.

2.3.2 Extensibilité et maintenabilité :

Le logiciel doit être extensible grâce à une architecture modulaire. Nous avons découpé notre
solution en modules distincts et bien définis, tels que le traitement des factures, des chèques et des
bons de commande. En définissant clairement les interfaces entre les modules, chacun peut être
remplacé ou mis à jour facilement.
De plus, nous avons la possibilité d’ajouter de nouvelles fonctionnalités sans impacter les modules
existants. Enfin, une stratégie de tests complète sera mise en place, utilisant des outils automatisés
pour les tests unitaires, d’intégration et fonctionnels.

2.3.3 Convivialité :

La solution doit être conviviale et facile à utiliser afin de garantir une adoption sans difficulté
par les utilisateurs. Pour atteindre cet objectif, nous nous concentrons sur la conception d’interface
utilisateur simple, claire et intuitive.

2.3.4 La scalabilité horizontale :

Le système doit être conçu avec une architecture scalable horizontalement, permettant l’ajout
dynamique de nouvelles ressources pour répondre à l’augmentation de la charge. Pour ce faire,
des technologies telles que la virtualisation, la conteneurisation et l’orchestration seront utilisées,
facilitant l’ajout d’instances supplémentaires pour gérer la demande croissante. De plus, le système
doit être capable de répartir la charge de manière équilibrée entre les différentes instances, assurant
ainsi un fonctionnement fluide et efficace.

2.3.5 La réduction de la complexité :

Le système doit être conçu pour minimiser la complexité en adoptant une approche
"1 service = 1 besoin". Chaque service doit être indépendant et répondre à un besoin spécifique.

21
Seif eddine Khadhraoui Automatisation de gestion des factures

3 Planification

3.1 Backlog de produit

Le backlog de produit contient tous les besoins et fonctionnalités requis par le client. Le Ta-
bleau suivant représente le Backlog de notre application. Il est possible que certaines colonnes des
tableaux prennent des valeurs allant de 1 à 5. 1 : Très basse priorité, 2 : Basse priorité, 3 : Normale,
4 : Prioritaire et 5 : Très Prioritaire.

ID Fonctionnalité User Stories Priorité Statut


01 Communication du Le robot doit être connecté au compte Outlook 4 Réalisé
robot et le compte du département financier en toute sécurité et
mail financier confidentialité
data ladis washroom Le robot doit télécharger les pièces jointes qui 4 Réalisé
présentent les pièces financiers
02 Prétraitement des Le logiciel doit pouvoir traiter les documents 5 Réalisé
documents afin de les classifier par type (Factures, Chèques
et Bon de commande)
03 Extraire et exporter Le robot doit pouvoir extraire les données d’une 5 Réalisé
les données d’une facture telles que le numéro de facture, sa date,
facture adresse et le montant
la ladis Le robot doit pouvoir exporter les données 3 Réalisé
04 Extraire et expor- Le robot doit pouvoir extraire les données d’un 5 Réalisé
ter les données d’un chèque telles que le numéro de chèque, le nom
chèque dela banque, les renseignements sur le bénéfi-
ciaire, le montant écrit et la date
lad ladis Le robot doit pouvoir exporter les données ex- 3 Réalisé
traites
05 Extraire et exporter Le robot doit pouvoir extraire les données d’un 5 Réalisé
les données d’un bon bon de commande telles que son numéro, sa
de commande adresse, le nom du fournisseur et le total
lad ladis Le robot doit pouvoir exporter les données ex- 3 Réalisé
traites
06 Enregistrement et Le robot doit enregistrer les données de traite- 4 Réalisé
envoi automatique ment et les envoyer automatiquement par email
du rapport de traite- sous forme de bilan détaillé aux destinataires
ment configurés
07 Gestion de l’utili- En tant qu’un utilisateur je veux m’inscrire afin 4 Réalisé
sateur et déclenche- d’avoir compte utilisateur
ment du robot
lad ladis washroom En tant qu’un user je veux m’authentifier 3 Réalisé
ladis ladis washroom En tant qu’un user je veux déclencher le robot 5 Réalisé
depuis une interface

TABLE II.2 – Backlog du produit

22
Seif eddine Khadhraoui Automatisation de gestion des factures

3.2 Architecture globale du projet

Cette section est dédiée à la structure générale du projet, comme l’illustre la figure ci-après.
Nous allons examiner en détail les différents composants et leur organisation au sein du projet, afin
de fournir une vue d’ensemble claire et compréhensible.

F IGURE II.2 – Architecture du projet

Cette figure illustre le flux de travail global du projet. Les fichiers financiers (au format images
comme PDF, JPEG, PNG etc) sont d’abord reçus par mail. Ensuite, ils passent par une étape de
prétraitement via OCR pour extraire les textes depuis les images. Les documents sont ensuite
classifiés par type pièce financier (facture,chèque et bon de commande). Après cette classification,
les informations pertinentes sont extraites. Ces données sont alors exportées pour être utilisées
dans des systèmes externes. Enfin, un suivi et un reporting sont effectués pour assurer le contrôle
et l’analyse des informations traitées.

4 Environnement du travail

Pendant la réalisation de notre plateforme, nous avons eu recours à des matériels et des logiciels
bien spécifiques, choisis pour répondre aux exigences techniques et fonctionnelles du projet.

23
Seif eddine Khadhraoui Automatisation de gestion des factures

4.1 Environnement Matériel

Du côté matériel, nous avons utilisé l’ordinateur avec les caractéristiques suivantes :

— Système d’exploitation : Windows 10 Professionnel


— Processeur : 11th Generation Intel® Core™ i3 Processors
— RAM : 16 Go

4.2 Environnement Logiciel

Pour obtenir un résultat satisfaisant, il est crucial de choisir les outils technologiques, langages
et bibliothèques qui répondent aux besoins prédéfinis.

4.2.1 Choix de l’outil RPA

Afin de choisir l’outil le plus adapté à nos besoins, nous allons comparer quelques-uns des
principaux acteurs du secteur. Ce tableau montre en détails les outils de RPA les plus populaires :
UiPath, Power Automate et Automation Anywhere.

Critère UiPath Power Automate Automation Anywhere


Facilité d’utilisa- Interface intuitive et Interface émotive pour Interface conviviale avec
tion riche en fonctionnalités les utilisateurs de des fonctionnalités de
visuelles Microsoft 365 glisser-déposer
Intégration Large gamme d’inté- Excellent pour les in- Bonnes intégrations avec
grations natives avec tégrations avec les pro- les applications d’entre-
divers systèmes et ap- duits Microsoft prise
plications
Capacités de une grande flexibilité Adapté aux utilisateurs Fournit des capacités de
développement avec des options de co- sans compétences en script pour les utilisateurs
dage pour les dévelop- codage, avec des op- techniques et non tech-
peurs avancés tions de scripts limités niques
Gestion des ladis Outil robuste pour la Fonctionnalités de base Bonnes capacités de ges-
processus gestion et le suivi des pour la gestion des flux tion et de suivi des proces-
processus automatisés de travail sus automatisés
Intégration de Intégration avancée Intégration avec AI Intégrations avec les ser-
l’IA avec les services d’IA, Builder de Microsoft vices d’IA, mais moins
et de l’NLP offrant des capacités avec des capacités avancées que celles de Ui-
d’apprentissage auto- limitées comparées à Path
matique UiPath
Sécurité Normes de sécurité éle- Intégré aux standards Conformité avec les
vées avec des contrôles de sécurité Microsoft normes de sécurité et de
rigoureux et des certifi- conformité de l’industrie
cations

TABLE II.3 – Comparaison des Outils RPA Populaires[12]

24
Seif eddine Khadhraoui Automatisation de gestion des factures

Nous avons choisi UiPath pour notre robot en raison de sa flexibilité, de ses capacités avancées
d’intégration et d’intelligence artificielle, ainsi que de sa robustesse en gestion des processus.

F IGURE II.3 – Logo de UiPath

ladis washroom
Camunda :
Camunda est une plateforme de gestion des processus métiers développée par Camunda Ser-
vices GmbH. Elle est utilisée par les entreprises pour automatiser les flux de travail et les proces-
sus métiers. Camunda BPMN est particulièrement reconnue pour sa capacité à modéliser, exécuter
et analyser les processus en utilisant la notation BPMN 2.0 (Business Process Model and Nota-
tion).[18]
Visual Studio Code :
C’est un éditeur de texte qui apporte des fonctionnalités avancées d’édition, débogage et per-
sonnalisation des tâches de programmation quotidiennes. Il peut aider à diagnostiquer rapidement
les problèmes pour débloquer et permettre de créer et publier des applications.
HTML :
Signifie "HyperText Markup Language" ou Langage de balisage hypertexte, est le langage
standard utilisé pour créer et structurer le contenu des pages web. Il permet de définir la structure
et la présentation du texte, des images, des liens, des formulaires et d’autres éléments multimédias
sur un site web.
CSS :
C’est l’acronyme anglais de Cascading Style Sheets qui peut se traduire par"feuilles de style
en cascade". Le CSS est un langage informatique utilisé sur l’internet pour mettre en forme les
fichiers HTML ou XML. Ainsi, les feuilles de style, aussi appelé les fichiers CSS, comprennent du
code qui permet de gérer le design d’une page en HTML. [13]
Bootstrap :
Bootstrap est un framework front-end open source qui facilite le développement de sites web et
d’applications web réactives et modernes. Créé par Twitter, il est conçu pour aider les développeurs
à créer des interfaces utilisateur cohérentes et attrayantes avec moins d’efforts.[24]
JavaScript :
C’est un langage de programmation de haut niveau, interprété et principalement utilisé pour
le développement web. Il est l’un des trois langages fondamentaux du web, aux côtés de HTML
et CSS qui permet de créer du contenu mis à jour de façon dynamique, de contrôler le contenu
multimédia, d’animer des images et d’autres fonctionnalités. [15]

25
Seif eddine Khadhraoui Automatisation de gestion des factures

Continuant à citer nos logiciels et bibliothèques requises pour notre projet


Python :
C’est un langage de programmation puissant et facile à apprendre. Il dispose de structures
de données de haut niveau et permet une approche simple mais efficace de la programmation
orientée objet. Python est un langage idéal pour l’écriture de scripts et le développement rapide
d’applications dans de nombreux domaines et sur la plupart des plateformes. [16]
Django :
Django est un framework Python gratuit, open source et de haut niveau permettant un dévelop-
pement rapide de sites internet, sécurisés, et maintenables. Créé par des développeurs experimen-
tés, Django prend en charge la plupart des tracas du développement web, vous pouvez donc vous
concentrer sur l’écriture de votre application sans avoir besoin de réinventer la roue. [14]

5 Planification des sprints

Comme étant une étape importante dans le projet, la planification a pour but de garantir une
gestion optimale du temps. La figure suivante met l’accent sur la planification de nos sprints en se
basant sur le backlog du produit cité auparavant.

F IGURE II.4 – Planification des sprints

Nous débutons par la présentation du premier sprint intitulé "Développement du robot TARS"
qui concerne l’automatisation des tâches définies. Nous enchaînons ensuite avec le deuxième sprint
intitulé "Développement de l’interface utilisateur et intégration avec le robot" et nous finissons par
la présentation du dernier sprint intitulé "Scalabilité et monitoring" qui consiste à optimiser et
suivre notre produit final.

26
Seif eddine Khadhraoui Automatisation de gestion des factures

Conclusion

Ce chapitre a permis de clarifier notre approche méthodologique et de fournir une vue d’en-
semble de notre planification stratégique.
L’étude préliminaire a détaillé nos besoins spécifiques, tandis que la planification des tâches et
des sprints a structuré notre démarche de travail.
De plus, nous avons décrit l’environnement de travail qui soutient notre projet, assurant ainsi
une organisation optimale pour atteindre nos objectifs.
Nous allons maintenant nous concentrer sur la réalisation pratique du projet et sur l’évaluation
des résultats obtenus afin de mesurer l’efficacité et l’impact de nos efforts.

27
Chapitre III

Réalisation et évaluation

28
Seif eddine Khadhraoui Automatisation de gestion des factures

Introduction

Ce chapitre détaille les sprints de développement de notre solution RPA, débutant par la créa-
tion du robot TARS, suivi de la conception de l’interface utilisateur. Nous examinerons ensuite
la scalabilité et le monitoring du robot pour garantir sa performance, ainsi que son optimisation
par des ajustements. Enfin, nous présenterons les calculs d’évaluation pour mesurer l’efficacité et
l’impact de notre solution.

1 Sprint 1 : Développement du robot TARS

1.1 Sprint Backlog

Cette partie présente les différentes étapes de la partie RPA, qui constitue l’élément principal de
notre projet. Nous allons y détailler les diverses fonctionnalités d’automatisation d’un analyseur de
documents financier intitulé TARS. Chaque partie du robot (User Story) représente une séquence
de développement.

Id laaadiiis waashroom User Story Temps estimé


01 Développer le processus d’authentification pour accéder aux compte financier 2 jours
Outlook.
02 Développer le processus de téléchargement des pièces financières à partir des 1 jour
emails
03 Développer le processus de numérisation d’un document 1 jour
04 Développer le processus d’extraction du texte avec OCR 2 jours
05 Développer le processus de classification des documents avec les modèles de 5 jours
ML
06 Développer le processus de classification des documents avec la generative 5 jours
IA
07 Développer le processus d’extraction des informations avec la generative IA 5 jours
08 Développer le processus d’export des données en excel 3 jours
09 Développer le processus d’envoie du mail de validation 2 jours

TABLE III.1 – Sprint Backlog du Sprint 1

1.2 Outil RPA

Puisque nous avons choisi de travailler avec UiPath, nous décrivons le logiciel et ses fonction-
nalités afin de l’utiliser pour créer notre bot. Ce dernier propose une version gratuite (community)
qui peut être utilisée indéfiniment. La plateforme UiPath se compose de trois éléments principaux :
• UiPath Studio
• UiPath Orchestrator
• Uipath Robot

29
Seif eddine Khadhraoui Automatisation de gestion des factures

1.2.1 UiPath Studio

C’est l’outil de UiPath qu’on utilise pour concevoir et configurer nos flux de travail de pro-
cessus. Il s’agit d’un environnement à code faible dans lequel vous faites glisser et déposez des
composants prédéfinis. Ces composants sont fournis par UiPath et s’appellent Activités.
La figure suivante est une capture d’écran d’UiPath Studio[19]

F IGURE III.1 – Capture d’écran Uipath Studio

1.2.2 UiPath Orchestrator

C’est l’endroit central où nous gérons les bots UiPath. Nous pouvons déployer et suivre tous
nos bots depuis cette interface.L’orchestrateur est facilement accessible via le navigateur web et
aussi via l’application mobile.[20]

F IGURE III.2 – UiPath Orchestrator

30
Seif eddine Khadhraoui Automatisation de gestion des factures

1.2.3 UiPath Robot Assistant

C’est celui qui est responsable de l’exécution des workflows créés avec UiPath studio. Le robot
peut être utilisé avec ou sans la supervision des gens en mode assisté ou non-assisté.[21]

F IGURE III.3 – UiPath Robot Assistant

1.3 Définitions

Dans cette section, nous allons définir les technologies qui nous ont aidés à mettre en œuvre le
robot RPA, le rendant ainsi performant et intelligent.

1.3.1 OCR dans UiPath

UiPath Studio utilise des moteurs OCR, tels que Google OCR, Microsoft OCR, et Tesseract
OCR, pour reconnaître et convertir le texte contenu dans des formats visuels en données numé-
riques exploitables.
Benchmarking entre Tesseract OCR et OmniPage OCR

Fonctionnalité Tesseract OmniPage


Capture d’écran OCR Non Oui
Scanner à PDF Non Oui
Langages multiples Non Oui
Edit PDF Non Oui
PDF OCR Non Oui
Convert PDF à Word Non Oui
Image à texte Non Oui
Image processing Non Oui

TABLE III.2 – Comparaison entre Tesseract et omnipage OCR[22]

31
Seif eddine Khadhraoui Automatisation de gestion des factures

1.3.2 DU dans UiPath

UiPath Document Understanding est une solution intégrée dans la plateforme UiPath qui per-
met d’extraire et de traiter automatiquement des informations à partir de divers types de documents,
qu’ils soient structurés, semi-structurés ou non structurés.
Le ML Extractor utilise des algorithmes de machine learning pour classifier automatiquement les
documents dans des catégories spécifiques, ainsi que pour extraire et interpréter les informations
pertinentes qu’ils contiennent.

Catégorie Algorithmes Description


Modèles de classifica- SVM (Support Vector Trouve l’hyperplan séparant les différentes
tion supervisée Machines) classes de documents avec la plus grande marge
possible.
ladis washroom Régression logistique Prédit la probabilité qu’un document appar-
tienne à une certaine classe.
ladis washroom Arbres de décision Modélise les décisions prises à partir de carac-
téristiques des documents, classifiant les docu-
ments en suivant des conditions simples.
ladis washroom Random Forest Utilise plusieurs arbres de décision pour amé-
liorer la précision de la classification en combi-
nant leurs prédictions.
Modèles de deep lear- Réseaux de neurones Reconnaît les motifs dans les images de docu-
ning convolutifs (CNN) ments, efficace pour extraire des informations à
partir de documents numérisés.
ladis wshroom Réseaux de neurones Traite les séquences de texte et extrait des in-
récurrents (RNN) et formations contextuelles, utile pour la classifi-
LSTM (Long Short- cation de documents textuels.
Term Memory)
Natural Language Pro- Bag of Words (BoW) Représente les documents sous forme de vec-
cessing (NLP) teurs basés sur la fréquence des mots, permet-
tant de classifier les documents en fonction de
leur contenu textuel.
ladis washroom TF-IDF (Term Évalue l’importance des mots dans un docu-
Frequency-Inverse ment par rapport à un corpus, améliorant la pré-
Document Frequency) cision de la classification.
ladis washroom Word Embeddings Représente les mots en vecteurs capturant les
(Word2Vec, GloVe) relations sémantiques entre les mots, facilitant
une meilleure compréhension contextuelle des
documents.

TABLE III.3 – Les algorithmes ML utilisés par UiPath Document Understanding[23]

32
Seif eddine Khadhraoui Automatisation de gestion des factures

1.4 Authentification Outlook et téléchargement des documents

Uipath nous permet d’automatiser de notre analyse de document d’une manière fiable et rigou-
reuse indépendamment de la langue du document, son format et le nombre des pages mais pour ce
faire il faudrait suivre les étapes suivantes :

1.4.1 Installation des packages

Lors de la création d’un nouveau projet uipath , certains packages sont initialement inté-
grés,mais pour notre projet il faudrait installer les packages d’ocr "UiPath.IntelligentOCR.Activities"
et "UiPath.OCR.Activities" et mettre à jour les packages existants pour la meilleur fonctionnalité
des activités.

1.4.2 Assignation des variables

La première partie consiste à identifier nos variables et à leur attribuer des notations simples et
symboliques en utilisant l’acitivité "Multiple Assign" de UiPath Studio pour leur utilisation durant
le développement du robot.
La figure suivante montre nos variables utilisées pour la conception de notre robot.

F IGURE III.4 – Activité Multiple Assign

1.4.3 Authentification au compte outlook

Dans cette section, nous utilisons le compte Microsoft Outlook du secteur financier de l’entre-
prise pour recevoir les pièces financières, qui arrivent par courriel. Par conséquent, le robot doit
être authentifié et connecté à ce compte en toute sécurité pour suivre et analyser les documents
reçus.

33
Seif eddine Khadhraoui Automatisation de gestion des factures

L’activité Get Outlook Mail Messages récupère uniquement les nouveaux courriels non lus
du compte Microsoft Outlook du secteur financier, évitant ainsi toute duplication des documents
déjà traités et L’activité Save Attachments : télécharge automatiquement et les pièces jointes des
courriels contenant des documents financiers.

F IGURE III.5 – Activités Outlook

1.5 Numérisation des documents

Après la numérisation des documents téléchargés, nous devons créer une activité UiPath ap-
pelée "Digitize Document". Cette activité permet de récupérer le texte de n’importe quel PDF ou
image en utilisant un moteur d’OCR de notre choix.
Les sorties de cette activité sont le modèle d’objet de document et une variable texte contenant tout
le texte du document, qui serviront d’entrées pour l’étape de classification des documents. L’OCR
interne d’UiPath, basé sur l’apprentissage automatique, peut être utilisé dans n’importe quel scé-
nario de document. Il prend en charge les types de fichiers suivants : .gif, .png, .jpg, .jpeg, .tif, .tiff,
.bmp, et .pdf.

34
Seif eddine Khadhraoui Automatisation de gestion des factures

la figure ci suivante montre la configuration de l’activité digitize document celle du numérisa-


tion du document

F IGURE III.6 – Activité Digitize

1.6 Classification des documents avec modèles ML

Après la phase de numérisation d’un document dans notre projet on utilise différents types des
documents pour que l’extraction des données soit rigoureuse et nous devrons préciser le type du
document avant l’extraction on doit entraner le classificateur.
La figure suivante montre l’activité Classify Document qui est équipé de classificateur de ML.

F IGURE III.7 – Activité Classify Document

35
Seif eddine Khadhraoui Automatisation de gestion des factures

1.7 Classification des documents avec l’IA Genératif

Dans cette section, nous aborderons l’utilisation des classificateurs génératifs de UiPath pour
classifier les documents de manière efficace et précise. Nous utilisons la même activité intitulé
"Classify Document" mais nous changeons le classifier en Generative Classifier.

F IGURE III.8 – Activité Classify Document avec Generative classifier

Ensuite, nous devons configurer le classificateur pour être capable de classer nos types de
documents financiers, tels que les factures, les chèques et les bons de commande. La figure suivante
présente les paramètres de l’activité permettant de définir nos types de documents à classifier.

F IGURE III.9 – Classification des documents avec Generative Classifier

Pour identifier les types de documents, les informations sont fournies sous forme de paires
clé-valeur où la clé représente le nom du type de document et la valeur une description de celui-ci,
aidant ainsi le classificateur à identifier ces documents

36
Seif eddine Khadhraoui Automatisation de gestion des factures

Nous sommes confrontés à deux options : utiliser le classificateur ML ou le classificateur gé-


nératif d’UiPath. Nous allons examiner les deux options et leurs fonctionnalités respectives. Une
étude comparative sera menée pour évaluer leurs performances.

Critère Classificateur ML Classificateur Génératif


Algorithme de classifi- Utilise des algorithmes de machine Utilise des modèles génératifs avan-
cation learning traditionnels (SVM, Ran- cés (comme les réseaux de neu-
dom Forest, etc.) rones)
Précision Modérée, dépend fortement de la Élevée, capable de s’améliorer avec
qualité et la quantité des données des données variées et complexes
d’entraînement
Complexité Nécessite un prétraitement et une Moins de prétraitement requis, plus
ingénierie des fonctionnalités signi- flexible avec des données brutes
ficatifs
Temps d’entraînement Peut être long, en fonction de la Généralement plus rapide grâce à
taille et de la complexité des don- l’optimisation des algorithmes mo-
nées dernes
Adaptabilité Moins flexible, nécessite des ajuste- Très adaptable, peut identifier et
ments spécifiques pour chaque type classer une large variété de docu-
de document ments avec des descriptions

TABLE III.4 – Comparaison entre les Classificateurs ML et Classificateurs Génératifs d’UiPath

Nous avons choisi d’utiliser les classificateurs génératifs d’UiPath pour notre projet en raison de
leurs haute précision, flexibilité et adaptabilité et grâce à leurs facilité d’intégration.
De plus, nous avons déjà travaillé avec les classificateurs ML et leurs résultats n’ont pas été satis-
faisants dans la phase de validation de classification. Cette analyse comparative nous permettra de
choisir la meilleure solution pour nos besoins.
Après avoir classifié nos documents, ils sont temporairement déplacés vers un répertoire pour
une analyse ultérieure.
La figure suivante montre l’activité nécessaire pour déplacer les documents selon leurs types.

F IGURE III.10 – Activité du déplacement des documents

37
Seif eddine Khadhraoui Automatisation de gestion des factures

1.8 Extraction des données

L’extracteur génératif d’UiPath est un outil puissant et polyvalent capable d’extraire une variété
d’informations à partir de documents. Il traite le document à l’aide d’un modèle génératif et renvoie
une réponse basée sur les informations contenues dans le document et le contexte de la question.
Les factures sont généralement des documents non structurés, souvent rédigés dans différents
formats et langues, ce qui rend très difficile l’entraînement d’un modèle de machine learning pour
tous les formats existants. De même, les chèques bancaires peuvent contenir des écritures manus-
crites, ajoutant une couche de complexité.
Dans notre cas, nous entraînons l’extracteur génératif pour les factures, les bons de commande et
les chèques bancaires en définissant un ensemble de questions ou de types d’informations que nous
souhaitons extraire à partir de ces documents.
La figure suivante présente l’activité qui utilise le classificateur génératif pour l’extraction des
données.

F IGURE III.11 – Activité Extract Document Data

1.8.1 Extraction des données pour les factures

Cette partie du développement est consacrée à l’entraînement de l’extracteur afin de prélever


les informations souhaitées à partir des factures, tels que le numéro, la date, l’adresse et le montant
total.

F IGURE III.12 – Informations extraites depuis les factures

38
Seif eddine Khadhraoui Automatisation de gestion des factures

1.8.2 Extraction des données pour les chèques bancaires

De même, pour les chèques, nous avons également entraîné l’extracteur à prélever les informa-
tions souhaitées à partir de ces documents. Cela est plus difficile en raison des écritures manuscrites
que l’on peut y trouver. mais nous avons réussi à prélever des informations tels que le numéro de
chèque, le nom du banque, le titulaire autorisé, le montant écrit et la date comme le montre la
figure suivante

F IGURE III.13 – Informations extraites depuis les chèques

1.8.3 Extraction des données pour les bons de commande

Nous avons entrainé notre robot à prélever les informations suivantes depuis ces documents :
le numéro, le nom de fournisseur, l’adresse de livraison et le montant totale.

F IGURE III.14 – Informations extraites depuis les bons de commande

Avec cette dernière activité d’extraction, nous terminons la phase d’extraction des données à
partir de nos documents classifiés.

39
Seif eddine Khadhraoui Automatisation de gestion des factures

1.9 Export des données

La phase suivante de notre analyseur de document est l’ajout et la configuration d’une activité
d’export des résultats d’extraction, cette étape permet de transformer la structure des résultats de
l’extraction à une structure simple de format "data-table" qu’on peut l’exporter facilement en excel.

F IGURE III.15 – Processus Excel pour export des données

1.10 Envoie du rapport par mail

Une partie essentielle de notre robot RPA est dédiée à l’envoi d’un rapport des fichiers traités
avec les données exportées par email. En utilisant les activités intégrées de UiPath Studio, le robot
envoie automatiquement un rapport aux parties prenantes par email.

F IGURE III.16 – Activité envoie du rapport par mail

40
Seif eddine Khadhraoui Automatisation de gestion des factures

1.11 Vue d’ensemble du Robot TARS

Cette section présente la structure générale du robot RPA en mettant en lumière ses différentes
activités UiPath et en résumant leurs fonctionnalités. La figure suivante offre un aperçu de la struc-
ture générale du TARS dans Uipath Studio.

F IGURE III.17 – Vue d’ensemble du robot TARS

Pour mieux expliquer le processus, voici les fonctionnalités du TARS lors de son déclenche-
ment. Il Il s’authentifie en toute sécurité au compte Outlook du secteur financier pour surveiller les
nouveaux e-mails contenant des fichiers financiers, il télécharge les pièces jointes et les enregistre
dans un emplacement prédéfini. Ensuite, il analyse les documents téléchargés en les classifiant par
type (facture, bon de commande, chèque bancaire) et les déplace vers un emplacement temporaire.
TARS extrait ensuite les données de chaque document et les exporte dans des fichiers Excel. Enfin,
il envoie un rapport final contenant le nombre de fichiers traités, leur classification et les données
extraites.

F IGURE III.18 – Processus du robot TARS

41
Seif eddine Khadhraoui Automatisation de gestion des factures

1.12 Visualisation des Résultats du Robot

La figure suivante présente les données extraites d’une facture au format PDF analysée par le
robot TARS.

F IGURE III.19 – Résultat de l’extraction des données d’une facture avec TARS

La figure suivante présente une capture d’écran du rapport généré et envoyé par courriel par le
robot TARS après avoir terminé le traitement des documents reçus.

F IGURE III.20 – Envoi du rapport par mail

42
Seif eddine Khadhraoui Automatisation de gestion des factures

2 Sprint 2 : Développement de l’interface utilisateur

Les interfaces graphiques représentent un élément indispensable pour la réalisation d’un projet
RPA. En effet, c’est avec elles que les utilisateurs interagissent directement avec notre robot. Dans
cette section nous allons illustrer alors l’interface de connexion mise en place pour déclencher le
robot.

2.1 Sprint Backlog

Id laadis washroom User Story Temps estimé


01 Création d’un Super Admin 3 jours
02 Développement de la fonctionnalité d’inscription des utili- 3 jours
sateurs
03 Développement de la fonctionnalité de connexion (log in) 3 jours
04 Développement de les fonctionnalités de gestion des 3 jours
comptes et déconnexion (log out)
05 Développement du page d’accueil et le bouton "Trigger" du 5 jours
robot
06 Connexion entre UiPath et l’interface utilisateur 3 jours
07 Développement du Trigger de robot 3 jours
08 Développement du Dashboard 8 jours

TABLE III.5 – Sprint 2 Backlog

2.2 Création du Super admin

Nous avons implémenté une fonctionnalité permettant la création d’un "super-admin" avec des
privilèges étendus afin de faciliter la gestion des utilisateurs au sein de notre application. Pour faire
cela nous avons utilisé la commande de python en Django comme le montre la figure suivante

F IGURE III.21 – Création du super admin

43
Seif eddine Khadhraoui Automatisation de gestion des factures

2.2.1 Inscription utilisateur

Tout d’abord, nous avons développé la page d’accueil, proposant des liens pour l’enregistre-
ment des nouveaux utilisateurs ou la connexion ultérieure. Ensuite, nous avons créé la page d’ins-
cription, développé un formulaire, implémenté sa logique et validé les champs. La figure suivante
présente le formulaire d’inscription de notre application.

F IGURE III.22 – Page d’inscription des utilisateurs

2.2.2 Création du page de Login

Après avoir créé la page d’enregistrement nous développons ensuite la page de connexion
(Login). La figure suivante montre le design de la page de connexion de l’application.

F IGURE III.23 – Page de Login User

44
Seif eddine Khadhraoui Automatisation de gestion des factures

2.2.3 Gestion des comptes et déconnexion

Nous avons entrepris la création d’une fonctionnalité qui inclut la gestion complète des comptes
utilisateurs ainsi que la possibilité de se déconnecter comme le montre la figure suivante .

F IGURE III.24 – Gestion des informations utilisateur

2.2.4 Développement du page d’accueil et le bouton Trigger

Après s’être connecté, l’utilisateur est redirigé vers la page d’accueil, qui affiche ses informa-
tions ainsi qu’un bouton pour déclencher le robot. La figure suivante représente la page d’accueil
de notre application

F IGURE III.25 – Page d’accueil de l’application

45
Seif eddine Khadhraoui Automatisation de gestion des factures

2.2.5 Connexion entre UiPath et l’interface

Afin d’assurer la fonctionnalité du bouton Trigger que nous avons développé, nous devons
d’abord configurer les connexions entre notre application et le service de déclencheurs de UiPath.
Pour ce faire, nous avons pris soin de lier notre compte UiPath avec l’interface en utilisant le pro-
tocole SMTP (Simple Mail Transfer Protocol), un standard de communication utilisé pour envoyer
des courriels d’un serveur à un autre via Internet. Le déclencheur enverra un courriel à l’UiPath
Orchestrator afin de déclencher le robot en toute sécurité. La figure suivante présente le bout de
code qui permet d’envoyer le courriel en toute sécurité en utilisant le protocole SMTP de Google.

F IGURE III.26 – Capture de code du l’envoi de mail

2.2.6 Développement du Dashboard

Nous avons développé un tableau de bord pour le suivi des données de notre robot RPA, per-
mettant une visualisation claire et détaillée des documents traités, des bilans, de leurs types et
des dates de traitement. Ce tableau de bord utilise Chart.js, une bibliothèque JavaScript simple et
flexible pour les visualisations de données, qui permet de créer des graphiques interactifs et ré-
actifs. Grâce à cette interface, les utilisateurs peuvent facilement surveiller les documents traités
avec le robot TARS, identifier les tendances et analyser les résultats. Nous avons utilisé la do-
cumentation de Chart.js qui fournit des instructions détaillées sur l’installation, la configuration
et l’utilisation de la bibliothèque, ainsi que des exemples pratiques pour intégrer divers types de
graphiques dans les applications web.

F IGURE III.27 – Dashboard du Robot

46
Seif eddine Khadhraoui Automatisation de gestion des factures

3 Sprint 3 : Scalabilité et monitoring

Après le développement des différentes fonctionnalités de notre projet, nous avons besoin d’op-
timiser le robot avant de mettre en place un outil de monitoring et de gestion d’exécution de notre
projet, dans ce sprint on va s’intéresser à l’optimisation du fonctionnement du robot et nous nous
concentrerons sur la partie Uipath cloud qui nous permet publier et suivre notre robot.

3.1 Sprint Backlog

Id User Story Temps estimé


01 Gestion des exceptions du TARS 7 jours
02 Optimisation du TARS 6 jours
03 Monitoring du robot RPA 5 jours

TABLE III.6 – Sprint 3 Backlog

3.2 Gestion des exceptions pour TARS

3.2.1 Définition des exceptions en RPA

La RPA est une technologie qui permet l’automatisation de tâches répétitives et basées sur des
règles en utilisant des logiciels ou des "robots". Cependant, comme tout autre logiciel, les robots
RPA peuvent rencontrer des exceptions, c’est-à-dire des événements inattendus ou des erreurs qui
perturbent le flux normal du processus automatisé.

3.2.2 Les types d’exceptions

Les exceptions dans la RPA peuvent être classées en deux grandes catégories : les exceptions
système et les exceptions métier.
— Les exceptions système :
Ce sont des erreurs liées à l’environnement technique ou à l’infrastructure sur laquelle le robot
opère. Elles peuvent inclure des problèmes de connexion réseau (perte de connexion Internet, ser-
veurs inaccessibles), des erreurs d’application (pannes, applications qui ne répondent pas, erreurs
dans les API), des problèmes de fichier (fichiers manquants, erreurs de lecture/écriture, formats
incorrects), et des temps d’attente dépassés lorsque le système ne répond pas dans le délai imparti.
— Les exceptions métier :
Ce sont des erreurs liées à la logique du processus automatisé. Elles peuvent inclure des données
incorrectes ou manquantes (champs obligatoires non remplis, données non valides), des règles
métier non respectées (violations des règles définies, conditions non remplies), et des cas non
standard (situations non prévues par le processus automatisé).

47
Seif eddine Khadhraoui Automatisation de gestion des factures

3.2.3 Exceptions rencontrées dans notre projet

Dans cette section, nous décrivons les différentes exceptions les plus critiques que nous avons
identifiées au cours de la série de tests avec TARS.
Nous allons commencer par une exception liée à la taxonomie du moteur OCR de UiPath. Ce
problème provient du package intelligent.ocr. Pour le résoudre, nous avons géré les packages OCR
et les avons configurés pour qu’ils s’adaptent aux activités de notre projet. La figure suivante
montre le message d’erreur lié à cette exception

F IGURE III.28 – Exception de taxonomy OCR

Lors l’extraction des données, cette exception de timeout s’est manifestée lorsque nous avons
utilisé l’activité "Extract Document Data" pour interagir avec une API. C’est une exception dans
UiPath qui se produit lorsque l’API utilisée pour extraire les données d’un document met trop
de temps à répondre. Pour résoudre cette exception nous avons pris les mesures d’ajuster les pa-
ramètres de "timeout" et optimiser l’API afin de réduire le temps de réponse en optimisant les
requêtes.
La figure suivante illustre le message d’erreur lié à cette exception

F IGURE III.29 – Exception du API pour l’extraction des données

Nous avons également pris soin d’inclure d’autres exceptions importantes, telles que les limi-
tations de taille de fichier imposées par la version gratuite de la communauté UiPath, ainsi que les
exceptions liées à la version du projet.

48
Seif eddine Khadhraoui Automatisation de gestion des factures

3.3 Optimisation du TARS

Après avoir effectué une série de tests approfondis, nous abordons maintenant la phase d’op-
timisation du robot, où nous mettons en œuvre les améliorations nécessaires pour garantir son
efficacité et sa performance optimales.
La figure ci-dessous illustre la durée de traitement avant l’optimisation du robot TARS pour un
processus complet Nous remarquons que la durée initiale est de 3 minutes et 16 secondes.

F IGURE III.30 – Durée de process avant l’optimisation

La figure suivante présente les résultats du test après l’optimisation du robot TARS, démontrant
les améliorations apportées à la durée de traitement dans le processus complet. Nous remarquons
que la durée est améliorée avec une nouvelle valeur de 2 minutes et 33 secondes.

F IGURE III.31 – Durée de process après l’optimisation

49
Seif eddine Khadhraoui Automatisation de gestion des factures

3.4 Monitoring du robot

Une fois le robot fonctionne d’une manière efficace, nous pouvons le déployer sur le cloud.

3.4.1 Export du robot vers UiPath Cloud

L’exportation vers UiPath Cloud implique généralement le déploiement de nos robots auto-
matisés sur la plateforme cloud de UiPath. Pour lequel on utilise UiPathOrchestrator, qui est la
plateforme de gestion des robots, pour orchestrer et déployer nos automatisations sur le cloud.
Pour exporter un processus vers l’orchestrateur, on doit publier le projet depuis UiPath Studio vers
Orchestrator.

F IGURE III.32 – Publication du robot TARS sur UiPath Orchestrator

3.4.2 Plateforme UiPath Orchestrator

UiPath Orchestrator offre des fonctionnalités de surveillance avancées pour nos robots. Il per-
met de suivre l’état d’exécution des robots, de visualiser les journaux d’exécution et de recevoir
des alertes en cas d’erreurs. Les tableaux de bord et les rapports dans UiPath Orchestrator per-
mettent d’analyser les performances des robots et de prendre des mesures correctives si nécessaire.
Pour le monitoring, UiPath Orchestrator collecte et stocke des données sur l’exécution des robots,
lesquelles peuvent être exportées pour une analyse plus approfondie. Des rapports personnalisés
peuvent également être générés pour répondre à des besoins spécifiques de surveillance. Voici les
éléments clés du monitoring des projets sur l’orchestrateur.
— Le Tableau de bord :
Orchestrator propose un tableau de bord intuitif qui offre une vue d’ensemble des robots en
cours d’exécution, des travaux en attente et des journaux d’exécution
— La gestion des robots :
On peut suivre l’état des robots, leur disponibilité, et déclencher des actions telles que la
connexion, la déconnexion ou la mise à jour du logiciel.
— La planification des travaux :
Orchestrator permet de planifier l’exécution des processus automatisés ‘à des moments spé-
cifiques, assurant ainsi un suivi temporel.
— Les journaux d’exécution :
Les journaux fournissent des détails sur chaque exécution de processus, aidant à diagnosti-
quer les problèmes et à suivre les performances.
— Sécurité :
Orchestrator offre des fonctionnalités de sécurité avancées, telles que la gestion des utilisa-
teurs, des rôles et des autorisations pour assurer un contrôle d’accès adéquat.

50
Seif eddine Khadhraoui Automatisation de gestion des factures

En résumé, le monitoring d’un projet sur UiPath avec Orchestrator offre une visibilité complète
sur l’exécution des robots, permettant une gestion efficace, une résolution rapide des problèmes, et
une optimisation des performances des processus automatisés.

F IGURE III.33 – Dashboard UiPath Orchestrator

3.4.3 Les déclencheurs des Robots

Les déclencheurs (Trigger) des robots en uipath sont des interrupteurs qui mettent en marche
ou en arrêt notre processus automatisé. Ils peuvent être déclenché par une variété d’événements,
tels que l’arrivée d’un nouveau fichier dans une file d’attente (queue) , ils peuvent se déclencher à
l’expiration d’un délai ou l’occurrence d’un événement dans un système externe. Dans notre cas,
nous avons créé un Trigger dans l’interface utilisateur que nous avons déjà développé. Il reste à le
configurer dans UiPath Orchestrator pour contrôler TARS et le déclencher.
La plateforme "Integration Service" de UiPath Orchestrator nous permet de créer un Trigger afin
de déclencher une automatisation à l’aide d’une fonctionnalité externe du cloud UiPath. La figure
suivante illustre notre Trigger, qui est lié à l’interface du robot TARS.

F IGURE III.34 – Trigger du robot TARS

Nous constatons que la sécurité du déclencheur est associée au compte de messagerie créé pour
la licence UiPath, renforçant ainsi la sécurité de la connexion entre l’interface de l’application et
le robot dans le cloud.

51
Seif eddine Khadhraoui Automatisation de gestion des factures

4 Évaluataion

4.1 RPA Assesment

RPA Assessment est un processus d’évaluation systématique visant à identifier et analyser les
opportunités d’automatisation des processus métiers au sein d’une organisation. L’objectif de cette
évaluation est de déterminer les processus qui sont les meilleurs candidats pour l’automatisation.
Ce tableau présente l’évaluation du temps de traitement pour chacun du traitement manuel et l’au-
tomatique

ladis washroom Nombre des factures par jours 20 factures pour 1 agent
ladiis Jours ouvrés 22 jours
alison bugers Factures par mois 440 factures
ladis washroom Horaire de travail dans une 8 heures
journée
Processus manuel Horaire de travail dans un 176 heures
mois
ladiis washroom Temps de traitement d’une 0.05 heures
facture en heures
ladis Temps de traitement d’une 3 minutes
facture en minutes
ladiis Nombre des Factures traitées 1 robot traite 4 factures en 3 minutes
Processus Automatique Temps de traitement d’une 0.0125 heures
facture en heures
ladis washroom Temps de traitement d’une 0.75 minutes
facture en minutes
Gain Gain en temps 2.25 minutes pour chaque facture
ladis washroom Taux de gain 75%

TABLE III.7 – Évaluation du temps de traitement

Pour calculer le nombre des factures traitées par mois nous avons multiplié le nombre des factures
traitées chaque jour avec le nombre des jours ouvrés comme le montre la formule suivante

Nombre des factures par mois = Nombre des factures par jour × Nombre des jours ouvrés

Afin de calculer le gain en temps et le taux de gain nous avons utilisé ces 2 formules.

Gain en temps = Temps de traitement manuel − Temps de traitement automatique


Gain en temps
Taux de gain = × 100
Temps de traitement manuel

52
Seif eddine Khadhraoui Automatisation de gestion des factures

Le tableau suivant présente l’évaluation du Coût de traitement

ladiis Salaire de base agent 1400 C


Processus manuel Horaire de travail mensuel 176 heures
ladis washroom Coût mensuel de traitement d’une facture 7.95 C
ladis Temps de développement + conception 2 mois
Processus automatique Salaire de base ingénieur RPA 2000 C
alison Licence UiPath mensuel 385 C
ladis washroom Coûts de maintenance annuel 1200 C
ladiis Coûts total RH annuel (initiale) 16800 C
Total des coûts Coûts total du développement 4000 C
ladis salamanka Coûts opérationnels totales 5820 C
ladis washroom Coûts totale dev + opérationnel 8620 C
ladiis Gain en Coût 8180 C
Gain Taux 42%
ladiis Êconomie réalisée 8180 C

TABLE III.8 – Êvaluation du Coût de traitement

Ce tableau décrit le salaire de base d’un agent financier, qui est de 1400 C. Cet agent travaille 176
heures par mois. Pour déterminer le coût de traitement manuel d’une seule facture, nous avons
utilisé la formule suivante :
Salaire de base
Coût mensuel de traitement d’une facture =
Horaire de travail mensuel
D’où le coût total annuel initial pour le traitement manuel est calculé par la formule suivante :

Coût totale RH annuel = Salaire de base de l’agent × 12

Les coûts de développement correspondent au salaire mensuel de base de l’ingénieur RPA multi-
plié par la durée de développement, qui est de 2 mois.
Les coûts opérationnels incluent la licence annuelle d’UiPath et les coûts de maintenance tech-
nique.

La somme des coûts opérationnels et développement représentent les coût RPA.

Coût RPA = Coût opérationnels + Coût de développement


Le gain en coût ou l’économie réalisé se calcule de cette façon :

Gain en coût = Coût initiale − Coût RPA

De plus, pour calculer le taux de gain en pourcentage, nous utiliserons la formule suivante :
Gain en coût
Taux de gain = × 100
Coût initiale

53
Seif eddine Khadhraoui Automatisation de gestion des factures

4.2 ROI

En nous basant sur les valeurs trouvées dans la partie précédente concernant l’évaluation du
RPA, nous allons calculer le ROI en utilisant la formule suivante :

Économies réalisées − Coûts opérationnels


ROI = × 100
Coûts initiaux
8180 − 5820
ROI = × 100 = 14%
16800
Le retour sur investissement (ROI) de notre projet s’élève à 14%, ce qui démontre la rentabilité
de l’automatisation des processus robotiques (RPA) à long terme. Ce taux de ROI indique que les
avantages financiers obtenus grâce à l’automatisation surpassent les coûts initiaux et opérationnels
associés.

Conclusion

Dans ce chapitre, nous avons détaillé les sprints de développement du robot RPA et de l’inter-
face utilisateur. Les sprints RPA ont permis d’automatiser les tâches répétitives, améliorant ainsi
l’efficacité opérationnelle, tandis que les sprints de développement de l’interface ont garanti une
utilisation fluide et intuitive. salamankaaaa ladiis
L’évaluation des gains en temps et en coût a montré un retour sur investissement (ROI) de 14%,
validant la pertinence et la rentabilité de notre projet.

54
Conclusion générale

Dans ce projet de fin d’études, nous avons réalisé une solution complète pour l’automatisa-
tion de l’analyse des documents financiers à l’entreprise SINORFI. Cette solution RPA utilise les
technologies UiPath Document Understanding et le Generative IA pour améliorer l’efficacité et la
précision de l’analyse.
La solution est composée de deux éléments principaux : un robot RPA et une interface utili-
sateur. Le robot RPA est chargé de récupérer les documents financiers depuis les courriels, de les
analyser et de générer un rapport. L’interface est chargée de faciliter l’interaction entre l’utilisateur
et le robot.
La solution a été développée en utilisant la méthodologie Agile, ce qui a permis de la mettre en
œuvre rapidement et efficacement. Les différents sprints ont permis de livrer des fonctionnalités
fonctionnelles et de recueillir les retours des utilisateurs.
Les résultats de l’évaluation de la solution sont très positifs. La solution a permis de réduire le
temps nécessaire à l’analyse des documents financier de 75%. Elle a également permis d’améliorer
la précision de l’analyse, ce qui a réduit le nombre d’erreurs.
Le prototype a été testé sur un ensemble de documents réels. Les résultats des tests montrent
que le modèle de classification des documents, de l’extraction des informations et de l’export des
données sont capables de répondre aux besoins de l’entreprise.
C’est un outil précieux pour l’entreprise SINORFI ou il permet de libérer les ressources hu-
maines pour se concentrer sur des tâches à plus forte valeur ajoutée. La solution présente un certain
nombre de perspectives d’évolution. La solution pourrait être étendue à d’autres types de docu-
ments financiers, tels que les bons de livraisons ou les reçus.
Et d’autre part, notre projet pourrait être intégrée avec d’autres systèmes et plates-formes
comme le drive et le SharePoint. Cela permettrait de faciliter la collaboration entre les différents
services de l’entreprise. Ces évolutions permettraient de rendre la solution encore plus performante
et de répondre aux besoins des entreprises.

55
Bibliographie

[1] Site SINORFI url :https://sinorfi.com/Visité le 05/02/2024


[2] Impacts et Inconvénients du gestion manuel url :https://digital-solutions.konicaminolta.fr Vi-
sité le 10/02/2024
[3] Site officiel UiPath url :https://docs.uipath.com/fr Visité le 5/03/2024
[4] Domaines de l’RPA url :https://www.arondor.com/domaines/automatisation-intelligente/ Vi-
sité le 9/03/2024
[5] Données Struturées url :https://www.singlestore.com/blog/what-is-structured-semi-structured-
and-unstructured-data/ Visité le 15/03/2024
[6] BPMN url :https://www.bpmn.org/ Visité le 15/03/2024
[7] PDD url :https://www.guvi.in/blog/what-is-pdd-sdd-in-rpa/ Visité le 15/03/2024
[8] RPA cognitive url :https://ieeexplore.ieee.org/document/9140440 Visité le 08/03/2024
[9] Document Understanding url :https://docs.oracle.com/fr-fr/iaas/Content/document-
understanding/using/pretrainedd oca im odels.htmpretrainedd oca im odels Visité le 10/03/2024
[10] IA generative url :https://www.talend.com/fr/resources/generative-ai/ Visité le 18/03/2024
[11] RPA tools url :https://www.keymarkinc.com/rpa-tools-comparison/ Visité le 29/03/2024
[12] Êtude de l’existant utl :https://www.anyti.me/fr/fiches-pratiques/les-10-meilleurs-logiciels-
de-facturation-pour-entrepreneur/42 Visité 20/03/2024
[13] CSS url :https://glossaire.infowebmaster.fr/css/ Visité le 22/03/2024
[14] Djando url :https://developer.mozilla.org/fr/docs/Learn/Server-side/Django/Introduction Vi-
sité le 22/03/2024
[15] JavaScript url :https://developer.mozilla.org/en-US/docs/Learn/JavaScript/Firststeps/W hati sJ avaScript
Visité le 22/03/2024
[16] Python url :https://www.python.org/doc/essays/blurb/ Visité le 22/03/2024
[17] SCRUM url :https://resources.scrumalliance.org/Article/scrum-team Visité le 03/04/2024
[18] Camunda url :https://camunda.com/ Visité le 12/04/2024
[19] UiPath Studio url https://www.uipath.com/product/studio Visité le 10/04/2024
[20] UiPath Orchestrator url :https://www.uipath.com/product/orchestrator Visité le 12/04/2024
[21] Robot assistant url :https://www.uipath.com/product/software-robot-assistant Visité le
12/04/2024
[22] OCR url :https://docs.uipath.com/fr/activities/other/latest/document-understanding/about-
the-uipath-ocr-activities-pack
Visité le 15/05/2024
[23] DU dans UiPath url :https://docs.uipath.com/fr/document-understanding/automation-
cloud/latest/user-guide/automations-in-document-understanding Visité le 17/04/2024
[24] Bootstrap url :https://getbootstrap.com/ Visité le 17/04/2024

56
Annexes

57

Vous aimerez peut-être aussi