From the beginning to the end of a software project, some problems are inevitable due to factors such as resources, personnel, management, and methodology, if the requirements are unclear, project management fails, and communication problems, I accidentally read an article on this topic.ArticleThe summary is comprehensive. I have made some supplements and modifications based on some of my experiences. I can always warn myself when archiving files.
1. Lack of communication with users due to lack of good understanding of user requirements.
2. Estimate the project size and difficulty of incorrect items.
3. Start coding without a plan.
4. The test was not started at the initial stage of the project. It was delayed until the end of the project, or no tests were conducted at all.
5. Currently, the most cool technology has been used by the team by more mature technology, and it is often impossible to make a very correct choice.
6. No software process or methodology is used.
7. There is no real project manager, so developers can lead the project without planning.
8. delay the plan and keep the progress pressure in the later stage.
9. Version Control is not performed, which is confusing.CodeLibrary and development environment.
10. Change the development tools and environment at will during the project process.
11. The customer agreed on any demand, and the demand would never end. Remember to say "no ".
12. There is only one large plan that is not divided into smaller tasks. You must know that it is difficult to implement and implement a large plan if it is not divided into smaller tasks.
13. Insufficient management of the development team.
14. It is often counterproductive to add people to speed up development in the later stages of the project.
15. Developers do not perform unit tests.
16. Once a problem occurs in the project, the pressure should be put on the developer.
17. Do not pay attention to the actual operating environment and hardware conditions of the software.
18. There is no naming or code specification.
19. global variables are used everywhere.
20. When you encounter a problem, you often don't ask others for advice. Instead, you may not solve it by yourself.
21. There is no habit of writing code comments.
22. The input and output data is not verified.
23. Without stress testing, more problems related to the environment and performance often occur in the actual environment.
24. The internal communication of the Project is poor. Every member is immersed in his/her own affairs.
25. Without good Bug management specifications and systems, Bug management is often tracked by text methods such as Word, email, and Excel, which will lead to chaos in the whole project.