3 questions à se poser avant de se lancer dans le développement d’une application web métier
Notre article de la semaine dernière vous a peut-être amené à réfléchir au développement d’une application web métier pour votre entreprise. Aujourd’hui, entrons davantage dans le vif du sujet. Posez-vous les bonnes questions pour bien démarrer le développement de votre application. Devez-vous privilégier l’application web sur mesure ou plutôt standardisée, comment calculer le coût du développement de votre application et comment rédiger un bon cahier des charges fonctionnel, autant de questions auxquelles nous vous apportons quelques éléments de réponse.
Application sur mesure ou application standardisée : que choisir ?
Avant de vous lancer dans le développement de votre application web métier, il est important de faire un choix entre une application sur mesure et une application standardisée. Comme toute solution, l’application sur mesure présente de nombreux avantages mais aussi quelques inconvénients. Voici comment choisir…
• Analysez vos besoins spécifiques. L’objectif d’une application web métier est de répondre aux besoins de votre activité. Analysez chaque fonctionnalité qui sera nécessaire à votre activité et si une application standardisée répond à toutes vos problématiques, alors n’hésitez pas à la choisir. En revanche, si les applications existantes ne répondent pas à tous vos processus et que certaines fonctionnalités sont propres à votre entreprise, alors optez pour du sur mesure. N’essayez surtout pas de changer une solution standardisée pour l’adapter à vos process, le résultat n’en sera pas satisfaisant.
• Innovez et démarquez-vous de la concurrence. Accessible à tous, une application standardisée propose les mêmes outils quelle que soit l’entreprise, ce qui annule un potentiel avantage concurrentiel. Une application sur mesure vous permettra en revanche de rester compétitif dans votre secteur en améliorant vos process par rapport à ceux des autres. La question qui se pose alors est l’utilité de cette application pour votre entreprise. Si elle est nécessaire au développement de votre compétitivité, personnalisez-la et soyez toujours à l’affût des nouvelles fonctionnalités pour vous démarquer de la concurrence. Dans le cas contraire, restez sur une solution déjà existante.
• Anticipez l’évolution de votre application. Une application sur mesure est évolutive contrairement à une application standardisée. Si votre activité est amenée à changer, votre web app suivra ces changements avec des nouvelles fonctionnalités directement intégrées à votre workflow.
• Pensez à l’expérience utilisateur. Le développement de votre application devra être adaptée à vos collaborateurs et à leur façon d’utiliser les outils mis à leur disposition. Une application standard n’est pas toujours optimisée et facile d’utilisation.
• Fixez votre deadline et votre budget. Le délai de conception d’une application sur mesure n’est bien évidemment pas le même que celui d’une application existante. Pour cette dernière, aucune conception ni développement n’est à prévoir, son utilisation pourra se faire à court terme. En revanche, le développement d’une solution personnalisée nécessite bien plus de temps : vous devrez trouver une agence et établir un cahier des charges fonctionnel, et le développement de l’application pourra prendre plusieurs mois selon vos demandes. Il s’agit d’un projet à moyen ou long terme. Votre choix dépendra également du budget que vous vouez allouer à ce projet, une application déjà existante étant en général moins onéreuse.
• Choisissez la bonne agence. Si vous décidez de développer votre propre application, il est important de choisir la bonne agence. Un travail de qualité devra fournir une bonne expérience utilisateur avec une application fonctionnelle et facile d’utilisation. Elle devra également être totalement sécurisée et sans faille. Les solutions déjà existantes ont l’avantage d’avoir déjà été testées de nombreuses fois et d’avoir une sécurité solide dont les failles peuvent être corrigées rapidement.
Votre choix entre une application standard ou sur-mesure dépendra donc beaucoup de l’utilité réelle de cette solution et de la place qu’elle aura dans votre entreprise.
Rédiger son cahier des charges fonctionnel : optez pour la méthode Agile
Écrire un cahier des charges fonctionnel avant le développement de votre application est indispensable. Il permettra à vos équipes ainsi qu’aux développeurs de mieux comprendre la structure de votre application pour vous proposer des solutions techniques adaptées et une architecture pertinente. Objectif : éviter les allers-retours et gagner du temps dans la conception. Chez Trait d’Union, on dit « oui » au cahier des charges, mais on recherche avant tout l’agilité. Le marché évolue beaucoup trop rapidement et votre activité risque de se développer autrement de ce que vous aviez prévu pour perdre du temps avec les lourds cahiers des charges traditionnels. Vous pouvez opter pour un cahier des charges dit « Agile » qui a l’avantage d’être beaucoup plus souple et de s’adapter à l’évolution de vos besoins à travers la rédaction de documents courts et de développement à court terme.
Pourquoi choisir la méthode Agile ?
Les approches traditionnelles nécessitent un cahier des charges fonctionnel détaillé et validé avant la mise en réalisation du projet digital, ce qui laisse peu de place au changement. Selon la complexité du projet, le développement de l’application peut prendre du temps et souvent apparaît un décalage entre le besoin initial et l’application finalisée. L’activité de l’entreprise ayant évolué entre temps, certaines fonctionnalités demandées ne s’avèrent finalement pas utiles alors que d’autres, non demandées, auraient pu apporter une plus-value. Dans ce cas, le cahier des charges initial faisant foi, on aboutit à un résultat insatisfaisant de l’application qui risque de ne jamais voir le jour et de compromettre la relation entre l’agence et son client.
La méthode Agile est une autre approche de la gestion de projet. Elle vous place au centre du projet en vous impliquant dans le processus de développement de votre application, de la mise en route jusqu’à sa finalisation en adoptant un processus incrémental. Le développement de l’application se fera étape par étape et chaque étape sera corrigée et validée par le client avant la mise en oeuvre de l’étape suivante. Le client obtient une meilleure visibilité de son projet grâce à un feedback régulier lui permettant d’appliquer directement les changements nécessaires. Cette méthode permet souvent un processus de développement bien plus rapide que les méthodes classiques.
Fonctionnement de la méthode Agile
Dans le cadre d’un projet de développement d’application web, la méthode Agile consiste à proposer une version minimale de l’application puis à intégrer progressivement des fonctionnalités, par un processus itératif. Le travail se fait via des objectifs à court terme, appelés « itérations ». Lorsqu’une itération est développée, elle est directement soumise au client qui peut alors se rendre compte très tôt et par lui-même du travail réalisé, et s’aligner sur son besoin. Une fois le premier objectif atteint, on s’adapte à la situation et on fixe le suivant, jusqu’à la finalisation de l’application. Cette méthode offre une extrême souplesse. Chaque étape permet de mieux planifier les prochaines mais aussi d’évaluer régulièrement les progrès liés au projet. À tout moment, le client peut changer les fonctionnalités qui n’ont pas encore été développées ou échanger l’ordre de développement des fonctionnalités en fonction des besoins du marché. La transparence et les retours réguliers permettent d’instaurer un climat de confiance entre l’agence et son client.
Un exemple concret d’agilité, la méthode Scrum
Pour bien expliquer le fonctionnement des méthodes Agile, prenons l’exemple concret de la méthode Scrum que Trait d’Union utilise depuis plusieurs années. Les projets suivant cette méthode sont divisés en plusieurs cycles de travail relativement courts que l’on appelle « sprints ». Ils se forment autour d’une équipe multifonctionnelle constituée du :
- Product Owner (responsable produit) : il représente en général le client final et les utilisateurs de l’application. Il définit les spécifications fonctionnelles et présente la vision globale de l’application au reste de l’équipe. C’est lui qui établit la priorité des différentes fonctionnalités, et qui valide ou corrige les fonctionnalités déjà développées. Il doit donc se mettre à la place des futurs utilisateurs et prioriser les besoins pour aboutir à une application la plus fonctionnelle possible.
- Scrum Master : il fait le lien entre le Product Owner et les équipes de développement. Son rôle est de piloter l’équipe et faire le nécessaire pour lui permettre d’atteindre les objectifs fixés pour chaque sprint. Il s’assure du respect des délais et a un véritable rôle de conseiller auprès du responsable produit.
- L’équipe de développement assure la réalisation opérationnelle de l’application.
Tout projet Scrum démarre par la constitution du « Product Backlog » par le product owner. Il s’agit de l’ensemble des exigences fonctionnelles et non fonctionnelles de l’application. Une fois cette étape franchie, le processus Scrum se met en place via un ensemble de réunions clairement définies et strictement limitées dans le temps pour chaque cycle de travail :
- Planification de l’itération (ou « sprint ») : il s’agit ici d’une réunion où l’équipe de développeurs choisit les éléments prioritaires du Backlog qu’elle réalisera au cours du sprint.
- Revue de sprint : une fois le sprint réalisé, l’équipe de développement présente les différentes fonctionnalités développées au responsable produit et recueille son feedback. C’est aussi le moment d’anticiper le ou les prochains sprints.
- Rétrospective du sprint : une fois le dernier sprint « corrigé », les équipes dégagent les axes d’améliorations à prévoir pour les prochains sprints, en fonction des retours occasionnés par le sprint réalisé.
- Mêlée quotidienne : cette réunion quotidienne de 15 min permet une synchronisation des membres de l’équipe de développement. Chaque membre est invité à partager ses avancées de la veille, sa mission du jour, ainsi qu’identifier tout problème pouvant nuire au bon déroulement du sprint.
La méthode agile Scrum est donc une approche itérative très efficace pour gérer votre projet d’application web métier. Chaque membre de l’équipe aura un rôle et des responsabilités qui lui seront propres, les cycles de travail seront courts et précis, ce qui permet une gestion flexible et évolutive de vos projets.
Comment évaluer le coût de développement une application sur mesure ?
En utilisant la méthode Agile, l’évaluation des coûts sera beaucoup plus facile qu’avec une méthode traditionnelle, et surtout bien plus en adéquation avec l’évolution de votre projet. Si vous utilisiez la méthode classique, l’estimation se ferait en amont de la prestation selon votre cahier des charges fonctionnel détaillé et ceci en fonction de la durée moyenne d’une mission comparable et des coûts habituels de l’agence sélectionnée. En méthode Agile, l’estimation de la durée de chaque étape permet d’évaluer plus précisément le coût final de votre prestation. Le projet étant découpé en backlogs chacun associé à des unités de temps, l’évaluation du coût est donc plus flexible et plus précise.
Ce que comprendra le coût de développement de votre application
Les éléments suivants seront automatiquement inclus dans le développement de votre application quelle que soit son utilité et ses fonctionnalités :
- Le responsive web design qui ajustera automatiquement l’affichage de votre page web à la taille de n’importe que écran (ordinateur, tablette ou mobile). Cette technique répond au besoin de nombreux utilisateurs à se connecter sur le web depuis un appareil mobile et d’autant plus important dans le développement d’une web app.
- La programmation du frontend et l’intégration du design avec HTML et CSS. Il s’agit de l’implémentation du design ainsi que de toutes les interactions entre les composants de l’interface graphique et les utilisateurs.
- La programmation du backend. La partie back-end va développer et mettre en interaction trois piliers essentiels au fonctionnement de toute application : le serveur d’hébergement, l’application web et la base de données.
- Les tests automatisés. Une séries de tests est effectuée de façon automatisée afin de réduire les éventuels bugs et erreurs.
- Les tests d’acceptance manuels. Des tests manuels effectués par les équipes techniques seront ensuite réalisés pour vérifier que l’application web fonctionne correctement et en adéquation avec votre cahier des charges.
- L’infrastructure d’hébergement. Votre application nécessitera de créer un compte utilisateur de stocker les informations dans une base de données… Complètement invisible pour l’utilisateur, un bon hébergement est indispensable pour assurer le bon fonctionnement de l’application. La base de données permettra de conserver toutes les informations de vos utilisateurs mais aussi les coordonnées des clients, l’identification d’un technicien ou encore les différentes factures.
Le budget de développement de votre application personnalisée dépendra ensuite de votre cahier des charges et de la complexité des fonctionnalités à mettre en place.
Vous souhaitez développer votre application métier sur mesure ? N’hésitez pas contacter nos équipes au 04 72 18 03 60.
Lire aussi : Application métier : développez votre compétitivité grâce aux web app !