Starting with the database design, it's actually a big pet of mine. Of course, this is good for some projects. Simple applications for form data, such things. But for something more complex, everything that has a “domain” of logic does not start with database design. Start with domain modeling. If you take business logic and put it in code, it is very likely that the business users who define the logical flow do not think in terms of SQL or relational data alone. They think in terms of logical interactions of concrete and abstract concepts.
. : " , ". , , "" . , , , . . , .
, , - . -, .
, . , . , , . , , , . , .