mardi, 27 février 2024

10 façons dont l’IA générative transformera le développement logiciel

Coder dans les années 90 impliquait normalement de choisir un éditeur, de vérifier le code dans les référentiels de code CVS ou SVN, puis de compiler le code dans des exécutables. Les environnements d’avancement intégrés (IDE) comme Eclipse et Visual Studio ont amélioré la productivité en incluant le codage, l’avancement, la paperasse, la structure, les tests, la publication et d’autres étapes du cycle de vie d’avancement des applications logicielles (SDLC). Les outils d’automatisation du cloud computing et de DevSecOps ont introduit la prochaine vague de capacités de conception, permettant à un plus grand nombre d’entreprises de développer, de publier et de préserver des applications beaucoup plus facilement.

L’IA générative est le moteur du prochain changement de paradigme, promettant de modifier la façon dont les entreprises créent et préservent leurs logiciels en plus de permettre de nouveaux outils et paradigmes de développement. La question que se posent de nombreux développeurs et responsables informatiques est de savoir si l’IA signifie la mort du codage tel que nous le connaissons. Une question connexe est de savoir comment cela affectera le développement du SDLC et du DevSecOps au cours des prochaines années. Avec ces 2 questions en tête, je suis parti à la recherche d’idées et de prévisions.

GenAI est-il un nouvel outil ou une nouvelle méthode d’implantation ?

« Je crois beaucoup au code, et j’ai vu beaucoup de gens parier contre le code au cours de mes 25 ans. -année de carrière, et ils ont toujours perdu », déclare Joe Duffy, PDG de Pulumi. « L’IA va automatiser et améliorer le codage, sans le modifier, augmentant ainsi le niveau d’abstraction auquel nous travaillons, accélérant considérablement la productivité et le rendement. »

C’est un point de vue. Pour en considérer d’autres, je suis revenu aux classiques.

Dans le livre intemporel de Frederick Brooks sur le développement logiciel, The Mythical Man-Month, il partage une étude sur la productivité de l’avancement logiciel montrant « les rapports entre les meilleures et les pires performances étaient en moyenne d’environ 10 : 1 sur les mesures de productivité et d’un remarquable 5 : 1 sur les mesures de vitesse et d’espace du programme. » Dans l’édition du 20e anniversaire de son livre paru en 1995, il réédite le court article de 1986, « No Silver Bullet : Essence and Mishaps of Software Application Engineering », qui prévoyait qu’« une décennie ne verrait aucune stratégie de programmation qui, à elle seule, apporterait une amélioration d’un ordre de grandeur de la productivité logicielle.

Nous ne savons pas encore si les copilotes et autres capacités de codage génératif de l’IA dépasseront ces références.

« Le cycle de vie de l’expédition des applications logicielles est perturbé par l’IA générative », déclare Ashish Kakran, directeur de Thomvest Ventures. « Les groupes de développement et de développement deviendront plus efficaces avec un pourcentage plus élevé d’employés pouvant potentiellement atteindre des résultats similaires à ceux de 10x ingénieurs ».

10 méthodes d’IA générative qui changeront l’avancement des logiciels

Comment l’IA générative va-t-elle changer l’évolution des applications logicielles au cours de la prochaine décennie ? Voici 10 prédictions :

  1. Obtenir du code à partir d’invites en langage naturel est la base
  2. La reconnaissance du code est un devoir important du concepteur
  3. La production en tant que marque- nouveau paradigme d’avancement
  4. Moins de codage, mais de plus grandes menaces pour la chaîne d’approvisionnement du code
  5. Les nouveaux paradigmes accélèrent l’intégration
  6. Les développeurs gèrent les agents d’IA
  7. L’IA touche plusieurs étapes du SDLC
  8. Des personnalités de GenAI et de promotion humaine émergent
  9. L’IA améliore les capacités opérationnelles dans les procédures de développement
  10. Les organisations doivent se protéger des risques liés à l’IA
  11. Les organisations doivent se protéger des risques liés à l’IA
  12. li>

Obtenir du code à partir d’invites en langage naturel est la base

