Agile Development

Overview

Teaching: 5 min
Exercises: 10 min
Questions
  • What kind of development process should my project use?

Objectives
  • Explain the key features of agile development.

  • Explain why agile development is a good fit for many new research software projects.

Agile Feedback Loops

Are You Agile?

  1. Which of the key agile practices described above are you currently using?
  2. Which do you think you and your team would actually adopt in the next 3-6 months?
  3. Which do you think are not good fits to your needs or situation?

Key Points

  • Agile development is a software development process based on short iterations and rapid feedback.

  • Key feedback loops are pair programming, test-driven development, continuous integration, and stand-up meetings.

  • Agile works well for exploratory projects.

  • Agile depends on high-bandwidth communication between developers and users, and on developers wanting to be empowered.