Skip to Content
View all events

AI-Augmented Software Design

Published by O'Reilly Media, Inc.

Intermediate content levelIntermediate

From identifying flaws to architecting new features

What you’ll learn and how you can apply it

  • Use AI to rapidly refactor the design of existing applications
  • Analyze design flaws in existing code and implement solutions with the help of AI
  • With the aid of AI, create design and code for new features to meet your criteria
  • Use your fundamental knowledge of software design to evaluate and guide AI for software design

Course description

Design rarely happens in greenfield or in isolation. New applications require modifications to the evolving design; existing applications require constant refactoring and enhancements to the design already in place. Most of us are familiar with good design characteristics: high cohesion, low/loose coupling, separation of concerns, and so on. Most of us have learned and apply SOLID principles. Isn’t that enough to create and maintain good design?

Many AI tools have evolved to be extremely fast at analyzing code and identifying issues. They can take a large volume of code and provide a summary based on various aspects, including design patterns in code, hidden flaws in the design, or issues involving extensibility and maintainability. The catch, however, is that none of these tools is consistent or reliable all the time. That’s where your grasp of the fundamentals comes in.

Venkat Subramaniam shows you how your knowledge of design principles, patterns, and practices—when combined with the speed of AI tools—can accelerate your ability to analyze, evaluate, refactor, and evolve the design of existing code as well as design newer features in existing applications.

This live event is for you because...

  • You’re an intermediate- to senior-level programmer, architect, team lead, or a technical manager.
  • You work with enterprise software applications.
  • You want to be able to accelerate the design of your applications by leveraging AI, and at the same time apply the fundamentals of design you’re familiar with.

Prerequisites

  • Some familiarity with SOLID principles, design patterns, design practices

Recommended follow-up:

Schedule

The time frames are only estimates and may vary according to how the class is progressing.

Analyzing and identifying design flaws using AI (90 minutes)

  • Presentation: Using AI tools (including but not limited to Copilot and Claude) to analyze existing code
  • Group discussion: Evaluating the recommendations from AI tools
  • Hands-on exercise: Use at least two AI tools to analyze design qualities
  • Q&A
  • Break

Refactoring design with the help of AI (80 minutes)

  • Presentation: Modifying existing design with your knowledge and the aid of AI
  • Group discussion: Guiding the AI tools in the right direction and evaluating its actions
  • Hands-on exercise: Refactor design for a sample application
  • Q&A
  • Break

Creating design for new features with AI assistance (70 minutes)

  • Presentation: Driving AI to create design from specifications
  • Group discussion: Evaluating and altering design created using AI
  • Hands-on exercise: Work with AI and a set of requirements and analyze results of the design
  • Q&A

Your Instructor

  • Venkat Subramaniam

    Venkat Subramaniam is the founder of Agile Developer Inc., creator of Agilelearner.com, cofounder of the dev.next software conference, and an instructional professor at the University of Houston. Venkat helps his clients effectively apply and succeed with sustainable Agile practices on their software projects. He’s trained and mentored thousands of software developers in the US, Canada, Europe, and Asia and is a regularly invited speaker at several international conferences. He’s also the author or coauthor of a number of technical books, including the 2007 Jolt Productivity Award-winning Practices of an Agile Developer.

    linkedinXlinksearch

Skill covered

Generative AI