Agile Methodologies
- Came about in the early 2000s.
- They are actually a group of development methods and not a single one.
- They focus on the idea that requirements will constantly shift and change while software development is taking place.
- This can only be dealt with by producing software in an iterative manner.
- With each iteration of the software having increasing requirements and being shown to the user.
Extreme Programming
- Involves an iterative approach much like RAD, however, the iterations are very short, often just a week long.
- For this to work the company requesting the software will often “embed” a user in the development team.
- New requirements will be built into successive iterations quickly and the user will be able to give instant feedback into the next iteration.
- A key feature of Extreme programming is “paired programming”.
- This is literally the idea of two programmers sitting side by side at one computer while the code is written. One drives and the other analyses giving instant feedback and advice. They would make sure to switch roles
often - Although this sounds expensive it is claimed this approach produces much higher quality code sooner, thus saving a lot of time and effort later on.
Both
They are Similar to RAD, but much shorter time between iterations. A user becomes part of the development team to facilitate quick feedback. Paired programming: 2 heads are better than one. Code partner to review, advise and bounce ideas off.
