Académique Documents
Professionnel Documents
Culture Documents
Université de la Manouba
Institut Supérieur des Arts Multimédias
PLATEFORME FREELANCE
Réalisé par
Encadré par
A mes chers parents pour tous leurs sacrifices, leur amour, leur
tendresse, leur soutien et leurs prières tout au long de mes études…
Pour n’en oublier aucun, à tous mes amis, qui ont été toujours présents
avec leur soutien…
Mes chers amis : Pour leur encouragement et pour tous les bons
moments qu’on a vécus ensemble. J’espère que notre amitié durera
éternellement.
Islem
Nous adressons aussi nos vifs remerciements aux membres des jurys pour
avoir bien voulu examiner et juger ce travail.
Nous ne laisserons pas cette occasion passer, sans remercier tous les
enseignants et le personnel de L’institut supérieur des arts de
multimédia et particulièrement ceux de la section informatique et
multimédia pour leur aide et leurs précieux conseils et pour l’intérêt
qu’ils portent à notre formation.
WEBOGRAPHIE ............................................................................................................................................... 93
Introduction générale
Un Freelancer est une personne qui vend sa prestation à la journée, à l’heure, au forfait. Il
prospecte ses propres clients et s’autogère. Il définit sa mission avec son client et la réalise
ensuite lui-même. Les secteurs les plus concernés par le Freelance sont tous les métiers dits
« intellectuels » comme traducteurs, métiers touchant à l’informatique, photographes,
graphistes… Internet a facilité l’expansion de ce mode de travail dans les secteurs comme le
développement de software, dessinateur web, technologie de l’information et de la
documentation pour l’entreprise. Cela permet donc au Freelancer de travailler à une distance
éloignée de son client et dans différents pays. Ce mode de travail se développe énormément,
c’est pour cela que nous pourrons trouver beaucoup de sites d’offres d’emploi dédiés au
Freelance.
Dans ce contexte et dans le cadre du projet de fin d’étude pour l’obtention du diplôme de
licence fondamentale en informatique et multimédia à l’Institut Supérieure d’Arts Multimédia
(ISAMM), nous avons été invités à travailler au sein de la société 360dev pour l’élaboration
d’une plateforme Freelance constituée d’une interface permettant à un membre Freelancer de
vendre des services à un client servant à ses besoins. Cette solution garantit aux clients un
service rapide et avec une exigence de qualité. Ainsi, elle facilite le travail pour le client et le
travailleur.
Ce rapport vise à décrire et expliquer le sujet du projet, ses différentes phases, les méthodes,
les outils et les résultats et sera traité en 4 chapitres :
Le second chapitre est intitulé « Spécifications détaillées ». Il s’agit d’une partie qui sera
consacrée pour la représentation de la méthodologie de travail et les langages adoptés.
Ensuite, il y aura une analyse de besoins fonctionnels et non fonctionnels ainsi que la
représentation des diagrammes des cas d’utilisations et les diagrammes de séquence système.
Enfin il ya une représentation de la gestion du projet avec la méthodologie SCRUM.
2
Rapport de projet fin d’études 2017/2018
Chapitre 1 : Etude préalable
3
Rapport de projet fin d’études 2017/2018
Etude préalable
C
e chapitre a pour objectif de situer notre sujet dans son contexte général. Nous
commençons par une présentation de la société d’accueil « 360dev». Après, nous
décrivons brièvement le sujet à traiter et les objectifs à atteindre. Enfin, nous
présentons une étude de l’existant et une analyse des applications similaires ainsi qu’une
critique de l’existant, et nous proposons des solutions qui pourront remédier aux problèmes
constatés.
La société s'attache à la collaboration d'une équipe jeune et dynamique qui dispose d'un large
panel de savoir-faire, réalise ainsi des opérationnels en cohérence avec les demandes précises
de ses clients.
L'entreprise travaille dans le respect constant des normes et des règles en vigueur pour vous
garantir une qualité de travail indéniable.
L'entreprise est née d'une grande passion pour l'informatique c’est ce qui fait que son service
méticuleux et raffiné soit le meilleur.
1
www.360dev.info
4
Rapport de projet fin d’études 2017/2018
Etude préalable
En effet, cette Plateforme impose au client l’achat d’un abonnement avant la demande d’un
service ce qui garantit les droits de l’employé et assure une motivation pour tous les
utilisateurs. Par ailleurs la plateforme concerne une alerte pour les employés et une
supervision pour les services afin d’être sure que les services seront traités rapidement et en
satisfaisant les besoins des clients.
1.3.1. UpWork
UpWork2 est une plateforme qui réunit des freelances et des employeurs en ligne. Elle a bien
marché au niveau international.
Description
UpWork est une plateforme qui nous permet de s’inscrire à des projets à court ou long terme
et choisir de travailler à l'heure ou être payé par projet. Le site dispose d'une fonctionnalité de
chat facile à utiliser, d'un traceur temporel et d'un plan de protection des paiements pour
faciliter la communication et la collaboration avec le client. La figure 1.1 montre l’interface
d’accueil de ce site.
Fonctionnalités
Critique
Points forts :
Bénin Télécoms: c’est l’opérateur historique des télécommunications au Bénin fondé en mai 2004
3
6
Rapport de projet fin d’études 2017/2018
Etude préalable
Points faibles :
1.3.2. Freelancer
Freelancer4 est une plateforme jeune créée en 2004 en Australie. Elle est la plateforme
grand public des freelances. Elle nous permet de poster des offres d’emploi ou postuler
à des offres. Elle est notamment utilisée par Microsoft, DHL 5, IBM 6 pour embaucher des
freelances.
Description
C’est une plateforme qui permet aux Clients de publier simplement une tâche qu’ils doivent
faire réaliser et par la suite ils vont recevoir des offres compétitives des freelances en
quelques minutes. Peu importe vos besoins, il y aura un freelance pour y répondre : depuis le
design Internet, le développement d'applications mobiles, les assistants virtuels, la fabrication
de produits et le design graphique (et bien plus encore) avec des paiements sûrs et de milliers
de professionnels évalués parmi lesquels choisir. Freelancer.com est la manière la plus simple
et la plus sûre de faire réaliser du travail en ligne. La figure 1.2 montre l’interface d’accueil de
ce site.
4
www.freelancer.com
5
DHL: C’est un groupe spécialisé en transport et logistique
6
IBM: c’est une société multinationale américaine
7
Rapport de projet fin d’études 2017/2018
Etude préalable
Fonctionnalités
Critique
Points forts :
• Le client ne doit payer pour le travail que lorsqu'il a été complété et lorsqu’il est
satisfait à 100 %.
• Le client reçoit gratuitement des offres de freelances talentueux en quelques
secondes.
8
Rapport de projet fin d’études 2017/2018
Etude préalable
• Le site est toujours disponible pour aider les utilisateurs. Le support est fait par
des vraies personnes disponibles 24/7.
• Possibilité de discussion en direct avec les freelances pour obtenir des mises à
jour permanentes concernant les progrès sur la tâche.
• Restez à jour et restez connecter lors de vos déplacements avec notre suivi des
heures et avec notre application mobile.
• Trouver des professionnels à qui nous pouvons faire confiance en parcourant des
exemples de leurs travaux antérieurs et en lisant leurs commentaires sur leur profil.
Points faibles :
1.3.3. Uprod’it
Description
Uprod’it est une plateforme qui permet aux freelances de mettre en avant leur identité
professionnelle, talents et compétences afin de trouver des opportunités d'affaires proposées
par les entreprises et les clients. Elle permet aux entreprises de promouvoir leur image et
produits, d'émettre des offres de travail pour freelances mais aussi de gérer collaborative ment
leur grands projets. Ainsi elle permet aux associations et organismes d'agrandir leur réseau de
connaissances, d'être constamment à jour sur les évènements du domaine et d'accroitre la
visibilité de leurs propres évènements. La figure 1.3 montre l’interface d’accueil de ce site.
7
www.uprodit.com
9
Rapport de projet fin d’études 2017/2018
Etude préalable
Fonctionnalités
Critique
Points forts :
10
Rapport de projet fin d’études 2017/2018
Etude préalable
Points faibles :
11
Rapport de projet fin d’études 2017/2018
Etude préalable
utilisateurs de déroulement de ses services. La création des profiles des employés, des agents
de supervision et des agents d’alerte se fait par l’Administrateur. L’Administrateur doit bien
examiner les documents de ses agents pour éviter le problème des agents qui ne sont pas
sérieux et garantir les droits de l’utilisateur et la sécurité des données. Alors notre solution
assure le bon déroulement de travail ainsi la satisfaction des utilisateurs. Le service devient
simple et facile, en plus du gain de temps et d’argent avec des droits réservés.
1.6. Conclusion
Dans ce chapitre nous avons présenté l’environnement de notre projet à partir de la
description de la société d’accueil en premier lieu, et en second lieu la présentation du cadre
du projet à travers la présentation de notre sujet et une étude des applications existantes, en
cernant les défaillances des systèmes existants et de conclure par la proposition d’une
solution.
12
Rapport de projet fin d’études 2017/2018
Spécification détaillée
D
ans ce chapitre, nous allons illustrer la méthodologie de travail et les langages
adoptés pour la conception. Ensuite Nous allons présenter les besoins fonctionnels
et non fonctionnels de notre application puis les diagrammes des cas d’utilisations
et les diagrammes de séquence système. Enfin la gestion du projet avec la méthodologie
Scrum.
Pour faciliter l’étude et la documentation de notre projet, nous devons passer par une phase de
modélisation du système.
La méthodologie est la démarche que nous allons prendre pour répondre aux différentes
exigences et permettre la construction de l’application, sur le plan fonctionnel et technique.
Nous avons ainsi adopté le modèle Scrum comme processus de travail et UML comme
langage de modélisation.
2.1.1 Scrum
Scrum [1] est un schéma d’organisation de développement de produits complexes. Il est défini
par ses créateurs comme un « cadre de travail holistique itératif qui se concentre sur les buts
communs en livrant de manière productive et créative des produits de la plus grande valeur
possible ». Il est considéré en plus comme un cadre méthodologique et non à proprement
parler comme une méthode agile. Elle s'applique toutefois théoriquement à n'importe quel
contexte où un groupe de personnes travaillant ensemble pour atteindre un objectif commun.
Le choix de cette technique pour ce projet s’est basé sur les trois piliers suivants:
• Transparence : Scrum met l'accent sur le fait d'avoir un langage commun entre
l'équipe et le management. Ce langage commun doit permettre à tout observateur
d'obtenir rapidement une bonne compréhension du projet.
• Inspection : À intervalle régulier, Scrum propose de faire le point sur les différents
artéfacts produits, afin de détecter toute variation indésirable.
• Adaptation : Si une dérive est constatée pendant l'inspection, le processus doit alors
être adapté. Scrum fournit des rituels, durant lesquels cette adaptation est possible. Il
14
Rapport de projet fin d’études 2017/2018
Spécification détaillée
Les acteurs :
• Le Scrum Master : qui veille au bon fonctionnement de l’équipe. Il est le gardien des
pratiques de Scrum, Serviteur de l’équipe mais il n’est pas un chef de projet.
15
Rapport de projet fin d’études 2017/2018
Spécification détaillée
Les réunions :
La vie d'un projet Scrum est rythmée par un ensemble de réunions clairement définies et
strictement limitées dans le temps (timeboxing):
Le Backlog de produit:
Tout dans Scrum tourne autour du Backlog du produit. Ce Backlog contient, sous forme de
liste, les choses que le client veut que l'équipe réalise. C'est en quelque sorte une « liste
priorisée d'exigences, d'histoires, de caractéristiques, ou autre ». Le Backlog de produit est
maintenu par le Product Owner. Chacun peut contribuer à collecter des éléments, mais c'est le
Product Owner qui les accepte finalement et c'est lui qui définit les priorités.
Le Backlog est élaboré avant le lancement des sprints, dans la phase de préparation (ou
sprint0). Il est utilisé pour planifier la release, puis à chaque sprint, lors de la réunion de
planification du sprint pour décider du sous-ensemble qui sera réalisé. C'est donc un outil
16
Rapport de projet fin d’études 2017/2018
Spécification détaillée
essentiel pour la planification. Mais il est aussi, par sa nature, un maillon de la gestion des
exigences, puisqu'on y collecte ce que doit faire le produit.
UML est utilisé pour spécifier, visualiser, modifier et construire les documents nécessaires au
bon développement d'un logiciel orienté objet. IL offre un standard de modélisation, pour
représenter l'architecture logicielle. Les différents éléments représentables sont :
Grâce aux outils de modélisation UML, il est également possible de générer automatiquement
tout ou partie du code d'une application logicielle, par exemple en langage Java, à partir des
divers documents réalisés. [2]
Cette étape de spécification des besoins qui est nécessaire avant la réalisation de notre
application afin d’exposer les fonctionnalités du système. Nous allons commencer alors par la
description des besoins fonctionnels et non fonctionnels.
17
Rapport de projet fin d’études 2017/2018
Spécification détaillée
Dans cette partie nous présentons la description des différentes actions qui peuvent être
effectuées par les acteurs.
Dans ce contexte, notre plateforme implémente les fonctionnalités suivantes :
• Inscription : Le système doit permettre à l’utilisateur de créer un compte à travers un
formulaire. Cette fonctionnalité lui permet d’avoir la visibilité sur le contenu de
l’application et avoir l’accès sur les ressources qu’elle contient.
• Gestion des abonnements : Dès qu’il est authentifié, le client peut acheter un ou
plusieurs abonnements. Chaque abonnement contient un nombre d’heures. Le client
alors estime le nombre d’heures nécessaires à la réalisation de son service et confirme
l’achat de l’abonnement. Il peut aussi consulter le nombre d’heures restantes.
• Gestion des services : une fois le client a acheté un abonnement, il peut postuler un
service, recevoir un service ou modifier, supprimer un service pas encore affecté à un
agent de service. Un agent de service peut consulter les services qui ont été envoyés
par le superviseur puis envoyer le service traité qui va être vérifié aussi par le
superviseur et envoyé au client. L’agent alerte contrôle le déroulement de service et
alerte le client lorsque le service est terminé et alerte l’employé lorsqu’il n’est pas
disponible. L’administrateur doit accepter ou refuser les services. Lorsqu’il accepte un
service, il va être envoyé automatiquement au superviseur pour le vérifier.
18
Rapport de projet fin d’études 2017/2018
Spécification détaillée
• Consulter site : un utilisateur peut visiter le site afin de consulter les informations sur
les services proposés ainsi que sur quelques services déjà réalisés.
• Consultation des heures de travail : L’agent de service consulte les heures de travail
et clique sur retirer pour avoir son argent. L’agent d’alerte peut consulter le nombre
d’heures achetées par le client.
• Gestion des notifications : Tous les utilisateurs peuvent envoyer ou recevoir une
notification. L’agent d’alerte et le superviseur peuvent envoyer une notification à tous
les utilisateurs alors que le client et l’agent de service peuvent envoyer une
notification seulement au superviseur. Le superviseur doit envoyer une notification au
client ou à l’agent de service lors du refus d’un service en expliquant la cause de ce
refus. Si l’agent de service a refusé un service, il doit expliquer aussi à travers une
notification. De même pour le client, il doit expliquer son refus d’un service traité.
• Consultation des états des services : L’agent alerte consulte le progrès des services.
• Le contact : Pour toute information ou besoin d’aide, les utilisateurs peuvent envoyer
un message contenant une description de leurs besoins.
Pour réussir notre projet, nous devrons tenir compte aussi des besoins non fonctionnels qui
spécifient des propriétés du système, telles que les contraintes liées à l’environnement et
l’implémentation, les exigences en matière de performance, de facilité de maintenance,
d’extensibilité et de fiabilité.
Dans cette partie nous avons opté de se baser sur la norme ISO 9126 pour crée le modèle de
qualité du système.
La norme ISO 9126 [3] définit et décrit une série de caractéristiques qualités d’un produit
logiciel (caractéristiques internes et externes, caractéristiques à l’utilisation) qui peuvent être
utilisées pour spécifier les exigences fonctionnelles et non fonctionnelles des clients et des
utilisateurs.
19
Rapport de projet fin d’études 2017/2018
Spécification détaillée
Comme le montre la figure 2.3, les principaux besoins non fonctionnels de notre application
d’après la norme ISO_9126 se résument dans les points suivants :
20
Rapport de projet fin d’études 2017/2018
Spécification détaillée
Facilité
Modificabilité Récupération Sécurité Adaptabilité
d'exploitation
Stabilité Exactitude
Testabilité
➢ Maintenabilité :
o Modificabilité : la facilité d’implémenter des modifications grâce à
l’architecture 3tiers qui assure une bonne structuration du projet.
o Stabilité : la capacité de l’application à maintenir la stabilité lors de la
modification et prévoir les erreurs qui bloque l’application.
o Testabilité : le projet doit être valide par rapport à la spécification.
➢ Fiabilité :
o Récupération : La possibilité de récupérer les données et les services défaites.
➢ Fonctionnalité :
o Sécurité : l’application doit protéger les informations et assuré la sécurité des
données de chaque utilisateur de façon que chaque utilisateur n’a l’accès
qu’aux données dont il possède le droit de consultation et/ou de modification.
o Exactitude : le résultat du projet doit être convenable et exacte aux besoins
spécifiés au niveau du cahier de charge.
➢ Portabilité :
o Adaptabilité : L'application doit être fonctionnelle sur n'importe quel type de
système d'exploitation et à n'importe quel environnement de travail.
21
Rapport de projet fin d’études 2017/2018
Spécification détaillée
➢ Utilisabilité :
o Facilité d’exploitation : le projet doit être ergonomique et bien organisé pour
assurer la facilité de la consultation et du contrôle.
Nous allons maintenant énumérer les acteurs susceptibles d’interagir avec le système. Tout
d’abord, nous commençons par définir ce qu’est un acteur.
Un acteur est une entité externe qui interagit avec le système, comme une personne humaine
ou un robot. Une même personne (ou robot) peut être plusieurs acteurs pour un système, c'est
pourquoi les acteurs doivent surtout être décrits par leur rôle, ce rôle décrit les besoins et les
capacités de l'acteur. Un acteur agit sur le système. L'activité du système a pour objectif de
satisfaire les besoins de l’acteur. Les acteurs sont représentés par un pictogramme humanoïde
(Stick man) sous-titré par le nom de l'acteur.
Nous allons maintenant identifier les différents acteurs et leurs interventions dans
l’application. Il existe 5 acteurs dans notre système :
• Administrateur
• Client
• Agent Service
• Agent Alerte
• Superviseur
22
Rapport de projet fin d’études 2017/2018
Spécification détaillée
utilisateur
Le diagramme de cas d'utilisation global représente les scénarios effectués par les différents
acteurs qui interagissent avec le système. La figure 2.5 présente le diagramme global de notre
plateforme.
23
Rapport de projet fin d’études 2017/2018
Spécification détaillée
contacter l'administrateur
utilisateur
<<include>>
gestion des services
gestion domaine
agent d'alerte
superviseur
agent de service
<<include>>
gestion abonnement
client
Dans cette partie nous allons détailler les cas d’utilisation relatifs à chaque acteur.
❖ Diagramme de cas d’utilisation relatif à l’administrateur :
L’administrateur peut gérer les comptes des utilisateurs (consulter, modifier, supprimer, créer
les comptes des employés (agent d’alerte, superviseur, agent de service)), consulter les
24
Rapport de projet fin d’études 2017/2018
Spécification détaillée
abonnements, consulter la liste des contacts, consulter les statistiques, consulter les services et
gérer les domaines et les sous-domaines. La figure 2.6 présente le diagramme de cas
d’utilisation relatif au superviseur.
Ajouter un domaine
Administrateur
Supprimer un domaine
<<extend>>
telecharger un service
consulter liste des abonnements
25
Rapport de projet fin d’études 2017/2018
Spécification détaillée
L’agent d’alerte peut contrôler le déroulement des services (consulter liste de service puis
envoyer une notification), envoyer et consulter des notifications consulter les profiles des
utilisateurs ainsi que les abonnements des clients.
La figure 2.7 présente le diagramme de cas d’utilisation relatif à l’agent d’alerte.
<<extend>>
consulter la liste des services
<<extend>>
consulter les profiles des clients
consulter la liste des utilisateurs
<<extend>>
modifier
consulter le profile
26
Rapport de projet fin d’études 2017/2018
Spécification détaillée
<<include>>
refuser
consulter les nouveaux services
<<extend>>
accepter
<<extend>>
telecharger un fichier
<<extend>>
<<extend>>
<<extend>>
consulter les services livrés
<<extend>> modifier
consulter le profile
L’agent de services peut gérer les services (vérifier les services en cas de refus, il faut créer
une notification contenant la cause), il peut aussi créer une notification au superviseur et
consulter ses notifications). Aussi, il peut consulter ses heures de travails et être pays pour
chaque heure.
27
Rapport de projet fin d’études 2017/2018
Spécification détaillée
<<extend>>
gérer les services
importer un fichier
accepter
refuser
<<extend>>
<<extend>>
payement
Consulter les heurs de travail
<<extend>>
modifier
Consulter le profile
Le client peut gérer les services (demander, consulter, accepter, refuser, modifier, supprimer
un service), il peut aussi créer une notification au superviseur et consulter ses notifications)
ainsi il peut consulter et acheter un abonnement.
28
Rapport de projet fin d’études 2017/2018
Spécification détaillée
<<extend>>
consulter le nombre d'heures d'un abonnement acheter un abonnement
<<extend>>
ajouter des taches
télécharger un fichier
gérer ses services <<extend>>
client
modifier
supprimer
refuser accepter
<<include>>
<<extend>>
consulter ses notifications
créer une notification
<<extend>>
consulter le profile modifier le profile
29
Rapport de projet fin d’études 2017/2018
Spécification détaillée
Titre Authentification
Scénario alternatif
A1 : Les coordonnées saisies sont incorrectes
L'enchainement démarre après le point 3 du scénario nominal
4. Un message d'erreur est affiché sur l'écran
5. Le système va afficher en boucle la page d'authentification et revient au point 1 du
scénario nominal jusqu'à ce que l'utilisateur réussisse l'authentification.
Scénario d’exception
E1. Le champ Identifiant est vide :
L'enchainement démarre après le point 3 du scénario nominal
Le système indique que le champ Identifiant est obligatoire.
30
Rapport de projet fin d’études 2017/2018
Spécification détaillée
Authentification
utilisateur systeme
Lancer la plateforme
formulaire de connexion
remplir formulaire
alt invalide
message d'erreur
valide
vérifier l'existance
message d'erreur
existe
afficher le profile
31
Rapport de projet fin d’études 2017/2018
Spécification détaillée
Le tableau 2.2 présente la description textuelle de cas d’utilisation d’achat d’un abonnement.
Le client doit avoir une connexion L’achat est effectué et ajouté dans la base de
internet et succès d’authentification. données.
Scénario nominal
1. Le client demande la page d’achat des abonnements.
2. Le système affiche la page d’achat des abonnements.
3. Le client remplit le formulaire d’achat.
4. Le client choisit le bouton acheter.
5. Le système vérifie la validité des champs remplis.
6. Le système affiche le nombre d’heures achetées.
Scénario alternatif
A1 : Les champs saisies sont incorrectes.
L'enchainement démarre après le point 5 du scénario nominal
6. Le système indique que les champs ne sont pas valides et affiche un message d'erreur.
7. Le système invite l'utilisateur à faire une autre tentative de saisie.
8. Le scénario nominal reprend au point 3.
Scénario d’exception
E1. Les champs Obligatoires sont vides :
L'enchainement démarre après le point 5 du scénario nominal :
6. Le système indique que les champs sont obligatoires.
7. Le système donne la possibilité à l'utilisateur de refaire la saisie.
Tableau 2.2: Description textuelle du cas d'utilisation "Acheter un abonnement"
32
Rapport de projet fin d’études 2017/2018
Spécification détaillée
acheter un abonnement
client système
ref
authentification()
formulaire d'achat
remplir formulaire
alt invalide
message d'erreur
valide
afficher le nouveau nombre d'heures
Le tableau 2.3 présente la description textuelle de cas d’utilisation de demande d’un service.
Acteurs Client
33
Rapport de projet fin d’études 2017/2018
Spécification détaillée
Scénario alternatif
A1 : Les champs saisis sont incorrectes.
L'enchainement démarre après le point 4 du scénario nominal
5. Le système indique que les champs ne sont pas valides et affiche un message d'erreur.
6. Le système invite l'utilisateur à faire une autre tentative de saisie.
7. Le scénario nominal reprend au point 3.
Scénario d’exception
E1. le nombre d’heure introduit pour le service est supérieur au nombre d’heure achetés.
L'enchainement démarre après le point 4 du scénario nominal :
5. Le système indique que le choix de nombre d’heure est invalide.
6. Le système donne la possibilité à l'utilisateur de refaire la saisie.
34
Rapport de projet fin d’études 2017/2018
Spécification détaillée
Demander un service
client système
ref
authentification()
remplir formulaire
valide
verifier nombre d'heures
alt invalide
message d'erreur
valide
afficher la page d'ajout d'une tache et d'un fichier
35
Rapport de projet fin d’études 2017/2018
Spécification détaillée
Acteurs Superviseur
Le superviseur doit avoir une connexion Le service est bien accepté par le superviseur.
internet et succès d’authentification.
Scénario nominal
1. Le superviseur demande la page des nouveaux services.
2. Le système affiche la page des nouveaux services.
3. Le superviseur choisit le bouton afficher
4. Le système affiche le service détaillé.
5. Le superviseur vérifie le service.
6. Le superviseur choisit le bouton accepter.
7. Le système affiche la liste des agents services.
8. Le superviseur affecte le service à un agent service.
9. Le service est envoyé à l’agent service.
Scénario alternatif
A1 : Le superviseur choisit le bouton refuser.
L'enchainement démarre après le point 5 du scénario nominal
6. Le superviseur choisit le bouton refuser
7. Le système invite l'utilisateur à faire créer une notification.
Tableau 2.4: Description textuelle du cas d'utilisation "Vérifier un service"
36
Rapport de projet fin d’études 2017/2018
Spécification détaillée
Demander un service
superviseur système
ref
authentification()
vérifier le service
remplir formulaire
notification envoyé
accepter
liste des agents de service
37
Rapport de projet fin d’études 2017/2018
Spécification détaillée
Scénario alternatif
A1 : Les champs Obligatoires sont vides.
Le schéma de la figure 2.15 correspond à la description textuelle cas d’utilisation « créer une
notification».
38
Rapport de projet fin d’études 2017/2018
Spécification détaillée
utilisateur système
ref
authentification()
remplir le formulaire
alt invalide
message d'erreur
valide
notification envoyée
Tout au long du projet, chaque semaine l’un des membres de l’équipe joue le rôle d’un Scum
Master. C’est la personne qui doit assurer le bon déroulement des différents sprints du release
et qui doit impérativement maitriser Scrum.
Le Product Owner représente la personne qui porte la vision du produit à réaliser. Il s’agit
généralement d’un expert dans le domaine. Au cours du notre projet le Product Owner est Mr
«Chargui Tayeb» qu’il est notre encadrant de stage et il effectue le Backlog du produit. La
figure 2.16 illustre l’interface Scrumwise représentant l’équipa de travail.
2.5.1Backlog du produit :
Le backlog du projet est l’artefact le plus important de Scrum, c’est l’ensemble des
caractéristiques fonctionnelles ou techniques qui constituent le produit souhaité. Les
caractéristiques fonctionnelles sont appelées des histoires utilisateur (user story) et les
caractéristiques techniques sont appelées des histoires techniques (technical story).
L’importance de la story est définie par la priorité MOSCOW tel que :
M: Must, S: Should, C: Could, W: Won’t
Le Tableau 2.6 résume le Backlog du projet qui est considéré comme une définition des
besoins fonctionnels sous forme de « User Story ». Un utilisateur désigne un superviseur, un
agent d’alerte, un agent service et un client.
40
Rapport de projet fin d’études 2017/2018
Spécification détaillée
41
Rapport de projet fin d’études 2017/2018
Spécification détaillée
42
Rapport de projet fin d’études 2017/2018
Spécification détaillée
La réunion de planification des sprints est l’événement le plus important dans Scrum. Le but
de cette réunion est de préparer le planning de travail et d’identifier le backlog des sprints.
L’un des produits de cette réunion est le choix de la durée des sprints qui se diffère selon la
complexité du projet et la taille de l’équipe. Puisqu’à la fin de chaque release, le client doit
avoir un produit exploitable et exécutable pour tester l’application et accélérer le processus de
travail, nous avons choisi de développer deux releases. La figure 2.17 présente le planning du
travail.
2.6. Conclusion
Dans ce chapitre, nous avons représenté la méthodologie adoptée et présenté les besoins de
l’utilisateur. Ensuite nous avons fait une description détaillée des différents cas d’utilisation
43
Rapport de projet fin d’études 2017/2018
Spécification détaillée
de notre produit ainsi que les différents besoins non fonctionnels que nous avons sélectionnés
d’après la norme ISO 9126. Dans le chapitre suivant, nous passerons à la phase de conception
permettant d'aborder l'aspect architecturale, technique et graphique du système.
44
Rapport de projet fin d’études 2017/2018
Spécification détaillée
45
Rapport de projet fin d’études 2017/2018
Conception de la solution
fin de décrire les différents besoins de notre projet, nous allons passer à l’étape de
Les choix architecturaux d'une application sont décisifs dès qu'ils interviennent sur les
performances, le temps de développement et bien sûr le coût. L’architecture de notre
application est une architecture 3-tiers qui est composée de trois niveaux :
• Contrôleur : Reçoit les actions de l’utilisateur et gère la répartition des traitements entre la
vue et le modèle. Il sert de base à récupérer les informations, de les traiter en fonction des
paramètres demandés par la vue (par l’utilisateur), puis de renvoyer à la vue les données afin
d’être affichées. C’est donc l’élément qui va utiliser les données pour les envoyer à la vue.
• Vue : Est la partie graphique, dans laquelle seul l’affichage est géré. Elle ne contenant que
les informations liées à l’affichage, la vue se contente d’afficher le contenu qu’elle reçoit sans
avoir connaissance des données. En bref, c’est l’interface homme machine de l’application.
[4]
46
Rapport de projet fin d’études 2017/2018
Conception de la solution
Le but de cette section est de détailler la conception de notre projet en commençant par la
représentation statique du système et par la suite nous détaillerons quelques scénarios en
utilisant une représentation dynamique de nos modules.
Cette partie sera consacrée à la description détaillée des classes, les règles de gestion et
ensuite les diagrammes de classes pour détailler les différents rôles et associations entre les
modules.
Une classe représente plusieurs attributs ayant des différentes natures. Les classes de notre
application sont décrites dans le tableau 3.1.
47
Rapport de projet fin d’études 2017/2018
Conception de la solution
Classe Description
La classe utilisateur est identifiée par sa clé
utilisateur primaire id et elle a pour attributs :
- id : int Nom, prénom, email, tel, date de naissance,
- nom : String
- prénom : String profession, adresse, image.
- email : String
- tel : int
- date de naissance : Date
- profession : String
- adresse : String
- image : String
+ afficher ()
+ modifier ()
...
48
Rapport de projet fin d’études 2017/2018
Conception de la solution
49
Rapport de projet fin d’études 2017/2018
Conception de la solution
Règles de gestion
Le diagramme de classe étudié est basé sur les règles de gestion suivantes :
R8 : Un agent de service peut envoyer 0 ou plusieurs service pour bénificier d’un payement ;
Diagramme de classe
51
Rapport de projet fin d’études 2017/2018
Conception de la solution
sous_domaine
tâche domaine
- id_sousdom : int
- id_tache : int - id_domaine : int
- libelle : String
- tache : String - libelle : String
1..1 + afficher ()
+ afficher () + afficher () 0..* + modifier ()
+ modifier () + modifier ()
+ supprimer ()
+ supprimer () + supprimer ()
+ ajouter ()
+ ajouter () + ajouter () abonnement
... ...
- id_ab : int
0..* 1..1 - nb_heure : int
+ acheter ()
+ afficher ()
...
1..1 0..*
1..1
fichier service
0..* 1..1
- id_fichier : int - id-service : int
- lien : String - nom : String
- heures : int
- description : String
- etat : String
0..* - progrés : int 0..* payement
+ afficher () - id_p : int
+ modifier () - nb_heure : int
+ supprimer () + acheter ()
1..1 + ajouter ()
+ afficher ()
...
1..* 0..* 0..* 1..1
client
administrateur superviseur agent_alerte agent_service - id_cl : int
- id_ad : int - id_sup : int - id_aal : int - id_aser : int + afficher ()
+ afficher () + afficher () + afficher () + modifier ()
+ supprimer () + modifier () + ajouter () + supprimer ()
1..* + modifier () + supprimer () + supprimer ()
+ ajouter () + ajouter () + modifier ()
0..*
utilisateur
- id : int
- nom : String 1..1
0..* 0..* 1..1 - prénom : String
- email : String
0..*
- tel : int
contact - date de naissance : Date
- id_contact : int - profession : String notification
- nom : String - adresse : String - id_notification : int
- email : String - image : String - sujet : String
- sujet : String + afficher () - message : String
- message : String
+ modifier () + ajouter ()
+ ajouter () ... + afficher ()
+ afficher () ...
...
Dans la partie précédente, nous avons exprimé les différentes composantes de notre
application en se basant sur la description des objets organisés dans un diagramme de classes.
Dans cette partie nous allons présenter l’aspect dynamique de notre application à travers la
description de quelques scénarios. Nous allons employer pour cette fin quelques diagrammes
52
Rapport de projet fin d’études 2017/2018
Conception de la solution
d’activités. Le diagramme d'activité est un moyen graphique qui permet de donner une vision
globale de l'ensemble des scénarios possibles. Il aide à voir un peu plus clair le déroulement
du processus du progiciel.
client
inscription
authentification
valider
53
Rapport de projet fin d’études 2017/2018
Conception de la solution
authentification
[accépter]
vérifier
[refuser]
vérification
[refuser]
[accépter]
consulter notifications créer notification
3.3.1 Maquette
Une maquette est une représentation partielle d'un objet. Elle permet la création graphique
d'une interface. Nous avons établi les maquettes de chaque interface avant de se lancer dans le
54
Rapport de projet fin d’études 2017/2018
Conception de la solution
développement. On en représente ainsi quelques-unes qui ont été dessinées depuis le site
mybalsamiq.
Les maquettes illustrées dans les figures ci-dessous présentent l’interface d’un compte client,
la page d’achat d’un abonnement, La page de demande d’un service et la page de la liste des
services.
56
Rapport de projet fin d’études 2017/2018
Conception de la solution
Notre application comporte cinq sessions : une session pour l‘administrateur, une autre pour
le client, une 3éme pour l’agent de service, une 4éme pour superviseur et une dernière pour le
l’agent d’alerte. Nous avons choisi pour notre système une navigation d’une structure
pyramidale qui offre un accès par niveaux hiérarchique bidirectionnel et qui est riche en
interactivité.
La figure 3.10 représente le schéma de navigation du système dont l’utilisateur est le client.
57
Rapport de projet fin d’études 2017/2018
Conception de la solution
La figure 3.12 représente le schéma de navigation du système dont l’utilisateur est l’agent
d’alerte.
58
Rapport de projet fin d’études 2017/2018
Conception de la solution
La figure 3.13 représente le schéma de navigation du système dont l’utilisateur est l’agent de
service.
Couleur : Pour assurer la lisibilité et la clarté de l’information, nous allons utiliser cette
palette de couleurs
Forme: Les principales formes de la charte graphique de notre application sont les rectangles.
59
Rapport de projet fin d’études 2017/2018
Conception de la solution
Echelle de mesure :
Un jour = 8 heures.
Un mois = 4 semaines.
Le sprint est le cœur de Scrum. Il s'agit d'un bloc de temps durant lequel un incrément du
produit sera réalisé. Ce sprint est alors découpé en tâches réalisables sur un temps raisonnable
pour voir l'évolution du travail.
Avant de se lancer dans un sprint, l'équipe Scrum doit définir le but de ce dernier. Suite à une
conversation entre le Product Owner et l'équipe Scrum nous avons décidé le but suivant pour
le premier sprint achever la partie inscription, authentification et gestion des utilisateurs.
60
Rapport de projet fin d’études 2017/2018
Conception de la solution
Suite à une réunion avec le Product Owner nous avons décidé concernant le deuxième sprint
d'achever la partie « gestion des abonnements et gestion des domaines »
61
Rapport de projet fin d’études 2017/2018
Conception de la solution
Consultation des 4h
abonnements des
clients par l’agent
d’alerte
Virement pour le 16h
nombre d’heure de
travail par l’agent de
service.
Consultation des 4h
abonnements des
clients (back end).
Création d’un domaine (back 5h
end).
Modification d’un domaine 5h
(back end).
Suppression d’un domaine 5h
(back end).
Consultation de la liste des 5h
domaines (back end).
Gestion des domaines
Création d’un sous domaine 5h
(back end).
Modification d’un sous 5h
domaine (back end).
Suppression d’un sous 5h
domaine (back end).
Consultation de la liste des 5h
sous domaines (back end).
Tableau 3.3: Backlog du sprint2
62
Rapport de projet fin d’études 2017/2018
Conception de la solution
Suite à une réunion avec le Product Owner nous avons décidé concernant le troisième sprint
d'achever la partie « Gestion des abonnements et domaines». Le tableau 3.4 résume le backlog
du sprint 3 de notre application :
63
Rapport de projet fin d’études 2017/2018
Conception de la solution
Suite à une conversation entre le Product Owner et l'équipe Scrum nous avons décidé le but
suivant pour le quatrième sprint « contact et statistique»
64
Rapport de projet fin d’études 2017/2018
Conception de la solution
3.5. Conclusion :
Dans ce chapitre, nous avons répondu à toutes les questions concernant la manière de
réalisation du système à développer. Nous avons commencé par une conception technique de
notre système. Par la suite nous avons détaillé la conception à travers quelques diagrammes
d’activité. Et nous avons présenté la conception graphique pour arriver enfin à la description
des sprints à travers les backlogs. Dans le prochain chapitre, nous allons présenter
l’environnement de développement matériel et logiciel ainsi que la description et l’évaluation
de la qualité travail réalisé.
65
Rapport de projet fin d’études 2017/2018
Réalisation et tests
66
Rapport de projet fin d’études 2017/2018
Réalisation et tests
L
a phase de réalisation est l’étape la plus importante dans le cycle de vie de notre
application puisqu’elle représente le résultat des étapes précédentes. Au cours de ce
chapitre, nous allons décrire l'environnement de travail logiciel et matériel
permettant la réalisation de notre application. Par la suite, nous présenterons le travail réalisé
et les résultats obtenus.
Au cours de cette phase nous allons présenter l'environnement matériel et logiciel utilisés
pour le développement de notre application.
Afin de réaliser notre application, nous avons travaillé sur deux ordinateurs personnels dont la
configuration est la suivante :
Première machine :
• Fabricant : HP
• Processeur : Intel® Core ™ i5-5200U CPU @2.20 GHz.
• Mémoire installée (RAM) : 4,00 Go.
• Type de système : Système d’exploitation 64 bits.
Deuxième machine :
• Fabricant : ASUS
• Processeur : Intel® Core™ i7-7500U, up @ 3.50GHz.
• Mémoire installée (RAM) : 8,00 Go.
• Type de système : Système d’exploitation 64 bits
67
Rapport de projet fin d’études 2017/2018
Réalisation et tests
Serveur de développement : MySQL 10.1.13 : utilisé pour la gestion de la base des données.
Outils de conception : Power AMC : est un logiciel de conception créé par la société SAP,
qui permet de modéliser les traitements informatiques et leurs bases de données associées.
Gestion de projet : Scrumwise : application web utilisée pour la tenue du tableau de tâches
de Scrum et pour l’échange de fichiers entre nous.
Choix technique
Dans cette partie, nous allons justifier les choix techniques du langage de programmation, de
la plateforme de développement et des Framework utilisés.
68
Rapport de projet fin d’études 2017/2018
Réalisation et tests
Le motif MVC a été créé dans le but de mettre en œuvre des interfaces utilisateur. Certains
détails sont alignés avec le langage Smalltalk, mais les grandes lignes peuvent s'appliquer à
n'importe quel environnement.
69
Rapport de projet fin d’études 2017/2018
Réalisation et tests
Les raisons qui nous ont amené à adopter Laravel 8comme technologie sont :
Choix de la technologie
Le choix des outils dans le développement de notre plateforme est basé sur l’avancement des
nouvelles technologies dans le domaine de développement web.
Microsoft SQL server 2005 est un système de gestion de base de données relationnelle
considérée comme solution complète de base de données pour le développement des
applications web. Nous avons choisi Microsoft SQL server 2005 pour ses avantages. Cette
solution est entièrement conçue pour le web. Ensuite, Microsoft SQL server 2005, d’après le
site officiel de Microsoft, est un outil de base de données pour les applications web le plus
performant actuellement. Enfin, c’est pour ces raisons que nous avons choisi Microsoft SQL
Server 2005.
8
www.laravel.com
70
Rapport de projet fin d’études 2017/2018
Réalisation et tests
• Sublime Texte 3
Sublime Text [8] est un éditeur de texte générique codé en C++ et Python, disponible sur
Windows, Mac et Linux. Le logiciel a été conçu tout d'abord comme une extension pour
Vim9, riche en fonctionnalités.
Depuis la version 2.0, sortie le 26 juin 2012, l'éditeur prend en charge 44 langages de
programmation majeurs, tandis que des plugins sont souvent disponibles pour les langages
plus rares.
Notre site web a été développé à l’aide de l’outil sublime text pour lequel nous avons opté car
il est de plus en plus utilisé dans l’industrie. En effet, cet outil de programmation présente un
large avantage car les programmes peuvent être exécutés sur différente systèmes
d’exploitation et architectures matérielles. La liste ci-dessous vous présente quelques
avantages de sublime text.
Langages à utiliser
• HTML5 CSS3 :
HTML5 désigne la dernière version du langage de développement web HTML. Il définit deux
syntaxes de DOM : HTML5 et XHTML5. Cette version apporte de nouvelles possibilités en
termes de création d’« applications Web riches » bénéficiant de l'intégration d'éléments
multimédias et d'interactivité Il est généralement appris en parallèle du CSS et plus
précisément dans notre cas avec le CSS3, ce dernier permet en effet d’animer des éléments
HTML tout en effectuant des rotations, des transitions ou des changements.
9
Vim : c’est un logiciel permettant la manipulation de fichiers texte.
71
Rapport de projet fin d’études 2017/2018
Réalisation et tests
• JavaScript :
C’est un langage de programmation de scripts principalement utilisé dans les pages web
interactives. Ce langage permet une interaction avec l'utilisateur en fonction de ses actions.
• PHP :
Est un langage de programmation libre, principalement utilisé pour produire des pages web
dynamiques via un serveur, mais pouvant également fonctionner comme n'importe
quel langage interprété de façon locale. PHP est un langage impératif orienté objet.
application
modèle
controlleur
vue
http
72
Rapport de projet fin d’études 2017/2018
Réalisation et tests
La première interface vue au démarrage du Plateforme est représentée dans la figure 4.4. A
travers cette page l’utilisateur peut choisir se connecter ou bien s’inscrire en tant que client.
73
Rapport de projet fin d’études 2017/2018
Réalisation et tests
74
Rapport de projet fin d’études 2017/2018
Réalisation et tests
A travers la page d’inscription l’utilisateur peut créer un compte en tant que client pour qu’il
puisse profiter de nos services. La figure 4.5 représente l’interface d’inscription.
La figure 4.6 illustre l’interface d’authentification. Le rôle de cette interface est de limiter
l’accès aux utilisateurs. L’authentification concerne 5 utilisateurs : Administrateur, agent
d’alerte, agent de service, superviseur et client.
75
Rapport de projet fin d’études 2017/2018
Réalisation et tests
A travers L’interface d’accueil de son compte représenté dans la figure 4.7, un client peut
s’informer sur ses fonctionnalités.
76
Rapport de projet fin d’études 2017/2018
Réalisation et tests
La figure 4.8 représente la page d’achat d’un abonnement. Elle est la première étape qu’un
client doit la réalisée pour qu’il puisse demander son service.
77
Rapport de projet fin d’études 2017/2018
Réalisation et tests
La figure 4.9 représente l’interface de demande d’un service. Suite à l’achat d’un abonnement
le client peut demander un service.
La page de la figure 4.10 représente l’interface de la liste des notifications. A travers cette
page le client peut consulter ainsi que créer des notifications pour le superviseur.
78
Rapport de projet fin d’études 2017/2018
Réalisation et tests
Puisque le superviseur est le seul responsable à la vérification des services, nous avons
développés des interfaces qui lui permettent de gérer les services. La figure 4.11 représente
l’interface de la liste des services.
Si le superviseur choisit le bouton afficher d’un nouveau service en attente alors une page de
vérification de service s’affiche. Cette interface permet au superviseur de consulter les détails
de services, les taches et les fichiers envoyés avec le service puis il doit choisir accepter ou
refuser le service. La figure 4.12 montre l’interface de consultation d’un nouveau service.
79
Rapport de projet fin d’études 2017/2018
Réalisation et tests
Si le superviseur choisit le bouton accepter le service va être envoyé à l’agent de service sinon
s’il choisit le bouton refuser, il va être redirigé vers une interface de création des notifications
pour exprimer la cause de refus. La figure 4.13 représente l’interface de création d’une
notification.
80
Rapport de projet fin d’études 2017/2018
Réalisation et tests
Suite à l’acceptation de service par le superviseur l’agent de service consulte aussi la liste des
nouveaux services, il peut accepter ou refuser .En cas d’accepte, il va être dirigé vers la page
de traitement de service .Dans cette page l’agent de service modifie le progrès de service à
chaque avancement de travail pour donner un renseignement sur l’état de service. Lorsque le
progrès atteint 100% l’agent de service peut importer le service et l’envoyer. La figure 4.14
illustre l’interface de traitement d’un service.
Si le client accepte le service un nombre d’heure va être ajouté aux heures de travails du
l’agent de service pour qu’il puisse être payé. La figure 4.15 représente l’interface de
payement.
81
Rapport de projet fin d’études 2017/2018
Réalisation et tests
Chaque utilisateur peut consulter ainsi modifier son profile. La figure 4.16 corresponde à
l’interface de modification de profile de l’agent de service.
82
Rapport de projet fin d’études 2017/2018
Réalisation et tests
L’agent d’alerte peut consulter la liste des abonnements .Si un client dispose de 0 nombre
d’heure l’agent d’alerte peut crée une notification pour demander a cet client d’acheter un
abonnement. La figure 4.17 illustre l’interface de la liste des abonnements.
83
Rapport de projet fin d’études 2017/2018
Réalisation et tests
L’administrateur est celui qui crée les comptes des employés (agent d’alerte, agent de service,
superviseur). La figure 4.19 monte l’interface de création des employés.
L’administrateur peut aussi consulter ainsi que ajouter les domaines a travers l’interface de la
liste des domaines illustré dans la figure 4.20.
84
Rapport de projet fin d’études 2017/2018
Réalisation et tests
Afin d’atteindre une bonne qualité de processus, nous avons adopté la méthodologie Scrum
dans la gestion de notre projet.
A travers le tableau de tâches qui représente le backlog de sprint, élaboré lors de la réunion de
planification et qui sert à montrer l’avancement des travaux pendant le sprint.
Egalement par, le burndown chart qui est un indicateur temporel de l'évolution des tâches en
cours dans le Sprint, qui permet d'avoir une prévision de l'état d'avancement à la fin de la
période d'activité.
Nous allons présenter les différents tableaux de tâches de chaque sprint du premier release,
ainsi que les burndown chart.
Tableaux de tâches
Les figures 4.21 et 4.22 représentent les tableaux des taches qui correspondent aux sprint1 et
sprint2.
85
Rapport de projet fin d’études 2017/2018
Réalisation et tests
Comme le montre la figure 4.23, nous remarquons que le premier sprint s’est terminé dans les
délais adéquats mais l’effort estimé restant est inférieur à celui réel tout au long du sprint ce
qui montre que nous n’avons pas bien estimé l’effort.
100
80 Remaining
60 Theorical
40
20
0
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
Days
86
Rapport de projet fin d’études 2017/2018
Réalisation et tests
Dans le sprint 2 illustré dan la figure 4.24, les taches ont été achevées à temps et aux deux
derniers jours du sprint le travail s’est bien passé puisque l’effort restant estimé est très proche
de celui réel, mais au début du sprint l’effort estimé restant est inférieur à celui réel.
50
40 Remaining
30 Theorical
20
10
0
1 2 3 4 5 6 7 8 9 10 11
Days
Nous allons présenter les différents tableaux de tâches de chaque sprint du deuxième release,
ainsi que les burndown chart.
Tableaux de tâches
Les figures 4.25 et 4.26 représentent les tableaux des taches qui correspondent aux sprint3 et
sprint4.
87
Rapport de projet fin d’études 2017/2018
Réalisation et tests
Ce sprint n’est pas achevé dans les délais adéquats, nous remarquons qu’au début l’effort
estimé restant est très proche à celui réel mais aux cinq derniers jours l’effort estimé restant
est devenue inferieur à celui réel à cause des obstacles que nous avons rencontré et des
blocages au niveau de l’implémentation du code. Ce qui déduit que l’estimation proposée ne
88
Rapport de projet fin d’études 2017/2018
Réalisation et tests
correspond pas à l’effort fourni réellement. La figure 4.27 montre le burndown chart du
sprint3.
200
Scrum units
150
Remaining
100
Theorical
50
0
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
Days
Au niveau de ce sprint, nous remarquons qu’il s’est terminé dans les délais adéquats, ainsi que
l’effort estimé restant est très proche de ce celui réel. La figure 4.28 illustre le Burndown
chart du sprint4.
25
20 Remaining
15 Theorical
10
5
0
1 2 3 4 5 6
Days
89
Rapport de projet fin d’études 2017/2018
Réalisation et tests
4.4. Conclusion
Dans ce chapitre, nous avons présenté les aspects de réalisation de notre système à travers une
description de l’environnement de travail matériel et logiciel et une présentation du
diagramme de déploiement.
Nous avons également présenté un scénario de test avec des imprimes écrans afin d’illustrer le
fonctionnement de notre application. Dans la dernière partie du chapitre nous avons
représenté l’évaluation de la qualité du processus de développement qui contient les revues
des releases dans laquelle nous trouvons les tableaux de tâches et une analyse des burndown
chart de chaque release.
90
Rapport de projet fin d’études 2017/2018
Conclusion générale
Conclusion générale
Dans le cadre de notre projet de fin d’études, nous avons conçu et développé une plateforme
Freelance. Nous sommes arrivés à réaliser les objectifs globaux que nous avons mis au début
de la période de stage au sein de 360dev. Bien que nous avons rencontré des difficultés, les
chemins que nous avons entrepris pour les dépasser constituent des signes de satisfaction. En
se basant sur la formation que nous avons acquise durant notre cursus universitaire ainsi que
les nouvelles notions que nous avons pu assimiler au cours de notre stage, nous sommes
arrivés à réaliser les objectifs que nous nous somme fixés en respectant la durée prévue pour
la mise en place de notre plateforme.
La mission qui nous a été confiée consistait à concevoir et à réaliser une plateforme Freelance
assurant la réalisation des services demandés par les clients dans des conditions favorables et
avec des exigences de qualité. De plus, elle offre des opportunités d'emploi pour les nouveaux
diplômés. Ainsi qu’elle est un moyen du gain de temps et d’argent. Le choix de la technologie
Laravel ainsi que le choix de l’architecture trois tiers sont des choix stratégiques et éclairés de
la part des dirigeants de 360dev sur la base d’arguments essentiellement fonctionnels.
Nous avons essayé d’avancer dans notre travail d’une manière incrémentale en utilisant la
méthodologie Scrum. Et dans notre cas le projet a été réalisé dans 2 releases, le premier divisé
en 2 sprints et le deuxième aussi en 2 sprints.
Tout au long de l’élaboration du projet, nous avons rencontré plusieurs difficultés aussi bien
sur le niveau conceptuel que sur le niveau de la réalisation. Mais tout de même, nous avons
réussi à les surpasser pour aboutir à la fin un système opérationnel. De plus, les apports de ce
projet sont nombreux. En premier lieu, sur un niveau conceptuel, le projet innove en explorant
de nouvelles technologies. Et en deuxième lieu au niveau de la réalisation, nous avons su
exploiter à fond les possibilités offertes par le développement objet.
Certes, cette Plateforme ne prendra pas fin avec l’achèvement du présent projet mais,
plusieurs améliorations restent envisageables. Ces dernières touchent essentiellement les
niveaux avancés de la sécurité, essentiellement au niveau des services web, le moteur de
règles et le reporting des données.
91
Rapport de projet fin d’études 2017/2018
Conclusion générale
Ce projet était une réelle occasion pour intégrer une équipe compétente et professionnelle. Les
situations de blocage, les problèmes techniques et la pression des délais nous ont appris à
mieux gérer le temps, à adopter une méthodologie de travail et à respecter les spécifications
92
Rapport de projet fin d’études 2017/2018
Webographie
[1] https://www.agiliste.fr/introduction-methodes-agiles/ (consulté le 23/02/2018)
[6] http://www.guillaumevoisin.fr/internet/larchitecture-mvc-dans-le-developpement-dun-
site-internet (consulté le 02/05 /2018)
[7] https://openclassrooms.com/courses/decouvrez-le-framework-php-laravel/presentation-
generale-13 (consulté le 13/05 /2018)
93
Rapport de projet fin d’études 2017/2018