Use case driven architecture - CRUD Kata