Page 1

Mémoire de projet de fin d’étude pour l’obtention de Diplme De Licence : Conception et réalisation d’un site web de recrutement en ligne Braiek Fares & Ben Hsin Amin 6 mai 2010


Projet de Fin d’études

Faculté des Sciences de Tunis

Remerciements Comme l’a dit Sir ISAAC NEWTON

:x Si j’ai pus voir plus loin, C’est en montant sur les épaules des géants~

Nous tenons à adresser nos sincères remerciements : A

Mme Moussa Toulgui Leila

pour avoir bien voulu nous encadrer, pour tout

le temps qu’elle nous a octroyé et pour tous les conseils qu’elle nous a promulgué. Qu’elle trouve ici l’expression de notre profonde gratitude. Nous tenons à remercier aussi, toute l’équipe pédagogique de la Faculté des Sciences de Tunis et les intervenants professionnels responsables de la Section LFI (License Fondamentale Informatique), pour avoir assur é la partie théorique de celle-ci. Nous remercions également :

Monsieur Rhamnia Mohammed & Monsieur Bouchech Talel Nos Encadreurants au sein de la société Nour Services pour nous avoir accueilli comme des stagiaires dans la société Nour

Services

,pour avoir diri-

ger ce travail, pour nous avoir soutenu tout au long de notre projet et pour leurs précieux conseils. . Nous tenons à remercier tout particulièrement et à témoigner toute notre reconnaissance : A :

Tous les membres du jury A :

Tous ceux qui, directement ou indirectement, ont aidé à la finalisation de ce travail


Projet de Fin d’études

Faculté des Sciences de Tunis

Table des matières Introduction

5

Chapitre I :Contexte & Motivation

7

1.Contexte spatio-temporelle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

7

1.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

7

1.2 Présentation de l’institution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

7

1.3 Présentation du projet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

7

1.4 Méthodologie et formalise adoptés . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Chapitre II :Incubation

7 9

10

1.Capture des besoins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

10

1.1 Identification des acteurs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

10

2.Identification des besoins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

10

2.1 Les besoins fonctionnels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

10

2.2 Les besoins non fonctionnels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

11

2.Identification des risques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

11

3.Modèle de cas d’utilisation

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

12

3.1 Diagramme de cas d’utilisation initial . . . . . . . . . . . . . . . . . . . . . . . . .

12

3.2 Description textuelle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

14

3.2.1 L’adminstrateur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

14

3.2.1 L’Employeur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

14

3.2.1 Le Candidat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

14

1.Environnement de tarvail . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

15

1.1 Environnement matériel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

15

1.2 Environnemnt logiciel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

15

1.2.1 Pourquoi Opensuse ? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

15

1.2.2 Pourquoi Symfony ? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

16

1.2.3 Pourquoi PHP ? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

18

1.2.4 Pourquoi Apache2 ? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

19

1.2.5 Pourquoi PsotgreSQL ? . . . . . . . . . . . . . . . . . . . . . . . . . . . .

19


Projet de Fin d’études

Chapitre III : Analyse

Faculté des Sciences de Tunis

21

1.Raffinement des cas d’utilisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

21

1. Administrateur : . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

21

Cas d’utilisation formel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

22

2. L’employeur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

23

Cas d’utilisation formel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

23

3. Le candidat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

24

Cas d’utilisation formel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

24

Sénarios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.Les sénarios des taches d’administrateur . . . . . . . . . . . . . . . . . . . . . . . . . 1.a Sénario de l’authentification de l’adminstrateur . . . . . . . . . . . . . . . .

25 25 25

1.b Sénario de la gestion des candidats par l’admin . . . . . . . . . . . . . . . .

26

1.c Sénario de la gestion des employeurs par l’admin . . . . . . . . . . . . . . .

27

1.d Sénario de la gestion des offres par l’admin . . . . . . . . . . . . . . . . . .

28

1.e Sénario de la gestion des catégories par l’admin . . . . . . . . . . . . . . . .

