The process is often like this: if the business personnel think it is simple, they should say to the technical developers to do a function and then describe the desired effect. If it is complicated, ask a few people to discuss it. It would be nice to explain the results of this discussion clearly. Then, I usually ask two questions: Is it difficult? How long does it take? The first problem is that people in the workplace communicate in an ordinary sense, but also paves the way for the second problem. The second problem is what they really care about-let me see things as quickly as possible (but in fact they are not clear about what they want )!
How can we answer this question? If developers have certain authority and right to speak, things may develop in the strictest possible direction. Otherwise, use the so-called "Triangle rule", resources, time, and functions. Resources and time have been set, so we have to use the means in the function. Implement the most basic functions in the fastest, simplest, and most convenient way. Other flexibility, scalability, and robustness depend on the side. Standardization and methodology have become a form of discussion in software engineering books. Design the table structure and write code. Even if this is done, don't worry. If it's not done, my needs have changed. Haha. Sometimes in the development process, sometimes the implementation has not been completed, and the demand has changed. The frequency of such changes is sometimes small (I have encountered it many times ). This makes developers very passive and also the most common situation. Database design and development become the table structure and SQL so simple.
I am far away from the question. Today I see that one of the database design methods written by experts is the "manual try-and-Seek method! I used to think that it was too far away from the real design method and now I have found the theoretical basis. Do it later!