Kaxil Naik, directeur de l’ingénierie des flux d’air chez Astronomer, déclare : « Le codage finira par être plus efficace avec les systèmes générés par l’IA. un code passe-partout et des copilotes assistés par l’IA assimilant le langage naturel à un code fonctionnel, rationalisant la compréhension des bases de code complexes et garantissant le respect des meilleures pratiques. prévoyant d’utiliser des outils d’IA dans leur procédure d’avancement. Parmi ceux qui utilisent déjà l’IA dans le développement, plus de 82 % l’utilisent pour écrire du code. Ces chiffres recommandent un changement de paradigme dans la façon dont les concepteurs développeront le code, réutiliseront le code existant et construiront des éléments.

La reconnaissance du code est une tâche essentielle du concepteur

La capacité de déclencher du code comporte des dangers. si le code généré présente des problèmes de sécurité, des défauts ou introduit des problèmes d’efficacité. L’espoir est que si le codage est plus simple et beaucoup plus rapide, les développeurs disposeront de plus de temps, de tâches et de meilleurs outils pour valider le code avant qu’il ne soit intégré dans les applications. Est-ce que cela se produira ?

« Alors que les concepteurs adoptent l’IA pour gagner en productivité, il est de leur devoir de vérifier ce qu’elle produit », déclare Peter McKee, responsable des relations avec les développeurs chez Sonar. « Bien rangé pendant que vous codez garantit qu’en effectuant des contrôles et un suivi constant tout au long de la procédure d’expédition, les concepteurs peuvent consacrer plus de temps sur de nouveaux travaux au lieu de corriger les bogues dans le code créé par l’homme ou généré par l’IA. »

DSI et les RSSI s’attendront à ce que les concepteurs effectuent davantage de validation du code, en particulier si le code généré par l’IA présente des vulnérabilités importantes. « Si les concepteurs n’exécutent pas d’automatisation pour analyser et surveiller le code généré par l’IA, cela implique énormément plus de code à réparer et plus de responsabilités financières technologiques », ajoute McKee.

La fabrication comme tout nouveau paradigme de développement

L’une des préoccupations liées à l’utilisation des outils Gen-AI pour établir du code est la manière dont cela affectera les outils et les exigences des grandes entreprises comptant de nombreux groupes de développement prenant en charge des milliers d’applications. À quoi ressemblera le développement dans les grandes entreprises si les concepteurs écrivent moins de code mais intègrent davantage de code développé par genAI ?

« La combinaison d’outils au sein des équipes entraîne un manque de normes et une intégration complexe, sans parler du fait qu’il contribue à la charge cognitive des développeurs », déclare Markus Eisele, responsable de la méthode et de la gestion des outils de développement chez Red Hat. « Un mélange de bonnes pratiques combiné à un accès facile via des portails de conception centralisés est là pour changer cela. Associé aux capacités enrichies d’une plate-forme d’application, cela a le potentiel d’éliminer les frictions et de faciliter l’application des meilleures pratiques au-delà des limites de l’équipe. . »

L’implication est que les IDE peuvent se transformer en plates-formes d’assemblage similaires au style assisté par ordinateur (CAO) dans la fabrication ou au développement de la modélisation de l’information (BIM) dans le bâtiment et la construction. L’accent passe du développement de composants personnalisés à l’assemblage de composants préexistants et à l’exploitation d’outils intégrés pour valider le style.

Moins de codage, mais de plus grandes menaces pour la chaîne d’approvisionnement du code

Une autre ramification du code établi avec genAI concerne la manière dont les dirigeants d’entreprise élaborent des politiques et surveillent la chaîne d’approvisionnement du code intégré dans les applications métier. . Auparavant, les entreprises étaient plus préoccupées par le suivi des composants logiciels open source et industriels, mais genAI inclut de nouvelles dimensions.

« Les spécialistes Devops joueront un rôle majeur dans la préservation et la gestion de la chaîne d’approvisionnement de l’IA : la sécurité, l’authenticité, et les origines des modèles basés sur l’IA feront l’objet d’une analyse plus approfondie dans les opérations quotidiennes d’une entreprise », déclare Ilkka Turunen, directeur technique de terrain de Sonatype. « L’exécution d’une méthode qui évalue les risques liés à l’IA et gère correctement les dépenses en produits d’un modèle d’IA contribuera à garantir une santé et une gestion appropriées de l’IA dans les installations de développement de toute organisation. »

