WOW !! MUCH LOVE ! SO WORLD PEACE !
Fond bitcoin pour l'amélioration du site: 1memzGeKS7CB3ECNkzSn2qHwxU6NZoJ8o
  Dogecoin (tips/pourboires): DCLoo9Dd4qECqpMLurdgGnaoqbftj16Nvp


Home | Publier un mémoire | Une page au hasard

 > 

Conception d'une application de gestion des formations


par Christian SASANDE MWINA
Intitut supérieur de statistique - Licence 2018
  

Disponible en mode multipage

Bitcoin is a swarm of cyber hornets serving the goddess of wisdom, feeding on the fire of truth, exponentially growing ever smarter, faster, and stronger behind a wall of encrypted energy

Page 1 sur 68

INTRODUCTION GENERALE

I. GENERALITES

Tenant compte de l'évolution de la technologie dans ce siècle présent l'informatique reste un outil indispensable aujourd'hui. Prétendre ne pas connaitre l'informatique serait équivalent à l'analphabétisme pour pallier à d'énormes difficultés surgissant dans le retour socioéconomique causées par l'utilisation du système de gestion manuelle devenue archaïque, il nous semble donc de prendre de prendre de précaution pour arriver à l'apprivoiser et par conséquent ne pas trouver en déphase avec son évolution normale, car nous ne sommes plus dans le siècle manuel.

En outre au-delà de l'utilisation individuelle de l'information, c'est surtout la mise en communication des ordinateurs, qui a permis de révolutionner les méthodes de ce travail, ainsi on a assisté à l'émergence des réseaux entre autre l'internet, ainsi cette dernière offre à ces utilisateurs une très grande variété de service entre autre le courrier, le transfert de fichier et la communication à distance. De tous les services de l'internet, la toile mondiale le Wold Wide Web (ou simplement web) est le moyen de

communication le plus convivial. Ce service ajouté à internet des
documents riches appelé page web contenant des textes formatés, des images et multimédia (du son, des images, de la vidéo etc....) et qui assure ainsi un certain sucée a internet. Ce dernier devient un moyen de communication incontournable qui fait partie de la vie quotidienne.

Ces nouveau progrès et phénomène d'interaction qui offre aux utilisateurs des possibilités considérables et leur permet d'améliorer et même indispensable pour le fonctionnement de bon nombre d'entreprise à travers le monde. C'est ainsi qu'il va permettre à l'Institut National de Préparation Professionnelle de bien fonctionner et de bien gérer ses différentes opérations.

Au regard de tout cela, il est indispensable de constater que la science informatique tient une partie prépondérante dans la vie actuelle. Ce pourquoi chaque organisation qui se veut moderne, cherche à informatiser ses opérations. C'est ainsi qu'il est nécessaire de recourir à cette science pour permettre aux gestionnaires de formation du service de département d'informatique de l'Institut National de Préparation Professionnelle d'arriver à mieux gère le processus y afférent. C'est dans ce cadre que nous nous sommes attelé à mener cette étude intitulée <<Conception d'un Système d'information de gestion de formation >>

Page 2 sur 68

II. CHOIX ET INTERET DU SUJET

A. CHOIX DU SUJET

Le choix de ce sujet comme thème de notre n'est pas un hasard, il se justifie par le fait que :

Tout est partie lors de notre stage au sein de cet institut et d'une observation direct lors des inscriptions, enregistrements des candidats et le paiement de frais exiger ainsi nous étions poussées par le gout de vouloir améliorer le processus d'inscription et de paiement de frais des nouveaux et anciens candidats à l'Institut National de Préparation Professionnelle.

En effet le nombre de sollicitation des candidats et société au sein de ladite institution étant élève et les problèmes auxquels cette est dernière est butée en matière de demande de formation (inscription) étant divers, il s'en suite une gestion complexe. C'est dans cette optique que nous nous sommes proposé de mener une étude sur ce sujet dans le seul objectif de pouvoir informatiser et facilité d'avantage le travail.

B. INTERET DU SUJET

Marcous BINDUNGWA. I définit l'intérêt comme un avantage qu'on peut tirer de l'étude réalisé il se manifeste plus clairement à la fin comme résultats1, alors l'intérêt de notre sujet se situé à trois niveaux notamment :

? Intérêt personnel

Ce travail a donnée l'occasion non seulement d'emmètre nos idées pour que le monde scientifique et les autres puis nous lire mais aussi d'éveiller notre conscience et mettre en pratique toute nos connaissances apprise tout au long de notre parcours académique qui seras une preuve de maturité et sanction notre formation de deuxième licence.

? Intérêt scientifique

Notre travail se veut être une source d'information ou de connaissance de la communauté scientifique sur la manière de la gestion de la formation donc de la demande de la formation, il permettra aux autres chercher d'en faire

1 Marcous BINDUNGWA.I <<comment élaborer un travail de fin de cycle>> Ed.kin 2007

Page 3 sur 68

un répertoire de suggestion dont l'appréciation par ces derniers pourra faire
naitre en eux des idées nouvelles dans les sens de le compléter et d'améliorer.

? Intérêt social

L'intérêt social de ce travail résultat en ce que l'INPP /Lubumbashi utilise un logiciel approprier afin de surmonter les difficultés qui se pose lors du début, et après la formation et à la gestion manuelle, la perte de temps dans l'exécution des travaux lourd et répétitive afin de bien faire la gestion des agents et étudiants en formation.

III. ETAT DE LA QUESTION

Dans la pratique, il est courant que plusieurs chercheurs abordent un même thème. Toutefois pour des raisons de spécifié chacun d'eux s'intéresse à un aspect particulier du dit thème de sorte que la répartition inutile soit évitée. De cette façon, chaque chercheur apporte sa brique pour participer à la construction de compensions du thème.

En effet, pour faire progresser les connaissances dans un domaine, il est essentiel de bien connaitre ce domaine de manière à lier étroitement ses propres résultats avec ceux déjà acquis sur le sujet étudié ; Il est évident qu'avait nous d'autres chercheurs ont d'une manier ou d'une autre à réfléchir et à écrire sur certaine point semblable à notre objet d'étude. Dans cette perceptive qu'il nous est nécessaire de faire un bref parcours de quelque travaux de prédécesseurs qui nous ont précède dans ce domaine je site :

? HAMMIOUI AYMANE KHALDI MOHAMMED a travaillé sur l'Application Web pour La Gestion Des Stagiaires dans un centre de formation de création de sites et des applications web, cas de la société marocaine Maroc Pro, après avoir analysé le système existant, l'auteur a soulevé un certain nombre de difficultés que rencontre les fonctionnaires de la société dans la gestion de stagiaires, parmi lesquelles nous citons :

I La tâche de recherche du dossier d'un stagiaire

est très lourde à faire lorsque le nombre des stagiaires est important ;

I L'accès aux informations des stagiaires est difficile

vu qu'il faut à chaque fois chercher leurs dossiers ;

I La secrétaire doit organiser manuellement les

documents et les dossiers des stagiaires et des stages ;

Page 4 sur 68

1 Le classement des dossiers et très compliqué (par

nom du stagiaire/par durée de stage ...).

Afin de pallier aux problèmes observés et faciliter la tâche de la Gestion des

stagiaires, ce dernier a proposé une solution informatisée avec plusieurs fonctionnalités. Cette solution était de développer une application web dynamique qui doit être exploitée d'une manière facile et efficace et

qui a
comme principal objectif, la gestion des stagiaires.2

> ED-DAHMOUNI Bouthayna a travaillé sur Conception et réalisation d'une application pour la gestion des stagiaires, cas du Centre Hospitalier Universitaire Hassan II. Après avoir analysé le système existant, l'auteur a soulevé un certain nombre de difficultés que rencontrent les

fonctionnaires du centre dans la gestion de stagiaires, parmi lesquelles nous citons :

+ La lenteur dans le traitement de demande de stage ;

+ La perte d'informations sur les demandes de stages ;

+ Le manque de traçabilité et de suivi du déroulement de stage.

En effet, pour faire face à tous ces aléas, l'auteur précité a proposé de concevoir une application web de Gestion des Stagiaires au sein cette entreprise et l'application conçue, a permis entre autre :

+ Aux étudiants de poster et suivre en ligne les demandes de stages, voir l'état de matières via un carnet de stage électronique ;

+ A l'entreprise, de mieux gérer ce plus à son personnel ;

+ Aux institutions, de suivre de près la continuité de la formation de leurs étudiants.3

1 NGOIE MUKUNA Franck a travaillé sur la mise en place d'un système décisionnel dédié à la gestion des stagiaires dans une grande entreprise, « cas de la Gécamines » ; ce travail traitait de la modélisation conceptuelle et de la manipulation des données dans le système

2 HAMMIOUI AYMANE KHALDI MOHAMMED, « Application Web pour La Gestion Des Stagiaires dans un centre de formation de création de sites et des applications web », Projet de fin d'études, L2 Génie Informatique, 2015-2016.

3 ED-DAHMOUNI Bouthayna « Conception et réalisation d'une application pour la gestion des stagiaires», Projet de Fin d'Etudes

Licence Sciences et Techniques Génie informatique, 2012-2013

Page 5 sur 68

d'aide à la décision. En effet, après avoir observé le système

d'information en place précisément du bureau de stage et mener un entretien avec quelques-uns de ses agents, l'auteur a eu à constater les difficultés ci-dessous en rapport avec la Gestion des stagiaires :

? Difficulté de gérer une grande demande de stage qui

dépasse le nombre limité dans les services ;

? Difficulté de ranger les recommandations de demande de stage selon les institutions supérieures ou universitaires ; ? Perte d'informations sur les demandes de stage ;

Par rapport à ces trois travaux de recherche, notre réflexion va se démarquer dans le développement d'une conception d'un système d'information de gestion de formation. Ainsi nous proposons de mettre en place un système qui permet la gestion d'inscription et de paiement de frais exige en ligne moyennant un compte bancaire, ainsi que la publication des résultats de formation poursuivi et mettre en place une base de donne qui permettra la conservation de document essentielle de ladite institution.

IV. PROBLEMATIQUE ET HYPOTHESE

a. PROBLEMATIQUE

La problématique est l'art d'élaborer et de penser ou de poser clairement les problèmes et aussi de les comprendre en suivant leur transformation dans la réflexion scientifique ou philosophique.4

Elle s'est définit encore comme un ensemble des questions qu'une science ou philosophie peut valablement poser en fonction de ses moyens, de son étude et de ses points de vue.5

Par contre, d'autre la définit comme une dissertation scientifique qui est un jeu des questions liées entre-elles, et tirées du sujet lui-même, aux quelles le développement va progressivement répondre.6

En effet l'institut national de préparation professionnelle n'étant pas épargné dans son fonctionnement, la gestion de certaines tâches et opération est encore manuelle et de fois avec de traitement informatique limite, ce qui donne lieu à l'apparition de nombre problème à savoir :

4 Paul ANGEL, Grand Encyclopédie Larousse, Ed. Librairie Paris, Tome II, p.192

5 Petit Larousse illustré, 1987, p.816

6 Vignoles PATRICK, Cité par MPALA MBABULA, dans pour vous chercher, directive pour rédiger un travail scientifique, Lubumbashi, Ed. Mpala, 2001, p. 36-37

Page 6 sur 68

? La perte de temps lors des enregistrements de demande de la formation des nouveaux candidats et lors du paiement ainsi que lors des partages des informations en poste du travail ;

? L'impossibilité de s'inscrire pour certains candidats souvent dans de difficulté de se déplace jusqu'au bureau administrative et d'avoir des informations importantes de l'institution ;

? La gestion manuelle des documents de candidats en formation et la politique de leurs stockages avec risque de se perdre ou détruits par le vol, les intempéries, ou incendies.

Au regard de tous les problèmes traitement de l'information évoque ci haut nous sommes parvenu à nous poser plusieurs question principale qui sera l'objet de notre étude. La question est :

