Database Model vs. C#(Domain) Model
The goal of software application is to analyze business logic, design and implement business model in computer languae.
With
different computer language or say development enviornment, we can have
differrent model, at least differrent aspect implementation for the
business model.
Our current
development process only involves database model design. Eventually, use
database model have been used as C# (Domain) model. But Domain Model
should be lots different from database model. For example, database
design care more about data redundancy, while domain design care more
about behavior/logic duplication.
So
my one suggestion is to design two models independently. They can
borrow concept and share knowledge from each other, but don't have to
tie together. After that, ORM can be used to associate two models.
BTW:
iBatis is more like data retrieval tool and not ORM tool. Code
generator which generate C# class from database is actully step which
use database model as domain model.
Comments