Comment créer votre application web ?
Voici comment nous procédons pour créer des applications puissantes et évolutives, en un temps record.
tl;dr
La création d’une application web passe par plusieurs étapes, on parle du cycle de vie du projet. Ces étapes sont découpées en huit phases allant de la conception, qui comprend ⅓ du temps, jusqu’à la réalisation qui occupe les ⅔ de temps restant. Il est important d’utiliser de bonnes méthodes et les outils adéquats pour garantir une qualité optimale des projets.
Le cycle de vie du projet
Rappellons que le but du jeu est de voir l’ensemble des étapes qui constituent le cycle de vie du projet, de l’idée à la mise en production en passant par des étapes cruciales comme la définition du Produit Minimum Viable (MVP) ou la mise en place du Design System.
Il est important d’avoir également quelques notions quant aux proportions de temps passé sur les différentes phases :
- Conception : 1/3 du temps passé pour le concept, le MVP, les spécifications et le Design System.
- Réalisation : 2/3 du temps passé pour les développements, la recette, les correctifs et la mise en production.
I. Le concept
La plupart du temps, le donneur d’ordre doit a minima avoir une ébauche du concept, et connaître l’objectif recherché.
On peut également parler d’« expression des besoins », ce qui permet d’avoir une idée des enjeux et du niveau de complexité du projet.
Dans notre approche, nous ne parlons pas de cahier des charges que l’on juge trop chronophage.
II. Votre Produit Minimum Viable ou MVP
À partir du concept, de votre étude de marché et des premiers retours de vos early adpoters (ou ambassadeurs), nous sommes en mesure d’établir le périmètre du Produit Minimum Viable.
Il s’agit là de déterminer :
- la faisabilité,
- les fonctionnalités,
- l’utilisabilité
- l’esthétique de votre produit.
III. Des spécifications
Les spécifications restent un passage incontournable. Il ne s’agit pas là de passer trop de temps comme ce serait le cas avec la rédaction d’un cahier des charges mais tout simplement de définir avec le plus de détails possible comment nous allons répondre aux besoins : le fameux Produit Minimum Viable.
Pour aller encore plus vite par la suite, l’idée est de formaliser la façon d’atteindre l’objectif, en définissant les techniques pour que les designers et développeurs ne perdent pas de temps durant leurs interventions successives.
IV. Le design system
Le Design System est un ensemble de composants regroupant design, ergonomie et fonctionnalités.
Voyez-le comme l’évolution d’une charte graphique digitale avec la particularité de définir les éléments qui vont composer vos futures interfaces.
Conçu autour des méthodes de l’Atomic Design, cette approche permet de définir à la fois les règles d’usage mais également comment les éléments qui composent vos templates peuvent être agencés les uns avec les autres.
La finalité de cette étape est de pouvoir construire rapidement un prototype visuel qui vous permettra de valider à quoi ressembleront les interfaces de votre application ainsi que leurs enchaînements.
V. Les développements
La plupart du temps, les applications nécessitent deux types de développements :
- Les développements back-end qui concernent ce qui se passe sur côté serveur.
- Et les développements front-end pour ce qui se passe sur le poste client (le navigateur).
Les développements back-end peuvent être réalisés sur différentes technologies qui seront choisies en fonction de leurs atouts : rapidité, puissance, simplicité si besoin. Parmi les plus courant, nous retrouvons bien sûr PHP, mais il nous arrive souvent d’utiliser NodeJS, Golang ou Python (notamment pour le Machine Learning ou le Natural Language Processing). Le Back-end inclut également la modélisation de vos bases de données et la mise en place de votre API REST et RPC.
Côté navigateur ou client pour les puristes, nous parlons de technologies telles que le HTML, les CSS, le javascript qui permettent de présenter l’information transmise par le serveur.
VI. La phase de recette
Au fur et à mesure que les développements sont livrés, le donneur d’ordre et notre équipe testent et remontent les éventuelles anomalies.
À ce stade, il ne s’agit plus d’ajouter des fonctionnalités mais bien de vérifier que les livrables sont conformes au spécifications établies en amont.
La phase de recette s’effectue chez nous sur une machine identique à celle qui sera exploitée une fois le site en production. Il s'agit d'éviter d'éventuels bugs le jour du lancement.
VII. Les correctifs
La phase de recette permet normalement d’identifier les corrections à apporter. Elles sont donc traitées par itérations successives, souvent regroupés autour de lot pour une meilleure productivité.
Grâce aux outils de versioning tels que Git, notre équipe identifient les évolutions sur le code source et publie rapidement les correctifs.
VIII. La mise en production
Dès lors que le donneur d’ordre et notre équipe sont d’accord pour dire que l’application est opérationnelle, nous pouvons la publier sur l’environnement de production.
Elle sera alors visible du public et vous pourrez débuter sa commercialisation.
Finalement
De bonnes méthodes et des outils adaptés permettent à la fois de gagner du temps et assure également la création d’une application de qualité.
A propos de l'auteur
Olivier est un passionné d’innovation, avec plus de 20 ans d’expérience, il est devenu un véritable ninja de l’optimisation des performances business des entreprises.
Sa créativité débordante lui permet d’aborder chaque projet avec une vision unique et authentique. C’est un magicien avéré de l’efficacité, capable de transformer chaque défi en une opportunité pour les entreprises qui font appel à lui.
A propos de Nimiscient
Nimiscient accompagne les entreprises dans leurs recherches de performance au travers des applications connectées et intelligentes.
Ainsi, nous aoportons les meilleurs leviers de productivité au cœur des entreprises grâce aux nouvelles technologies, à l’innovation et la créativité.