SlideShare une entreprise Scribd logo
1  sur  27
Projet de fin d’études
Conception et développement d’une application
web aide Auditeur ‘SmartAudit’
Réalisé par :
M. Mohamed Aziz FERCHICHI
M. Mohamed Ayoub OUERTATANI
Encadré par :
Mme. Olfa LAMOUCHI
M. Tarek BELDI
Organisme d’accueil
Contexte du projet
Analyse des besoins
Sommaire
Etude conceptuelle
Réalisation
Conclusion et perspectives
4
Organisme d’accueil
• Smart IT Fondée en 2006.
• Cabinet d’audit et de conseils pour les certifications ISO.
Tunisie
Guinée Conakry
5
Contexte du projet
Etude de l’existant
 Un gage de confiance pour les consommateurs
 les produits et services sont sûrs, fiables et de
bonne qualité
Client
Auditeur
Mission d’audit
6
Contexte du projet
Etude de l’existant
Auditeur
Réunion avec la
direction
Interview
Observation
terrain
Collecte des documents
7
Contexte du projet
Etude de l’existant
• Prendre des notes
• Préparation de questionnaire d’audit sous format Excel
• Donner une cote de conformité varie de 0 à 5 pour chaque contrôle
Auditeur
8
Contexte du projet
Problématique
Perte de temps lors de la recherche et l’échange des données
Vulnérabilité et faible niveau de sécurité
Le risque de perte des documents entrainant l’incohérence des données
La journalisation et la traçabilité sont inexistantes
9
Contexte du projet
Solution proposée
Traçabilité
Sécurité
Rapport et
Statistiques
Auditeur
Client
Communication
Centralisation
des données
Gérer les missions d’audit
Gérer les questionnaires d’audit
Collaborer à la réalisation de mission d’audit
Suivre l’avancement du mission d’audit
10
Analyse des besoins
Besoins fonctionnels
Authentication
Gestion des
utilisateurs
Gestion des
sessions
Gestion de la
messageries
Gestion des
missions
d’audit
Gestion des
Templates
d’audit
Gestion des
navigations
Gestion de la
configuration
Gestion des
clients
11
Gérer utilisateurs
Gérer sessions
Gérer messagerie
Consulter Mission
d’audit
Gérer Template d’audit
Gérer mission d’audit
Gérer navigations
Gérer configuration
Gérer clients
Auditeur
Client
Administrateur
S’authentifier« include »
12
Consulter Mission
d’audit
Ajouter commentaire
Consulter activités
Répondre aux
questionnaires
Gérer missions d’audit
Consulter
questionnaire
Supprimer
questionnaire
Gérer jalons
Auditeur
Client
Administrateur
Modifier mission
d’audit
Ajouter mission
d’audit
Générer rapport
d’audit
13
Scrum
BacklogProduct
• S’authentifier
• Gérer les utilisateurs
• Gérer les clients
• Gérer les clients (Suite)
• Gérer les missions d’audit
• Gérer la configuration
• Gérer Template d’audit
• Gérer les missions d’audit (Suite)
• Gérer les configuration (Suite)
• Gérer la messagerie
• Gérer la configuration (Suite)
• Gérer les navigations
Sprint 1
Sprint 2
Sprint 3
Sprint 4
Sprint 5
4 semaines
4 semaines
4 semaines
4 semaines
4 semaines
14
Disponibilité
Ergonomie
Optimisation des ressources
Rapidité
Analyse des besoins
Besoins non fonctionnels
15
Réponse http
TCP/IP
Requête http
TCP/IP
Etude conceptuelle
Architecture physique
Serveur BD MySql
v5.1.73 redhat-linux
Client Serveur web Apache
V2.2.15 (Unix)
Serveur VPS
Réponse
Requête
16
Etude conceptuelle
Diagramme de classe
1..1
1..*
0..1
0..*
0..1
0..*
0..1
0..*
0..1
0..*
1..*
0..1
0..1
0..*
0..1
0..*
1..1
0..*
0..1
0..*
0..1
0..*
1..1
0..*
1..1
0..1
1..*
0..*
1..1
1..*
1..1
0..*
1..1
0..*
1..1
0..*
1..1
0..*
1..1
0..*
0..*
1..1
0..*
1..1
user_role
-
-
role_id
name
: int (11)
: String(20)
account_details
-
-
-
-
-
-
-
-
-
-
-
-
account_details_id
fullname
company
city
country
locale
address
phone
mobile
skype
language
avatar
: String
: String (160)
: String (150)
: String (40)
: String (100)
: String (100)
: String (64)
: String (32)
: String (32)
: String (100)
: String 40)
: String (200)
+ update_account_details () : void
client
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
client_id
primary_contact
name
email
short_note
website
phone
mobile
fax
address
city
zipcode
currency
skype_id
linkedin
facebook
twitter
language
country
vat
client_status
profile_photo
: int (11)
: int
: String (255)
: String (64)
: String
: String (100)
: String (64)
: String (64)
: String (64)
: String (255)
: String (100)
: String (20)
: String (32)
: String (100)
: String (255)
: String (255)
: String (255)
: String (100)
: String (255)
: String (64)
: byte (1)
: String
+
+
+
+
add_client ()
update_client ()
delete_client ()
client_details ()
: void
: void
: void
: void
users
-
-
-
-
-
-
-
-
-
-
-
-
-
-
user_id
username
password
email
activated
banned
ban_reason
new_password_key
new_password_requested
new_email
new_email_key
last_ip
last_login
online_status
: int (11)
: String (50)
: String (255)
: String (100)
: byte (1)
: byte (4)
: String (255)
: String (50)
: Date
: String (100)
: String (50)
: String (40)
: Date
: byte (1)
+
+
+
+
add_user ()
update_user ()
delete_user ()
user_details ()
: void
: void
: void
: void
audit_mission
-
-
-
-
-
-
-
-
-
-
audit_mission_id
audit_mission_name
client_id
assign_to
progress
start_date
end_date
audit_mission_status
description
notify_client
: int(11)
: String(100)
: int(11)
: String
: String(50)
: String(20)
: String(20)
: String(20)
: String(500)
: String(3)
+
+
+
+
add_audit_mission ()
update_audit_mission ()
delete_audit_mission ()
update_status_audit_mission ()
: void
: void
: void
: void
company_details
-
-
config_key
value
: String(255)
: String
+
+
save_config ()
config_details ()
...
: void
: void
department
-
-
department_id
name
: int
: int
+
+
+
add_departement ()
update_departement ()
delete_departement ()
...
: void
: void
: void
mail_box
- mail_box_id : int
+ save_mail_box ()
...
: void
template
- template_id : int
+ save_template ()
...
: void
configuration
- configuration_id : int
email_templates
-
-
-
-
email_templates_id
email_group
subject
template_body
: int
: String(150)
: String(255)
: String
+ save_email_template ()
...
: void
files
-
-
-
-
-
-
-
-
-
files_id
title
description
uploaded_path
file_name
uploaded_by
date_posted
size
ext
: int(11)
: String(255)
: String
: String(
: String
: int(11)
: DateTime
: int(10)
: String(100)
+
+
upload_file ()
delete_file ()
: void
: void
email
-
-
-
-
-
-
-
-
-
-
-
-
-
inbox_id
to
from
subject
message_body
attach_file
attach_file_path
attach_filename
message_time
view_status
favourites
notify_me
deleted
: int(11)
: String(100)
: String(100)
: String(300)
: String
: String(200)
: String
: String
: DateTime
: byte
: byte
: byte
: String(3)
+
+
+
+
+
send_email ()
delete_email ()
put_email_draft ()
put_email_favorite ()
recive_email ()
...
: void
: void
: void
: void
: void
langue
-
-
-
-
code
name
icon
active
: String(10)
: String(45)
: String(45)
: int(2)
+ save_lang ()
...
: void
milestones
-
-
-
-
milestones_id
milestone_name
description
date
: int(11)
: String(100)
: String(200)
: Date
+
+
+
add_milestones ()
delete_milestones ()
update__milestones ()
: void
: void
: void
audit_forms
-
-
-
-
-
-
-
-
quotaions_id
qutations_form_title
user_id
client_id
name
email
mobile
quotaions_date
: int
: int
: int
: int
: int
: int
: int
: int
+
+
+
+
add_audit_forms ()
delete_audit_forms ()
update_audit_forms ()
view_audit_forms ()
...
: void
: void
: void
: void
audit_forms_details
-
-
-
-
quotation_details_id
quotations_id
qutation_form_data
quotation_data
: int(11)
: int(11)
: String
: String
+ print_audit_form_details ()
...
: void
audit_template
-
-
-
-
-
-
quotationforms_id
quotationforms_title
quotationforms_code
quotaionforms_status
quotation_created_by_id
quotationforms_date_created
: int(11)
: String(200)
: String
: String(20)
: int(11)
: DateTime
+
+
+
+
add_audit_template ()
update_audit_template ()
view_audit_template ()
delete_audit_template ()
...
: void
: void
: void
: void
countries
-
-
id
value
: int(6)
: String250)
+ save_countries ()
...
: void
activities
-
-
-
-
-
-
-
-
-
-
activities_id
user
module
module_field_id
activity
activity_date
icon
value1
value2
deleted
: int(11)
: int(11)
: String(32)
: int(11)
: String(255)
: DateTime
: String(32)
: String(100)
: String(100)
: int(11)
+ add_activities () : void
status
-
-
status_id
name
: int(11)
: String(30)
+
+
add_status ()
update_status ()
...
: void
: void
locale
-
-
-
-
locale
code
language
name
: String(10)
: String(10)
: String(100)
: String(250)
+ save_locale ()
...
: void
1..*
1..1
1..*
0..*
users
-
-
-
-
-
-
-
-
-
-
-
-
-
-
user_id
username
password
email
activated
banned
ban_reason
new_password_key
new_password_requested
new_email
new_email_key
last_ip
last_login
online_status
: int (11)
: String (50)
: String (255)
: String (100)
: byte (1)
: byte (4)
: String (255)
: String (50)
: Date
: String (100)
: String (50)
: String (40)
: Date
: byte (1)
+
+
+
+
add_user ()
update_user ()
delete_user ()
user_details ()
: void
: void
: void
: void
audit_mission
-
-
-
-
-
-
-
-
-
-
audit_mission_id
audit_mission_name
client_id
assign_to
progress
start_date
end_date
audit_mission_status
description
notify_client
: int(11)
: String(100)
: int(11)
: String
: String(50)
: String(20)
: String(20)
: String(20)
: String(500)
: String(3)
+
+
+
+
add_audit_mission ()
update_audit_mission ()
delete_audit_mission ()
update_status_audit_mission ()
: void
: void
: void
: void
audit_template
-
-
-
-
-
-
quotationforms_id
quotationforms_title
quotationforms_code
quotaionforms_status
quotation_created_by_id
quotationforms_date_created
: int(11)
: String(200)
: String
: String(20)
: int(11)
: DateTime
+
+
+
+
add_audit_template ()
update_audit_template ()
view_audit_template ()
delete_audit_template ()
...
: void
: void
: void
: void
22 classes
17
Réalisation
Langages et bibliothèques de développement
HTML5 CSS3 PHP5 Jquery JS
Langage de balisage conçu pour représenter les pages webLangage qui décrit la présentation des documents HTML et XMLLangage de programmation libreUne bibliothèque JavaScript libreLangage de programmation de scripts
18
Architecture MVC
Communauté active
Léger et simple d’utilisation
Nombreuses librairies
Documentation claire et complète
Réalisation
Choix de Framework CodeIgniter
19
Réalisation
Environnement logiciel
1. Environnement de développement IDE
Sublime text 3
20
Réalisation
Environnement logiciel
Balsamiq
Adobe Photoshop
Camtasia
Adobe illustrator
2. Traitement d’images et vidéos
21
Réalisation
Environnement logiciel
Orange Scrum easyBacklog PowerAMC Google Drive
Un outil de gestion du backlog produitUn logiciel de gestion de projets basé sur la méthodologie agile SCRUMEnvironnement graphique de modélisation pour le langage UML
3. Autres outils
Un service de stockage et de partage de fichiers dans le cloudModule Linux pour le partage de fichiers entre les deux environnements Windows el Linux
22
Réalisation
Exploitation de l’application
23
Réalisation
Les contraintes
Le changement fréquent des besoins fonctionnels au cours de la phase du
développement
La phase d’apprentissage du Framework Codegniter nécessite un temps
considérable
Incident OVH à la date de 09 Novembre 2017
24
Réalisation
Les points forts de l’application
Assurer une maintenance aisé grâce a une implémentation a base des classes générique
Assurer une excellente convivialité grâce a des interfaces est des formulaires ergonomiques et
facile a prendre en main
Traçabilité pour toutes les classes du système pour assurer une journalisation complète et sans
failles
Le code source de l’application répond aux normes PHP Standards Recommendations (PSR)
Accélération HTTPMoteur de recherche Haute disponibilité
Responsive design
25
Conclusion et Perspectives
Conclusion
Comprendre l’Audit et les normes ISO
D’enrichir notre expérience éducative avec l’utilisation du SCRUM
De se familiariser avec des solutions open Source
De maitriser l’utilisation de Framework CodeIgniter
26
Conclusion et Perspectives
Perspectives
Amélioration du générateur du formulaire dynamique
Mise en place du module statistique
Intégration du module BI
Amélioration de la sécurité de l’application
27
Merci Pour Votre
Attention