? Comment améliorer le processus de demande de formation (d'inscription) et le stockage (conservation) des informations importantes des anciens et nouveau candidats désirant poursuivre la formation au sein de l'INPP /Lubumbashi afin de pallier aux différents problèmes des gestions ?

b. HYPOTHESE

En d'autre terme, elle est une proposition relative à l'explication des phénomènes naturels, admise provisoirement avant d'être soumise au contrôle de l'expérience.7

Une hypothèse est une proposition relative à une explication

admise

provisoirement avant d'être confirmée ou infirmée.8

Etant donné que la problématique a déjà été posée il est important d'y assimiler quelque réponse provisoire lesquelles sera confirmé à la fin. C'est ainsi en se référent à la problématique qui précède notre travail est une réponse sur certaines hypothèses susceptible d'être vérifié au terme de notre recherche notamment :

L'institut national de préparation professionnelle n'ayant pas une architecture, nous proposons de concevoir une architecture pour leur permettre de publier toute les informations nécessaire (horaire, résultats, de nouveau programme etc....) ;

Une application accessible en ligne et une base de données offre des meilleures techniques de stockage et d'accès non aise à ce dernier.

7 KANKU M. Cours de MRS, g3 -2011-2012

8 MERLIN P, Tourisme et aménagement touristique documentation, Paris 2001, P 75

Page 7 sur 68

V. METHODES ET TECHNIQUES DE LA RECHERCHE

1. METHODES

La méthode désigne l'ensemble des canons guidant ou devant guider le processus de production des connaissances scientifiques, de raisonnements, ou des calculs théoriques.9 Le dictionnaire universel définit la méthode comme étant un ensemble des procédés et des moyens utilisés pour arriver à un résultat10.

Dans le cadre de notre travail, étant donné que nous faisons une étude sur le système d'information en rapport avec la gestion de formation, nous avons fait le choix sur la méthode systémique ou l'approche systémique ou encore la systémique car cette dernière permet de décrire et comprendre le fonctionnement des systèmes ou des sous-systèmes, quels qu'ils soient. Une des premières réflexions sur le concept de systèmes fut conduite par BERTALANFFY le biologiste dès les années 1920, l'approche systémique a essentiellement pour origine la rencontre, dans les années 1940, entre la biologie et l'électronique qui s'est traduite par la naissance de la cybernétique ou étude des régularités chez les êtres vivants et les machines avec idées de boucles, de rétroactions, de régulations.11

En effet, la systémique est une approche globale qui nous invite à prendre de la hauteur pour observer les relations entre les éléments sans s'attarder sur les éléments eux-mêmes. L'approche systémique permet de travailler sur le réel, car le réel est complexe et fait système. Dans le réel, comme dans tout système, tous les éléments sont en interaction. L'action sur un élément a des répercussions sur l'ensemble du système, et tout changement global du système change à la fois tous les éléments qui le constituent et les relations entre ces éléments.12

D'après Le M'oigne (1977), la systémique se déploie selon quatre volets dont les buts seraient de :

9 http://fr.wikipedia.org/wiki/méthode scientifique, 01/03/2018 22h:30 10Dictionnaire universel, 2eme éd. Paris Aupelf-Edicelf 1988

11 L. VON BERTALANFFY, «théorie générale des systèmes» Dunod, Paris 1991(1ère Edition Bordas, Paris 1973).

12 Joël de Rosnay, « Le Macroscope », Ed du Seuil 1977 et Jacques Lapointe, Université LAVAL 1998.

Page 8 sur 68

« Développer la théorie explicative de l'univers considéré comme

système ;

Modéliser la complexité ;

Rechercher les concepts, lois et modèles de même forme

pouvant s'appliquer à différents ensembles ;

Conceptualiser des artefacts ou outils ».

Pour Henry Roux de Bezieux, l'approche systémique s'appuie sur son propre cycle : Model-Scénarise-Act, c'est-à-dire modéliser, scénariser, agir. Sa particularité, c'est l'étape de modélisation qui permet de construire des points de repère pour naviguer la situation au mieux.13

L'opinion de Le M'oigne et celle de Henry Roux, se rejoignent en un point commun qui est celui de la modélisation, et c'est la modélisation qui va plus nous intéresser par le fait qu'elle est la partie qui nous conduirait à la conception du nouveau sous-système d'information à instaurer pour la gestion du processus de la formation au sein de l'INPP de Lubumbashi.

Ainsi donc, pour arriver à modéliser le système ou le métier, nous nous servons de l'outil de modélisation et ici l'outil utilisé est UP (Unified Process) en français « Processus Unifiés » qui est un processus de développement logiciel construit sur UML ; il est itératif et incrémental, centré sur l'architecture, conduit par les cas d'utilisation et piloté par les risques. La gestion d'un tel processus est, organisée d'après les 4 phases qui sont : pré étude (insertion), élaboration, construction et transition. Ses activités de développement sont définies par 6 disciplines fondamentales qui décrivent la modélisation métier, la capture des besoins, l'analyse et la conception, l'implémentation, le test et le déploiement. Etant donné qu'il existe plusieurs types d'UP, nous avons opté pour 2TUP (2 Track Unified Process). Le processus 2TUP apporte une réponse aux contraintes de changement continuel imposées aux systèmes d'information de l'entreprise. En ce sens, il renforce le contrôle sur les capacités d'évolution et de correction de tels systèmes. « 2 Track » signifient littéralement que le processus suit deux chemins. Il s'agit des chemins« fonctionnels » et « d'architecture technique », qui correspondent aux deux axes de changement imposés au système informatique.14

13 Henry Roux de Bezieux, « Présentation des outils systémiques à partir du récit d'un projet en Préfecture », Mais 2004.

14 P. Roques. - UML 2 en action. N°12014, 4e édition Eyrolles 2006, page 13.

Page 9 sur 68

Lorsqu'on utilise UP comme outil de modélisation, on a le choix quant au langage ou support à utiliser pour schématiser la modélisation du processus métier, d'où UML (Unified Modeling Language) entre en jeu. UML se définit comme 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. Aujourd'hui, le standard industriel de modélisation objet est UML.15

La problématique que pose la mise en oeuvre d'UML est simple : Comment passer de l'expression des besoins au déploiement du système informatique ? Nous avons travaillé avec la version UML 2.

Malgré le choix d'UML, il y a aussi un autre langage mieux approprié pour le processus métier, c'est le BPMN (Business Process Management) en français Gestionnaire de Processus Métier.

2. TECHNIQUES DE LA RECHERCHE

La technique est un procédé opératoire rigoureux et bien défini

utilisé pour collecter les données dans un domaine bien précis16.

Selon Chevalier J., la technique est définie comme un outil de la recherche impliquant les procédés de collecter les données adaptées à la fois à l'objet. 17

Dans le cadre de notre travail, nous avons utilisé les techniques

suivantes :

Technique de documentaire

Est une technique qui met les chercheurs à collecter l'information nécessaires trouvant dans les différents documents utiles à notre recherche.

Technique d'observation directe

Cette technique nous a permis d'entrer en contact avec le système existant afin de mieux comprendre l'opération et les transactions des informations.

Technique d'interview

15 P. Roques IDEM.

16Dictionnaire universel, 2eme éd. Paris Aupelf-Edicelf 1988

17 Chevalier J., « organisation, administration des entreprises », Dunod Paris, page 18

Page 10 sur 68

Cette technique nous a permis de faire un entretien verbal avec les agents du bureau de section chargé de recherche afin de d'obtenir les informations nécessaires à la réalisation de notre étude.

VI. DELIMITATION DE SUJET

Il est évident que tout travail scientifique doit être circonscrit au point de départ au d'arrêt de manière à être claire et bien précis nous allons restreindre notre sujet pour éviter dans un champ très vaste.

La délimitation d'une étude révèle la délimitation de son champ d'investigation, notre étude a comme champ d'investigation l'INPP/Lubumbashi et pour plus de précision au service informatique.

VII. SUBDIVISION DU TRAVAIL

Hormis l'introduction générale ainsi que de la conclusion générale, le présent travail est constitué de quatre chapitres qui sont :

CHAPITRE PREMIER : DEFINITION DES CONCEPTS ET CONSIDERATIONS THEORIQUES. Cette partie a abordé la définition de tous concepts de base d'une part et d'autres parts le cadre théorique en ce qui est de la science informatique ;

CHAPITRE DEUXIEME : ETUDE DE L'EXISTANT. Ici il est question de présenter l'organisation qui fait l'objet de l'étude, son système d'information existant.

CHAPITRE TROISIEME : CONCEPTION DU SYSTEME INFORMATIQUE, ce chapitre consiste à l'exploitation et l'utilisation des méthodes et techniques préalablement définies pour concevoir le nouveau système.

CHAPITRE QUATRIEME : REALISATION ET IMPLEMENTATION DE LA SOLUTION RETENUE. Dans ce chapitre, nous y présentons la solution obtenue sous forme d'une configuration matérielle et logicielle en tenant compte de l'environnement.

CHAPITRE I : DEFINITION DES CONCEPTS ET

CONSIDERATIONS THEORIQUES

1. Introduction

Page 11 sur 68

Ce chapitre donne les définitions des concepts de bases liées aux termes utilisés dans notre travail. Il s'agira des concepts opérationnels en rapport avec thématique qui porte sur la conception et réalisation d'un système de gestion de la formation, nous définissons s aussi les concepts du domaine informatique pour permettre un bon entendement par nos lecteurs.

2. Cadre conceptuel

Un concept est une représentation générale abstraite d'un ensemble d'objets et il est définit selon sa compréhension et selon son extension. Sur ce point, nous allons définir les mots clés du sujet invoquant tout de même les concepts liés au domaine d'étude et quelque concept informatique qui serons utilisés tout au long de notre travail.

2.1. Définitions de concept du domaine d'étude

Dans cette partie nous allons définir les concepts du domaine d'étude qui sont :

t. Conception : La conception permet d'acquérir une compréhension approfondie des contraintes liées au langage de programmation, à l'utilisation des composants et au système d'exploitation. La conception est une façon de concevoir, de comprendre, d'imaginer ou de prévoir quelque chose.18

t. Demande : C'est le fait de demander, d'exprimer ce que l'on désire savoir, posséder c'est une requête, une action de sollicite quelque chose. Pour ce cas une demande d'inscription est encours de traitement.

t. Formation : un processus d'apprentissage qui permet à un individu d'acquérir le savoir et le savoir-faire nécessaire à l'exercice d'un métier ou d'une activité.

2.2. Définition de concepts de l'informatique

t. Application : est un programme informatique utilisant de fonctionnalité

d'une certaine plate.

18 Petit Larousse illustre, les éditions françaises 1999, p.258

Page 12 sur 68

L'informatique de gestion : L'informatique de gestion est l'ensemble des connaissances, des technologies, et des outils en rapport avec la gestion de données, c'est-à-dire la collecte, la vérification et l'organisation de grandes quantités d'informations. L'informatique de gestion a de nombreuses applications pratiques dans les entreprises : listes de clients, de fournisseurs, de produits, comptabilité, etc.

En informatique de gestion, les informations sont souvent placées dans des bases de données et traitées par l'intermédiaire de logiciels spécialisés que sont les Systèmes de gestion de base de données.19

? UML : UML se définit comme 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.

? Système de gestion de base de données : En informatique un système de gestion de base de données (abr. SGBD) est un logiciel système destiné à stocker et à partager des informations dans une base de données, en garantissant la qualité, la constance et la confidentialité des informations, tout en cachant la complexité des opérations.

Un SGBD (en anglais DBMS pour data base management system) permet d'inscrire, de retrouver, de modifier, de trier, de transformer ou d'imprimer les informations de la base de données. Il permet d'effectuer des comptes rendus des informations enregistrées et comporte des mécanismes pour assurer la cohérence des informations, éviter des pertes d'informations due à des pannes, assurer la confidentialité et permettre son utilisation par d'autres logiciels1. Selon le modèle, le SGBD peut comporter une simple interface graphique jusqu'à des langages de programmation sophistiqués.

Les systèmes de gestion de base de données sont des logiciels universels, indépendants de l'usage qui est fait des bases de données. Ils sont utilisés pour de nombreuses applications informatiques, notamment ; les guichets automatique bancaires. Il existe de nombreux systèmes de gestion de base de données. En 2008, Oracle détenait près de la moitié du marché des SGBD avec MySQL et Oracle Data base. Vient ensuite IBM avec près de 20 %, laissant peu de place pour les autres acteurs3.

Les SGBD sont souvent utilisés par d'autres logiciels ainsi que les administrateurs ou les développeurs. Ils peuvent être sous forme

19 http://fr.wikipedia.org/wiki/Informatique de gestion

Page 13 sur 68

de composant logiciel, de serveur, de logiciel applicatif ou d'environnement de programmation.

? CONCEPTION

Afin de résoudre un problème, mieux vaut théoriquement commencer par mieux le comprendre puis trouver une solution. On a longtemps considéré préférable de créer un logiciel en commençant par une étape appelé conception durant laquelle on décrit le problème et le mode de résolution adopté. Dans la pratique c'est souvent la dernière étape, après le codage, le débogage, et les tests finals.

3. CONSIDERATION THEORIQUE

Dans cette partir nous parlerons de la méthode ou démarche utilisée et du langage de modélisation ainsi que l'applicabilité de cette méthode dans ce travail.

3.1. La méthode systémique ou l'approche systémique

a. Présentation de la méthode systémique

L'approche systémique intéresse toute personne voulant entrer au centre des organisations. En effet, deux visons prévalent dans l'approche des organisations, celle qui les analyse comme des systèmes et celle qui les considère comme des entités sociales. Dans les deux cas, l'approche systémique s'avère nécessaire pour appréhender la complexité organisationnelle. Comme le dit Dominique Génelot (1992), la systémique marque le passage de la science absolue (S.A.) à la science à rationalité limitée. C'est le passage d'une science marquée par le cartésianisme, qui consiste à tenter de réduire la complexité à ses éléments constitutifs, à une science qui cherche à appréhender de nouveaux concepts comme le système, l'interaction, la rétroaction, la régulation, l'organisation, la finalité, la vision globale, l'évolution, etc. La systémique est donc une nouvelle façon de voir la réalité du monde, en s'efforçant de prendre en compte ses caractéristiques précédemment ignorées comme l'instabilité, l'ouverture, la fluctuation, le chaos, le dé- sourdre, le flou, la créativité, la contradiction, l'ambiguïté, le paradoxe, qui sont l'apanage de la complexité (Donnadieu et Karsky (2002)). L'objet de l'approche systémique est d'élaborer un système de représentation qui permet d'appréhender les situations complexes de façon appropriée. Cela passe par la compréhension des systèmes, champ d'application privilégié de la complexité.

? Système : Nous ne pouvons pas définir un système d'information et un système informatique sans avoir décrire le mot « système ». Le mot système est défini comme un ensemble d'éléments en interaction dynamique organisés en

Page 14 sur 68

fonction d'un but. Un système est toujours doté d'une structure, d'un ensemble d'information ou d'activités afin d'atteindre un but et il évolue dans un environnement.20

? Système d'information : Un système d'information peut être défini comme la partie du réel constituée d'informations organisées et d'acteurs qui agissent sur ces informations ou à partir de ces informations, selon des processus visant une finalité de gestion et utilisant les technologies de l'information.21 Le système d'information (SI) est un ensemble organisé de ressources qui permet de collecter, stocker, traiter et distribuer de l'information, en général grâce à un ordinateur. Il s'agit d'un système sociotechnique composé de deux sous-systèmes, l'un social et l'autre technique.

? Système d'informatique : Un système informatique est un ensemble organisé d'objets techniques - matériels, logiciels, applicatifs qui représentent

l'infrastructure d'un système d'information.22 Partant de la définition de
système d'information et du système informatique et information nous allons définir les concepts liés notre domaine d'étude.

b. Processus de développement du logiciel

Un processus définit une séquence d'étapes, partiellement ordonnées, qui concourent à l'obtention d'un système logiciel ou à l'évolution d'un système existant. L'objet d'un processus de développement est de produire des logiciels de qualité qui répondirent aux besoins de leurs utilisateurs dans des temps et des couts prévisibles.23

Plus simplement, un processus doit permettre de répondre à la question fondamentale : « Qui fait quoi et quand ». Le processus unifié UP est un processus de développement logiciel interactif, centré sur l'architecture, piloté par des cas d'utilisations et orienté vers la diminution des risques.

c. Démarche UP

Le processus unifié (UP, en anglais pour Unifie Process) Un processus unifié est un processus de développement logiciel construit sur UML; il est itératif et incrémental, centré sur l'architecture, conduit par les cas

20 MULLER P.A, Modélisation objet avec UML, Edition, Eyrolless p 85

21 Jacques MUNDA Cours de QS de CONCEPTION DE SYSTEME D'INFORMATION, ISS L'shi, 2012, inédit. p3

22 Petit Larousse illustre, les éditions françaises 1999, p.250

23 Pascal.R et Franck V, UML en action : de l'analyse des besoins a la conception en java éd, Eyrolles 2003, p3

Page 15 sur 68

d'utilisation et piloté par les risques. La gestion d'un tel processus est organisé d'après les 4 phases suivantes : pré étude (inception), élaboration, construction et transition. Ses activités de développement sont définies par 6 disciplines fondamentales qui décrivent la modélisation métier, la capture des besoins, l'analyse et la conception, l'implémentation, le test et le déploiement. Le processus unifié doit donc être compris comme une trame commune des meilleures pratiques de développement, et non comme l'ultime tentative d'élaborer un processus universel. La définition d'un processus UP est donc constituée de plusieurs disciplines d'activité de production et de contrôle de cette production. Tout processus UP répond aux caractéristiques ci-après.
· Il est itératif et incrémental.

d. PROCESSUS 2TUP

2TUP signifie « 2 Track Unified Process ». C'est un processus UP qui répond aux caractéristiques que nous venons de citer. Le processus 2TUP apporte une réponse aux contraintes de changement continuel imposées aux systèmes d'information de l'entreprise. En ce sens, il renforce le contrôle sur les capacités d'évolution et de correction de tels systèmes. « 2 Track » signifient littéralement que le processus suit deux chemins. Il s'agit des chemins « fonctionnels » et « d'architecture technique », qui correspondent aux deux axes de changement imposés au système informatique. L'axiome fondateur du 2TUP consiste à constater que toute évolution imposée au système d'information peut se décomposer et se traiter parallèlement.

L'opinion de Le M'oigne et celle de Henry Roux, se rejoignent en un point commun qui est celui de la modélisation, et c'est la modélisation qui va plus nous intéresser par le fait qu'elle est la partie qui nous conduirait à la conception du nouveau sous-système d'information à instaurer pour la gestion du processus de la formation au sein de l'INPP de Lubumbashi.

Ainsi donc, pour arriver à modéliser le système ou le métier, nous nous servons de l'outil de modélisation et ici l'outil utilisé est UP (Unified Process) en français « Processus Unifiés » qui est un processus de développement logiciel construit sur UML ; il est itératif et incrémental, centré sur l'architecture, conduit par les cas d'utilisation et piloté par les risques. La gestion d'un tel processus est, organisée d'après les 4 phases qui sont : pré étude (insertion), élaboration, construction et transition. Ses activités de développement sont définies par 6 disciplines fondamentales qui décrivent la modélisation métier, la capture des besoins, l'analyse et la conception, l'implémentation, le test et le déploiement. Etant donné qu'il existe plusieurs types d'UP, nous avons opté pour 2TUP (2 Track Unified Process). Le processus 2TUP apporte une réponse aux contraintes de changement continuel imposées aux systèmes d'information de l'entreprise. En ce sens, il renforce le contrôle sur les capacités

Page 16 sur 68

d'évolution et de correction de tels systèmes. « 2 Track » signifient littéralement que le processus suit deux chemins. Il s'agit des chemins« fonctionnels » et « d'architecture technique », qui correspondent aux deux axes de changement imposés au système informatique.24

Lorsqu'on utilise UP comme outil de modélisation, on a le choix quant au langage ou support à utiliser pour schématiser la modélisation du processus métier, d'où UML (Unified Modeling Language) entre en jeu. UML se définit comme 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. Aujourd'hui, le standard industriel de modélisation objet est UML.25

La problématique que pose la mise en oeuvre d'UML est simple : Comment passer de l'expression des besoins au déploiement du système informatique ? Nous avons travaillé avec la version UML 2. Malgré le choix d'UML, il y a aussi un autre langage mieux approprié pour le processus métier, c'est le BPMN (Business Process Management) en français Gestionnaire de Processus Métier.

2TUP est itératif

Une itération est une séquence distincte d'activités avec un plan de base et des critères d'évaluation, qui produit un release (interne ou externe). Le contenu d'une itération est porteur d'améliorations ou d'évolutions du système et il peut être évalué par les utilisateurs.

2TUP est centré sur l'architecture

Les modèles définit tout au long du processus de développement vont contribuer à établir une architecture cohérente et solide.

2TUP est piloté par les cas d'utilisateur d'UML

Comme nous l'avons souligné précédemment, un bon nombre de risques proviennent de la non-adéquation technique et fonctionnelle du système aux besoins des utilisateurs. Les exigences des utilisateurs sont donc

24 P. Roques. - UML 2 en action. N°12014, 4e édition Eyrolles 2006, page 13.

25 P. Roques IDEM.

Page 17 sur 68

prioritairement traitées dans les deux branches du processus en Y en considérant deux types d'acteurs différents du système informatique : l'utilisateur consommateur des fonctions du système, qui correspond généralement à un poste, un rôle ou un métier dans l'entreprise. Il convient dans ce cadre de se focaliser sur la plus-value que lui apporte le système dans l'exercice de sa profession ; l'utilisateur exploitant le système, qui correspond plutôt à un rôle technique et opérationnel commun à la plupart des systèmes informatiques. Dans le domaine client/serveur, les utilisateurs, considérés au sens large, attendent des performances, une tenue à la charge, une sécurité d'accès, etc. L'axe technique permet également d'introduire le point de vue des exploitants et des administrateurs souvent oubliés dans la livraison finale d'un produit.

pilotée par les risques : en définissant des priorités pour chaque fonctionnalité, on peut minimiser les risques d'échec du projet.

La gestion d'un tel processus est organisée d'après les 4 phases suivantes :

1. Pré étude(Inception) : c'est ici qu'on évalue la valeur ajoutée du développement et la capacité technique à le réaliser (étude de faisabilité).

2. Elaboration : sert à confirmer l'adéquation du système aux besoins des utilisateurs et à livrer l'architecture de base.

3. Construction : sert à livrer progressivement toutes les fonctions du système.

4. Transition : déployer le système sur des sites opérationnels. Chaque phase est elle-même décomposée séquentiellement en itérations limitées dans le temps (entre 2 et 4 semaines). Le résultat de chacune d'elles est un système testé, intégré et exécutable. L'approche itérative est fondée sur la croissance et l'affinement successifs d'un système par le biais d'itérations multiples. Le système croît avec le temps de façon incrémentale, itération par itération, et c'est pourquoi cette méthode porte également le nom de développement itératif et incrémental. Il s'agit là du principe le plus important du Processus Unifié. Ces activités de développement sont définies par 6 disciplines fondamentales qui décrivent la capture des besoins, la modélisation métier, l'analyse et la conception, l'implémentation, le test et le déploiement. Notons que ces différentes étapes (ou disciplines) peuvent se dérouler à travers plusieurs phases. Le processus unifié doit donc être compris comme une trame commune des meilleures pratiques de développement. On dit de la méthode UP qu'elle est générique c.à.d. qu'elle définit un certain nombre de critères de développement, que chaque société peut par la suite personnaliser afin de créer son propre processus plus adapté à ses besoins. C'est dans ce cadre que la société Valtech a crée la méthode 2TUP.2TUP signifie «2 Track Unified Process» .C'est un processus qui répond aux caractéristiques du Processus Unifié. Le processus 2TUP apporte une réponse aux contraintes de changement continuel imposées aux systèmes d'information de l'entreprise. En ce sens, il renforce le contrôle sur les capacités d'évolution et de correction de tels systèmes. « 2 Track» signifient littéralement que le processus suit deux chemins. Il s'agit des « chemins

Page 18 sur 68

fonctionnels » et « d'architecture technique », qui correspondent aux deux axes de changement imposés au système d'information.

3.1. L'architecture bidirectionnelle

UP gère le processus de développement par deux axes.

? L'axe vertical représente les principaux enchaînements d'activités, qui regroupent les activités selon leur nature. Cette dimension rend compte l'aspect statique du processus qui s'exprime en termes de composants, de processus, d'activités, d'enchaînements, d'artefacts et de travailleurs.

? L'axe horizontal représente le temps et montre le déroulement du cycle de vie du processus; cette dimension rend compte de l'aspect dynamique du processus qui s'exprime en terme de cycles, des phases, d'itérations et de jalons.

UP répète un certain nombre de fois une série de cycle qui s'articule autour

de 4 phases

> Analyse des besoins

> Élaboration

> Construction

> Transition

Pour mener efficacement un tel cycle, les développeurs ont besoins de

toutes les représentations du produit logiciel :

? Un modèle de cas d'utilisation expose les cas d'utilisation et leurs relations

avec les utilisateurs,

? Un modèle d'analyse détaille les cas d'utilisation et procède à une première

répartition du comportement du système entre divers objets,

? Un modèle de conception définit la structure statique du système sous forme

de sous-systèmes, de classes et interfaces, définit les cas d'utilisation réalisés

sous forme de collaborations entre les sous-systèmes, les classes et les

interfaces,

+ Un modèle d'implémentation intègre les composants,

+ Un modèle de déploiement définit les noeuds physiques des ordinateurs et

l'affectation de ces composants sur ces noeuds,

+ Un modèle de test décrit les cas de test vérifiant les cas d'utilisation,

Page 19 sur 68

? Une représentation de l'architecture donne toute l'architecture logique et physique.

4. Langage de modélisation UML

Il nous paraît difficile d'envisager le processus 2TUP sans recourir à UML comme support. Certes, les concepts présentés jusqu'à présent ne sont pas spécifiquement liés à une notation particulière. Nous avons cependant omis de préciser le rôle central et fondamental de la modélisation objet tout au long du développement d'une solution logicielle. Le recours à la modélisation est depuis longtemps une pratique indispensable au développement, car un modèle est prévu pour anticiper les résultats du développement. Un modèle est en effet une abstraction du résultat, dont le but est de documenter, de prévoir, d'étudier, de collecter ou d'estimer les informations.26

4.1. Définition et Historique de UML

UML qui est un langage textuel et graphique a fait l'objet de grands travaux de recherche. Il y avait de cela une quinzaine d'années, MERISE était la méthode de conception et de développement de système d'information, de loin là plus utilisée dans le monde informatique. Mais de nos jours les tendances ont changé. UML se définit comme 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.

La modélisation objet consiste à créer une représentation informatique des éléments du monde réel auxquels on s'intéresse, sans se préoccuper de l'implémentation, ce qui signifie indépendamment d'un langage de programmation. Il s'agit donc de déterminer les objets présents et d'isoler leurs données et les fonctions qui les utilisent. Pour cela des méthodes ont été mises au point. Entre 1970 et 1990, de nombreux analystes ont mis au point des approches orientées objets, si bien qu'en 1994 il existait plus de 50 méthodes objet. Toutefois seules 3 méthodes ont véritablement émergé :

La méthode OMT de Rumbaugh

La méthode BOOCH'93 de Booch

La méthode OOSE de Jacobson (Object Oriented Software Engineering) UML 1.0 est soumise à l'OMG (Object Management Group) en janvier 1997, mais elle ne sera acceptée qu'en novembre 1997 dans sa version 1.1, date à partir de laquelle UML devient un standard international. UML a évolué très

26 P. roques et F.VALLEE, UML en action ; de l'analyse des besoins à la conception en JAVA, 2ème éd EYROLLES, 2003, p22

Page 20 sur 68

rapidement ainsi respectivement en 2003 et 2004, UML 1.5 Et UML 2.0 ont vu le jour. Plusieurs enquêtes réalisées sur les sites dédiés au génie logiciel ont montré qu'UML constitue le langage par excellence pour la modélisation.

En l'espace d'une poignée d'années seulement, UML est devenu un standard incontournable. Les experts tant en analyse et conception qu'en programmation informatique diffusent d'innombrables articles au sujet de ce dernier et à en croire certains, utiliser les technologies objet sans UML relève de l'hérésie. Les concepts de base de l'approche objet sont stables, largement éprouvés et ne datent pas d'aujourd'hui. Programmer « objet » c'est donc bénéficier d'une panoplie d'outils et de langages performants. L'approche objet est une solution technologique incontournable. Ce n'est plus une mode, mais un réflexe quasi automatique dès lors qu'on cherche à concevoir des logiciels complexes qui doivent "résister" à des évolutions incessantes.

Pourquoi avions-nous préféré UML comme langage de modélisation par opposition au traditionnel cheminement merisier au moment où l'informatique de gestion apparaît de plus en plus comme un des éléments majeurs de la stratégie des entreprises ?

Notre choix se fonde sur plusieurs critères. D'abord l'émergence soudaine de UML ces dernières années. Cette émergence se justifie par plusieurs atouts que nous ne manquerons pas de relater dans ce mémoire. Ensuite ce choix est lié à la complexité du système que nous devons modéliser. La problématique que pose la mise en oeuvre d'UML est simple : Comment passer de l'expression des besoins au déploiement du système informatique ?

Comme nous le savons, UML n'est qu'un langage de modélisation, ce n'est pas une méthode. En effet, UML ne propose pas une démarche de modélisation explicitant et encadrant toutes les étapes d'un projet, de la compréhension des besoins à la production du code de l'application et au déploiement du système informatique. Une méthode se doit de définir une séquence d'étapes, partiellement ordonnées, dont l'objectif est de produire un logiciel de qualité qui répond aux besoins des utilisateurs dans des temps et des coûts prévisibles.

Bien qu'UML ne soit pas une méthode, ses auteurs précisent néanmoins qu'une méthode basée sur l'utilisation UML doit être :

Pilotée par les cas d'utilisation :

La principale qualité d'un logiciel étant son utilité, c'est-à-dire son adéquation avec les besoins des utilisateurs, toutes les étapes, de la spécification des besoins à la maintenance, doivent être guidées par les cas d'utilisation qui modélisent justement les besoins des utilisateurs.

Centrée sur l'architecture :

Page 21 sur 68

L'architecture est conçue pour satisfaire les besoins exprimés dans les cas d'utilisation, mais aussi pour prendre en compte les évolutions futures et les contraintes de réalisation. La mise en place d'une architecture adaptée conditionne le succès d'un développement. Il est important de la stabiliser le plus tôt possible.

Itérative et incrémentale :

L'ensemble du problème est décomposé en petites itérations, définies à partir des cas d'utilisation et de l'étude des risques. Les risques majeurs et les cas d'utilisation les plus importants sont traités en priorité. Le développement procède par des itérations qui conduisent à des livraisons incrémentales du système.

4.2. Présentation générale des diagrammes UML2

UML s'articule maintenant autour de 13 diagrammes différents, dont 4 nouveaux diagrammes introduits par UML 2.0. Chacun d'eux est dédié à la représentation d'un système logiciel suivant un point de vue particulier. Par ailleurs, UML modélise le système suivant deux modes de représentation : l'un concerne la structure du système pris « au repos », l'autre concerne sa dynamique de fonctionnement. Les deux représentations sont nécessaires et complémentaires pour schématiser la façon dont est composé le système et comment ses composantes fonctionnent entre elles. UML 2 s'articule autour de treize types de diagrammes, chacun d'eux étant dédié à la représentation des concepts particuliers d'un système logiciel. Ces types de diagrammes sont répartis en deux grands groupes :

· Six diagrammes structurels et Sept diagrammes comportementaux :

? Le diagramme de cas d'utilisation est utilisé dans l'activité de spécification des besoins. Il montre les interactions fonctionnelles entre les acteurs et le système à l'étude.

? Le diagramme de classes est le point central dans un développement orienté objet. En analyse, il a pour objet de décrire la structure des entités manipulées par les utilisateurs. En conception, le diagramme de classes représente la structure d'un code orienté objet.

? Le diagramme de packages montre l'organisation logique du modèle et les relations entre packages. Il permet de structurer les classes d'analyse et de conception, mais aussi les cas d'utilisation.

? Les diagrammes de séquence et les diagrammes de communication sont tous deux des diagrammes d'interactions UML. Ils représentent des échanges de messages entre éléments, dans le cadre d'un fonctionnement particulier du système. Les diagrammes de séquence servent d'abord à développer en analyse les scénarios d'utilisation du système. Plus tard, les

Page 22 sur 68

diagrammes de séquence et de communication permettent de concevoir les méthodes des classes.

+ Le diagramme d'états représente le cycle de vie commun aux objets d'une même classe. Ce diagramme complète la connaissance des classes en analyse et en conception en montrant les différents états et transitions possibles des objets d'une classe à l'exécution.

+ Le diagramme d'activité représente les règles d'enchaînement des actions et décisions au sein d'une activité. Il peut également être utilisé comme alternative au diagramme d'états pour décrire la navigation dans un site web.

+ Le diagramme d'objets est un instantané, une photo d'un sous-ensemble des objets d'un système à un certain moment du temps. C'est probablement le diagramme le moins utilisé d'UML et nous n'enverrons pas d'illustration.

+ Le diagramme de composants montre les unités logicielle sa partir desquelles on a construit le système informatique, ainsi que leurs dépendances.

+ Le diagramme de déploiement montre le déploiement physique des artefacts (éléments concrets tels que fichiers, exécutables, etc.) sur les ressources matérielles.

+ Le diagramme de vue d'ensemble des interactions fusionne les diagrammes d'activité et de séquence pour combiner des fragments d'interaction avec des décisions et des flots.

+ Le diagramme de temps fusionne les diagrammes d'états et de séquence pour montrer l'évolution de l'état d'un objet au cours du temps et les messages qui modifient cet état.

+ Le diagramme de structure composite montre l'organisation interne d'un élément statique complexe sous forme d'un assemblage de parties, de connecteurs et de ports. L'ensemble des treize types de diagrammes UML peut ainsi être résumé sur la figure ci-après.

Page 23 sur 68

Page 24 sur 68

5. LANGAGE DE PROGRAMMATION

1. LANGAGE INFORMATIQUE

On appelle « langage informatique » un langage destiné à décrire l'ensemble des actions consécutives qu'un ordinateur doit exécuter. Un langage informatique est ainsi une façon pratique pour nous (humains) de donner des instructions à un ordinateur. A contrario, le terme « langage naturel » représente les possibilités d'expression partagé par un groupe d'individus (par exemple l'anglais ou le français). Les langages servant aux ordinateurs à communiquer entre eux n'ont rien à voir avec des langages informatiques, on parle dans ce cas de protocoles de communication, ce sont deux notions totalement différentes.

a. Un langage informatique a donc plusieurs avantages :

? Il est plus facilement compréhensible que le langage machine ; ? Il permet une plus grande portabilité, c'est-à-dire une plus grande facilité

D'adaptation sur des machines de types différents ; Les langages informatiques peuvent grossièrement se classer en deux catégories : les langages interprétés les langages compilés.

b. Langage interprété Un langage informatique est par définition différent du langage machine. Il faut donc le traduire pour le rendre intelligible du point de vue du processeur. Un programme écrit dans un langage interprété a besoin d'un programme auxiliaire (l'interpréteur) pour traduire au fur et à mesure les instructions du programme.

c. Langage compilé

Un programme écrit dans un langage dit « compilé » va être traduit une fois pour toutes par un programme annexe, appelé compilateur, afin de générer un nouveau fichier qui sera autonome, c'est-à-dire qui n'aura plus besoin d'un programme autre que lui pour s'exécuter ; on dit d'ailleurs que ce fichier est exécutable. Un programme écrit dans un langage compilé a comme avantage de ne plus avoir besoin, une fois compilé, de programme annexe pour s'exécuter. De plus, la traduction étant faite une fois pour toute, il est plus rapide à l'exécution. Toutefois il est moins souple qu'un programme écrit avec un langage interprété car à chaque modification du fichier source (fichier intelligible par l'homme : celui qui va être compilé) il faudra recompiler le programme pour que les modifications prennent effet.

D'autre part, un programme compilé a pour avantage de garantir la sécurité du code source. En effet, un langage interprété, étant directement intelligible (lisible), permet à n'importe qui de connaître les secrets de fabrication d'un programme et donc de copier le

Page 25 sur 68

code voire de le modifier. Il y a donc risque de non-respect des droits d'auteur.

2. LES CONCEPTS RESEAU

L'architecture client/serveur :

L'architecture client/serveur est la suite logique de la programmation modulaire. La programmation modulaire suppose qu'un gros programme est plus efficace s'il décomposé en modules ; il est plus facile à développer et à maintenir. Donc, si on décompose un logiciel en modules, on réalise qu'il n'est pas nécessaire d'exécuter tous les modules dans le même espace-mémoire. On peut créer un module client qui demande un service et un autre module serveur qui fournit le service. En plus, les modules n'ont pas à être sur la même machine ni même sur la même plateforme. On peut utiliser la plateforme appropriée pour chaque tâche.

a) Le client

Le client est un programme qui envoie un message à un autre programme, le serveur, lui demandant d'exécuter une tâche quelconque, le service C'est le client qui gère l'interface avec l'utilisateur, valide les données, gère la communication avec le serveur et exécute certaines opérations logiques. Le client est aussi responsable de la gestion des ressources locales : moniteur, clavier et périphériques. Lorsqu'on parle du client on utilise aussi le terme front-end car c'est la partie du système qui est à l'avant, c'est à dire la plus visible à l'utilisateur. Le client fonctionne toujours en mode graphique, GUI, et communique avec l'utilisateur au moyen de fenêtres.

b) Le serveur

