Qu'est-ce qu'une web app ?

Hervé Rincent

Hervé Rincent

11 août 2020

SaaS, web-app, cloud, application native ou desktop ... Il y a de quoi se perdre dans les buzzwords.

Alors jetons ici quelques définitions :

Cela fait un bon moment que ces deux catégories ont fusionné pour donner naissance aux web apps.

Une Application Web (=web app) est une application qui ne s'installe pas sur votre ordinateur. Elle s'utilise via Internet après une étape d'authentification par un login/mot de passe.

On désigne aussi ces web app sous le terme de logiciels en mode SaaS : Service As A Software. Car on ne distribue pas un logiciel qui s’installe sur l’ordinateur de l’acheteur, mais l’usage d’un logiciel qui sera physiquement installé sur un serveur distant (que l’on appelle “cloud” lorsqu’on ne sait pas trop ou il se trouve…).

Exemple de web app : la gestion de votre compte bancaire au travers du site internet de votre banque.

NB : ne pas confondre une web app avec une Application mobile native qui s'installe sur votre smartphone (ou tablette) en passant par un store (Apple Store ou Google Play). On reparlera de ce sujet :)

Pourquoi est-ce devenu un standard ?

C'est une tendance de fond : SalesFore, Microsoft office 365, Gmail, ... beaucoup d'applications de notre quotidien sont désormais des web apps.

Les avantages sont nombreux :

Face à ce tableau idyllique, il y a toutefois quelques inconvénients :

Pour davantage de sécurité, certaines web apps sont hébergées sur un serveur privé de l’entreprise. L'application n'est pas directement accessible depuis Internet, mais uniquement sur le réseau informatique de l'entreprise (avec un VPN si besoin d’un accès distant).

Une web app permet d’être plus innovant

Le choix d’une web app n’est pas seulement un choix d’architecture technique.

Au delà des aspects technologiques, j’observe que les entreprises qui ont fait ce choix bénéficient d’un potentiel d’innovation qui portent sur 3 champs :

Contrairement à un Excel installé sur son PC que chacun utilise “à sa façon”, une web app d’entreprise centralise les données et impose des processus communs pour les enrichir.

En développant une web app, on propose une façon homogène de travailler ensemble.

L’application est disponible via Internet. Internet est partout. Il devient donc simple de partager un dossier client avec … le client. Par exemple :

Cela fonctionne aussi avec un fournisseur : une web app permet de leur donner de la visibilité sur des niveaux de stocks, afin de gérer les ré-approvisionnements.

Les web apps communiquent facilement entre elles, via des API et des webhooks. On peut déclencher une action lorsque quelque chose se passe. Ou bien échanger des données.

Il y a soudain des gisements d’optimisation sur des tâches répétitives et fastidieuses : elles peuvent être automatisées et dégager du temps pour des actions à plus forte valeur ajoutée.

Quels conseils pour un projet de web app ?

Conseil #1 : commencez simplement.

Les web-apps sont par nature évolutives puisque le processus de déploiement d'une mise à jour est simple. Débutez votre projet par les fonctionnalités essentielles pour en tester la pertinence, puis faîtes-le évoluer à votre rythme.

Conseil #2 : ré-utilisez ce qui fonctionne.

Les outils et bibliothèques permettant de coder une web-app sont nombreux et souvent gratuits. Certains sont devenus des standards de fait pour le développement de logiciels en mode SaaS (ReactJS p.exemple).

Il existe aussi des bibliothèques de composants graphiques dont la fiabilité est éprouvée (Ant Design a ma préférence). Leurs possibilités de personnalisation sont parfois limitées, mais a-t-on vraiment besoin de financer le codage d'un bouton qui tourne en devenant vert pâle lorsqu'on clique dessus ?

La profusion de bibliothèques disponibles incitent cependant à la prudence face aux effets de mode. Chaque jour voit émerger de nouvelles tendances dans le monde du développement des web-apps. Elles vous embarquent sur des trucs nouveaux qui solutionnent des problèmes que vous n'avez pas (encore) au prix d’une mise en oeuvre beaucoup plus complexe.

Conseil #3 : accordez de l'attention à vos processus et vos données.

Le développement des web-apps fait parfois une trop large place à ce qui est visible ("le front-end") au détriment de la partie cachée ("le back-end").

Or, la façon dont sont organisées les données compte beaucoup. Je dois parfois ajouter des fonctions à des projets qui ont débuté en utilisant des services ou l'on stocke "en vrac" les données du back-end : ils étaient bien pour faire une démo rapide, mais pas assez solides pour évoluer vers une web app pérenne.

Conseil #4 : sélectionnez votre équipe de développement.

Coder la web-app de votre entreprise, ce n'est pas comme coder un site Internet. Il ne s'agit pas de communication ou de web-marketing.

Il s'agit d'abord de comprendre votre métier, l'organisation de votre entreprise et son fonctionnement. Le développeur doit se projeter comme l'un de vos collaborateurs. Il doit comprendre le sens de ce qu'il code.

Conseil #5 : testez et re-testez.

Une web app est permissive. On l'utilise au travers de navigateurs Internet, qui n'ont pas tous les mêmes fonctionnalités. On peut ouvrir un autre onglet, raffraîchir la page, cliquer sur un retour arrière, double-cliquer sur un bouton, etc...

Prenez du temps pour tester chaque version, ou confiez ces tests à des utilisateurs pilote.

Les web apps sont aussi propices aux tests automatisés. Ce point joue un rôle important dans les méthodes de développement. J’aborderai bientôt ce sujet spécifique.


Continuer la lecture

La réglementation RGPD se durcit : tant mieux.

18 août 2020

4 min read

La réglementation RGPD se durcit : tant mieux.

Lire l'article
Quand allez-vous être attaqués ?

4 août 2020

4 min read

Quand allez-vous être attaqués ?

Lire l'article
Inscription à la newsletter

Recevez chaque semaine un article pour réfléchir à votre prochain projet tech/data

gratuit, sans spam, désinscription en 1 clic

Merci ! Regardez dans botre boite mail. Un lien de confirmation n'attend plus que votre clic.
Arghh il semble compliqué de vous ajouter à la liste de diffusion. Et si vous m'envoyiez un mail directement à contact@camilab.co ?