Contenu connexe

Tendances

Rapport PFE : Développement D'une application de gestion des cartes de fidéli...
Rapport PFE : Développement D'une application de gestion des cartes de fidéli...Rapport PFE : Développement D'une application de gestion des cartes de fidéli...
Rapport PFE : Développement D'une application de gestion des cartes de fidéli...
Riadh K.
 
Rapport PFE : Développement D'une application de gestion des cartes de fidéli...
Rapport PFE : Développement D'une application de gestion des cartes de fidéli...Rapport PFE : Développement D'une application de gestion des cartes de fidéli...
Rapport PFE : Développement D'une application de gestion des cartes de fidéli...
Riadh K.
 
rapport PFE ingénieur génie logiciel INSAT
rapport PFE ingénieur génie logiciel INSATrapport PFE ingénieur génie logiciel INSAT
rapport PFE ingénieur génie logiciel INSAT
Siwar GUEMRI
 

Tendances (20)

Presentation PFE
Presentation PFEPresentation PFE
Presentation PFE
 
Rapport de projet de fin d"études
Rapport de projet de fin d"étudesRapport de projet de fin d"études
Rapport de projet de fin d"études
 
Rapport PFE Développent d'une application bancaire mobile
Rapport PFE Développent d'une application bancaire mobileRapport PFE Développent d'une application bancaire mobile
Rapport PFE Développent d'une application bancaire mobile
 
