Upload
others
View
1
Download
0
Embed Size (px)
Citation preview
[Titre du document]
[Sous-titre du document]
[DATE][Nom de la société]
[Adresse de la société]
REMERCIEMENTS
Plusieurs personnes ont contribué, à notre formation au cours de ces dernières années et à l’élaboration du présent rapport. Nous ne pouvons pas les nommer tous mais à travers ces remerciements nous leur exprimons notre profonde gratitude.
Nous ne saurions non plus passer sous silence ce que nous devons à la BTCI, c’est pourquoi nous exprimons notre gratitude en particulier à : Mme GNAKADE Marguerite, Administratrice Générale de la BTCI Mr ATALEY Romuald, Directeur du contrôle et conformité de la BIA-TOGO Mme ATCHAMADO Léon chef du département audit pour sa disponibilité Mr ADOME Rufin, pour l’attention qu’il nous a accordée, son soutien et son engagement qui nous a permis de découvrir son travail de chaque jour. Tout le personnel de la BTCI pour leur accueil et soutien.Mes remerciements vont également à ma famille qui m’a toujours encouragé et soutenu, spécialement mon père, ma mère et mon frère qui n’ont cessés de me témoigner leur amour inconditionnel.Je n’oublie pas tous mes camarades en particulier Gino AYANOU, Stanislas TETTEH, DONOU Deo qui m’ont toujours encouragé. Enfin mes remerciements vont à Monsieur Roger MIFETOU et Madame Chantal MIFETOU, Experts-comptables et commissaires aux comptes, pour avoir eu l’initiative de créer l’ESAM au TOGO, ainsi qu’l’ensemble du personnel administratif et corps enseignant de ladite école.
1
PREAMBULE
Dans le cadre de la réforme des études comptables, parue au Journal Officiel du 29 décembre 2006 organisant les études et les diplômes comptables sur le modèle européen (Licence Master Doctorat), l’UE7 « relations professionnelles 2 » du DSCG a pour objectif de permettre aux étudiants d’effectuer un stage à l’issue duquel ils devront produire un rapport de stage.
Ainsi le Journal Officiel précise :
« Le stage ou l’activité professionnelle servant de référence doit être accompli dans un cabinet d’expertise comptable ou dans les services comptables et financiers d’une entreprise, d’une collectivité publique ou d’une association.
La durée du stage (ou de l’activité professionnelle de référence) est d’au moins 12 semaines. Il a pour but :
- de permettre au candidat de prendre en charge une mission ou de participer de façon significative à une étude ou à une réalisation, au sein d’une organisation ;
- de mettre en application des notions, concepts et méthodes des autres unités d’enseignement ;
- de tester ses capacités d’adaptation personnelle :
- d’utiliser de façon systématique les technologies d’information et de communication ».
C’est dans le but de répondre à ces exigences que nous avons effectué notre stage au sein du de la BTCI (Banque Togolaise Du Commerce et de L’industrie). À travers ce stage nous avons eu à nous familiariser avec le monde professionnel et surtout avec l’environnement des banques, ce qui nous a permis de développer le thème : « Conception et mise en place d’une base de données pour l’élaboration d’une application web : cas de la BTCI ».
2
SOMMAIREREMERCIEMENTS...........................................................................................................................................2
PREAMBULE....................................................................................................................................................3
SOMMAIRE.......................................................................................................................................................4
INTRODUCTION GENERALE........................................................................................................................5
PREMIERE PARTIE : PRESENTATION DU CADRE DE STAGE...............................................................6
Chapitre 1 : PRESENTATION DU CADRE DU STAGE.............................................................................7
Section 1 : historique..................................................................................................................................7
Section 2 : Organigramme, Composition Salariale De La Banque............................................................7
Section 3 : les produits et services de la BTCI...........................................................................................8
Chapitre 2 : LES TRAVAUX EFFECTUES................................................................................................10
DEUXIEME PARTIE : « CONCEPTION ET MISE EN PLACE D’UNE BASE DE DONNÉES POUR L’ÉLABORATION D’UNE APPLICATION WEB : CAS DE LA BTCI »...................................................11
Chapitre 1. Notion de système de gestion de base de données et d’application web...................................12
Section 1. Notion de gestion de base de données et d’application web....................................................12
Chapitre 2. Approche de solution et Choix approprié aux besoins de la banque.........................................13
Section 1. Approche de solution...............................................................................................................13
Section 2. Choix approprié aux besoins de la banque..............................................................................15
Chapitre 3. Évaluation financière de la solution...........................................................................................16
Chapitre 4. Présentation des méthodes d’analyses et outils de modélisation...............................................18
Section 1. Présentation des méthodes d’analyses.....................................................................................18
Section 2. Présentation de l’outil de modélisation....................................................................................19
Chapitre 5 : Modélisation du système a partir des diagrammes...................................................................20
Section 1. Diagrammes de cas d’utilisation..............................................................................................20
Chapitre 6. Les Outils de développement et déploiement............................................................................58
Section 1. Outils de Développement........................................................................................................58
Section 2. Outils de déploiement..............................................................................................................58
Chapitre 7. Mise en place de la base de données et sécurité.........................................................................59
Section 1. Mise en place de la base de données........................................................................................59
Section 2. Sécurité de l’application..........................................................................................................60
Conclusion Générale.........................................................................................................................................62
La Bibliographie...............................................................................................................................................63
Annexes.............................................................................................................................................................64
La Table des matières.......................................................................................................................................65
3
INTRODUCTION GENERALE
De nos jours dans l’environnement économique, l’activité bancaire est devenue un facteur de développement car les banques sont des agents de financement de l’économie. Mais force est de constater que l’exercice de cette activité est fortement lié au risque. Et nous remarquons que ce risque est de plus en plus élevé dès lors que l’environnement bancaire devient plus concurrentiel.
Ainsi l’amélioration de la performance de la banque dans ce contexte de concurrence passe d’abord par un meilleur contrôle de ses projets investissement et financements mais également par l’offre d’un service de qualité.
C’est dans cette optique d’idée qu’il a été confié aux services informatiques de répondre à ce besoin de contrôle par la mise en place d’application web permettant à certains acteurs spécifiques de la banque d’effectuées un suivi plus réguliers de ses différents projet d’investissements et de financements
Aussi avons-nous retenu ce thème qui a pour objectifs de montrer comment à l’aide du management des systèmes d’informations on peut mettre en place une base de données pour la conception d’une application web
Notre méthodologie sera basée sur la recherche d’information au travers des enquêtes directrices auprès de l’Administrateur Général (Directeur général) pour définir les contours de l’application et savoir les agents à qui elle est destinée, Vérifications auprès des différents agents des niveaux d’accréditation ainsi que leur implication dans la démarche et le suivi des futurs projets.
Notre document sera scindé en deux parties. Dans une première partie nous présenterons sommairement le cadre du stage et les travaux effectués et dans une deuxième partie nous aborderons le thème a proprement dit
4
PREMIERE PARTIE : PRESENTATION DU CADRE DE STAGE
5
Chapitre 1 : PRESENTATION DU CADRE DU STAGE
Section 1 : historique
La Banque Togolaise pour le Commerce et l’Industrie (BTCI), Société Anonyme (SA) créée le 30 avril 1974 avec un capital de 300 millions de FCFA, succède au groupe d’agences de la Banque Nationale de Paris en activité au Togo. Son siège social se situe au 169, boulevard du 13 janvier à Lomé, situé en face de l’école Notre Dame des Apôtres (NDA) à Lomé.
Connue en 1946 sous la dénomination de la Banque Nationale pour le Commerce et l’Industrie devient en 1967 une succursale de la Banque Nationale de Paris (BNP).
Le capital de la BTCI actuellement est de sept milliards (7.000.000.000) de FCFA. Les actions sont détenues par les organismes publics ou privés nationaux, ainsi que des personnes physiques nationales. La répartition de ce capital vous est présenté en annexe à la fin de ce document.
Notons qu’elle a à son actif plusieurs agences à Lomé et à l’intérieur du pays. Ainsi nous avons : l’agence Rue du Commerce, agence Tokoin SUPER TACO, agence de Baguida, L’agence du port, agence de Klikame, agence d’Adidogomé La pampa, agence d’Adidogomé Assiyéyé, agence d’Amadahomé, agence d’agoe zongo, agence d’hedzranawoé, l’agence d’Agbalepedogan et l’agence située dans l’enceinte de la direction du transport routier forment les agences satellites à l’agence Centrale de la BTCI. L’agence de Kpalimé, d’Atakpamé, de Sokodé, de Kara, de Niamtougou, de Dapaong et enfin celle de Cinkassé constituent les agences représentant cette grande banque à l’intérieur du Togo.
Section 2 : Organigramme, Composition Salariale De La Banque
L'organigramme est un tableau schématique qui représente l'organisation générale d'une administration ou d'une entreprise ou de toute organisation. Ce schéma retrace les relations qui doivent s'établir de manière formelle et donne l'image des grandes liaisons ainsi que des orientations générales. Sous la direction du nouvel administrateur provisoire, la BTCI dispose d'un organigramme composé de neuf (9) directions qui sont sous l'autorité de l'administrateur provisoire. Ces directions ont un total de dix-huit (18) départements à leurs contrôles dont un qui est sous l'autorité directe de l'administrateur provisoire. Un exemplaire de l’organigramme est à consulter en annexe du document.
Le capital humain constituant l’élément primordial du fonctionnement de toute entreprise. Un grand nombre de personne fait fonctionner l’institution qu’est la BTCI et sont au nombre
6
de 304 salariés. Mais qu’elle est le nombre réel des salariés de la banque ? Quels est leur statut au sein de la banque ?
Section 3 : les produits et services de la BTCI
A. Les produits
Dans le souci de satisfaire la clientèle et d’attirer de potentiels clients, l’agence BTCI centrale propose plusieurs types de compte mais, nous ne mettrons qu'en exergue que quatre (4) produits à savoir (2) ouvertures de comptes concernant les personnes physiques tels le compte spécial d’épargne, compte épargne jeune ; et, deux (2) concernant les personnes morales à savoir le compte institutionnel et le compte courant SA, sans oublier les modalités de fermeture d'un compte bancaire.
1. Comptes particuliers
1.1. Compte spécial d’épargne
C’est un compte proposé aux personnes physiques générant un taux d’intérêt net d’impôt de 3,5%, avec un dépôt minimum exigé qui est de 50 000 et au maximum de 10 000 000 FCFA. Le retrait d’argent par ce compte peut se faire au guichet automatique bancaire (GAB) à l’aide d’une carte bancaire ou soit au guichet.
1.2. Compte épargne jeune
Compte comme son nom l’indique à la jeunesse d’un certain âge avec un taux d’intérêt net de 3,5% et d’un dépôt minimum de 10 000 FCFA, maximum 5 000 000 FCFA
2. Compte personne morale
2.1. Compte institutionnel
Compte mis à la disposition des institutions avec un dépôt minimum exigé de 100 000 FCFA.
2.2. Comptes courants (SA, SARL, et Ets)
Ces comptes sont adressés aux personnes morales publique ou privés avec des statuts juridiques diverses, exigeant à l’ouverture un dépôt minimum de 500 000 pour les sociétés anonymes (SA), 250 000 pour les sociétés à responsabilités limités (SARL) et 100 000 pour
7
les établissements.
Notons au passage que le compte chèque et les deux principaux comptes pour les personnes morales précités entraînent le prélèvement des agios par la banque, même pour les associations à but non lucratif.
Remarque : la clôture des divers comptes se fait suite à une demande du client ou à une inactivité du compte. Les frais de clôtures des divers comptes sont décrits comme suit :
Particuliers 8500
Entreprises 16500
Compte Épargne 5500
Succession 16500
B. Les services de la BTCI
1. Opération de change
C’est une opération manuelle de change de devises étrangères en FCFA ou du FCFA en devises étrangères. Les devises étrangères changeables autorisées sont l’Euro, le Dollar, le Yen, la Livre Sterling.
2. Les découverts
Sont des opérations permettant à un certain type de clientèle c'est-à-dire salariale ou de société, établissement et autres de bénéficier d’une aide financière lorsque la liquidité disponible ou pas sur leur compte ne leur est pas suffisant pour satisfaire leur besoin.
3. Le Western Union
C’est un service offert à toute la clientèle ou non de la banque pour envoyer ou recevoir de l’argent à travers le monde sans avoir un compte ou à ouvrir un quelconque compte dans une banque. L’envoi et la réception d’argent sont assujettis au remplissage d’une fiche conçue spécialement au type d’opération à effectuer.
Enfin il est à noter qu’il y’a trois types de zones western union à savoir la zone FCFA, BEAC et la zone hors UEMOA ou FCFA (France, Europe, y compris le Ghana et d’autres), et que l’envoi d’argent vers l’une de ces trois zones occasionne des taxes.
8
Chapitre 2 : LES TRAVAUX EFFECTUES Notre stage s’est déroulé dans le département informatique de la BTCI. Durant ce stage nous avons été principalement affecté avec l’aide des autres stagiaires à la modélisation des processus. Ainsi nous avons eu à effectuer les mêmes travaux que les assistants du département. Au cours de nos activités, nous avons participé à des phases de test des modélisations que nous avons mis en place grâce à différents outils informatique mais également à des simulations afin de vérifier qu’il y’avait pas d’erreur dans les schémas des procédures et des niveaux d’accès
9
DEUXIEME PARTIE : « CONCEPTION ET MISE EN PLACE D’UNE BASE DE DONNÉES POUR
L’ÉLABORATION D’UNE APPLICATION WEB : CAS DE LA BTCI ».
10
La collecte des données, le traitement et l’analyse de ces données collectées pour produire des rapports d’activités en temps opportun ou des supports d’aide à la prise de décision pour un pilotage efficace en temps réel, la réponse aux besoins en information des différents acteurs se révèlent fastidieux, longs ou lents, essentiellement en raison du fait qu’ils sont réalisés manuellement.
Dans un tel contexte, il n’est pas rare que des erreurs de cohérence de données se glissent dans les rapports d’activités produits. Bref la mise à jour des tableaux de bord de suivi-évaluation des actions, continue et en temps réel ne sont pas actualisés.
Les systèmes de suivi-évaluation actuels souffrent de déficit de lisibilité et de visibilité. Certes, il produit aujourd’hui des rapports de qualité appréciés, mais il demeure encore peu rassurant faute de moyens susceptibles d’en présenter toute l’étendue, la qualité et l’exhaustivité.
Pour lever les contraintes et limites techniques, temporelles et esthétiques du système de suivi-évaluation, plusieurs solutions se sont alors présentées
Chapitre 1. Notion de système de gestion de base de données et d’application web
Section 1. Notion de gestion de base de données et d’application web
A. Notion de base de données
La base de données peut être définit comme l’« Ensemble structuré de données enregistrées sur des supports informatiques pour satisfaire simultanément plusieurs utilisateurs de façon
sélective et en temps opportun » (Adiba et Delobel, 1982):. Les bases de données sont
conçues afin de pouvoir stocker de manière conséquente des informations, de les partager a une communauté de personnes, de définir l’accès à ces informations et de gérer des informations cohérentes et non-redondantes.
Elle doit traduire les connaissances de faits élémentaires, de propriétés et d’événements.
Un SGBD permet la description des bases de données, de les interroger, de les mettre à jour, de transformer des représentations de données, et d’assurer les contrôles d’intégrité, de concurrence et de sécurité.
B. Notion d’application web
11
Chapitre 2. Approche de solution et Choix approprié aux besoins de la banque
Section 1. Approche de solution
A. Spécificité des exigences de la banque
1. Spécifications fonctionnelles
Il s’agit d’arriver à une meilleure satisfaction des exigences de sécurité et de fiabilité des données ainsi qu’à un gain de temps au niveau des opérations effectuées. Cette application que nous aurons à réaliser aura donc pour objectifs de permettre aux utilisateurs de l’application de réaliser différentes opérations susceptibles de satisfaire à leurs besoins.
2. Spécifications de sécurité
Au niveau de la sécurité, l’accent doit être mis sur la définition des droits aux utilisateurs suivant leur profil.
En effet, chaque utilisateur fera partie d’un groupe d’utilisateurs ayant un profil utilisateur qui lui attribue des droits d’accès à l’application, pour éviter l’accès anarchique aux enregistrements par tout utilisateur.
Il est à noter que la sauvegarde des données se fera de manière périodique permettant une restauration à n’importe quel moment. Tenant compte de ces aspects, nous proposons les solutions suivantes.
B. Proposition de solution
Pour la réalisation de ce projet trois solutions de réalisation comprenant des avantages et des inconvénients sont possibles. Les solutions en questions sont décrites ci-après :
1. Première solution
1.1. Description
La première solution envisagée consiste à acheter un logiciel de gestion de projets. Suite à nos recherches nous en avions répertorié quatre à savoir : Genius Projet (16 342 FCFA/ mois), Projektron BCS (16 000/mois), Wimi (5 800 FCFA) et MS Project 2015 (523 345/ans FCFA).
12
Notre choix définitif s’est porté sur le logiciel «MS Project 2015 » de Microsoft en raison du grand nombre d’outils et de fonctionnalités qu’il propose.
1.2. Avantages
Les utilisateurs disposeront d’une documentation assez vaste
Les possibilités de pilotage des projets sont nombreuses
L’évolutivité et la maintenance de l’application est assurée
Rapide comparativement à la gestion manuelle des projets
Export facile des documents dans la gamme des produits Microsoft
Application respectant les normes et procédures internationales de gestion de projet
1.3. Inconvénients
L’application est de type Desktop et n’est disponible que sur Windows elle n’est pas accessible à partir d’une plateforme Web
2. Deuxième solution
2.1. Description
Cette solution consiste à acquérir une application Open Source. La banque aura juste à débourser des frais de déploiement et de formation. L’application proposée est : « Open Projet» disponible sur http://www.sourceforge.net.
2.2. Avantages
Elle est un clone de MS Project de Microsoft. Elle dispose donc de ses avantages.
Elle est Multiplateforme
Elle est Gratuite
La modification de l’application est possible. Il est donc facile de la conformer aux
Besoins spécifiques d’une entreprise ou d’un projet
Il prend en charge les fichiers de MS Project
2.3. Inconvénients
Malgré ces nombreux avantages, cette application a quelques insuffisances
Elle n’est plus maintenue Depuis 2009
13
Les utilisateurs ne peuvent que se fier à eux même ou à un développeur de module
OpenERP pour pallier à ces insuffisances
3. Troisième solution
3.1. Description
Elle consiste à développer en interne une application Web si possible rattaché au site Web, qui répondront aux besoins de la banque.
3.2. Avantages
Facilité de maintenance ;
L’application sera conçue pour répondre aux besoins spécifiques de la banque ;
Elle sera multiplateforme ;
L’application sera très sécurisée ;
Le site web pourra afficher en temps réel les nouveautés et activités ;
L’application disposera d’une base de données propre à la banque
3.3. Inconvénients
La sauvegarde et la synchronisation devra se faire par l’administrateur du système via un processus souple et flexible.
Une connexion internet est momentanément nécessaire pour effectuer les mises à jour de manière périodique.
Section 2. Choix approprié aux besoins de la banque
Après étude des différentes solutions, Nous avons jugé raisonnable de choisir la troisième solution qui consiste à développer une application répondant aux besoins spécifiques de la banque. Les raisons qui a motivées notre choix fut la contrainte de coût et le souci de répondre aux besoins à des besoins spécifiques
A. Étude de la solution retenue
Description et outils utilisés pour le système de base de données
Notre système de gestion de base de données sera MySQL. C’est un serveur de bases de
14
données relationnelles (SGBDR). C’est un outil libre de plus en plus conforme aux normes ANSI SQL. Il fonctionne sur plusieurs plateformes. Il est reconnu pour sa stabilité et sa compatibilité avec de nombreux serveurs de base de données. Il permet donc de programmer certains scripts au sein de la base via le langage SQL.
Outils techniques
La troisième solution, qui est celle retenue pour pallier à notre problème, sera réalisée avec l’IDE PHP Storm développé en Java. Il permet de supporter des fichiers tels que : JavaScript, XML, PHP et HTML. Il comprend toute les caractéristiques d’un IDE moderne. Il permet le refactoring (consiste à travailler le code source d’un code informatique sans rajouter de fonctionnalité au logiciel).
Chapitre 3. Évaluation financière de la solution
Le coût de la solution retenue sera scindé en deux à savoir : le coût matériel et le coût humain.
A. Coût matériel
Ce tableau comporte l’estimation des coûts qui seront liés aux matériels nécessaires pour le déploiement de l’application qui sera mise en place.
Matériels DescriptionCoût unitaire(F CFA)
Quantité Montant(F CFA)
Serveur de Base de données et d’application
LDLC serveur Évolutivité MI-E Processeur Intel Core I3-4160 (3.6 GHz)Windows Server 2012Essentials 64 bits
655 000 02 1 310 000
Hébergement(2 ans)
Hébergement internet OVH mensuelSite web professionnel
4 950 24 118 800
Onduleur par serveur 500 VA 80 000 02 160 000
TOTAL 1 588 800
15
Tableau 2 : Coût matériel
B. Coût humain
Le tableau ci-dessous représente en quelque sorte, la facturation de la main d’œuvre et le coût de la formation des différents utilisateurs.
C. Coûts totaux
Ce n’est rien d’autre que l’ensemble des coûts prévus pour la mise en place du projet.
Dépenses Montant (F CFA)
Coût matériel (F CFA) 1 588 800Coût humain (F CFA) 2 500 000TOTAL (F CFA) 4 088 800
16
Tableau 6 : Coût humain
Tableau 9 : Coût Total
Désignation Description Nombre d’heures
Coût horaire(F CFA)
Montant(F CFA)
FormationFormation des utilisateurs de l’application
20 3 000 150 000
TOTAL 2 500 000
Chapitre 4. Présentation des méthodes d’analyses et outils de modélisation
Section 1. Présentation des méthodes d’analyses
La présentation des méthodes d’analyse a été consacrée essentiellement la justification de l’approche objet et la présentation du langage UML.
A. Justification de l’approche objet
L’approche objet désigne l’ensemble des méthodes et langages utilisés au cours du cycle de vie du logiciel qui repose sur la manipulation des objets. Elle permet d’avoir une vision :
Externe définissant les actions qu’il sera possible de faire subir au logiciel ;
Interne dans laquelle seule la structure du logiciel sera considérée.
Un logiciel est vu comme un ensemble d’objets qui coopèrent. Un autre concept qui est très souvent lié à l’approche objet est celui de classe qui permet de regrouper les propriétés communes des objets.
La classe apparait comme un modèle structurel d’objet à partir duquel il est possible de fabriquer autant d’objets qu’il sera nécessaire. Ce concept est associé à la notion de composants logiciels réutilisables facilitant la production des logiciels et diminuant l’effort de tests.
B. Présentation du langage UML
UML est un langage de conception objet qui permet de modéliser les solutions informatiques par des diagrammes. Pourtant, le langage ne propose pas l’ordre qui doit régir ces diagrammes.
En anglais, Unified Modeling Language (Langage de Modélisation Unifié), UML est un langage de modélisation graphique et textuel destiné à comprendre et décrire des besoins, spécifier et documenter des systèmes, esquisser des architectures logicielles, concevoir des solutions et communiquer des points de vue. Nous devons noter que l’UML n’est pas une méthode ou un processus mais un langage pseudo-formel.
17
Section 2. Présentation de l’outil de modélisation
Présentation de l’outil de modélisation Sybase PowerAMC 16.5
PowerAMC est un environnement graphique de modélisation d'entreprise très simple d'emploi qui permet d'effectuer les tâches suivantes :
Modélisation intégrée via l'utilisation de méthodologies et de notation standards :
Données (E/R, Merise)
Métiers (BPMN, BPEL)
Application (UML)
Génération automatique de code via des Template personnalisables :
SQL (avec plus de 50 SGBD)
Fonctionnalités de reverse engineering pour documenter et mettre à jour des systèmes existants
Une solution de référentiel d'entreprise avec des fonctionnalités de sécurité et de gestion des versions très complètes pour permettre un développement multiutilisateur
Fonctionnalités de génération et de gestion de rapports automatisés et personnalisables
Un environnement extensible, qui vous permet d'ajouter des règles, des commandes, des concepts et des attributs à vos méthodologies de modélisation et de codage.
La solution de modélisation PowerAMC permet d'intégrer étroitement la conception et la maintenance des couches de données centrales de l'application, des exigences de projet et informations de réplication de base de données.
Ceci étant, voyons ce qui est de la part de la modélisation système.
18
Chapitre 5 : Modélisation du système a partir des diagrammes
nous avons modélisé notre système à partir des diagrammes de cas l’utilisation, du diagramme de classes et de déploiement. Nous avons aussi modélisé les diagrammes de séquences et d’activités correspondants notre projet.
Section 1. Diagrammes de cas d’utilisation
Un diagramme de cas d’utilisation traduit tout ce que l’utilisateur exprime comme action sur le logiciel ou le système à modéliser. C’est une représentation faisant intervenir les acteurs et les cas d’utilisation. Il traduit les besoins des utilisateurs vis-à-vis du système développé.
A. Acteurs
Un acteur est une personne ou un système qui interagit avec le système en échangeant des informations en entrée comme en sortie. Le diagramme des cas d’utilisation d’UML distingue deux acteurs à savoir :
Les acteurs principaux (qui modifient l’état du système ou qui consultent cet état)
Les acteurs secondaires (acteurs auxquels le système fait appel pour répondre aux sollicitations d’un acteur principal)
Dans notre projet, nous avons décelé uniquement des acteurs principaux qui sont :
Le responsable des projets
Le chef du personnel
Le superviseur
La secrétaire
L’administrateur
Les visiteurs (participants)
B. Les cas d’utilisation identifiés
Un cas d’utilisation exprime le comportement du système en termes d’actions et réactions face à un besoin d’un utilisateur. Le résumé des cas d’utilisations de notre projet est consigné dans le tableau suivant :
19
Cas d’utilisation Acteurs
S’authentifier Tous les utilisateurs
Consulter le site
Consulter les informations Tous les utilisateursS’inscrire aux activités VisiteurSuivre l’évolution des activités Tous les utilisateurs
Gérer le siteGérer les activités sur le site
AdministrateurPublier les informationsGérer les inscriptions
Gérer les paramètresGérer les emplois
AdministrateurGérer les organesGérer les types de projets
Gérer les projetsCréer le projet
Responsable du projetModifier le projetChanger l’état du projet
Gérer les informations relatives au projet
Gérer les objectifsResponsable du projetGérer les domaines d’activités
Gérer les partenairesGénérer les rapports Responsable du projet
Gérer les activités
Créer l’activité
Responsable du projet
Modifier l’activitéAffecter une équipeGérer la stratégie de réalisationGérer la cibleAffecter une commission Spécialisée
Gérer les étapes de réalisation
Renseigner les étapes de réalisation AgentModifier les étapes de réalisationValider la réalisation Superviseur
Gérer les agents
Créer un agentChef du personnelModifier un agent
Attribuer une fonction
Affecter à une équipe Responsable du projet
20
Tableau 12 : Les différents cas d’utilisation
Cas d’utilisation Cas d’utilisation
Gérer les équipesCréer une équipe
Responsable du projetModifier une équipeAffecter un superviseur
Consulter le déroulement des activités Tous les utilisateurs
Gérer les ressources Responsable du projet
Gérer les inscriptionsCréer un nouveau visiteur
SecrétaireValider une inscriptionActualiser les payements
Gérer les utilisateursCréer compte
AdministrateurActiver et Désactiver compteModifier compte Tous les utilisateurs
Gérer les profilsCréer profil
AdministrateurModifier un profilGérer les droits
Gérer les messagesEnvoyer des messages
Tous les utilisateursConsulter les messages
1. Les diagrammes de cas d’utilisations
Pour rendre plus clair et plus compréhensible ce diagramme, au cours de l’étude du projet, nous l’avons scindé en quatre modules dont voici suivant chaque module, le diagramme de cas ’utilisation qui lui est associé.
Gestion des inscriptions aux projets
21
Visiteur
<<include>>
S'inscrire aux projets
S'authentifier
Valider une inscription a
un projet
Actualiser le payement des
frais d'inscriptions
<<include>>
secrétaire
Créer le nouveau visiteur
Gérer les inscriptions des visiteurs
Figure 1: Diagramme de cas d’utilisation « Gestion des inscriptions aux activités »
Gestion du site
Figure 2 : Diagramme de cas d’utilisation « Gestion du site »
Gestion des comptes d’utilisateurs
22
Visiteur
<<include>>
S'inscrire aux projets
S'authentifier
Valider une inscription a
un projet
Actualiser le payement des
frais d'inscriptions
<<include>>
secrétaire
Créer le nouveau visiteur
Gérer les inscriptions des visiteurs
Visiteur
Administrateur<<include>>
<<include>>
<<extend>>
<<extend>>
<<extend>>
Consulter le site
S'authentifier
Consulter les informations
S'inscrire aux activites
Suivre l’évolution des
activités
Gérer le site
Gérer les activités sur le
site
Publier les informations
Gérer les inscriptions
Figure 3 : Diagramme de cas d’utilisation « Gestion des comptes d’utilisateurs »
23
<<include>>
<<include>>
<<include>>
<<extend>>
Gérer la messagerie
Agent
S'authentifier
Envoyer message
Modifier le compte
Recevoir message
Gerer les utilisateurs
Gerer les profils
Administrateur
Creer le compte
Désactiver le compte
Attribuer un droit
Retirer un droit
Creer profil
Modifier profil
Activer le compte
Gestion des projets
Figure 4 : Diagramme de cas d’utilisation « Gestion des projets »
24
<<include>>
<<include>>
<<include>>
<<include>>
<<include>>
<<include>>
<<include>>
Consulte le deroulement
du projet
Agent
S'authentifier
Edite les diagrammes de suivis du projet
Gérer projet
Gérer les équipes
Responsable du projet
Creer le projet
Modifier le projet
Créer une équipe
Modifier une équipe
Affecter un supperviseur
Administrateur
Gérer les parametres
Gérer les emplois
Gérer les organes
Gérer les types de projets
Gérer les ressources
Changer l'état du ptojet
Gérer les informations
relatives au projetGérer les domaines d’activités
Gérer les partenaires
Gérer les objectifs
Gestion des activités
Figure 5 : Diagramme de cas d’utilisation « Gestion des activités »
25
Agent
Responsable du projet
Chef du personnel
Superviseur
<<include>>
<<include>>
<<include>>
<<include>>
<<include>>
Gérer les étapes de réalisation Modifier les
étapes de réalisation
Valider la réalisation
Creer la cible
Affecter une commission Spécialisée
Affecter une equipe
Générer les rapports
S'authentifier
Gérer activite
Creer l'activite
Modifier l'activite
Gérer les agents
Créer un agent
Modifier un agent
Attribuer une fonction
Changer l'état de l'activite
Renseigner les étapes de réalisation
<<include>>Gérer les étapes de réalisation
2. Description textuelle des cas d’utilisation
Le diagramme de cas d’utilisation décrit les grandes fonctions du système du point de vue des acteurs mais n’expose pas de façon détaillée le dialogue entre les acteurs et les cas d’utilisation. Il est donc nécessaire de décrire parfois textuellement certains cas d’utilisation afin de remettre une meilleure compréhension par tous.
Cas d’utilisation : s’authentifier
26
Pré conditionsLe système est opérationnelLa page d’authentification est accessible
Scénario nominal1. L’utilisateur accède à la page d’authentification et accède au formulaire d’authentification2. L’utilisateur saisi puis valide son login et son mot de passe 3. Le système compare le login (A1) et le mot de passe (A2) saisie avec ceux enregistrés (E1)
(E2)4. Le système donne à l’utilisateur l’accès au menu principal
Scénario alternatifA1 : Le login est incorrect
Le scénario ne se déclenche que lorsque l’utilisateur saisit un login incorrect : point 3 du scénario nominal.
- Le système affiche un message d’information- L’utilisateur ressaisit le login et le mot de passe et valideLe scénario nominal est repris au point 3.
A2 : Le mot de passe est incorrectLe scénario ne se déclenche que lorsque l’utilisateur saisit un login correct mais un mot de passe incorrect : point 3 du scénario nominal. - Le système affiche un message d’information- L’utilisateur ressaisit le mot de passe et valide
Le scénario nominal est repris au point 3.Scénario d’exception
E1 : Le compte d’utilisateur est inactifCe scénario se déclenche au point 3 du scénario nominal lorsque les paramètres saisis correspondent à ceux d’un compte désactivé.
- Le système affiche un message d’informationLe scénario nominal est interrompu.
Description des scénarios
Titre : Gestion des inscriptions en local aux projets
Résumé : Ce cas d’utilisation permet aux utilisateurs d’accéder à l’application
Acteur : Secrétaire
Date de création : JJ/MM/AAAA Date de mise à jour : JJ/MM/AAAA Responsable : XXXXXXXXX
Sommaire d’identification
E2 : Les paramètres d’identification sont incorrects la troisième fois
Ce scénario se déclenche lorsque l’utilisateur saisit des informations incorrectes 3 fois successivement au point 2 du scénario nominal.
- Le compte est verrouillé pendant un moment
Le scénario nominal est interrompu
Post conditions L’utilisateur est connecté et a accès au menu principalLe journal est mis à jour
Description des scénarios
Cas d’utilisation : Gestion des inscriptions en local aux projets
27
Pré conditionsLe système est opérationnelLa page d’authentification est accessible
Scénario nominal1. L’utilisateur accède à la page d’authentification et accède au formulaire d’authentification2. L’utilisateur saisi puis valide son login et son mot de passe 3. Le système compare le login (A1) et le mot de passe (A2) saisie avec ceux enregistrés (E1)
(E2)4. Le système donne à l’utilisateur l’accès au menu principal
Scénario alternatifA1 : Le login est incorrect
Le scénario ne se déclenche que lorsque l’utilisateur saisit un login incorrect : point 3 du scénario nominal.
- Le système affiche un message d’information- L’utilisateur ressaisit le login et le mot de passe et valideLe scénario nominal est repris au point 3.
A2 : Le mot de passe est incorrectLe scénario ne se déclenche que lorsque l’utilisateur saisit un login correct mais un mot de passe incorrect : point 3 du scénario nominal. - Le système affiche un message d’information- L’utilisateur ressaisit le mot de passe et valide
Le scénario nominal est repris au point 3.Scénario d’exception
E1 : Le compte d’utilisateur est inactifCe scénario se déclenche au point 3 du scénario nominal lorsque les paramètres saisis correspondent à ceux d’un compte désactivé.
- Le système affiche un message d’informationLe scénario nominal est interrompu.
Pré conditions
Le système est opérationnel
Description des scénarios
Titre : Gestion des inscriptions en local aux projetsRésumé : Ce cas d’utilisation permet aux participant des activités s’inscrire au secrétariat.Acteur : SecrétaireDate de création : JJ/MM/AAAA Date de mise à jour : JJ/MM/AAAAResponsable : XXXXXXX
Sommaire d’identification
Cas d’utilisation : Inscription en ligne aux projets
28
Pré conditions
Le système est opérationnel
29
A3 : Le visiteur n’a pas de paramètres d’authentificationLe scénario ne se déclenche que lorsque le visiteur s’inscrit à un projet pour la toute première fois : point 2 du scénario nominal.
- Le système propose au visiteur de s’inscrire provisoirement via un formulaire- Le système envoie au visiteur ses paramètres d’authentification définitifs- Le système permet à l’utilisateur de se connecter
Le scénario nominal est repris au point 2.
Scénario d’exception
E1 : Le payement n’a pas été validé
Ce scénario se déclenche au point 3 du scénario nominal lorsque le processus de payement sur le site PayPal n’a pas abouti.
- Le système affiche un message d’information
Le scénario nominal est interrompu.
Post conditions
Nouvelle inscription au projet créée
Description des scénarios
Cas d’utilisation : Gérer les projets
30
Pré conditions
Le système est opérationnelLe responsable s’authentifie et se connecte au systèmeLe responsable s’est bel et bien connecté au système
Scénario nominal
1. Le responsable se connecte à l’interface affichant la liste des projets2. Le système présente la liste des projets 3. Le responsable sélectionne l’action à exécuter (A1) (A2) (A3)4. Le système présente un formulaire à remplir pour la gestion des informations
complémentaires au projet5. Le responsable projet remplit le formulaire et valide les informations saisies 6. Le système vérifie les informations renseignées (A4) (A5)7. Le système enregistre mes informations
Scénario alternatif
A1 : Le responsable choisit l’action « effectuer un nouvel enregistrement »- Le responsable du projet clique sur le bouton nouveau
Le scénario nominal est repris au point 4.A2 : Le responsable choisit l’action « modifier un enregistrement »
- Le responsable du projet clique sur le bouton modifierLe scénario nominal est repris au point 4.
A3 : Le responsable choisit l’action « changer d’état »- Le responsable du projet clique sur le bouton changer d’état
Le scénario nominal est repris au point 4.A4 : Le système notifie l’existence d’un projet similaire
- Le système envoie le message « Un projet existant porte déjà ce titre » Le scénario nominal est repris au point 5.
Description des scénarios
Titre : Gestion des projets
Résumé : Ce cas d’utilisation permet au responsable du projet de créer les projets, de les modifier et de changer leurs états
Acteur : Responsable du projet
Date de création : JJ/MM/AAAA Date de mise à jour : JJ/MM/AAAA
Responsable : XXXXXXXXXXXXX
Sommaire d’identification
Description des scénarios
Description des scénarios
A5 : Le système notifie que les informations ne sont pas complètes pour créer un projet- Le système envoie le message « Veuillez remplir les champs précédés de * »
Le scénario nominal est repris au point 5.
Post conditions
Les informations sur le projet sont maintenant accessiblesDes activités peuvent maintenant être créées pour se projet
A5 : Le système notifie que les informations ne sont pas complètes pour créer un projet- Le système envoie le message « Veuillez remplir les champs précédés de * »
Le scénario nominal est repris au point 5.
Post conditions
Description des scénarios
Cas d’utilisation : Gérer les activités
31
Pré conditions
Le système est opérationnelLe responsable s’authentifie et se connecte au systèmeExistence de projet en cours de réalisation
Scénario nominal
1. Le responsable accède à l’interface affichant la liste des activités2. Le système présente la liste des projets 3. Le responsable choisit le projet concerné 4. Le système affiche les activités liées à ce projet5. Le responsable sélectionne l’action à exécuter (A1) (A2) 6. Le système présente un formulaire à remplir pour la gestion des informations
complémentaires à l’activité7. Le responsable du projet remplit le formulaire et valide les informations saisies 8. Le système vérifie les informations renseignées (A3) (A4)9. Le système enregistre les informations renseignées
Scénario alternatif
A1 : Le responsable choisit l’action « effectuer un nouvel enregistrement »- Le responsable du projet clique sur le bouton nouveau
Le scénario nominal est repris au point 4.A2 : Le responsable choisit l’action « modifier un enregistrement »
- Le responsable du projet clique sur le bouton modifierLe scénario nominal est repris au point 4.
A3 : Le système notifie l’existence d’une activité similaire - Le système envoie le message « Une activité existante porte déjà ce titre »
Le scénario nominal est repris au point 7.
Pré conditions
Description des scénarios
Titre : Gestion des activités
Résumé : Ce cas d’utilisation permet au responsable du projet de créer des activités pour des projets, de les modifier et de changer leurs états
Acteur : Responsable du projet
Date de création : JJ/MM/AAAA Date de mise à jour : JJ/MM/AAAA
Responsable : XXXXXXX
Sommaire d’identification
A4 : Le système notifie que les informations ne sont pas complètes pour créer une activité
- Le système envoie le message « Veuillez remplir les champs précédés de * »Le scénario nominal est repris au point 7.
Post conditions
Les informations sur l’activité sont maintenant accessiblesDes réalisations peuvent maintenant être créées pour se cette activité
Description des scénarios
Cas d’utilisation : Gérer les étapes de réalisation
32
Pré conditions
Le système est opérationnelL’agent s’est bel et bien connecté au systèmeExistence de projet en cours au quel l’agent participeL’activité existe
Scénario nominal
1. L’agent se connecte à l’interface de réalisation des activités2. Le système présente la liste des projets en cours3. L’agent choisit le projet concerné 4. Le système présente la liste des activités correspondantes au projet auquel l’agent est affilié5. L’agent choisit l’activité concernée6. Le système affiche les activités liées à ce projet7. L’agent sélectionne l’action à exécuter (A1) (A2) (E1)8. Le système présente un formulaire à remplir pour la réalisation de l’activité9. L’agent projet remplit le formulaire et valide les informations saisies 10. Le système vérifie les informations renseignées (A3) 11. Le système enregistre les données
Scénario alternatif
A1 : L’agent choisit l’action « effectuer un nouvel enregistrement »- L’agent clique sur le bouton nouveau
Le scénario nominal est repris au point 8.
A2 : L’agent choisit l’action « modifier un enregistrement »- L’agent clique sur le bouton modifier
Le scénario nominal est repris au point 8.
A3 : Le système affiche un message d’erreur- Le système envoie le message d’erreur « Les informations sont incorrectes ».
Le scénario nominal est repris au point 9.
Description des scénarios
Titre : Gestion des étapes de réailsation
Résumé : Ce cas d’utilisation permet à un agent de saisir des informations sur la réalisation d’une activité ainsi que les actions menées
Acteur : Agent
Date de création : JJ/MM/AAAA Date de mise à jour : JJ/MM/AAAA
Responsable : XXXXXXX
Sommaire d’identification
Scénario d’exception
E1 : Le système notifie que la réalisation a déjà été validée
Ce scénario se déclenche au point 7 du scénario nominal lorsque l’agent tente de modifier une réalisation déjà validée.
- Le système affiche le message : ‘ La réalisation a été déjà validé impossible de la modifier’
Le scénario nominal est repris au point 7.
Post conditions
Les informations sur la réalisation de l’activité sont maintenant accessiblesDes diagrammes peuvent être établis
Description des scénarios
3. Modélisation de la structure dynamique du système
La structure dynamique du système présente, les diagrammes d’activités, les diagrammes de séquences et les diagrammes d’états relatifs au projet.
Les diagrammes d’activités
Une activité définie comme un comportement représente une exécution d’un mécanisme, un déroulement d’étapes séquentielles. Le passage d’une activité vers une autre activité est matérialisé par une transition. Les transitions sont déclenchées par la fin d’une activité et provoque le début immédiat d’une autre activité (elles sont automatiques).
UML permet de représenter graphiquement le comportement d’une méthode ou le déroulement d’un cas d’utilisation à l’aide de diagrammes d’activités. Ces diagrammes sont représentés par :
Des états d’activités (Initial et Final)
Une transition entre les activités
Une barre de synchronisation pour fusionner ou dissocier les activités
Les diagrammes d’activités associés à notre projet sont les suivants :
Diagramme d’activité de « L’authentification sur la plateforme Web »
33
NON OUI
Lancer l'application
Saisir le login et le mot de passe
Vérifier les v aleurs saisies
Env oier un message d'erreur Afficher le menu principal
Informations valides
Les paramètres ne sont pas valides à 3 reprises concécutives
Le compte est périodiquement v érouillé
NON
OUI
Figure 6 : Diagramme d’activité « Gestion des activités »
Diagramme d’activité de « L’inscription aux projets en local »
34
Figure 7 : Diagramme d’activité « Gestion des activités »
Diagramme d’activité de « Gestion des projets »
35
OuiNon
Oui Non
Selectionner le projet
Sélectionner le participant
Effectuer une inscription sous réserve
Enregistrer l'inscription du participant
Enregistrer le v isiteur
Vérifier si e visiteur est déja un participant au
projet
Vérifier si le visiteur à déja participé à un
projet
Vérifier si le montant est versé
totalement
OuiNon
Sélectionner le v isiteur
Renseigner le montant versé
ModiifierAjouter
Acceder à l'interface des projet
Choisir l 'action
Créer le projet Choisir le projet
Non
Oui
Oui
Non
Modifier
Changer l'état
Figure 8 : Diagramme d’activité « Gestion des projets »
Diagramme d’activité de « Gestion des activités »
36
ModiifierAjouter
Acceder à l'interface des projet
Choisir l 'action
Créer le projet Choisir le projet
Non
Oui
Oui
Non
Modifier
Changer l'état
Figure 9 : Diagramme d’activité « Gestion des activités »
Les diagrammes de séquences
37
ModiifierAjouter
Selectionner le projet
Renseigner les informations et selectionner les cibles a l'activ ié
Choisir l 'action
Créer l'activ ite
Choisir l'activ ite
Modifier l'activ ite
Choisir la modification
Enregistrer le projet
Sélectionner les cibles
Changer l'etat
Informations valides
Selection des cibles validée
Non
Oui
Oui
Non
Selectionner les équipes
Equipes existante
Oui
Non
Renseigner les ressources nécessaires
Informations sur les ressources
valides
Oui
Non
Modifier
Changer l 'état
Créer less équipes et y ajouter des membres
Valider la sélection des équipes
Un diagramme de séquence documente les interactions à mettre en œuvre entre les classes pour réaliser un résultat, tel qu'un cas d'utilisation. UML étant conçu pour la programmation orientée objet, ces communications entre les classes sont reconnues comme des messages. Le diagramme des séquences énumère des objets horizontalement (de haut en bas), et le temps verticalement. Il modélise l'exécution des différents messages en fonction du temps.
Diagramme de séquence de « L’authentification sur la plateforme Web »
Figure 10 : Diagramme de séquence « Gestion des activités »
Diagramme de séquence de « Inscription aux projets en ligne »
38
S'authentifier
Le compte est vérouillé périodiquement
Accéder au menu prncipal
Informations incorrectes
Informations correctes
alt
Afficher un message d'erreur
Résultats
Vérifier les informationsEnvoiyer les informations
<< Boundary >>
Saisir le login et le mot de passe
Afficher la page d'authentification
Accéder à l'applicationUtilisateur
Ecran Contrôleur Users
[3 fois au maximum]loop
<< Control >> << Entity >>
Else
2 fois successives
La 3eme fois
alt
Le compte est vérouillé périodiquement
Accéder au menu prncipal
Afficher un message d'erreur
Résultats
Vérifier les informationsEnvoiyer les informations
Saisir le login et le mot de passe
Afficher la page d'authentification
Accéder à l'application
Figure 11 : Diagramme de séquence « Gestion des activités »
39
Inscription en ligne
Envoyer les informations
Choisir le projet désiré
Afficher un message d'erreur
Paiement effectué
Paiement non effectué
alt
Afficher un message de confirmation
Enregistrer l'inscription
<< Boundary >>
Confirmer l'option de paiement Paypal
Afficher le mode de payement
Paypal
Accéder au site Web
Visiteur
Ecran Paypal_CTRL Inscription
<< Control >> << Entity >>
Else
Envoyer les informations
Choisir le projet désiré
Afficher un message d'erreur
Afficher un message de confirmation
Enregistrer l'inscription
Confirmer l'option de paiement Paypal
Afficher le mode de payement
Paypal
Accéder au site Web
Diagramme de séquence de « Gestion des Projets »
Figure 12 : Diagramme de séquence « Gestion des projets »
40
Gestion des projets
Actualiser l'etat
Modifier l'état
Changer l'état
Envoyer un message d'erreur
Envoyer un message d'erreur
Envoyer un message de succesEnregistrer le projet
Vérifier
Envoyer les informations
Saisir les informations et les objectifs du projet
Ouvrir le formulaire
Selectionner les domaines d'activités
Retoourner la liste des domaines d'activités
Trouver la liste des domaines d'activités
Retourner la liste des partenaires actifs pour les domaines choisis
Trouver la liste des partenaires actifs pour les domaines choisis
Choisir l'action à effectuer
Afficher la liste des projets
Créer le projet
Accéder à l'interface des projets
<< Boundary >>
Responsable du projet
Ecran Projet_CTRL Projets
<< Control >> << Entity >>
Partenaires
<< Entity >>
Domaines
refS'authentifier()
[Créer un projet]opt
<< Enti ty >>
Informations correctes
Informations incorrectes
Ce nom de projet existe déja
alt
[Changer l 'etat d'un projet]opt
Actualiser l'etat
Modifier l'état
Changer l'état
Envoyer un message d'erreur
Envoyer un message d'erreur
Envoyer un message de succesEnregistrer le projet
Vérifier
Envoyer les informations
Saisir les informations et les objectifs du projet
Ouvrir le formulaire
Selectionner les domaines d'activités
Retoourner la liste des domaines d'activités
Trouver la liste des domaines d'activités
Retourner la liste des partenaires actifs pour les domaines choisis
Trouver la liste des partenaires actifs pour les domaines choisis
Choisir l'action à effectuer
Afficher la liste des projets
Créer le projet
Accéder à l'interface des projets
Figure 13 : Diagramme de séquence « Gestion des projets (suite) »
41
Gestion de projet suite
Envoyer un message d'erreur
Envoyer un message d'erreur
Envoyer un message de confirmation
Enregistrer le projet
Vérifier
Envoyer les informations
Retourner la liste des partenaires actifs pour les domaines choisis
Trouver la liste des partenaires actifs pour les domaines choisis
Retourner la liste des domaines d'activités
Trouver la liste des domaines d'activités
Selectionner les domaines d'activités
Modifier les informations ou les objectifs du projet
Ouvrir le formulaire
Retourner un projet
Trouver un projet
Choisir un projet
<< Boundary >>
Responsable du projet
Ecran Projet_CTRL Projets
<< Control >> << Entity >>
Partenaires
<< Entity >>
Domaines
<< Entity >>
[Modifier un projet]opt
Informations correctes
Informations Incorrectes
Nom du projet déja existant
alt
Envoyer un message d'erreur
Envoyer un message d'erreur
Envoyer un message de confirmation
Enregistrer le projet
Vérifier
Envoyer les informations
Retourner la liste des partenaires actifs pour les domaines choisis
Trouver la liste des partenaires actifs pour les domaines choisis
Retourner la liste des domaines d'activités
Trouver la liste des domaines d'activités
Selectionner les domaines d'activités
Modifier les informations ou les objectifs du projet
Ouvrir le formulaire
Retourner un projet
Trouver un projet
Choisir un projet
Diagramme de séquence de « Gestion des activités »
Figure 14 : Diagramme de séquence « Gestion des activités »
42
gestion des activités
Envoyer un message d'erreur
Envoyer un message de confirmation
Vérifier
Envoyer les informations
Saisir les étapes de réalisations et leurs détails
Sélectionner ou créer des équipes
Choisir le projet
Accéder à l'interface des projets
Créer l'activité
Afficher la liste des projets
Choisir l'action à effectuer
Trouver la liste des équipes disponibles
Retoourner la liste des équipes disponibles
Renseigner les ressources à utiliser
Ouvrir le formulaireSaisir les informations et les
cibles de l'activité
Envoyer les informations
Vérifier
Enregistrer l'activitéEnvoyer un message de succes
Envoyer un message d'erreur
Envoyer un message d'erreur
Choisir l'activité
Enregistrer les étapes de réalisation
<< Boundary >>
Responsable du projet
Ecran Activite_CTRL Activite
<< Control >> << Entity >>
Réalisation
<< Entity >>
Equipe
refS'authentifier()
[Créer une activité]opt
<< Entity >>
Informations correctes
Informations incorrectes
Ce nom d'activité existe déja
alt
[Gérer la réalisation d'une activité]opt
Informations valides
Informations non valides
alt
Envoyer un message d'erreur
Envoyer un message de confirmation
Vérifier
Envoyer les informations
Saisir les étapes de réalisations et leurs détails
Sélectionner ou créer des équipes
Choisir le projet
Accéder à l'interface des projets
Créer l'activité
Afficher la liste des projets
Choisir l'action à effectuer
Trouver la liste des équipes disponibles
Retoourner la liste des équipes disponibles
Renseigner les ressources à utiliser
Ouvrir le formulaireSaisir les informations et les
cibles de l'activité
Envoyer les informations
Vérifier
Enregistrer l'activitéEnvoyer un message de succes
Envoyer un message d'erreur
Envoyer un message d'erreur
Choisir l'activité
Enregistrer les étapes de réalisation
Figure 15 : Diagramme de séquence « Gestion des activités (suite) »
43
Gestion des activités suite
Envoyer un message d'erreur
Envoyer un message d'erreur
Envoyer un message de confirmation
Enregistrer l'activité
Vérifier
Envoyer les informations
Selectionner les ressources à utiliser
Retourner la liste des équipes disponibles
Trouver la liste des équipes disponibles
Modifier les informations ou les cibles d'une activité
Ouvrir le formulaire
Retourner une activité
Trouver une activitéChoisir une activité
Sélectionner ou créer des équipes
<< Boundary >>
Responsable du projet
Ecran Activite_CTRL Activite
<< Control >> << Enti ty >>
Réalisation
<< Enti ty >>
Equipe
<< Enti ty >>
Informations correctes
Informations incorrectes
Ce nom de projet existe déja
alt
[Modifier une activité]opt
Envoyer un message d'erreur
Envoyer un message d'erreur
Envoyer un message de confirmation
Enregistrer l'activité
Vérifier
Envoyer les informations
Selectionner les ressources à utiliser
Retourner la liste des équipes disponibles
Trouver la liste des équipes disponibles
Modifier les informations ou les cibles d'une activité
Ouvrir le formulaire
Retourner une activité
Trouver une activitéChoisir une activité
Sélectionner ou créer des équipes
Les diagrammes d’états
Ce diagramme sert à représenter des automates d’états finis. Les diagrammes d'état transition permettent de décrire le changement d’état d’un objet ou d’un composant en réponse à l’interaction avec d’autres objets (ou composant) ou avec des acteurs.
Diagramme d’état de « Gestion des Projets »
Figure 16 : Diagramme d’état« Gestion des projets »
Diagramme d’état de « Gestion d’activités »
Figure 17 : Diagramme d’état « Gestion des activités »
44
En coursValidée
Suspendue
En attente
Cloturée
Non validée
Traiter()
Rejeter()
Démarrer()
Suspendre()
Terminer()
Annuler()
Démarrer()Create()
En coursLancée
Suspendue
En attente
Traiter()
Rejeter()
Réalisée
Rejetée
Validée
Démarrer()
Suspendre()
Terminer()
Démarrer()Create()
Complèter()
Analyse structurelle ou statique du système
L’analyse statique du système a permis de présenter les diagrammes de classes et de packages et le diagramme de déploiement du projet.
Les diagrammes de classes participantes
Les premières classes candidates identifiées dans cette phase doivent être des concepts connus des utilisateurs du système, ce qu’on appelle couramment des objets métier. Ensuite ces concepts métier sont formalisés sous forme de classes et d’associations rassemblées dans un diagramme statique pour chaque cas d’utilisation. Ces diagrammes préliminaires, que nous appelons « diagramme de classes participantes » n’ont pas d’objectif d’exhaustivité. Ils servent uniquement à démarrer la découverte des classes du modèle d’analyse pour la partie de l’application délimitée par un cas d’utilisation.
La réunion de tous les diagrammes, après élimination des classes et associations redondantes, doit représenter le squelette du modèle statique d’analyse.
Pour quelques cas d’utilisation, voici les classes qui ont été identifiées :
Diagramme de classe participantes de « Gestion de projets »
Figure 18 : Diagramme des classes participantes « Gestion des projets »
Diagramme de classe participantes de « Gestion d’activités »
45
PROJETPARTENAIRE
PartenairePhysique PartenaireMoral
DOMAINEACTIVITE
OBJECTIFVISITEUR Inscription
ACTIVITE
0..*
0..*
0..*0..*
0..*
0..*
0..*0..*
0..1
0..*
0..1
0..*
OBJECTIFVISITEUR Inscription
Figure 19 : Diagramme des classes participantes « Gestion d’activités »
Les diagrammes de packages
Les modèles UML produits dans le cadre d’un projet sont parfois d’une superficie trop importante pour être facilement utilisés. La notion de paquetage ou « package » est une technique qui permet de mettre en œuvre ce partitionnement des modèles tout en préservant la cohérence de l’ensemble.
Voici, listés les différents packages de notre projet ainsi que les classes qui en font partie :
Packages Classes intervenantes
Administration
User ProfilMenu MessageActionProfil Menu Recevoir Message
Création du personnel Personnel FonctionUniteFonctionnelle Personnel_fonction
Gestion de projetsProjet ObjectifInscription DomainePartenaire Visiteur
Gestion des activités Activité CibleMiseenoeuvre Etape
46
ACTIVITE
Activite_Ressource
PROJET
Personnel_Equipe
PERSONNEL
RESSOURCE
RessourceMaterielle
RessourceHumaine
RessourceFinanciere
MISEENOEUVRE
ETAPE
EQUIPEPROJET
CIBLE
0..1
0..*
0..1
0..*
0..1
0..*
0..*0..*
0..*0..*
0..10..*
0..1
0..*
Tableau 15 : Les différents Packages
Tableau 16 : Les différents Packadges
Ressource EquipeprojetActivite_Ressources Personnel_equipe
Le diagramme de packages est la représentation graphique des relations existant entre les packages composant un système, dans le langage UML. Le diagramme de packages de notre projet se présente comme suit :
Figure 20 : Diagramme de packages
Les diagrammes de classes de conception
Le diagramme de classes est un schéma utilisé en génie logiciel pour présenter les classes et les interfaces des systèmes ainsi que les différentes relations entre celles-ci.
Le digramme de classe est considéré comme le plus important de la modélisation orientée objet. Il est le seul obligatoire lors d’une telle modélisation. Alors que le diagramme de cas d’utilisation montre un système du point de vue des acteurs, le diagramme de classe en montre la structure interne. Il s’agit d’une vue statique car on ne tient pas compte du facteur temporel dans le comportement du système.
Une classe décrit les responsabilités, le comportement et le type d’un ensemble d’objets. Les éléments de cet ensemble sont les instances de la classe.
Nous ferons donc une modélisation de notre diagramme de classe en présentant en premier lieu les classes à travers les différents packages ou modules puis nous présenterons le diagramme complet.
47
Gestion du site webAdministration
Gestion de projetsGestion des activités
Création du personnel
Diagramme de classes « Administration »
Figure 21 : Diagramme de classes « Administration »
Diagramme de classes « Création du personnel »
Figure 22: Diagramme de classes « Gestion des projets »
48
USER----
user_codeuser_nomuser_passworduser_statut
: String: String: String: String
PROFIL---
profil_codeprofilnomprofil_desc
: String: String: String
MENU---
menu_codemenu_nommenu_url
: String: String: String
ACTIONS-----
action_codeaction_libaction_detailaction_dateaction_type
: String: String: String: Date: String
MESSAGE----
message_codemessage_objmessage_descmessage_dtEdit
: String: String: String: Date
Profil_menu---
PM_affectationPM_dtAffectationPM_dtRetrait
: String: Date: Date
RecevoirMessage--
RM_dtReceptionRM_etatReception
: Date: String
1..10..*
0..*
1..1
0..*
0..*
0..1
0..*
0..1
0..*
0..*
0..*
1..*
1..*
1..10..*
UNITEFONCTIONNELLE----
UF_codeUF_nomUF_descUF_nomOrgane
: String: String: String: String
PERSONNEL-------------
personnel_codepersonnel_nompersonnel_prenompersonnel_sexepersonnel_dtNaispersonnel_contactpersonnel_adrpersonnel_emailpersonnel_signaturepersonnel_etatpersonnel_nomPersAPrevpersonnel_prenomPersAPrevpersonnel_contactPersAPrev
: String: String: String: String: Date: String: String: String: String: String: String: String: String
FONCTION---
fonction_codefonction_libfonction_desc
: String: String: String
Personnel_Fonction--
dtDebutFonctiondtFinFonction
: Date: Date
Figure 23: Diagramme de classes « Gestion des projets »
49
0..*
0..*
0..*0..*
0..* 1..*
1..1
0..*
0..*
1..*PROJ ET
---------
projet_codeprojet_matriculeprojet_titreprojet_dtCreationprojet_dtFinprojet_dtFinPrevprojet_descprojet_etattypeProjet
: String: String: String: Date: Date: Date: String: String: String
PARTENAIRE------
partenaire_codepartenaire_adrpartenaire_activitepartenaire_contactpartenaire_emailpartenaire_bp
: String: String: String: String: String: String
PartenairePhysique-----
partenaire_nompartenaire_prenompartenaire_sexepartenaire_nationalitepartenaire_contactPerso
: String: String: String: String: String
PartenaireMoral------
partenaire_nomEntreprisepartenaire_siglepartenaire_nomDirecteurpartenaire_prenomDirecteurpartenaire_siteCentralpartenaire_contactDirecteur
: String: String: String: String: String: String
DOMAINEACTIVITE---
domaine_codedomaine_libdomaine_desc
: String: String: String
OBJ ECTIF----
objecti f_codeobjectif_libobjectif_descobjectif_type
: String: String: String: String
VISITEUR---------
visiteur_codevisiteur_nomvisiteur_prenomvisiteur_sexevisiteur_dtNaisvisiteur_Contact1visiteur_contact2visiteur_adrvisiteur_email
: String: String: String: String: Date: int: int: String: String
Inscription---
dtInscriptionmontantInscriptionetatInscription
: String: float: String
ProjetInscriptible---
prixInscCCprojet_etatinsprojet_publication
: int: String: String
Diagramme de classes « Gestion des activités »
Figure 24: Diagramme de classes « Gestion des activités »
Diagramme de classes au complet
50
1..10..*
1..1
1..*
0..1
0..*
1..*0..*
0..* 0..*
1..*
1..*
ACTIVITE---------
activite_codeactivite_libelleactivite_descactivite_dtDebutactivite_dtFinactivite_dtFinPrevactivite_etatactivite_porteeactivite_statutRealisation
: String: String: String: Date: Date: Date: String: float: String
AffecterEquipe---
dtAffectationEquipedtRetraitEquipeRoleEquipe
: Date: Date: String
PERSONNEL------------
personnel_codepersonnel_nompersonnel_prenompersonnel_sexepersonnel_dtNaispersonnel_contactpersonnel_adrpersonnel_emailpersonnel_etatpersonnel_nomPersAPrevpersonnel_prenomPersAPrevpersonnel_contactPersAPrev
: String: String: String: String: Date: String: String: String: String: String: String: String
RESSOURCE---
ressource_coderessource_nomressource_cout
: String: String: intRessourceMaterielle
- RM_nombre : int
RessourceHumaine--
RH_sexeRH_nombre
: String: int
RessourceFinanciere----
RF_conditionnementRF_conditionAcquisitionRF_remboursementRF_conditionRemboursement
: String: String: String: String
MISEENOEUVRE-----
MEO_codeMEO_rapportMEO_etatMEO_statutMEO_numero
: String: String: String: String: int
ETAPE-------
etape_codeetape_titreetape_descetape_dtDebutetape_dtFinetape_etatetape_rapport
: String: String: String: Date: Date: String: String
EQUIPEPROJ ET---
equipe_codeequipe_nomequipe_dtFormation
: String: String: Date
CIBLE-------
cible_codecible_nomcible_localitecible_prefecturecible_regioncible_contact1cible_contact2
: String: String: String: String: String: String: String
Activite_Ressource- nombreRessUtil ise : int
51
0..*
0..*
0..*
0..*
1..*
0..*
1..*
1..*
0..*0..*
0..*
1..*
1..1
0..*
0..*
1..1
0..*
0..1
0..1
0..*
1..10..*
1..1 1..*
0..10..*
1..1
0..*
1..*
1..*
0..*
0..1
0..*
0..*
0..*
0..*
0..*
1..*
1..1
0..*
0..1
0..*
0..*
0..*
0..*
0..1
0..*0..1
0..*
0..*
USER-----
user_codeuser_nomuser_passworduser_passwordInitialuser_statut
: String: String: String: String: String
PROFIL---
profil_codeprofilnomprofil_desc
: int: String: String
MENU---
menu_codemenu_nommenu_url
: int: String: String
ACTIONS-----
action_codeaction_libaction_detailaction_dateaction_type
: int: String: String: Date: String
MESSAGE----
message_codemessage_objmessage_descmessage_dtEdit
: int: String: String: Date
Profil_menu---
PM_affectationPM_dtAffectationPM_dtRetrait
: String: Date: Date
RecevoirMessage--
RM_dtReceptionRM_etatReception
: Date: String
ACTIVITE---------
activi te_codeactivite_libelleactivite_descactivite_dtDebutactivite_dtFinactivite_dtFinPrevactivite_etatactivite_porteeactivite_statutRealisation
: String: String: String: Date: Date: Date: String: float: String
AffecterEquipe---
dtAffectationEquipedtRetraitEquipeRoleEquipe
: Date: Date: String
PERSONNEL------------
personnel_codepersonnel_nompersonnel_prenompersonnel_sexepersonnel_dtNaispersonnel_contactpersonnel_adrpersonnel_emailpersonnel_etatpersonnel_nomPersAPrevpersonnel_prenomPersAPrevpersonnel_contactPersAPrev
: String: String: String: String: Date: String: String: String: String: String: String: String
RESSOURCE---
ressource_coderessource_nomressource_cout
: int: String: int
RessourceMaterielle- RM_nombre : int
RessourceHumaine--
RH_sexeRH_nombre
: String: int
RessourceFinanciere----
RF_conditionnementRF_conditionAcquisitionRF_remboursementRF_conditionRemboursement
: String: String: String: String
MISEENOEUVRE-----
MEO_codeMEO_rapportMEO_etatMEO_statutMEO_numero
: String: String: String: String: int
ETAPE-------
etape_codeetape_titreetape_descetape_dtDebutetape_dtFinetape_etatetape_rapport
: String: String: String: Date: Date: String: String
EQUIPEPROJ ET---
equipe_codeequipe_nomequipe_dtFormation
: int: String: Date
CIBLE-------
cible_codecible_nomcible_localitecible_prefecturecible_regioncible_contact1cible_contact2
: String: String: String: String: String: String: String
UNITEFONCTIONNELLE----
UF_codeUF_nomUF_descUF_nomOrgane
: int: String: String: String
FONCTION---
fonction_codefonction_libfonction_desc
: int: String: String
Personnel_Fonction--
dtDebutFonctiondtFinFonction
: Date: Date
Activite_Ressource- nombreRessUtil ise : int
PROJ ET---------
projet_codeprojet_matriculeprojet_titreprojet_dtCreationprojet_dtFinprojet_dtFinPrevprojet_descprojet_etatprojet_type
: String: String: String: Date: Date: Date: String: String: String
PARTENAIRE------
partenaire_codepartenaire_adrpartenaire_activitepartenaire_contactpartenaire_emailpartenaire_bp
: String: String: String: String: String: String
PartenairePhysique-----
partenaire_nompartenaire_prenompartenaire_sexepartenaire_national itepartenaire_contactPerso
: String: String: String: String: String
PartenaireMoral------
partenaire_nomEntreprisepartenaire_siglepartenaire_nomDirecteurpartenaire_prenomDirecteurpartenaire_siteCentralpartenaire_contactDirecteur
: String: String: String: String: String: String
DOMAINEACTIVITE---
domaine_codedomaine_libdomaine_desc
: int: String: String
OBJ ECTIF----
objectif_codeobjectif_libobjectif_descobjectif_type
: int: String: String: String
VISITEUR---------
visiteur_codevisiteur_nomvisiteur_prenomvisiteur_sexevisiteur_dtNaisvisiteur_Contact1visiteur_contact2visiteur_adrvisiteur_email
: String: String: String: String: Date: int: int: String: String
Inscription----
dtInscriptionmontantInscriptionetatInscriptiontypeInscription
: String: float: String: String
ProjetInscriptible---
prixInscCCprojet_etatinsprojet_publ ication
: int: String: String
Figure 25 Diagramme des classes au complet
Les diagrammes de déploiement
Un diagramme de déploiement sert à représenter l'utilisation de l'infrastructure physique par le système et la manière dont les composants du système sont répartis ainsi que leurs relations entre eux. Compte tenu de l’architecture que nous avons adoptée, voici notre diagramme de déploiement :
Figure 26: Diagramme de déploiement
Les diagrammes de composants de conception
Il décrit les composants et leurs dépendances dans l’environnement de réalisation. Les diagrammes sont généralement utilisés pour d’écrire les choix d’implémentation et les dépendances de compilation et d’implémentation entre les composants du système. Voici le diagramme de composants de notre projet :
Figure 27: Diagramme de Composants
52
POSTE CLIENT 1
Navigateur Internet
PAR-FEU
SERVEUR D'APPLICATION
Serveur Appache
SERVEUR DE BASE DE DONNEES
MySQL
<< LAN >><< WAN/LAN >>
Navigateur Internet Serveur Appache MySQL
POSTE CLIENT 1 SERVEUR D'APPLICATION SERVEUR DE BASE DE DONNEES<< LAN >>
<< WAN/LAN >>
Interface util isateur Route
ContrôleurModèle
Chapitre 6. Les Outils de développement et déploiement
Section 1. Outils de Développement
Système de gestion de base de données SGBD : MySQL
A. Généralités
MySQL est un système de gestion de base de données (SGBD) libre ou propriétaire. Utilisé par un grand public qui développe des applications web ainsi que par des professionnels, MySQL fait
partie des logiciels de gestion de base de données les plus utilisés au monde.
MySQL est l’œuvre de la société suédoise, MySQL AB, et qui est passé en Licence en Juin 2000 à partir de la version 3.23.19.
B. Fonctionnalités et avantages
MySQL fonctionne sur de nombreuses plateformes et dispose d’un système d’allocation mémoire très rapide. Les fonctions SQL sont implémentées grâce à une bibliothèque de classes optimisées, qui sont aussi rapides que possible.
MySQL offre un système de droits et de mots de passe très souple et sécuritaire, qui vérifie aussi les hôtes se connectant. Les mots de passe sont bien protégés, car tous les échanges de mot de passe sont chiffrés, même lors des connexions.
En plus de gérer de très grandes bases de données, il est gratuit et facile d’utilisation.
Section 2. Outils de déploiement
Serveur WampServer
A. Généralités
WampServer (anciennement WAMP5) est une plateforme de développement Web de type WAMP, permettant de faire fonctionner localement (sans se connecter à un serveur externe) des scripts PHP. WampServer est un environnement comprenant deux serveurs (Apache et MySQL), un interpréteur de script (PHP), ainsi que PhpMyAdmin pour l'administration Web des bases MySQL.
53
B. Fonctionnalités et avantages
WampServer dispose d’un « Traylcon » permettant de gérer et de configurer vos serveurs sans toucher aux fichiers de configuration. Le Clic droit sur l’icône de WampServer, permet notamment de : Gérer les services d’Apache et MySQL ; Passer en mode online/offline (accessible à tous ou limité au localhost) ; Installer, charger les versions de Apache, MySQL et PHP ; Gérer les paramètres de configuration de vos serveurs ; Accéder à vos logs ; Accéder aux fichiers de configurations ; Créer des alias ou bien plus encore ;
Un clic gauche permet de changer la langue du menu de WampServer et y accéder directement.
Chapitre 7. Mise en place de la base de données et sécurité
Section 1. Mise en place de la base de données
A. Création de la base de donnée
Après avoir installé et paramétré WampServer, suivez les étapes suivantes pour créer la base de données :
Accédez à PhpMyAdmin en cliquant en premier lieu sur l’icône de WampServer se trouvant sur la barre des tâches puis en cliquant en suite sur l’onglet PhpMyAdmin ;
Accédez à l’onglet Importer puis importez dans cet ordre les fichiers OA_bd_users.sql, OA_db.sql, OA_triggers.sql se trouvant tous dans le dossier BD du support d’installation.
B. Sauvegarde de la base de donnée
L’absence d’une politique de sauvegarde des données d’une application est un fait délicat et pourrait coûter chère à la vie d’une entreprise. Il est donc nécessaire d’instaurer une politique de sauvega3rde.
Il existe deux types de sauvegardes
54
La sauvegarde logique ;
La sauvegarde physique.
Pour créer une sauvegarde logique il faut procéder comme suit :
Accéder à PhpMyAdmin puis se positionner sur la base de données OActivities_db ;
Cliquez sur l’onglet Exporter puis cliquez sur exécuter tout en choisissant le répertoire de sauvegarde.
Pour effectuer une sauvegarde physique il faut effectuer les actions suivantes :
Connectez-vous à l’application Our Activities puis accédez à l’onglet Paramètres ;
Une fois la page rechargée effectuez un clique sur le Bouton Sauvegarder la BD ;
Le dossier Oactivities_db se trouvant dans le dossier de WampServer à l’emplacement suivant : ‘wamp\bin\mysql\mysql5.6.17\data’ sera copié et automatiquement renommé dans le dossier sauvegarde se trouvant dans le dossier de l’application à l’adresse suivante : ‘wamp\www\OA’.
C. Déploiement de l’application
Après avoir créé la base de données OActivities_db, l’application peut être installée par une procédure très simple. Pour se faire, il vous suffit de décompresser le fichier OA.rar du support d’installation dans la racine www du serveur wamp accessible en faisant un click gauche sur l’icône de WampServer sur la barre des tâches et en cliquant sur l’option ‘www directory’.
Une fois cette étape réalisée, l’application est accessible dès lors par tous les navigateurs à cette adresse : localhost/OurActivities si on est sur le serveur et ‘Nom du serveur’/ OurActivities si on est sur un poste client tout en s’assurant avoir mis wamp en ligne.
Pour se connecter à l’application, il faut disposer d’un compte d’utilisateur qui sera créé par l’administrateur. Ce dernier se chargera donc de la création des utilisateurs en leur accordant des droits relatifs à leur profil.
Section 2. Sécurité de l’application
A. Sécurité de la plateforme WEB
L’application « Our Activities » est accessible uniquement via son portail d’authentification. Une foi sur la page d’authentification, l’utilisateur renseigne son nom d’utilisateur ainsi que son mot de passe qui est en premier lieu crypté puis comparé au mot
55
de passe qui lui a été attribué dans l’application. Si les informations son correspondantes, l’utilisateur accède à la page d’accueil. Dans le cas échéant, l’utilisateur se voit contraint de saisir à nouveau ses informations d’authentification. Si le mot de passe est erroné à trois essais consécutifs, pour un même compte d’utilisateur, ce dernier est alors momentanément désactivé.
Si un utilisateur tente d’accéder à l’application en changeant l’URL au niveau de la barre de navigation sans s’être au préalable connecté, il sera immédiatement redirigé sur la page de connexion.
Pour éviter que les données et les requêtes en cour de traitement ne soit interceptées par qui que ce soit, le transfert des données via les cookies a été soigneusement évité.
L’application retrace toutes les actions effectuées par tous les utilisateurs, depuis leur connexion jusqu’à la plus petite action de modification qu’ils puissent effectuer.
B. Sécurité de la base de donnéesPour des raisons de sécurités au niveau de la base de données, elle n’est accessible que par un utilisateur ayant pour nom de rôle : OAmanager.
La sauvegarde quotidienne de la base de données doit être programmée.
Pour créer cet utilisateur la commande SQL est la suivante :
CREATE USER ‘OAmanager’IDENTIFIED BY ‘***********’ ;GRANT ALL PRIVILLEGES ON *oactivities_db* TO ‘OAmanager’@’%’ IDENTIFIED BY PASSWORD ‘***************************’ WITH GRANT OPTION;
56
Tableau 17 : Cahier des évènements
Conclusion Générale
Mettre en place une base de données pour la BTCI va faciliter la conception d’une application web qui permettra l’exécution de certaines tâches qui prenait assez de temps à cause de leur caractère manuel. C’est dans le but d’arriver à nos fins que nous avons suivi un processus qui a débouché à la mise en place d’un système d’une base de données.
Ce processus a commencé par une étude de l’existant qui nous a permis de mieux appréhender le sujet. C’est cette étude de l’existant qui nous a permis de relever les insuffisances et problèmes que rencontre cette gestion. À la suite de ce constat nous avons proposé des solutions et avons choisi l’une d’entre elles que nous avons trouvé, d’un point de vue coût et résultats attendus meilleure.
Cette solution consistait à développer une plateforme web répondant aux exigences des utilisateurs.
Pour la réalisation nous avons opté pour le langage de modélisation « UML » et l’approche objet.
Nous avons terminé par la mise en place et le déploiement de notre système d’information grâce aux logiciels Mysql et WampServer
57
La Bibliographie
Les Ouvrages
UML2 par la pratique 5è Edition : Pascal Roques, septembre 2006 ;
UML 2 en action De l’analyse des besoins à la conception : Pascal Roques septembre 2005 ;
MySQL 5.0 Triggers : Peter Gulutzan, mai 2008 ;
Les Notes de cours
Cour d’UML 2ème année IAI (2014-2015) : M. WOUAMENO K MIKE ;
Les Sites Web consultés
Anciens mémoires consultés
Gestion automatisée du système de suivi et d’évaluation d’un projet (Agbonon kankoe & Tometsi thiéry 2014-2015).
Gestion Automatisée des Inscriptions et des Études du centre CIFOP (LAWSON-BODY jonathan & NAPPORN omer).
58
Annexes
59
La Table des matièresREMERCIEMENTS..........................................................................................................................2
PREAMBULE....................................................................................................................................3
SOMMAIRE.......................................................................................................................................4
INTRODUCTION GENERALE.......................................................................................................5
PREMIERE PARTIE : PRESENTATION DU CADRE DE STAGE..........................................6
Chapitre 1 : PRESENTATION DU CADRE DU STAGE..........................................................7
Section 1 : historique...................................................................................................................7
Section 2 : Organigramme, Composition Salariale De La Banque........................................7
Section 3 : les produits et services de la BTCI..........................................................................8
A. Les produits...................................................................................................................8
1. Comptes particuliers................................................................................................8
2. Compte personne morale.........................................................................................8
B. Les services de la BTCI................................................................................................9
1. Opération de change.................................................................................................9
2. Les découverts...........................................................................................................9
3. Le Western Union.....................................................................................................9
Chapitre 2 : LES TRAVAUX EFFECTUES..............................................................................10
DEUXIEME PARTIE : « CONCEPTION ET MISE EN PLACE D’UNE BASE DE DONNÉES POUR L’ÉLABORATION D’UNE APPLICATION WEB : CAS DE LA BTCI ».............................................................................................................................................................11
Chapitre 1. Notion de système de gestion de base de données et d’application web..............12
Section 1. Notion de gestion de base de données et d’application web.................................12
A. Notion de base de données.........................................................................................12
B. Notion d’application web...........................................................................................12
Chapitre 2. Approche de solution et Choix approprié aux besoins de la banque...................13
Section 1. Approche de solution...............................................................................................13
A. Spécificité des exigences de la banque......................................................................13
1. Spécifications fonctionnelles..................................................................................13
2. Spécifications de sécurité.......................................................................................13
B. Proposition de solution...............................................................................................13
1. Première solution....................................................................................................13
2. Deuxième solution...................................................................................................14
3. Troisième solution...................................................................................................15
Section 2. Choix approprié aux besoins de la banque...........................................................15
60
A. Étude de la solution retenue......................................................................................15
Chapitre 3. Évaluation financière de la solution........................................................................16
A. Coût matériel..............................................................................................................16
B. Coût humain...............................................................................................................17
C. Coûts totaux................................................................................................................17
Chapitre 4. Présentation des méthodes d’analyses et outils de modélisation..........................18
Section 1. Présentation des méthodes d’analyses...................................................................18
A. Justification de l’approche objet...............................................................................18
B. Présentation du langage UML...................................................................................18
Section 2. Présentation de l’outil de modélisation..................................................................19
Chapitre 5 : Modélisation du système a partir des diagrammes..............................................20
Section 1. Diagrammes de cas d’utilisation............................................................................20
A. Acteurs.........................................................................................................................20
B. Les cas d’utilisation identifiés...................................................................................20
1. Les diagrammes de cas d’utilisations....................................................................22
2. Description textuelle des cas d’utilisation.............................................................27
3. Modélisation de la structure dynamique du système..........................................38
Chapitre 6. Les Outils de développement et déploiement.........................................................58
Section 1. Outils de Développement.......................................................................................58
A. Généralités...............................................................................................................58
B. Fonctionnalités et avantages..................................................................................58
Section 2. Outils de déploiement..............................................................................................58
A. Généralités...............................................................................................................58
B. Fonctionnalités et avantages..................................................................................59
Chapitre 7. Mise en place de la base de données et sécurité.....................................................59
Section 1. Mise en place de la base de données.......................................................................59
A. Création de la base de donnée...................................................................................59
B. Sauvegarde de la base de donnée..............................................................................59
C. Déploiement de l’application.....................................................................................60
Section 2. Sécurité de l’application..........................................................................................60
A. Sécurité de la plateforme WEB.................................................................................60
B. Sécurité de la base de données...................................................................................61
Conclusion Générale........................................................................................................................62
La Bibliographie...............................................................................................................................63
Annexes..............................................................................................................................................64
61
La Table des matières......................................................................................................................65
62
63
64