29

2.Le candidat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

30

3.a Sénario d’inscription . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

30

3.b Sénario de déposition de candidature . . . . . . . . . . . . . . . . . . . . . .

31

3.c Sénario de modification d’information . . . . . . . . . . . . . . . . . . . . .

32

3.d Sénario de recherche d’offre . . . . . . . . . . . . . . . . . . . . . . . . . . .

33

2.e Sénario de suppression de candidature . . . . . . . . . . . . . . . . . . . . .

34

3.L’Employeur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

35

3.a Sénario de dépot d’offre . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

35

3.b Sénario de modification d’offre . . . . . . . . . . . . . . . . . . . . . . . . .

36

3.c Sénario de suppression d’offre . . . . . . . . . . . . . . . . . . . . . . . . . .

37

3.d Sénario de modification de publicité . . . . . . . . . . . . . . . . . . . . . .

38

Diagramme de Classe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

39

Chapitre IV : Acquis

41


Projet de Fin d’études

Faculté des Sciences de Tunis

Table des figures 1

logo d’opensuse

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2

logo de PHP

3

logo de apache . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

19

4

logo de postgresql

20

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

16 18


Projet de Fin d’études

Faculté des Sciences de Tunis

Introduction De nos jours les progrés technologiques ont fait de l’internet la source dominante sur le marche des services en ligne publique et prive citant a titre d’exemple la messagerie electrionique , le world wide web , commerce electronique ... Par consequent l’internet a surpassé la presse en volume d’annonces, et dés lors le recrutement en ligne a évolué et donc pour cette raison recruter ne peut plus se résumer à publier une petite annonce dans un journal mais a divulguer ses propres annonces dans les sites specialises pour ce service. En contre partie, la demande d’emploi a evolue d’une faon spectaculaire causant une multitude de problmes de chomages C’est dans ce cadre que la societe Nour Services a eu l’idee de proposer une solution qui essaye de resoudre le probleme de recrutement. Ce Projet intitule " Conception et realisation d’une application web de recrutement en ligne " a pour but la mise en place d’un systeme de recrutement en ligne qui offre aux demandeurs d’emplois la possiblilite de les satisfaire et aux entrepreneurs de repondre a leurs demandes de recrutements. C’est exactement ce que propose notre application de fin d’étudeN ourjobs.com

, une application unique

en son genre, 100% web, pour diffuser et suivre des offres, gérer ses propres CV et autres candidatures facilement et efficacement. Les résultats de nos travaux sont synthétisés dans le présent document qui est composé de sept chapitres : Le premier chapitre présente le contexte général du projet ainsi que nos motivations pour le réaliser. Dans le deuxième chapitre nous nous intéresserons à la collecte des besoins, des acteurs et à la conception de notre application. Le troisième chapitre quand a lui est consacré à l’étude conceptuelle raffinée. Nous allons ensuite mettre en avant l’analyse et la spécification des besoins dans le quatrième chapitre. Quand au cinquième nous l’avons dédié à l’étude des outils disponibles et de l’environnement de développement.


Projet de Fin d’études

Faculté des Sciences de Tunis

Lavant dernier chapitre est réservé pour donner un aperu sur le travail réalisé et la phase de test de lapplication. Enfin le septième et dernier chapitre, on la dé dié pour notre acquis et ce que nous a avons appris durant les six mois de travail rigoureux et acharné . mais aussi .


Projet de Fin d’études

Faculté des Sciences de Tunis

chapitre I :Contexte & Motivation 1.Contexte spatio-temporelle 1.1 Introduction Dans ce chapitre, nous mettons notre projet dans son contexte le plus général. Nous commençons par présenter l’organisme d’accueil, ensuite nous décrivons brièvement le projet. Enfin, nous expliquons notre choix concernant les outils utilisés.

