Having spent more than 30 years of my life creating/improving/fixing software for business customers, the coding is almost the least important part of the process. In my experience, people rarely know what they really want software to do. They donâ(TM)t want to expend to create detail requirements or even to review the requirements someone else generated. Sometimes, if you can put a simulation of an UI in front of them, they might be able to tell you what they do/donâ(TM)t like but theyâ(TM)ll never be able to tell you if it meets all of their requirementsâ¦because they donâ(TM)t know what they need. In addition, they will always be in a box constrained by their current business model and processes so developing software to actually transform their business and processes isnâ(TM)t going to compute. Similar things happen around testing, test cases and acceptance. The easiest part of a development is the coding, as long as the developer truly understands the problem they are solving.
Perhaps the first place to use AI is in migrating code bases. An AI might be able to review a code base in one language and generate a matching app, with appropriate test cases in a different language.