Разработка ПО — это не кодирование: почему ИИ решает не ту задачу
Разработка ПО — инженерная задача, а не просто кодирование. Хотя ИИ отлично пишет код, он игнорирует главные причины проблем: нечёткие требования, неправильная
Traité par IA depuis Habr AI ; édité par Hamidun News
Le développement de logiciels n'est pas simplement écrire du code. L'IA résout bien cette tâche étroite, mais l'ensemble du processus d'ingénierie comprend des dizaines d'autres problèmes que les machines ne peuvent pas résoudre.
La codification et le développement sont des professions différentes
Il existe une distinction utile qui a été oubliée pendant longtemps dans la sphère informationnelle. La codification consiste simplement à traduire la logique en syntaxe du langage de programmation. Cela nécessite une éducation de niveau secondaire et une expérience dans un ou deux langages. Mais le développement de logiciels est une discipline d'ingénierie à part entière. Un développeur se consacre à la conception architecturale, à la communication avec les stakeholders, à la gestion des exigences, à la planification des versions, à l'évaluation des risques et à l'évaluation de la dette technique. Écrire du code est un bonus agréable, mais ce n'est pas le travail principal.
L'IA écrit vraiment bien le code. Mais quand nous regardons les sprints réels et les rétrospectives dans les entreprises, il s'avère que le code n'est qu'une de nombreuses parties du tableau général du développement.
Où l'IA ne peut pas voir les problèmes
Les retards et les échecs dans le développement surviennent rarement parce que quelque chose est "techniquement difficile". Lors des retros, les équipes se plaignent de quelque chose de tout à fait différent :
- Les exigences sont formulées de manière peu claire — vous devez clarifier plusieurs fois, refaire, clarifier à nouveau
- Les décisions architecturales prises il y a des mois ne tenaient pas compte des nouvelles contraintes ou ont augmenté en complexité
- Les stakeholders répondent lentement, donnent des instructions contradictoires ou changent les priorités au milieu du sprint
- La dette technique s'accumule imperceptiblement et ralentit le développement de 30-40%
- Il est difficile d'estimer une nouvelle tâche sans une spécification claire et complète
C'est là que l'ingénierie humaine montre sa valeur — dans la gestion de cette complexité. L'IA peut prendre une spécification prête et complète et écrire du code bon et fiable. Mais si la spécification elle-même est le résultat de mois de clarifications, de négociations, de compromis et de disputes architecturales — ce processus l'IA ne le voit pas et ne peut pas l'améliorer.
"L'IA résout bien la tâche d'écrire du code.
Sauf qu'elle résout la mauvaise tâche."
Ce que le développement a vraiment besoin
Les investissements dans la codification par IA sont justifiés et continueront à se développer. Mais ils résolvent une tâche secondaire. Un vrai bond en productivité viendra avec des outils et des processus qui aident à recueillir et affiner les exigences sans trente réunions avec le responsable produit, à suivre leurs changements pendant les sprints, à gérer l'architecture et la dette technologique, à lier le code aux exigences.
Ce que cela signifie
En ce moment, tout le bruit autour de l'IA est focalisé sur la vitesse de codification. Mais si les exigences sont mal recueillies, l'architecture est défectueuse et les stakeholders ne sont pas alignés les uns avec les autres — le code rapide ne vous aidera pas. Le développement d'ingénierie commence bien avant que l'IDE ne soit ouvert. Et ici, l'IA ne peut presque rien faire.
Vous voulez cesser de lire sur l'IA et commencer à l'utiliser?
AI News est un fil d'actualité IA. Hamidun Academy vous apprend à utiliser l'IA dans votre travail.