Le serveur reçoit les demandes des clients, exécute les opérations d'extraction et de mise à jour de la base de données, assure l'intégrité des données et retourne les réponses aux clients. Le serveur peut aussi être appelle à exécuter des opérations logiques qui peuvent aller du simple au complexe, basées sur les règles d'affaires de l'entreprise. Le serveur pourrait être une autre machine sur le réseau, il pourrait servir aussi de serveur de fichiers sur le réseau. Le serveur est le back-end qui gère les ressources partagées et les tâches communes à différentes applications.27

c) FRAMEWORK (CADRE D'APPLICATION EN FRANÇAIS)

27 http://www.dgsys.com/~dcasug/sybintro/csarch.HTMl#Client/Server Architecture

Page 26 sur 68

C'est une ossature, charpente d'un programme ; par extension, et à présent le plus souvent, c'est le nom d'une famille d'ensembles logiciels facilitant le développement de programme et d'ordinaire leur déploiement et leur maintenance. Il s'agit d'un ensemble de composants structurés qui sert à créer les fondations et à organiser le code informatique pour faciliter le travail des programmeurs, que ce soit en termes de productivité ou de simplification de la maintenance. Il en existe beaucoup pour les applications web qui ciblent de nombreux langages : Java, Python, Ruby, PHP...28 Exemple : Bootstrap, CodeIgniter, Foundation, etc. Dans le cadre de ce travail, nous avons utilisé le cadre d'application css Bootstrap et CodeIgniter en ce qui concerne le cadre d'application PHP.

1. Boots rap

Boots rap est une collection d'outils utile à la création du design (graphisme, animation et interactions avec la page dans le navigateur ... etc. ...) de sites et d'applications web. C'est un ensemble qui contient des codes HTML et CSS, des formulaires, boutons, outils de navigation et autres éléments interactifs, ainsi que des extensions JavaScript en option. C'est l'un des projets les plus populaires sur la plate-forme de gestion de développement GitHub.29

2. CodeIgniter

CodeIgniter est un Framework libre écrit en PHP. Il suit le motif de conception MVC et s'inspire du fonctionnement de Ruby on Rails. Les versions inférieures à la 2.0.0 sont compatibles avec PHP 4 et 5, tandis que celles supérieures à la 2.0.0 ne sont compatibles qu'avec PHP 5.1.6 ou plus. La version 3.0 requiert PHP 5.2.4 et la version 3.1 requiert PHP 5.3.7.

28 Bestmomo, « Prenez en main Boots rap », open class rooms, 2014, p.6

29 Philibert, Benoît, « Boots rap 3 : le Framework 100 % web design

Page 27 sur 68

CHAPITRE II. ETUDE DE L'EXISTANT

II.1. INTRODUCTION

Dans ce chapitre nous allons devoir présenter l'organisation faisant

l'objet d'étude de notre travail, puis nous allons définir le périmètre d'étude dans lequel évolue le système que nous voulons concevoir. Nous allons donc étudier les besoins des utilisateurs du système, établir le diagramme de cas d'utilisation et de séquence UML.

II.1.1. PRESENTATION DE L'INSTITUT NATIONAL DE PREPARATION PROFESSIONNEL (INPP)

Dans cette partie, il sera question de ressortir quelques points essentiels ayant trait à la présentation l'institut national de préparation professionnelle. Ce présent chapitre permettra à toute personne désire de connaitre cette société de l'Etat congolais.

II.1.2. Historique et la création de l'INPP/haut Katanga

L'institut national de préparation professionnelle (I.N.P.P) est lié à l'évolution de la politique de l'emploi au Congo. Etant donné la restructuration de l'économie nationale et la restauration de l'équilibre macro-économique rompu depuis plusieurs décennies ,et compte tenu de l'accroissement des demandes d'emplois dans tous les secteurs de la vie nationale, pour répondre à l'adaptation de la main d'oeuvre au profil de l'emploi, le gouvernement avait pris la décision de créer une Institution Nationale de Préparation Professionnelle; placé sous le ministère du travail et de l'emploi et prévoyance sociale, jouissant d'une autonomie administrative et financière.

Il est important de noter qu'à l'accession de notre pays à l'indépendance, tous les domaines de la vie nationale étaient tombés en faillites; il y avait rupture brutale d'encadrement dans l'administration publique et dans les entreprises tant publique que privées ; les infrastructures de l'Institut National de Préparation Professionnelle furent détruites et délaissé suite au départ massif des blancs, les cadres nationaux évolués avaient tentés de relever le défi de ce départ pour essayer de redonner la vie aux service nationaux. Les tentatives ont abouti à des études depuis des organisations des employeurs et la mise sur pied d'une structure qu'on a appelé par la suite l'Institut National de Préparation Professionnelle créé par l'ordonnance loi N°

Page 28 sur 68

206 du 26/06/1964. Comme chaque chose à une genèse, nous allons essayer de constituer dans cette section l'historique de l'I.N.P. P au travers le pays :

? 1964 : création de l'institut national de préparation

professionnelle ;

? 1966 : démarrage de la direction provinciale de Kinshasa ;

? 1969 : démarrage de la direction provinciale de Boma ;

? 1971 : démarrage de la direction provinciale de

Lubumbashi ;

? 1973 : démarrage de la direction provinciale de Kisangani ;

? 1981 : démarrage de la direction provinciale de Bukavu ;

? 1990 : intégration de l'école pigée à l'institut national de

préparation professionnelle,

? A la même année, il y aura création des antennes :
Gradualité, Kikwit, Mbuji-Mayi et Kananga

Il est important de noter que la direction générale de l'Institut National de Préparation Professionnelle se trouve à Kinshasa à la 11èmerue à limette.

a. Siege administrative de l'INPP

La direction générale de l.N.P.P estdans la capitale

congolaise(Kinshasa), surla 6eme Rue, limeté Industrielle. B.P.1150 KINSHASA-LIMETE, RDC.

II.1.3. SITUATION GEOGRAPHIQUE DE L'INPP/HAUT KATANGA

La direction provincial l'institut national de préparation professionnelle, section haut Katanga et situer au numéro 18, avenue luvungi, commune Kampemba, quartier industriel.

II.1.4. SIEGE ADMINISTRATIF DE L'INPP

La direction générale de l'INPP est dans la capitale congolaise(Kinshasa), sur la 6eme Rue, limeté Industrielle. B. P1150 KINSHASA-limeté, RDC ;

Page 29 sur 68

II.1.5. STATUT JURIDIQUE

L'Institut National de Préparation Professionnelle direction provinciale Katanga est une entreprise à caractère technique et sociale dote la personnalité juridique, créé le 29/06/1964 sous l'ordonnance loi n° 06.

II.1.6. STRICTURE

L'I.N.P. P est pris en tutelle par deux ministère du pouvoir publique

dont :

Le ministère de travail et prévoyance social (tutelle technique) et le ministère de la porte feuille (tutelle administrative et financière) le conseil d'administration est composé des représentants de l'état, les employeurs et travailleurs, il est l'organe suprême de l'Institut National de Préparation Professionnelle.

II.1.7. OBJECTIF DE L'INPP

Comme cette institution ne peut pas commencer à arbousier le budget de l'état inutilement ; il est pertinent de savoir l'apport de celle-ci au niveau de la société.

L'institut national de préparation professionnelle a pour objectifs :

L'amélioration de la qualité professionnelle de la population active. Le perfectionnement professionnel des travailleurs dans l'emploi des ouvriers ou des cadres d'entreprises publique ou privées. La reconversion professionnelle des travailleurs devant changer des métiers ou profession. La sélection et l'orientation professionnelle, soit pour l'embauche soit pour la sélection et l'orientation professionnelle ; L'aide aux entreprises pour mettre au point leur classification d'emploi ;

La fourniture aux autorités publiques des supports techniques nécessaires à l'élaboration et exécution de la politique nationale en matière de formation professionnelle.

II.1.8. RESSOURCES

? HUMAINE

Cette ressource est composée du personnel expérimenté et hautement qualifié

? FINANCIERE

Les ressources financières de l'I.N.P. P proviennent de :

Page 30 sur 68

Subvention de l'État (50%) du budget ; Cotisation mensuelle des employeurs ; Rétribution exceptionnelle ; Dons et legs.

II.1.9. FONCTIONNEMENT DU SERVICE C.A.I

Le service commerce administration et informatique, C.A.I en sigle est l'un des huit services de la division technique de l'INPP/DPK ; il s'occupe de deux domaines de formation à savoir :

1) Domaine commercial et administratif : pour la formation dans les sciences commerciales, administratives et du secrétariat de direction.

