Académique Documents
Professionnel Documents
Culture Documents
Intitulé du stage
Développement d’une application de design d’intérieur
Réalisé par
Rabah Feriel
Entreprise d’accueil
Bridges Engineering
Encadrant Entreprise
Mr Wassim Medini
Encadrant SESAME
Mme Sameh Bennour
Année Universitaire
2021-2022
Dédicaces
A ma chère mère
encouragés et soutenues
Je tiens à exprimer ma gratitude et mes remerciements à tous ceux qui m’ont guidé, aidé et
supervisé durant l'élaboration de ce projet dont notamment :
Mme. Bennour Sameh, mon encadrant pédagogique pour son soutien, sa disponibilité et ses
conseils tout au long de la réalisation de ce travail, et aussi pour sa démarche pédagogique qui m’a
aidé à cerner ma problématique.
Mr. Medini Wassim, mon encadrant technique pour son encouragement, ses conseils, et son soutien
qu’il m’a apporté pour la réalisation de ce projet. Je suis également reconnaissante pour toutes les
informations qu’il m’a transmises
Aux membres du jury, qui me font un grand honneur en acceptant d’évaluer ce modeste travail
Table des matières
WEBOGRAPGIE____________________________________________________________________ 53
Table des figures
Figure 1 : Site BuildShop ________________________________________________________________ 13
Figure 2 : Site Houzz ___________________________________________________________________ 14
Figure 3 : Site Havenly __________________________________________________________________ 15
Figure 4 : Site Block Renovation __________________________________________________________ 16
Figure 5 : Schéma d’un cycle de SCRUM ___________________________________________________ 17
Figure 6 : Diagramme de cas d'utilisations global ____________________________________________ 21
Figure 7 : Diagramme de classe global _____________________________________________________ 23
Figure 8 : La pile "MEAN STACK" ________________________________________________________ 25
Figure 9 : Architecture du système _________________________________________________________ 29
Figure 10 : Diagramme de cas d'utilisation d'inscription _______________________________________ 32
Figure 11 : Diagramme de séquence du scénario d'inscription ___________________________________ 33
Figure 12 : Page d'accueil _______________________________________________________________ 34
Figure 13 : Pop-up d'inscription __________________________________________________________ 35
Figure 14 : Champs non remplis __________________________________________________________ 35
Figure 15 : Adresse mail déjà existante _____________________________________________________ 36
Figure 16 : Diagramme de cas d'utilisation d'authentification ___________________________________ 36
Figure 17 : Diagramme de séquence du scénario d'authentification _______________________________ 38
Figure 18 : Pop-up d'authentification ______________________________________________________ 39
Figure 19 : Champs non valides ___________________________________________________________ 39
Figure 20 : Diagramme de cas d'utilisation de gestion du profil __________________________________ 40
Figure 21 : Diagramme de séquence du scénario de gestion de profil _____________________________ 43
Figure 22 : Diagramme de séquence de "consulter listes des profils des architectes __________________ 44
Figure 23 : Formulaire du profil __________________________________________________________ 44
Figure 24 : Formulaire de profil éditable ___________________________________________________ 45
Figure 25 : Pop-up après création de profil __________________________________________________ 45
Figure 26 : Profil crée __________________________________________________________________ 46
Figure 27 : Pop-up après modification de profil ______________________________________________ 46
Figure 28 : Liste des profils des architectes __________________________________________________ 47
Figure 29 : Dashboard de l'architecte ______________________________________________________ 48
Figure 30 : Diagramme de séquence de prise de rendez-vous ____________________________________ 49
Figure 31 : Prise de rendez-vous __________________________________________________________ 50
Liste des tableaux
Tableau 1 : Critiques techniques de BuildShop _______________________________________________ 14
Tableau 2 : Critiques techniques de Houzz __________________________________________________ 14
Tableau 3 : Critiques techniques de Havenly _________________________________________________ 15
Tableau 4 : Critiques techniques de Block Renovation _________________________________________ 16
Tableau 5 : Description du diagramme de cas d'utilisation globale _______________________________ 22
Tableau 6 : Description du diagramme de classes _____________________________________________ 23
Tableau 7 : Backlog produit ______________________________________________________________ 31
Tableau 8 : Scénario d'inscription _________________________________________________________ 32
Tableau 9 : Scénario d'authentification _____________________________________________________ 37
Tableau 10 : Scénario de création de profil __________________________________________________ 41
Tableau 11 : Scénario de modification de profil ______________________________________________ 41
Tableau 12 : Scénario du cas d'utilisation "consulter listes des profils des architectes" _______________ 42
Table des logos
Logo 1 : Hypertexte Markup Language _____________________________________________________ 26
Logo 2 : Cascading Style Sheet ___________________________________________________________ 26
Logo 3 : JavaScript _____________________________________________________________________ 27
Logo 4 : TypeScript _____________________________________________________________________ 27
Logo 5 : Visual Studio Code ______________________________________________________________ 27
Logo 6 : Postman ______________________________________________________________________ 28
Logo 7 : StarUML ______________________________________________________________________ 28
Logo 8 : Bootstrap _____________________________________________________________________ 28
INTRODUCTION GENERALE
Depuis la découverte de l’informatique, des nombreuses activités de la vie courante ont été simplifiées.
Actuellement les individus peuvent facilement traiter des informations en se servant des logiciels et des
réseaux informatiques. Grâce à l’évolution technologique, le monde a constaté qu’il faut informatiser tous
les domaines pour assurer la continuité surtout après l’apparition du virus Covid19.L’informatique se sert
de nombreux outils pour pouvoir transmettre les informations, c’est en effet un moyen de recherche à la
fois simple et rapide permettant à tout le monde d’obtenir des informations sur divers sujets.
Dans cette perspective, et dans le cadre du stage de fin d’études, réalisé au sein du startup Bridges
Engineering, on va s’intéressait au développement d’une application web « Xvive » pour mettre en relation
les architectes tunisiens et les clients américains avec des outils qui sont considéré performant et solide «
NodeJS, Angular, ExpressJS » en se basant sur l’architecture trois tiers pour garantir la bonne gestion,
performance et rapidité de notre application.
Le présent rapport, qui expose ce travail, est composé de quatre chapitres structurés comme suite :
Dans le premier chapitre, on va présenter l'organisme d'accueil et on déduira l'étude de l’existant de notre
application web.
Dans le deuxième chapitre, on va identifier les besoins fonctionnels et non fonctionnels ainsi que les
acteurs de notre application avec la méthodologie adoptée.
Dans le troisième chapitre, on va présenter les différentes outils et technologies qui ont servis à
l’élaboration de ce travail.
Dans le quatrième chapitre, on va élaborer une conception détaillée de notre projet ainsi qu’on va
présenter les différentes interfaces réalisées.
Finalement, le rapport s'achève par une conclusion générale rappelant les réalisations essentielles de notre
travail.
10
Chapitre 1 : Cadre du
projet
11
Introduction
Ce chapitre sera consacré d’abord à présenter l’environnement dans lequel le projet a été mené. Ensuite, on
va présenter l’étude préalable qui est une démarche nécessaire pour avoir une vision globale sur notre
projet. Cette étude nous mène à élaborer la problématique et les objectifs du projet, puis on finira par la
solution proposée.
1. Présentation d’accueil
Ses atouts et ses valeurs lui permettent de fidéliser ses clients et d’attirer d’autres.
• Une qualité irréprochable : dans les produits et les prestations ce qui garantit une croissance
meilleure.
• Des délais respectés : car un projet n’a de valeur que s’il est livré au bon moment.
• Un coût bien étudié : optimisation de la gestion des ressources afin de réduire les coûts et en
faire profiter ses clients
• Le sens du client.
• La performance.
• L’innovation.
• Développement Web
• Testing et Validation
2. Problématique
Bien que nous ayons de grands talents en Tunisie, nos architectes ont du mal à se connecter à la demande
internationale à cause de l’accès limité aux opportunités à l’étranger.
D’autre part, les propriétaires de maisons aux état unis ont du mal à renouveler leurs maisons à cause de la
pénurie d'architectes et de décorateurs d'intérieur pour les petits projets après l'explosion du marché du
logement ce qui rend ces derniers mis à côté et les propriétaires peuvent attendre des mois pour obtenir de
l'aide en matière d'architecture.
3. Etude de l’existant
Avantages Inconvénients
13
o Comprend une version mobile. o Comprend une version payante.
o Comprend un système de messagerie. o Comprend une version gratuite mais
avec des fonctionnalités limitées.
o Les fonctionnalités destinées aux
architectes sont comprises que dans la
version payante.
o Mauvais design.
Houzz est un site web qui offre des services pour améliorer l’architecture, le design intérieur et la
décoration des maisons.
Avantages Inconvénients
14
3.1.3. Etude de l’application Havenly
Havenly est un moyen pratique pour la décoration des maisons pièces par pièces en associant les clients
avec un architecte dédié.
Avantages Inconvénients
Block renovation est une plateforme dédiée à aider les propriétaires et les architectes à mieux construire
ensemble.
15
Figure 4 : Site Block Renovation
Avantages Inconvénients
16
4. Choix de méthodologie
Au cours du développement des projets informatiques, il est indispensable de respecter une démarche bien
déterminée pour assurer un bon rendement de développement en termes de qualité et de productivité. C’est
pour cela que le choix de la méthodologie en informatique est primordial. Les méthodologies de
développement suivent une séquence d’étapes ordonnées qui permet d’obtenir un système informatique
performant qui répond aux différents besoins des utilisateurs dans des intervalles de temps.
Scrum master : C’est le chef d’équipe qui assure la compréhension et l’exécution de Scrum. Il contrôle
l’équipe et organise le travail.
Product Owner : C’est l’expert produit qui représente les parties prenantes et peut être aussi le client, le
propriétaire du projet, ou le chef d’entreprise.
Scrum Team : Est un groupe de membres qui travaille sur l’exécution du produit (développeurs,
programmeurs, designers...).
17
Conclusion
Dans ce premier chapitre, on a défini le champ de notre étude suivi d’une étude de l’existant afin de
préciser notre objectif à atteindre vers la fin accompagnée d’une solution proposée et le choix de la
méthodologie appliquée. Dans le chapitre qui suit, on présente la spécification des besoins.
18
Chapitre 2 : Analyse
et spécification des
besoins
19
Introduction
Ce chapitre vise à capter les besoins et les rôles des utilisateurs qui utilisent l’application. Dans un premier
lieu, on commence par définir les acteurs, par la suite on spécifie les besoins fonctionnels et non
fonctionnels. Au niveau de la deuxième partie on va analyser ces besoins par l’insertion de diagramme des
cas d’utilisations global et diagramme de classes.
Un acteur définit un rôle joué par une personne externe qui interagit avec le système. Il peut être parmi les
utilisateurs du système et parmi les responsables de sa configuration.
2. Besoins fonctionnels
Les besoins fonctionnels sont les fonctionnalités et les options que l’application fournira à l’utilisateur.
Les besoins non fonctionnels définissent les options internes essentielles pour améliorer le fonctionnement
du système. Pour cela, notre future application doit répondre aux critères suivants :
• Sécurité : l’application doit garantir la sécurité des données des utilisateurs ce qui nécessite :
o Un mot de passe enregistré dans la base de données crypté.
20
o Un jeton après chaque authentification doit être généré (le jeton c’est un jeton généré en
fonction des mots de passe et du nom de l’utilisateur pendant une période bien définie).
L’utilisateur peut profiter du jeton qui offre un accès à une ressource spécifique pour une
période précise sur notre plateforme.
• Performance : Afin d’offrir un service de qualité, l’application doit être performante au niveau de
temps de réponse.
• Fiabilité : L’application doit toujours répondre à l’exigence afin de fonctionner sans aucune erreur
ou défaillance.
• La disponibilité : L’application doit être disponible à tout instant pour être utilisée par n’importe
quel utilisateur, elle doit être accessible facilement via n’importe quel navigateur.
4.1. Définition
Un diagramme de cas d’utilisation définit le comportement d’un système informatique. Il exprime les
besoins des utilisateurs du système, identifie les fonctions les plus importantes et représente les
interactions, les acteurs et leurs attentes vis-à-vis du système.
21
Cas d’utilisation Description
Consulter listes des profils des architectes Le système permet au propriétaire de maison
d’accéder à la liste des profils des
architectes.
Un diagramme de classes est un diagramme UML dont le but est de décrire précisément la structure
statique d’un système informatique à travers la modélisation des classes du système, y compris les
propriétés et les méthodes de chaque classe, et les diverses relations qui peuvent exister entre les eux.
22
Figure 7 : Diagramme de classe global
Classe Description
Conclusion
Dans ce chapitre, on a spécifié les principaux besoins dont notre application doit fournir à l’utilisateur
accompagnés d’un diagramme de cas d’utilisation global et diagramme de classes. Le prochain chapitre
sera consacré à la conception.
23
Chapitre 3 :
Architecture et
environnement
de travail
24
Introduction
Dans cette partie on va présenter les différents langages et technologies utilisés. Ensuite, on va décrire
l’architecture générale de l’application et le flux des données.
1. MEAN STACK
L’application qu’on va développer est une application MEAN qui est une pile logicielle JavaScript gratuite
et à code source libre. « MEAN » signifie MongoDB, Express.js, AngularJS, et Node.js.
L’un des principaux avantages de la pile MEAN est l’utilisation d’un langage unique, java script, qui
s’exécutent à tous les niveaux de l’application qui est une approche efficace et moderne de développement
web.
Cette figure ci-dessous représente l’interaction entre les différentes technologies de « MEAN STACK » :
1.1. NodeJS
NodeJS est un environnement d’exécution Javascript qui nous permet d’exécuter JavaScript coté serveur
pour construire notre application. Il est utilisé notamment comme plateforme de serveur Web qui utilise la
machine virtuelle V8.
1.2. AngularJS
Angular [1] est un Framework open source qui permet de créer des applications web de type « Single page
application ». Il est basé sur le langage JavaScript et permet de séparer les données, les vues et les
différentes actions que l'on peut effectuer.
25
1.3. ExpressJS
ExpressJs est un Framework Node.js gratuit et open source. Il a des fonctionnalités, des outils, des plugins
et des packages qui aident à développer les applications web et mobile basées sur NodeJS plus facilement.
Ainsi qu’il est le Framework standard pour le développement du serveur en Node.js.
1.4. MongoDB
Dans le cadre de ce projet on a eu besoin du MongoDB qui est un système de gestion de base de données
(SGBD) NOSQL. Il repose sur des collections de documents au format JSON.C’est la première base de
données, permettant aux sociétés d'être plus rapides et évolutives. La plupart des entreprises de toutes les
tailles utilisent MongoDB pour créer de nouveaux types d'applications, améliorer la façon de travailler
avec ses clients. MongoDB est conçue pour l'évolution, les performances et la haute disponibilité, passant
de l'installation sur de simples serveurs, à des architectures complexes déployées sur plusieurs sites ainsi
qu’elle permet de lire et d'écrire très rapidement.
2. Langages de développement
HTML (Hypertext Markup Language) qui est un type de langage informatique descriptif. [2] Il est utilisé
pour la mise en forme des pages Web et il permet aussi d'écrire de l'hypertexte et d'introduire des
ressources multimédias dans un contenu.
26
CSS (Cascading Style Sheet) [3] est un langage de style qui s’intéresse à la mise en forme du contenu
intégré avec du HTML. Il permet de contrôler exactement l'affichage de chaque élément HTML dans le
navigateur et ainsi de présenter les documents avec la mise en forme de votre choix.
2.3. JavaScript
Logo 3 : JavaScript
JavaScript est un langage de script orienté objet permettant d’ajouter des fonctionnalités interactives et
d’autres contenus web dynamiques aux pages web.
2.4. TypeScript
Logo 4 : TypeScript
TypeScript [4] est un langage open source qui qui peut aider à construire et à gérer des projets JavaScript à
grande échelle. Il peut être considéré comme JavaScript avec des fonctionnalités supplémentaires comme
le typage statique, la compilation et la programmation orientée objet.
3. Environnement logiciel
3.1. VS code
27
Visual studio code est un éditeur de code open source supportant des différents langages.
3.2. Postman
Logo 6 : Postman
Postman est un client HTTP pour le test des API REST, livré sous format d’une extension chrome.
3.3. StarUML
Logo 7 : StarUML
4. Framework d’interface
Logo 8 : Bootstrap
Bootstrap [5] est un cadre de travail pour le développement frontale, gratuit et open source pour la création
de sites et d'applications Web. Il repose sur HTML, CSS et JavaScript (JS) pour faciliter le développement
de sites et d'applications réactives.
28
5. Architecture de l’application
L’architecture de notre application MEAN STACK se repose sur l’architecture en trois tiers. Comme
illustrée dans la figure ci-après, la solution qu’on a choisie obéit à la même structure laissant apparaitre les
tiers suivants :
• Un client qui n’est autre qu’un navigateur web permettant à son utilisateur d’accéder à l’application
via internet.
• Un serveur d’application.
Conclusion
Tout au long de ce chapitre on a présenté les différents langages de développement ainsi que les logiciels et
les framework utilisés. Et pour finir on a décrit l’architecture générale de l’application.
29
Chapitre 4 :
Réalisation
30
Introduction
Après avoir présenté l’environnement qui a servi à élaborer notre application, on entame la partie de la
réalisation. Dans ce chapitre, on va présenter nos sprints en décrivant la phase conceptuelle. Pour finir, on
illustrera quelques captures d’écran afin de décrire l’application sans oublier de présenter les résultats et les
problèmes rencontrés.
1. Backlog produit
Le backlog produit représente une liste des diverses fonctionnalités à développer d’une application. Les
éléments du backlog sont classés par priorité ce qui permet de définir l’ordre de réalisation.
On décrit dans cette partie le backlog produit de notre projet, illustré par le tableau ci- dessous.
31
2. Déroulement des sprints
32
Diagramme de séquence d’inscription :
Cette figure montre le séquencement des interactions entre l’utilisateur, le « frontend », le « backend » et la
base de données. En effet l’inscription est une étape nécessaire que chaque utilisateur doit l’établir pour
avoir un compte. L’utilisateur est obligé de remplir un formulaire dont il va surtout mentionner son rôle. Si
les champs du formulaire sont validés, un nouvel utilisateur va être enregistré dans la base de données.
Après avoir préparé la conception du sprint 0, on va illustrer maintenant les différentes interfaces. On
commence par présenter la page d’accueil qui va être affichée en premier lieu. Cette page renseigne
l’utilisateur sur le contenu de notre application. Elle se compose de différentes sections comme « Our
services » qui est une section descriptive de nos services, « Explore some ideas» qui représente une petite
galerie d’images, «Our spaces» qui est une section descriptive des deux intervenants (Architecte et
propriétaire de maison).
33
Figure 12 : Page d'accueil
34
L’utilisateur doit créer un compte afin d’avoir accès à l’application en remplissant les champs nécessaires
et en spécifiant son rôle « Architecte » ou « Propriétaire de maison ».
L’interface d’inscription s’affiche sous forme d’un pop en cliquant sur le bouton « Sign up » de la page
d’accueil.
Si les champs ne sont pas tous remplis, un pop-up contenant le message « Please fill all required fields »
s’affiche comme le montre la figure ci-dessous :
35
Dans le cas où l’adresse mail est déjà existante, un pop-up contenant le message « Email already exist »
s’affiche.
Après la réalisation de ce sprint, on a effectué les tests pour savoir si on a pu atteindre les objectifs définis.
- Les taches de ce sprint se sont bien déroulées. Il n’y a pas eu des problèmes au niveau de ce sprint.
37
Diagramme de séquence d’authentification :
L’authentification est une étape nécessaire que chaque utilisateur doit l’établir pour accéder à notre
application, cette phase mène la sécurité de l’application. En demandant l’accès à l’application, l’utilisateur
est obligé de s’identifier via son email et son mot de passe. L’application vérifie l’existence de ce compte
dans sa base de données.
Après avoir préparé la conception du sprint 1, on va illustrer maintenant les différentes interfaces de la
partie d’authentification. On commence par présenter les premières interfaces relatives à ce sprint.
Le formulaire d’authentification s’affiche sous forme de pop-up. Il s’agit de saisir l’E-mail et le mot de
passe, et puis le système vérifie la validité de l’entrée.
38
Figure 18 : Pop-up d'authentification
Dans le cas où l’un des champs est incorrecte, une alerte s’affiche.
Après la réalisation de ce sprint, on a effectué les tests pour savoir si on a pu atteindre les objectifs définis.
-Les taches de ce sprint se sont bien déroulées. Il n’y a pas eu des problèmes au niveau de ce sprint.
2.3. Sprint 2 : « Gestion de profil / Consulter listes des profils des architectes »
2.3.1. Conception détaillée de sprint 2
Acteur Architecte
40
6. Un pop-up s’affiche avec le message
« Profile added successfuly »
Scénario d’exception Si l’un des champs remplie n’est pas valide, retour à
l’étape 2.
Acteur Architecte
41
Description textuelle de cas d’utilisation « Consulter listes des profils des architectes » :
Tableau 12 : Scénario du cas d'utilisation "consulter listes des profils des architectes"
42
Diagramme de séquence de gestion de profil (créer et modifier) :
Pour créer ou modifier un profil, l’architecte doit effectuer l’enchaînement présenté ci-dessus « Figure21 ».
Après la demande de l’interface, un formulaire s’affiche et le système vérifiera si le formulaire est vide.
Dans ce cas on se trouve devant deux scénarios :
• Si le formulaire est vide, l’architecte va créer son profil à travers la saisie de tous les champs.
43
• Dans le cas où le formulaire est déjà rempli, l’architecte saisit les données à modifier.
Diagramme de séquence du cas d’utilisation consulter listes des profils des architectes :
Dans le cas où l’architecte clique sur l’icône « edit » qui se trouve en haut du formulaire, le système lui
donne l’accès pour remplir les champs et affiche le bouton « save ».
44
Figure 24 : Formulaire de profil éditable
Lors du remplissage du formulaire pour la première fois, le système va donner accès à l’architecte pour
créer son profil.
Une fois le remplissage est fait, les images téléchargées par l’architecte seront affichées.
45
Figure 26 : Profil crée
Dans le cas de modification de profile, l’architecte va modifier que les champs souhaités et le système va
récupérer la valeur des champs non modifiés.
46
La figure suivante illustre la partie concernant la consultation des profils des architectes. Cette interface est
accessible que pour le propriétaire de maison et lui permet la prise de rendez-vous avec un architecte en
cliquant sur le bouton « Pick an appointment ».
47
2.3.3. Test de sprint 2
Après la réalisation de ce sprint, on a effectué les tests pour savoir si on a pu atteindre les objectifs définis.
-Les taches de ce sprint se sont bien déroulées malgré qu’on ait rencontré quelques difficultés.
Lors de l’authentification, l’architecte sera dirigé directement à son dashboard comme le montre la figure
ci-dessous.
Etant donné qu’on a rencontré des problèmes à cause des contraintes de temps, on a pu qu’implémenter
l’interface graphique pour ce sprint.
48
2.2. Sprint 4 : « Prise de rendez-vous »
2.2.1. Conception détaillée de sprint 4
Après la consultation des profils des architectes, le propriétaire de maison peut choisir le profil de
l’architecte dont il veut. Ensuite, un formulaire s’affiche qui lui permet de sélectionner la date/heure. Le
système vérifiera si la date et l’heure sont déjà pris. Si c’est le cas, le système redirige le propriétaire de
maison vers la liste. Si non, un message de succès s’affiche.
La figure suivante représente le pop-up qui s’affiche pour fixer la date du rendez-vous :
49
Figure 31 : Prise de rendez-vous
Après la réalisation de ce sprint, on a effectué les tests pour savoir si on a pu atteindre les objectifs définis.
• Amélioration
-La partie fonctionnelle de ce sprint n’est pas encore accomplie à cause des contraintes de temps.
Conclusion
Dans ce chapitre, on a détaillé les différents sprints réalisés ainsi que les différentes interfaces qui
implémentent notre projet.
On évoquera dans la conclusion générale un résumé du travail effectué ainsi que nos acquis sur le plan
personnel et professionnel.
50
CONCLUSION GENERALE
Au terme de ce rapport, on a pu conclure que ce stage de fin d’études nous a donné une occasion opportune
nous permettant de confronter l’acquis théorique à l’environnement pratique.
Ce travail de conception et de développement d’une application web « XVIVE » pour mettre en relation les
architectes tunisiens et les propriétaires de maison tout au long du stage nous a été bénéfique sur plusieurs
plans.
Sur le plan personnel, ce stage nous a permis de prendre certaines responsabilités et d’approfondir nos
connaissances théoriques et pratiques.
Sur le plan technique, nous avons appris à manipuler les Framework Angular et nodeJS et pleins d’autres
outils. On a également eu l’opportunité de maîtriser la conception en utilisant UML.
La communication était un facteur très important au niveau de la phase de réalisation pour concevoir
l’application souhaitée. On a aussi rencontré quelques difficultés au niveau de cette phase au niveau
temporelle mais on a pu surpasser ces problèmes grâce au bon encadrement.
Au début de notre stage, on a consacré du temps pour l’étude des besoins et cela pour recenser les
fonctionnalités qu’englobera notre application et mieux cerné les différentes exigences du projet. On a fait
de notre mieux pour faire le maximum et présenter un travail digne de notre formation, mais vu la durée
limitée de notre stage certains volets n’ont pas pu être achevés.
• La prise rendez-vous.
51
WEBOGRAPHIE
[1] https://monpetitdev.fr/cest-quoi-angular-definition/
[2] https://www.journaldunet.fr/web-tech/dictionnaire-du-webmastering/1203255-html-hypertext-markup-
langage-definition-traduction/
[3]https://developer.mozilla.org/fr/docs/Learn/CSS/First_steps/What_is_CSS
[4]https://www.codemotion.com/magazine/backend-dev/why-you-should-use-typescript-for-your-next-
project/
[5]https://www.lemagit.fr/definition/Bootstrap
52