Original Post
I am trying to get more information on exactly what steps there are in creating a technical design document for software creation (this piece of software is actually a game). I don't have much experience with this, at work where I don't program games, we hardly get to work off a functionality document, never-mind a technical document. The closest thing I created to a technical document (or at least what I think is a technical document) is a few pages of feature and the planned classes along with the interfaces/API I would need to complete the PHP framework I built. These are the 2 types of documents I see that should be created before any code in written (am I right in which each document type is?): Functional Documentation - Explains the goal of the project and what features you want to have in the project. Technical Documentation - Take the functional documentation and creates a plan of how to solve the goal and implement the feature in the project through code. Also contain a very high level of planned code to accomplish the goal like classes and their interfaces/API. Question - The technical design document can really only be done once the functional documentation is done, right? Obviously, in the technical documentation, the high level code outline is not going to detail every single class, member, method, etc... that is needed but it is just more to help speed along the coding process by having some guidelines as you code (obviously the code is going to change as as more gets written and things come up that could not be thought of during the designing phase). Any links to articles or books that help explain this process (like how much code should be specced out, how long you should speed in the technical design phase, etc...) would be great.