2) Domaine informatique : s'occupe de la formation en bureautique, programmation et gestion puis en maintenance et réseau et aussi des autres modules techniques.

A. PROCESSUS ET MODE D'INTERVENTION Formation se fait sur demande c'est-à-dire

V' Soit en dehors des installations de l'Institut National de Préparation

Professionnelle, elle est dite externe

V' Soit au sein de l'entreprise, elle est dite interne

B. PROGRAMME ET METHODE DE FORMATION

En soit il n'y a pas de programme fixe de type scolaire.

Les programmes se font sur mesure suivant les exigences du poste et niveau du candidat.Les méthodes de formation sont axées sur la pratique, elles sont fonctionnelles, audiovisuelle : méthode d'entrainement, séminaire, travaux pratiques etc....

C. DOMAINE D'INVESTIGATION ET DUREE DE LA FORMATION

L'I.N.P. P /DPK peut assurer la formation dans les métiers de base selon les besoins exprimés par chaque entreprise, organisation ou individu. La formation n'a pas de durée fixe, elle se détermine en fonction des objectifs du programme et niveau du candidat. Ainsi, il dispose de façon permanente des ateliers et laboratoires pour les domaines ci-après :

> Secrétariat, comptabilité, commerce, administration et informatique

> Mécanique auto (diesel, essence, électricité, auto)

