Exploring agile methods
As we build Wordz, we are going to use an iterative approach, where we build the application as a series of features that our users can work with. This is known as agile development. It is effective as it allows us to ship features to users earlier and on a regular schedule. It allows us as developers to learn more about the problems we are solving and how a good software design looks as we go. This section will compare the benefits of agile development to waterfall approaches, then introduce an agile requirements gathering tool called user stories.
The predecessor to agile is called waterfall development. It is called this because the project stages flow as a waterfall does, each one is fully completed before the next one is begun.
In a waterfall project, we split development into sequential stages:
- Collecting requirements
- Performing an analysis of requirements
- Creating a complete software design
- Writing all the code
- Testing...