Anticiper les SAST, DAST et autres systèmes de sécurité et des outils de gestion de code pour augmenter les capacités d’automatisation de l’analyse du code et aider à confirmer si le code genAI respecte les politiques avant que les développeurs n’intègrent le code dans les référentiels d’entreprise.

Les nouveaux paradigmes accélèrent l’intégration

Les développeurs peuvent s’attendre à ce que la marque -de nouvelles capacités combinées, qui ont déjà connu des améliorations considérables au cours de la dernière décennie grâce aux API, aux plates-formes d’intégration IFTTT SaaS, aux plates-formes combinées en tant que service (iPaaS) et à d’autres innovations communautaires. Cela dit, les développeurs effectuent encore beaucoup de travail pour cartographier les champs d’informations, raisonner les changements de code, garantir la fiabilité et s’adapter aux considérations de performances.

Emmanuel Cassimatis, équipe IA et innovation chez SAP, déclare : « Lorsqu’il s’agit de combinaison, le cycle de vie de l’avancement a historiquement été assez fragmenté tout au long de ses différentes étapes, depuis le style, la construction, le test, l’intégration, le déploiement, la fourniture et la révision. L’IA peut permettre le mariage en exploitant une photo à partir des données de diverses applications, conduisant à une plus grande collaboration entre créateurs. »

Ce n’est qu’une question de temps avant que les développeurs n’utilisent genAI pour construire des combinaisons sans code et auto-réparatrices avec des exigences de langage naturel et des circulations visuelles générées automatiquement.

Les développeurs en tant que gestionnaires d’agents d’IA

Phillip Carter, superviseur principal des articles chez Honeycomb, pense que genAI transformera les tâches que les concepteurs et les ingénieurs d’assurance qualité effectueront à l’avenir. « Dans un avenir potentiellement lointain, le langage naturel est très susceptible de guider davantage la génération de code et les tests permettant de vérifier le code produit. Si nous constatons un autre changement énorme dans les capacités de l’IA, comme le transformateur, nous pouvons nous attendre à ce que les agents IA effectuent la majorité de ce travail, les concepteurs programmant les objectifs et les restrictions que ces agents doivent suivre. »

Carter continue avec un prévision audacieuse, déclarant : « Avec une nouvelle amélioration qui place l’IA aux commandes, il est possible que les agents configurés puissent examiner le comportement d’exécution pour les tâches d’assurance qualité, d’observabilité et de sécurité afin d’inspecter les inconnues reconnues, ce que les concepteurs sont souvent ralentis. « 

Je trouve cette prévision intrigante, car elle suggère que les développeurs et les ingénieurs graviront les échelons pour spécifier l’architecture, les exigences non fonctionnelles et fonctionnelles – guidant genAI dans l’établissement et l’évaluation plutôt que dans l’écriture. code et automatisation des tests.

Carter ne croit pas à un avenir sans développeurs et poursuit : « Les gens resteraient au courant à tout moment, se soucieraient davantage des objectifs, des contraintes et examineraient des scénarios uniques. »

L’IA touche de nombreuses étapes du SDLC

Alors que les copilotes et de nombreux outils genAI se concentrent aujourd’hui sur le codage, anticipez de nouvelles capacités pour transformer d’autres phases et responsabilités dans le SDLC. Humberto Moreira, ingénieur principal en options chez Gigster, déclare : « À mesure que les meilleures pratiques se développent pour intégrer genAI dans le SDLC, divers modèles peuvent mieux fonctionner pour des phases particulières du cycle, par exemple, une conception améliorée pour les exigences, une pour l’avancement du code et un pour l’assurance qualité. »

Le changement de paradigme de la genAI a actuellement un impact sur l’assurance qualité, car les outils permettent des cas de test plus robustes et un retour plus rapide sur les modifications de code.

« Avec l’essor de l’IA, je crois un élément dont on parle moins est la façon dont toutes les installations autour du codage connaîtront un changement total », déclare Gilad Shriki, co-fondateur de Descope. « C’est une question de temps avant que les SDK, les tests et les documents soient générés ou assistés par l’IA, ce qui indique que les concepteurs devront coder et documenter leur travail dans des formats consommables particuliers pour l’IA. »

