ACCELERATING THE SOFTWARE DEVELOPMENT LIFECYCLE WITH GENERATIVE AI

Accelerating the software development lifecycle with Generative AI

  • Chinmoy Bhatiya, Cody Watson & Salman Amindavar
  • Published: 26 August 2024

 

In this second article in our GenAI series, we explore how  GenAI can help software teams within financial services institutions increase efficiency and accelerate the development cycle while adhering to regulatory standards for secure systems development. 

Software development teams in financial services find themselves caught between a rock and a hard place. On the one hand there is constant pressure to accelerate the software development lifecycle in response to customer expectations and competitors, including more agile market entrants. On the other hand, they must adhere to stringent software development processes combined with rigorous quality and security controls. 

There have been many attempts to streamline the software development lifecycle (SDLC) in recent years. Banks have attempted various Agile development methodologies, workflow automation platforms, cloud-native development, and other strategies to accomplish this goal. Yet SDLC within many financial institutions is still cumbersome, inefficient, and expensive.

GenAI has the potential to significantly accelerate the SDLC by automating many labor-intensive tasks traditionally performed by employees. By delegating a large amount of heavy lifting to AI agents, humans can focus on critical conversations, driving alignment, providing feedback and validation, rather than mundane tasks such as documentation, reporting and regression analysis. 

GenAI capabilities are thus good news for developer teams. By reducing the toil associated with software development in a large enterprise, employees can focus on delivering business value that offers a competitive advantage to the business. Ultimately, this results in greater employee satisfaction and ensures that valuable human expertise remains in-house. 

When it comes to software development, writing and testing code are often the first activities that come to mind. AI solutions such as GitHub Copilot include mature functionality for code generation, code explainability, and automated code documentation. Using some or all these capabilities accelerates the day-to-day activities of software engineers.

However, with large-scale implementations within regulated industries such as financial services some of the most time-consuming activities occur before and after functional code is written. These include requirements analysis and definition, systems design and architecture, and business acceptance testing. Our perspective is that GenAI can greatly accelerate these activities as well without sacrificing quality or due process. Below we outline some examples of how GenAI can complement the actions of humans across the SDLC.

REQUIREMENTS:

  • Business analysts and stakeholders determine the requirements and prompt AI agents to generate artifacts that capture these requirements (e.g. epics, features, and user stories). These GenAI artifacts are then refined with human feedback.

DESIGN: 

  • User experience (UX) design – Designers provide instructions and context to capture the desired user experience design. GenAI agents produce wireframes and high-fidelity prototypes which are validated and refined by UX designers.
  • Systems design – System designers discuss and whiteboard their preferred system architecture including interactions with upstream and downstream systems. GenAI agents generate architecture diagrams, data flows and documentation artifacts for review and validation. 

SOFTWARE:

  • Development – GenAI tools generate code snippets and functions that are combined to form complex features. GenAI can also optimize code, write unit tests, document code, explain and search through code, debug errors and lookup third-party documentation. Developers validate GenAI outputs, ensure relevance, and determine reusability. Traditional CI/CD systems maintain quality and security thresholds.
  • Acceptance testing – Engineers prompt GenAI tools that generate and execute tests for business requirements. GenAI can also generate test cases and test scripts, execute automated test suites, and identify and document bugs and code vulnerabilities for engineers to review.
  • Deployment and operations – Traditional CI/CD systems automate and deploy releases. GenAI agents monitor usage analytics and error logs, troubleshoot error trends, and recommend and organize improvements. Employees prioritize improvements and bug fixes.

GenAI technologies will undoubtedly transform the software development lifecycle, offering unprecedented opportunities for efficiency and acceleration. SDLC processes at several companies currently leverage a mixed ecosystem of in-house developed and vendor-provided tools. 

It is likely that vendor-provided tools may eventually integrate GenAI capabilities, although the timing for such maturity will vary based on their own product roadmaps. Until such time, it is in the best interest of financial institutions to invest in developing their own GenAI utilities to accelerate their SDLC and capitalize on the promise of acceleration.

Capco is at the forefront of leveraging GenAI to transform the SDLC for our clients. Our depth of expertise in developing software solutions for financial services clients provides us with intimate knowledge of the challenges faced in accelerating software delivery. By combining this expertise with our GenAI capabilities, Capco is helping clients make practical use of innovative technology to solve real-world problems and gain a competitive edge. Please contact us to find out more.