Agile development with flexible design following consecutive development cycles in two-week sprints building gradually new functionality.