> Mécanique générale (machine outils, charpenterie, métalliques)

> Chaudronnerie, tôlerie, soudure, froid, climatisation, électronique,
formation des cadres et agents de maitrise, pédago-information, gestion des

Page 31 sur 68

petites et moyennes entreprises (PME), technique de maniement d'utilisation de tests psychologiques analyses, description et classification des emplois, contrôle technique automobile, informatique de gestion, bâtiment et génie civil.

INSPECTION TECHNIQUE

DIVISION TECHNIQUE

ADJOINT TECHNIQUE

CONSEIL TECHNIQUE

CHARGE D'ETUDES

FORMATION DES CADRES ET MAITRISE

SECTION ET PSYCOLOGIE DU TRAVAIL

PEDAGOGIE DE FORMATION

ELECTRICITE ; FROID ELECTONIQUE

CHAUDRONNERIE ET SOUDURE

MECANIQUE AUTO

COMMERCIALE ADMNISTRATIVE ET
INFORMATIQUE

Date : 20/02/2018 Source : service informatique

MECANIQUE GENERALE

SECRETARIAT

Page 32 sur 68

D. ORGANIGRAMME DE L'INPP/DPK

DIRECTION PROVINCIALE

SOUS DIRECTION

DIVISION ADM. ET FINANCIERE

