I have learned about database design, including normalization during my undergraduate course. When we have to model a database for a system, we can start with an ER model and then convert it to the relational model and then we could normalize the design, to come up with the final schema of the database.
This was the approach I was thought at college. Now with the adoption of different ORM tools like hibernate, the object classes are directly mapped into tables with annotations(in java).
Does it mean that if we are using an ORM tool we do not need to design our database like before? Does it mean that we do not even have to come up with an ER-Model for our database? It turns out that if we have our object model(in a class diagram), by deciding what objects should be stored, we could automatically arrive at a database design. If so what happens to the normalization? What happens for the tables we would have designed for different relationships(1 to many, many to many etc;) in ER model?
Does it mean that we have traded good database design for ease of programmability?
Thinking about this makes me confused. please explain.