Fermer

janvier 29, 2019

Les experts de l'industrie se prononcent sur l'adoption de l'IA et du ML dans le développement de logiciels


Les experts parlent de l'adoption de l'IA et du ML dans le développement de logiciels

L'intelligence artificielle (AI) et l'apprentissage automatique (ML) sont en train de transformer presque tous les secteurs. Dans nos précédents blogs, nous avions discuté de la transformation de la finance, du service client de la chaîne d’approvisionnement et de la logistique, et d’autres industries. Dans ce blog, nous parlerons de la façon dont l'IA et le ML radicalisent l'industrie du logiciel. Nous examinerons les avantages de l'adoption de l'IA et du ML dans le développement de logiciels et ce que les experts du secteur en disent.

Le développement de logiciels consiste essentiellement à écrire des tonnes de code à base de règles. Traditionnellement, les développeurs devaient spécifier chaque détail pour que le système sache quoi faire, puis personnaliser les fonctionnalités de chaque technologie. Avec l'adoption de l'intelligence artificielle et de l'apprentissage automatique, ce processus devient beaucoup plus facile.

Auteur, scientifique et ingénieur de recherche Google Pete Warden le dit bien :

Le motif c’est qu’un projet logiciel existant traitant le traitement de données en utilisant une logique de programmation explicite, et l’équipe chargée de le maintenir trouve qu’il peut le remplacer par une solution basée sur l’apprentissage en profondeur… Ce que je vois, c’est que presque tous les systèmes de traitement de la logique peut être améliorée de manière significative en appliquant un apprentissage automatique moderne. C’est peut-être moins dramatique, mais c’est un changement radical dans la façon dont nous construisons des logiciels. Au lieu d'écrire et de maintenir des enchevêtrements logiques complexes et superposés, le développeur doit devenir un enseignant, un conservateur des données de formation et un analyste des résultats. ”

Concrètement, cela signifie un changement révolutionnaire dans l'essence même du développement logiciel.

"Les environnements informatiques modernes sont incroyablement (et de plus en plus) complexes et en constante évolution, ce qui entraîne une perte de temps et de ressources consacrées à la surveillance, au dépannage et à la correction de cap", déclare Phil Tee (19659011). , Cofondateur et PDG de Moogsoft Inc . «C’est un positionnement réactif pour la plupart des entreprises, mais lorsque les équipes utilisent la technologie AIOps, elles peuvent exploiter des algorithmes tolérants aux changements et accéder à des informations indexées. Cela leur permet de consacrer plus de temps à un travail proactif et significatif, plutôt que de régler les mêmes problèmes à répétition ou de gérer les règles et les filtres. ”

L'intelligence artificielle et l'apprentissage automatique peuvent transformer toute la vie du développement logiciel. Cycle (SDLC).

  • Synthèse de gros volumes de données pour prédire le succès ou l’échec et la valeur commerciale d’un projet.
  • Prévoit des délais précis pour la livraison des projets, fournit des mises à jour de l'état des projets et crée des calendriers de projets.
  • Diagnostic automatique et résolution des problèmes rencontrés dans le projet.

Examinons en détail comment y parvenir.

1. Transformer rapidement et efficacement une idée en code

Le processus, du début d'une idée à son exécution réelle, en un code exploitable prend du temps et est complexe. Traditionnellement, les développeurs doivent passer par un long processus d'essais et d'erreurs pour obtenir le code de base en place. L'obtention des autorisations de financement pour le projet est également compliquée et nécessite de faire passer le projet à un niveau prototype avant même de demander des fonds. Tout cela peut être facilité avec AI et ML. À l'avenir, le système lui-même pourrait apprendre à traiter les idées du langage naturel et à suggérer du code exécutable par la machine sans intervention humaine. AI et ML rendent cela possible, même maintenant, en proposant aux systèmes d’enseignement de suggérer l’achèvement du code. De cette façon, les systèmes apprendront lentement à générer du code au moyen de modules prédéfinis.

Considérer la viabilité d'un projet devient également plus facile et plus rapide avec AI et ML. L'apprentissage automatique peut aider les développeurs à identifier et à hiérarchiser les effets du projet en fonction des risques de l'entreprise. De cette façon, le temps et les efforts consacrés aux tests de régression inutiles et à la rectification peuvent être éliminés. Une décision judicieuse sur la faisabilité ou non du projet peut donc être prise dans les premières étapes.

Lecture connexe : Comment accélérer la croissance de votre entreprise avec Robotic Process Automation

2. Gestion de projet efficace

Grâce à la détection de modèle, AI et ML peuvent être formés pour utiliser les détails de projets antérieurs afin de fournir des estimations précises du projet en cours. Les détails du projet historique tels que les bugs, les phases de test, les valeurs réelles et les valeurs estimées peuvent être intégrés au système et utilisés pour affiner le niveau de précision. Grâce à cela, le système apprendra à prévoir des calendriers de livraison précis et à créer des horaires de travail pour les membres individuels de l'équipe. La gestion des risques, ainsi que la gestion des ressources, peuvent être mieux exécutées de cette façon.

3. Automatisation des tests et de la détection des erreurs

La détection des formes est l’un des avantages les plus précieux de l’apprentissage par la machine. Ceci peut être utilisé efficacement pour automatiser les processus de test et de débogage dans le développement logiciel. L’un des défis des tests de logiciels est de dresser une liste des cas et scénarios les plus probables pouvant affecter les performances du programme. Grâce à la détection de modèle, les systèmes peuvent consulter les journaux antérieurs et générer automatiquement une liste de cas de test. Ils peuvent également identifier et classer les types d'erreur et, à terme, apprendre à les résoudre automatiquement.

Joe Colantonio expert en automatisation logicielle et en test de performance, décrit les possibilités offertes par AI et ML. «Ne serait-il pas formidable de pouvoir répondre à la question de test classique:« Si je modifie ce code, quel est le nombre minimum de tests que je devrais être capable de réaliser pour déterminer si ce changement est bon ou mauvais? ” dit-il. «De nombreuses entreprises utilisent des outils d'intelligence artificielle qui font justement cela. En utilisant ML, ils peuvent vous dire avec précision quel est le plus petit nombre de tests permettant de tester le code modifié. Les outils peuvent également analyser votre couverture de test actuelle et repérer les zones peu couvertes, ou indiquer les zones à risque de votre application. "

En plus de faire une grande différence dans le processus de développement de logiciels L'intelligence artificielle et l'apprentissage automatique vont également changer la manière dont les applications sont créées. Grâce à la puissance de l'IA et de ML, les développeurs pourront concevoir des applications capables d'écouter, de réfléchir, de parler, de raisonner et de prendre des décisions. Les technologies de reconnaissance de vision, de reconnaissance optique des caractères et de nombreuses autres fonctionnalités basées sur l'IA aideront les développeurs à créer des applications plus rapides, plus intelligentes et de meilleure qualité. À Fingent nous nous efforçons de mettre cela en pratique chaque jour. Aucun domaine n'est à l'abri des changements que l'IA et le ML peuvent apporter, et nous sommes déterminés à rester sur le sujet.

Lecture connexe : Principales tendances en matière d'intelligence artificielle à surveiller en 2019 [19659034]




Source link