2.1.4 - Les SGBD
Les SGBD sont aussi des technologies qui se rattachent au
développement back-end car c'est eux qui permettent la gestion des bases
de données.
Définition : Un SGBD est un programme
qui permet d'inscrire, de retrouver, de modifier, de trier, de transformer ou
d'imprimer les informations de la base de données. Il permet d'effectuer
des comptes rendus des informations enregistrées et comporte des
mécanismes pour assurer la cohérence des informations,
éviter des pertes d'informations dues à des pannes, assurer la
confidentialité et permettre son utilisation par d'autres logiciels. Ils
sont utilisés pour de nombreuses applications informatiques, notamment
les guichets automatiques bancaires, les logiciels de réservation, les
bibliothèques numériques, les logiciels d'inventaire, les
progiciels de gestion intégrés ou la plupart des blogs et sites
web. Il existe de nombreux systèmes de gestion de base de
données. Les SGBD sont souvent exploités par d'autres logiciels.
Ils peuvent être sous forme de composant logiciel, de serveur, de
logiciel applicatif
Bachelor Degree Promotion sortante 2023
19
Mise en place d'un portail web
ou d'environnement de programmation. Comme dans notre cas
présent il est exploité par notre framework back-end Django.
Il en existe plusieurs, certains ont une licence libre et
gratuite et d'autres sont payants. Nous vous présentons certains des
plus connus et celui que nous utilisons :
? ORACLE DATABASE :
C'est un système de gestion de base de
données relationnelle (SGBDR) qui, depuis l'introduction du support du
modèle objet dans sa version 8, peut être aussi qualifié de
système de gestion de base de données relationnel-objet
(SGBDRO).
Qu'est-ce qui le rend populaire ?
· Bonne capacité de sauvegarde et de
récupération des données ;
· Régulièrement mis à jour ;
· Grande portabilité ;
· Gère facilement plusieurs bases de données
au sein d'une même transaction Ces lacunes :
· Le prix ;
· Un système difficile à maîtriser.
? POSTGRESQL :
|
|
|
C'est un système de gestion de base
de données relationnelle et objet (SGBDRO). C'est un outil libre, non
contrôlé par une entreprise, mais par une communauté
mondiale de développeurs et d'organisations. Tableau 6 : Comparaison
entre les SGBD
|
|
Qu'est-ce qui le rend populaire ?
· Open-source ;
· Facile à utiliser ;
· Possède un type de données défini
par l'utilisateur ;
· Une grande communauté. Ces lacunes
:
· L'un des plus mauvais en termes de performances ;
Bachelor Degree Promotion sortante 2023
20
Mise en place d'un portail web
· La réplication est complexe ;
· Difficile à installer.
? MySQL :
MySQL est un système de gestion de bases de
données relationnelles (SGBDR). Il fait partie des logiciels de gestion
de base de données les plus utilisés. C'est un logiciel libre,
open source, développé sous double licence selon qu'il est
distribué avec un produit libre ou avec un produit
propriétaire.
Qu'est-ce qui le rend populaire ?
· La base de données la plus utilisée au
monde ;
· Facile à utiliser
· De bonnes performances ;
· Plusieurs fonctionnalités pour sécuriser
ses données ;
· Open-source. Ces lacunes :
· Les performances du système se
détériorent à partir d'un certain volume de
données.
C'est le SGBD que nous utilisons pour notre
application.
3 - Les Frameworks
Dans le domaine numérique hautement concurrentiel
d'aujourd'hui, les développeurs sont continuellement à la
recherche de cadres ou d'outils de développement d'applications qui
peuvent rendre leur travail plus gérable et réduire les
coûts et le temps de développement d'applications.
Un cadre de développement d'applications Web est comme
un carton de blocs que vous pouvez utiliser pour créer tout ce dont vous
avez besoin. Vous pouvez dire une plate-forme avec une collection d'outils de
programmation, de modules et de bibliothèques de base prêts
à l'emploi qui sont utilisés pour créer des produits
logiciels. Ces frameworks fournissent aux développeurs les
fonctionnalités et outils essentiels et présentent les
règles de construction de l'architecture des applications, sites Web,
services, API et autres solutions. Par conséquent, les
développeurs peuvent créer instantanément la conception de
votre projet et l'étirer davantage selon les conditions et les exigences
spécifiées.
Bachelor Degree Promotion sortante 2023
21
Mise en place d'un portail web
Les frameworks de développement d'applications Web
sont personnalisables, ce qui signifie que vous pouvez utiliser des composants
et des modèles prêts à l'emploi et les adapter à vos
besoins particuliers. Vous pouvez également implémenter votre
code dans la plate-forme. Un framework peut également incorporer des
bibliothèques de code, des langages de script, des programmes
utilitaires et d'autres logiciels pour promouvoir la croissance et
l'intégration de différents composants d'un grand projet
logiciel.
Nous listons ici quelques-uns des plus populaires :
? Angular :
Angular est un framework open source écrit en
TypeScript, il est utilisé pour créer des applications Web
à grande échelle hautes performances et convaincantes. Si nous
associons ce framework à d'autres frameworks d'applications Web, Angular
présente des avantages
évidents tout en fournissant une structure standard
aux développeurs avec beaucoup de
flexibilité et un ensemble de fonctions plus riche. Il
permet aux utilisateurs de créer de
grandes applications avec une liaison et une
dépendance bidirectionnelles.
Qu'est-ce qui le rend populaire ?
· Ce cadre dispose d'une fonction de liaison de
données bidirectionnelle.
· Il existe plusieurs intégrations tierces que vous
pouvez ajouter facilement.
· Il nécessite moins de code avec des performances
de serveur améliorées.
· Il est préférable de créer des
sites optimisés pour le référencement et des applications
d'une seule page.
· Amélioration des performances du serveur avec
un prototypage d'applications plus rapide.
Lacunes :
· Il faut du temps pour apprendre, car Angular apporte
ses propres règles lorsque les développeurs commencent à
l'utiliser.
· Il a des limitations sur les routeurs.
· Il a plusieurs versions qui confondent les
développeurs quant à la version à utiliser.
· Ici, une application simple nécessite
également beaucoup de codage, ainsi que de la complexité lors de
l'installation.
Bachelor Degree Promotion sortante 2023
22
Mise en place d'un portail web
? Django :
Django est un framework web Python de haut niveau écrit
en Python, c'est un framework web côté serveur extrêmement
populaire et complet. Ce framework se concentre principalement sur la
réutilisabilité et la connectabilité des composants et
développe des applications Web avec un code
lisible, propre et maintenable. C'est un cadre pour des
délais stricts.
Qu'est-ce qui le rend populaire ?
· Django a une meilleure connectivité CDN et une
meilleure gestion de contenu.
· L'un des avantages les plus importants de Django est
qu'il permet un développement plus rapide.
· Le développement d'applications Django est
choisi par les développeurs tout en travaillant avec des algorithmes
d'apprentissage automatique.
· Il offre un développement et un traitement
rapides et prend également en charge la programmation MVC.
Lacunes :
· Le framework Django a une manière
spécifique de décrire et d'effectuer des tâches.
· Ce n'est pas pour les petits projets.
· Ce framework n'est pas capable de gérer plusieurs
requêtes simultanément.
· Une connaissance approfondie de ce système est
nécessaire.
Nous utilisons ce framework pour la
réalisation de notre projet ? Express.js:
Express.js est un framework très pratique et facile
à utiliser pour Node.js. Ce framework simplifie le processus de
développement en fournissant un ensemble d'outils, de packages, de
plugins et de fonctionnalités utiles. Étant flexible, rapide et
minimal, le développement Express JS favorise le rendu d'objets HTTP
dynamiques. Il est rentable pour le développement d'applications Web et
mobiles.
Qu'est-ce qui le rend populaire ?
Bachelor Degree Promotion sortante 2023
23
Mise en place d'un portail web
· Le framework Express.js vous permet d'utiliser le
même langage, c'est-à-dire JavaScript, à la fois sur le
back-end et le front-end.
· Express JS est une excellente option pour les
applications qui gèrent de nombreuses notifications et demandes des
utilisateurs.
· Intégration facile de services tiers.
· Fournit des performances élevées et le
meilleur pour développer des applications d'une seule page.
Lacunes :
· Il a une structure de code difficile.
· Absence d'un solide système de soutien aux
bibliothèques.
· Middleware pas adéquat.
· Il n'est pas efficace dans la gestion des applications
gourmandes en CPU.
· Le modèle de programmation asynchrone et l'API ne
sont pas stables. ? Bootstrap :
Le framework Bootstrap est un ensemble de fichiers CSS et
JavaScript qui contiennent des règles prédéfinies et qui
définissent des composants. Ces ensembles de règles sont
enfermés dans des classes et vous n'aurez donc qu'à utiliser les
classes qui vous intéressent afin d'appliquer un ensemble de styles
à tel ou tel élément HTML.
Qu'est-ce qui le rend populaire ?
· Un gain de temps de développement qui peut
être conséquent ;
· Une certaine robustesse dans l'architecture globale du
code ;
· Un framework appartenant à une grande
société (Twitter).
Lacunes :
· C'est un framework relativement lourd à
charger.
· Temps d'apprentissage élevé.
· Nombre élevé de fichiers, maintenance
difficile.
· Toute tentative de personnalisation nécessite de
toucher le code source.
Nous utilisons ce framework pour la réalisation de
notre projet
Bachelor Degree Promotion sortante 2023
24
Mise en place d'un portail web
IV - Conclusion
Dans ce chapitre, nous avons vu quelques notions sur le web et
ses principes, les applications web et les modalités qui se rapportent
au développement de ce type d'application.
Bachelor Degree Promotion sortante 2023
25
Mise en place d'un portail web
Bachelor Degree Promotion sortante 2023
26
CHAPITRE III :
Mise en place d'un portail web
Introduction
Dans le but d'une meilleure organisation et une bonne
maîtrise du travail, tout processus de développement
d'applications ou systèmes informatiques doit suivre une méthode
ou démarche bien définie.
Dans ce chapitre nous allons entamer le développement
de notre application par une analyse qui mettra en évidence les
différents acteurs intervenants dans le système ainsi que leurs
besoins. La phase conception, s'appuyant sur les résultats de cette
analyse, donnera la modélisation des objectifs à atteindre.
I - Méthodes d'analyse et de conception
En ingénierie, une méthode d'analyse et de
conception est un procédé qui a pour objectif de
permettre de formaliser les étapes préliminaires du
développement d'un système afin de rendre ce développement
plus fidèle aux besoins du client. Pour ce faire, on part d'un
énoncé informel (le besoin tel qu'il est exprimé par le
client, complété par des recherches d'informations auprès
des experts du domaine fonctionnel, comme les futurs utilisateurs d'un
logiciel), ainsi que de l'analyse de l'existant éventuel
(c'est-à-dire la manière dont les processus à traiter par
le système se déroulent actuellement chez le client).
La phase d'analyse permet de lister les résultats
attendus, en termes de fonctionnalités, de performance, de robustesse,
de maintenance, de sécurité, d'extensibilité.
La phase de conception permet de décrire de
manière non ambiguë, le plus souvent en utilisant un langage de
modélisation, le fonctionnement futur du système, afin d'en
faciliter la réalisation.
1 - Exemples de méthodes d'analyse et de
conception 1.1 - La méthode Merise
La méthode Merise est une méthode de conception,
de développement et de réalisation de projets informatiques. Le
but de cette méthode est d'arriver à concevoir un système
d'information. La méthode Merise est basée sur la
séparation des données et des traitements à effectuer en
plusieurs modèles conceptuels et physiques.
Bachelor Degree Promotion sortante 2023
27
Mise en place d'un portail web
La méthode Merise propose une démarche
articulée simultanément selon trois (3) axes pour
hiérarchiser les préoccupations et les questions auxquelles
répondre lors de la conduite d'un projet :
> Cycle de vie : phase de conception, de
réalisation, de maintenance puis nouveau cycle de projet ;
> Cycle de décision : des grands choix (étude
préalable), la définition du projet (étude
détaillée) jusqu'aux petites décisions des détails
de la réalisation et de la mise en oeuvre du système
d'information. Chaque étape est documentée et marquée par
une prise de décision.
> Cycle d'abstraction : niveaux conceptuels,
d'organisation, logique et physique/opérationnel (du plus abstrait au
plus concret). L'objectif de ce cycle est de prendre d'abord les grandes
décisions métier, pour les principales activités
(conceptuel) sans rentrer dans le détail de questions d'ordre de
l'organisation ou technique.
|