Further reading
Most of the concepts discussed in this guide come from software engineering. There are many textbooks and websites that explain requirements analysis, agile development, and so on. The Wikipedia article on software engineering is probably as good a starting point as any, especially the Fields section.
Not much has been written specifically about the software engineering of NLG systems. However, Arria’s Chief Scientist, Professor Ehud Reiter, wrote an academic paper about how the refinement process worked in one of his research projects.