This workshop can either be run in a traditional workshop environment that is led by a facilitator, or you can work through the exercises in a self service perspective. If you want a deep dive, try and go to a facilitator led session as they will be able to dive deep into the various topics introduced in this workshop, and share good practices and tips to help you write better specs.
- Kiro - you will need to install Kiro, a new IDE that has native support for spec driven development (available for Windows, MacOS, and Linux)
- Python 3.10 (or later)
- Python uv
- git
In this short section you will look at the evolution of AI coding assistants and how they have changed over time. We explore some of the challenges, and how specification driven development provides solutions.
Click on How did we get here? The evolution that led to specification driven development to get started.
We will explore the key elements of specification driven development, talking a look at the key pieces that make it work. We start off with Requirements, and look at how we can generate these and look at EARS as a way of expressing our requirements. Next we look at Design and how critical this is to the code the AI coding assistant will generate. We deviate and look at Steering files, and how these are essential to providing the right context to help steer the Design. Finally, once we are happy with our Design, we look at how to generate implementation tasks, breaking down what we want to do (the Requirements) into small units of work.
Click on Getting started with Spec Driven Development to get started.
We will now apply this knowledge and show you can build an application from scratch with specification driven development. We will go through the entire lifecycle to create a complete working application. Once we have it up and running, we will go through the spec driven lifecycle and show how to add new features, as well as how updating existing specifications work.
Click on Building a new application with spec driven development to work through a series of hands on lab as you build your first application with Kiro and spec driven development.
In this lab we will explore how this is different from greenfield use cases and show you techniques to help you get started with your existing code and projects. You will take an existing project in GitHub, and show how you can apply SDD to understand and document the application architecture, maintain the code, and add new features.
Click on Using spec driven development with existing applications to see how you can use Kiro and spec driven development in your existing projects.
During this hands on tutorial we used a new developer tool called Kiro that provides native support for specification driven development. In this section we will dive through some of the key features to help you get the most out of this tool. We will cover the core features and how they work, as well as look at configuration options and and share tips that you can use straight away.
Click on Tools and Resources to dive deeper into some of Kiro's features and look at additional resources to help you do more.
If you encounter issues or errata with this workshop, please create a new issue and this will notify me that I need to do something.
If you find this workshop useful (or not) please let me know - this will help me justify creating more workshops like this. Please complete this short survey - thank you!
Made by DevRel with 💖.
Changelog
