Fermer

mars 12, 2024

Les premiers retours de la génération AI pour le développement de logiciels

Les premiers retours de la génération AI pour le développement de logiciels



À mesure que les équipes de développement se familiarisent de plus en plus avec ces outils, leur compréhension des outils et leur capacité à les appliquer à divers scénarios commerciaux apporteront encore plus de valeur, affirme Lanehart.

« Par exemple, être capable de communiquer complètement une demande d’application entière à la génération AI qui génère tout le code nécessaire réduira considérablement le calendrier d’une tâche », explique Lanehart. Cela signifie qu’un ingénieur ou une équipe est libre de consacrer plus de temps à réfléchir de manière créative ou stratégique à l’ensemble du projet et à la manière de l’améliorer davantage, dit-il.

L’équipe de développement de l’éditeur de logiciels ZoomInfo était impatiente d’expérimenter les outils de gen AI une fois qu’ils sont devenus disponibles l’année dernière pour une utilisation à grande échelle, a déclaré le CTO Ali Dasdan.

L’un des premiers cas d’utilisation a permis aux développeurs de logiciels de l’entreprise d’accéder à Github Copilot. Après un premier succès, ZoomInfo a commencé à intégrer la génération AI dans toute son organisation pour améliorer la productivité, explique Dasdan. Un exemple est la recherche et la synthèse de documents.

« Le développement de logiciels nécessite une documentation importante », explique Dasdan. « Les documents tels que les exigences du produit et les conceptions d’architecture sont standard dans les organisations bien gérées », mais les équipes de développement ont besoin de beaucoup de temps pour examiner ces documents. « La génération AI a libéré un temps considérable en synthétisant et en indexant ces documents en quelques minutes seulement », précise-t-il.

Le succès de l’essai a conduit l’entreprise à obtenir des licences pour presque tous ses développeurs de logiciels. « Nos ingénieurs doivent cependant encore revoir le code créé par l’outil », explique Dasdan. « Nous avons déjà accepté des dizaines de milliers de lignes de code et avons réalisé un gain de temps considérable. »

Limites, impacts sur l’équipe et leçons apprises

L’un des principaux points à retenir de l’utilisation précoce de la génération IA est qu’elle ne remplacera pas les développeurs humains.

Chez le fournisseur de services informatiques BDO Digital, il y a eu au départ une « vague d’enthousiasme » quant au potentiel de la génération AI à générer de manière autonome des logiciels complexes, explique Kirstie Tiernan, directrice du département données et IA de l’entreprise.

« Cependant, nous avons rapidement compris que l’IA est un outil destiné à augmenter l’expertise humaine, et non à la remplacer », explique Tiernan. « La nécessité d’une surveillance humaine pour garantir la qualité et la fonctionnalité du code généré par l’IA est rapidement devenue évidente. Il s’agit d’un partenariat dans lequel l’IA se charge d’une partie du gros du travail, permettant aux développeurs de se concentrer sur la résolution stratégique des problèmes.

L’une des leçons clés sur lesquelles BDO travaille est l’importance d’intégrer les outils d’IA aux flux de travail existants. « Il ne s’agit pas seulement d’adopter de nouveaux outils ; [it’s] plus sur la façon dont les équipes de développement fonctionnent, communiquent et collaborent », explique Tiernan. « Le processus d’intégration met en évidence le besoin de flexibilité et d’adaptabilité dans toutes nos pratiques de développement. »

L’une des surprises les plus intéressantes chez BDO a été l’impact de la génération IA sur la créativité et l’innovation. « En automatisant les tâches de routine, les développeurs ont été libérés pour relever des défis plus complexes et explorer des solutions plus innovantes », explique Tiernan. « C’est passionnant de voir comment l’IA peut servir de catalyseur à la créativité et à l’idéation humaines. »

Avec toute nouvelle solution technologique, l’un des plus grands défis consiste à identifier dans quelle mesure une équipe doit intégrer l’outil ou s’y fier, explique Lanehart de Momnt.

« L’une de nos convictions fondamentales est d’utiliser la technologie pour responsabiliser et soutenir les gens », dit-il. « Nous savions donc que nous ne voulions pas que les outils d’IA et de gen AI remplacent nos employés. Au lieu de cela, nous voulions que les outils complètent les compétences que ces personnes apportent à l’équipe et les aident à fonctionner de manière plus efficace et efficiente.

L’industrie technologique dans son ensemble constate une demande croissante de personnes capables de superviser, de mettre en œuvre et d’exécuter des outils d’IA de génération, explique Lanehart. Par exemple, il pourrait s’agir d’un employé qui fait partie de l’équipe de développement de produits, mais dont l’expertise principale est ChatGPT ou Copilot, dit-il.

À mesure que la génération IA devient de plus en plus répandue, « nous constatons l’intérêt d’avoir des personnes formées à ces outils », explique Lanehart. « Nous recherchons des personnes capables de résoudre de nouveaux problèmes de diverses manières, et nous souhaitons qu’elles transmettent ces connaissances à notre équipe. »