ADJOINT ADM. FINANCIERE

SECRETAIRE

DISPENSAIRE

APPROVISIONNEMENT

RECOUVREMENT

BUDGET CONTROLE

COMPTABILITE

OUEVRE SOCIALE

CAISSE

CONTROLE TECHNIQUE

Page 33 sur 68

II.2. ANALYSE DU METIER

II.2.1. DESCRIPTION DU METIER

L'analyse est une discipline qui étudie et présente de manière abstraite le travail à effectuer. L'objectif de l'analyse est d'accéder à une compréhension des besoins et des exigences des clients, il s'agit de livrer des spécifications pour permettre de choisir la conception de la solution.

II.2.2. DESCRIPTION TEXTUELLE DU PROCESSUS METIER

Dans le cadre de perfectionnement, la I NPP souhaite modéliser le processus de gestion des formations en son sein afin que quelques-unes de leurs tâches soient informatisées.

Formuler la description textuelle du processus métier qui se présente comme suit :

Le nouveau Candidat venu est tenu de déposer une lettre de demande de formation rédigée au manuscrit accompagné de son titre

académique ou scolaire (diplôme d'état ou diplôme universitaire) au

secrétariat. Il a signalé que celui peut suivre cette formation, que le

candidat ayant un niveau d'étude supérieur ou D6 (diplôme d'état)

Le secrétariat transmet la dite lettre au SI (chef de service informatique) et ce dernier donne l'accord d'acception de la candidature au secrétaire pour qu'elle soit enregistrer sur une liste et le candidat ira payer le frais de formation auprès du SI.

La secréterait établit une liste de candidats et transmet au formateur ; auprès de qui les candidats iront suivre leur cours.

A la fin du programme de cours, le formateur évalué le candidat et transmet à son tour le résultat obtenu au SI et ce dernier livrera l'attestation provisoire de formation au candidat en attendant l'attestation de fin de formation soumise à la signature de l'administrateur délégué général de l'INPP/haut Katanga.

Page 34 sur 68

II.2.3. PERIMETRE ET IDENTIFICATION DES ACTEURS

Dans cette partie, nous allons qui énumérer les acteurs qui interagissent avec le système métier. Avant tout, commençons par définir un acteur.

Un acteur représente un rôle jouer par une entité externe ou interne(utilisateur humain, dispositif matériel ou autre système) , qui interagit directement avec le système étudie.30

Donc un acteur est une abstraction des rôles jouent par une entité (externe ou interne), qui interagit directement avec le système. Elle peut consulter et/ou modifier directement l'état du système, en émettant et/ou en recevant des messages susceptibles d'être porteurs de données.

? Les différents acteurs qui interagissent avec notre système sont :

? Le candidat: toute personne qui pour passer la demande et qui

deviens pratiquement apprenant âpres qu'il soit admis à l'institut. ? Le secrétaire qui gère tous les demandes et les renseignements des

candidats en formation et d'autel.

? Le chef de service informatique(SI) : qui valide les demandes des formations de candidat et qui perçois l'argent d'inscription des candidats âpres validation de la lettre de demande.

? Le formateur : celui qui s'occupe de la formation des candidats et des examines aussi.

30 P. Roque <<UML2 le cahier du programmeur, modélise une application web>>5eme Ed Ecoles 61 Germainjuin 2008 P41

Page 35 sur 68

II.2.4. DIAGRAMME DE CONTEXTE METIER

II.3. ANALYSE FONCTIONNELLE DU METIER

L'analyse fonctionnelle nous permet d'avoir une bonne compréhension de besoins des utilisateurs, ces besoins constituent les spécifications qui permettent de bien choisir la conception de la solution pour arriver au but, nous utiliserons le diagramme d'activité, le diagramme de cas d'utilisations et le diagramme de classe.

a. Diagramme de cas d'utilisation métier

Un cas d'utilisation (« use case » en anglais) représente un ensemble de séquences d'actions qui sont réalisées par le système et qui produisent un résultat observable intéressant pour acteur particulier.

Page 36 sur 68

II.4. DIAGRAMME D'ACTIVITE

Le diagramme d'activités n'est rien d'autre que la transcription dans UML de la représentation du processus telle qu'elle a été élaborée lors du travail qui a préparé : la modélisation, il montre l'enchainement des activités qui concourent aux processus. Pour notre travail, voici le diagramme d'activité.

a. Diagramme d'activité : Processus demande de formation

Le diagramme d'activité ci-dessous montre l'enchainement des actions et décisions du processus de demande de formation.

Page 37 sur 68

SECRETAIRE

CANDIDAT

CHEF DE S.I FORMATEUR

Dandeder formation

examiner

deemande

[Refaire demande]

[Refaire classer]

analyse dmande

[demande rejetée]

payer Frais

[Refaire demande]

percevoi frais

[argent imcomple]

[argent complet]

suivre coursd

Enregistrer candidat

[formation arefaire]

Evaluer candidat

[candidat ajourné]

[candidat satiseait]

Etablir Attestation

Page 38 sur 68

II.5. MODELE DE CLASSES DU DOMAINE

Le diagramme de classes est le point central dans un développement orienté objet. En analyse, il a pour objectif de décrire la structure des entités manipulées par les utilisateurs. Le diagramme de classes montre la structure interne du système et permet de fournir une représentation abstraite des objets du système qui vont interagir ensemble pour réaliser les cas d'utilisation.31

Voici le diagramme de classe du domaine que nous avons retenu après analyse et capture de besoins fonctionnels :

31Pascal R. et Franc Vallée, UML en action, de l'Analyse des besoins à la conception en Java, 2em Ed, Paris Eyrolles, 2003

Page 39 sur 68

CHAPITRE III : CONCEPTION D'UN SYSTEME INFORMATIQUE

III.1. INTRODUCTION

Le présent chapitre est centré sur l'étude du système informatique. Il s'agit ici de ressortir les besoins du nouveau système à mettre en place en montrant comment il sera informatisé afin d'aboutir au déploiement et à l'implémentation qui mettront la dernière pierre l'édifice de ce travail. Après avoir analysé notre système d'information existant, dans le chapitre précédent, chapitre dans lequel nous avons ressorti les concepts métiers du système, les activités réalisées ainsi que le recueil des besoins du système à développer ; nous allons à présent nous atteler sur tout ce qui va concerner le développement du système informatique en ouvrant le système vu comme une boite noire afin de connaître tout ce qui se passe à l'intérieur.

III.2. INGENIERIE DES EXIGENCES

L'ingénierie des exigences est l'application d'une démarche systématique pour capturer, analyser, spécifier et valider les exigences d'un logiciel à développer. Le processus d'ingénierie des exigences définit l'ensemble des activités, actions et tâches nécessaires et la manière de les articuler afin de développer les exigences d'un logiciel. Il comprend la capture, l'analyse, la spécification et la validation.

III.2.1. CAPTURE DES EXIGENCES

La capture des exigences, désignée autrement « Identification des exigences », est l'activité consistant à identifier les principales sources des exigences et à déterminer comment les ingénieurs peuvent les collecter. C'est la première étape où on se fait une compréhension du problème que le logiciel va résoudre. À ce niveau, tous les acteurs du projet doivent être identifiés. Les exigences du système informatique déterminent ce que le système doit faire, fournissent aux développeurs une meilleure compréhension des fonctionnalités du système qu'ils doivent développer, définissent le contour du système, fournissent la base de la planification et le contenu technique ainsi que la réalisation des cas d'utilisation. En analyse tout comme en conception, les besoins du système sont capturés et modélisés à l'aide d'un diagramme de cas d'utilisation. Nous allons toujours nous servir de besoins capturés au niveau de l'analyse métier pour définir et capturer les besoins du système informatique.

Page 40 sur 68

III.2.2. CAPTURE DES BESOINS DU SYSTEME INFORMATIQUE

a. IDENTIFICATION DES ACTEURS DU

SYSTEME INFORMATIQUE

Pascal ROQUES dans la 4ème édition de son livre intitulé UML2

Modéliser une application web, parue en 2008, définit un acteur comme l'idéalisation d'un rôle joué dans le système, donc est acteur toute entité (utilisateur, dispositif matériel ou autre système) qui interagit directement avec le système (l'application).32 Au vu de cette définition nous avons retenu les acteurs suivants susceptibles d'interagir avec le système :

? Le candidat/Internaute : toute personne qui pour passer la demande et qui deviens pratiquement apprenant âpres qu'il soit admis à l'institut. ? Le chef de service informatique(SI) : qui valide les demandes des

formations de candidat et qui perçois l'argent d'inscription des
candidats âpres validation de la lettre de demande.

? Le formateur : celui qui s'occupe de la formation des candidats et des examines aussi.

? Administrateur : personne responsable de la gestion du système informatique et attribuant les privilèges utilisateur (acteurs) ci-haut mentionnés.

III.3. ANALYSE DU SYSTEME INFORMATIQUE

III.3.1. Présentation du digramme de cas d'utilisation de conception

Les cas d'utilisation constituent un moyen de recueillir et de décrire les besoins des acteurs du système. Ils peuvent être aussi utilisés ensuite comme moyen d'organisation du développement du logiciel, notamment pour la structuration et le déroulement des tests du logiciel.

ACTEUR

CAS D'UTILISATIONS

ACTIONS

1.

Candidat

Demande de formation

? Passer demande de

formation

32 Pascal ROQUES, UML 2 Modéliser une application web, éd. Eyrolles, Paris, 2008

Page 41 sur 68

 
 
 

· Peut s'inscrire

2.

Chef IS

Traiter demande de formation

· Invalider, valider demande

· Vérifier disponibilité place

3.

Formateur

Gérer matières

· Ajouter, Consulter, Modifier

et Supprimer une matière

· Programmer matière

4.

Administrateur

Gérer utilisateur

· Ajouter, Consulter, Modifier et valider un utilisateur, supprimé

· Donnée des privilèges

5.

Internaute

Créer compte

· Créer compte utilisateur

 

Tout système peut être décrit par un certain nombre de cas d'utilisation correspondant aux besoins exprimés par l'ensemble des utilisateurs. À chaque utilisateur, vu comme acteur, correspondra un certain nombre de cas d'utilisation du système. L'ensemble de ces cas d'utilisation se représente sous forme d'un diagramme33.

33 P. Roques & F. Vallée, UML 2 en action, de l'analyse des besoins à la conception, éd. EYROLLES, 2007, p34

Page 42 sur 68

III.3.2. DESCRIPTION TEXTUELLE DES CAS D'UTILISATIONS

1. Description textuelle du cas d'utilisation système : Créer compte

v' Résumé : ce cas d'utilisation permet à un internaute de se connecter au

site et de créer son compte s'il n'a pas un login et un password.

+ Acteurs :

? Principal : Internaute

? Secondaire : Système

+ Précondition :

o Le système est sous tension

+ Scénario-nominal :

1) L'internaute se connecte

2) Le système affiche la page d'authentification

3) L'internaute clique sur le lien « vous n'avais pas de compte ))

4) Le système affiche le formulaire création de compte

5) L'internaute rempli le formulaire

6) L'internaute clique sur « Enregistrer ))

+ Le système affiche la page d'accueil et un message de

confirmation.

+ Post-condition : Compte enregistré

+ Description formelle par le diagramme de séquence système :

Page 43 sur 68

2. Description textuelle du cas d'utilisation système : S'authentifier

v Résumé : ce cas d'utilisation permet aux utilisateurs du système

