In this section, we'll look at the development methodologies that take place at different stages of a Flux project. Keep in mind that these are just guidelines, as methodologies can vary quite drastically from team to team. If two different teams are implementing a Flux system, there will no doubt be some commonalities.
First we'll think about what happens during the initial phases of a new Flux project. Then we'll think about Flux projects that have had a chance to mature, and what the process might look like for adding a new feature to the system.
Many software development methodologies frown upon big upfront design. The reason is simple—we spend too much time designing before any software is written and tested. Incrementally delivering pieces of software gives us a chance to validate any assumptions we may have made while writing code. The question is, does Flux require big upfront design, or can we incrementally implement parts of a Flux...