Momnt a commencé à encourager les membres de son équipe de développement de logiciels à élargir leur compréhension des outils d’IA en les appliquant à leurs intérêts personnels, tels que la musique, la comédie et d’autres domaines, explique Lanehart. « La découverte de chevauchements entre les applications de l’IA à la fois dans le domaine de la technologie financière et dans les intérêts personnels place notre équipe dans une position unique pour stimuler la croissance d’un nouveau secteur », déclare-t-il.

Lyric, une entreprise de technologie de la santé, exploite la puissance des LLM pour améliorer plusieurs processus, déclare Akshay Sharma, directeur de l’IA. Mais l’une des premières leçons était la quantité de travail nécessaire pour obtenir la valeur correcte des LLM.

« hors des sentiers battus, ils sont quelque peu généralisés, ratent la cible et hallucinent », dit Sharma. « Mais, avec la bonne ingénierie et la bonne conception [and by] en effectuant des expériences avec des invites, nous en tirons beaucoup d’avantages. Nous avons dû créer de nombreux cadres expérimentaux et de test pour évaluer en permanence la génération AI.

Ramakrishnan de Freshworks estime que la génération AI a le potentiel de permettre aux développeurs de mettre des applications sur le marché plus rapidement ; «Cependant, leurs compétences devront s’adapter pour devenir des professionnels de l’ingénierie rapide», dit-il. « Le codage généré par l’IA sera aussi précieux et précis que le type d’invite demandé. »

De plus, le code de l’IA doit être vérifié par des développeurs expérimentés pour confirmer son exactitude, ajoute Ramakrishnan. « Je ne saurais trop insister sur la valeur des révisions de code par des humains sur les codes générés par des machines », dit-il. « Malgré sa valeur de productivité sur le lieu de travail, l’IA est loin d’être parfaite et nécessite une surveillance. »

En outre, l’utilisation de l’IA soulève certaines questions éthiques liées à l’introduction de biais dans les algorithmes, qui peuvent entraîner des conséquences inattendues s’ils ne sont pas contrôlés, explique Ramakrishnan. «Cela introduit également de nouvelles considérations dans le domaine de la sécurité de l’information», dit-il. « Les acteurs malveillants disposent désormais d’une portée plus large pour introduire du code malveillant dans des millions, voire des milliards de systèmes. »

Il y aura un besoin constant de réoutiller la main-d’œuvre pour utiliser efficacement l’IA, Ramakrishnan. « Cela dit, nous ne faisons qu’effleurer la surface de la valeur de productivité de la génération IA », dit-il. « Les meilleurs jours sont devant nous. »

Adopter le point de vue des développeurs

L’un des meilleurs moyens de déterminer l’impact de la génération AI sur les équipes de développement est de demander aux membres de l’équipe de donner leur avis sur leurs expériences. Pour recueillir des commentaires internes sur l’utilisation de GitHub Copilot par ZoomInfo, la société a mené une enquête auprès d’environ 80 de ses développeurs. La recherche a montré que Copilot possède plusieurs atouts.

L’une d’elles est la capacité à générer du code passe-partout et répétitif, qui permet aux développeurs de se concentrer sur une logique complexe. Une autre solution est une réduction drastique du temps nécessaire à l’écriture des tests unitaires. « De nombreux utilisateurs signalent que l’outil améliore leur vitesse de codage en proposant des suggestions de code utiles et des lignes de saisie semi-automatique », explique Dasdan de ZoomInfo.

Ces atouts ont apporté plusieurs avantages aux développeurs de ZoomInfo, une grande majorité affirmant que Copilot a réduit le temps nécessaire pour accomplir les tâches, de 20 % en moyenne. Environ les deux tiers ont déclaré que l’utilisation de la technologie gen AI leur avait permis d’effectuer plus de tâches par sprint, et environ les trois quarts ont déclaré que la qualité de leur travail avait été améliorée.

« Sur la base de ces premiers résultats solides, nous prévoyons que les outils d’IA de génération continueront d’améliorer la productivité de nos ingénieurs et de gagner du temps sur les tâches auxiliaires à l’écriture du code de production réel », déclare Dasdan.

L’avenir de la génération IA du développement logiciel

Les responsables du développement sont convaincus que la génération IA ne fera que gagner en importance en tant qu’outil de développement.

« À l’avenir, le potentiel de gains de productivité grâce à l’IA générative est substantiel », déclare Tiernan de BDO Digital. « À mesure que ces outils seront davantage intégrés dans le tissu de développement logiciel, nous assisterons probablement à des réductions spectaculaires des délais et des coûts de développement. »

Par exemple, l’automatisation de la génération de code passe-partout et la fourniture de suggestions en temps réel pour la correction de bogues peuvent réduire de moitié le temps traditionnellement nécessaire pour certaines tâches de développement, explique Tiernan.

« Mais le véritable changement résidera dans la manière dont l’IA générative nous permettra de résoudre plus efficacement des problèmes plus complexes », déclare Tiernan. « L’IA gérant les aspects courants, les développeurs peuvent se concentrer sur l’innovation stratégique, repoussant les limites de ce qui est possible en matière de solutions logicielles. »




Source link