1.2 Présentation de l’institution Fondée en 2005, Nour Services est localisée à Tunis (omran supérieur ) et son adresse é lé ctronique ( E-mail ) est : contact@nourjobs.com C’est une société jeune et dynamique ayant une expérience plus d’une année dans le domaine de recrutement pour les offres de travail. Elle est destinée pour satisfaire les besoins des entreprises de point de vue ressources humaines.

1.3 Présentation du projet Ce projet de fin d’etude répond à des besoins sentis par le personnel pour la mise en place d’une application web qui gère les recrutements en ligne c’est une sorte d’éspace ou des employeurs peuvent postuler leurs offres et les internautes peuvent y créer des comptes et y déposer des candidatures pour les différentes offres d’emploi. Notre projet de fin d’étude consiste à concevoir, réaliser, déployer, tester et valider cette application de gestion de recrutement en ligne pour le compte de Nour Services.

1.4 Méthodologie et formalise adoptés u Présentation de la méthodologie adoptée Notre démarche est de comprendre le système d’information, de cerner les besoins et de proposer des applications qui r´ pondent à ces besoins. La méthodologie suivie s’appuie sur trois composantes


Projet de Fin d’études

Faculté des Sciences de Tunis

majeures englobant tout ce qui concerne un système de recrutement en ligne : Processus :

En se basant sur l’approche processus, il est recommandé de décomposer le système

en plusieurs sous-systèmes coordonnés et régulés. Et ce, pour bénéficier d’un gain de temps tout en s’appuyant sur des modèles existants pour arriver à dessiner une démarche structurée et pragmatique de la ou des solutions possibles. Technologie :

Démarche d’adaptation des moyens technologiques pour arriver à implémenter un sys-

tème qui répond aux normes standard de tout système de gestion et qui est capable d’intéragir dans un environnement homogène composé des éléments de base pour supporter n’importe quel système. Organisation :

Définition claire à travers des matrices de différentes fonctionnalités qu’offre le sys-

tème et du rde chacune d’elles avec une personnalisation qui tient compte du contexte technique, des objectifs attendus et de l’organisation du système de gestion. u Présentation du formalise adopté Une des phases clés dans le développement d’un produit est sans doute la phase de conception. Durant cette phase on va essayer de présenter les principales fonctionnalités à implanter, de réfléchir sur l’aspect structurel de l’application, et de concevoir les scénarios d’utilisation de l’application. Le but est de réduire la complexité du développement et d’avoir une vision des différents angles de vues du système d’information. Pour notre projet, nous optons pour la notation UML 1. Ce dernier propose un langage et une notation graphique standard pour la création de diagrammes. Les diagrammes UML permettent de représenter un système selon différentes vues complémentaires. Dans ce qui suit, nous énumérons les différents diagrammes UML et les classifions en diagrammes structurels et diagrammes dynamiques. Diagrammes structurels : – Diagramme de classes :

ce diagramme illustre la vue conceptuelle classique du système avec

ses paquetages, ses classes, ses interfaces, et leurs relations respectives. Diagrammes dynamiques : – Diagramme de Cas d’utilisation (ang : Uses Case)

: le diagramme de cas d’utilisation

modélise le comportement d’un système, d’un sous-système ou d’une classe en expliquant les relations existantes entre un ensemble de cas d’utilisation et de leurs acteurs. – Diagramme de Séquence :

ce diagramme décrit les intéractions entre les objets en montrant

la séquence temporelle des messages. Ces objets sont en général des instances de classes mais ils peuvent également représenter d’autres classificateurs tels que les acteurs.


Projet de Fin d’études

Faculté des Sciences de Tunis

2.Conclusion Dans ce chapitre, nous avons présenté le cadre de travail ainsi que la méthode et le formalisme adoptés pour la mise en place de ce système. Dans le chapitre suivant, nous décrivons de manière plus détaillée la partie de spécification qui représente le cahier de charge que doit satisfaire notre application par ses fonctionnalités.


Projet de Fin d’études

Faculté des Sciences de Tunis