Conception et Réalisation d’une Plateforme Web de Gestion des achats
Conception et Réalisation d’une Plateforme Web de Gestion des achats Conception et Réalisation d’une Plateforme Web de Gestion des achats
Conception et Réalisation d’une Plateforme Web de Gestion des achats
 
Presentation de soutenance du Projet Fin d'Etudes
Presentation de soutenance du Projet Fin d'EtudesPresentation de soutenance du Projet Fin d'Etudes
Presentation de soutenance du Projet Fin d'Etudes
 
Rapport du Projet de Fin d'année Génie informatique ENSA AGADIR
Rapport du Projet de Fin d'année Génie informatique ENSA AGADIRRapport du Projet de Fin d'année Génie informatique ENSA AGADIR
Rapport du Projet de Fin d'année Génie informatique ENSA AGADIR
 
Presentation stage Tunisie Telecom
Presentation stage Tunisie TelecomPresentation stage Tunisie Telecom
Presentation stage Tunisie Telecom
 
Ma présentation PFE : Application Android & Site Web
Ma présentation PFE : Application Android & Site WebMa présentation PFE : Application Android & Site Web
Ma présentation PFE : Application Android & Site Web
 
Présentation (Mémoire fin étude )
Présentation (Mémoire  fin étude )Présentation (Mémoire  fin étude )
Présentation (Mémoire fin étude )
 
