Sunday, November 21, 2004 6:09 PM
darien
"The impedance mismatch between object-oriented constructs and relational databases", A Survey by Darien Nagle
So this is a classic problem that's always disturbed me (software engineering wise), and especially so on the .NET platform where Object/Relational mapping doesn't seem to be getting the due attention that I think it deserves. Not that there aren't persistence frameworks available out there, of course there are (Entity Broker, LLBLGen Pro, Wilson OR Mapper etc.. etc..). In fact, I'm so happy that Microsoft is working on ObjectSpaces; I just love the work thats been done there to date, even though we have to wait a little while before we can all play with it.
Its just that not a lot of .NET developers that I talk to even see the impedance mismatch as a problem. Everyone's just happy hard coding their object attributes directly to the database (we even encourage it somewhat in Visual Studio). And the very idea that I find this type of tight coupling a hideous violation of the software engineering principles of abstraction and maintainability, makes most developers look at me strangely. Hmmm. Maybe I need to get out more.
Nevertheless, for my dissertation (M.Sc in Software Engineering, title above) I'm bringing up the age old impedance mismatch topic again, in the hope of raising awareness, and checking on the state of the problem. Encouragingly, more people than I thought seem interested in 2004 (and even aware) than what I expected. I think there's definitely some ground swell taking place on the topic in the .NET community as a whole. Good stuff. It'll be a dream come true when your average VB developer can talk about their preference for persistence patterns and frameworks. Hopefully, we're not that far away from that day after all.
If you're a OO developer, and you've got an opinion on the object-oriented impedance mismatch, then I'd love to hear from you. I've set up a survey on my home page just for this purpose. Drop by and fill out this survey. If you do so before November 24th, I can incorporate your views into my final dissertation.