Picking up the pieces...
Tuesday, October 20, 2009 at 03:32AM Thank you to Karen Lopez for finding and praising a blog post by Anith Sen. He writes about database design errors, Karen disagrees with some of Anith's conclusions in her blog which goes to illustrate that design is a mix of art and science and that even experienced practitioners will disagree over details.
Anith observes that "an application can trespass on the field of data management" and that developers sometimes "treat the database as being a mere component of the ‘application domain’". Particular skills and experience are required to manage data and to create and maintain databases. Data management differs on at least two levels:
- At the programming level, being able to write an SQL statement is not the same being able to design a database. The set based thinking required to develop design a database effectively is very different to the procedural thinking required by most programming languages.
- Databases have a different life-cycle to applications and they are often shared between applications.
In my previous blog, Vive la différence, I stated that we do not train people in design. I think this is a illustration of this point. We often don't teach an understanding of data management and its approaches. This results in designers and architects having a poor understanding of the role of databases in the application landscape and people like Anith having to pick up the pieces.


Alan Inglis
Reader Comments (2)
Interesting observation and one I can second from personal experience. The pointed question is this, "where in the IT organization does data design live?" I've seen it moved about between development, business analysis and enterprise architecture. I posit that the best organizations realize data design is a separate animal and have a skilled and dedicated team that either 1) functions as a center of excellence supporting the overall delivery function or 2) directly handles the data design functions within a delivery framework.
Thanks for addressing this. Please join us in the Linked In Enterprise Architecture Network group / Practicing Enterprise Architecture subgroup if you'd like to pursue a discussion with some practicing EAs on what to do about this. I'd love to get other people's perspective and inputs.
I agree, design is a skill which few people have. Two employees may have the same education and experience; the one can design and the other struggles.