La dernière prédiction de Shriki recommande que les concepteurs devront peut-être ajuster leur langage, de la même manière que les individus doivent apprendre à parler le langage que les assistants virtuels sont configurés pour comprendre. J’espère que cette prédiction ne deviendra pas réalité, car cela pourrait signifier que genAI offre simplement des commodités et pas toujours des améliorations d’efficacité ou de qualité.

Des personnalités de GenAI et du progrès humain émergent

Le rôle de GenAI dans les logiciels le progrès pourrait se séparer des fonctions et des obligations actuellement détenues par les concepteurs humains. Des outils tels que des générateurs de code, des compilateurs et d’autres outils de développement serviraient à la fois les humains et les machines.

« Ce qui est intrigant, c’est que je pense qu’il pourrait y avoir une toute nouvelle vision du code : une vue est que vision humaine conventionnelle du code, celle que les développeurs sont formés et habitués à lire et à composer, mais il existe ensuite une deuxième vision, plutôt surprenante, qui est la vision défensive optimisée pour la sécurité de l’IA », déclare Dustin Kirkland, vice-président de l’ingénierie chez Garde-chaîne. « Cette vision est moins compréhensible par les humains mais parfaitement lisible par les compilateurs et les interprètes, et dans cette méthode, elle finit par être simplement un autre format intermédiaire pour le code. »

La question est de savoir si des vues alternatives amélioreront les performances de l’intelligence artificielle. capacité à identifier les problèmes, les problèmes de sécurité et d’autres problèmes plus précisément et plus efficacement.

L’IA améliore les capacités opérationnelles tout au long de la procédure de développement

Cody De Arkland, directeur de l’expérience de conception chez LaunchDarkly, recommande cas d’utilisation où genAI peut contribuer à améliorer la fiabilité et les opérations des applications. « Nous pouvons voir les premières indications sur la façon dont les outils de développement apprendront des interactions, et le secret sera le support instinctif. »

De Arkland recommande ces exemples :

  • Établir un site Web composants d’application qui correspondent aux normes de style découvertes
  • Produire l’indicateur de fonctionnalité lorsqu’il détecte un développeur créant une nouvelle fonction
  • Phase une toute nouvelle version logicielle (CI/CD), mais aussi lancer il revient lorsqu’il découvre des problèmes
  • Activer des boucles de rétroaction en temps réel vers le contrôle qualité à partir d’exécutions personnalisées plutôt que post-déploiement

Ces idées soulèvent la question de savoir quelle sera la prochaine étape. gen devops et les capacités SRE seront autorisées ou augmentées par genAI.

Les organisations devraient se protéger des risques liés à l’IA

Une dernière prédiction concerne les dangers d’exposer genAI aux droits d’auteur de l’organisation, y compris le code et les informations. À mesure que genAI autorise de nouvelles fonctionnalités sur l’ensemble du SDLC, de nouvelles questions se poseront quant à savoir si les avantages dépassent les menaces.

« Alors que nous travaillons vers la vision d’un logiciel de bout en bout compatible avec l’IA. Dans le cadre du processus d’avancement des applications, les experts en technologie à tous les niveaux souhaitent s’assurer que tout code produit est de la plus haute qualité et ne nuit pas à la fiabilité globale ou à la maintenabilité de l’application », déclare Brandon Jung, vice-président de l’avancement de l’écosystème et des services chez Tabnine. « Avec un œil attentif sur les données entrant dans le modèle – les vôtres et celles de l’ensemble de formation – prenez le temps et les efforts nécessaires pour évaluer, sélectionner et diffuser l’IA de manière à protéger vos politiques et vos propriétés les plus importantes – votre code et vos informations. »

La question est de savoir si les algorithmes de genAI et les outils qui les permettent construiront des mesures de protection pour protéger les propriétés de l’entreprise et dans quelle mesure ces protections dépendront également des capacités de genAI.

Bien que nous soyons encore au début de l’ère de l’avancement logiciel de la genAI, il devient clair que la génération de code et les copilotes ne sont que le début de nouvelles méthodes basées sur l’IA pour établir, tester, publier et maintenir des logiciels.

.

Toute l’actualité en temps réel, est sur L’Entrepreneur

LAISSER UN COMMENTAIRE

S'il vous plaît entrez votre commentaire!
S'il vous plaît entrez votre nom ici