Chapitre II :Incubation La phase d’incubation consiste à comprendre le contexte du système.Il s’agit de déterminer les fonctionnalités et les acteurs les plus pertinents, de préciser les risques les plus critiques et d’identifier les cas d’utilisation initiaux. Ceci dit, notre description va sembler trop détaillée pour une première phase du processus, mais il faut signaler qu’un systéme existe déja, contenant les principales fonctionnalités.

1.Capture des besoins 1.1 Identification des acteurs Pour concevoir et réaliser le système de recrutement en ligne il nous était indispensable de collecter les informations nécessaires auprès des spécialistes du domaine. Après avoir structurer les informations collectées, nous avons remarqué que presque tout, se déroule autour de trois acteurs : – L’administrateur – L’employeur – Le candidat

2.Identification des besoins Notre application web doit contenir trois composantes d’interface

2.1 Les besoins fonctionnels d Interface Adminstrateur : - Gérer les offres et les annonces soit par la validation soit par le rejet en cas des annonces interdites - Gérer les catégories des offres de travail -Communiquer avec les candidats (à travers les mails...) -Gérer les comptes de candidats et des employeurs -Gérer les inscriptions -Gérer les droits d’accès


Projet de Fin d’études

Faculté des Sciences de Tunis

d Interface Employeur : -Poster des offres de travail -Poster des publicités sur son entreprise -Consulter les informations à propos des demandeurs de travail (cv) d Interface Candidat : - Permettre l’inscription et l’accès membre aux candidats -Permettre aux candidats de gérer leurs comptes - Permettre aux clients de rechercher les offres par catégories

2.2 Les besoins non fonctionnels A part les besoins fendamentaux, notre futur système doit répondre aux critères suivants : - Le temps de réponse de l’application doit être minimal - La portabilité du system sur n’importe quel plateforme - Performance, fiabilité et flexibilité du système - L’application doit être accessible à plusieurs utilisateurs en même temps - L’architecture de l’application doit être capable de supporter l’implémentation des services Web - Les interfaces doivent être claires, concises et faciles à manipuler - Les interfaces de notre application doivent être conviviales - Chaque type d’utilisateur ne peut avoir accès qu’à certaines informations (sauf l’administrateur)

2.Identification des risques Avant de se lancer dans la conception, il faut déterminer les principaux risques mettant en danger la réalisation du projet, afin de les atténuer le maximum possible. La détermination de ces risques est très importante, par exemple elle peut influencer la définition de l’ordre de priorité des cas d’utilisation. En effet, si le langage de programmation présente un risque, nous aurons intérêt à commencer par le cas d’utilisation le plus simple. Nous faisons face à deux types de risques : d Risques non techniques : - Délai de livraison : En effet, nous sommes contrariés par le délai de dépôt du mémoire, fixé à quatre mois du début de stage, et par l’ampleur de notre projet.


Projet de Fin d’études

Faculté des Sciences de Tunis

d Risques techniques : - La non maîtrise du langage de programmation : L’implémentation avec un langage que nous ne maîtrisons pas, est un risque technique critique, surtout que le délai de livraison est relativement court.

3.Modèle de cas d’utilisation Etant dans une étape précoce de la réalisation du projet, on fournira à ce stade un modèle de cas d’utilisation sous une vue globale du système qui va donc rassembler les principales fonctionnalités de notre application :

3.1 Diagramme de cas d’utilisation initial Les principales fonctionnalités du système sont traduites sous forme de modèle de cas d’utilisation suivant :


Projet de Fin d’études

Faculté des Sciences de Tunis

Diagramme de cas d’utilisation initial La Figure précédente représente le diagramme de cas d’utilisation global de notre application. En effet, après authentification (administrateur, candidat ou employeur) accède aux différentes fonctionnalités offertes par ce site . Si Un Candidat s’authentifie comme étant un administrateur, il peut passer a exécuter tous types d’opérations (mise a jour / ajout / suppression) . S’il s’authentifie comme étant


Projet de Fin d’études

