I need to write a software document which includes requirement spec, functional spec and design/technical spec. My knowledge is still about 10 years ago and I forget most how to write a organised software spec. For now, it seems that requirement and functional spec are mixed up together. Before data flow diagram was included in the functional spec. But it seems that now the diagram is not so popular.
Therefore, I want to update myself to see any good software enginnering books are recommended? It is better to have guidelines or examples, which topics or information/diagram should be included and which should not be included in each of the 3 specs, e.g. the interaction diagram is included in functional or design spec, etc.?