When talking with my wife about SVN version control and management in the evening, I spoke to me about the Waterfall Model in software engineering. The waterfall model is one of the most basic and most effective software engineering development models. After the presentation, we can suddenly see the division of labor in our current software work. First, let's go to the waterfall model diagram I drew:
From requirement to encoding, it is the implementation process, from top to bottom, and from coding to product, it is the verification process and the bottom-up process.
From requirement to encoding, it is the implementation process and the actual R & D process. It must go through requirement analysis, system design, and detailed design, the work is basically done by the product manager (divided into marketing and R & D), System Engineers (architects for large projects), software engineers andProgramPersonnel to complete. Coding to products is a verification process and a testing process. It must undergo unit testing, inheritance testing, and system testing, the correctness of the detailed design, system design, and outline design are verified respectively. In this test process, basically all are white-box tests, and some tests must be completed by developers themselves, such as unit tests. Black box testing basically verifies whether the final product meets the original requirements. Every link in the waterfall model is closely linked. If any link has a problem, you need to correct the design Goods code of the previous link and re-go the waterfall process.
It can be seen that software engineering is a complex project, but now I understand that from demand to product, the most difficult thing is requirement analysis and architecture design, therefore, without an excellent product team and an excellent system/architecture engineer, it would be hard to implement in the product development and testing process. Therefore, product managers and architects are the top priorities, product managers and architects directly decide whether the product can be implemented or whether the product is good or bad. I hope the development process can be shown in the waterfall model, so I believe this will certainly develop a good product.