AI pour les outils de développement : créer des exigences logicielles avec Userdoc

AI pour les outils de développement : créer des exigences logicielles avec Userdoc

2023-10-19 02:11:28

Les outils de codage de l’IA font désormais partie intégrante du développement logiciel, mais l’IA générative s’étend également à d’autres parties du flux de travail d’un développeur. Document utilisateur est une startup qui a créé un service assisté par l’IA pour créer des exigences logicielles. Lors du AI Engineer Summit à San Francisco la semaine dernière, j’ai rencontré son co-fondateur et développeur principal, Chris Rickardpour expliquer pourquoi il a créé Userdoc et comment il aidera les développeurs.

Les exigences – déterminer ce qu’un logiciel fera pour un ou plusieurs « personnages » d’utilisateur – sont généralement la première chose faite dans un nouveau projet.

“Une très grande partie de la création d’un bon logiciel consiste à obtenir de bonnes exigences et à s’assurer que vous construisez la bonne chose”, m’a expliqué Rickard. « J’étais vraiment intéressé par la façon dont l’IA peut aider à faciliter ce processus et essentiellement à détecter les problèmes qui pourraient finalement se transformer en bugs ; ou, pire encore, des fonctionnalités géantes de systèmes qui ne résolvent pas le problème initial et ne sont même pas nécessaires.

Userdoc (cliquez sur l’image pour l’image complète)

L’un des avantages de demander à l’IA de créer des exigences est que vous pouvez « l’amorcer » avec des informations sur votre entreprise, afin que l’IA puisse les utiliser comme contexte pour les exigences. Rickard m’a montré un exemple de service de livraison d’épicerie utilisant Userdoc pour définir les exigences d’un chauffeur-livreur. Il a déclaré que dans un tel cas, l’IA fournit une sorte de « gouvernance » aux développeurs lorsqu’ils construisent leur système.

“L’intelligence artificielle dans cet exemple agit en quelque sorte comme un analyste commercial”, a déclaré Rickard, “et elle comprend les autres ramifications de cela.”

Pourquoi ne pas simplement utiliser ChatGPT ?

Tout cela est bien beau, mais en quoi l’utilisation de l’IA de Userdoc pour générer des exigences logicielles est-elle différente de l’utilisation, disons, de ChatGPT pour faire la même chose ?

Lire aussi  Buhti, un "ransomware" qui utilise la technique de la double extorsion et opère en Espagne

Rickard a répondu qu’il existe un risque que ChatGPT « invente quelque chose ». Il a ajouté que Userdoc utilise GPT-4 sous le capot, mais que le contexte commercial est la clé.

“Donc, lorsque nous parlons de GPT-4”, a-t-il déclaré, “nous envoyons [information about] toutes les autres fonctionnalités pertinentes de votre système.

Il a admis que ChatGPT pourrait réaliser la même chose, mais qu’il faudrait construire « une énorme invite » pour obtenir une réponse similaire à Userdoc.

Pour chaque projet Userdoc, il existe une série de « user stories » qui correspondent souvent au nombre de fonctionnalités d’un logiciel. Il pourrait donc y avoir des centaines de fonctionnalités, et c’est là que cela devient complexe, explique Rickard.

« L’un des principaux problèmes que nous essayons de résoudre ici est [that] si un système possède des centaines de fonctionnalités […] il y a beaucoup de choses auxquelles vous devez réfléchir et vous rappeler ; et l’une des principales causes des dépassements de capacité et des coûts logiciels réside essentiellement dans ces petites choses que les gens ne comprennent pas d’emblée.

Comment fonctionne Userdoc

La configuration d’un nouveau projet Userdoc se fait via un assistant, vous aidant à lister les utilisateurs et leurs différents objectifs. Ce travail de configuration est souvent effectué par les propriétaires de produits, les chefs de produit et les analystes commerciaux, puis le projet est confié aux développeurs. Mais Rickard dit que Userdoc aide également directement les développeurs.