Faculté des Sciences de Tunis

un candidat, un utilisateur accède aux différents services offerts tel que la gestion de son profil et la consultation des offres d’emplois disponibles. Et enfin s’il s’authentifie comme étant un employeur, il aura le droit d’insertion des offres d’emplois et la consultation des candidatures.

3.2 Description textuelle : 3.2.1 L’administrateur L’Administration du site se compose en fait en 3 grandes parties : En premier lieu on trouve l’administration du contenue qui se compose de la configuration du site web (L’administrateur peut modifier les catégories disponibles sur le site), de la gestion des emplois (Un administrateur peut modifier et supprimer tous les emplois affichés.) et de la Gestion des affiliés (L’administrateur peut créer ou modifier des affiliés).En second lieu on trouve ladministration dite technique dont le role consiste la gestion des comptes (Ajout/modification/suppression ) et la Gestion des droits d’accès et la réponse aux requêtes des utilisateurs ! En dernier lieu il ya l’accès total aux données et leur mises a jour ( comme la vérification des offre d’emplois ,des publicités proposées par l’employeur, des CV et des fiches des entreprises ) Il existe toutefois une Fonction facultative que peut faire l’administrateur et qui consiste en l’affichage des statistiques et du reporting pour les utilisateurs.

3.2.1 L’Employeur L’employeur doit garantir une visibilité sur internet à travers notre application en y publiant sa fiche technique et en ayant la possibilité de déposer une liste d’offre d’emplois. Il lui aussi possible de s’inscrire pour avoir son propre espace de gestion de profils. En outre la consultation des candidatures et la publicité commerciale sont deux de ses autres intérêts, action qui puisse être faite suite a la demande d’un privilège délivré par l’administrateur.

3.2.1 Le Candidat Un internaute peut s’inscrire et devenir un candidat sur notre application ainsi il aura la possibilite de gérer son propre profil (mettre a jour son CV, modifier ses coordonnées).Il peut en plus consulter la liste des offres d’emplois et les détails de chacune des offres disponibles. Enfin, il peut déposer une candidature pour un ou plusieurs postes parmi ces offres (il peut filtrer sa recherche par catégorie ou par mot clés).


Projet de Fin d’études

Faculté des Sciences de Tunis

4.Environnement de Travail 1.1 Environnemnt matériel Pour le développemnt de notre application nous avons utilisé deux ordianteurs personnels(PCs) qui présentent les caractèristiques suivantes : ¬

Le premier PC est utilisé comme client, et a les caractèristiques suivantes :

4 Disique dur 200 Go 4 Mémoire RAM 4 Ghz 4 Processeur Core 2 Quad ­

Le deuxième PC est utilisé comme serveur web, d’application est de données, et a les caractè-

restiques suivantes :

4 Disique dur 200 Go 4 Mémoire RAM 4 Ghz 4 Processeur Core 2 Quad

1.2 Environnement logiciel Dans cette partie du rapport on va présenter notre environnement de travail tout en justifiant nos choix qui n’étaient pas choisis d’une faç on aléatoire. Suite à la diversité des logiciels et la complétude de certains nous nous étions trouvés lors de la conception face à un problème de choix mais après une longue étude, comparaisons et éliminations basées sur nos besoins on a enfin choisi :

Ê Opensue 11.2 comme System d’exploitation Ë Symfony Doctrine comme framework Ì Php 5.3 comme language de programamtion Í Apache 2 comme serveur http Î PostgreSQL comme SGBD x Les plateformes Linux/Apache/PHP sont d’une très grande stabilité (sauf mauvaise config à l’origine). Un site peut tourner pendant des mois et des mois sans avoir besoin d’un reboot... Appréciable pour les sites de commerce el ectronique ou les sites boursiers (ces derniers choisissent de plus en plus le PHP, ce n’est pas un hasard) pour lesquels une panne d’une heure peut coûter des millions... ~ 1.2.1 Pourquoi Opensuse ? SUSE est une distribution Linux majeure, d’origine allemande et principalement développée en Europe.


