Two iterative options:
1. Function-oriented development (only focus on the reality of one function in a period of time: for example, in a three-tier architecture, the data layer is developed in one week, the logic layer is developed in one week, and the page is developed in two weeks, integrate again)
2. Case-oriented development (based on the use case diagram, analyze all possible scenarios and write them in sequenceCodeTo deal with these scenarios: for example, to log on to or unregister a user, first develop the logon UI-> bll-> Dal, and then develop the deregistered UI-> bll-> DAL)
You should test your code in various scenarios, such as normal and abnormal. Handle various exceptions as early as possible, and make proper handling and prompts to satisfy your customers. Test-driven development can better solve this problem.
Good software is always iterative, from analysis, design, to development and testing. Each iteration process is a refined process. Do not be afraid to modify the original design and code.