How To Do Data Modelling For Your New Digital Platform

Digital Platform Part 3 Of 10

In parts 1 and 2 of this series we looked at what a Digital Platform is and how one would architect such a system in a modern, cloud-based manner. In this article we will look at the core activity of Data Modelling that must take place before implementing large portions of your new Digital Platform.

What Do You Mean by Data Model?

The Data Model is a description of the data (from a business perspective) that the Digital Platform will manage. It describes as a whole the names, descriptions and relationships between the types of data that your Digital Platform will hold.

It will be very useful to refer to as you develop the Digital Platform and it will also allow the clients of the Digital Platform (other computer systems, Apps, Alexa etc) to understand the information that they will have access to.

In reality, you will probably create multiple Data Models for different services. For example you may have different functional models such as a Billing Data Model, a Sales Data Model etc or you may have different models based on different regions. There are many different types of Data Model, the one used will depend on your exact business needs and operations.

Formats

Although there may be varying types of Data Model, typically the Data Model will be represented using a standard notation such as a UML diagram or Entity Relationship diagram. This is usually accompanied by a Data Dictionary that gives a more detailed description of each individual piece of information.

An example UML diagram is shown here:

data-model

A fragment of the companion Data Dictionary may look like this:

customer data dictionary
Customer
sales order data dictionary
Sales Order
sales order line data dictionary
Sales Order Line
product data dictionary
Product

Scoped, Necessarily Complicated And Flexible

As discussed in the first article in this series, each iteration of the Digital Platform should be scoped to deliver valuable business functionality that delivers benefits to users of the Digital Platform. As such, the Data Model for the Digital Platform will be similarly versioned. Each iteration will change the overall Data Model in a defined manner.

The Data Model for each iteration should deliver only the data required to deliver the business objectives for that iteration (and the previous iterations). As such the Data Model should be as simple as possible, but without shying away from necessary complexity. Many systems have failed over the years due to be being over-simplified to the point of not being fit for purpose.

Next Steps

Once you have established your Data Model for your first iteration of your Digital Platform, you can being to map out the locations of the data in your existing legacy systems, which you can learn about in the next blog from this series. For more information on any of the processes discussed, please feel free to contact us at McKenna Consultants today.  

Nick McKenna
Since 2004, Nick McKenna, BSc, MBCS Biography has been the CEO of McKenna Consultants. McKenna Consultants is a bespoke software development based in North Yorkshire, specialising in Cloud development, mobile App development, progressive web App development, systems integration and the Internet of Things development. Nick also holds a First Class Degree in Computer Science (BSc) and wrote his first computer program at the age of nine, on a BBC Micro Model B computer. For the last 21 years, Nick has been a professional computer programmer and software architecture. Nick’s technical expertise includes; Net Core, C#, Microsoft Azure, Asp.Net, RESTful web services, eProcurement, Swift, iOS mobile development, Java, Android mobile development, C++, Internet Of Things and more. In addition, Nick is experienced in Agile coaching, training and consultancy, applying modern Agile management techniques to marketing and running McKenna Consultants, as well as the development of software for clients. Nick is a Certified Enterprise Coach (Scrum Alliance), SAFe Program Consultant (SAI), Certified LeSS Practitioner (LeSS) and Certified Scrum@Scale Practitioner. Outside the office, Nick is a professional scuba diver and he holds the rank of Black Belt 5th Dan in Karate.