Chapitre III : REALISATION ET MISE EN OEUVRE
3.1 Introduction
Cette étape permet de mettre d'obtenir le logiciel
correspondant à notre sujet d'étude.
3.2 Modélisation logique des
traitements
Le modèle logique de traitement va porter sur le
domaine de l'informaticien et de sa responsabilité. Il servira à
construire une solution technique répondant aux spécifications du
modèle organisationnel des traitements.
3.2.1 Passage du MOT au MLT
Le passage du MOT au MLT concerne la réflexion et ou
l'imagination du développeur de l'application, selon sa maîtrise
et ou sa pensée dans laquelle il appliquera sur la conception de ses
interfaces graphiques.
Cependant, nous allons éliminer à partir du MOT
les tâches qui ne seront pas informatisées et les tâches
restantes. Celles-ci détermineront l'unité logique de traitement
où les événements fonctionnels disparaissent et
cèdent la place aux actions des utilisateurs notamment : clique,
saisie, etc. les tâches deviennent des unités logiques de
traitement ; les procédures fonctionnelles deviennent
procédure logique ; l'ensemble des procédures logiques
constitue le MLT et les postes de travail deviennent des sites.
3.2.2 Présentation du modèle logique de
traitement
Début de la procédure logique de
Gestclient
ULT00
AFFICHAGE LOGO
+ Affichage Interface Logo
Pendant 5 secondes
ULT01
CONNEXION
+ Affichage Interface Connexion
Ø Saisir, cliquer
OK
QUITTER
ULT 05
ULT 04 04
ULT 03 0303
Fin de la procédure logique
GestClient
ULT02
APPEL MENU PRINCIPAL
+ Affichage Menu Principal
- cliquer
FICHIER
QUITTER
CONSULTATION
EDITION
1°) ULTO 2 : MENU PRINCIPAL
MENU PRINCIPAL
ULT02
Edition
Consultation
Tables
Programme
Agent
|
Client
|
Occupation
|
Chambre
|
catégorie
|
|
|
|
|
|
|
|
Fonction
|
Service
|
Fonction
|
|
Recevoir
|
Reçu
|
Service
|
GAGENT
G CLIENT
Saisie
Modification et suppression
Liste de des clients du jour
Quitter
ULT 03
ULT 04
ULT 05
ULT 06
ULT 08
3.3 Modèle physique des traitements
3.3.1 Passage du MLT au MPT
Le modèle physique de traitement n'est rien d'autre qu'une
représentation graphique de la structure de notre programme de
gestion.
LOGO
QUITTER
AGENT
CLIENT
CHAMBRE
CATEGORIE
OCCUPATION
CONNEXION
FICHIER
CONSULTATION
MENU PRINCIPAL
EDITION
AGENT
CLIENT
CHAMBRE
CATEGORIE
OCCUPATION
Enregistrer
Rechercher
Modifier
Effacer
Supprimer
Quitter
Enregistrer
Rechercher
Quitter
LISTE DES CLIENTS
3.3.2 Présentation du MPT
3.3.2 Passage du MLD au MPD
Le passage du modèle logique de données au
modèle physique de données sera effectué grâce au
système de gestion de base de données(SGBD) que nous avons
choisi
3.3.3 Présentation du modèle physique de
données
La présentation du MPD n'est rien d'autre qu'une
représentation des tables en mode création en WinDev.
· Table Agent
· Table Client
· Table Chambre
· Table Occupe
· Table Catégorie
3.3.4 Implantation de la base de
données
Au paravent, les données des applications étaient
organisées dans les fichiers, en d'autres termes, la gestion de
données et de traitement étaient dépendants à
l'aide de la méthode classique.
Celle-ci comme conséquences :
· La redondance
· La dépendance entre données et programme
· Le manque de normalisation au niveau de stockage
Vu tout les méfaits précisés, il fallait
organiser les données pour permettre leur mise en commun, les partages
entre plusieurs utilisateurs et applications. C'est cette nouvelle approche
dite « l'analyse ou base de données ».
1. Lancement de WinDev 17
Pas beaucoup d'effort pour lancé WinDev 17 si celui-ci est
installé dans votre ordinateur. Une fois que vous cliquez sur le menu
démarrer, faire tous les programmes, fichiers WinDev, ensuite WinDev 17
ou rien qu'à partir du bureau Windows, double cliquer sur le raccourci
WinDev 17.
2. Création de l'analyse(ou base de
données)
Dans l'environnement de WinDev, la base de données est
appelé l'analyse et son extension c'est « .ana »,
les étapes de l'assistant de création d'analyse sont les
suivant :
· Indiquez le nom et le répertoire de l'analyse. Par
défaut, le nom de l'analyse correspond au nom du projet et le
répertoire de l'analyse est un
répertoire «.ana » dans le répertoire du
projet.
· Ensuite choisissez le type de bases de données
manipulées par le projet. Nous allons travailler sur les fichiers de
donnéesHyper File SQL Client/serveur. Passe à l'écran
suivant ;
· Conserver les options par défaut et passe à
l'écran suivant ;
· Cliquez sur bouton vert pour valider le fichier de
données est automatiquement crée dans l'analyse.
3. Terminologie
Un projet WinDev permet de créer une application, avant de
commencer réellement à travailler avec WinDev, revenons sur les
termes utilisés dans cet environnement :
3.1. Dans l'analyse
· Fichier : l'analyse permet de
décrire la structure des fichiers de la base de données. Le terme
« fichier » correspond dans certaines bases de
données à « une table », dans WinDev, le
terme table est réservé pour designer un objet graphique
permettant de visualiser le contenu d'un fichier de données sous forme
de tableau.
· Enregistrement : un enregistrement
est quelquefois également appelé ligne. L'enregistrement d'un
fichier de données correspond à l'ensemble des rubriques
définies pour les fichiers.
· Rubrique : dans l'analyse, le terme
rubrique désigne une zone d'un fichier de données. L'ensemble des
rubriques d'un fichier de données permet définir la structure
d'un enregistrement.
· Les clés : permettent
d'accélérer les accès aux données ou faciliter les
parcours de fichiers de données. Il sera possible de faire des
recherches ou des parcours sur cette rubrique.
3.2. Dans les fenêtres d'états
· Les fenêtres : les
fenêtres permettent d'afficher ou de saisir à l'écran des
informations. Les fenêtres sont également appelées
« Écrans »ou boites de dialogue, l'utilisateur peut
agir directement sur les fenêtres par l'intermédiaire de champs,
de bouton,
· État : les états
permettent d'obtenir une vue personnalisée d'informations. Ces
informations peuvent provenir de la base de données, de fichiers texte,
de champs présents dans les fenêtres les états
peuvent-être visualisés à l'écran, imprimés
sur papier, générés en PDF ou en HTML,
· Champs : le mot champs est le terme
utilisé pour désigner les différents objets graphiques
affichés dans une fenêtre ou dans un état.
· Gabarit : le gabarit permet de
définir le look de l'application : apparence visuelle des
fenêtres, des boutons, dans un état.
· Style : le style regroupe les
caractéristiques graphiques d'un élément : image de
fond, bordure, police, les styles des différents éléments
constituant l'interface d'une application WinDev sont regroupés dans une
feuille de styles.
3.3.5 Exploitation de la base de
données
3.3.5.1 Présentation des Menus et écrans
de saisie
1. Logo
2. Connexion
3. Menu principal
4. Interface de saisie
· Saisie catégorie
· Saisie des agents
· Saisie des occupations
· Saisie des chambres
· Saisie des clients
3.3.6 Programmation de l'application
1. Définition
La programmation est un processus, permet tant contre
d'établir un programme exécutable sur la machine. Par contre un
programme est une suite ordonnée d'instruction enregistrée sur un
support, permettant d'exécuter une série d'opération.
3.3.6.2 Méthode de programmation
L'écriture d'un programme est liée à
plusieurs paramètres dont nous avons :
· La méthode de programmation
· Le langage de programmation
A chaque langage de programmation est liée une
méthode de programmation. Ainsi nous avons de différentes
méthodes de programmation à savoir :
· Classique
· Structure et modulaire
· P.O.O (Programmation orienté objet)
3.3.7.3 Choix de l'unité de traitement
Notre choix porte sur la programmation orientée objet,
avec comme langage de programmation W-langage (WinDev 17) au quel nous avons
une large maitrisé.
3.3.7.4 Code source de l'application
Bouton d'enregistrer
CLIENT.NUMCLI=SAI_Numcli
CLIENT.NOMCLI=SAI_NOM
CLIENT.POSTNOM=SAI_POSTNOM
CLIENT.SEXCLI=COMBO_SEXE
CLIENT.LIEUNAIS=SAI_Lieunais
CLIENT.DATENAIS=SAI_Datenai
CLIENT.ETATCIV=COMBO_ETatcivil
CLIENT.DOMICIL=SAI_Domicil
CLIENT.PROFESS=SAI_Profess
CLIENT.TELEPHONCLI=SAI_Numtel
CLIENT.NATUREIDENT=SAI_NATUREPIEC
CLIENT.LIEUDATEMIS=SAI_Lieudatemiss
CLIENT.NUMPIECE=SAI_Numpiec
CLIENT.ACCOMPAG=SAI_ACCOMPAG
CLIENT.LIEUDOUV=SAI_Lieuvieny
CLIENT.HEUREDARRIV=SAI_Heurdarr
CLIENT.DATARRIV=SAI_datdarri
CLIENT.NUMCH=COMBO_numchambr
CLIENT.BUTVOYAG=SAI_Butvoy
CLIENT.NATIONALITE=SAI_nationalite
CLIENT.DATEDEPAR=SAI_Datedep
CLIENT.MATRAG=COMBO_AGENT
CLIENT.photo=IMG_Photo
//1:Enregistrement avec Succés
//2:Echec d'enregiæstrement
//1 : &Enregistrer
//2 : &Ne pas enregistrer
SELON Dialogue("Voulez-vous enregistrer cet client?")
// &Enregistrer
CAS 1
HAjoute(CLIENT)
// &Ne pas enregistrer
CAS 2
Info("l'enregistrement à echoué!")
FIN
TableAffiche(TABLE_CLIENT,taDébut)
SAI_Numcli=""
SAI_ACCOMPAG=""
SAI_Butvoy=""
SAI_datdarri=""
SAI_Datedep=""
SAI_Datenai=""
SAI_Domicil=""
SAI_Heurdarr=""
COMBO_SEXE=""
COMBO_ETatcivil=""
COMBO_numchambr=""
COMBO_AGENT=""
SAI_Lieudatemiss=""
SAI_Lieunais=""
SAI_Lieuvieny=""
SAI_nationalite=""
SAI_NATUREPIEC=""
SAI_NOM=""
SAI_Numpiec=""
SAI_Numtel=""
SAI_POSTNOM=""
SAI_Profess=""
IMG_Photo=""
COMBO_AGENT=""
RepriseSaisie(SAI_Numcli)
Bouton Annuler
SAI_Numcli=""
SAI_ACCOMPAG=""
SAI_Butvoy=""
SAI_datdarri=""
SAI_Datedep=""
SAI_Datenai=""
SAI_Domicil=""
SAI_Heurdarr=""
COMBO_SEXE=""
COMBO_ETatcivil=""
COMBO_numchambr=""
COMBO_AGENT=""
SAI_Lieudatemiss=""
SAI_Lieunais=""
SAI_Lieuvieny=""
SAI_nationalite=""
SAI_NATUREPIEC=""
SAI_NOM=""
SAI_Numpiec=""
SAI_Numtel=""
SAI_POSTNOM=""
SAI_Profess=""
IMG_Photo=""
COMBO_AGENT=""
RepriseSaisie(SAI_Numcli)
Bouton supprimer
EcranVersFichier(FEN_SAISIE_DES_CLIENTS,CLIENT)
HSupprime(CLIENT,hNumEnrEnCours)
TableAffiche(TABLE_CLIENT,taDébut)
SAI_Numcli=""
SAI_ACCOMPAG=""
SAI_Butvoy=""
SAI_datdarri=""
SAI_Datedep=""
SAI_Datenai=""
SAI_Domicil=""
SAI_Heurdarr=""
COMBO_SEXE=""
COMBO_ETatcivil=""
COMBO_numchambr=""
COMBO_AGENT=""
SAI_Lieudatemiss=""
SAI_Lieunais=""
SAI_Lieuvieny=""
SAI_nationalite=""
SAI_NATUREPIEC=""
SAI_NOM=""
SAI_Numpiec=""
SAI_Numtel=""
SAI_POSTNOM=""
SAI_Profess=""
IMG_Photo=""
COMBO_AGENT=""
RepriseSaisie(SAI_Numcli)
Bouton modifier
CLIENT.NUMCLI=SAI_Numcli
CLIENT.NOMCLI=SAI_NOM
CLIENT.POSTNOM=SAI_POSTNOM
CLIENT.SEXCLI=COMBO_SEXE
CLIENT.LIEUNAIS=SAI_Lieunais
CLIENT.DATENAIS=SAI_Datenai
CLIENT.ETATCIV=COMBO_ETatcivil
CLIENT.DOMICIL=SAI_Domicil
CLIENT.PROFESS=SAI_Profess
CLIENT.TELEPHONCLI=SAI_Numtel
CLIENT.NATUREIDENT=SAI_NATUREPIEC
CLIENT.LIEUDATEMIS=SAI_Lieudatemiss
CLIENT.NUMPIECE=SAI_Numpiec
CLIENT.ACCOMPAG=SAI_ACCOMPAG
CLIENT.LIEUDOUV=SAI_Lieuvieny
CLIENT.HEUREDARRIV=SAI_Heurdarr
CLIENT.DATARRIV=SAI_datdarri
CLIENT.NUMCH=COMBO_numchambr
CLIENT.BUTVOYAG=SAI_Butvoy
CLIENT.NATIONALITE=SAI_nationalite
CLIENT.DATEDEPAR=SAI_Datedep
CLIENT.MATRAG=COMBO_AGENT
CLIENT.photo=IMG_Photo
//1:Enregistrement avec Succés
//2:Echec d'enregistrement
//1 : &Enregistrer
//2 : &Ne pas enregistrer
SELON Dialogue("Voulez-vous enregistrer cet client?")
// &Enregistrer
CAS 1
HModifie(CLIENT)
// &Ne pas enregistrer
CAS 2
Info("l'enregistrement à echoué!")
FIN
TableAffiche(TABLE_CLIENT,taDébut)
SAI_Numcli=""
SAI_ACCOMPAG=""
SAI_Butvoy=""
SAI_datdarri=""
SAI_Datedep=""
SAI_Datenai=""
SAI_Domicil=""
SAI_Heurdarr=""
COMBO_SEXE=""
COMBO_ETatcivil=""
COMBO_numchambr=""
COMBO_AGENT=""
SAI_Lieudatemiss=""
SAI_Lieunais=""
SAI_Lieuvieny=""
SAI_nationalite=""
SAI_NATUREPIEC=""
SAI_NOM=""
SAI_Numpiec=""
SAI_Numtel=""
SAI_POSTNOM=""
SAI_Profess=""
IMG_Photo=""
COMBO_AGENT=""
RepriseSaisie(SAI_Numcli)
Bouton de rechercher
HLitRecherche(CLIENT,NUMCLI,SAI_Numcli)
SI HTrouve(CLIENT)ALORS
SAI_NOM=CLIENT.NOMCLI
SAI_POSTNOM=CLIENT.POSTNOM
COMBO_SEXE=CLIENT.SEXCLI
SAI_Lieunais=CLIENT.LIEUNAIS
SAI_Datenai=CLIENT.DATENAIS
COMBO_ETatcivil=CLIENT.ETATCIV
SAI_Domicil=CLIENT.DOMICIL
SAI_Profess=CLIENT.PROFESS
SAI_Numtel=CLIENT.TELEPHONCLI
SAI_NATUREPIEC=CLIENT.NATUREIDENT
SAI_Lieudatemiss=CLIENT.LIEUDATEMIS
SAI_Numpiec=CLIENT.NUMPIECE
SAI_ACCOMPAG=CLIENT.ACCOMPAG
SAI_Lieuvieny=CLIENT.LIEUDOUV
SAI_Heurdarr=CLIENT.HEUREDARRIV
SAI_datdarri=CLIENT.DATARRIV
COMBO_numchambr=CLIENT.NUMCH
SAI_Butvoy=CLIENT.BUTVOYAG
SAI_nationalite=CLIENT.NATIONALITE
SAI_Datedep=CLIENT.DATEDEPAR
COMBO_AGENT=CLIENT.MATRAG
IMG_Photo=CLIENT.photo
FIN
Bouton fermer
Ferme(FEN_SAISIE_DES_CLIENTS)
Bouton de parcours
sImage est une chaîne// déclaration d'une
variable
sImage=fSélecteurImage("","","Selectionnez une
image...")//Ouvre le sélecteur d'images
SI sImage<>"" ALORS
IMG_Photo=sImage
FIN
3.4 Mise en réseau de la base de
données
3.4.1 Choix des outils
3.4.1.1 Outils logiques
N°
|
Outils
|
Choix et motivation
|
1
|
Type de réseau
|
LAN
|
2
|
Topologie physique
|
Etoile
|
3
|
Topologie logique
|
Ethernet
|
4
|
Architecture
|
Client / Serveur
|
5
|
Système d'exploitation serveur
|
Windows 2008 Serveur
|
6
|
Système d'exploitation client
|
Windows 8
|
7
|
Protocole
|
FTP
|
8
|
Anti-virus
|
AVAST 2016
|
3.4.1.2 Outils Physique
N°
|
Matériels
|
performance
|
processeur
|
Cap Disque dur
|
Capacité Mémo Ram
|
1
|
Ordinateur serveur
|
DPS
|
1 To
|
8Giga
|
2
|
Ordinateur client
|
4Go
|
350Go
|
4Giga
|
3
|
Switch
|
12 Port
|
|
|
4
|
routeur
|
2Port
|
|
|
5
|
Support de transmission
|
Câble coaxial
|
TCP
|
|
6
|
connecteur
|
Rj 45
|
|
|
7
|
goulotte
|
NOIR
|
19''
|
|
8
|
Ondulaire serveur /client
|
5000w
|
2000W
|
|
9
|
imprimante
|
LASER Jet
|
|
|
3.4.1.3 Répartition des
matériels
N°
|
Utilisateur
|
Ordi. fixe
|
Ordi. portable
|
Imprimante
|
Onduleur
|
1
|
Administrateur
|
|
1
|
|
0
|
2
|
Réception
|
1
|
|
1
|
1
|
3
|
Directeur d'explo
|
1
|
|
|
1
|
4
|
Directeur adm&fin
|
1
|
|
|
1
|
3.4.1.4 Schéma fonctionnel du
réseau
3.4.1.5 Paramétrage du réseau
N°
|
Noms des postes
|
Domaine
|
Adresse IP
|
Masque de sous réseau
|
Passerelle
|
1
|
Administrateur
|
|
192.168.25.1
|
255.255.255.0
|
-
|
2
|
Réception
|
|
192.168.25.2
|
255.255.255.0
|
192.168.25.1
|
3
|
Directeur d'exploitation
|
|
192.168.25.3
|
255.255.255.0
|
192.168.25.2
|
4
|
Directeur adf
|
|
192.168.25.4
|
255.255.255.0
|
|
3.4.1.6 Administration et sécurité de la
base de données
L'administrateur aux principales taches ci-après :
· Gérer les utilisateurs
· Gérer les privilèges et les
rôles
· Surveiller l'usage de la base de données
(Audit)
· Deux niveaux de sécurité
· Les comptes utilisateurs : login et mot de passe
· Rôles, privilèges et profils :
contrôle l'accès aux objets et aux commandes systèmes
· Sans oublier la sécurité du SE pour les
fichiers, et la sécurité"physique\ des serveurs
· N'installer que ce qui est nécessaire
· Sécuriser les compte par de faut après
installation
· Utiliser des mots de passe sécurises, renouveler
régulièrement
· Toujours accorder le minimum de privilèges aux
utilisateurs
· S'assurer de la sécurité du SE
· S'assurer de la sécurité du réseau
3.4.1.7 Évaluation du cout
N°
|
Matériels
|
Quantité
nécessaires
|
Quantité
Existant
|
Quantité
à acheter
|
PU
|
PT
|
1
|
Ordinateur serveur
|
|
1
|
1
|
4600€
|
4800€
|
2
|
Ordinateur client
|
4
|
|
5
|
250$
|
1250$
|
3
|
Câble
|
100m
|
|
80m
|
15OOF
|
10500F
|
4
|
Connecteur RJ45
|
Pièces
|
|
Pièces
|
500F
|
10000F
|
5
|
Les attaches
|
100Piéces
|
|
1Kg
|
1500F
|
1500F
|
6
|
Switch
|
1
|
|
1
|
130$
|
130$
|
7
|
Routeur
|
1
|
|
1
|
155$
|
155$
|
8
|
Support de transmission
|
|
|
|
|
|
9
|
Connecteur
|
20
|
|
15
|
600F
|
9000F
|
10
|
Goulotte
|
Pièces
|
|
Pièces
|
600F
|
18000F
|
11
|
Onduleur serveur
|
1
|
|
1
|
205$
|
205$
|
12
|
Onduleur client
|
|
4
|
1
|
25$
|
100$
|
13
|
Imprimante
|
1
|
|
1
|
80$
|
80$
|
14
|
Disjoncteur
|
1
|
|
1
|
18000F
|
18000F
|
15
|
Extincteur
|
5
|
|
1
|
25$
|
25$
|
Main d'oeuvre :
|
Total :
|
|