This is the first of the cloud-specific system evaluation criteria that I introduced last week.
The data model is critical, but far too often overlooked with system procurements, especially in the realm of cloud solutions when the database isn’t on your server. Here’s why.
The data foundation
Applications that are rich in structured data – think CRM, billing, accounting, HR, manufacturing or logistics solutions to name just a few – typically persist their data in a relational data model. The data model is the very foundation of a data-rich app and, like the foundation of a house, doesn’t change readily and requires a significant effort if changes are required. A major data model change requires a migration of data from the old to the new structure, which can be costly and disruptive. It may also demand a change to the application code that reads and writes data to and from the data model, again involving time, cost and disruption.
The balancing act
As well as being foundational, all data models are a compromise. No model can be perfect and each is a balancing act between simplicity and flexibility; the more flexible, the less simple. Most data models in transactional systems (i.e. those systems where data is entered regularly) are optimised for ease of input and maximum integrity of data. The pursuit of these virtues necessarily results in numerous related data entities (known as tables in most databases, or often objects in cloud solutions), the logic of which needs to be understood, especially if you’re planning to customise or integrate.
You must ensure that the balance struck by the data model in your chosen solution is sensible and matches the business rules of your organisation. For example, a billing solution may, for the sake of simplicity of data entry, structure its data such that an invoice always relates to a single parent order. If, however, your business issues periodic invoices that span multiple customer orders, you’ll either need to adapt your business practice to the solution, or opt for a more flexible tool. Either way, you’ll want to assess the time and cost implications of that at the evaluation stage, not during or after the system implementation.
Find a good data architect
Sophisticated data-rich systems may have many dozen or even hundreds of data entities, such that assessing the simplicity-vs-flexibility balance can be a major undertaking. For on-premise solutions, a knowledgeable DBA is often on hand to help, given that he/she will take responsibility for the installed database. But for cloud database apps, too often a DBA or data architect isn’t consulted at the evaluation stage. The good news is that the skills needed don’t change between the on-premise and cloud worlds, despite the fact that with the cloud app, direct access to the database tables isn’t typically allowed. The DBA or data architect you’ve relied on previously should be well up to the task of assessing a cloud data model.
Transparency vs IP protection
With packaged solutions, on-premise or cloud, some vendors may be unwilling to share details of the data model with you for reasons of intellectual property protection. A lack of transparency in this area should raise a red flag in your evaluation. Confident cloud vendors will share their data model with you, safe in the knowledge that the model alone is far from enough IP for you to reverse engineer their product. For example, salesforce.com openly shares their data models on their developer website, setting a minimum benchmark that you should expect.
Universal models
The other good news to note is that with relational databases having been around for decades, standard – or “universal” – data models have emerged for routine business functions and common industries. Universal data models are tried and tested over many years and hundreds of implementations, so provide an ideal blueprint against which to compare your cloud vendor’s offering. For example, if you’re buying an accounting solution, detailed universal models exist for handling the chart of accounts, transactional entries and the general ledger, so if your vendor’s solution deviates majorly from them, you’d be entitled to ask why. A wonderful source of universal data models is the range of books written by Len Silverston – bibles for data architects.
The data model is the core of your data-rich cloud solution, so I hope these tips will help you to ensure it’s up to scratch.

Blog