Projet de Fin d’études

Faculté des Sciences de Tunis

Figure 1 – logo d’opensuse

La première version de cette distribution apparut au début de l’année 1994, faisant de SUSE la plus ancienne distribution commerciale encore existante. Elle est renommée pour son outil de configuration YaST. En 2003, elle a été rachetée par la société américaine Novell, membre fondateur de l’Open Invention Network. Novell ouvrit largement le développement de la distribution aux contributeurs extérieurs en créant en 2005 le projet communautaire openSUSE. Depuis sa création opensuse est passé par plusieurs version 6.3, 6.4, 7 .... Et depuis la fin de 2008 la version 11.2 la plus stable est apparue et les experts estiment que l’apparition d’une nouvelle version ne sera que à la fin de l’années 2011 vu la stabilité de cette version. Avantages : -Opensuse est gratuit. -Opensuse est largement moins sensible aux virus. -Opensuse est multi-platforme ( opensuse peut lire des fichiers au format propriétaire ou des fichiers typiquement utilisés sous Windows. Et non seulement il peut les lire et les utiliser mais généralement il peut même écrire dans ce format. Un fichier texte peut sans aucun problème être enregistré au format Word. Aujourd’hui opensuse lit et écrit au format NTFS spécifique à Windows.) -Opensuse est une fortesse (Différents tests prouvent que Linux surpasse Windows au niveau sécurité et intrusion. Son Firewall est puissant et paramétré pour une utilisation habituelle. De plus les failles de sécurité sont bien plus vite corrigées que sous Windows.) -Opensuse est libre.

1.2.2 Pourquoi Symfony ?

logo de Symfony


Projet de Fin d’études

Faculté des Sciences de Tunis

symfony est un framework MVC libre écrit en PHP 5. En tant que framework, il facilite et accélère le développement de sites et d’applications Internet et Intranet. Le site du framework symfony a été lancé en octobre 2005. à l’origine du projet, on trouve une agence web française, Sensio, qui a développé symfony pour ses propres besoins et a ensuite souhaité en partager le code avec la communauté des développeurs PHP. La dernière version stable de symfony est la 1.4.1, datée du 8 décembre 2009[1]. La version 1.3.1 sortie en même temps apporte les mêmes fonctionnalités à la différence qu’elle reste compatible avec la version 1.2. Nous avons choisi Symfony 1.4 parce qu’elle nous propose : - Une séparation du code en trois couches,selon le modèle MVC, pour une plus grande maintenabilité et évoluvité. - Des performances optimisées et un sytème de cache pour garantir des temps de réponse optimums. - Une gestion des url parlantes, qui permet de formater l’url d’une page indépendamment de sa position dans l’arborescence fonctionnelle. - Un système de configuration en cascade qui utilise de façon extensive le langage YAML. - Une couche de mapping objet-relationnel (ORM) et une couche d’abstraction de données. - Le support de l’AJAX. - Une architecture extensible, permettant la création et l’utilisation de plugins.

la page par défaut de symfony


Projet de Fin d’études

Faculté des Sciences de Tunis

1.2.3 Pourquoi PHP ?

Figure 2 – logo de PHP x PHP

(sigle de PHP : Hypertext Preprocessor), 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 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. ~ On a choisi PHP 5 vue : – Sa rapidité :

Compilé en tant que module Apache, les temps d’exécution sont très performants.

A condition toutefois de l’utiliser sur une plate forme Linux (une des justification de notre choix de la plateforme linux) Contrairement aux CGI, les scripts PHP sont donc exécutés par le serveur web, sans ressources supplémentaires. Pour des sites très fréquentés, le PHP s’avère plus performant que l’ASP (mais la différence est imperceptible pour un site avec moins de 2 millions de pages vues par mois). – La grande facilité pour manipulation. – Une très bonne gestion de base de données :

Depuis ces origines PHP gère bien les requêtes

