Pourquoi Power Apps est-il adapté aux méthodes agiles ?

Pourquoi Power Apps est-il adapté aux méthodes agiles ?

La Power Platform de Microsoft et notamment Power Apps promet de réaliser facilement des applications « low code ». Le slogan de Microsoft sur leur outil est « Aujourd’hui, tout le monde peut créer et partager des applications ‘’low code’’ avec Microsoft Power Apps ». Au cours de différents projets, j’ai pu identifier certaines forces et faiblesses de l’outil. Parmi les forces, on peut entre autres noter :

  • Pas de perte de temps à créer des infrastructures (base de données, serveurs web, etc…) comme dans un projet de développement classique,
  • Prise en main de l’outil et développement de fonctionnalités hyper rapides,
  • Possibilité de faire de la correction en direct pendant une démonstration.

Et côté faiblesses :

  • Impossibilité de développer à plusieurs sur une même application en même temps,
  • Difficulté de maintenir une application complexe.

Fort de ce constat, je trouve que l’outil est particulièrement adapté aux méthodes agiles, je vous détaille pourquoi en reprenant les 4 valeurs du Manifeste agile.

Les individus et leurs interactions plus que les processus et les outils

Power Apps et méthode agile

L’idée de Microsoft, c’est de permettre aux utilisateurs finaux de pouvoir créer leurs propres applications facilement. Qui de mieux que l’utilisateur final pour définir ce dont il a besoin ? Dans les faits, on s’aperçoit que ce n’est pas si simple que ça. En effet, quelques éléments peuvent apporter de la complexité technique au produit (interaction avec d’autres outils du SI, subtilité de certains composants). Une combinaison qui, je trouve, marche bien, est de créer les applications de concert entre utilisateur final et développeur. Cela peut se traduire de plusieurs manières, le développeur crée et l’utilisateur final teste. Ou encore l’utilisateur final crée et le développeur apporte un appui technique sur les blocages rencontrés. En tous cas jouer la complémentarité, en équipe utilisateur +  développeur.

Un logiciel opérationnel plus qu’une documentation exhaustive

Le gros avantage de Power Apps selon moi, c’est la rapidité avec laquelle on peut créer des fonctionnalités et les mettre à disposition des utilisateurs. Cela permet d’effectuer des itérations très courtes ou sprint (jusqu’à la journée) et d’avoir de manière régulière un logiciel fonctionnel.

Cette rapidité est accentuée par le fait que la dette technique est très faible. La plupart des connecteurs sont déjà préconfigurés, le plate-forme Power Apps est prête à l’emploi. On est en environnement cloud, il n’y a pas besoin de passer du temps à créer d’infrastructure et tout paramétrer (base de données, serveur web, temps d’installation). Le cloud permet de se concentrer sur l’essentiel : le métier ; et de créer de la valeur pour le celui-ci de manière aussi frugale que possible (approche agile Lean).

La collaboration avec les clients plus que la négociation contractuelle

Power Apps-agilité-collaboration

Une autre possibilité de Power Apps que j’utilise très régulièrement, c’est la démonstration directement depuis le studio de développement. Le succès de Teams et des autres outils de visioconférence amplifie cette pratique. Cela permet de récolter le feedback des utilisateurs et de faire des adaptations en direct en quelques secondes. Effet waouh garanti !

L’adaptation au changement plus que le suivi d’un plan

La simplicité de l’outil permet une adaptation au changement aisée. Pas besoin de semaines de formation ou de gros transfert de compétences pour être autonome sur Power Apps. Pas besoin de connaissance d’un langage de programmation spécifique. Le risque lié à un départ ou changement de développeur est donc assez contenu.

Les changements de fonctionnalité et des besoins en cours de route sont possibles et même bienvenus s’ils permettent d’augmenter la valeur créée pour le métier (on développe les produits pour les utilisateurs métiers, et pas juste pour se faire plaisir entre informaticiens). Power Apps permet l’expérimentation lorsqu’elle est utile au produit / au projet ; il permet de prototyper à moindre coût et rapidement (par exemple dans des démarches d’innovation Design Thinking ou pour un Minimum Viable Product en Lean Startup). En outre, ce prototypage peut se faire sur des applications déjà existantes sans impacter les utilisateurs. Ceux-ci ne disposeront de l’évolution que lorsque le développeur publiera sa version.

En conclusion, Power Apps est un outil pertinent pour les méthodes agiles

Power Apps s’adapte donc très bien aux approches agiles. Attention cependant, il faut utiliser l’outil comme il faut pour éviter les dérives (applications trop complexes notamment). Des bonnes pratiques restent à définir et mettre en place dans l’entreprise pour réduire ces risques, sans brider sa puissance et sa souplesse pour autant.

Vous avez une question concernant la Power Platform ?

Recommended Posts

2 Comments

  1. Un très fort intérêt de Power Apps, comme le décrit cet article de Damien CELLE, c’est de permettre des itérations très courtes entre expression des besoins et démonstrations du logiciel réalisé. On limite le temps consacré au recueil des besoins et à leur reformulation pour se consacrer à la recherche d’adéquation (besoins – solution). On limite le risque de dérive (temps & budget) et on accélère la production de valeur pour les métiers. On est bien au coeur de la promesse agile…


Add a Comment

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.