Rapport pfe-ayoub mkharbach
Rapport pfe-ayoub mkharbachRapport pfe-ayoub mkharbach
Rapport pfe-ayoub mkharbach
 
Rapport pfe
Rapport pfeRapport pfe
Rapport pfe
 
Rapport PFE : Développement D'une application de gestion des cartes de fidéli...
Rapport PFE : Développement D'une application de gestion des cartes de fidéli...Rapport PFE : Développement D'une application de gestion des cartes de fidéli...
Rapport PFE : Développement D'une application de gestion des cartes de fidéli...
 
rapport de projet de fin d'étude_PFE
rapport de projet de fin d'étude_PFErapport de projet de fin d'étude_PFE
rapport de projet de fin d'étude_PFE
 
Rapport PFE : Développement D'une application de gestion des cartes de fidéli...
Rapport PFE : Développement D'une application de gestion des cartes de fidéli...Rapport PFE : Développement D'une application de gestion des cartes de fidéli...
Rapport PFE : Développement D'une application de gestion des cartes de fidéli...
 
Présentation du pfe - Master spécialisé en ingénierie informatique
Présentation du pfe - Master spécialisé en ingénierie informatiquePrésentation du pfe - Master spécialisé en ingénierie informatique
Présentation du pfe - Master spécialisé en ingénierie informatique
 
Rapport de stage du fin d'étude
Rapport de stage du fin d'étudeRapport de stage du fin d'étude
Rapport de stage du fin d'étude
 
Rapport de stage PFE ( DUT) chez Synthèse Conseil - Jaiti Mohammed
Rapport de stage PFE ( DUT) chez Synthèse Conseil  - Jaiti MohammedRapport de stage PFE ( DUT) chez Synthèse Conseil  - Jaiti Mohammed
Rapport de stage PFE ( DUT) chez Synthèse Conseil - Jaiti Mohammed
 
rapport PFE ingénieur génie logiciel INSAT
rapport PFE ingénieur génie logiciel INSATrapport PFE ingénieur génie logiciel INSAT
rapport PFE ingénieur génie logiciel INSAT
 