SQL ainsi on peut facilement écrire des programmes qui affichent des données extraites de bases SQL, ou qui stockent des données postées par un formulaire dans une table SQL. Le PHP sait communiquer avec presque tous les SGBD de la création (Oracle, MySql, DB2, Informix, Ingres, Postgresql, SQL Server, Access etc...). Quelle version de php doit on choisir ? Comparé à ses antécédents php 5 est caractérisé par :


Projet de Fin d’études

1. SimpleXML :

Faculté des Sciences de Tunis

Un nouveau parseur XML très efficace et très simple

2. 3.Un nouveau modèle POO 1.2.4 Pourquoi Apache2 ?

Figure 3 – logo de apache

x The Apache HTTP Server Project is an effort to develop and maintain an open-source HTTP server for modern operating systems including UNIX and Windows NT. The goal of this project is to provide a secure, efficient and extensible server that provides HTTP services in sync with the current HTTP standards. Apache has been the most popular web server on the Internet since April 1996~ . x The Apache HTTP Server Project est un effort pour développer et entretenir un open-source serveur HTTP pour les systèmes d’exploitation modernes, dont UNIX et Windows NT. Le but de ce projet est de fournir un serveur sécurisé, efficace et extensible qui fournit des services HTTP en phase avec les normes actuelles HTTP. Apache est le serveur Web le plus populaire sur Internet depuis avril 1996. ~

1.2.5 Pourquoi PostgreSQL ? x PostgreSQL TM est un système de gestion de bases de données relationnelles objet (ORDBMS) fondé sur POSTGRES, Version 4.2. Ce dernier a été développé à l’université de Californie au département des sciences informatiques de Berkeley. POSTGRES est à l’origine de nombreux concepts qui ne seront rendus disponibles au sein de systèmes de gestion de bases de données commerciales que bien plus tard. PostgreSQL est un descendant OpenSource du code original de Berkeley. Il supporte une grande partie du standard SQL tout en offrant de nombreuses fonctionnalités modernes : requêtes complexes ; clés étrangères ; triggers ; vues ; intégrité transactionnelle ; contrôle des versions concurrentes (MVCC ou multiversion concurrency control). De plus, PostgreSQL peut être étendu par l’utilisateur de multiples façons. En ajoutant, par exemple : de nouveaux types de données ; de nouvelles fonctions ; de nouveaux opérateurs ; de nouvelles fonctions d’agrégat ; de nouvelles méthodes d’indexage ; de nouveaux langages de procédure. Et grâce à sa licence libérale, PostgreSQL peut être utilisé, modifié et distribué librement, quel que soit le but visé, qu’il soit privé, commercial


Projet de Fin d’études

Faculté des Sciences de Tunis

Figure 4 – logo de postgresql

ou académique.~

5.Conclusion Nous venons de presenter les differents besoins et risques que peut confronter notre travail, ensuite nous avons presente les differentes methodologies adoptes et nous avons justifi notre choix vis--vis des outils de travail quon a utilis mais aussi un bref aperu sur le cas d’utilisation ; C’est pourquoi le chapitre suivant seras porte essentiellement sur la presentation detaillee de l’analyse du projet savoir les differents diagrammes de conception.


Projet de Fin d’études

Faculté des Sciences de Tunis

Chapitre III : Analyse 1.Raffinement des cas d’utilisation Dans Cette partie nous allons détailler et raffiner le cas d’utilisation global relativement a chaque acteur dans le but d’aboutir a une meilleure exigence.

1. Adminstrateur : L’Administrateur est le premier responsable du dynamisme du site, en effet il peut effectuer un ensemble d’opérations tel que les mises a jour des offres demplois, des candidats, des employeurs et des catégories. Il peut en outre, effectuer d’autres opérations tel que la consultation des outils de communication (Mail Electronique) qui facilitent la communication entre l’administrateur et les autres acteurs.


pfe  

document de projet de fin d'etude

Read more
Read more
Similar to
Popular now
Just for you