informatique de s'faire identifier.

+ Acteurs :

? Principal : Utilisateur

? Secondaire : Système

+ Pré condition :

o Le système est sous tension

o Le formulaire authentification existe dans le système + Scénario-nominal :

1) L'utilisateur se connecte

2) Le système affiche la page d'authentification

3) L'utilisateur saisi son login et son password

4) L'utilisateur clique sur « Connexion » + Scénario-alternatif :

? Login et password incorrect

5) Le système refuse l'accès ? Dans le cas contraire

6) Le système autorise l'accès

+ Post-condition : Accès autorisé ou refusé

+ Description formelle par le diagramme de séquence système :

Page 44 sur 68

3. Description textuelle du cas d'utilisation système : demande de formation

? Résumé : ce cas d'utilisation permet à un candidat du système de passer

une demande de formation.

? Acteurs :

? Principal : candidat

? Secondaire : Système

? Pré-condition :

? Le système est sous tension

? Avoir déjà été authentifié dans le système

? Avoir déjà gérer son profil utilisateur

? Scénario-nominal :

1. Le candidat clique sur le menu « Demande de formation))

2. Le système affiche la page de demande de formation

3. Le candidat clique sur le bouton « Choisissez le lettre de formation ))

4. Le système affiche un open file dialog

Page 45 sur 68

5. Le candidat choisi l'emplacement de la photo (fichier image scanné) lettre de formation

6. Le candidat clique sur le bouton « OK »

7. Le système affiche le résultat

? Post-condition : Demande de formation enregistrée

? Description former flle par le diagramme de séquence système

Page 46 sur 68

4. Description textuelle du cas d'utilisation système : Gérer Utilisateur

v' Résumé : ce cas d'utilisation permet à l'administrateur système de gérer

les utilisateurs.

+ Acteurs :

? Principal : Administrateur

? Secondaire : Système

+ Contrat d'opération

1°) Ajouter Utilisateur

+ Responsabilité : l'Administrateur enregistre un nouvel utilisateur du

système.

+ Référence : Cas d'utilisation gérer utilisateur.

+ Scénario-nominal :

1. L'administrateur clique sur le menu « Administrateur ))

2. Le système affiche la page d'administration

3. L'administrateur clique sur « ajouter utilisateur ))

4. Le système déroule le formulaire « ajouter utilisateur ))

5. L'administrateur rempli le formulaire et clique sur « Enregistrer ))

6. Le système enregistre et affiche le résultat

+ Post-condition : Utilisateur ajouté

+ Description formelle par le diagramme de séquence système

Page 47 sur 68

5. Description textuelle du cas d'utilisation système : Traiter demande

y' Résumé : ce cas d'utilisation permet au chef du service informatique de pouvoir validée la demande du candidat et ainsi établir le permis de la formation.

+ Acteurs :

o Principal : Chef si

o Secondaire : Système

+ Contrat d'opérations :

1) Validée demande

+ Responsabilité : Le chef si valide la demande du candidat existant

dans le système.

+ Référence : Cas d'utilisation traiter demande

+ Pré-condition :

o Le système est sous tension

o Le chef si s'est déjà authentifier + Scénario-nominal :

1. Le chef si clique sur le menu « service informatique »

2. Le système affiche la page des demandes de la formation

Page 48 sur 68

3. Le chef service informatique sélectionne la référence de la demande

4. Le chef du service informatique clique sur le bouton « Validée ))

5. Le système affiche une fenêtre modale

6. Le chef du service informatique saisi les coordonnées demandées et clique sur « Valider ))

? Post-condition :

o Demande validée

o Impression du permis de la formation

? Description formelle par le diagramme de séquence système

III.3.3. Diagramme des classes participantes

Ces diagrammes préliminaires appelés : « diagramme des classes participantes », n'ont pas pour objectif d'être complet. Ils servent uniquement à démarrer la découverte des classes du modèle d'analyse.

Page 49 sur 68

Classe participante du cas d'utilisation créer compte

L'internaute pour créer son compte utilisateur doit nécessairement passer par l'écran de création de compte est le contrôleur portant le même nom.

Classe participante du cas d'utilisation s'authentifier

Face à l'écran d'authentification, l'utilisateur a la possibilité de s'authentifier dans le système via un contrôleur utilisateur ; voici sa représentation :

Classe participante du cas d'utilisation gérer profil

Avant de gérer son profil, l'utilisateur doit d'abord s'authentifier,

le voici :

Après s'être authentifié en tant que formateur de l'INPP, ce dernier a la possibilité d'en ajouter, d'en modifier et même d'en supprimer :

Page 50 sur 68

Classe participante du cas d'utilisation : demande de formation

Le candidat pour passer sa demande de formation doit d'abord s'authentifier dans le système, puis accéder à l'écran de demande de formation, voici sa représentation :

Classe participante du cas d'utilisation : Traiter demande

Après authentification par le système, le service informatique traite la demande de formation pour la valider ou l'invalider :

Classe participante du cas d'utilisation : gérer matière

Page 51 sur 68

Classe participante du cas d'utilisation : Gérer utilisateurs

L'authentification dans le système de l'administrateur, lui donne accès à l'écran principal de gestion des utilisateurs, et ce dernier peut donc créer, réinitialiser le password de l'utilisateur et enfin le supprimer carrément du système.

III.4. CONCEPTION DETAILLEE

Nous arrivons maintenant à la phase ultime de modélisation avec UML. Après la modélisation des besoins, puis l'organisation de la structure de la solution, la conception détaillée consiste à construire et à documenter précisément les classes, les interfaces, les tables et les méthodes qui constituent le codage de la solution.

III.4.1. DIAGRAMME DE SEQUENCE DETAILLEE

Ces diagrammes de séquence vont nous permettre de décrire les scénarios des cas d'utilisation du diagramme des cas d'utilisation.

a. diagramme de séquence détaillée du cas d'utilisation : «créer compte»

Page 52 sur 68

Pour avoir une vue des interactions dans la réalisation du cas d'utilisation « créer compte » ce diagramme nous permet de voir l'ensemble d'objets concourant à la création du compte ainsi que différentes

communications entre les couches (présentation : ici : Ecran_Compte et : Ecran_Authentication, applicative : ici : Controleur_compteet enfin la couche persistance représentée par Utilisateur)

b. diagramme de séquence détaillée du cas d'utilisation : « s'authentifier »

A priori, toutes les actions que les utilisateurs posent, ils sont obligés de s'authentifier. Ces interactions montrent d'une vue présentative, applicative et persistance, les séquences des communications entre les couches.

Page 53 sur 68

c. Diagramme de séquence détaillée du cas d'utilisation : « gérer profil »

La représentation d'objets interagissant entre eux pour qu'un utilisateur puisse gérer son profil les trois couches font leur union pour que ce tour soit joué, en voici sa représentation :

Page 54 sur 68

Page 55 sur 68

d. Diagramme de séquence détaillée du cas d'utilisation : « Passer demande »

Pour passer une demande de stage, ce diagramme montre les interactions entre les différents objets de ces trois couches à savoir : présentation, application et persistance :

Page 56 sur 68

e. Diagramme de séquence détaillée du cas d'utilisation : « Traiter demande »

Ce diagramme nous montre dans la couche présentation l'écran général qu'à partir du contrôleur nous disposons d'une vue applicative qui communique avec la couche persistance ayant des entités : Stagiaire et Demande afin que ce traitement puisse être possible.

Page 57 sur 68

III.5. DIAGRAMME DE CLASSE DE CONCEPTION

Ce diagramme représente la description statique du système en intégrant dans chaque classe la partie dédiée aux données et celle consacrée aux traitements. C'est le diagramme pivot de l'ensemble de la modélisation d'un système.

Page 58 sur 68

III.6. MODELE LOGIQUE RELATIONNEL DE DONNEES

Le principal intérêt de modéliser les données est de conceptualiser les processus métiers d'un logiciel ou d'un SI. Le fonctionnement de ces processus est alors schématisé et permet aux lecteurs de comprendre facilement et sans connaissances poussées les interactions entre les acteurs et les fonctionnalités du système. On procède alors à un découpage en sous-système. Un problème complexe devient alors une somme de petits problèmes plus facile à résoudre.

Page 59 sur 68

CHAPITRE IV : REALISATION ET IMPLEMENTATION DE LA
SOLUTION RETENUE

IV.1. INTRODUCTION

Ce chapitre nous permettra d'implémenter la solution obtenue sous une configuration matérielle en tenant compte de contraintes physiques et opérationnelles. La réalisation d'une application trois tiers se construit sur la définition des postes de travail. Un poste de travail représente un ou plusieurs acteurs pouvant être localisé sur une machine d'un type particulier et remplissant une fonction identifiée dans l'entreprise. Le poste de travail ne représente pas forcément une machine physique, mais peut consister en plusieurs machines, à condition qu'elles donnent lieu au même type de déploiement.

La notion de poste de travail peut cependant être quelque peu bouleversée par la généralisation des déploiements en client léger. En effet, au travers de la notion de portail plusieurs applications sont potentiellement accessibles, voir atteinte de manière transparente à l'utilisateur par des techniques de syndication.

Cette évolution technologique nous amène à associer la notion de poste de travail à l'ensemble des applications web que l'on désire rendre accessibles pour un acteur particulier du système. Les modèles de déploiement et de configuration matérielle s'expriment tous deux à l'aide d'un diagramme de déploiement. Cependant, ils n'expriment pas tout à fait le même niveau de description.

IV.2 Environnement de développement de l'application

Pour réaliser notre application, nous avons utilisé le langage de programmation PHP dédié à la création des applications web dynamique, celui-ci nous l'avons manipulé dans un environnement de développement intitulé phpStorm, qui est largement compatible avec PHP.

Par ailleurs, il faut noter que les pages écrites en PHP sont à chaque fois testées grâce à une plateforme de développement spécifique. La plateforme que nous avons adoptée est WampServeur version 2.0 qui inclut tous les outils nécessaires pour le test d'un site web dynamique à savoir le serveur Apache version 2.4.33, MySQL version 5.7.21 et la version PhpMyadmin 4.7.9.

Page 60 sur 68

IV.2.1. WampServer

Anciennement WAMP5, wamp server 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 n'est pas en soi un logiciel, mais un environnement comprenant deux serveurs (Apache et MySQL), un interpréteur de script (PHP), ainsi qu'une administration pour les deux bases SQL PhpMyAdmin et SQLiteManager.