« Ainsi, une fois les fonctionnalités et les éléments créés, […] vous pouvez synchroniser cela avec des outils de gestion de projet. Il se connecte donc à Jira, ou Azure DevOps, [or] n’importe où qui crée un élément de travail [that] va à « à faire », « en cours » et « terminé » ; et cela synchronise toutes ces informations sur la fonctionnalité.

Assistant Userdoc

Assistant Userdoc

Rickard a noté que dans certaines situations, les développeurs de logiciels contribuent également à l’élaboration des exigences. Cela dépend donc des besoins de l’entreprise quant au moment et à la manière dont les développeurs utiliseront Userdoc. C’est souvent aussi une bonne référence lorsque l’on revient sur un projet.

Lire aussi  Les communautés de pratique au service des organismes communautaires : découvrez le projet et la boite à outils

« Nous travaillons avec de nombreuses agences qui ont de nombreux projets simultanés », a-t-il déclaré, « et les développeurs de logiciels – et même les concepteurs – finissent par utiliser ce système. [Userdoc] comme point de retour en arrière sur un projet après deux mois. Vous avez cette excellente description de ce qui doit être fait.

Rickard a ajouté que les informations contenues dans Userdoc peuvent également être utilisées comme « documentation vivante à long terme pour le système ».

“Donc, si vous commencez de cette façon, en ayant des exigences assez détaillées que vous tenez ensuite à jour, et c’est à cela que l’entreprise se réfère, alors cela devient une source de vérité. [about a software system].»

Pensées de LangChain

Depuis que nous parlions ensemble au AI Engineer Summit, je voulais évaluer dans quelle mesure Rickard utilisait les outils actuels de l’espace d’ingénierie de l’IA. Puisqu’il utilise GPT-4, j’ai demandé s’il utilisait LangChain comme couche de communication pour le LLM d’OpenAI ?

« J’ai probablement passé quelques semaines avec le premier prototype [of Userdoc] en utilisant LangChain », a-t-il répondu. « Mais j’ai découvert que je voulais comprendre ce qui se passait dans les coulisses ; et LangChain est incroyablement puissant, mais ce qu’il apporte à la table […] est une méthode pratique et éprouvée pour effectuer certaines tâches, comme lire un document, le diviser en petits morceaux, l’envoyer à un LLM et poser des questions. Mais […] J’apprenais les LLM en même temps que j’apprenais LangChain, [and] il était difficile de comprendre où l’on commençait et où l’on terminait. Je viens donc d’écrire ma propre couche de communication pour communiquer avec GPT-4, et cela m’aide considérablement.

Lire aussi  Barbra Streisand explique le commentaire « Ozempic » sur l'Instagram de Melissa McCarthy | Actualités Ents & Arts

Comment Userdoc pourrait se développer

Ainsi, si Userdoc peut, au fil du temps, devenir la source de documentation d’un logiciel, pourrait-il également être utilisé pour alimenter un chatbot d’aide côté client (pour ce service de livraison de courses, par exemple) ?

“La réponse est oui, définitivement”, a répondu Rickard. « La principale préoccupation est en réalité la différence entre les connaissances internes et externes, et ce que les gens veulent exposer. »

Il a souligné que Userdoc est actuellement en phase de démarrage, mais que s’il devait élargir l’équipe, son rêve serait de « se lancer davantage dans la partie la plus ennuyeuse de la conformité ». Il préfère donc aller dans cette direction plutôt que de faire ce que tout le monde fait : créer un chatbot pour un site Web ou une application destiné aux consommateurs.

« J’aime beaucoup l’idée d’assurer [that] ce qui a été convenu par l’entreprise est en réalité ce qui a fini par être réalisé », a-t-il expliqué. Il a ajouté qu’il existe aujourd’hui des tests automatisés que les développeurs peuvent utiliser, mais qu’il aimerait utiliser l’IA pour augmenter ce processus.

Groupe Créé avec Sketch.



#pour #les #outils #développement #créer #des #exigences #logicielles #avec #Userdoc
1697673992

Facebook
Twitter
LinkedIn
Pinterest

Leave a Comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.