Thursday, May 17, 2018

Data Modeling for SaaS Projects

This month I was asked to present an introduction to data modeling for a legacy systems team that's preparing for our university's next big SaaS ERP project. This was a great opportunity to think about what's different about data modeling in a SaaS world. The workshop I ended up with was a mix of old and new. If the following topics are of interest to you, the slide deck for the workshop may also be of interest:

First I introduced basic data modeling concepts and levels of data modeling (conceptual, logical, and detailed). I decided to spend nearly all this time on conceptual data models, because I think for most people on a SaaS project team that's where the most important data modeling work happens. It's about building shared understanding of existing data, unmet data needs, and the SaaS product's data model, so those can be reconciled with each other.

Then I showed examples of "reverse engineering" data models from legacy systems. This is a major area of work when a SaaS product replaces legacy systems. At the scale of an ERP, "systems" means one or more legacy core business systems and the related side or "shadow" systems considered to be in scope. The current meaning of the data in the legacy core business system is rarely the same as its original design; different parts of the organization understand that data differently; and the side systems add additional data. A fresh conceptual data model is typically helpful for understanding the as-is.

Next I thought it was important to put data modeling in context. In a significant-size SaaS effort, data modeling is just one of several analysis workstreams including data analysis, process analysis, systems analysis, and managing objectives and requirements. Part of the "art" of running a successful SaaS ERP implementation is making these analyses link up and complement each other -- the whole is greater than the sum of the parts.

Finally, data modeling for SaaS is different in ways that affects individual professionals and teams, leading to changes in careers and team missions. In this part of the workshop I discussed my own experience years ago shifting from data modeling as a developer of databases and applications, to data modeling as a business analyst for a SaaS ERP implementation. For each individual, this is a career choice to set aside some skills (the more technical ones) and learn new ones (the conceptual, people-oriented, and negotiation-based ones). For each legacy systems, team this is an opportunity to do new kinds of work in readiness for the ERP project.

In addition to my own experience this introduction owes much inspiration to the wonderful work of Alec Sharp at Clariteq -- a huge shout out to him and his book, Workflow Modeling: Tools for Process Improvement and Application Development, which contains a great chapter on data modeling in the context of related business analysis.

As always, interested in any comments or questions on this topic!

No comments:

Post a Comment