Il dispose d'une interface d'administration permettant de gérer et d'administrer ses serveurs au travers d'un tray-icon (icône près de l'horloge de Windows).

La grande nouveauté de WampServer 2 réside dans la possibilité d'y installer et d'utiliser n'importe quelle version de PHP, Apache ou MySQL en un clic. Ainsi, chaque développeur peut reproduire fidèlement son serveur de production sur sa machine locale.

IV.2.2. Le langage PHP

PHP est un langage de scripts libre principalement utilisé pour produire des pages Web dynamiques via un serveur HTTP, mais pouvant également fonctionner comme n'importe quel langage interprété de façon locale, en exécutant les programmes en ligne de commande. PHP est un langage

Page 61 sur 68

impératif disposant depuis la version 5 de fonctionnalités de modèle objet complètes. En raison de la richesse de sa bibliothèque, on désigne parfois PHP comme une plate-forme plus qu'un simple langage.

IV.2.3. Adobe Dreamweaver

Anciennement Macromedia Dreamweaver est un éditeur de site web de type WYSIWYG. Dreamweaver fut l'un des premiers éditeurs HTML de type tel affichage, tel résultat, mais également l'un des premiers à intégrer un gestionnaire de site (CyberStudio

GoLive étant le premier). Ces innovations le propulsèrent rapidement comme l'un des principaux éditeurs de site web, aussi bien utilisable par le néophyte que par le professionnel.

Dreamweaver offre deux modes de conception par son menu affichage. L'utilisateur peut choisir entre un mode création permettant d'effectuer la mise en page directement à l'aide d'outils simples, comparables à un logiciel de traitement de texte (insertion de tableau, d'image, etc.). Il est également possible d'afficher et de modifier directement le code (HTML ou autre) qui compose la page. On peut passer très facilement d'un mode d'affichage à l'autre, ou opter pour un affichage mixte. Cette dernière option est particulièrement intéressante pour les débutants qui, à terme, souhaitent se familiariser avec le langage HTML.

Dreamweaver a évolué avec les technologies de l'internet. Il offre aujourd'hui la possibilité de concevoir des feuilles de style. Les liaisons avec des bases de données ont également été améliorées ainsi que le chargement des fichiers sur les serveurs d'hébergement. Il propose en outre l'utilisation de modèles imbriqués de pages web, selon un format propriétaire.

Depuis la version MX, il peut être utilisé avec des langages web dynamiques (ASP, PHP) à l'aide d'outils relativement simples d'utilisation. Il permet ainsi de développer des applications dynamiques sans connaissance préalable des langages de programmation.

IV.2.4. MySQL

MySQL est un système de gestion de base de données (SGBD). Selon le type d'application, sa licence est libre ou propriétaire. Il fait partie des logiciels de gestion de base de données les plus utilisés au monde, autant par le grand public (applications web principalement) que par des professionnels, en concurrence avec Oracle et Microsoft SQL Server.

MySQL est un serveur de bases de données relationnelles SQL développé dans un souci de performances élevées en lecture, ce qui signifie qu'il est davantage orienté vers le service de données déjà en place que vers

Page 62 sur 68

celui de mises à jour fréquentes et fortement sécurisées. Il est multi-thread et multi-utilisateur.

MySQL fait partie du quatuor LAMP: Linux, Apache, MySQL, PHP. Il appartient également à ses variantes WAMP (Windows) et MAMP (Mac).

Le couple PHP/MySQL est très utilisé par les sites Web et proposé par la majorité des hébergeurs Web. Plus de la moitié des sites Web fonctionnent sous Apache, qui est le plus souvent utilisé conjointement avec PHP et MySQL.

IV.3. Diagrammes de déploiement

Un diagramme de déploiement est un diagramme UML qui fournit une représentation graphique de la configuration physique des éléments d'exécution de votre système.

Le diagramme de déploiement fournit une vue des noeuds reliés par des liens de communication. Ce diagramme permet de modéliser des noeud, des objets fichier associés aux noeuds qui sont utilisés pour le déploiement, et les relations entre les noeuds. Les noeuds contiennent des instances de composant qui peuvent être déployées dans et exécuté sur des serveurs de base de données, des serveurs d'applications ou des serveurs Web.

Les diagrammes de déploiement sont utilisés pour le déploiement effectif des composants sur des serveurs. Un déploiement représente la possibilité d'utiliser des instances sous pour établir le lien avec l'architecture physique. Il est particulièrement approprié pour modéliser les topologies en réseau.

En UML, un diagramme de déploiement est une vue statique qui 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. Les éléments utilisés par un diagramme de déploiement sont principalement les noeuds, les composants, les associations et les artefacts. Les caractéristiques des ressources matérielles physiques et des supports de communication peuvent être précisées par stéréotype. Le diagramme de déploiement considère plutôt chaque noeud comme un poste de travail. Il exprime la répartition physique des fonctions métier du système et permet de justifier la localisation des bases de données et des environnements de travail. Le modèle de déploiement aide à préciser la qualification des postes client, des réseaux et de leur sécurité physique par rapport à des critères fonctionnels.

Page 63 sur 68

Page 64 sur 68

CONCLUSION GENERALE

La gestion, la maitrise de l'information et son traitement optimale sont des atouts considérables pour le progrès d'une entreprise. Avec l'accroissement considérable des lettrés et la multiplicité dans la diversité des candidats dans les murs de l'INPP, le nombre d'informations à traiter, à manipuler dans la gestion des formations devient de plus en plus complexes. Cela exige donc des outils adéquats et adaptés afin de gérer au mieux cet afflux. Ainsi, nous voici arrivé au terme de notre travail de fin d'étude à l'institut supérieur de statistique de Lubumbashi, dont l'objet était celui de concevoir une application web de gestion des candidats.

En effet, pour remédier aux différentes difficultés, nous avons procédés aux différentes démarches de l'informatisation, en ayant connaissance de l'existant du système en usage et des solutions ont étés proposées après avoir décelé toutes les anomalies constatées. Pour ce faire nous nous résumons pour dire que dans le premier chapitre, nous avions expliqués les différents concepts de base considérée dans l'élaboration de notre travail et différents travaux antérieurs en rapport avec notre sujet. Le deuxième nous a permis de parler premièrement de la présentation du cadre d'étude, ensuite de l'étude du système existant, de le critiquer et proposer des pistes de solution. Via le troisième chapitre, la description de l'analyse et la conception du système informatique, la conception détaillée, les caractéristiques sécuritaires de la solution ainsi que la réalisation de l'application en faisant la mise en oeuvre de l'architecture, l'implémentation ainsi que le déploiement du futur système nous a conduit tout droit vers le dernier chapitre qui s'achève par la présentation de l'application conçue dans un langage que le web comprend.

Eût égard à notre préoccupation majeure soulevée plus haut dans la partie introductive de ce travail, nous osons croire que cette application web confirme bel et bien notre hypothèse.

En fin, nous restons ouverts à toutes les critiques objectives que tout chercheur devra bien nous adresser après la lecture de ce travail. Voilà d'une manière générale, la quintessence de l'étude que nous avons menée.

Page 65 sur 68

BIBLIOGRAPHIQUE

I. OUVRAGES

1. Bestmomo, « Prenez en main Bootstrap », openclassrooms, 2014 ;

2. Chevalier J., « organisation, administration des entreprises », Dunod Paris ;

3. P. Rocques & F. Vallée, « UML 2 en action, de l'analyse des besoins à la conception », éd. EYROLLES, 2007.

4. MULUMBATI, N., « Manuel de sociologie générale », Lubumbashi, Ed. Afrique ;

5. Philibert, Benoît, « Bootstrap 3: le framework 100 % web design », Ed. EYROLLES,2015.

6. Marcous BINDUNGWA.I <<comment élaborer un travail de fin de cycle>> Ed.kin 2007

7. Vignoles PATRICK, Cité par MPALA MBABULA, dans pour vous chercher, directive pour rédiger un travail scientifique, Lubumbashi, Ed. Mpala, 2001, p. 36-37

8. MERLIN P, Tourisme et aménagement touristique documentation, Paris 2001, P 75

9. L. VON BERTALANFFY, «théorie générale des systèmes» Dunod, Paris 1991(1ère Edition Bordas, Paris 1973).

10. Joël de Rosnay, « Le Macroscope », Ed du Seuil 1977 et Jacques Lapointe, Université LAVAL 1998.

11. Henry Roux de Bezieux, « Présentation des outils systémiques à partir du récit d'un projet en Préfecture », Mais 2004.

II. NOTE DE COURS

1. Elie Louis KABWE K., « méthodes de conduite des projets informatiques », support de cours, L2 Info, ISS, 2017-2018.

2. MUNDA JACQUES, cours de questions spéciales de conception de système d'information, ISS/L2 CSI 2017-2018

III. TRAVAUX DE FIN D'ETUDES ET DE FIN D'ETUDE

1. HAMMIOUI AYMANE KHALDI MOHAMMED, « Application Web pour La Gestion Des Stagiaires dans un centre de formation de création de sites et des applications web », Projet de fin d'études, L2 Génie Informatique, 2015-2016.

2. ED-DAHMOUNI Bouthayna « Conception et réalisation d'une application pour la gestion des stagiaires», Projet de Fin d'Etudes Licence Sciences et Techniques Génie informatique, 2012-2013

Page 66 sur 68

TABLE DE MATIERES

INTRODUCTION GENERALE 1

I. GENERALITES 1

II. CHOIX ET INTERET DU SUJET 2

A. CHOIX DU SUJET 2

B. INTERET DU SUJET 2

III. ETAT DE LA QUESTION 3

IV. PROBLEMATIQUE ET HYPOTHESE 5

a. PROBLEMATIQUE 5

b. HYPOTHESE 6

V. METHODES ET TECHNIQUES DE LA RECHERCHE 7

1. METHODES 7

2. TECHNIQUES DE LA RECHERCHE 9

VI. DELIMITATION DE SUJET 10

VII. SUBDIVISION DU TRAVAIL 10

CHAPITRE I : DEFINITION DES CONCEPTS ET CONSIDERATIONS THEORIQUES 10

1. Introduction 10

2. Cadre conceptuel 11

2.1. Définitions de concept du domaine d'étude 11

2.2. Définition de concepts de l'informatique 11

3. CONSIDERATION THEORIQUE 13

3.1. La méthode systémique ou l'approche systémique 13

3.1. L'architecture bidirectionnelle 18

4. Langage de modélisation UML 19

4.1. Définition et Historique de UML 19

4.2. Présentation générale des diagrammes UML2 21

5. LANGAGE DE PROGRAMMATION 24

1. LANGAGE INFORMATIQUE 24

2. LES CONCEPTS RESEAU 25

CHAPITRE II. ETUDE DE L'EXISTANT 27

II.1. INTRODUCTION 27

Page 67 sur 68

II.1.1. PRESENTATION DE L'INSTITUT NATIONAL DE PREPARATION

PROFESSIONNEL (INPP) 27

II.1.2. Historique et la création de l'INPP/haut Katanga 27

II.1.3. SITUATION GEOGRAPHIQUE DE L'INPP/HAUT KATANGA 28

II.1.4. SIEGE ADMINISTRATIF DE L'INPP 28

II.1.5. STATUT JURIDIQUE 29

II.1.6. STRICTURE 29

II.1.7. OBJECTIF DE L'INPP 29

II.1.8. RESSOURCES 29

II.1.9. FONCTIONNEMENT DU SERVICE C.A.I 30

II.2. ANALYSE DU METIER 33

II.2.1. DESCRIPTION DU METIER 33

II.2.2. DESCRIPTION TEXTUELLE DU PROCESSUS METIER 33

II.2.3. PERIMETRE ET IDENTIFICATION DES ACTEURS 34

II.2.4. DIAGRAMME DE CONTEXTE METIER 35

II.3. ANALYSE FONCTIONNELLE DU METIER 35

a. Diagramme de cas d'utilisation métier 35

II.4. DIAGRAMME D'ACTIVITE 36

a. Diagramme d'activité : Processus demande de formation 36

II.5. MODELE DE CLASSES DU DOMAINE 38

CHAPITRE III : CONCEPTION D'UN SYSTEME INFORMATIQUE 39

III.1. INTRODUCTION 39

III.2. INGENIERIE DES EXIGENCES 39

III.2.1. CAPTURE DES EXIGENCES 39

III.2.2. CAPTURE DES BESOINS DU SYSTEME INFORMATIQUE 40

III.3. ANALYSE DU SYSTEME INFORMATIQUE 40

III.3.1. Présentation du digramme de cas d'utilisation de conception 40

III.3.2. DESCRIPTION TEXTUELLE DES CAS D'UTILISATIONS 42

III.3.3. Diagramme des classes participantes 48

III.4. CONCEPTION DETAILLEE 51

III.4.1. DIAGRAMME DE SEQUENCE DETAILLEE 51

III.5. DIAGRAMME DE CLASSE DE CONCEPTION 57

III.6. MODELE LOGIQUE RELATIONNEL DE DONNEES 58

CHAPITRE IV : REALISATION ET IMPLEMENTATION DE LA SOLUTION RETENUE 59

Page 68 sur 68

IV.1. INTRODUCTION 59

IV.2 Environnement de développement de l'application 59

IV.2.1. WampServer 60

IV.2.2. Le langage PHP 60

IV.2.3. Adobe Dreamweaver 61

IV.2.4. MySQL 61

IV.3. Diagrammes de déploiement 62

CONCLUSION GENERALE 64

BIBLIOGRAPHIQUE 65

TABLE DE MATIERES 66






Bitcoin is a swarm of cyber hornets serving the goddess of wisdom, feeding on the fire of truth, exponentially growing ever smarter, faster, and stronger behind a wall of encrypted energy








"Un démenti, si pauvre qu'il soit, rassure les sots et déroute les incrédules"   Talleyrand