Recently at the North American Software Testing and QE awards, I was part of a conversation where the topic of advancements in AI will soon remove the need for software delivery teams.
There are tools out there that can create code and applications reasonably effectively. AI can create and execute test cases based on requirements documented, and all steps from beginning to end can be automated. We are close to the point where whatever someone can think of and describe can be created in short order.
As you think about it, the software development industry is working itself out of a job. No more need for certifications, no more planning sessions, estimates, story points, anything that involves creating software will be obsolete. Machines will create whatever is requested.
On the positive note, the pains and stresses that the industry has when creating software will be gone. No longer will there be useless meetings, ongoing email chains, dealing with changing priorities or team environments. We can all wake up in the morning, and the sun will shine, birds will sign and carry on with our day with our wants provided to us by AI. Users can now have full control of what they want in the software. Sounds great.
Well, it does, with the exception that innovation would take a big hit, and there would be an influx of customized software that would create a replace market where being a first-mover won’t mean much. Yet with the lack of innovation, would there be such a thing as a first mover?
Why would innovation take a hit, you ask? Change is based on needs, not wants, and sometimes those needs are not known. The innovation process is through investigation and trial and error. Also, there are other types of innovation, look at coding. We could have everything coded in one language. From an architecture perspective, we might hit snags as we try to advance technology.
Humans like to figure things out, think things through and solve problems. It is in our nature. Providing the idea is only one aspect of software development using the tools in hand to get to that realization is the fun part. Another element about AI that needs discussion is in an article on CIO.com about AI. One of the items it brought up is how AI will adapt to the data provided. Change the data, and the AI will behave differently. Thinking about that with different inputs, language differences, and grammar could create items more complicated than what they need to be and could be difficult to revert. So is it right to have AI build software?
In the end, yes. It will be a great tool to help organizations become efficient in helping their clients. What it means is that the roles currently involved in creating software will need to evolve. We have moved from coding using punch cards to developing code using a graphical interface. What AI will allow is for more time to improve clients’ lives by focusing on the hiding needs and making those technological advances through human ingenuity.