Tristan Coignion
Génie Logiciel FA
2020-2022
Client
Gestionnaire de patrimoine
Analystes
Banque
Dossier
Le prêt est réalisé !
Des rapports et graphiques sont proposés à l'analyste lors de l'analyse du dossier
Resaisie manuelle
Envoi de Dossier par API
Analyste
Banque
Données du dossier
Site partenaire
Gestionnaire de patrimoine
Analystes
Client souhaitant
acheter une maison
Formulaire
SDL intégré au site
Customer Relationship Manager
Exécuté dans le cloud
Apex
BDD
≈
Exécuté dans le cloud
Difficile à déboguer
Langage pauvre
Restrictions arbitraires
Propriétaire
Apex
BDD
≈
Configuration via interface graphique
Infrastructure et logiciels gérés par Salesforce
Passage à l'échelle facile
Configuration via interface graphique
Infrastructure et logiciels gérés par Salesforce
Passage à l'échelle facile
Plusieurs moyens de maintenir la cohérence
Interface graphique
Trigger
Apex
Formule de validation
Configuration via interface graphique
Infrastructure et logiciels gérés par Salesforce
Passage à l'échelle facile
Governor Limits
Peu adaptée à un usage "technique"
Plusieurs moyens de maintenir la cohérence
Interface graphique
Trigger
Apex
Formule de validation
Base de données
Affichage
des données
API
Création
Suppression impossible
Protection des données
Authentification
Interface de configuration
Permet d'exécuter des applications sur des Dynos (conteneurs Linux)
Très peu de mise en place et configuration nécessaire
Permet d'exécuter des applications sur des Dynos (conteneurs Linux)
Très peu de mise en place et configuration nécessaire
Heroku Connect
PostgreSQL
Logging
Messaging
...
Permet d'exécuter des applications sur des Dynos (conteneurs Linux)
Très peu de mise en place et configuration nécessaire
Heroku Connect
PostgreSQL
Logging
Messaging
...
Peu adapté à certains projets
Cher lorsqu'on a besoin de beaucoup de ressources
Ressources chargées dans le navigateur
Ressources chargées dans le navigateur
Controlleur Apex
dans le cloud
HTML / CSS / Controlleur JS
Apex (optionnel)
(non modifiables ou extensibles)
Modulables
Intégrables à site externe
Librairie de composants
standards
HTML / CSS / Controlleur JS
Apex (optionnel)
Apex et LWC
Rapide à créer
Supporte mal la charge
Vite complexe
Directement sur le site de notre organisation Salesforce
Peu ergonomique
Pas plus avancé qu'un éditeur de texte basique
(Salesforce CLI)
Packaging et déploiement d'application
Récupération des méta-données en local
Décomposition en petits projets (microservices)
Open source et extensible
(Salesforce CLI)
Packaging et déploiement d'application
Récupération des méta-données en local
MAIS
Décomposition en petits projets (microservices)
Open source et extensible
Packaging dans le cloud. Long et frustrant
Automatisations à faire soi même
Intégré avec SFDX
Coloration syntaxique
IDE officiel pour
Débogage facilité
Pas de détection d'erreurs hors-ligne
Refactoring inexistant
Très peu d'outils d'analyse
Formating avec
Bien plus pratique que la console du développeur
(Non officiel)
Tous les points positifs de VSCode
Analyse du code
Refactoring
Autocomplétion
Détection d'erreurs
...
Extension pour IntelliJ
Infrastructure
Résilience
Maintenance
Infrastructure
Résilience
Maintenance
Négligeables dans l'ensemble
Classé #1 pour les applications CRM*
Ensemble cohérent d'outils et d'applications
*based on IDC 2021 Revenue Market Share Worldwide
Apex <=> Java
BDD <=> PostgreSQL
LWC <=> React
Heroku <=> AWS Elastic
SFDX <=> Maven
Coût de mise en place
Coût d'apprentissage
"Overkill"
Coût de mise en place
Coût d'apprentissage
(ou petits projets, si il y a déjà une organisation en place)
Pas de taille maximale
Architecture qui supporte le passage à l'échelle
"Overkill"
Coûts compensés
Time to Market court
Toute la stack déjà présente et intégrée
Adapté à la plupart des applications web
Permet de se concentrer sur l'ajout de valeur
Crédits des icônes