Category Archives: Application Architecture

Focus on Quality

Operational Model Quality

picture by xianrendujia via Flickr

Quality is an underappreciated aspect of data models. The purpose of a model is not just to capture the business requirements, but also to represent them well. A high quality model lessens the complexity of development, reduces the likelihood of bugs, and enhances the ability of a database to evolve. There are both qualitative and quantitative measures of quality.

This is the first of a two-part series. This blog discusses quality for day-to-day operational applications. Next month’s blog will discuss data warehouses.

Continue reading Operational Model Quality

Why Doesn’t SOA Use Data Models?

picture by Santi Mendiola via Flickr

The short answer is that’s there’s no good reason.

SOA, the Service-Oriented Architecture, is a popular approach for organizing business functionality. From the literature it’s clear that SOA’s emphasis is on programming. That’s ironic given that most SOA services deal with the reading and writing of data. We seldom see SOA developers creating substantive data models. This is a flawed approach that needs correction.

Continue reading Why Doesn’t SOA Use Data Models?

A framework using the metaphor of bricks

Be Wary of Generic Database Layers

picture by Alejandro via Flickr

Over the years we’ve seen a number of projects where application architects use a generic layer to hide a database. This is a common approach with object-oriented languages accessing a relational database. Application code accesses the layer which in turn accesses the database. The use of a generic layer can be a valuable technique, but it is overused. Some architects seem to be unaware that there are other possibilities.

Continue reading Be Wary of Generic Database Layers