Aller au contenu

Spec-Driven Development and the AI Unified Process — with Simon Martinelli

15 avril 2026 · 1 h 11 min

Notes de l’épisode

Simon Martinelli is a Java Champion, Vaadin Champion, and Oracle ACE Pro with over three decades of experience building enterprise software. In this episode, he introduces the AI Unified Process (AIUP) — a methodology he created that combines the rigor of the Rational Unified Process with modern AI-assisted development, and makes a compelling case for why specifications, not code, should be the source of truth. We explore the difference between system use cases and user stories, and why use cases — with their actors, preconditions, main flows, alternative flows, and business rules — give AI agents far better structure to generate working code. Simon walks through the four phases of AIUP: Inception, Elaboration, Construction, and Transition, showing how specs, code, and tests evolve together iteratively while staying in sync. On the architecture side, Simon advocates for Self-Contained Systems over microservices — vertical slices that include UI, backend, and database together, reducing cognitive load for both developers and AI agents. His tech stack of choice is Vaadin for full-stack Java UI, jOOQ for type-safe explicit SQL, and Spring Boot as the application framework — a combination he argues is uniquely well-suited for AI-driven development because it keeps everything in one language with no hidden behavior. We also dig into testing strategies with Karibu Testing for browserless Vaadin tests and Playwright for end-to-end coverage, how teams of two working on bounded contexts with trunk-based development are shipping faster than ever, and why the era of AI is bringing back the Renaissance developer — the generalist who understands the full stack from business requirements to production deployment.

With Simon Martinelli, Java Champion, Vaadin Champion, Oracle ACE Pro — Software Architect & Trainer

  • Tous les épisodes de The AWS Developers Podcast

    Paramètres

    Affichage

    Langue

    Détermine les stations affichées en premier sur la page d’accueil.

    Historique

    Les stations et épisodes écoutés récemment et tes dernières recherches sont seulement enregistrés dans ce navigateur.

    Notifications

    Un court message quand un podcast que tu suis publie un nouvel épisode. Désactive un podcast précis avec la cloche sur sa page.

    Compte

    Enregistrez vos favoris – dans l’app et sur le site.

    Raccourcis clavier

    /
    Ouvrir la recherche
    Espace
    Lecture ou pause
    ← →
    Dans le lecteur : 15 s en arrière, 30 s en avant (épisodes) · dans une rangée : tuile suivante
    ↑ ↓
    Dans une rangée : cible dans la tuile
    Début / Fin
    Dans une rangée : première ou dernière tuile
    Esc
    Fermer la fenêtre ou le menu
    ?
    Cet aperçu
    En cours de lecture

    Voir la station

    À suivre

      Ajoutez des épisodes avec « À suivre » – ils seront lus après l'épisode en cours.