Présentation PFE : Mise en place d’une solution de gestion intégrée (OpenERP...
Présentation PFE :  Mise en place d’une solution de gestion intégrée (OpenERP...Présentation PFE :  Mise en place d’une solution de gestion intégrée (OpenERP...
Présentation PFE : Mise en place d’une solution de gestion intégrée (OpenERP...
 
gestion de projet
gestion de projetgestion de projet
gestion de projet
 

Similaire à Présentation PFE: SmartAudit

10 ans d’archivage numérique au CINES : premiers bilans et perspectives
10 ans d’archivage numérique au CINES : premiers bilans et perspectives10 ans d’archivage numérique au CINES : premiers bilans et perspectives
10 ans d’archivage numérique au CINES : premiers bilans et perspectives
AssociationAF
 
La gouvernance, ou comment rapprocher les équipes de développement et d'infra...
La gouvernance, ou comment rapprocher les équipes de développement et d'infra...La gouvernance, ou comment rapprocher les équipes de développement et d'infra...
La gouvernance, ou comment rapprocher les équipes de développement et d'infra...
PimpMySharePoint
 
ait_mlouk_addi_presentation_pfe
ait_mlouk_addi_presentation_pfeait_mlouk_addi_presentation_pfe
ait_mlouk_addi_presentation_pfe
Addi Ait-Mlouk
 

Similaire à Présentation PFE: SmartAudit (20)

Les méthodes agiles dans TFS
Les méthodes agiles dans TFSLes méthodes agiles dans TFS
Les méthodes agiles dans TFS
 
3S Encadre & Recrute [12/2017]
3S Encadre & Recrute [12/2017]3S Encadre & Recrute [12/2017]
3S Encadre & Recrute [12/2017]
 
PFE PPT2
PFE PPT2PFE PPT2
PFE PPT2
 
soft-shake.ch - Le terrain Agile
soft-shake.ch - Le terrain Agilesoft-shake.ch - Le terrain Agile
soft-shake.ch - Le terrain Agile
 
10 ans d’archivage numérique au CINES : premiers bilans et perspectives
10 ans d’archivage numérique au CINES : premiers bilans et perspectives10 ans d’archivage numérique au CINES : premiers bilans et perspectives
10 ans d’archivage numérique au CINES : premiers bilans et perspectives
 
Microsoft experiences azure et asp.net core
Microsoft experiences   azure et asp.net coreMicrosoft experiences   azure et asp.net core
Microsoft experiences azure et asp.net core
 
Retour d’expérience sur ‘TFS Online’ (VSTS) dans une solution industrielle (c...
Retour d’expérience sur ‘TFS Online’ (VSTS) dans une solution industrielle (c...Retour d’expérience sur ‘TFS Online’ (VSTS) dans une solution industrielle (c...
Retour d’expérience sur ‘TFS Online’ (VSTS) dans une solution industrielle (c...
 
Microsoft Experieces 2016 - Retour d’expériences sur TFS Online
Microsoft Experieces 2016 - Retour d’expériences sur TFS OnlineMicrosoft Experieces 2016 - Retour d’expériences sur TFS Online
Microsoft Experieces 2016 - Retour d’expériences sur TFS Online
 
Sécurité des applications web: attaque et défense
Sécurité des applications web: attaque et défenseSécurité des applications web: attaque et défense
Sécurité des applications web: attaque et défense
 
Agile Data Warehousing - 7 pillars - Procima Experts
Agile Data Warehousing - 7 pillars - Procima ExpertsAgile Data Warehousing - 7 pillars - Procima Experts
Agile Data Warehousing - 7 pillars - Procima Experts
 
Project Server/PowerBI : Reporting et analyse de données grâce à la Business ...
Project Server/PowerBI : Reporting et analyse de données grâce à la Business ...Project Server/PowerBI : Reporting et analyse de données grâce à la Business ...
Project Server/PowerBI : Reporting et analyse de données grâce à la Business ...
 
Houssem BOULFRAKH - WebPhone (Projet de fin d'études)
Houssem BOULFRAKH - WebPhone (Projet de fin d'études)Houssem BOULFRAKH - WebPhone (Projet de fin d'études)
Houssem BOULFRAKH - WebPhone (Projet de fin d'études)
 
GraphTour - Workday: Tracking activity with Neo4j (French version)
GraphTour - Workday: Tracking activity with Neo4j (French version)GraphTour - Workday: Tracking activity with Neo4j (French version)
GraphTour - Workday: Tracking activity with Neo4j (French version)
 
La gouvernance, ou comment rapprocher les équipes de développement et d'infra...
La gouvernance, ou comment rapprocher les équipes de développement et d'infra...La gouvernance, ou comment rapprocher les équipes de développement et d'infra...
La gouvernance, ou comment rapprocher les équipes de développement et d'infra...
 
Développement d'un grand projet piloté par les tests (BDD)
Développement d'un grand projet piloté par les tests (BDD)Développement d'un grand projet piloté par les tests (BDD)
Développement d'un grand projet piloté par les tests (BDD)
 
ait_mlouk_addi_presentation_pfe
ait_mlouk_addi_presentation_pfeait_mlouk_addi_presentation_pfe
ait_mlouk_addi_presentation_pfe
 
Catalogue pfe 2018 2019
Catalogue pfe 2018 2019Catalogue pfe 2018 2019
Catalogue pfe 2018 2019
 
Dossier de competences MA
Dossier de competences MADossier de competences MA
Dossier de competences MA
 
Supervision d'un réseau informatique avec Nagios
Supervision d'un réseau informatique avec NagiosSupervision d'un réseau informatique avec Nagios
Supervision d'un réseau informatique avec Nagios
 
Visual studio 2010
Visual studio 2010Visual studio 2010
Visual studio 2010
 

Présentation PFE: SmartAudit

  • 1. Projet de fin d’études Conception et développement d’une application web aide Auditeur ‘SmartAudit’ Réalisé par : M. Mohamed Aziz FERCHICHI M. Mohamed Ayoub OUERTATANI Encadré par : Mme. Olfa LAMOUCHI M. Tarek BELDI
  • 2. Organisme d’accueil Contexte du projet Analyse des besoins Sommaire
  • 4. 4 Organisme d’accueil • Smart IT Fondée en 2006. • Cabinet d’audit et de conseils pour les certifications ISO. Tunisie Guinée Conakry
  • 5. 5 Contexte du projet Etude de l’existant  Un gage de confiance pour les consommateurs  les produits et services sont sûrs, fiables et de bonne qualité Client Auditeur Mission d’audit
  • 6. 6 Contexte du projet Etude de l’existant Auditeur Réunion avec la direction Interview Observation terrain Collecte des documents
  • 7. 7 Contexte du projet Etude de l’existant • Prendre des notes • Préparation de questionnaire d’audit sous format Excel • Donner une cote de conformité varie de 0 à 5 pour chaque contrôle Auditeur
  • 8. 8 Contexte du projet Problématique Perte de temps lors de la recherche et l’échange des données Vulnérabilité et faible niveau de sécurité Le risque de perte des documents entrainant l’incohérence des données La journalisation et la traçabilité sont inexistantes
  • 9. 9 Contexte du projet Solution proposée Traçabilité Sécurité Rapport et Statistiques Auditeur Client Communication Centralisation des données Gérer les missions d’audit Gérer les questionnaires d’audit Collaborer à la réalisation de mission d’audit Suivre l’avancement du mission d’audit
  • 10. 10 Analyse des besoins Besoins fonctionnels Authentication Gestion des utilisateurs Gestion des sessions Gestion de la messageries Gestion des missions d’audit Gestion des Templates d’audit Gestion des navigations Gestion de la configuration Gestion des clients
  • 11. 11 Gérer utilisateurs Gérer sessions Gérer messagerie Consulter Mission d’audit Gérer Template d’audit Gérer mission d’audit Gérer navigations Gérer configuration Gérer clients Auditeur Client Administrateur S’authentifier« include »
  • 12. 12 Consulter Mission d’audit Ajouter commentaire Consulter activités Répondre aux questionnaires Gérer missions d’audit Consulter questionnaire Supprimer questionnaire Gérer jalons Auditeur Client Administrateur Modifier mission d’audit Ajouter mission d’audit Générer rapport d’audit
  • 13. 13 Scrum BacklogProduct • S’authentifier • Gérer les utilisateurs • Gérer les clients • Gérer les clients (Suite) • Gérer les missions d’audit • Gérer la configuration • Gérer Template d’audit • Gérer les missions d’audit (Suite) • Gérer les configuration (Suite) • Gérer la messagerie • Gérer la configuration (Suite) • Gérer les navigations Sprint 1 Sprint 2 Sprint 3 Sprint 4 Sprint 5 4 semaines 4 semaines 4 semaines 4 semaines 4 semaines
  • 15. 15 Réponse http TCP/IP Requête http TCP/IP Etude conceptuelle Architecture physique Serveur BD MySql v5.1.73 redhat-linux Client Serveur web Apache V2.2.15 (Unix) Serveur VPS Réponse Requête
  • 16. 16 Etude conceptuelle Diagramme de classe 1..1 1..* 0..1 0..* 0..1 0..* 0..1 0..* 0..1 0..* 1..* 0..1 0..1 0..* 0..1 0..* 1..1 0..* 0..1 0..* 0..1 0..* 1..1 0..* 1..1 0..1 1..* 0..* 1..1 1..* 1..1 0..* 1..1 0..* 1..1 0..* 1..1 0..* 1..1 0..* 0..* 1..1 0..* 1..1 user_role - - role_id name : int (11) : String(20) account_details - - - - - - - - - - - - account_details_id fullname company city country locale address phone mobile skype language avatar : String : String (160) : String (150) : String (40) : String (100) : String (100) : String (64) : String (32) : String (32) : String (100) : String 40) : String (200) + update_account_details () : void client - - - - - - - - - - - - - - - - - - - - - - client_id primary_contact name email short_note website phone mobile fax address city zipcode currency skype_id linkedin facebook twitter language country vat client_status profile_photo : int (11) : int : String (255) : String (64) : String : String (100) : String (64) : String (64) : String (64) : String (255) : String (100) : String (20) : String (32) : String (100) : String (255) : String (255) : String (255) : String (100) : String (255) : String (64) : byte (1) : String + + + + add_client () update_client () delete_client () client_details () : void : void : void : void users - - - - - - - - - - - - - - user_id username password email activated banned ban_reason new_password_key new_password_requested new_email new_email_key last_ip last_login online_status : int (11) : String (50) : String (255) : String (100) : byte (1) : byte (4) : String (255) : String (50) : Date : String (100) : String (50) : String (40) : Date : byte (1) + + + + add_user () update_user () delete_user () user_details () : void : void : void : void audit_mission - - - - - - - - - - audit_mission_id audit_mission_name client_id assign_to progress start_date end_date audit_mission_status description notify_client : int(11) : String(100) : int(11) : String : String(50) : String(20) : String(20) : String(20) : String(500) : String(3) + + + + add_audit_mission () update_audit_mission () delete_audit_mission () update_status_audit_mission () : void : void : void : void company_details - - config_key value : String(255) : String + + save_config () config_details () ... : void : void department - - department_id name : int : int + + + add_departement () update_departement () delete_departement () ... : void : void : void mail_box - mail_box_id : int + save_mail_box () ... : void template - template_id : int + save_template () ... : void configuration - configuration_id : int email_templates - - - - email_templates_id email_group subject template_body : int : String(150) : String(255) : String + save_email_template () ... : void files - - - - - - - - - files_id title description uploaded_path file_name uploaded_by date_posted size ext : int(11) : String(255) : String : String( : String : int(11) : DateTime : int(10) : String(100) + + upload_file () delete_file () : void : void email - - - - - - - - - - - - - inbox_id to from subject message_body attach_file attach_file_path attach_filename message_time view_status favourites notify_me deleted : int(11) : String(100) : String(100) : String(300) : String : String(200) : String : String : DateTime : byte : byte : byte : String(3) + + + + + send_email () delete_email () put_email_draft () put_email_favorite () recive_email () ... : void : void : void : void : void langue - - - - code name icon active : String(10) : String(45) : String(45) : int(2) + save_lang () ... : void milestones - - - - milestones_id milestone_name description date : int(11) : String(100) : String(200) : Date + + + add_milestones () delete_milestones () update__milestones () : void : void : void audit_forms - - - - - - - - quotaions_id qutations_form_title user_id client_id name email mobile quotaions_date : int : int : int : int : int : int : int : int + + + + add_audit_forms () delete_audit_forms () update_audit_forms () view_audit_forms () ... : void : void : void : void audit_forms_details - - - - quotation_details_id quotations_id qutation_form_data quotation_data : int(11) : int(11) : String : String + print_audit_form_details () ... : void audit_template - - - - - - quotationforms_id quotationforms_title quotationforms_code quotaionforms_status quotation_created_by_id quotationforms_date_created : int(11) : String(200) : String : String(20) : int(11) : DateTime + + + + add_audit_template () update_audit_template () view_audit_template () delete_audit_template () ... : void : void : void : void countries - - id value : int(6) : String250) + save_countries () ... : void activities - - - - - - - - - - activities_id user module module_field_id activity activity_date icon value1 value2 deleted : int(11) : int(11) : String(32) : int(11) : String(255) : DateTime : String(32) : String(100) : String(100) : int(11) + add_activities () : void status - - status_id name : int(11) : String(30) + + add_status () update_status () ... : void : void locale - - - - locale code language name : String(10) : String(10) : String(100) : String(250) + save_locale () ... : void 1..* 1..1 1..* 0..* users - - - - - - - - - - - - - - user_id username password email activated banned ban_reason new_password_key new_password_requested new_email new_email_key last_ip last_login online_status : int (11) : String (50) : String (255) : String (100) : byte (1) : byte (4) : String (255) : String (50) : Date : String (100) : String (50) : String (40) : Date : byte (1) + + + + add_user () update_user () delete_user () user_details () : void : void : void : void audit_mission - - - - - - - - - - audit_mission_id audit_mission_name client_id assign_to progress start_date end_date audit_mission_status description notify_client : int(11) : String(100) : int(11) : String : String(50) : String(20) : String(20) : String(20) : String(500) : String(3) + + + + add_audit_mission () update_audit_mission () delete_audit_mission () update_status_audit_mission () : void : void : void : void audit_template - - - - - - quotationforms_id quotationforms_title quotationforms_code quotaionforms_status quotation_created_by_id quotationforms_date_created : int(11) : String(200) : String : String(20) : int(11) : DateTime + + + + add_audit_template () update_audit_template () view_audit_template () delete_audit_template () ... : void : void : void : void 22 classes
  • 17. 17 Réalisation Langages et bibliothèques de développement HTML5 CSS3 PHP5 Jquery JS Langage de balisage conçu pour représenter les pages webLangage qui décrit la présentation des documents HTML et XMLLangage de programmation libreUne bibliothèque JavaScript libreLangage de programmation de scripts
  • 18. 18 Architecture MVC Communauté active Léger et simple d’utilisation Nombreuses librairies Documentation claire et complète Réalisation Choix de Framework CodeIgniter
  • 19. 19 Réalisation Environnement logiciel 1. Environnement de développement IDE Sublime text 3
  • 21. 21 Réalisation Environnement logiciel Orange Scrum easyBacklog PowerAMC Google Drive Un outil de gestion du backlog produitUn logiciel de gestion de projets basé sur la méthodologie agile SCRUMEnvironnement graphique de modélisation pour le langage UML 3. Autres outils Un service de stockage et de partage de fichiers dans le cloudModule Linux pour le partage de fichiers entre les deux environnements Windows el Linux
  • 23. 23 Réalisation Les contraintes Le changement fréquent des besoins fonctionnels au cours de la phase du développement La phase d’apprentissage du Framework Codegniter nécessite un temps considérable Incident OVH à la date de 09 Novembre 2017
  • 24. 24 Réalisation Les points forts de l’application Assurer une maintenance aisé grâce a une implémentation a base des classes générique Assurer une excellente convivialité grâce a des interfaces est des formulaires ergonomiques et facile a prendre en main Traçabilité pour toutes les classes du système pour assurer une journalisation complète et sans failles Le code source de l’application répond aux normes PHP Standards Recommendations (PSR) Accélération HTTPMoteur de recherche Haute disponibilité Responsive design
  • 25. 25 Conclusion et Perspectives Conclusion Comprendre l’Audit et les normes ISO D’enrichir notre expérience éducative avec l’utilisation du SCRUM De se familiariser avec des solutions open Source De maitriser l’utilisation de Framework CodeIgniter
  • 26. 26 Conclusion et Perspectives Perspectives Amélioration du générateur du formulaire dynamique Mise en place du module statistique Intégration du module BI Amélioration de la sécurité de l’application

Notes de l'éditeur

  1. *
  2. *La présentation est organisée comme suit : nous allons commencer par présenter l’organisme d’accueil, ensuite nous allons exposer le projet dans son contexte suivi par l’analyse des besoins
  3. *Pour passer ensuite à l’étude conceptuelle enchainée par la réalisation pour clôturer avec un résumé et des perspectives.
  4. *
  5. *On va commencé par la partie de contexte de projet , Aujourd’hui la certification iso au sein d’une entreprise représente un gage de confiance pour les consommateurs et les clients aussi ça signifie que ses produits et services sont sûre, fiable et de bonne qualité es, Donc faisant suite a ce besoin le directeur de l’entreprise va contacter une entreprise auditrice pour procédé a la mission d’audit,
  6. Après le déroulement de la réunion d’ouverture , 1- l’equipe d’audit se réuni avec la direction ou les directions de l’entreprise concernée au niveau de la quelle les auditeurs présentent leurs fonction dans l’entreprise, les objectifs recherché par cet audit ainsi que le planning de réalisation, 2- l’équipe d’audit collecte les informations nécessaires dont t-il ont besoin pour vérifier leurs conformité par rapport a la référentielle(Iso 27001 , 27002 , 9001 ) choisie , 3 – par la suite l’auditeur échange d’information avec les interlocuteurs concerné (DSI,DAF, ,,, ) 4 – enfin il vérifie sur terrain ce qui a été fournit et communiqué comme informations par les interlocuteurs,
  7. * L’auditeur prépare le questionnaire d’audit sur un fichier Excel contenant tous les chapitres de référentiel choisi lors de réunion d’ouverture,
  8. *
  9. ------
  10. nos besoins fonctionnels sont
  11. ADMIN hérite tt les fonctionnalité de l’auditeur Aussi il peut gérer les navigations, la configuration et les clients Le client peur ,,,, L’auditeur peut ,,,, Pour que les acteurs puissent accèdé a tt ces fonctionnalités ne peuvent pas étre accécible qu’après l’authentification
  12. ADMIN hérite tt les fonctionnalité de l’auditeur Aussi il peut gérer les navigations, la configuration et les clients Le client peur ,,,, L’auditeur peut ,,,, Pour que les acteurs puissent accèdé a tt ces fonctionnalités ne peuvent pas étre accécible qu’après l’authentification
  13. La méthodologie utilisée au sein de la société et pour ce projet en particulier est Scrum. Le Backlog product se présente comme ceci, contenant les besoins qu’on vient de présenter. Ce backlog a été répartie en 5 sprints comme on peut le voir sur la figure. Chaque sprint a durée environ 4 semaines.
  14. *Disponibilité: l’application doit être disponIble au utilisateur quelque soit leurs emplacement geographique, aussi en cas de crash ou incident l’app doit être dispo au bout d’une demi journée maximum. Ergonomie: Toutes les actions doivent être rapidement accessibles Les interfaces doivent êtres simples et moderne L’app doit être compatible avec les pc, tablette et smartphone Optimisation des ressources : ram, cpu, etc Rapidité: l’app doit traiter les données dans un intervalle du temps raisonnable.
  15. *L’architecture globale de l’app est 3-tiers. Base de données MySQL connecté au serveur web Smart IT. La communication entre les clients, que ce soit mobile ou sur pc, avec le serveur se fait à travers l’envoi de requête. Le serveur traite cette dernière et retourne une réponse.
  16. -- Nous étudions par la suite le diagramme de classe de notre application qui est composé de 22 classes et dont la classe principale est
  17. --------
  18. *Sublime text 3: IDE un éditeur de texte générique
  19. *Balsamic : a été utilisé pour créer les maquettes des interfaces homme machine de l’application Camtasia : a été utilisé pour les captures d’image et vidéo PS et Ai : nous avons utilisé ps et Ai pour le traitement des diff logo et icône de l’app
  20. *Orange Scrum : Un logiciel de gestion de projets basé sur la méthode agile SCRUM EasyBacklog : Un outil de gestion de backlog agile powerAmc : Environnement graphique de modélisation que nous avons utilisé pour l’élaboration des diagrammes de conception et de spécification Google drive : Un service de stockage et de partage de fichiers dans le cloud.
  21. *Nous passons à la présentation des interfaces de l’app, pour cela nous avons réalisé une capture vidéo sur un PC
  22. *
  23. *
  24. *À travers cette présentation, nous avons pu voir le contexte dans le quel le projet a été bien mené, depuis l’étude de l’existant jusqu’à la réalisation en passant par une étude conceptuelle. Ce projet nous a permis de ,,,,
  25. *Pour finir, voici quelques fonctionnalités futures du projet
  26. *