I used to think that programmers are busy typing code, there is no time to write these documents, wasting time, later, after a period of time, that these documents are really too important, indispensable, can not be lazy not to write. Reason at once in the business of modifying logic is always unable to find the corresponding interface, although there is write comments, but not detailed, not clear, took a day or two to find, the database is not a document is a painful thing, do not know those fields corresponding to which object properties, forgive my poor English level.
Therefore, I summarize some common software documentation.
software proposal -------The first step in the project, it is important to consider the overall planning of the program, as far as possible, Can be considered from these aspects, such as cost, technology, profitability (this is very important, can not be profitable projects to do it?) )。
software Requirements Analysis Document -------Understand the needs of the project, identify the specific business to be implemented (once you've set it up, try not to change it, Otherwise the consequences are serious), the software Development engineer should read carefully, understand the project process business. It is recommended to have a meeting with the project manager, or a product manager, or a planner, to evaluate the feasibility of the software project (whether this requirement is reasonable or not).
software Development documentation -------Detail the architecture of the project, the modular partitioning of the project, and the corresponding objects, properties, Method (proposed with UML diagram, the effect is better). Software development documentation includes front-end technology (pc/mobile Web,app, desktop applications), backend technology, database technology, and server technology.
encoding specification (write only one)-------the project manager or the development team leader to specify the coding specification, generally adopt the conventional code specification. (It is recommended to write a name that can be understood at a glance).
software test documentation -------without testers, software development engineers are allowed to write the documentation for unit tests and integration tests. (It is recommended that you have a professional software tester to write).
software acceptance document -------Analyze the document according to software requirements to verify that the project functionality is consistent with the requirements document.
user manual -------actually write the user tutorial, this is a relatively simple, illustrated tutorial.
Common documentation for software projects