July 03, 2003

Database Flexibility

Sean McGrath predicts The end of database-centric design in in ITWorld.com article. In short, the knock against traditional database-centric systems is the lack of flexibility. If you need to make changes to a database schema, the changes need to be (manually) cascaded down throughout the entire system, from SQL statements to user interface. I've built enough database driven systems to know this is true. Changes made after initial development tend to make brittle systems crack. They can be fixed, for sure, but the cost and complexity usually goes up. What's the answer? McGrath writes:

I believe we are seeing a deemphasis of database technology in enterprise application development. Look at architecture diagrams for Service Oriented Architectures, for Agile Processes or for asynchronous web services. There was a time when most IT architectures for business featured a database holding pride of place in the center of the diagram. Not any more. Why? Because we simply cannot afford to design for the present, when everything, from tomorrow onwards, is the future.

Speaking of web services, Tim Bray argues for a REST approach to weblog web services. A compelling case, I think.