Five Ways AI Will Break Software Development


Anytime new technology is introduced, humans find ways to aimlessly attach it to existing frameworks or methodologies. This is already happening with AI and software development, but it’s time to think bigger.

Many of the vendors and tools popping up are essentially small add-ons to existing workflows. Add a chatbot here, and sprinkle in an OpenAI API call there. Thinking bigger requires making the entire software development process AI-driven from start to finish. Soup to nuts. 

The rise of AI-powered code generation tools is changing software development, potentially making traditional methodologies (agile, waterfall, spiral, etc.) obsolete. As we approach the capability to use AI to write code and create software with minimal time and resource investment, it’s crucial to examine the implications of the methodology of building software as a whole—it’s simply something we cannot ignore.

How AI Will Break the SDLC Status Quo

I’ll hit the highlights here, but in a recent whitepaper, we touched on a few ways AI will break traditional SDLC methodologies. In the paper, we also glimpse what a new SDLC methodology we call V-Bounce would look like, where humans act primarily as verifiers and creatives rather than grunt workers. As Reid Gordon Simmons, a research professor at the Robotics Institute at Carnegie Mellon University, recently put it, AI is “going to lift the way that software engineers approach their jobs to be much more focused on requirements and specifications and validation and verification than the actual coding practices.”

Here are five ways AI will break current SDLC methodologies:

  1. Speed (two-week sprints are dead): Two-week sprints became the handshake agreement between engineering and product teams years ago as a standard unit of time to build something worth calling a meeting over. Given the improvements in the software development lifecycle from the introduction of AI, traditional two-week sprints are already starting to feel too long. As software development accelerates, we can also expect a continued move towards shorter and more dynamic sprint cycles that are measured in days, possibly even hours.
  2. Teams (no longer humans only): The AI-powered code generation you’ve probably seen in the media is intriguing, but it’s only scratching the surface and performing basic tasks. Looking forward, new team structures will likely comprise multiple AI agents, each with a specific job in the software development process—one agent could lay out the project’s scope and objectives while another focuses on planning and quality analysis. The role of human engineers will shift from coding to providing input and verifying AI-generated results.
  3. Intelligence (knowledge management—IYKYK): Capturing, storing, and making the content created during the SDLC process available drains resources, but it’s critically important. Since most of this information is captured and stored as text, LLMs are primed to help automate and streamline the process. We’re only beginning to see the effects of grabbing code someone just finished, along with the vital context they generated while writing. This is still in its early stages but offers a peek into what the future holds.
  4. Resources (the sun never sets on the SDLC): Follow-the-sun software delivery, where the globe is sliced into three parts with an understanding that it’s always daytime somewhere, never really took off for several reasons. One of these is context transfer, but as mentioned in the previous point, capturing context is a strong use-case fit for AI. As teams around the world begin to understand and implement this, they set themselves up for true globalization.
  5. Demand (Jevons Paradox IRL): All signs point toward the exponential growth in demand for software, and AI is poised to play a central role in filling that demand. Still, it won’t be enough to simply sprinkle in AI where we can, as the bulk of teams do now. For real change, we need to fundamentally rethink how to build software with AI at the core of every process and tool used across the software development lifecycle.

With a New Paradigm Comes New Challenges

As working environments evolve or are completely overhauled, new challenges are inevitable. As we barrel toward AI-powered software development, things to consider include:

1. We’ve never dealt with this much code. We’re about to see an insane explosion in the amount of code generated. Whether this code is generated by humans working with AI tools or by AI on its own, it introduces a large-scale maintainability and support problem that we’ve never dealt with at this scale. When you’re cranking out code really fast, it may pass early verifications or tests that you put in place, but there are always going to be things that you miss. This could ultimately create a problem where you need to send in an actual human to toil through potentially millions of lines of code to fix bugs.

2. More code doesn’t always mean more quality code. The entire field of computer science and engineering was founded around the principle of taking a problem and decomposing it into a language that could be run by a deterministic computer. The idea is to write code that’s easily understandable, maintainable and efficient. 

When it comes to quote-unquote “quality,” traditional needs are derived from long-term maintainability. If you don’t have well-documented, clean, and well-structured code, it doesn’t necessarily matter when you ship it the first time—it matters when you need to fix it three years later. This becomes a cost driver to incentivize high-quality code from the beginning.

Under a new paradigm of AI-drive development, what if it costs nothing to fix broken code? If your system encounters a bug, you could push a button, blow it up and have AI regenerate all the code in 30 seconds, then hit deploy and see if it works. In this scenario, quality becomes less about maintainability and more about how well the code satisfies the requirements.

3. Not everyone is ready for superpowers. AI gives superpowers to developers, but what’s potentially scary is that you don’t want to give superpowers to someone who’s not ready to wield them. For example, a very junior developer could plug in GitHub Copilot and start printing out code, but with no larger fundamentals and understanding, it could become dangerous.

The Future Will Be Here Sooner Than You Think

So where does this all leave us? 

We don’t yet know when it will completely take hold, but it’s safe to assume that AI-driven software development will eventually automate the code generation process. This will ultimately shift the focus from coding to defining requirements and refining the code and spark a surge in new software projects across industries. As the paradigm evolves, project definition and testing will become more closely linked.

Introducing AI into software development could democratize the industry, empowering non-engineers to contribute more directly to engineering tasks. This will have major implications on teams, creating a more balanced dynamic.

Change will be for the betterment of the industry — while modern software wows us daily, the way we create it has become antiquated. Think about it: the concept of “scrum” was developed in the 1980s and gained traction in the mid-to-late-90s before the Agile Manifesto was created in 2001. These components defined the development process in the following decades, but AI is now changing the game.

To put that in perspective, Google was barely a thing when Agile was introduced (it was founded in 1998). We could barely upload images back then. Now, we’re talking about colonizing Mars, yet we still build software the same way we have for decades. 

It’s time to speed up the evolution of the entire development lifecycle, and AI will serve as the catalyst to get us there.

About the Author

Cory Hymel is a futurist and VP of Research & Innovation at Crowdbotics. He helps the company streamline enterprise app development by integrating AI throughout the entire software lifecycle, from requirements gathering to code generation and deployment. This expansive approach reduces development time and minimizes the risk of project failure, helping companies build faster and more securely.

Sign up for the free insideAI News newsletter.

Join us on Twitter: https://twitter.com/InsideBigData1

Join us on LinkedIn: https://www.linkedin.com/company/insideainews/

Join us on Facebook: https://www.facebook.com/insideAINEWSNOW

Check us out on YouTube!





Source link